Merge pull request #4853 from StevenHessing/noddos
[feed/packages.git] / net / iotivity / Makefile
index b92760d2974e89c1f7f6acc63b5376800adcf156..f31adbd9c3bb93381bbf68af211cfb9aac12f5d2 100644 (file)
@@ -8,12 +8,12 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=iotivity
-PKG_VERSION:=1.1.0
+PKG_VERSION:=1.2.1
 PKG_RELEASE=1
 
 PKG_SOURCE:=${PKG_NAME}-${PKG_VERSION}.tar.gz
 PKG_SOURCE_URL:=http://mirrors.kernel.org/${PKG_NAME}/${PKG_VERSION}/
-PKG_MD5SUM:=98f8d5b0304c357520c4343d983491e2
+PKG_HASH:=7dcd9f0f48263c6b27a2c3d085dd7278b5c0feed1dfec8872a04899707fa23d8
 PKG_USE_MIPS16:=0
 
 PKG_BUILD_DEPENDS:=boost
@@ -26,13 +26,13 @@ PKG_LICENSE_FILES:=LICENSE.md
 PKG_CONFIG_DEPENDS := \
        CONFIG_PACKAGE_iotivity \
        CONFIG_PACKAGE_iotivity-cpp \
-       CONFIG_PACKAGE_iotivity-things-manager-lib \
+       CONFIG_PACKAGE_iotivity-resource-directory-lib \
        CONFIG_PACKAGE_iotivity-oic-middle \
-       CONFIG_PACKAGE_iotivity-things-manager \
        CONFIG_PACKAGE_iotivity-resource-container-lib \
        CONFIG_PACKAGE_iotivity-resource-container-sample \
        CONFIG_PACKAGE_iotivity-resource-container-hue \
        CONFIG_PACKAGE_iotivity-example-garage \
+       CONFIG_PACKAGE_iotivity-example-simple \
        CONFIG_PACKAGE_iotivity_DEBUG \
        CONFIG_PACKAGE_iotivity_SECURE
 
@@ -43,7 +43,7 @@ include $(INCLUDE_DIR)/scons.mk
 define Package/iotivity
   SECTION:=net
   CATEGORY:=Network
-  DEPENDS:=@!USE_UCLIBC +libpthread +librt +libuuid
+  DEPENDS:=@!USE_UCLIBC +libpthread +librt +libuuid +libsqlite3 +PACKAGE_iotivity_SECURE:libmbedtls
   TITLE:=IoTivity C Library
   URL:=https://www.iotivity.org
   MENU:=1
@@ -63,10 +63,15 @@ define Package/iotivity/config
 
        config PACKAGE_iotivity_SECURE
                bool "IoTivity with security support"
-               default y
                help
                  Activate security support.
 
+       config PACKAGE_iotivity_LOGGING
+               bool "IoTivity with logging support"
+               default y
+               help
+                 Activate logging support.
+                 This will make IoTivity write a lot of log messages to stdout.
   endif
 endef
 
@@ -84,24 +89,19 @@ define Package/iotivity-cpp/description
     Open Interconnect Consortium Specification.
 endef
 
-
-define Package/iotivity-things-manager-lib
+define Package/iotivity-resource-directory-lib
   SECTION:=net
   CATEGORY:=Network
-  DEPENDS:=+iotivity +iotivity-cpp +libstdcpp
-  TITLE:=IoTivity things manager lib
+  DEPENDS:=+iotivity +iotivity-cpp
+  TITLE:=IoTivity Resource Directory library
   URL:=https://www.iotivity.org
 endef
 
-define Package/iotivity-things-manager-lib/description
-    IoTivity things-manager lib
-endef
-
 
 define Package/iotivity-oic-middle
   SECTION:=net
   CATEGORY:=Network
-  DEPENDS:=+iotivity +iotivity-cpp
+  DEPENDS:=+iotivity +iotivity-cpp +iotivity-resource-directory-lib
   TITLE:=IoTivity OIC Middle
   URL:=https://www.iotivity.org
 endef
@@ -110,19 +110,6 @@ define Package/iotivity-oic-middle/description
     IoTivity OIC Middle
 endef
 
-
-define Package/iotivity-things-manager
-  SECTION:=net
-  CATEGORY:=Network
-  DEPENDS:=+iotivity +iotivity-cpp +iotivity-things-manager-lib
-  TITLE:=IoTivity things manager
-  URL:=https://www.iotivity.org
-endef
-
-define Package/iotivity-things-manager/description
-    IoTivity things manager
-endef
-
 define Package/iotivity-resource-container-lib
   SECTION:=net
   CATEGORY:=Network
@@ -150,7 +137,7 @@ endef
 define Package/iotivity-example-garage
   SECTION:=net
   CATEGORY:=Network
-  DEPENDS:=+iotivity +iotivity-cpp
+  DEPENDS:=+iotivity +iotivity-cpp +iotivity-resource-directory-lib
   TITLE:=IoTivity Garage example
   URL:=https://www.iotivity.org
 endef
@@ -159,57 +146,55 @@ define Package/iotivity-example-garage/description
     An IoTivity example application
 endef
 
+define Package/iotivity-example-simple
+  SECTION:=net
+  CATEGORY:=Network
+  DEPENDS:=+iotivity +iotivity-cpp +iotivity-resource-directory-lib
+  TITLE:=IoTivity simple client + server
+  URL:=https://www.iotivity.org
+endef
+
+define Package/iotivity-example-simple/description
+    The IoTivity simple client and simple server exmaple
+endef
+
 
 PKG_TINYCBOR_NAME:=tinycbor
-PKG_TINYCBOR_VERSION:=43e3ac9490cf19459ec7b7bd13df3b66810fb62a
-PKG_TINYCBOR_SOURCE:=$(PKG_TINYCBOR_NAME)-$(PKG_TINYCBOR_VERSION).tar.bz2
 PKG_TINYCBOR_PROTO:=git
+PKG_TINYCBOR_VERSION:=0.4
+PKG_TINYCBOR_SOURCE_VERSION:=a088996aa5f59b4f27f20fadad053d88bee357d4
+PKG_TINYCBOR_MIRROR_HASH:=77c600bd7362df8291148fa3d94ca780815ea2b74b817dca7565310ea0abff96
+PKG_TINYCBOR_SOURCE:=$(PKG_TINYCBOR_NAME)-$(PKG_TINYCBOR_VERSION).tar.bz2
 PKG_TINYCBOR_SOURCE_URL:=https://github.com/01org/tinycbor.git
 PKG_TINYCBOR_SUBDIR:=$(PKG_TINYCBOR_NAME)
-#PKG_TINYCBOR_MIRROR_MD5SUM:=?
 
 define Download/iotivity-tinycbor
   FILE:=$(PKG_TINYCBOR_SOURCE)
   URL:=$(PKG_TINYCBOR_SOURCE_URL)
+  MIRROR_HASH:=$(PKG_TINYCBOR_MIRROR_HASH)
   PROTO:=$(PKG_TINYCBOR_PROTO)
-  VERSION:=$(PKG_TINYCBOR_VERSION)
+  VERSION:=$(PKG_TINYCBOR_SOURCE_VERSION)
   SUBDIR:=$(PKG_TINYCBOR_SUBDIR)
-  #MIRROR_MD5SUM:=$(PKG_TINYCBOR_MIRROR_MD5SUM)
 endef
 $(eval $(call Download,iotivity-tinycbor))
 
-PKG_SQLITE_NAME:=sqlite
-PKG_SQLITE_VERSION:=3081101
-PKG_SQLITE_SOURCE:=$(PKG_SQLITE_NAME)-amalgamation-$(PKG_SQLITE_VERSION).zip
-PKG_SQLITE_SOURCE_URL:=http://www.sqlite.org/2015/
-PKG_SQLITE_SUBDIR:=$(PKG_SQLITE_NAME)
-PKG_SQLITE_MD5SUM:=94907e831502e2080b76e281cfa24dde
-
-define Download/iotivity-sqlite
-  FILE:=$(PKG_SQLITE_SOURCE)
-  URL:=$(PKG_SQLITE_SOURCE_URL)
-  VERSION:=$(PKG_SQLITE_VERSION)
-  SUBDIR:=$(PKG_SQLITE_SUBDIR)
-  MD5SUM:=$(PKG_SQLITE_MD5SUM)
-endef
-$(eval $(call Download,iotivity-sqlite))
 
+EXTRA_CXXFLAGS += -std=gnu++11
 
 SCONS_OPTIONS += \
        TARGET_OS=linux \
        TARGET_TRANSPORT=IP \
        TARGET_ARCH=$(ARCH) \
        STAGING_DIR=$(STAGING_DIR) \
-       LOGGING=true \
-       $(if $(CONFIG_PACKAGE_iotivity),liboctbstack) \
-       $(if $(CONFIG_PACKAGE_iotivity-cpp),liboc) \
-       $(if $(CONFIG_PACKAGE_iotivity-things-manager-lib),libTGMSDK) \
+       WITH_ENV=true \
+       octbstack oc \
        $(if $(CONFIG_PACKAGE_iotivity-oic-middle),examples) \
-       $(if $(CONFIG_PACKAGE_iotivity-things-manager),ConServerApp ConClientApp BootstrapServerApp) \
        $(if $(CONFIG_PACKAGE_iotivity-resource-container-lib),libResContainer) \
        $(if $(CONFIG_PACKAGE_iotivity-resource-container-sample),containersample) \
        $(if $(CONFIG_PACKAGE_iotivity-resource-container-hue),libHueBundle) \
        $(if $(CONFIG_PACKAGE_iotivity-example-garage),examples) \
+       $(if $(CONFIG_PACKAGE_iotivity-example-simple),examples) \
+       install
 
 ifeq ($(CONFIG_PACKAGE_iotivity_DEBUG),y)
   SCONS_OPTIONS += RELEASE=false
@@ -225,6 +210,10 @@ else
   SCONS_OPTIONS += SECURED=0
 endif
 
+ifeq ($(CONFIG_PACKAGE_iotivity_LOGGING),y)
+  SCONS_OPTIONS += LOGGING=true
+endif
+
 ifneq ($(findstring c,$(OPENWRT_VERBOSE)),)
   SCONS_OPTIONS += VERBOSE=true
 endif
@@ -232,9 +221,6 @@ endif
 define Build/Prepare
        $(call Build/Prepare/Default)
        $(TAR) -C $(PKG_BUILD_DIR)/extlibs/tinycbor/ -xjf $(DL_DIR)/$(PKG_TINYCBOR_SOURCE)
-       unzip -d $(PKG_BUILD_DIR)/extlibs/sqlite3/ $(DL_DIR)/$(PKG_SQLITE_SOURCE)
-       mv $(PKG_BUILD_DIR)/extlibs/sqlite3/$(PKG_SQLITE_NAME)-amalgamation-$(PKG_SQLITE_VERSION)/sqlite3.h $(PKG_BUILD_DIR)/extlibs/sqlite3/
-       mv $(PKG_BUILD_DIR)/extlibs/sqlite3/$(PKG_SQLITE_NAME)-amalgamation-$(PKG_SQLITE_VERSION)/sqlite3.c $(PKG_BUILD_DIR)/extlibs/sqlite3/
 endef
 
 
@@ -249,6 +235,7 @@ endef
 
 define Package/iotivity/install
        $(INSTALL_DIR) $(1)/usr/lib
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/out/linux/$(ARCH)/$(APP_OPTIM)/libconnectivity_abstraction.so $(1)/usr/lib/
        $(INSTALL_BIN) $(PKG_BUILD_DIR)/out/linux/$(ARCH)/$(APP_OPTIM)/liboctbstack.so $(1)/usr/lib/
 ifeq ($(CONFIG_PACKAGE_iotivity_SECURE),y)
        $(INSTALL_DIR) $(1)/etc/iotivity/
@@ -262,9 +249,9 @@ define Package/iotivity-cpp/install
        $(INSTALL_BIN) $(PKG_BUILD_DIR)/out/linux/$(ARCH)/$(APP_OPTIM)/liboc_logger.so $(1)/usr/lib/
 endef
 
-define Package/iotivity-things-manager-lib/install
+define Package/iotivity-resource-directory-lib/install
        $(INSTALL_DIR) $(1)/usr/lib
-       $(INSTALL_BIN) $(PKG_BUILD_DIR)/out/linux/$(ARCH)/$(APP_OPTIM)/libTGMSDKLibrary.so $(1)/usr/lib/
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/out/linux/$(ARCH)/$(APP_OPTIM)/libresource_directory.so $(1)/usr/lib/
 endef
 
 define Package/iotivity-oic-middle/install
@@ -272,13 +259,6 @@ define Package/iotivity-oic-middle/install
        $(INSTALL_BIN) $(PKG_BUILD_DIR)/out/linux/$(ARCH)/$(APP_OPTIM)/examples/OICMiddle/OICMiddle $(1)/usr/bin/
 endef
 
-define Package/iotivity-things-manager/install
-       $(INSTALL_DIR) $(1)/usr/bin
-       $(INSTALL_BIN) $(PKG_BUILD_DIR)/out/linux/$(ARCH)/$(APP_OPTIM)/service/things-manager/sampleapp/linux/configuration/bootstrapserver $(1)/usr/bin/
-       $(INSTALL_BIN) $(PKG_BUILD_DIR)/out/linux/$(ARCH)/$(APP_OPTIM)/service/things-manager/sampleapp/linux/configuration/con-server $(1)/usr/bin/
-       $(INSTALL_BIN) $(PKG_BUILD_DIR)/out/linux/$(ARCH)/$(APP_OPTIM)/service/things-manager/sampleapp/linux/configuration/con-client $(1)/usr/bin/
-endef
-
 define Package/iotivity-resource-container-lib/install
        $(INSTALL_DIR) $(1)/usr/lib
        $(INSTALL_BIN) $(PKG_BUILD_DIR)/out/linux/$(ARCH)/$(APP_OPTIM)/librcs_common.so $(1)/usr/lib/
@@ -303,13 +283,31 @@ define Package/iotivity-example-garage/install
        $(INSTALL_BIN) $(PKG_BUILD_DIR)/out/linux/$(ARCH)/$(APP_OPTIM)/resource/examples/garageserver $(1)/usr/bin/
 endef
 
+define Package/iotivity-example-simple/install
+       $(INSTALL_DIR) $(1)/usr/bin
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/out/linux/$(ARCH)/$(APP_OPTIM)/resource/examples/simpleclient $(1)/usr/bin/
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/out/linux/$(ARCH)/$(APP_OPTIM)/resource/examples/simpleserver $(1)/usr/bin/
+endef
+
+define Build/InstallDev
+       $(INSTALL_DIR) $(1)/usr/include
+       $(CP) $(PKG_BUILD_DIR)/out/linux/$(ARCH)/$(APP_OPTIM)/include $(1)/usr/include/iotivity
+
+       $(INSTALL_DIR) $(1)/usr/lib
+       $(CP) $(PKG_BUILD_DIR)/out/linux/$(ARCH)/$(APP_OPTIM)/libconnectivity_abstraction.so $(1)/usr/lib/
+       $(CP) $(PKG_BUILD_DIR)/out/linux/$(ARCH)/$(APP_OPTIM)/liboctbstack.so $(1)/usr/lib/
+       $(CP) $(PKG_BUILD_DIR)/out/linux/$(ARCH)/$(APP_OPTIM)/liboc.so $(1)/usr/lib/
+       $(CP) $(PKG_BUILD_DIR)/out/linux/$(ARCH)/$(APP_OPTIM)/liboc_logger.so $(1)/usr/lib/
+       $(CP) $(PKG_BUILD_DIR)/out/linux/$(ARCH)/$(APP_OPTIM)/libresource_directory.so $(1)/usr/lib/
+endef
+       
 
 $(eval $(call BuildPackage,iotivity))
 $(eval $(call BuildPackage,iotivity-cpp))
-$(eval $(call BuildPackage,iotivity-things-manager-lib))
+$(eval $(call BuildPackage,iotivity-resource-directory-lib))
 $(eval $(call BuildPackage,iotivity-oic-middle))
-$(eval $(call BuildPackage,iotivity-things-manager))
 $(eval $(call BuildPackage,iotivity-resource-container-lib))
 $(eval $(call BuildPackage,iotivity-resource-container-sample))
 $(eval $(call BuildPackage,iotivity-resource-container-hue))
 $(eval $(call BuildPackage,iotivity-example-garage))
+$(eval $(call BuildPackage,iotivity-example-simple))