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 1476 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1487 'syzygy_optimize%': 0, | 1487 'syzygy_optimize%': 0, |
1488 }], | 1488 }], |
1489 # Get binutils version so we can enable debug fission if we can. | 1489 # Get binutils version so we can enable debug fission if we can. |
1490 ['os_posix==1 and OS!="mac" and OS!="ios"', { | 1490 ['os_posix==1 and OS!="mac" and OS!="ios"', { |
1491 'conditions': [ | 1491 'conditions': [ |
1492 # compiler_version doesn't work with clang | 1492 # compiler_version doesn't work with clang |
1493 # TODO(mithro): Land https://codereview.chromium.org/199793014/ so | 1493 # TODO(mithro): Land https://codereview.chromium.org/199793014/ so |
1494 # compiler_version works with clang. | 1494 # compiler_version works with clang. |
1495 # TODO(glider): set clang to 1 earlier for ASan and TSan builds so | 1495 # TODO(glider): set clang to 1 earlier for ASan and TSan builds so |
1496 # that it takes effect here. | 1496 # that it takes effect here. |
1497 ['clang==0 and asan==0 and lsan==0 and tsan==0 and msan==0 and ubsan==
0 and ubsan_vptr==0', { | 1497 ['clang==0 and asan==0 and lsan==0 and tsan==0 and msan==0 and ubsan==
0 and ubsan_vptr==0 and OS!="android"', { |
1498 'binutils_version%': '<!pymod_do_main(compiler_version target assemb
ler)', | 1498 'binutils_version%': '<!pymod_do_main(compiler_version target assemb
ler)', |
1499 }], | 1499 }], |
1500 # On Android we know the binutils version in the toolchain. | 1500 # On Android we know the binutils version in the toolchain. |
1501 ['OS=="android"', { | 1501 ['OS=="android"', { |
1502 'binutils_version%': 222, | 1502 'binutils_version%': 222, |
1503 }], | 1503 }], |
1504 ['host_arch=="x64"', { | 1504 ['host_arch=="x64"', { |
1505 'binutils_dir%': 'third_party/binutils/Linux_x64/Release/bin', | 1505 'binutils_dir%': 'third_party/binutils/Linux_x64/Release/bin', |
1506 }], | 1506 }], |
1507 ['host_arch=="ia32"', { | 1507 ['host_arch=="ia32"', { |
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1642 # Unfortunately we have to use absolute paths to the SDK/NDK because | 1642 # Unfortunately we have to use absolute paths to the SDK/NDK because |
1643 # they're passed to ant which uses a different relative path from | 1643 # they're passed to ant which uses a different relative path from |
1644 # gyp. | 1644 # gyp. |
1645 'android_ndk_root%': '<!(cd <(DEPTH) && pwd -P)/third_party/android_
tools/ndk/', | 1645 'android_ndk_root%': '<!(cd <(DEPTH) && pwd -P)/third_party/android_
tools/ndk/', |
1646 'android_sdk_root%': '<!(cd <(DEPTH) && pwd -P)/third_party/android_
tools/sdk/', | 1646 'android_sdk_root%': '<!(cd <(DEPTH) && pwd -P)/third_party/android_
tools/sdk/', |
1647 'android_host_arch%': '<!(uname -m)', | 1647 'android_host_arch%': '<!(uname -m)', |
1648 # Android API-level of the SDK used for compilation. | 1648 # Android API-level of the SDK used for compilation. |
1649 'android_sdk_version%': '20', | 1649 'android_sdk_version%': '20', |
1650 'android_sdk_build_tools_version%': '20.0.0', | 1650 'android_sdk_build_tools_version%': '20.0.0', |
1651 'host_os%': "<!(uname -s | sed -e 's/Linux/linux/;s/Darwin/mac/')", | 1651 'host_os%': "<!(uname -s | sed -e 's/Linux/linux/;s/Darwin/mac/')", |
| 1652 #'conditions': [ |
| 1653 # ['host_os=="mac"', { |
| 1654 'android_host_os': 'darwin', |
| 1655 # }, { |
| 1656 #'android_host_os': '<(host_os)', |
| 1657 # }], |
| 1658 #], |
1652 }, | 1659 }, |
1653 # Copy conditionally-set variables out one scope. | 1660 # Copy conditionally-set variables out one scope. |
1654 'android_ndk_root%': '<(android_ndk_root)', | 1661 'android_ndk_root%': '<(android_ndk_root)', |
1655 'android_sdk_root%': '<(android_sdk_root)', | 1662 'android_sdk_root%': '<(android_sdk_root)', |
1656 'android_sdk_version%': '<(android_sdk_version)', | 1663 'android_sdk_version%': '<(android_sdk_version)', |
1657 'android_stlport_root': '<(android_ndk_root)/sources/cxx-stl/stlport', | 1664 'android_stlport_root': '<(android_ndk_root)/sources/cxx-stl/stlport', |
1658 'host_os%': '<(host_os)', | 1665 'host_os%': '<(host_os)', |
1659 | 1666 |
1660 'android_sdk%': '<(android_sdk_root)/platforms/android-<(android_sdk_v
ersion)', | 1667 'android_sdk%': '<(android_sdk_root)/platforms/android-<(android_sdk_v
ersion)', |
1661 # Android SDK build tools (e.g. dx, aapt, aidl) | 1668 # Android SDK build tools (e.g. dx, aapt, aidl) |
(...skipping 21 matching lines...) Expand all Loading... |
1683 'conditions': [ | 1690 'conditions': [ |
1684 ['arm_version<7', { | 1691 ['arm_version<7', { |
1685 'android_app_abi%': 'armeabi', | 1692 'android_app_abi%': 'armeabi', |
1686 }, { | 1693 }, { |
1687 'android_app_abi%': 'armeabi-v7a', | 1694 'android_app_abi%': 'armeabi-v7a', |
1688 }], | 1695 }], |
1689 ], | 1696 ], |
1690 'android_gdbserver%': '<(android_ndk_root)/prebuilt/android-arm/gd
bserver/gdbserver', | 1697 'android_gdbserver%': '<(android_ndk_root)/prebuilt/android-arm/gd
bserver/gdbserver', |
1691 'android_ndk_sysroot%': '<(android_ndk_root)/platforms/android-14/
arch-arm', | 1698 'android_ndk_sysroot%': '<(android_ndk_root)/platforms/android-14/
arch-arm', |
1692 'android_ndk_lib_dir%': 'usr/lib', | 1699 'android_ndk_lib_dir%': 'usr/lib', |
1693 'android_toolchain%': '<(android_ndk_root)/toolchains/arm-linux-an
droideabi-4.8/prebuilt/<(host_os)-<(android_host_arch)/bin', | 1700 'android_toolchain%': '<(android_ndk_root)/toolchains/arm-linux-an
droideabi-4.8/prebuilt/<(android_host_os)-<(android_host_arch)/bin', |
1694 }], | 1701 }], |
1695 ['target_arch == "arm64"', { | 1702 ['target_arch == "arm64"', { |
1696 'android_app_abi%': 'arm64-v8a', | 1703 'android_app_abi%': 'arm64-v8a', |
1697 'android_gdbserver%': '<(android_ndk_root)/prebuilt/android-arm64/
gdbserver/gdbserver', | 1704 'android_gdbserver%': '<(android_ndk_root)/prebuilt/android-arm64/
gdbserver/gdbserver', |
1698 'android_ndk_sysroot%': '<(android_ndk_root)/platforms/android-L/a
rch-arm64', | 1705 'android_ndk_sysroot%': '<(android_ndk_root)/platforms/android-L/a
rch-arm64', |
1699 'android_ndk_lib_dir%': 'usr/lib', | 1706 'android_ndk_lib_dir%': 'usr/lib', |
1700 'android_toolchain%': '<(android_ndk_root)/toolchains/aarch64-linu
x-android-4.9/prebuilt/<(host_os)-<(android_host_arch)/bin', | 1707 'android_toolchain%': '<(android_ndk_root)/toolchains/aarch64-linu
x-android-4.9/prebuilt/<(android_host_os)-<(android_host_arch)/bin', |
1701 }], | 1708 }], |
1702 ['target_arch == "mipsel"', { | 1709 ['target_arch == "mipsel"', { |
1703 'android_app_abi%': 'mips', | 1710 'android_app_abi%': 'mips', |
1704 'android_gdbserver%': '<(android_ndk_root)/prebuilt/android-mips/g
dbserver/gdbserver', | 1711 'android_gdbserver%': '<(android_ndk_root)/prebuilt/android-mips/g
dbserver/gdbserver', |
1705 'android_ndk_sysroot%': '<(android_ndk_root)/platforms/android-14/
arch-mips', | 1712 'android_ndk_sysroot%': '<(android_ndk_root)/platforms/android-14/
arch-mips', |
1706 'android_ndk_lib_dir%': 'usr/lib', | 1713 'android_ndk_lib_dir%': 'usr/lib', |
1707 'android_toolchain%': '<(android_ndk_root)/toolchains/mipsel-linux
-android-4.8/prebuilt/<(host_os)-<(android_host_arch)/bin', | 1714 'android_toolchain%': '<(android_ndk_root)/toolchains/mipsel-linux
-android-4.8/prebuilt/<(android_host_os)-<(android_host_arch)/bin', |
1708 }], | 1715 }], |
1709 ], | 1716 ], |
1710 }, | 1717 }, |
1711 # Copy conditionally-set variables out one scope. | 1718 # Copy conditionally-set variables out one scope. |
1712 'android_app_abi%': '<(android_app_abi)', | 1719 'android_app_abi%': '<(android_app_abi)', |
1713 'android_gdbserver%': '<(android_gdbserver)', | 1720 'android_gdbserver%': '<(android_gdbserver)', |
1714 'android_ndk_root%': '<(android_ndk_root)', | 1721 'android_ndk_root%': '<(android_ndk_root)', |
1715 'android_ndk_sysroot%': '<(android_ndk_sysroot)', | 1722 'android_ndk_sysroot%': '<(android_ndk_sysroot)', |
1716 'android_sdk_root%': '<(android_sdk_root)', | 1723 'android_sdk_root%': '<(android_sdk_root)', |
1717 'android_sdk_version%': '<(android_sdk_version)', | 1724 'android_sdk_version%': '<(android_sdk_version)', |
(...skipping 565 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2283 }], | 2290 }], |
2284 | 2291 |
2285 ['OS=="win" and (clang==1 or asan==1)', { | 2292 ['OS=="win" and (clang==1 or asan==1)', { |
2286 'chromium_win_pch': 0, | 2293 'chromium_win_pch': 0, |
2287 }], | 2294 }], |
2288 | 2295 |
2289 ['host_clang==1', { | 2296 ['host_clang==1', { |
2290 'host_cc': '<(make_clang_dir)/bin/clang', | 2297 'host_cc': '<(make_clang_dir)/bin/clang', |
2291 'host_cxx': '<(make_clang_dir)/bin/clang++', | 2298 'host_cxx': '<(make_clang_dir)/bin/clang++', |
2292 }, { | 2299 }, { |
2293 'host_cc': '<!(which gcc)', | 2300 'host_cc': '<!(which cc)', |
2294 'host_cxx': '<!(which g++)', | 2301 'host_cxx': '<!(which c++)', |
2295 }], | 2302 }], |
2296 | 2303 |
2297 # The seccomp-bpf sandbox is only supported on four architectures | 2304 # The seccomp-bpf sandbox is only supported on four architectures |
2298 # currently. | 2305 # currently. |
2299 # Do not disable seccomp_bpf anywhere without talking to | 2306 # Do not disable seccomp_bpf anywhere without talking to |
2300 # security@chromium.org! | 2307 # security@chromium.org! |
2301 ['((OS=="linux" or OS=="android") and ' | 2308 ['((OS=="linux" or OS=="android") and ' |
2302 '(target_arch=="ia32" or target_arch=="x64" or ' | 2309 '(target_arch=="ia32" or target_arch=="x64" or ' |
2303 'target_arch=="arm" or target_arch=="mipsel"))', { | 2310 'target_arch=="arm" or target_arch=="mipsel"))', { |
2304 'use_seccomp_bpf%': 1, | 2311 'use_seccomp_bpf%': 1, |
(...skipping 184 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2489 'defines': ['TYPE_PROFILING'], | 2496 'defines': ['TYPE_PROFILING'], |
2490 'dependencies': [ | 2497 'dependencies': [ |
2491 '<(DEPTH)/base/allocator/allocator.gyp:type_profiler', | 2498 '<(DEPTH)/base/allocator/allocator.gyp:type_profiler', |
2492 ], | 2499 ], |
2493 }], | 2500 }], |
2494 ['branding=="Chrome"', { | 2501 ['branding=="Chrome"', { |
2495 'defines': ['GOOGLE_CHROME_BUILD'], | 2502 'defines': ['GOOGLE_CHROME_BUILD'], |
2496 }, { # else: branding!="Chrome" | 2503 }, { # else: branding!="Chrome" |
2497 'defines': ['CHROMIUM_BUILD'], | 2504 'defines': ['CHROMIUM_BUILD'], |
2498 }], | 2505 }], |
2499 ['OS=="mac" and component=="shared_library"', { | 2506 ['enable_rlz==1', { |
| 2507 'defines': ['ENABLE_RLZ'], |
| 2508 }], |
| 2509 ['component=="shared_library"', { |
| 2510 'defines': ['COMPONENT_BUILD'], |
2500 'xcode_settings': { | 2511 'xcode_settings': { |
2501 'DYLIB_INSTALL_NAME_BASE': '@rpath', | 2512 'DYLIB_INSTALL_NAME_BASE': '@rpath', |
2502 'LD_RUNPATH_SEARCH_PATHS': [ | 2513 'LD_RUNPATH_SEARCH_PATHS': [ |
2503 # For unbundled binaries. | 2514 # For unbundled binaries. |
2504 '@loader_path/.', | 2515 '@loader_path/.', |
2505 # For bundled binaries, to get back from Binary.app/Contents/MacOS. | 2516 # For bundled binaries, to get back from Binary.app/Contents/MacOS. |
2506 '@loader_path/../../..', | 2517 '@loader_path/../../..', |
| 2518 # For the lulz. |
| 2519 '@loader_path/lib', |
2507 ], | 2520 ], |
2508 }, | 2521 }, |
2509 }], | 2522 }], |
2510 ['clang==1 and OS!="win"', { | 2523 ['clang==1 and OS!="win"', { |
2511 # This is here so that all files get recompiled after a clang roll and | 2524 # This is here so that all files get recompiled after a clang roll and |
2512 # when turning clang on or off. | 2525 # when turning clang on or off. |
2513 # (defines are passed via the command line, and build systems rebuild | 2526 # (defines are passed via the command line, and build systems rebuild |
2514 # things when their commandline changes). Nothing should ever read this | 2527 # things when their commandline changes). Nothing should ever read this |
2515 # define. | 2528 # define. |
2516 'defines': ['CR_CLANG_REVISION=<!(<(DEPTH)/tools/clang/scripts/update.sh
--print-revision)'], | 2529 'defines': ['CR_CLANG_REVISION=<!(<(DEPTH)/tools/clang/scripts/update.sh
--print-revision)'], |
(...skipping 1018 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3535 'no_gc_sections%': 0, | 3548 'no_gc_sections%': 0, |
3536 | 3549 |
3537 # TODO(bradnelson): reexamine how this is done if we change the | 3550 # TODO(bradnelson): reexamine how this is done if we change the |
3538 # expansion of configurations | 3551 # expansion of configurations |
3539 'release_valgrind_build%': 0, | 3552 'release_valgrind_build%': 0, |
3540 }, | 3553 }, |
3541 'cflags': [ | 3554 'cflags': [ |
3542 '-O<(release_optimize)', | 3555 '-O<(release_optimize)', |
3543 # Don't emit the GCC version ident directives, they just end up | 3556 # Don't emit the GCC version ident directives, they just end up |
3544 # in the .comment section taking up binary size. | 3557 # in the .comment section taking up binary size. |
3545 '-fno-ident', | 3558 #'-fno-ident', |
3546 # Put data and code in their own sections, so that unused symbols | 3559 # Put data and code in their own sections, so that unused symbols |
3547 # can be removed at link time with --gc-sections. | 3560 # can be removed at link time with --gc-sections. |
3548 '-fdata-sections', | 3561 '-fdata-sections', |
3549 '-ffunction-sections', | 3562 '-ffunction-sections', |
3550 ], | 3563 ], |
3551 'ldflags': [ | 3564 'ldflags': [ |
3552 # Specifically tell the linker to perform optimizations. | 3565 # Specifically tell the linker to perform optimizations. |
3553 # See http://lwn.net/Articles/192624/ . | 3566 # See http://lwn.net/Articles/192624/ . |
3554 '-Wl,-O1', | 3567 '-Wl,-O1', |
3555 '-Wl,--as-needed', | 3568 '-Wl,--as-needed', |
(...skipping 237 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3793 '-fno-partial-inlining', | 3806 '-fno-partial-inlining', |
3794 '-fno-early-inlining', | 3807 '-fno-early-inlining', |
3795 '-fno-tree-copy-prop', | 3808 '-fno-tree-copy-prop', |
3796 '-fno-tree-loop-optimize', | 3809 '-fno-tree-loop-optimize', |
3797 '-fno-move-loop-invariants', | 3810 '-fno-move-loop-invariants', |
3798 '-fno-caller-saves', | 3811 '-fno-caller-saves', |
3799 '-Wno-psabi', | 3812 '-Wno-psabi', |
3800 ], | 3813 ], |
3801 'cflags': [ | 3814 'cflags': [ |
3802 # TODO(hans) Enable integrated-as (crbug.com/124610). | 3815 # TODO(hans) Enable integrated-as (crbug.com/124610). |
3803 '-no-integrated-as', | 3816 #'-no-integrated-as', |
3804 '-B<(android_toolchain)', # Else /usr/bin/as gets pic
ked up. | 3817 #'-B<(android_toolchain)', # Else /usr/bin/as gets pi
cked up. |
3805 ], | 3818 ], |
3806 'ldflags': [ | 3819 'ldflags': [ |
3807 # Let clang can find the ld.gold in the NDK. | 3820 # Let clang can find the ld.gold in the NDK. |
3808 '--gcc-toolchain=<(android_toolchain)/..', | 3821 '--gcc-toolchain=<(android_toolchain)/..', |
3809 ], | 3822 ], |
3810 }], | 3823 }], |
3811 ['asan==1', { | 3824 ['asan==1', { |
3812 'cflags': [ | 3825 'cflags': [ |
3813 '-marm', # Required for frame pointer based stack trac
es. | 3826 '-marm', # Required for frame pointer based stack trac
es. |
3814 ], | 3827 ], |
(...skipping 773 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4588 # Do not add any libraries after this! | 4601 # Do not add any libraries after this! |
4589 '<(android_ndk_lib)/crtend_so.o', | 4602 '<(android_ndk_lib)/crtend_so.o', |
4590 ], | 4603 ], |
4591 }], | 4604 }], |
4592 ], | 4605 ], |
4593 }], | 4606 }], |
4594 ], | 4607 ], |
4595 }], | 4608 }], |
4596 # Settings for building host targets using the system toolchain. | 4609 # Settings for building host targets using the system toolchain. |
4597 ['_toolset=="host"', { | 4610 ['_toolset=="host"', { |
| 4611 'xcode_settings': { |
| 4612 'OTHER_CFLAGS': [ |
| 4613 '-isysroot', '<!(xcrun --show-sdk-path)', '-stdlib=libstdc++', |
| 4614 ], |
| 4615 'OTHER_LDFLAGS': [ '-stdlib=libstdc++', ], |
| 4616 }, |
4598 'cflags!': [ | 4617 'cflags!': [ |
4599 # Due to issues in Clang build system, using ASan on 32-bit | 4618 # Due to issues in Clang build system, using ASan on 32-bit |
4600 # binaries on x86_64 host is problematic. | 4619 # binaries on x86_64 host is problematic. |
4601 # TODO(eugenis): re-enable. | 4620 # TODO(eugenis): re-enable. |
4602 '-fsanitize=address', | 4621 '-fsanitize=address', |
4603 ], | 4622 ], |
4604 'ldflags!': [ | 4623 'ldflags!': [ |
4605 '-fsanitize=address', | 4624 '-fsanitize=address', |
4606 '-Wl,-z,noexecstack', | 4625 '-Wl,-z,noexecstack', |
4607 '-Wl,--gc-sections', | 4626 '-Wl,--gc-sections', |
(...skipping 10 matching lines...) Expand all Loading... |
4618 '-Wl,-z,relro', | 4637 '-Wl,-z,relro', |
4619 ], | 4638 ], |
4620 }], | 4639 }], |
4621 ], | 4640 ], |
4622 }, | 4641 }, |
4623 }], | 4642 }], |
4624 ['OS=="solaris"', { | 4643 ['OS=="solaris"', { |
4625 'cflags!': ['-fvisibility=hidden'], | 4644 'cflags!': ['-fvisibility=hidden'], |
4626 'cflags_cc!': ['-fvisibility-inlines-hidden'], | 4645 'cflags_cc!': ['-fvisibility-inlines-hidden'], |
4627 }], | 4646 }], |
4628 ['OS=="mac" or OS=="ios"', { | 4647 # FIXME: check _toolset (requires putting this in target_conditions)? |
| 4648 # doesn't really matter, so maybe not? |
| 4649 ['OS=="mac" or OS=="ios" or (OS=="android" and host_os=="mac")', { |
4629 'target_defaults': { | 4650 'target_defaults': { |
4630 'mac_bundle': 0, | 4651 'mac_bundle': 0, |
4631 'xcode_settings': { | 4652 'xcode_settings': { |
4632 'ALWAYS_SEARCH_USER_PATHS': 'NO', | 4653 'ALWAYS_SEARCH_USER_PATHS': 'NO', |
4633 # Don't link in libarclite_macosx.a, see http://crbug.com/156530. | 4654 # Don't link in libarclite_macosx.a, see http://crbug.com/156530. |
4634 'CLANG_LINK_OBJC_RUNTIME': 'NO', # -fno-objc-link-runtime | 4655 'CLANG_LINK_OBJC_RUNTIME': 'NO', # -fno-objc-link-runtime |
4635 'COPY_PHASE_STRIP': 'NO', | 4656 'COPY_PHASE_STRIP': 'NO', |
4636 'GCC_C_LANGUAGE_STANDARD': 'c99', # -std=c99 | 4657 'GCC_C_LANGUAGE_STANDARD': 'c99', # -std=c99 |
4637 'GCC_CW_ASM_SYNTAX': 'NO', # No -fasm-blocks | 4658 'GCC_CW_ASM_SYNTAX': 'NO', # No -fasm-blocks |
4638 'GCC_ENABLE_CPP_EXCEPTIONS': 'NO', # -fno-exceptions | 4659 'GCC_ENABLE_CPP_EXCEPTIONS': 'NO', # -fno-exceptions |
4639 'GCC_ENABLE_CPP_RTTI': 'NO', # -fno-rtti | 4660 'GCC_ENABLE_CPP_RTTI': 'NO', # -fno-rtti |
4640 'GCC_ENABLE_PASCAL_STRINGS': 'NO', # No -mpascal-strings | 4661 'GCC_ENABLE_PASCAL_STRINGS': 'NO', # No -mpascal-strings |
4641 # GCC_INLINES_ARE_PRIVATE_EXTERN maps to -fvisibility-inlines-hidden | 4662 # GCC_INLINES_ARE_PRIVATE_EXTERN maps to -fvisibility-inlines-hidden |
4642 'GCC_INLINES_ARE_PRIVATE_EXTERN': 'YES', | 4663 'GCC_INLINES_ARE_PRIVATE_EXTERN': 'YES', |
4643 'GCC_OBJC_CALL_CXX_CDTORS': 'YES', # -fobjc-call-cxx-cdtors | 4664 'GCC_OBJC_CALL_CXX_CDTORS': 'YES', # -fobjc-call-cxx-cdtors |
4644 'GCC_SYMBOLS_PRIVATE_EXTERN': 'YES', # -fvisibility=hidden | 4665 'GCC_SYMBOLS_PRIVATE_EXTERN': 'YES', # -fvisibility=hidden |
4645 'GCC_THREADSAFE_STATICS': 'NO', # -fno-threadsafe-statics | 4666 'GCC_THREADSAFE_STATICS': 'NO', # -fno-threadsafe-statics |
4646 'GCC_TREAT_WARNINGS_AS_ERRORS': 'YES', # -Werror | 4667 #'GCC_TREAT_WARNINGS_AS_ERRORS': 'YES', # -Werror |
4647 'GCC_VERSION': '4.2', | 4668 'GCC_VERSION': '4.2', |
4648 'GCC_WARN_ABOUT_MISSING_NEWLINE': 'YES', # -Wnewline-eof | 4669 'GCC_WARN_ABOUT_MISSING_NEWLINE': 'YES', # -Wnewline-eof |
4649 'USE_HEADERMAP': 'NO', | 4670 'USE_HEADERMAP': 'NO', |
4650 'WARNING_CFLAGS': [ | 4671 'WARNING_CFLAGS': [ |
4651 '-Wall', | 4672 '-Wall', |
4652 '-Wendif-labels', | 4673 '-Wendif-labels', |
4653 '-Wextra', | 4674 '-Wextra', |
4654 # Don't warn about unused function parameters. | 4675 # Don't warn about unused function parameters. |
4655 '-Wno-unused-parameter', | 4676 '-Wno-unused-parameter', |
4656 # Don't warn about the "struct foo f = {0};" initialization | 4677 # Don't warn about the "struct foo f = {0};" initialization |
4657 # pattern. | 4678 # pattern. |
4658 '-Wno-missing-field-initializers', | 4679 '-Wno-missing-field-initializers', |
4659 ], | 4680 ], |
4660 'conditions': [ | 4681 'conditions': [ |
4661 ['chromium_mac_pch', {'GCC_PRECOMPILE_PREFIX_HEADER': 'YES'}, | 4682 ['chromium_mac_pch', {'GCC_PRECOMPILE_PREFIX_HEADER': 'YES'}, |
4662 {'GCC_PRECOMPILE_PREFIX_HEADER': 'NO'} | 4683 {'GCC_PRECOMPILE_PREFIX_HEADER': 'NO'} |
4663 ], | 4684 ], |
4664 # Note that the prebuilt Clang binaries should not be used for iOS | 4685 # Note that the prebuilt Clang binaries should not be used for iOS |
4665 # development except for ASan builds. | 4686 # development except for ASan builds. |
4666 ['clang==1', { | 4687 ['1 or clang==1', { |
4667 # gnu++11 instead of c++11 is needed because some code uses | 4688 # gnu++11 instead of c++11 is needed because some code uses |
4668 # typeof() (a GNU extension). | 4689 # typeof() (a GNU extension). |
4669 # TODO(thakis): Eventually switch this to c++11 instead of | 4690 # TODO(thakis): Eventually switch this to c++11 instead of |
4670 # gnu++11 (once typeof can be removed, which is blocked on c++11 | 4691 # gnu++11 (once typeof can be removed, which is blocked on c++11 |
4671 # being available everywhere). | 4692 # being available everywhere). |
4672 'CLANG_CXX_LANGUAGE_STANDARD': 'gnu++11', # -std=gnu++11 | 4693 'CLANG_CXX_LANGUAGE_STANDARD': 'gnu++11', # -std=gnu++11 |
4673 # Warn if automatic synthesis is triggered with | 4694 # Warn if automatic synthesis is triggered with |
4674 # the -Wobjc-missing-property-synthesis flag. | 4695 # the -Wobjc-missing-property-synthesis flag. |
4675 'CLANG_WARN_OBJC_MISSING_PROPERTY_SYNTHESIS': 'YES', | 4696 'CLANG_WARN_OBJC_MISSING_PROPERTY_SYNTHESIS': 'YES', |
4676 'GCC_VERSION': 'com.apple.compilers.llvm.clang.1_0', | 4697 'GCC_VERSION': 'com.apple.compilers.llvm.clang.1_0', |
4677 'WARNING_CFLAGS': [ | 4698 'WARNING_CFLAGS': [ |
4678 # This warns on selectors from Cocoa headers (-length, -set). | 4699 # This warns on selectors from Cocoa headers (-length, -set). |
4679 # cfe-dev is currently discussing the merits of this warning. | 4700 # cfe-dev is currently discussing the merits of this warning. |
4680 # TODO(thakis): Reevaluate what to do with this, based one | 4701 # TODO(thakis): Reevaluate what to do with this, based one |
4681 # cfe-dev discussion. | 4702 # cfe-dev discussion. |
4682 '-Wno-selector-type-mismatch', | 4703 '-Wno-selector-type-mismatch', |
4683 ], | 4704 ], |
4684 'OTHER_CFLAGS': [ | 4705 'OTHER_CFLAGS': [ |
4685 # TODO(thakis): Remove once http://llvm.org/PR20354 is fixed | 4706 # TODO(thakis): Remove once http://llvm.org/PR20354 is fixed |
4686 # and the fix is in chromium. | 4707 # and the fix is in chromium. |
4687 '-fno-slp-vectorize', | 4708 '-fno-slp-vectorize', |
4688 ], | 4709 ], |
4689 | 4710 |
4690 'conditions': [ | 4711 'conditions': [ |
4691 ['clang_xcode==0', { | 4712 ['0 and clang_xcode==0', { |
4692 'CC': '$(SOURCE_ROOT)/<(clang_dir)/clang', | 4713 'CC': '$(SOURCE_ROOT)/<(clang_dir)/clang', |
4693 'LDPLUSPLUS': '$(SOURCE_ROOT)/<(clang_dir)/clang++', | 4714 'LDPLUSPLUS': '$(SOURCE_ROOT)/<(clang_dir)/clang++', |
4694 }], | 4715 }], |
4695 ], | 4716 ], |
4696 }], | 4717 }], |
4697 ['clang==1 and clang_xcode==0 and clang_use_chrome_plugins==1', { | 4718 ['clang==1 and clang_xcode==0 and clang_use_chrome_plugins==1', { |
4698 'OTHER_CFLAGS': [ | 4719 'OTHER_CFLAGS': [ |
4699 '<@(clang_chrome_plugins_flags)', | 4720 '<@(clang_chrome_plugins_flags)', |
4700 ], | 4721 ], |
4701 }], | 4722 }], |
(...skipping 952 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5654 # settings in target dicts. SYMROOT is a special case, because many other | 5675 # settings in target dicts. SYMROOT is a special case, because many other |
5655 # Xcode variables depend on it, including variables such as | 5676 # Xcode variables depend on it, including variables such as |
5656 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something | 5677 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something |
5657 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the | 5678 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the |
5658 # files to appear (when present) in the UI as actual files and not red | 5679 # files to appear (when present) in the UI as actual files and not red |
5659 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, | 5680 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, |
5660 # and therefore SYMROOT, needs to be set at the project level. | 5681 # and therefore SYMROOT, needs to be set at the project level. |
5661 'SYMROOT': '<(DEPTH)/xcodebuild', | 5682 'SYMROOT': '<(DEPTH)/xcodebuild', |
5662 }, | 5683 }, |
5663 } | 5684 } |
OLD | NEW |