1################################################################################ 2# 3# azure-iot-sdk-c 4# 5################################################################################ 6 7AZURE_IOT_SDK_C_VERSION = LTS_01_2021_Ref01 8AZURE_IOT_SDK_C_SITE = https://github.com/Azure/azure-iot-sdk-c 9AZURE_IOT_SDK_C_SITE_METHOD = git 10AZURE_IOT_SDK_C_GIT_SUBMODULES = YES 11AZURE_IOT_SDK_C_LICENSE = MIT 12AZURE_IOT_SDK_C_LICENSE_FILES = LICENSE 13AZURE_IOT_SDK_C_INSTALL_STAGING = YES 14AZURE_IOT_SDK_C_DEPENDENCIES = libxml2 openssl libcurl util-linux 15AZURE_IOT_SDK_C_CONF_OPTS = -Dskip_samples=ON 16 17# The project only supports building one kind of library. 18# Further the install target installs the wrong files, so we do it here: 19ifeq ($(BR2_STATIC_LIBS),y) 20AZURE_IOT_SDK_C_LIBS += \ 21 uamqp/libuamqp.a \ 22 c-utility/libaziotsharedutil.a \ 23 iothub_client/libiothub_client.a \ 24 iothub_client/libiothub_client_mqtt_ws_transport.a \ 25 iothub_client/libiothub_client_amqp_ws_transport.a \ 26 iothub_client/libiothub_client_http_transport.a \ 27 iothub_client/libiothub_client_amqp_transport.a \ 28 iothub_client/libiothub_client_mqtt_transport.a \ 29 iothub_service_client/libiothub_service_client.a \ 30 serializer/libserializer.a \ 31 umqtt/libumqtt.a \ 32 deps/uhttp/libuhttp.a \ 33 deps/umock-c/libumock_c.a \ 34 libparson.a 35else 36AZURE_IOT_SDK_C_LIBS += \ 37 uamqp/libuamqp.so \ 38 c-utility/libaziotsharedutil.so \ 39 iothub_client/libiothub_client.so \ 40 iothub_client/libiothub_client_mqtt_ws_transport.so \ 41 iothub_client/libiothub_client_amqp_ws_transport.so \ 42 iothub_client/libiothub_client_http_transport.so \ 43 iothub_client/libiothub_client_amqp_transport.so \ 44 iothub_client/libiothub_client_mqtt_transport.so \ 45 iothub_service_client/libiothub_service_client.so \ 46 serializer/libserializer.so \ 47 umqtt/libumqtt.so.1.1.12 \ 48 deps/uhttp/libuhttp.so \ 49 deps/umock-c/libumock_c.so \ 50 libparson.so 51 52define AZURE_IOT_SDK_C_CREATE_SYMLINKS 53 ln -sf libumqtt.so.1.1.12 $(1)/usr/lib/libumqtt.so.1 54 ln -sf libumqtt.so.1.1.12 $(1)/usr/lib/libumqtt.so 55endef 56endif 57 58define AZURE_IOT_SDK_C_INSTALL_LIBS 59 $(foreach l,$(AZURE_IOT_SDK_C_LIBS), \ 60 $(INSTALL) -D -m 0755 $(@D)/$(l) $(1)/usr/lib/$(notdir $(l)) 61 ) 62 $(call AZURE_IOT_SDK_C_CREATE_SYMLINKS,$(1)) 63endef 64 65define AZURE_IOT_SDK_C_INSTALL_STAGING_CMDS 66 $(call AZURE_IOT_SDK_C_INSTALL_LIBS,$(STAGING_DIR)) 67 cp -a $(@D)/c-utility/inc/* $(STAGING_DIR)/usr/include/ 68 cp -a $(@D)/iothub_client/inc/* $(STAGING_DIR)/usr/include/ 69endef 70 71define AZURE_IOT_SDK_C_INSTALL_TARGET_CMDS 72 $(call AZURE_IOT_SDK_C_INSTALL_LIBS,$(TARGET_DIR)) 73endef 74 75$(eval $(cmake-package)) 76