Define prefix SINGLE_THREAD, MULTI_THREAD
[platform/upstream/iotivity.git] / Readme.scons.txt
index 27f89ce..c13dd47 100644 (file)
@@ -38,7 +38,7 @@ Linux, Tizen, Android, Arduino, Windows, MAC OSX, IOS ...).
 The output of the build is in:
   <top directory of the project>/out/<target_os>/<target_arch>/<build_type>/
 e.g.
-       oic-resource/out/android/armeabi-v7a/release/.
+       iotivity/out/android/armeabi-v7a/release/.
 
 This document takes 'iotivity' project as example, the way to build other
 projects is almost the same.
@@ -56,7 +56,16 @@ information(include build options). To see the help information:
       $ scons [options] -h
 
 Note: If no value is specified for an option, the default value will be used.
-The change of options value may impact the output.
+The change of options value may impact the help information and the behavior
+of the building.
+
+Generally, it's required to specify the target OS and target ARCH, that's to say
+tell Scons which OS and which ARCH you'd like build this project for. By default,
+the target OS and ARCH is the same as the host.
+
+Some more options may be required, please care the 'error' notification when build.
+For help about how to set an option, please run:
+     $ scons TARGET_OS=xxx TARGET_ARCH=yyy [XXX=zzz ...] -h
 
 
 === Prerequites ===
@@ -76,7 +85,7 @@ To build for Android, Andorid NDK and SDK are required.
   Android NDK: http://developer.android.com/tools/sdk/ndk/index.html
   Android SDK: http://developer.android.com/sdk/index.html
 (Note: as in some IoTivity projects, C++11 features are used, recommend Android
- NDK >= r10, according to our test result r10c is the best one currently)
+ NDK >= r10)
 
 Arduino:
 To build for Arduino, Arduino IDE is required.
@@ -106,19 +115,22 @@ Java codes, this isn't required)
 so you don't need to add it in command line each time. The build script will
 guide you to do that.)
 
-=== Build IoTivity project on Linux(Ubuntu) ===
+* 3. External libraries
+IoTivity project depends on some external libraries, such as boost, expat ...
+During building, the existence of external library will be checked, if it doesn't
+exist, the build script will try to download, unpack and build the library or
+notify user to install it.
 
-Generally, it's required to specify the target OS and target ARCH, that's to say
-tell Scons which OS and which ARCH you'd like build this project for. By default,
-the target OS and ARCH is the same as the host.
+Downloading and unpacking may fail due to network problem or required unpacking
+tool isn't installed. An message will be displayed, please follow the message
+to skip it.
 
-Some more options may be required, please care the 'error' notification when build.
-For help about how to set an option, please run:
-       $ scons TARGET_OS=xxx TARGET_ARCH=yyy [XXX=zzz ...] -h
+
+=== Build IoTivity project on Linux(Ubuntu) ===
 
 1. Build IoTivity project for Linux
       $ cd <top directory of the project>
-      $ sudo apt-get install libboost-dev libboost-program-options-dev libexpat1-dev libboost-thread-dev
+      $ sudo apt-get install libboost-dev libexpat1-dev libboost-thread-dev
       $ scons
 
 2. Build IoTivity project for Android
@@ -127,10 +139,6 @@ For help about how to set an option, please run:
 (xxx can be x86, armeabi, armeabi-v7a, armeabi-v7a-hard. To see all of its
 allowed value, please execute command 'scons TARGET_OS=android -Q -h')
 
-Note: Currently as x86_64/arm64_v8a external library binaries aren't provided,
-you may meet link problem if build executable binary which depends on external
-library for x86_64/arm64_v8a.
-
 3. Build IoTivity project for Arduino
       $ cd <top directory of the project>
       $ scons TARGET_OS=arduino TARGET_ARCH=xxx BOARD=yyy
@@ -149,7 +157,7 @@ toools/tizen directory. gbs is default build tool for Tizen platfrom, we can
 refer the following wiki to setup Tizen development environment:
 https://source.tizen.org/documentation/developer-guide/getting-started-guide)
 
-=== Build IoTivity project on Windows ===
+=== Build IoTivity project on Android ===
 
 1. Build IoTivity project for Android(It's the same as on Ubuntu)
       $ cd <top directory of the project>
@@ -199,7 +207,7 @@ Note:
 at once. Following is the usage:
 
 To build:
-     $ auto_build.sh <path-to-android-ndk> <path-to-arduino-home>
+     $ auto_build.sh <path-to-android-ndk>
 To clean:
      $ auto_build.sh -c