| 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 5984 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5995 'make_global_settings': [ | 5995 'make_global_settings': [ |
| 5996 # On Windows, gyp's ninja generator only looks at CC. | 5996 # On Windows, gyp's ninja generator only looks at CC. |
| 5997 ['CC', '<(make_clang_dir)/bin/clang-cl'], | 5997 ['CC', '<(make_clang_dir)/bin/clang-cl'], |
| 5998 ], | 5998 ], |
| 5999 }], | 5999 }], |
| 6000 ['use_lld==1 and OS=="win"', { | 6000 ['use_lld==1 and OS=="win"', { |
| 6001 'make_global_settings': [ | 6001 'make_global_settings': [ |
| 6002 # Limited to Windows because lld-link is the driver that is | 6002 # Limited to Windows because lld-link is the driver that is |
| 6003 # compatible with link.exe. | 6003 # compatible with link.exe. |
| 6004 ['LD', '<(make_clang_dir)/bin/lld-link'], | 6004 ['LD', '<(make_clang_dir)/bin/lld-link'], |
| 6005 # lld-link includes a replacement for lib.exe that can produce thin |
| 6006 # archives and understands bitcode (for use_lto==1). |
| 6007 ['AR', '<(make_clang_dir)/bin/lld-link /lib /llvmlibthin'], |
| 6005 ], | 6008 ], |
| 6006 }], | 6009 }], |
| 6007 ['OS=="android" and clang==0', { | 6010 ['OS=="android" and clang==0', { |
| 6008 # Hardcode the compiler names in the Makefile so that | 6011 # Hardcode the compiler names in the Makefile so that |
| 6009 # it won't depend on the environment at make time. | 6012 # it won't depend on the environment at make time. |
| 6010 'make_global_settings': [ | 6013 'make_global_settings': [ |
| 6011 ['CC', '<!(/bin/echo -n <(android_toolchain)/*-gcc)'], | 6014 ['CC', '<!(/bin/echo -n <(android_toolchain)/*-gcc)'], |
| 6012 ['CXX', '<!(/bin/echo -n <(android_toolchain)/*-g++)'], | 6015 ['CXX', '<!(/bin/echo -n <(android_toolchain)/*-g++)'], |
| 6013 ['CC.host', '<(host_cc)'], | 6016 ['CC.host', '<(host_cc)'], |
| 6014 ['CXX.host', '<(host_cxx)'], | 6017 ['CXX.host', '<(host_cxx)'], |
| (...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6080 }], | 6083 }], |
| 6081 ['use_lto==1 and clang==1', { | 6084 ['use_lto==1 and clang==1', { |
| 6082 'target_defaults': { | 6085 'target_defaults': { |
| 6083 'target_conditions': [ | 6086 'target_conditions': [ |
| 6084 ['_toolset=="target"', { | 6087 ['_toolset=="target"', { |
| 6085 'arflags': [ | 6088 'arflags': [ |
| 6086 '--plugin', '../../<(make_clang_dir)/lib/LLVMgold.so', | 6089 '--plugin', '../../<(make_clang_dir)/lib/LLVMgold.so', |
| 6087 ], | 6090 ], |
| 6088 }], | 6091 }], |
| 6089 ], | 6092 ], |
| 6093 'msvs_settings': { |
| 6094 'VCCLCompilerTool': { |
| 6095 'AdditionalOptions': [ |
| 6096 # TODO(pcc): Add LTO support to clang-cl driver and use it here. |
| 6097 '-Xclang', |
| 6098 '-emit-llvm-bc', |
| 6099 ], |
| 6100 }, |
| 6101 }, |
| 6090 }, | 6102 }, |
| 6091 }], | 6103 }], |
| 6092 # Apply a lower LTO optimization level as the default is too slow. | 6104 # Apply a lower LTO optimization level as the default is too slow. |
| 6093 ['use_lto==1 and clang==1', { | 6105 ['use_lto==1 and clang==1', { |
| 6094 'target_defaults': { | 6106 'target_defaults': { |
| 6095 'target_conditions': [ | 6107 'target_conditions': [ |
| 6096 ['_toolset=="target"', { | 6108 ['_toolset=="target"', { |
| 6097 'ldflags': [ | 6109 'ldflags': [ |
| 6098 '-Wl,--plugin-opt,O1', | 6110 '-Wl,--plugin-opt,O1', |
| 6099 ], | 6111 ], |
| 6100 }], | 6112 }], |
| 6101 ['_toolset=="target" and _type!="static_library"', { | 6113 ['_toolset=="target" and _type!="static_library"', { |
| 6102 'xcode_settings': { | 6114 'xcode_settings': { |
| 6103 'OTHER_LDFLAGS': [ | 6115 'OTHER_LDFLAGS': [ |
| 6104 '-Wl,-mllvm,-O1', | 6116 '-Wl,-mllvm,-O1', |
| 6105 ], | 6117 ], |
| 6106 }, | 6118 }, |
| 6107 }], | 6119 }], |
| 6108 ], | 6120 ], |
| 6121 'msvs_settings': { |
| 6122 'VCLinkerTool': { |
| 6123 'AdditionalOptions': [ |
| 6124 '/opt:lldlto=1', |
| 6125 ], |
| 6126 }, |
| 6127 }, |
| 6109 }, | 6128 }, |
| 6110 }], | 6129 }], |
| 6111 ['use_lto==1 and clang==1 and target_arch=="arm"', { | 6130 ['use_lto==1 and clang==1 and target_arch=="arm"', { |
| 6112 'target_defaults': { | 6131 'target_defaults': { |
| 6113 'target_conditions': [ | 6132 'target_conditions': [ |
| 6114 ['_toolset=="target"', { | 6133 ['_toolset=="target"', { |
| 6115 # Without this flag, LTO produces a .text section that is larger | 6134 # Without this flag, LTO produces a .text section that is larger |
| 6116 # than the maximum call displacement, preventing the linker from | 6135 # than the maximum call displacement, preventing the linker from |
| 6117 # relocating calls (http://llvm.org/PR22999). | 6136 # relocating calls (http://llvm.org/PR22999). |
| 6118 'ldflags': [ | 6137 'ldflags': [ |
| (...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6308 # settings in target dicts. SYMROOT is a special case, because many other | 6327 # settings in target dicts. SYMROOT is a special case, because many other |
| 6309 # Xcode variables depend on it, including variables such as | 6328 # Xcode variables depend on it, including variables such as |
| 6310 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something | 6329 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something |
| 6311 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the | 6330 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the |
| 6312 # files to appear (when present) in the UI as actual files and not red | 6331 # files to appear (when present) in the UI as actual files and not red |
| 6313 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, | 6332 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, |
| 6314 # and therefore SYMROOT, needs to be set at the project level. | 6333 # and therefore SYMROOT, needs to be set at the project level. |
| 6315 'SYMROOT': '<(DEPTH)/xcodebuild', | 6334 'SYMROOT': '<(DEPTH)/xcodebuild', |
| 6316 }, | 6335 }, |
| 6317 } | 6336 } |
| OLD | NEW |