service/resource-encapsulation: SConscript cleanup
authorPawel Winogrodzki <pawelwi@microsoft.com>
Thu, 22 Jun 2017 21:41:10 +0000 (14:41 -0700)
committerPhil Coval <philippe.coval@osg.samsung.com>
Fri, 25 Aug 2017 22:25:31 +0000 (22:25 +0000)
This is a scons scripts cleanup left after fixing /W4 warnings for Windows.

Preparing SConscript files for removal of arbitrary global "env"
modifications in script files outside build_common/ directory.

Bug: https://jira.iotivity.org/browse/IOT-1583
Change-Id: I39296e61753562a037d7a33f8e1dd3c9803d9843
Signed-off-by: Pawel Winogrodzki <pawelwi@microsoft.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/21291
Tested-by: jenkins-iotivity <jenkins@iotivity.org>
Reviewed-by: George Nash <george.nash@intel.com>
Reviewed-by: Dan Mihai <Daniel.Mihai@microsoft.com>
Reviewed-by: Phil Coval <philippe.coval@osg.samsung.com>
build_common/SConscript
service/resource-encapsulation/SConscript
service/resource-encapsulation/examples/linux/SConscript
service/resource-encapsulation/src/common/SConscript
service/resource-encapsulation/src/serverBuilder/SConscript

index bd0edd1..8c8ae70 100755 (executable)
@@ -515,6 +515,10 @@ def __append_target(ienv, name, targets=None):
     env.AppendUnique(TS=[name])
 
 
+def __add_pthread_if_needed(ienv):
+    if 'gcc' == ienv.get('CC') and target_os not in ['android']:
+        ienv.AppendUnique(LINKFLAGS="-pthread")
+
 def __print_targets(env):
     Help('''
 ===============================================================================
@@ -534,6 +538,7 @@ env.AddMethod(__set_dir, 'SetDir')
 env.AddMethod(__print_targets, 'PrintTargets')
 env.AddMethod(__src_to_obj, 'SrcToObj')
 env.AddMethod(__append_target, 'AppendTarget')
+env.AddMethod(__add_pthread_if_needed, 'AddPthreadIfNeeded')
 env.AddMethod(__install, 'InstallTarget')
 env.AddMethod(__installlib, 'UserInstallTargetLib')
 env.AddMethod(__installbin, 'UserInstallTargetBin')
index 1d3ef4c..4170549 100644 (file)
@@ -27,29 +27,25 @@ Import('env')
 SConscript('src/common/SConscript')
 SConscript('src/serverBuilder/SConscript')
 
+# Add third party libraries
+lib_env = env.Clone()
+SConscript('#service/third_party_libs.scons', 'lib_env')
+
+resourceClient_env = lib_env.Clone()
+
 ######################################################################
 #building Resource client, resourceBroker and resourceCache
 ######################################################################
 
-if env.get('RELEASE'):
-    env.AppendUnique(CCFLAGS=['-Os'])
-    env.AppendUnique(CPPDEFINES=['NDEBUG'])
+if resourceClient_env.get('RELEASE'):
+    resourceClient_env.AppendUnique(CCFLAGS=['-Os'])
 else:
-    env.AppendUnique(CCFLAGS=['-g'])
-
-if env.get('LOGGING'):
-    env.AppendUnique(CPPDEFINES=['TB_LOG'])
+    resourceClient_env.AppendUnique(CCFLAGS=['-g'])
 
 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()
+    resourceClient_env.AppendUnique(CPPDEFINES=['TARGET_OS_IPHONE'])
 
 ######################################################################
 # Build flags
@@ -57,6 +53,9 @@ resourceClient_env = lib_env.Clone()
 resourceClient_env.AppendUnique(CPPPATH=[
     'include',
     '#/resource/include',
+    '#/resource/c_common',
+    '#/resource/c_common/oic_malloc/include',
+    '#/resource/c_common/oic_string/include',
     '#/resource/csdk/include',
     '#/resource/csdk/stack/include',
     '#/resource/oc_logger/include',
@@ -68,13 +67,12 @@ resourceClient_env.AppendUnique(CPPPATH=[
 ])
 
 resourceClient_env.PrependUnique(
-    LIBS=['oc', 'rcs_common', 'octbstack', 'oc_logger'])
+    LIBS=['c_common', 'oc', 'rcs_common', 'octbstack', 'oc_logger', 'logger'])
 
 if target_os not in ['windows']:
     resourceClient_env.AppendUnique(CXXFLAGS=['-Wall', '-std=c++0x'])
     resourceClient_env.AppendUnique(LIBS=['dl'])
-    if target_os in ['linux']:
-        resourceClient_env.AppendUnique(LIBS=['pthread'])
+    resourceClient_env.AddPthreadIfNeeded()
 
 if target_os in ['android']:
     resourceClient_env.AppendUnique(CXXFLAGS=['-frtti', '-fexceptions'])
index 1114330..4f63b60 100644 (file)
@@ -23,6 +23,8 @@
 ##
 Import('env')
 
+target_os = env.get('TARGET_OS')
+
 # Add third party libraries
 lib_env = env.Clone()
 SConscript('#service/third_party_libs.scons', 'lib_env')
@@ -32,10 +34,13 @@ sample_env = lib_env.Clone()
 sample_env.AppendUnique(CXXFLAGS=['-Wall', '-std=c++0x'])
 sample_env.AppendUnique(LIBS=[
     'coap', 'connectivity_abstraction', 'oc_logger', 'octbstack', 'oc',
-    'rcs_common', 'pthread'
+    'rcs_common'
 ])
 sample_env.AppendUnique(CPPPATH=[
     '../../include',
+    '#/resource/c_common',
+    '#/resource/c_common/oic_malloc/include',
+    '#/resource/c_common/oic_string/include',
     '#/resource/csdk/include',
     '#/resource/csdk/stack/include',
     '#/resource/include',
@@ -48,6 +53,8 @@ if env.get('SECURED') == '1':
 if 'rt' in sample_env.get('LIBS'):
     sample_env.Append(LIBS=['rt'])
 
+sample_env.AddPthreadIfNeeded()
+
 ######################################################################
 # ##### Client #####
 ######################################################################
index 2803a42..0c1b973 100644 (file)
@@ -35,6 +35,9 @@ src_dir = rcs_common_env.get('SRC_DIR')
 ######################################################################
 rcs_common_env.AppendUnique(CPPPATH=[
     '#/extlibs',
+    '#/resource/c_common',
+    '#/resource/c_common/oic_malloc/include',
+    '#/resource/c_common/oic_string/include',
     '#/resource/include',
     '#/resource/csdk/include',
     '#/resource/csdk/stack/include',
@@ -45,8 +48,6 @@ rcs_common_env.AppendUnique(CPPPATH=[
 
 rcs_common_env.AppendUnique(CPPPATH=['expiryTimer/include', 'expiryTimer/src'])
 
-rcs_common_env.AppendUnique(LIBPATH=[rcs_common_env.get('BUILD_DIR')])
-
 if target_os not in ['windows']:
     rcs_common_env.AppendUnique(CXXFLAGS=['-std=c++0x', '-Wall'])
 
@@ -95,6 +96,8 @@ else:
     rcs_common_env.InstallTarget([rcs_common_static], 'rcs_common')
     rcs_common_env.UserInstallTargetLib([rcs_common_static], 'rcs_common')
 
+rcs_common_env.AddPthreadIfNeeded()
+
 ######################################################################
 # Build Test Expiry Timer and primitive Resource
 ######################################################################
index 27be413..263ed8d 100644 (file)
@@ -42,6 +42,9 @@ server_builder_env.AppendUnique(CPPPATH=[
     '../common/primitiveResource/include',
     '../common/utils/include',
     '../../include',
+    '#/resource/c_common',
+    '#/resource/c_common/oic_malloc/include',
+    '#/resource/c_common/oic_string/include',
     '#/resource/include',
     '#/resource/csdk/include',
     '#/resource/csdk/stack/include',
@@ -50,11 +53,7 @@ server_builder_env.AppendUnique(CPPPATH=[
 
 server_builder_env.AppendUnique(
     CPPPATH=[server_builder_env.get('SRC_DIR') + '/extlibs', 'include'])
-server_builder_env.AppendUnique(LIBPATH=[server_builder_env.get('BUILD_DIR')])
-server_builder_env.AppendUnique(LIBS=['oc', 'rcs_common'])
-
-if server_builder_env.get('LOGGING'):
-    server_builder_env.AppendUnique(LIBS=['octbstack'])
+server_builder_env.AppendUnique(LIBS=['oc', 'rcs_common', 'logger'])
 
 if not release:
     server_builder_env.AppendUnique(CXXFLAGS=['--coverage'])
@@ -75,6 +74,8 @@ if server_builder_env.get('SECURED') == '1':
         server_builder_env.AppendUnique(
             LIBS=['mbedtls', 'mbedx509', 'mbedcrypto'])
 
+if target_os in ['linux', 'tizen']:
+    server_builder_env.AppendUnique(LIBS=['rt'])
 ######################################################################
 # Source files and Targets
 ######################################################################
@@ -101,9 +102,9 @@ if target_os in ['linux']:
     server_builder_test_env = server_builder_env.Clone()
 
     server_builder_test_env.AppendUnique(CPPPATH=[
-        '#/extlibs/hippomocks/hippomocks',
-        '../common/utils/include'
-])
+            '#/extlibs/hippomocks/hippomocks',
+            '../common/utils/include',
+        ])
 
     if server_builder_test_env.get('SECURED') == '1':
         server_builder_test_env.AppendUnique(
@@ -125,6 +126,8 @@ if target_os in ['linux']:
         unitTestHelperWithFakeOCPlatform_obj
     ]
 
+    server_builder_test_env.AddPthreadIfNeeded()
+
     server_builder_test = server_builder_test_env.Program(
         'rcs_server_test', server_builder_test_src)
     Alias("rcs_server_test", server_builder_test)