OLD | NEW |
1 # Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2011 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 10 matching lines...) Expand all Loading... |
21 # Whether we're building a ChromeOS build. | 21 # Whether we're building a ChromeOS build. |
22 'chromeos%': 0, | 22 'chromeos%': 0, |
23 | 23 |
24 # Disable touch support by default. | 24 # Disable touch support by default. |
25 'touchui%': 0, | 25 'touchui%': 0, |
26 }, | 26 }, |
27 # Copy conditionally-set variables out one scope. | 27 # Copy conditionally-set variables out one scope. |
28 'chromeos%': '<(chromeos)', | 28 'chromeos%': '<(chromeos)', |
29 'touchui%': '<(touchui)', | 29 'touchui%': '<(touchui)', |
30 | 30 |
31 # To do a shared build on linux we need to be able to choose between | |
32 # type static_library and shared_library. We default to doing a static | |
33 # build but you can override this with "gyp -Dlibrary=shared_library" | |
34 # or you can add the following line (without the #) to | |
35 # ~/.gyp/include.gypi {'variables': {'library': 'shared_library'}} | |
36 # to compile as shared by default | |
37 'library%': 'static_library', | |
38 | |
39 # Compute the architecture that we're building on. | 31 # Compute the architecture that we're building on. |
40 'conditions': [ | 32 'conditions': [ |
41 [ 'OS=="win" or OS=="mac"', { | 33 [ 'OS=="win" or OS=="mac"', { |
42 'host_arch%': 'ia32', | 34 'host_arch%': 'ia32', |
43 }, { | 35 }, { |
44 # This handles the Unix platforms for which there is some support. | 36 # This handles the Unix platforms for which there is some support. |
45 # Anything else gets passed through, which probably won't work very | 37 # Anything else gets passed through, which probably won't work very |
46 # well; such hosts should pass an explicit target_arch to gyp. | 38 # well; such hosts should pass an explicit target_arch to gyp. |
47 'host_arch%': | 39 'host_arch%': |
48 '<!(uname -m | sed -e "s/i.86/ia32/;s/x86_64/x64/;s/amd64/x64/;s/a
rm.*/arm/;s/i86pc/ia32/")', | 40 '<!(uname -m | sed -e "s/i.86/ia32/;s/x86_64/x64/;s/amd64/x64/;s/a
rm.*/arm/;s/i86pc/ia32/")', |
49 }], | 41 }], |
50 | 42 |
51 # Set default value of toolkit_views on for Windows, Chrome OS | 43 # Set default value of toolkit_views on for Windows, Chrome OS |
52 # and the touch UI. | 44 # and the touch UI. |
53 ['OS=="win" or chromeos==1 or touchui==1', { | 45 ['OS=="win" or chromeos==1 or touchui==1', { |
54 'toolkit_views%': 1, | 46 'toolkit_views%': 1, |
55 }, { | 47 }, { |
56 'toolkit_views%': 0, | 48 'toolkit_views%': 0, |
57 }], | 49 }], |
58 ], | 50 ], |
59 }, | 51 }, |
60 | 52 |
61 # Copy conditionally-set variables out one scope. | 53 # Copy conditionally-set variables out one scope. |
62 'chromeos%': '<(chromeos)', | 54 'chromeos%': '<(chromeos)', |
63 'touchui%': '<(touchui)', | 55 'touchui%': '<(touchui)', |
64 'host_arch%': '<(host_arch)', | 56 'host_arch%': '<(host_arch)', |
65 'library%': 'static_library', | |
66 'toolkit_views%': '<(toolkit_views)', | 57 'toolkit_views%': '<(toolkit_views)', |
67 | 58 |
68 # Override branding to select the desired branding flavor. | 59 # Override branding to select the desired branding flavor. |
69 'branding%': 'Chromium', | 60 'branding%': 'Chromium', |
70 | 61 |
71 # Override buildtype to select the desired build flavor. | 62 # Override buildtype to select the desired build flavor. |
72 # Dev - everyday build for development/testing | 63 # Dev - everyday build for development/testing |
73 # Official - release build (generally implies additional processing) | 64 # Official - release build (generally implies additional processing) |
74 # TODO(mmoss) Once 'buildtype' is fully supported (e.g. Windows gyp | 65 # TODO(mmoss) Once 'buildtype' is fully supported (e.g. Windows gyp |
75 # conversion is done), some of the things which are now controlled by | 66 # conversion is done), some of the things which are now controlled by |
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
210 'chromeos%': '<(chromeos)', | 201 'chromeos%': '<(chromeos)', |
211 'touchui%': '<(touchui)', | 202 'touchui%': '<(touchui)', |
212 'file_manager_extension%': '<(file_manager_extension)', | 203 'file_manager_extension%': '<(file_manager_extension)', |
213 'inside_chromium_build%': '<(inside_chromium_build)', | 204 'inside_chromium_build%': '<(inside_chromium_build)', |
214 'fastbuild%': '<(fastbuild)', | 205 'fastbuild%': '<(fastbuild)', |
215 'python_ver%': '<(python_ver)', | 206 'python_ver%': '<(python_ver)', |
216 'armv7%': '<(armv7)', | 207 'armv7%': '<(armv7)', |
217 'arm_neon%': '<(arm_neon)', | 208 'arm_neon%': '<(arm_neon)', |
218 'sysroot%': '<(sysroot)', | 209 'sysroot%': '<(sysroot)', |
219 'disable_sse2%': '<(disable_sse2)', | 210 'disable_sse2%': '<(disable_sse2)', |
220 'library%': 'static_library', | |
221 'component%': '<(component)', | 211 'component%': '<(component)', |
222 'use_titlecase_in_grd_files%': '<(use_titlecase_in_grd_files)', | 212 'use_titlecase_in_grd_files%': '<(use_titlecase_in_grd_files)', |
223 'use_third_party_translations%': '<(use_third_party_translations)', | 213 'use_third_party_translations%': '<(use_third_party_translations)', |
224 'remoting%': '<(remoting)', | 214 'remoting%': '<(remoting)', |
225 'p2p_apis%': '<(p2p_apis)', | 215 'p2p_apis%': '<(p2p_apis)', |
226 'clang_use_chrome_plugins%': '<(clang_use_chrome_plugins)', | 216 'clang_use_chrome_plugins%': '<(clang_use_chrome_plugins)', |
227 | 217 |
| 218 # We used to provide a variable for changing how libraries were built. |
| 219 # This variable remains until we can clean up all the users. |
| 220 # http://code.google.com/p/chromium/issues/detail?id=83308 |
| 221 'library%': 'static_library', |
| 222 |
228 # The release channel that this build targets. This is used to restrict | 223 # The release channel that this build targets. This is used to restrict |
229 # channel-specific build options, like which installer packages to create. | 224 # channel-specific build options, like which installer packages to create. |
230 # The default is 'all', which does no channel-specific filtering. | 225 # The default is 'all', which does no channel-specific filtering. |
231 'channel%': 'all', | 226 'channel%': 'all', |
232 | 227 |
233 # Override chromium_mac_pch and set it to 0 to suppress the use of | 228 # Override chromium_mac_pch and set it to 0 to suppress the use of |
234 # precompiled headers on the Mac. Prefix header injection may still be | 229 # precompiled headers on the Mac. Prefix header injection may still be |
235 # used, but prefix headers will not be precompiled. This is useful when | 230 # used, but prefix headers will not be precompiled. This is useful when |
236 # using distcc to distribute a build to compile slaves that don't | 231 # using distcc to distribute a build to compile slaves that don't |
237 # share the same compiler executable as the system driving the compilation, | 232 # share the same compiler executable as the system driving the compilation, |
(...skipping 1095 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1333 }], | 1328 }], |
1334 ['no_strict_aliasing==1', { | 1329 ['no_strict_aliasing==1', { |
1335 'cflags': [ | 1330 'cflags': [ |
1336 '-fno-strict-aliasing', | 1331 '-fno-strict-aliasing', |
1337 ], | 1332 ], |
1338 }], | 1333 }], |
1339 ['linux_breakpad==1', { | 1334 ['linux_breakpad==1', { |
1340 'cflags': [ '-g' ], | 1335 'cflags': [ '-g' ], |
1341 'defines': ['USE_LINUX_BREAKPAD'], | 1336 'defines': ['USE_LINUX_BREAKPAD'], |
1342 }], | 1337 }], |
1343 ['library=="shared_library"', { | |
1344 # When building with shared libraries, remove the visiblity-hiding | |
1345 # flag. | |
1346 'cflags!': [ '-fvisibility=hidden' ], | |
1347 'conditions': [ | |
1348 ['target_arch=="x64" or target_arch=="arm"', { | |
1349 # Shared libraries need -fPIC on x86-64 and arm | |
1350 'cflags': ['-fPIC'] | |
1351 }] | |
1352 ], | |
1353 'ldflags!': [ | |
1354 # --as-needed confuses library interdependencies. | |
1355 # See http://code.google.com/p/chromium/issues/detail?id=61430 | |
1356 '-Wl,--as-needed', | |
1357 ], | |
1358 }], | |
1359 ['linux_use_heapchecker==1', { | 1338 ['linux_use_heapchecker==1', { |
1360 'variables': {'linux_use_tcmalloc%': 1}, | 1339 'variables': {'linux_use_tcmalloc%': 1}, |
1361 }], | 1340 }], |
1362 ['linux_use_tcmalloc==0', { | 1341 ['linux_use_tcmalloc==0', { |
1363 'defines': ['NO_TCMALLOC'], | 1342 'defines': ['NO_TCMALLOC'], |
1364 }], | 1343 }], |
1365 ['linux_use_heapchecker==0', { | 1344 ['linux_use_heapchecker==0', { |
1366 'defines': ['NO_HEAPCHECKER'], | 1345 'defines': ['NO_HEAPCHECKER'], |
1367 }], | 1346 }], |
1368 ['linux_keep_shadow_stacks==1', { | 1347 ['linux_keep_shadow_stacks==1', { |
(...skipping 369 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1738 # and therefore SYMROOT, needs to be set at the project level. | 1717 # and therefore SYMROOT, needs to be set at the project level. |
1739 'SYMROOT': '<(DEPTH)/xcodebuild', | 1718 'SYMROOT': '<(DEPTH)/xcodebuild', |
1740 }, | 1719 }, |
1741 } | 1720 } |
1742 | 1721 |
1743 # Local Variables: | 1722 # Local Variables: |
1744 # tab-width:2 | 1723 # tab-width:2 |
1745 # indent-tabs-mode:nil | 1724 # indent-tabs-mode:nil |
1746 # End: | 1725 # End: |
1747 # vim: set expandtab tabstop=2 shiftwidth=2: | 1726 # vim: set expandtab tabstop=2 shiftwidth=2: |
OLD | NEW |