blob: caca857591de50299f817dd071983f0af8325f5d [file] [log] [blame]
################################################################################
#
# azure-iot-sdk-c
#
################################################################################
AZURE_IOT_SDK_C_VERSION = LTS_02_2020_Ref01
AZURE_IOT_SDK_C_SITE = https://github.com/Azure/azure-iot-sdk-c
AZURE_IOT_SDK_C_SITE_METHOD = git
AZURE_IOT_SDK_C_GIT_SUBMODULES = YES
AZURE_IOT_SDK_C_LICENSE = MIT
AZURE_IOT_SDK_C_LICENSE_FILES = LICENSE
AZURE_IOT_SDK_C_INSTALL_STAGING = YES
AZURE_IOT_SDK_C_DEPENDENCIES = libxml2 openssl libcurl util-linux
AZURE_IOT_SDK_C_CONF_OPTS = -Dskip_samples=ON
# The project only supports building one kind of library.
# Further the install target installs the wrong files, so we do it here:
ifeq ($(BR2_STATIC_LIBS),y)
AZURE_IOT_SDK_C_LIBS += \
uamqp/libuamqp.a \
c-utility/libaziotsharedutil.a \
iothub_client/libiothub_client.a \
iothub_client/libiothub_client_mqtt_ws_transport.a \
iothub_client/libiothub_client_amqp_ws_transport.a \
iothub_client/libiothub_client_http_transport.a \
iothub_client/libiothub_client_amqp_transport.a \
iothub_client/libiothub_client_mqtt_transport.a \
iothub_service_client/libiothub_service_client.a \
serializer/libserializer.a \
umqtt/libumqtt.a \
deps/uhttp/libuhttp.a \
deps/umock-c/libumock_c.a \
libparson.a
else
AZURE_IOT_SDK_C_LIBS += \
uamqp/libuamqp.so \
c-utility/libaziotsharedutil.so \
iothub_client/libiothub_client.so \
iothub_client/libiothub_client_mqtt_ws_transport.so \
iothub_client/libiothub_client_amqp_ws_transport.so \
iothub_client/libiothub_client_http_transport.so \
iothub_client/libiothub_client_amqp_transport.so \
iothub_client/libiothub_client_mqtt_transport.so \
iothub_service_client/libiothub_service_client.so \
serializer/libserializer.so \
umqtt/libumqtt.so.1.1.12 \
deps/uhttp/libuhttp.so \
deps/umock-c/libumock_c.so \
libparson.so
define AZURE_IOT_SDK_C_CREATE_SYMLINKS
ln -sf libumqtt.so.1.1.12 $(1)/usr/lib/libumqtt.so.1
ln -sf libumqtt.so.1.1.12 $(1)/usr/lib/libumqtt.so
endef
endif
define AZURE_IOT_SDK_C_INSTALL_LIBS
$(foreach l,$(AZURE_IOT_SDK_C_LIBS), \
$(INSTALL) -D -m 0755 $(@D)/$(l) $(1)/usr/lib/$(notdir $(l))
)
$(call AZURE_IOT_SDK_C_CREATE_SYMLINKS,$(1))
endef
define AZURE_IOT_SDK_C_INSTALL_STAGING_CMDS
$(call AZURE_IOT_SDK_C_INSTALL_LIBS,$(STAGING_DIR))
cp -a $(@D)/c-utility/inc/* $(STAGING_DIR)/usr/include/
cp -a $(@D)/iothub_client/inc/* $(STAGING_DIR)/usr/include/
endef
define AZURE_IOT_SDK_C_INSTALL_TARGET_CMDS
$(call AZURE_IOT_SDK_C_INSTALL_LIBS,$(TARGET_DIR))
endef
$(eval $(cmake-package))