From 8873386442fb832b8bdccc0f0739b4edcaa659d7 Mon Sep 17 00:00:00 2001 From: "abitha.s" Date: Tue, 18 Oct 2016 20:42:21 +0530 Subject: [PATCH] Fix Build issue for soname for NS Libraries Change-Id: I07416d904e5ac63bbb389081e99f6849acfff842 Signed-off-by: abitha.s Reviewed-on: https://gerrit.iotivity.org/gerrit/13415 Tested-by: jenkins-iotivity Reviewed-by: Uze Choi --- service/notification/SConscript | 41 +++++++++++++++++++++++------------------ 1 file changed, 23 insertions(+), 18 deletions(-) diff --git a/service/notification/SConscript b/service/notification/SConscript index 0a45f61..f7f8edf 100755 --- a/service/notification/SConscript +++ b/service/notification/SConscript @@ -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') -- 2.7.4