3 # Ideally we will capture the exit code of each step and try them all before failing
4 # the build script. For now, use set -e and fail the build at first failure.
9 echo "*********** Clean build *************"
16 if [ $(uname -s) = "Linux" ]
18 echo "*********** Build for linux *************"
21 echo "*********** Build for linux with Security*************"
22 scons RELEASE=$3 SECURED=1
25 # Note: for android, as oic-resource uses C++11 feature stoi and to_string,
26 # it requires gcc-4.9, currently only android-ndk-r10(for linux)
27 # and windows android-ndk-r10(64bit target version) support these features.
28 if [ "$BUILD_FOR_ANDROID" = "true" ]
30 echo "*********** Build Boost for android ***********"
32 .//buildDependencies.sh
35 echo "*********** Build for android x86 *************"
36 scons TARGET_OS=android TARGET_ARCH=x86 ANDROID_NDK=$1 RELEASE=$3
38 echo "*********** Build for android armeabi *************"
39 scons TARGET_OS=android TARGET_ARCH=armeabi ANDROID_NDK=$1 RELEASE=$3
41 echo "*********** Build for android armeabi-v7a *************"
42 scons TARGET_OS=android TARGET_ARCH=armeabi-v7a ANDROID_NDK=$1 RELEASE=$3
44 echo "*********** Build for android armeabi-v7a-hard *************"
45 scons TARGET_OS=android TARGET_ARCH=armeabi-v7a-hard ANDROID_NDK=$1 RELEASE=$3
48 echo "*********** Build for arduino avr *************"
49 scons resource TARGET_OS=arduino UPLOAD=false BOARD=mega TARGET_ARCH=avr TARGET_TRANSPORT=ETHERNET NET=Ethernet RELEASE=$3
50 scons resource TARGET_OS=arduino UPLOAD=false BOARD=mega TARGET_ARCH=avr TARGET_TRANSPORT=WIFI NET=Wifi RELEASE=$3
52 echo "*********** Build for arduino arm *************"
53 scons resource TARGET_OS=arduino UPLOAD=false BOARD=arduino_due_x TARGET_ARCH=arm TARGET_TRANSPORT=ETHERNET NET=Ethernet RELEASE=$3
54 scons resource TARGET_OS=arduino UPLOAD=false BOARD=arduino_due_x TARGET_ARCH=arm TARGET_TRANSPORT=WIFI NET=Wifi RELEASE=$3
56 if [ $(uname -s) = "Darwin" ]
58 echo "*********** Build for OSX *************"
59 scons TARGET_OS=darwin SYS_VERSION=10.9 RELEASE=$3
61 echo "*********** Build for IOS i386 *************"
62 scons TARGET_OS=ios TARGET_ARCH=i386 SYS_VERSION=7.0 RELEASE=$3
64 echo "*********** Build for IOS x86_64 *************"
65 scons TARGET_OS=ios TARGET_ARCH=x86_64 SYS_VERSION=7.0 RELEASE=$3
67 echo "*********** Build for IOS armv7 *************"
68 scons TARGET_OS=ios TARGET_ARCH=armv7 SYS_VERSION=7.0 RELEASE=$3
70 echo "*********** Build for IOS armv7s *************"
71 scons TARGET_OS=ios TARGET_ARCH=armv7s SYS_VERSION=7.0 RELEASE=$3
73 echo "*********** Build for IOS arm64 *************"
74 scons TARGET_OS=ios TARGET_ARCH=arm64 SYS_VERSION=7.0 RELEASE=$3
82 echo " `basename $0` <path-to-android-ndk>"
84 echo " `basename $0` -c"
103 # Suppress "Reading ..." message and enable parallel build
104 export SCONSFLAGS="-Q -j 4"
107 scons resource RELEASE=false -c
108 scons resource LOGGING=false RELEASE=false
109 scons resource TEST=1 RELEASE=false
110 echo "===================== done ====================="