OLD | NEW |
1 # Copyright 2012 the V8 project authors. All rights reserved. | 1 # Copyright 2012 the V8 project authors. All rights reserved. |
2 # Redistribution and use in source and binary forms, with or without | 2 # Redistribution and use in source and binary forms, with or without |
3 # modification, are permitted provided that the following conditions are | 3 # modification, are permitted provided that the following conditions are |
4 # met: | 4 # met: |
5 # | 5 # |
6 # * Redistributions of source code must retain the above copyright | 6 # * Redistributions of source code must retain the above copyright |
7 # notice, this list of conditions and the following disclaimer. | 7 # notice, this list of conditions and the following disclaimer. |
8 # * Redistributions in binary form must reproduce the above | 8 # * Redistributions in binary form must reproduce the above |
9 # copyright notice, this list of conditions and the following | 9 # copyright notice, this list of conditions and the following |
10 # disclaimer in the documentation and/or other materials provided | 10 # disclaimer in the documentation and/or other materials provided |
(...skipping 30 matching lines...) Expand all Loading... |
41 'visibility%': 'hidden', | 41 'visibility%': 'hidden', |
42 'v8_enable_backtrace%': 0, | 42 'v8_enable_backtrace%': 0, |
43 'v8_enable_i18n_support%': 1, | 43 'v8_enable_i18n_support%': 1, |
44 'v8_deprecation_warnings': 1, | 44 'v8_deprecation_warnings': 1, |
45 'v8_imminent_deprecation_warnings': 1, | 45 'v8_imminent_deprecation_warnings': 1, |
46 'msvs_multi_core_compile%': '1', | 46 'msvs_multi_core_compile%': '1', |
47 'mac_deployment_target%': '10.5', | 47 'mac_deployment_target%': '10.5', |
48 'release_extra_cflags%': '', | 48 'release_extra_cflags%': '', |
49 'variables': { | 49 'variables': { |
50 'variables': { | 50 'variables': { |
51 # goma settings. | |
52 # 1 to use goma. | |
53 # If no gomadir is set, it uses the default gomadir. | |
54 'use_goma%': 0, | |
55 'gomadir%': '', | |
56 | |
57 'variables': { | 51 'variables': { |
58 'conditions': [ | 52 'conditions': [ |
59 ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or \ | 53 ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or \ |
60 OS=="netbsd" or OS=="mac" or OS=="qnx" or OS=="aix"', { | 54 OS=="netbsd" or OS=="mac" or OS=="qnx" or OS=="aix"', { |
61 # This handles the Unix platforms we generally deal with. | 55 # This handles the Unix platforms we generally deal with. |
62 # Anything else gets passed through, which probably won't work | 56 # Anything else gets passed through, which probably won't work |
63 # very well; such hosts should pass an explicit target_arch | 57 # very well; such hosts should pass an explicit target_arch |
64 # to gyp. | 58 # to gyp. |
65 'host_arch%': '<!pymod_do_main(detect_v8_host_arch)', | 59 'host_arch%': '<!pymod_do_main(detect_v8_host_arch)', |
66 }, { | 60 }, { |
67 # OS!="linux" and OS!="freebsd" and OS!="openbsd" and | 61 # OS!="linux" and OS!="freebsd" and OS!="openbsd" and |
68 # OS!="netbsd" and OS!="mac" and OS!="aix" | 62 # OS!="netbsd" and OS!="mac" and OS!="aix" |
69 'host_arch%': 'ia32', | 63 'host_arch%': 'ia32', |
70 }], | 64 }], |
71 ], | 65 ], |
72 }, | 66 }, |
73 'host_arch%': '<(host_arch)', | 67 'host_arch%': '<(host_arch)', |
74 'target_arch%': '<(host_arch)', | 68 'target_arch%': '<(host_arch)', |
75 'base_dir%': '<!(cd <(DEPTH) && python -c "import os; print os.getcwd()"
)', | 69 'base_dir%': '<!(cd <(DEPTH) && python -c "import os; print os.getcwd()"
)', |
76 | 70 |
77 # Instrument for code coverage with gcov. | 71 # Instrument for code coverage with gcov. |
78 'coverage%': 0, | 72 'coverage%': 0, |
79 | |
80 'conditions': [ | |
81 # Set default gomadir. | |
82 ['OS=="win"', { | |
83 'gomadir': 'c:\\goma\\goma-win', | |
84 }, { | |
85 'gomadir': '<!(/bin/echo -n ${HOME}/goma)', | |
86 }], | |
87 ], | |
88 }, | 73 }, |
89 'base_dir%': '<(base_dir)', | 74 'base_dir%': '<(base_dir)', |
90 'host_arch%': '<(host_arch)', | 75 'host_arch%': '<(host_arch)', |
91 'target_arch%': '<(target_arch)', | 76 'target_arch%': '<(target_arch)', |
92 'v8_target_arch%': '<(target_arch)', | 77 'v8_target_arch%': '<(target_arch)', |
93 'coverage%': '<(coverage)', | 78 'coverage%': '<(coverage)', |
94 'use_goma%': '<(use_goma)', | |
95 'gomadir%': '<(gomadir)', | |
96 'asan%': 0, | 79 'asan%': 0, |
97 'lsan%': 0, | 80 'lsan%': 0, |
98 'msan%': 0, | 81 'msan%': 0, |
99 'tsan%': 0, | 82 'tsan%': 0, |
100 # Enable coverage gathering instrumentation in sanitizer tools. This flag | 83 # Enable coverage gathering instrumentation in sanitizer tools. This flag |
101 # also controls coverage granularity (1 for function-level, 2 for | 84 # also controls coverage granularity (1 for function-level, 2 for |
102 # block-level, 3 for edge-level). | 85 # block-level, 3 for edge-level). |
103 'sanitizer_coverage%': 0, | 86 'sanitizer_coverage%': 0, |
104 # Use libc++ (buildtools/third_party/libc++ and | 87 # Use libc++ (buildtools/third_party/libc++ and |
105 # buildtools/third_party/libc++abi) instead of stdlibc++ as standard | 88 # buildtools/third_party/libc++abi) instead of stdlibc++ as standard |
106 # library. This is intended to be used for instrumented builds. | 89 # library. This is intended to be used for instrumented builds. |
107 'use_custom_libcxx%': 0, | 90 'use_custom_libcxx%': 0, |
108 | 91 |
109 'clang_dir%': '<(base_dir)/third_party/llvm-build/Release+Asserts', | 92 'clang_dir%': '<(base_dir)/third_party/llvm-build/Release+Asserts', |
110 | 93 |
111 'use_lto%': 0, | 94 'use_lto%': 0, |
112 | 95 |
113 # Control Flow Integrity for virtual calls and casts. | 96 # Control Flow Integrity for virtual calls and casts. |
114 # See http://clang.llvm.org/docs/ControlFlowIntegrity.html | 97 # See http://clang.llvm.org/docs/ControlFlowIntegrity.html |
115 'cfi_vptr%': 0, | 98 'cfi_vptr%': 0, |
116 'cfi_diag%': 0, | 99 'cfi_diag%': 0, |
117 | 100 |
118 'cfi_blacklist%': '<(base_dir)/tools/cfi/blacklist.txt', | 101 'cfi_blacklist%': '<(base_dir)/tools/cfi/blacklist.txt', |
119 | 102 |
120 # Set to 1 to enable fast builds. | 103 # Set to 1 to enable fast builds. |
121 # TODO(machenbach): Only configured for windows. | 104 # TODO(machenbach): Only configured for windows. |
122 'fastbuild%': 0, | 105 'fastbuild%': 0, |
123 | 106 |
| 107 # goma settings. |
| 108 # 1 to use goma. |
| 109 # If no gomadir is set, it uses the default gomadir. |
| 110 'use_goma%': 0, |
| 111 'gomadir%': '', |
| 112 |
124 # Check if valgrind directories are present. | 113 # Check if valgrind directories are present. |
125 'has_valgrind%': '<!pymod_do_main(has_valgrind)', | 114 'has_valgrind%': '<!pymod_do_main(has_valgrind)', |
126 | 115 |
127 'conditions': [ | 116 'conditions': [ |
| 117 # Set default gomadir. |
| 118 ['OS=="win"', { |
| 119 'gomadir': 'c:\\goma\\goma-win', |
| 120 }, { |
| 121 'gomadir': '<!(/bin/echo -n ${HOME}/goma)', |
| 122 }], |
128 ['host_arch!="ppc" and host_arch!="ppc64" and host_arch!="ppc64le" and h
ost_arch!="s390" and host_arch!="s390x" and \ | 123 ['host_arch!="ppc" and host_arch!="ppc64" and host_arch!="ppc64le" and h
ost_arch!="s390" and host_arch!="s390x" and \ |
129 coverage==0', { | 124 coverage==0', { |
130 'host_clang%': 1, | 125 'host_clang%': 1, |
131 }, { | 126 }, { |
132 'host_clang%': 0, | 127 'host_clang%': 0, |
133 }], | 128 }], |
134 # linux_use_bundled_gold: whether to use the gold linker binary checked | 129 # linux_use_bundled_gold: whether to use the gold linker binary checked |
135 # into third_party/binutils. Force this off via GYP_DEFINES when you | 130 # into third_party/binutils. Force this off via GYP_DEFINES when you |
136 # are using a custom toolchain and need to control -B in ldflags. | 131 # are using a custom toolchain and need to control -B in ldflags. |
137 # Do not use 32-bit gold on 32-bit hosts as it runs out address space | 132 # Do not use 32-bit gold on 32-bit hosts as it runs out address space |
(...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
360 ], | 355 ], |
361 'android_libcpp_library': 'c++_static', | 356 'android_libcpp_library': 'c++_static', |
362 }], # OS=="android" | 357 }], # OS=="android" |
363 ['host_clang==1', { | 358 ['host_clang==1', { |
364 'host_cc': '<(clang_dir)/bin/clang', | 359 'host_cc': '<(clang_dir)/bin/clang', |
365 'host_cxx': '<(clang_dir)/bin/clang++', | 360 'host_cxx': '<(clang_dir)/bin/clang++', |
366 }, { | 361 }, { |
367 'host_cc': '<!(which gcc)', | 362 'host_cc': '<!(which gcc)', |
368 'host_cxx': '<!(which g++)', | 363 'host_cxx': '<!(which g++)', |
369 }], | 364 }], |
370 ['use_goma==1 and ("<(GENERATOR)"=="ninja" or clang==1)', { | |
371 'conditions': [ | |
372 ['coverage==1', { | |
373 'cc_wrapper': '<(base_dir)/build/coverage_wrapper.py <(gomadir)/goma
cc', | |
374 }, { | |
375 'cc_wrapper': '<(gomadir)/gomacc', | |
376 }], | |
377 ], | |
378 }, { | |
379 'conditions': [ | |
380 ['coverage==1', { | |
381 'cc_wrapper': '<(base_dir)/build/coverage_wrapper.py', | |
382 }, { | |
383 'cc_wrapper': 0, | |
384 }], | |
385 ], | |
386 }], | |
387 ], | 365 ], |
388 # Default ARM variable settings. | 366 # Default ARM variable settings. |
389 'arm_version%': 'default', | 367 'arm_version%': 'default', |
390 'arm_fpu%': 'vfpv3', | 368 'arm_fpu%': 'vfpv3', |
391 'arm_float_abi%': 'default', | 369 'arm_float_abi%': 'default', |
392 'arm_thumb': 'default', | 370 'arm_thumb': 'default', |
393 | 371 |
394 # Default MIPS variable settings. | 372 # Default MIPS variable settings. |
395 'mips_arch_variant%': 'r2', | 373 'mips_arch_variant%': 'r2', |
396 # Possible values fp32, fp64, fpxx. | 374 # Possible values fp32, fp64, fpxx. |
(...skipping 879 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1276 'make_global_settings': [ | 1254 'make_global_settings': [ |
1277 ['CC', '<!(which arm-linux-gnueabihf-gcc)'], | 1255 ['CC', '<!(which arm-linux-gnueabihf-gcc)'], |
1278 ['CXX', '<!(which arm-linux-gnueabihf-g++)'], | 1256 ['CXX', '<!(which arm-linux-gnueabihf-g++)'], |
1279 ['CC.host', '<(host_cc)'], | 1257 ['CC.host', '<(host_cc)'], |
1280 ['CXX.host', '<(host_cxx)'], | 1258 ['CXX.host', '<(host_cxx)'], |
1281 ], | 1259 ], |
1282 }], | 1260 }], |
1283 # TODO(yyanagisawa): supports GENERATOR==make | 1261 # TODO(yyanagisawa): supports GENERATOR==make |
1284 # make generator doesn't support CC_wrapper without CC | 1262 # make generator doesn't support CC_wrapper without CC |
1285 # in make_global_settings yet. | 1263 # in make_global_settings yet. |
1286 ['cc_wrapper!=0', { | 1264 ['use_goma==1 and ("<(GENERATOR)"=="ninja" or clang==1)', { |
1287 'make_global_settings': [ | 1265 'make_global_settings': [ |
1288 ['CC_wrapper', '<(cc_wrapper)'], | 1266 ['CC_wrapper', '<(gomadir)/gomacc'], |
1289 ['CXX_wrapper', '<(cc_wrapper)'], | 1267 ['CXX_wrapper', '<(gomadir)/gomacc'], |
1290 ['CC.host_wrapper', '<(cc_wrapper)'], | 1268 ['CC.host_wrapper', '<(gomadir)/gomacc'], |
1291 ['CXX.host_wrapper', '<(cc_wrapper)'], | 1269 ['CXX.host_wrapper', '<(gomadir)/gomacc'], |
1292 ], | 1270 ], |
1293 }], | 1271 }], |
1294 ['use_lto==1', { | 1272 ['use_lto==1', { |
1295 'target_defaults': { | 1273 'target_defaults': { |
1296 'target_conditions': [ | 1274 'target_conditions': [ |
1297 ['_toolset=="target"', { | 1275 ['_toolset=="target"', { |
1298 'cflags': [ | 1276 'cflags': [ |
1299 '-flto', | 1277 '-flto', |
1300 ], | 1278 ], |
1301 }], | 1279 }], |
(...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1388 '-fsanitize=cfi-vcall', | 1366 '-fsanitize=cfi-vcall', |
1389 '-fsanitize=cfi-derived-cast', | 1367 '-fsanitize=cfi-derived-cast', |
1390 '-fsanitize=cfi-unrelated-cast', | 1368 '-fsanitize=cfi-unrelated-cast', |
1391 ], | 1369 ], |
1392 }], | 1370 }], |
1393 ], | 1371 ], |
1394 }, | 1372 }, |
1395 }], | 1373 }], |
1396 ], | 1374 ], |
1397 } | 1375 } |
OLD | NEW |