From e3f970631233bfa0e72f22afeffade01bcaa1620 Mon Sep 17 00:00:00 2001 From: Philippe Coval Date: Fri, 25 Nov 2016 17:19:59 +0600 Subject: [PATCH] build: Updated boost Framework path for ios [srijon.sb] 1. Updated boost Framework path for ios 2. Fixed build errors a. Some void functions return values b. Added missing Headers [Philippe Coval] Ported from 1.2-rel branch to master Conflicts: service/resource-encapsulation/src/common/primitiveResource/src/RCSResourceAttributes.cpp Change-Id: I0b6a796fb815a16725e06fa154499d5a8d1605cf Signed-off-by: srijon.sb Reviewed-on: https://gerrit.iotivity.org/gerrit/14797 Tested-by: jenkins-iotivity Author: srijon.sb Reviewed-by: Phil Coval Signed-off-by:Phil Coval Reviewed-on: https://gerrit.iotivity.org/gerrit/16881 Tested-by: jenkins-iotivity --- .../csdk/security/provisioning/src/secureresourceprovider.c | 1 + resource/csdk/security/src/oxmpincommon.c | 1 + resource/csdk/stack/src/ocresource.c | 1 + resource/third_party_libs.scons | 2 +- service/resource-encapsulation/SConscript | 6 +++++- .../src/common/primitiveResource/src/RCSResourceAttributes.cpp | 10 ++++++++-- service/third_party_libs.scons | 2 +- 7 files changed, 18 insertions(+), 5 deletions(-) diff --git a/resource/csdk/security/provisioning/src/secureresourceprovider.c b/resource/csdk/security/provisioning/src/secureresourceprovider.c index 8c6f3f3..3a9ffeb 100644 --- a/resource/csdk/security/provisioning/src/secureresourceprovider.c +++ b/resource/csdk/security/provisioning/src/secureresourceprovider.c @@ -29,6 +29,7 @@ #include "secureresourceprovider.h" #include "logger.h" #include "oic_malloc.h" +#include "oic_string.h" #include "aclresource.h" #include "pstatresource.h" #include "srmresourcestrings.h" diff --git a/resource/csdk/security/src/oxmpincommon.c b/resource/csdk/security/src/oxmpincommon.c index 5a1d70c..02e800e 100644 --- a/resource/csdk/security/src/oxmpincommon.c +++ b/resource/csdk/security/src/oxmpincommon.c @@ -33,6 +33,7 @@ #include "doxmresource.h" #include "credresource.h" #include "cainterface.h" +#include "oic_string.h" #define TAG "OIC_PIN_OXM_COMMON" diff --git a/resource/csdk/stack/src/ocresource.c b/resource/csdk/stack/src/ocresource.c index 703c61a..7632064 100755 --- a/resource/csdk/stack/src/ocresource.c +++ b/resource/csdk/stack/src/ocresource.c @@ -49,6 +49,7 @@ #include "cacommon.h" #include "cainterface.h" #include "ocpayload.h" +#include "oickeepalive.h" #include "platform_features.h" #include "payload_logging.h" #include "ocendpoint.h" diff --git a/resource/third_party_libs.scons b/resource/third_party_libs.scons index a15e154..9991370 100644 --- a/resource/third_party_libs.scons +++ b/resource/third_party_libs.scons @@ -73,7 +73,7 @@ elif target_os in ['windows']: boost_path = os.path.join(src_dir,'extlibs','boost','boost') lib_env.AppendUnique(CPPPATH = [boost_path]) elif target_os == 'ios': - lib_env.AppendUnique(FRAMEWORKPATH = ['#extlibs/boost/ios/framework']) + lib_env.AppendUnique(FRAMEWORKPATH = [src_dir + '/extlibs/boost/ios/framework']) lib_env.AppendUnique(FRAMEWORKS = ['boost']) elif target_os == 'darwin': lib_env.AppendUnique(CPPPATH = ['/usr/local/include']) diff --git a/service/resource-encapsulation/SConscript b/service/resource-encapsulation/SConscript index f5b5298..85b45d5 100644 --- a/service/resource-encapsulation/SConscript +++ b/service/resource-encapsulation/SConscript @@ -40,12 +40,16 @@ else: if env.get('LOGGING'): env.AppendUnique(CPPDEFINES = ['TB_LOG']) +target_os = env.get('TARGET_OS') + +if target_os in ['ios']: + env.AppendUnique(CPPDEFINES = ['TARGET_OS_IPHONE']) + # Add third party libraries lib_env = env.Clone() SConscript('#service/third_party_libs.scons', 'lib_env') resourceClient_env = lib_env.Clone() -target_os = env.get('TARGET_OS') ###################################################################### # Build flags diff --git a/service/resource-encapsulation/src/common/primitiveResource/src/RCSResourceAttributes.cpp b/service/resource-encapsulation/src/common/primitiveResource/src/RCSResourceAttributes.cpp index 75e9d56..fa36a53 100644 --- a/service/resource-encapsulation/src/common/primitiveResource/src/RCSResourceAttributes.cpp +++ b/service/resource-encapsulation/src/common/primitiveResource/src/RCSResourceAttributes.cpp @@ -30,6 +30,12 @@ #include "boost/mpl/size.hpp" #include "boost/mpl/deref.hpp" +#ifdef __APPLE__ +#define OC_CONSTEXPR_INLINE inline +#else +#define OC_CONSTEXPR_INLINE constexpr inline +#endif + namespace { @@ -221,7 +227,7 @@ namespace }; template< typename VARIANT, int POS > - inline std::vector< TypeInfo > getTypeInfo(Int2Type< POS >) noexcept + OC_CONSTEXPR_INLINE std::vector< TypeInfo > getTypeInfo(Int2Type< POS >) noexcept { auto vec = getTypeInfo< VARIANT >(Int2Type< POS - 1 >{ }); vec.push_back(TypeInfo::get< VARIANT, POS >()); @@ -229,7 +235,7 @@ namespace } template< typename VARIANT > - inline std::vector< TypeInfo > getTypeInfo(Int2Type< 0 >) noexcept + OC_CONSTEXPR_INLINE std::vector< TypeInfo > getTypeInfo(Int2Type< 0 >) noexcept { return { TypeInfo::get< VARIANT, 0 >() }; } diff --git a/service/third_party_libs.scons b/service/third_party_libs.scons index 195bfa7..e156744 100644 --- a/service/third_party_libs.scons +++ b/service/third_party_libs.scons @@ -91,7 +91,7 @@ if target_os == 'android': lib_env.AppendUnique(CCFLAGS = ['-w']) elif target_os == 'ios': - lib_env.AppendUnique(FRAMEWORKPATH = ['#extlibs/boost/ios/framework']) + lib_env.AppendUnique(FRAMEWORKPATH = [src_dir + '/extlibs/boost/ios/framework']) lib_env.AppendUnique(FRAMEWORKS = ['boost']) elif target_os == 'darwin': lib_env.AppendUnique(CPPPATH = ['/usr/local/include']) -- 2.7.4