Fix Build issue for soname for NS Libraries
authorabitha.s <abitha.s@samsung.com>
Tue, 18 Oct 2016 15:12:21 +0000 (20:42 +0530)
committerUze Choi <uzchoi@samsung.com>
Wed, 19 Oct 2016 05:29:57 +0000 (05:29 +0000)
Change-Id: I07416d904e5ac63bbb389081e99f6849acfff842
Signed-off-by: abitha.s <abitha.s@samsung.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/13415
Tested-by: jenkins-iotivity <jenkins-iotivity@opendaylight.org>
Reviewed-by: Uze Choi <uzchoi@samsung.com>
service/notification/SConscript

index 0a45f61..f7f8edf 100755 (executable)
@@ -70,9 +70,6 @@ if target_os == 'linux':
 if target_os == 'android':
        notification_env.AppendUnique(CCFLAGS = ['-frtti', '-fexceptions'])
        notification_env.AppendUnique(LIBS = ['gnustl_shared','log'])
-       notification_env.AppendUnique(LINKFLAGS = ['-Wl,-soname,libnotification_provider.so'])
-       notification_env.AppendUnique(LINKFLAGS = ['-Wl,-soname,libnotification_consumer.so'])
-       
 
        if not env.get('RELEASE'):
                notification_env.AppendUnique(LIBS = ['log'])
@@ -93,31 +90,39 @@ if env.get('SECURED') == '1':
 ######################################################################
 # Source files and Targets
 ######################################################################
+notification_provider_env = notification_env.Clone()
+notification_consumer_env = notification_env.Clone()
+
+if target_os == 'android':
+       notification_provider_env.AppendUnique(LINKFLAGS = ['-Wl,-soname,libnotification_provider.so'])
+if target_os == 'android':
+       notification_consumer_env.AppendUnique(LINKFLAGS = ['-Wl,-soname,libnotification_consumer.so'])
 
 notification_provider_src = [
        env.Glob('src/provider/*.c'), env.Glob('src/common/*.c')]
 notification_consumer_src = [
        env.Glob('src/consumer/*.c'), env.Glob('src/common/*.c')]
 
-providersdk = notification_env.SharedLibrary('notification_provider', notification_provider_src)
-notification_env.InstallTarget(providersdk, 'libnotification_provider')
-notification_env.UserInstallTargetLib(providersdk, 'libnotification_provider')
 
-consumersdk = notification_env.SharedLibrary('notification_consumer', notification_consumer_src)
-notification_env.InstallTarget(consumersdk, 'libnotification_consumer')
-notification_env.UserInstallTargetLib(consumersdk, 'libnotification_consumer')
+providersdk = notification_provider_env.SharedLibrary('notification_provider', notification_provider_src)
+notification_provider_env.InstallTarget(providersdk, 'libnotification_provider')
+notification_provider_env.UserInstallTargetLib(providersdk, 'libnotification_provider')
+
+consumersdk = notification_consumer_env.SharedLibrary('notification_consumer', notification_consumer_src)
+notification_consumer_env.InstallTarget(consumersdk, 'libnotification_consumer')
+notification_consumer_env.UserInstallTargetLib(consumersdk, 'libnotification_consumer')
 
-providersdk = notification_env.StaticLibrary('notification_provider', notification_provider_src)
-notification_env.InstallTarget(providersdk, 'libnotification_provider')
-notification_env.UserInstallTargetLib(providersdk, 'libnotification_provider')
+providersdk = notification_provider_env.StaticLibrary('notification_provider', notification_provider_src)
+notification_provider_env.InstallTarget(providersdk, 'libnotification_provider')
+notification_provider_env.UserInstallTargetLib(providersdk, 'libnotification_provider')
 
-consumersdk = notification_env.StaticLibrary('notification_consumer', notification_consumer_src)
-notification_env.InstallTarget(consumersdk, 'libnotification_consumer')
-notification_env.UserInstallTargetLib(consumersdk, 'libnotification_consumer')
+consumersdk = notification_consumer_env.StaticLibrary('notification_consumer', notification_consumer_src)
+notification_consumer_env.InstallTarget(consumersdk, 'libnotification_consumer')
+notification_consumer_env.UserInstallTargetLib(consumersdk, 'libnotification_consumer')
 
-notification_env.UserInstallTargetHeader('include/NSProviderInterface.h',\
+notification_provider_env.UserInstallTargetHeader('include/NSProviderInterface.h',\
        'service/notification', 'NSProviderInterface.h')
-notification_env.UserInstallTargetHeader('include/NSConsumerInterface.h',\
+notification_consumer_env.UserInstallTargetHeader('include/NSConsumerInterface.h',\
        'service/notification', 'NSConsumerInterface.h')
 
 # Go to build Unit test
@@ -131,4 +136,4 @@ if target_os == 'android':
     SConscript('android/SConscript')
 
 # Go to build sample apps
-SConscript('examples/SConscript')
\ No newline at end of file
+SConscript('examples/SConscript')