OLD | NEW |
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 # IMPORTANT: | 5 # IMPORTANT: |
6 # Please don't directly include this file if you are building via gyp_chromium, | 6 # Please don't directly include this file if you are building via gyp_chromium, |
7 # since gyp_chromium is automatically forcing its inclusion. | 7 # since gyp_chromium is automatically forcing its inclusion. |
8 { | 8 { |
9 # Variables expected to be overriden on the GYP command line (-D) or by | 9 # Variables expected to be overriden on the GYP command line (-D) or by |
10 # ~/.gyp/include.gypi. | 10 # ~/.gyp/include.gypi. |
(...skipping 392 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
403 | 403 |
404 # Use the dynamic libraries instrumented by one of the sanitizers | 404 # Use the dynamic libraries instrumented by one of the sanitizers |
405 # instead of the standard system libraries. | 405 # instead of the standard system libraries. |
406 'use_instrumented_libraries%': 0, | 406 'use_instrumented_libraries%': 0, |
407 | 407 |
408 # Use libc++ (third_party/libc++ and third_party/libc++abi) instead of | 408 # Use libc++ (third_party/libc++ and third_party/libc++abi) instead of |
409 # stdlibc++ as standard library. This is intended to use for instrumented | 409 # stdlibc++ as standard library. This is intended to use for instrumented |
410 # builds. | 410 # builds. |
411 'use_custom_libcxx%': 0, | 411 'use_custom_libcxx%': 0, |
412 | 412 |
| 413 # Use system libc++ instead of the default C++ library, usually libstdc++. |
| 414 # This is intended for iOS builds only. |
| 415 'use_system_libcxx%': 0, |
| 416 |
413 # Use a modified version of Clang to intercept allocated types and sizes | 417 # Use a modified version of Clang to intercept allocated types and sizes |
414 # for allocated objects. clang_type_profiler=1 implies clang=1. | 418 # for allocated objects. clang_type_profiler=1 implies clang=1. |
415 # See http://dev.chromium.org/developers/deep-memory-profiler/cpp-object-t
ype-identifier | 419 # See http://dev.chromium.org/developers/deep-memory-profiler/cpp-object-t
ype-identifier |
416 # TODO(dmikurube): Support mac. See http://crbug.com/123758#c11 | 420 # TODO(dmikurube): Support mac. See http://crbug.com/123758#c11 |
417 'clang_type_profiler%': 0, | 421 'clang_type_profiler%': 0, |
418 | 422 |
419 # Set to true to instrument the code with function call logger. | 423 # Set to true to instrument the code with function call logger. |
420 # See src/third_party/cygprofile/cyg-profile.cc for details. | 424 # See src/third_party/cygprofile/cyg-profile.cc for details. |
421 'order_profiling%': 0, | 425 'order_profiling%': 0, |
422 | 426 |
(...skipping 664 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1087 'msan%': '<(msan)', | 1091 'msan%': '<(msan)', |
1088 'msan_blacklist%': '<(msan_blacklist)', | 1092 'msan_blacklist%': '<(msan_blacklist)', |
1089 'msan_track_origins%': '<(msan_track_origins)', | 1093 'msan_track_origins%': '<(msan_track_origins)', |
1090 'tsan%': '<(tsan)', | 1094 'tsan%': '<(tsan)', |
1091 'tsan_blacklist%': '<(tsan_blacklist)', | 1095 'tsan_blacklist%': '<(tsan_blacklist)', |
1092 'ubsan%': '<(ubsan)', | 1096 'ubsan%': '<(ubsan)', |
1093 'ubsan_vptr%': '<(ubsan_vptr)', | 1097 'ubsan_vptr%': '<(ubsan_vptr)', |
1094 'ubsan_vptr_blacklist%': '<(ubsan_vptr_blacklist)', | 1098 'ubsan_vptr_blacklist%': '<(ubsan_vptr_blacklist)', |
1095 'use_instrumented_libraries%': '<(use_instrumented_libraries)', | 1099 'use_instrumented_libraries%': '<(use_instrumented_libraries)', |
1096 'use_custom_libcxx%': '<(use_custom_libcxx)', | 1100 'use_custom_libcxx%': '<(use_custom_libcxx)', |
| 1101 'use_system_libcxx%': '<(use_system_libcxx)', |
1097 'clang_type_profiler%': '<(clang_type_profiler)', | 1102 'clang_type_profiler%': '<(clang_type_profiler)', |
1098 'order_profiling%': '<(order_profiling)', | 1103 'order_profiling%': '<(order_profiling)', |
1099 'order_text_section%': '<(order_text_section)', | 1104 'order_text_section%': '<(order_text_section)', |
1100 'enable_extensions%': '<(enable_extensions)', | 1105 'enable_extensions%': '<(enable_extensions)', |
1101 'enable_plugin_installation%': '<(enable_plugin_installation)', | 1106 'enable_plugin_installation%': '<(enable_plugin_installation)', |
1102 'enable_plugins%': '<(enable_plugins)', | 1107 'enable_plugins%': '<(enable_plugins)', |
1103 'enable_session_service%': '<(enable_session_service)', | 1108 'enable_session_service%': '<(enable_session_service)', |
1104 'enable_themes%': '<(enable_themes)', | 1109 'enable_themes%': '<(enable_themes)', |
1105 'enable_autofill_dialog%': '<(enable_autofill_dialog)', | 1110 'enable_autofill_dialog%': '<(enable_autofill_dialog)', |
1106 'enable_prod_wallet_service%': '<(enable_prod_wallet_service)', | 1111 'enable_prod_wallet_service%': '<(enable_prod_wallet_service)', |
(...skipping 342 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1449 # Chrome OS: whether to build ChromeVox from sources in the Chromium | 1454 # Chrome OS: whether to build ChromeVox from sources in the Chromium |
1450 # repository rather than using precompiled JavaScript in | 1455 # repository rather than using precompiled JavaScript in |
1451 # chrome/third_party/chromevox. This is still experimental. | 1456 # chrome/third_party/chromevox. This is still experimental. |
1452 'use_migrated_chromevox%': 1, | 1457 'use_migrated_chromevox%': 1, |
1453 | 1458 |
1454 # Chrome OS: whether to also build the upcoming version of | 1459 # Chrome OS: whether to also build the upcoming version of |
1455 # ChromeVox, which can then be enabled via a command-line switch. | 1460 # ChromeVox, which can then be enabled via a command-line switch. |
1456 'use_chromevox_next%': 0, | 1461 'use_chromevox_next%': 0, |
1457 | 1462 |
1458 'conditions': [ | 1463 'conditions': [ |
| 1464 # The version of clang shipped upstream does not find C++ headers when |
| 1465 # using -stdlib=libc++ so we instead need to use the version of clang |
| 1466 # coming with Xcode. |
| 1467 ['OS=="ios" and use_system_libcxx==1', { |
| 1468 'clang_xcode%': 1, |
| 1469 }], |
1459 # Enable the Syzygy optimization step for the official builds. | 1470 # Enable the Syzygy optimization step for the official builds. |
1460 ['OS=="win" and buildtype=="Official" and syzyasan!=1', { | 1471 ['OS=="win" and buildtype=="Official" and syzyasan!=1', { |
1461 'syzygy_optimize%': 1, | 1472 'syzygy_optimize%': 1, |
1462 }, { | 1473 }, { |
1463 'syzygy_optimize%': 0, | 1474 'syzygy_optimize%': 0, |
1464 }], | 1475 }], |
1465 # Get binutils version so we can enable debug fission if we can. | 1476 # Get binutils version so we can enable debug fission if we can. |
1466 ['os_posix==1 and OS!="mac" and OS!="ios"', { | 1477 ['os_posix==1 and OS!="mac" and OS!="ios"', { |
1467 'conditions': [ | 1478 'conditions': [ |
1468 # compiler_version doesn't work with clang | 1479 # compiler_version doesn't work with clang |
(...skipping 3564 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5033 # ones (they are used when building for the simulator). | 5044 # ones (they are used when building for the simulator). |
5034 ['target_subarch=="arm32"', { | 5045 ['target_subarch=="arm32"', { |
5035 'VALID_ARCHS': ['armv7', 'i386'], | 5046 'VALID_ARCHS': ['armv7', 'i386'], |
5036 }], | 5047 }], |
5037 ['target_subarch=="arm64"', { | 5048 ['target_subarch=="arm64"', { |
5038 'VALID_ARCHS': ['arm64', 'x86_64'], | 5049 'VALID_ARCHS': ['arm64', 'x86_64'], |
5039 }], | 5050 }], |
5040 ['target_subarch=="both"', { | 5051 ['target_subarch=="both"', { |
5041 'VALID_ARCHS': ['arm64', 'armv7', 'x86_64', 'i386'], | 5052 'VALID_ARCHS': ['arm64', 'armv7', 'x86_64', 'i386'], |
5042 }], | 5053 }], |
| 5054 ['use_system_libcxx==1', { |
| 5055 'target_conditions': [ |
| 5056 # Only use libc++ when building target for iOS not when building |
| 5057 # tools for the host (OS X) as Mac targets OS X SDK 10.6 which |
| 5058 # does not support libc++. |
| 5059 ['_toolset=="target"', { |
| 5060 'CLANG_CXX_LIBRARY': 'libc++', # -stdlib=libc++ |
| 5061 }] |
| 5062 ], |
| 5063 }], |
5043 ], | 5064 ], |
5044 }, | 5065 }, |
5045 'target_conditions': [ | 5066 'target_conditions': [ |
5046 ['_toolset=="host"', { | 5067 ['_toolset=="host"', { |
5047 'xcode_settings': { | 5068 'xcode_settings': { |
5048 'SDKROOT': 'macosx<(mac_sdk)', # -isysroot | 5069 'SDKROOT': 'macosx<(mac_sdk)', # -isysroot |
5049 'MACOSX_DEPLOYMENT_TARGET': '<(mac_deployment_target)', | 5070 'MACOSX_DEPLOYMENT_TARGET': '<(mac_deployment_target)', |
5050 'VALID_ARCHS': [ | 5071 'VALID_ARCHS': [ |
5051 'x86_64', | 5072 'x86_64', |
5052 ], | 5073 ], |
(...skipping 214 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5267 # usage of this is simply more hassle than the warning is worth. | 5288 # usage of this is simply more hassle than the warning is worth. |
5268 4355, | 5289 4355, |
5269 | 5290 |
5270 # C4503: 'identifier': decorated name length exceeded, name was | 5291 # C4503: 'identifier': decorated name length exceeded, name was |
5271 # truncated | 5292 # truncated |
5272 # This only means that some long error messages might have truncated | 5293 # This only means that some long error messages might have truncated |
5273 # identifiers in the presence of lots of templates. It has no effect | 5294 # identifiers in the presence of lots of templates. It has no effect |
5274 # on program correctness and there's no real reason to waste time | 5295 # on program correctness and there's no real reason to waste time |
5275 # trying to prevent it. | 5296 # trying to prevent it. |
5276 4503, | 5297 4503, |
5277 | 5298 |
5278 # C4611: interaction between 'function' and C++ object destruction is | 5299 # C4611: interaction between 'function' and C++ object destruction is |
5279 # non-portable | 5300 # non-portable |
5280 # This warning is unavoidable when using e.g. setjmp/longjmp. MSDN | 5301 # This warning is unavoidable when using e.g. setjmp/longjmp. MSDN |
5281 # suggests using exceptions instead of setjmp/longjmp for C++, but | 5302 # suggests using exceptions instead of setjmp/longjmp for C++, but |
5282 # Chromium code compiles without exception support. We therefore have | 5303 # Chromium code compiles without exception support. We therefore have |
5283 # to use setjmp/longjmp for e.g. JPEG decode error handling, which | 5304 # to use setjmp/longjmp for e.g. JPEG decode error handling, which |
5284 # means we have to turn off this warning (and be careful about how | 5305 # means we have to turn off this warning (and be careful about how |
5285 # object destruction happens in such cases). | 5306 # object destruction happens in such cases). |
5286 4611, | 5307 4611, |
5287 | 5308 |
(...skipping 384 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5672 # settings in target dicts. SYMROOT is a special case, because many other | 5693 # settings in target dicts. SYMROOT is a special case, because many other |
5673 # Xcode variables depend on it, including variables such as | 5694 # Xcode variables depend on it, including variables such as |
5674 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something | 5695 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something |
5675 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the | 5696 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the |
5676 # files to appear (when present) in the UI as actual files and not red | 5697 # files to appear (when present) in the UI as actual files and not red |
5677 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, | 5698 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, |
5678 # and therefore SYMROOT, needs to be set at the project level. | 5699 # and therefore SYMROOT, needs to be set at the project level. |
5679 'SYMROOT': '<(DEPTH)/xcodebuild', | 5700 'SYMROOT': '<(DEPTH)/xcodebuild', |
5680 }, | 5701 }, |
5681 } | 5702 } |
OLD | NEW |