replace : iotivity -> iotivity-sec
[platform/upstream/iotivity.git] / service / resource-encapsulation / SConscript
index dfd93a7..b09b8ee 100644 (file)
@@ -26,50 +26,59 @@ Import('env')
 
 SConscript('src/common/SConscript')
 SConscript('src/serverBuilder/SConscript')
-SConscript('src/resourceContainer/SConscript')
 
 ######################################################################
 #building Resource client, resourceBroker and resourceCache
 ######################################################################
 
 if env.get('RELEASE'):
-        env.AppendUnique(CCFLAGS = ['-Os'])
-        env.AppendUnique(CPPDEFINES = ['NDEBUG'])
+    env.AppendUnique(CCFLAGS = ['-Os'])
+    env.AppendUnique(CPPDEFINES = ['NDEBUG'])
 else:
-        env.AppendUnique(CCFLAGS = ['-g'])
+    env.AppendUnique(CCFLAGS = ['-g'])
 
 if env.get('LOGGING'):
-        env.AppendUnique(CPPDEFINES = ['TB_LOG'])
+    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(env.get('SRC_DIR') + '/service/third_party_libs.scons', 'lib_env')
+SConscript('#service/third_party_libs.scons', 'lib_env')
 
 resourceClient_env = lib_env.Clone()
-target_os = env.get('TARGET_OS')
 
 ######################################################################
 # Build flags
 ######################################################################
-resourceClient_env.AppendUnique(CPPPATH = ['include'])
-resourceClient_env.AppendUnique(CPPPATH = ['src/common/primitiveResource/include'])
-resourceClient_env.AppendUnique(CPPPATH = ['src/common/expiryTimer/include'])
-resourceClient_env.AppendUnique(CPPPATH = ['src/common/expiryTimer/src'])
-resourceClient_env.AppendUnique(CPPPATH = ['src/resourceBroker/include'])
-resourceClient_env.AppendUnique(CPPPATH = ['src/resourceCache/include'])
-
-resourceClient_env.PrependUnique(LIBS = ['oc', 'rcs_common', 'octbstack', 'gnustl_shared','oc_logger', 'compatibility', 'log'])
-
-if target_os not in ['windows', 'winrt']:
-    resourceClient_env.AppendUnique(CXXFLAGS = ['-O2', '-g', '-Wall', '-fmessage-length=0', '-std=c++0x'])
-if target_os == 'linux':
-   resourceClient_env.AppendUnique(LIBS = ['pthread'])
-   
-if target_os == 'android':
+resourceClient_env.AppendUnique(CPPPATH = [
+    'include',
+    'src/common/primitiveResource/include',
+    'src/common/expiryTimer/include',
+    'src/common/utils/include',
+    'src/resourceBroker/include',
+    'src/resourceCache/include'
+])
+
+resourceClient_env.PrependUnique(LIBS = ['oc', 'rcs_common', 'octbstack','oc_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'])
+
+if target_os in ['android']:
     resourceClient_env.AppendUnique(CXXFLAGS = ['-frtti', '-fexceptions'])
-    resourceClient_env.PrependUnique(LIBS = ['gnustl_shared', 'compatibility', 'log'])
+    resourceClient_env.PrependUnique(LIBS = ['gnustl_shared', 'log'])
 
-resourceClient_env.AppendUnique(LIBS = ['dl'])
+if target_os in ['linux']:
+    if not env.get('RELEASE'):
+        resourceClient_env.PrependUnique(LIBS = ['gcov'])
+        resourceClient_env.AppendUnique(CXXFLAGS = ['--coverage'])
 
 ######################################################################
 # Source files and Targets
@@ -77,6 +86,7 @@ resourceClient_env.AppendUnique(LIBS = ['dl'])
 BROKER_SRC_DIR = 'src/resourceBroker/src/'
 CACHE_SRC_DIR = 'src/resourceCache/src/'
 RESOURCECLIENT_DIR = 'src/resourceClient/'
+
 client_src = [
         BROKER_SRC_DIR + 'DeviceAssociation.cpp',
         BROKER_SRC_DIR + 'DevicePresence.cpp',
@@ -84,21 +94,43 @@ client_src = [
         BROKER_SRC_DIR + 'ResourceBroker.cpp',
         CACHE_SRC_DIR + 'DataCache.cpp',
         CACHE_SRC_DIR + 'ResourceCacheManager.cpp',
+        CACHE_SRC_DIR + 'ObserveCache.cpp',
         RESOURCECLIENT_DIR + 'RCSDiscoveryManager.cpp',
-       RESOURCECLIENT_DIR + 'RCSRemoteResourceObject.cpp'
-               ]
-ResourceClientsdk = resourceClient_env.StaticLibrary('rcs_client', client_src)
-resourceClient_env.InstallTarget(ResourceClientsdk , 'librcs_client')
+        RESOURCECLIENT_DIR + 'RCSDiscoveryManagerImpl.cpp',
+        RESOURCECLIENT_DIR + 'RCSRemoteResourceObject.cpp'
+        ]
+ResourceClientsdk_static = resourceClient_env.StaticLibrary('rcs_client', client_src)
+if target_os not in ['ios']:
+    ResourceClientsdk_shared = resourceClient_env.SharedLibrary('rcs_client', client_src)
+    resourceClient_env.InstallTarget([ResourceClientsdk_static,ResourceClientsdk_shared], 'rcs_client')
+    resourceClient_env.UserInstallTargetLib([ResourceClientsdk_static,ResourceClientsdk_shared], 'rcs_client')
+else:
+    resourceClient_env.InstallTarget([ResourceClientsdk_static], 'rcs_client')
+    resourceClient_env.UserInstallTargetLib([ResourceClientsdk_static], 'rcs_client')
+resourceClient_env.UserInstallTargetHeader('include/RCSAddress.h', 'service/resource-encapsulation', 'RCSAddress.h')
+resourceClient_env.UserInstallTargetHeader('include/RCSDiscoveryManager.h', 'service/resource-encapsulation', 'RCSDiscoveryManager.h')
+resourceClient_env.UserInstallTargetHeader('include/RCSRemoteResourceObject.h', 'service/resource-encapsulation', 'RCSRemoteResourceObject.h')
+resourceClient_env.UserInstallTargetHeader('include/RCSResourceAttributes.h', 'service/resource-encapsulation', 'RCSResourceAttributes.h')
+resourceClient_env.UserInstallTargetHeader('include/RCSResourceObject.h', 'service/resource-encapsulation', 'RCSResourceObject.h')
+resourceClient_env.UserInstallTargetHeader('include/RCSException.h', 'service/resource-encapsulation', 'RCSException.h')
+resourceClient_env.UserInstallTargetHeader('include/RCSRequest.h', 'service/resource-encapsulation', 'RCSRequest.h')
+resourceClient_env.UserInstallTargetHeader('include/RCSResponse.h', 'service/resource-encapsulation', 'RCSResponse.h')
+resourceClient_env.UserInstallTargetHeader('include/RCSRepresentation.h', 'service/resource-encapsulation', 'RCSRepresentation.h')
+resourceClient_env.UserInstallTargetHeader('include/RCSSeparateResponse.h', 'service/resource-encapsulation', 'RCSSeparateResponse.h')
 
 ######################################################################
 # Build Sample App: SampleResourceClient & SampleResourceServer
 ######################################################################
-SConscript('examples/SConscript')
+#SConscript('examples/SConscript')
 
 ######################################################################
-# Build UnitTests Resource Client , resourceCache and resourceBroker
+# Build UnitTests Resource Client , resourceCache and resourceBroker and 
+# DiscoveryManager
 ################################################ ######################
-SConscript('unittests/SConscript')
-SConscript('src/resourceCache/unittests/SConscript')
-SConscript('src/resourceBroker/unittest/SConscript')
+if target_os in ['linux']:
+    SConscript('unittests/SConscript')
+    SConscript('src/resourceCache/unittests/SConscript')
+    SConscript('src/resourceBroker/unittest/SConscript')
 
+if target_os == 'android':
+    SConscript('android/SConscript')