a95c187942006a4e664ffc022534f4df005f14a4
[iotivity.git] / build_common / linux / SConscript
1 ##
2 # This script set linux specific flags (GNU GCC)
3 #
4 ##
5 Import('env')
6
7 print "Reading linux configuration script"
8
9 # Set release/debug flags
10 if env.get('RELEASE'):
11         env.AppendUnique(CCFLAGS = ['-Os'])
12         env.AppendUnique(CPPDEFINES = ['NDEBUG'])
13 else:
14         env.AppendUnique(CCFLAGS = ['-g'])
15
16 if env.get('LOGGING'):
17         env.AppendUnique(CPPDEFINES = ['-DTB_LOG'])
18
19 env.AppendUnique(CPPDEFINES = ['WITH_POSIX', '__linux__'])
20 env.AppendUnique(CFLAGS = ['-std=gnu99'])
21 env.AppendUnique(CCFLAGS = ['-Wall', '-fPIC'])
22 env.AppendUnique(LIBS = ['uuid'])
23 env.AppendUnique(LINKFLAGS = ['-ldl', '-lpthread'])
24
25 if env.get('TARGET_OS') == 'tizen':
26     env.AppendUnique(CCFLAGS = ['-D__TIZEN__', '-DSLP_SDK_LOG', '-D_GNU_SOURCE', '-DTIZEN_DEBUG_ENABLE'])
27     env.ParseConfig("pkg-config glib-2.0 gthread-2.0 --cflags --libs")
28     env.ParseConfig("pkg-config dlog --cflags --libs")
29
30 # Set arch flags
31 target_arch = env.get('TARGET_ARCH')
32 if target_arch in ['x86']:
33         env.AppendUnique(CCFLAGS = ['-m32'])
34         env.AppendUnique(LINKFLAGS = ['-m32'])
35 elif target_arch in ['x86_64']:
36         env.AppendUnique(CCFLAGS = ['-m64'])
37         env.AppendUnique(LINKFLAGS = ['-m64'])
38 elif target_arch.find('v7a-hard') > 0:
39         env.AppendUnique(CPPFLAGS = ['-march=armv7-a'])
40         env.AppendUnique(CPPFLAGS = ['-mfloat-abi=hard'])
41         env.AppendUnique(CCFLAGS = ['-mfloat-abi=hard'])
42         env.AppendUnique(LINKFLAGS = ['-mfloat-abi=hard'])
43 elif target_arch.find('v7a') > 0:
44         env.AppendUnique(CPPFLAGS = ['-march=armv7-a'])
45 elif target_arch.find('arm64') >= 0:
46         env.AppendUnique(CPPFLAGS = ['-march=armv8-a'])
47 else:
48         env.AppendUnique(CPPFLAGS = ['-march=armv5te'])