Handle race condition and mutex issues.
[platform/upstream/iotivity.git] / extlibs / yaml / SConscript
1 #******************************************************************\r
2 #\r
3 # Copyright 2014 Samsung Electronics All Rights Reserved.\r
4 #\r
5 #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\r
6 #\r
7 # Licensed under the Apache License, Version 2.0 (the "License");\r
8 # you may not use this file except in compliance with the License.\r
9 # You may obtain a copy of the License at\r
10 #\r
11 #      http://www.apache.org/licenses/LICENSE-2.0\r
12 #\r
13 # Unless required by applicable law or agreed to in writing, software\r
14 # distributed under the License is distributed on an "AS IS" BASIS,\r
15 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
16 # See the License for the specific language governing permissions and\r
17 # limitations under the License.\r
18 #\r
19 #-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\r
20 \r
21 import os\r
22 Import('env')\r
23 \r
24 yaml_env = env.Clone()\r
25 src_dir = env.get('SRC_DIR')\r
26 \r
27 yamlDir = os.path.join(src_dir, 'extlibs','yaml','yaml')\r
28 \r
29 if not os.path.exists(yamlDir):\r
30     print '''\r
31 *********************************** Error: ****************************************\r
32 * Please download yaml using the following command:                               *\r
33 *     $ git clone https://github.com/jbeder/yaml-cpp.git extlibs/yaml/yaml *\r
34 ***********************************************************************************\r
35 '''\r
36     Exit(1)\r
37 \r
38 ######################################################################\r
39 # Build flags\r
40 ######################################################################\r
41 yaml_env.AppendUnique(CPPPATH = ['yaml/src' , 'yaml/include'])\r
42 yaml_env.AppendUnique(CXXFLAGS = ['-std=c++0x', '-Wall', '-pthread'])\r
43 yaml_env.AppendUnique(CPPDEFINES = ['LINUX'])\r
44 yaml_env.AppendUnique(LIBS = ['pthread'])\r
45 \r
46 yaml_env.AppendUnique(CXXFLAGS = ['-O2', '-g', '-Wall', '-fmessage-length=0', '-std=c++0x'])\r
47 \r
48 ######################################################################\r
49 # Source files and Targets\r
50 ######################################################################\r
51 yaml_src = [env.Glob('yaml/src/*.cpp'), env.Glob('yaml/src/contrib/*.cpp')]\r
52 yamlsdk = yaml_env.StaticLibrary('YamlParser', yaml_src)\r
53 \r
54 yaml_env.InstallTarget(yamlsdk, 'libYaml')\r