Fix build error with scons-4.4.0 version which is based on python3
[platform/upstream/iotivity.git] / service / third_party_libs.scons
index e9a140c..2e347c9 100644 (file)
@@ -1,3 +1,23 @@
+#******************************************************************
+#
+# Copyright 2014 Samsung Electronics All Rights Reserved.
+#
+#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
+
 ######################################################################
 # This script manages third party libraries
 #
@@ -12,35 +32,32 @@ target_os = env.get('TARGET_OS')
 target_arch = env.get('TARGET_ARCH')
 src_dir = env.get('SRC_DIR')
 
-if target_os not in ['linux', 'darwin']:
-       utils_path = env.get('OIC_UTILS')
-
 resource_path = src_dir + '/resource'
 
 ######################################################################
 # Check dependent packages (Linux only)
 ######################################################################
-if target_os == 'linux':
+if target_os in ['linux']:
        if not env.GetOption('help'):
                if not target_arch == platform.machine():
-                       print '''
+                       print('''
 *********************************** Warning ***********************************
 * You are trying cross build, please make sure (%s) version libraries are
 * installed!                                                                 *
 *******************************************************************************
-''' % target_arch
+''' % target_arch)
 
                conf = Configure(lib_env)
 
-               if not conf.CheckLib('boost_thread'):
-                       print 'Did not find boost_thread, exiting!'
+               if target_os not in ['tizen'] and not conf.CheckLib('boost_thread', language='C++'):
+                       print('Did not find boost_thread, exiting!')
                        Exit(1)
 
-               if not conf.CheckLib('boost_system'):
-                       print 'Did not find boost_system, exiting!'
+               if target_os not in ['tizen'] and not conf.CheckLib('boost_system', language='C++'):
+                       print('Did not find boost_system, exiting!')
                        Exit(1)
 
-               conf.Finish()
+               lib_env = conf.Finish()
 
 ######################################################################
 # The 'include' path of external libraries
@@ -50,22 +67,11 @@ lib_env.AppendUnique(CPPPATH = [
                resource_path + '/include' ,
                resource_path + '/oc_logger/include',
                resource_path + '/csdk/stack/include',
-               resource_path + '/csdk/ocsocket/include',
-               resource_path + '/csdk/ocrandom/include',
+               resource_path + '/c_common/ocrandom/include',
                resource_path + '/csdk/logger/include'
                ])
 
 ######################################################################
-# The 'include' path of third party libraries
-######################################################################
-if target_os == 'android':
-       lib_env.AppendUnique(CPPPATH = [
-                                       utils_path + '/android/boost/include',
-                                       utils_path + '/android/expat/include/expat/',
-                                       utils_path + '/android/openssl/include',
-                               ])
-
-######################################################################
 # The path of third party libraries binary
 ######################################################################
 if target_os == 'android':
@@ -74,26 +80,25 @@ if target_os == 'android':
 
        if target_arch not in ['x86', 'armeabi', 'armeabi-v7a']:
                if not env.GetOption('help') and not env.GetOption('clean'):
-                       print '''
+                       print('''
 *********************************** Warning ***********************************
 * current only x86, armeabi, armeabi-v7a libraries are provided!              *
 *******************************************************************************
-'''
+''')
        else:
-               lib_env.AppendUnique(LIBPATH = [
-                                                               utils_path + '/android/boost/libs/' + target_arch,
-                                                               utils_path + '/android/expat/lib/' + target_arch,
-                                                               utils_path + '/android/openssl/lib/' + target_arch,
-                                                       ])
                # Too much boost warning, suppress the warning
                lib_env.AppendUnique(CCFLAGS = ['-w'])
 
 elif target_os == 'ios':
-       lib_env.AppendUnique(FRAMEWORKPATH = [utils_path + '/ios/frameworks/'])
-       lib_env.AppendUnique(FRAMEWORKS = ['boost', 'expat', 'openssl'])
+       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'])
        lib_env.AppendUnique(LIBPATH = ['/usr/local/lib'])
+elif target_os == 'windows':
+       boost_path = os.path.join(src_dir,'extlibs','boost','boost')
+       lib_env.AppendUnique(CPPPATH = [boost_path])
 
 Import('env')
 lib_env.AppendUnique(LIBPATH = env.get('BUILD_DIR'))
+