+#******************************************************************
+#
+# Copyright 2014 Intel Mobile Communications GmbH 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.
+#
+#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
+
##
# 'resource' sub-project main build script
#
Import('env')
target_os = env.get('TARGET_OS')
+src_dir = env.get('SRC_DIR')
+rd_mode = env.get('RD_MODE')
+
+if target_os == 'tizenrt' and not env.get('RELEASE'):
+ env.AppendUnique(CCFLAGS = ['-g'])
+
+# Build liblogger
+SConscript('csdk/logger/SConscript')
+
+if target_os not in ['arduino', 'darwin', 'ios', 'android', 'msys_nt', 'windows', 'tizenrt']:
+ env.AppendUnique(LIBS=['rt'])
+
+# Download (if not already present) & build libcoap
+SConscript('#extlibs/libcoap/SConscript')
-# Build libcoap
-SConscript('csdk/connectivity/lib/libcoap-4.1.1/SConscript')
-SConscript('csdk/libcoap/SConscript')
+# Build C Common dependencies
+SConscript('c_common/SConscript')
# Build connectivity
SConscript('csdk/connectivity/SConscript')
+if env.get('ROUTING') in ['GW', 'EP']:
+ # Build Routing
+ SConscript('csdk/routing/SConscript')
+
+if 'CLIENT' in rd_mode or 'SERVER' in rd_mode:
+ SConscript('csdk/resource-directory/SConscript')
+
+# Build libocsrm
+SConscript('csdk/security/SConscript')
+
# Build liboctbstack
SConscript('csdk/SConscript')
-if target_os != 'arduino':
+if target_os not in ['arduino','darwin', 'tizenrt']:
# Build liboc_logger
SConscript('oc_logger/SConscript')
# Build liboc
SConscript('src/SConscript')
+#if target_os not in ['arduino','darwin','ios','android', 'tizenrt']:
# Build examples
- SConscript('examples/SConscript')
+# SConscript('examples/SConscript')
+if target_os in ['linux', 'windows']:
+ # Build C Samples
+ SConscript('csdk/stack/test/linux/SConscript')
SConscript('csdk/stack/samples/linux/SimpleClientServer/SConscript')
-else:
+
+ if env.get('SECURED') == '1':
+ # Build secure samples
+ SConscript('csdk/stack/samples/linux/secure/SConscript')
+
+ # Build C/C++ unit tests
+ SConscript('unit_tests.scons')
+
+elif target_os == 'darwin':
+ env.Command('../../out/darwin/iotivity-csdk.framework',None,src_dir + '/tools/darwin/mkfwk_osx.sh')
+ # Build linux samples for now
+ SConscript('csdk/stack/samples/linux/SimpleClientServer/SConscript')
+
+ # Build C stack's unit tests.
+ SConscript('unit_tests.scons')
+
+elif target_os == 'arduino':
SConscript('csdk/stack/samples/arduino/SimpleClientServer/ocserver/SConscript')
+
+elif target_os == 'msys_nt':
+ # Build secure samples. Using linux samples for now.
+ SConscript('csdk/stack/samples/linux/secure/SConscript')
+
+ # Build C/C++ unit tests
+ SConscript('unit_tests.scons')