Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1486)

Side by Side Diff: build/common.gypi

Issue 10704039: Add iOS support to common.gypi (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Remove PREBINDING (which had been accidentally kept around in the fork) Created 8 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « build/build_config.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
65 'use_openssl%': '<(use_openssl)', 65 'use_openssl%': '<(use_openssl)',
66 'use_ibus%': '<(use_ibus)', 66 'use_ibus%': '<(use_ibus)',
67 'enable_viewport%': '<(enable_viewport)', 67 'enable_viewport%': '<(enable_viewport)',
68 'enable_hidpi%': '<(enable_hidpi)', 68 'enable_hidpi%': '<(enable_hidpi)',
69 'enable_touch_ui%': '<(enable_touch_ui)', 69 'enable_touch_ui%': '<(enable_touch_ui)',
70 'android_upstream_bringup%': '<(android_upstream_bringup)', 70 'android_upstream_bringup%': '<(android_upstream_bringup)',
71 'buildtype%': '<(buildtype)', 71 'buildtype%': '<(buildtype)',
72 72
73 # Compute the architecture that we're building on. 73 # Compute the architecture that we're building on.
74 'conditions': [ 74 'conditions': [
75 [ 'OS=="win" or OS=="mac"', { 75 ['OS=="win" or OS=="mac" or OS=="ios"', {
76 'host_arch%': 'ia32', 76 'host_arch%': 'ia32',
77 }, { 77 }, {
78 # This handles the Unix platforms for which there is some support. 78 # This handles the Unix platforms for which there is some support.
79 # Anything else gets passed through, which probably won't work very 79 # Anything else gets passed through, which probably won't work very
80 # well; such hosts should pass an explicit target_arch to gyp. 80 # well; such hosts should pass an explicit target_arch to gyp.
81 'host_arch%': 81 'host_arch%':
82 '<!(uname -m | sed -e "s/i.86/ia32/;s/x86_64/x64/;s/amd64/x64/;s/a rm.*/arm/;s/i86pc/ia32/")', 82 '<!(uname -m | sed -e "s/i.86/ia32/;s/x86_64/x64/;s/amd64/x64/;s/a rm.*/arm/;s/i86pc/ia32/")',
83 }], 83 }],
84 84
85 # Chromeos implies ash. 85 # Chromeos implies ash.
(...skipping 218 matching lines...) Expand 10 before | Expand all | Expand 10 after
304 # 304 #
305 # Note that a setting of 1 is probably suitable for most or all 305 # Note that a setting of 1 is probably suitable for most or all
306 # Windows developers using VS 2008, since precompiled headers 306 # Windows developers using VS 2008, since precompiled headers
307 # provide a build speedup of 20-25%. There are a couple of 307 # provide a build speedup of 20-25%. There are a couple of
308 # small workarounds you may need to use when using VS 2008 (but 308 # small workarounds you may need to use when using VS 2008 (but
309 # not 2010), see 309 # not 2010), see
310 # http://code.google.com/p/chromium/wiki/WindowsPrecompiledHeaders 310 # http://code.google.com/p/chromium/wiki/WindowsPrecompiledHeaders
311 # for details. 311 # for details.
312 'chromium_win_pch%': 0, 312 'chromium_win_pch%': 0,
313 313
314 # iOS SDK and deployment target support. The iOS 5.0 SDK is actually
315 # what is required, but the value is left blank so when it is set in
316 # the project files it will be the "current" iOS SDK. Forcing 5.0
317 # even though it is "current" causes Xcode to spit out a warning for
318 # every single project file for not using the "current" SDK.
319 'ios_sdk%': '',
320 'ios_deployment_target%': '4.3',
321
314 # Set this to true when building with Clang. 322 # Set this to true when building with Clang.
315 # See http://code.google.com/p/chromium/wiki/Clang for details. 323 # See http://code.google.com/p/chromium/wiki/Clang for details.
316 'clang%': 0, 324 'clang%': 0,
317 325
318 # Enable plug-in installation by default. 326 # Enable plug-in installation by default.
319 'enable_plugin_installation%': 1, 327 'enable_plugin_installation%': 1,
320 328
321 # Enable protector service by default. 329 # Enable protector service by default.
322 'enable_protector_service%': 1, 330 'enable_protector_service%': 1,
323 331
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
377 }], 385 }],
378 386
379 # NSS usage. 387 # NSS usage.
380 ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris") and u se_openssl==0', { 388 ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris") and u se_openssl==0', {
381 'use_nss%': 1, 389 'use_nss%': 1,
382 }, { 390 }, {
383 'use_nss%': 0, 391 'use_nss%': 0,
384 }], 392 }],
385 393
386 # Flags to use X11 on non-Mac POSIX platforms 394 # Flags to use X11 on non-Mac POSIX platforms
387 ['OS=="win" or OS=="mac" or OS=="android"', { 395 ['OS=="win" or OS=="mac" or OS=="ios" or OS=="android"', {
388 'use_glib%': 0, 396 'use_glib%': 0,
389 'use_x11%': 0, 397 'use_x11%': 0,
390 }, { 398 }, {
391 'use_glib%': 1, 399 'use_glib%': 1,
392 'use_x11%': 1, 400 'use_x11%': 1,
393 }], 401 }],
394 402
395 # Set toolkit_uses_gtk for the Chromium browser on Linux. 403 # Set toolkit_uses_gtk for the Chromium browser on Linux.
396 ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris") and u se_aura==0', { 404 ['(OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="solaris") and u se_aura==0', {
397 'toolkit_uses_gtk%': 1, 405 'toolkit_uses_gtk%': 1,
(...skipping 11 matching lines...) Expand all
409 # A flag to enable or disable our compile-time dependency 417 # A flag to enable or disable our compile-time dependency
410 # on gnome-keyring. If that dependency is disabled, no gnome-keyring 418 # on gnome-keyring. If that dependency is disabled, no gnome-keyring
411 # support will be available. This option is useful 419 # support will be available. This option is useful
412 # for Linux distributions and for Aura. 420 # for Linux distributions and for Aura.
413 ['chromeos==1 or use_aura==1', { 421 ['chromeos==1 or use_aura==1', {
414 'use_gnome_keyring%': 0, 422 'use_gnome_keyring%': 0,
415 }, { 423 }, {
416 'use_gnome_keyring%': 1, 424 'use_gnome_keyring%': 1,
417 }], 425 }],
418 426
419 ['toolkit_views==0 or OS=="mac"', { 427 ['toolkit_views==0 or OS=="mac" or OS=="ios"', {
420 # GTK+ and Mac wants Title Case strings 428 # GTK+, Mac and iOS want Title Case strings
421 'use_titlecase_in_grd_files%': 1, 429 'use_titlecase_in_grd_files%': 1,
422 }], 430 }],
423 431
424 # Enable file manager extension on Chrome OS. 432 # Enable file manager extension on Chrome OS.
425 ['chromeos==1', { 433 ['chromeos==1', {
426 'file_manager_extension%': 1, 434 'file_manager_extension%': 1,
427 }, { 435 }, {
428 'file_manager_extension%': 0, 436 'file_manager_extension%': 0,
429 }], 437 }],
430 438
(...skipping 18 matching lines...) Expand all
449 ['OS=="win" and MSVS_VERSION=="2010" and buildtype!="Official"', { 457 ['OS=="win" and MSVS_VERSION=="2010" and buildtype!="Official"', {
450 'chromium_win_pch%': 1 458 'chromium_win_pch%': 1
451 }], 459 }],
452 460
453 ['use_aura==1 or chromeos==1 or OS=="android"', { 461 ['use_aura==1 or chromeos==1 or OS=="android"', {
454 'enable_plugin_installation%': 0, 462 'enable_plugin_installation%': 0,
455 }, { 463 }, {
456 'enable_plugin_installation%': 1, 464 'enable_plugin_installation%': 1,
457 }], 465 }],
458 466
459 ['OS=="android"', { 467 ['OS=="android" or OS=="ios"', {
460 'enable_protector_service%': 0, 468 'enable_protector_service%': 0,
461 }, { 469 }, {
462 'enable_protector_service%': 1, 470 'enable_protector_service%': 1,
463 }], 471 }],
464 472
465 # linux_use_gold_binary: whether to use the binary checked into 473 # linux_use_gold_binary: whether to use the binary checked into
466 # third_party/gold. 474 # third_party/gold.
467 ['OS=="linux"', { 475 ['OS=="linux"', {
468 'linux_use_gold_binary%': 1, 476 'linux_use_gold_binary%': 1,
469 }, { 477 }, {
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
545 'safe_browsing%': '<(safe_browsing)', 553 'safe_browsing%': '<(safe_browsing)',
546 'input_speech%': '<(input_speech)', 554 'input_speech%': '<(input_speech)',
547 'notifications%': '<(notifications)', 555 'notifications%': '<(notifications)',
548 'clang_use_chrome_plugins%': '<(clang_use_chrome_plugins)', 556 'clang_use_chrome_plugins%': '<(clang_use_chrome_plugins)',
549 'asan%': '<(asan)', 557 'asan%': '<(asan)',
550 'order_profiling%': '<(order_profiling)', 558 'order_profiling%': '<(order_profiling)',
551 'order_text_section%': '<(order_text_section)', 559 'order_text_section%': '<(order_text_section)',
552 'enable_extensions%': '<(enable_extensions)', 560 'enable_extensions%': '<(enable_extensions)',
553 'enable_web_intents%': '<(enable_web_intents)', 561 'enable_web_intents%': '<(enable_web_intents)',
554 'enable_web_intents_tag%': '<(enable_web_intents_tag)', 562 'enable_web_intents_tag%': '<(enable_web_intents_tag)',
563 'ios_sdk%': '<(ios_sdk)',
564 'ios_deployment_target%': '<(ios_deployment_target)',
555 'enable_plugin_installation%': '<(enable_plugin_installation)', 565 'enable_plugin_installation%': '<(enable_plugin_installation)',
556 'enable_protector_service%': '<(enable_protector_service)', 566 'enable_protector_service%': '<(enable_protector_service)',
557 'enable_session_service%': '<(enable_session_service)', 567 'enable_session_service%': '<(enable_session_service)',
558 'enable_themes%': '<(enable_themes)', 568 'enable_themes%': '<(enable_themes)',
559 'enable_background%': '<(enable_background)', 569 'enable_background%': '<(enable_background)',
560 'enable_promo_resource_service%': '<(enable_promo_resource_service)', 570 'enable_promo_resource_service%': '<(enable_promo_resource_service)',
561 'linux_use_gold_binary%': '<(linux_use_gold_binary)', 571 'linux_use_gold_binary%': '<(linux_use_gold_binary)',
562 'linux_use_gold_flags%': '<(linux_use_gold_flags)', 572 'linux_use_gold_flags%': '<(linux_use_gold_flags)',
563 'use_canvas_skia%': '<(use_canvas_skia)', 573 'use_canvas_skia%': '<(use_canvas_skia)',
564 'test_isolation_mode%': '<(test_isolation_mode)', 574 'test_isolation_mode%': '<(test_isolation_mode)',
(...skipping 215 matching lines...) Expand 10 before | Expand all | Expand 10 after
780 790
781 # If debug_devtools is set to 1, JavaScript files for DevTools are 791 # If debug_devtools is set to 1, JavaScript files for DevTools are
782 # stored as is and loaded from disk. Otherwise, a concatenated file 792 # stored as is and loaded from disk. Otherwise, a concatenated file
783 # is stored in resources.pak. It is still possible to load JS files 793 # is stored in resources.pak. It is still possible to load JS files
784 # from disk by passing --debug-devtools cmdline switch. 794 # from disk by passing --debug-devtools cmdline switch.
785 'debug_devtools%': 0, 795 'debug_devtools%': 0,
786 796
787 # The Java Bridge is not compiled in by default. 797 # The Java Bridge is not compiled in by default.
788 'java_bridge%': 0, 798 'java_bridge%': 0,
789 799
800 # Code signing for iOS binaries. The bots need to be able to disable this.
801 'chromium_ios_signing%': 1,
802
790 # This flag is only used when disable_nacl==0 and disables all those 803 # This flag is only used when disable_nacl==0 and disables all those
791 # subcomponents which would require the installation of a native_client 804 # subcomponents which would require the installation of a native_client
792 # untrusted toolchain. 805 # untrusted toolchain.
793 'disable_nacl_untrusted%': 0, 806 'disable_nacl_untrusted%': 0,
794 807
795 # Disable Dart by default. 808 # Disable Dart by default.
796 'enable_dart%': 0, 809 'enable_dart%': 0,
797 810
798 # The desired version of Windows SDK can be set in ~/.gyp/include.gypi. 811 # The desired version of Windows SDK can be set in ~/.gyp/include.gypi.
799 'msbuild_toolset%': '', 812 'msbuild_toolset%': '',
800 813
801 # Native Client is enabled by default. 814 # Native Client is enabled by default.
802 'disable_nacl%': 0, 815 'disable_nacl%': 0,
803 816
804 'sas_dll_exists': '<!(python <(DEPTH)/build/dir_exists.py <(sas_dll_path))', 817 'sas_dll_exists': '<!(python <(DEPTH)/build/dir_exists.py <(sas_dll_path))',
805 'wix_exists': '<!(python <(DEPTH)/build/dir_exists.py <(wix_path))', 818 'wix_exists': '<!(python <(DEPTH)/build/dir_exists.py <(wix_path))',
806 819
807 'conditions': [ 820 'conditions': [
808 ['os_posix==1 and OS!="mac"', { 821 ['os_posix==1 and OS!="mac" and OS!="ios"', {
809 # This will set gcc_version to XY if you are running gcc X.Y.*. 822 # This will set gcc_version to XY if you are running gcc X.Y.*.
810 # This is used to tweak build flags for gcc 4.4. 823 # This is used to tweak build flags for gcc 4.4.
811 'gcc_version%': '<!(python <(DEPTH)/build/compiler_version.py)', 824 'gcc_version%': '<!(python <(DEPTH)/build/compiler_version.py)',
812 # Figure out the python architecture to decide if we build pyauto. 825 # Figure out the python architecture to decide if we build pyauto.
813 'python_arch%': '<!(<(DEPTH)/build/linux/python_arch.sh <(sysroot)/usr/< (system_libdir)/libpython<(python_ver).so.1.0)', 826 'python_arch%': '<!(<(DEPTH)/build/linux/python_arch.sh <(sysroot)/usr/< (system_libdir)/libpython<(python_ver).so.1.0)',
814 'conditions': [ 827 'conditions': [
815 ['branding=="Chrome"', { 828 ['branding=="Chrome"', {
816 'linux_breakpad%': 1, 829 'linux_breakpad%': 1,
817 }], 830 }],
818 # All Chrome builds have breakpad symbols, but only process the 831 # All Chrome builds have breakpad symbols, but only process the
819 # symbols from official builds. 832 # symbols from official builds.
820 ['(branding=="Chrome" and buildtype=="Official")', { 833 ['(branding=="Chrome" and buildtype=="Official")', {
821 'linux_dump_symbols%': 1, 834 'linux_dump_symbols%': 1,
822 }], 835 }],
823 ], 836 ],
824 }], 837 }], # os_posix==1 and OS!="mac" and OS!="ios"
825 ['OS=="android"', { 838 ['OS=="android"', {
826 # Location of Android NDK. 839 # Location of Android NDK.
827 'variables': { 840 'variables': {
828 'variables': { 841 'variables': {
829 'android_ndk_root%': '<!(/bin/echo -n $ANDROID_NDK_ROOT)', 842 'android_ndk_root%': '<!(/bin/echo -n $ANDROID_NDK_ROOT)',
830 # Android uses x86 instead of ia32 for their target_arch 843 # Android uses x86 instead of ia32 for their target_arch
831 # designation. 844 # designation.
832 # TODO(wistoch): Adjust the target_arch naming scheme to avoid 845 # TODO(wistoch): Adjust the target_arch naming scheme to avoid
833 # confusion. 846 # confusion.
834 # http://crbug.com/125329 847 # http://crbug.com/125329
(...skipping 351 matching lines...) Expand 10 before | Expand all | Expand 10 after
1186 # section, and will not have access to the default fallback value of 1199 # section, and will not have access to the default fallback value of
1187 # chromium_code at the top of this file, or to the chromium_code 1200 # chromium_code at the top of this file, or to the chromium_code
1188 # variable placed at the root variables scope of .gyp files, because 1201 # variable placed at the root variables scope of .gyp files, because
1189 # those variables are not set at target scope. As a workaround, 1202 # those variables are not set at target scope. As a workaround,
1190 # if chromium_code is not set at target scope, define it in target scope 1203 # if chromium_code is not set at target scope, define it in target scope
1191 # to contain whatever value it has during early variable expansion. 1204 # to contain whatever value it has during early variable expansion.
1192 # That's enough to make it available during target conditional 1205 # That's enough to make it available during target conditional
1193 # processing. 1206 # processing.
1194 'chromium_code%': '<(chromium_code)', 1207 'chromium_code%': '<(chromium_code)',
1195 1208
1196 # See http://gcc.gnu.org/onlinedocs/gcc-4.4.2/gcc/Optimize-Options.html
1197 'mac_release_optimization%': '3', # Use -O3 unless overridden
1198 'mac_debug_optimization%': '0', # Use -O0 unless overridden
1199
1200 # See http://msdn.microsoft.com/en-us/library/aa652360(VS.71).aspx 1209 # See http://msdn.microsoft.com/en-us/library/aa652360(VS.71).aspx
1201 'win_release_Optimization%': '2', # 2 = /Os 1210 'win_release_Optimization%': '2', # 2 = /Os
1202 'win_debug_Optimization%': '0', # 0 = /Od 1211 'win_debug_Optimization%': '0', # 0 = /Od
1203 1212
1204 # See http://msdn.microsoft.com/en-us/library/2kxx5t2c(v=vs.80).aspx 1213 # See http://msdn.microsoft.com/en-us/library/2kxx5t2c(v=vs.80).aspx
1205 # Tri-state: blank is default, 1 on, 0 off 1214 # Tri-state: blank is default, 1 on, 0 off
1206 'win_release_OmitFramePointers%': '0', 1215 'win_release_OmitFramePointers%': '0',
1207 # Tri-state: blank is default, 1 on, 0 off 1216 # Tri-state: blank is default, 1 on, 0 off
1208 'win_debug_OmitFramePointers%': '', 1217 'win_debug_OmitFramePointers%': '',
1209 1218
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
1244 'conditions': [ 1253 'conditions': [
1245 ['OS=="win" and component=="shared_library"', { 1254 ['OS=="win" and component=="shared_library"', {
1246 # See http://msdn.microsoft.com/en-us/library/aa652367.aspx 1255 # See http://msdn.microsoft.com/en-us/library/aa652367.aspx
1247 'win_release_RuntimeLibrary%': '2', # 2 = /MD (nondebug DLL) 1256 'win_release_RuntimeLibrary%': '2', # 2 = /MD (nondebug DLL)
1248 'win_debug_RuntimeLibrary%': '3', # 3 = /MDd (debug DLL) 1257 'win_debug_RuntimeLibrary%': '3', # 3 = /MDd (debug DLL)
1249 }, { 1258 }, {
1250 # See http://msdn.microsoft.com/en-us/library/aa652367.aspx 1259 # See http://msdn.microsoft.com/en-us/library/aa652367.aspx
1251 'win_release_RuntimeLibrary%': '0', # 0 = /MT (nondebug static) 1260 'win_release_RuntimeLibrary%': '0', # 0 = /MT (nondebug static)
1252 'win_debug_RuntimeLibrary%': '1', # 1 = /MTd (debug static) 1261 'win_debug_RuntimeLibrary%': '1', # 1 = /MTd (debug static)
1253 }], 1262 }],
1263 ['OS=="ios"', {
1264 # See http://gcc.gnu.org/onlinedocs/gcc-4.4.2/gcc/Optimize-Options.htm l
1265 'mac_release_optimization%': 's', # Use -Os unless overridden
1266 'mac_debug_optimization%': '0', # Use -O0 unless overridden
1267 }, {
1268 # See http://gcc.gnu.org/onlinedocs/gcc-4.4.2/gcc/Optimize-Options.htm l
1269 'mac_release_optimization%': '3', # Use -O3 unless overridden
1270 'mac_debug_optimization%': '0', # Use -O0 unless overridden
1271 }],
1254 ], 1272 ],
1255 }, 1273 },
1256 'conditions': [ 1274 'conditions': [
1257 ['OS=="win" and "<(msbuild_toolset)"!=""', { 1275 ['OS=="win" and "<(msbuild_toolset)"!=""', {
1258 'msbuild_toolset': '<(msbuild_toolset)', 1276 'msbuild_toolset': '<(msbuild_toolset)',
1259 }], 1277 }],
1260 ['branding=="Chrome"', { 1278 ['branding=="Chrome"', {
1261 'defines': ['GOOGLE_CHROME_BUILD'], 1279 'defines': ['GOOGLE_CHROME_BUILD'],
1262 }, { # else: branding!="Chrome" 1280 }, { # else: branding!="Chrome"
1263 'defines': ['CHROMIUM_BUILD'], 1281 'defines': ['CHROMIUM_BUILD'],
(...skipping 263 matching lines...) Expand 10 before | Expand all | Expand 10 after
1527 'xcode_settings': { 1545 'xcode_settings': {
1528 'WARNING_CFLAGS': [ 1546 'WARNING_CFLAGS': [
1529 '-Wexit-time-destructors', 1547 '-Wexit-time-destructors',
1530 ], 1548 ],
1531 }, 1549 },
1532 }], 1550 }],
1533 ], 1551 ],
1534 }], 1552 }],
1535 ['chromium_code==0', { 1553 ['chromium_code==0', {
1536 'conditions': [ 1554 'conditions': [
1537 [ 'os_posix==1 and OS!="mac"', { 1555 [ 'os_posix==1 and OS!="mac" and OS!="ios"', {
1538 # We don't want to get warnings from third-party code, 1556 # We don't want to get warnings from third-party code,
1539 # so remove any existing warning-enabling flags like -Wall. 1557 # so remove any existing warning-enabling flags like -Wall.
1540 'cflags!': [ 1558 'cflags!': [
1541 '-Wall', 1559 '-Wall',
1542 '-Wextra', 1560 '-Wextra',
1543 '-Werror', 1561 '-Werror',
1544 ], 1562 ],
1545 'cflags_cc': [ 1563 'cflags_cc': [
1546 # Don't warn about hash_map in third-party code. 1564 # Don't warn about hash_map in third-party code.
1547 '-Wno-deprecated', 1565 '-Wno-deprecated',
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
1581 'Detect64BitPortabilityProblems': 'false', 1599 'Detect64BitPortabilityProblems': 'false',
1582 }, 1600 },
1583 }, 1601 },
1584 }], 1602 }],
1585 # TODO(darin): Unfortunately, some third_party code depends on base/ 1603 # TODO(darin): Unfortunately, some third_party code depends on base/
1586 [ 'OS=="win" and component=="shared_library"', { 1604 [ 'OS=="win" and component=="shared_library"', {
1587 'msvs_disabled_warnings': [ 1605 'msvs_disabled_warnings': [
1588 4251, # class 'std::xx' needs to have dll-interface. 1606 4251, # class 'std::xx' needs to have dll-interface.
1589 ], 1607 ],
1590 }], 1608 }],
1591 [ 'OS=="mac"', { 1609 [ 'OS=="mac" or OS=="ios"', {
1592 'xcode_settings': { 1610 'xcode_settings': {
1593 'WARNING_CFLAGS!': ['-Wall', '-Wextra'], 1611 'WARNING_CFLAGS!': ['-Wall', '-Wextra'],
1594 }, 1612 },
1595 'conditions': [ 1613 'conditions': [
1596 ['buildtype=="Official"', { 1614 ['buildtype=="Official"', {
1597 'xcode_settings': { 1615 'xcode_settings': {
1598 'GCC_TREAT_WARNINGS_AS_ERRORS': 'NO', # -Werror 1616 'GCC_TREAT_WARNINGS_AS_ERRORS': 'NO', # -Werror
1599 }, 1617 },
1600 }], 1618 }],
1601 ], 1619 ],
1602 }], 1620 }],
1621 [ 'OS=="ios"', {
1622 'xcode_settings': {
1623 'RUN_CLANG_STATIC_ANALYZER': 'NO',
1624 },
1625 }],
1603 ], 1626 ],
1604 }, { 1627 }, {
1605 'includes': [ 1628 'includes': [
1606 # Rules for excluding e.g. foo_win.cc from the build on non-Windows. 1629 # Rules for excluding e.g. foo_win.cc from the build on non-Windows.
1607 'filename_rules.gypi', 1630 'filename_rules.gypi',
1608 ], 1631 ],
1609 # In Chromium code, we define __STDC_FORMAT_MACROS in order to get the 1632 # In Chromium code, we define __STDC_FORMAT_MACROS in order to get the
1610 # C99 macros on Mac and Linux. 1633 # C99 macros on Mac and Linux.
1611 'defines': [ 1634 'defines': [
1612 '__STDC_FORMAT_MACROS', 1635 '__STDC_FORMAT_MACROS',
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after
1747 'conditions': [ 1770 'conditions': [
1748 ['OS=="linux"', { 1771 ['OS=="linux"', {
1749 'target_conditions': [ 1772 'target_conditions': [
1750 ['_toolset=="target"', { 1773 ['_toolset=="target"', {
1751 'cflags': [ 1774 'cflags': [
1752 '<@(debug_extra_cflags)', 1775 '<@(debug_extra_cflags)',
1753 ], 1776 ],
1754 }], 1777 }],
1755 ], 1778 ],
1756 }], 1779 }],
1757 ['release_valgrind_build==0', { 1780 # Disabled on iOS because it was causing a crash on startup.
1781 # TODO(michelea): investigate, create a reduced test and possibly
1782 # submit a radar.
1783 ['release_valgrind_build==0 and OS!="ios"', {
1758 'xcode_settings': { 1784 'xcode_settings': {
1759 'OTHER_CFLAGS': [ 1785 'OTHER_CFLAGS': [
1760 '-fstack-protector-all', # Implies -fstack-protector 1786 '-fstack-protector-all', # Implies -fstack-protector
1761 ], 1787 ],
1762 }, 1788 },
1763 }], 1789 }],
1764 ], 1790 ],
1765 }, 1791 },
1766 'Release_Base': { 1792 'Release_Base': {
1767 'abstract': 1, 1793 'abstract': 1,
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
1868 'inherit_from': ['Common_Base', 'x64_Base', 'Debug_Base'], 1894 'inherit_from': ['Common_Base', 'x64_Base', 'Debug_Base'],
1869 }, 1895 },
1870 'Release_x64': { 1896 'Release_x64': {
1871 'inherit_from': ['Common_Base', 'x64_Base', 'Release_Base'], 1897 'inherit_from': ['Common_Base', 'x64_Base', 'Release_Base'],
1872 }, 1898 },
1873 }], 1899 }],
1874 ], 1900 ],
1875 }, 1901 },
1876 }, 1902 },
1877 'conditions': [ 1903 'conditions': [
1878 ['os_posix==1 and OS!="mac"', { 1904 ['os_posix==1 and OS!="mac" and OS!="ios"', {
1879 'target_defaults': { 1905 'target_defaults': {
1880 # Enable -Werror by default, but put it in a variable so it can 1906 # Enable -Werror by default, but put it in a variable so it can
1881 # be disabled in ~/.gyp/include.gypi on the valgrind builders. 1907 # be disabled in ~/.gyp/include.gypi on the valgrind builders.
1882 'variables': { 1908 'variables': {
1883 'werror%': '-Werror', 1909 'werror%': '-Werror',
1884 » 'libraries_for_target%': '', 1910 'libraries_for_target%': '',
1885 }, 1911 },
1886 'defines': [ 1912 'defines': [
1887 '_FILE_OFFSET_BITS=64', 1913 '_FILE_OFFSET_BITS=64',
1888 ], 1914 ],
1889 'cflags': [ 1915 'cflags': [
1890 '<(werror)', # See note above about the werror variable. 1916 '<(werror)', # See note above about the werror variable.
1891 '-pthread', 1917 '-pthread',
1892 '-fno-exceptions', 1918 '-fno-exceptions',
1893 '-fno-strict-aliasing', # See http://crbug.com/32204 1919 '-fno-strict-aliasing', # See http://crbug.com/32204
1894 '-Wall', 1920 '-Wall',
(...skipping 16 matching lines...) Expand all
1911 '-fvisibility-inlines-hidden', 1937 '-fvisibility-inlines-hidden',
1912 # GCC turns on -Wsign-compare for C++ under -Wall, but clang doesn't, 1938 # GCC turns on -Wsign-compare for C++ under -Wall, but clang doesn't,
1913 # so we specify it explicitly. 1939 # so we specify it explicitly.
1914 # TODO(fischman): remove this if http://llvm.org/PR10448 obsoletes it. 1940 # TODO(fischman): remove this if http://llvm.org/PR10448 obsoletes it.
1915 # http://code.google.com/p/chromium/issues/detail?id=90453 1941 # http://code.google.com/p/chromium/issues/detail?id=90453
1916 '-Wsign-compare', 1942 '-Wsign-compare',
1917 ], 1943 ],
1918 'ldflags': [ 1944 'ldflags': [
1919 '-pthread', '-Wl,-z,noexecstack', 1945 '-pthread', '-Wl,-z,noexecstack',
1920 ], 1946 ],
1921 » 'libraries' : [ 1947 'libraries' : [
1922 » '<(libraries_for_target)', 1948 '<(libraries_for_target)',
1923 » ], 1949 ],
1924 'configurations': { 1950 'configurations': {
1925 'Debug_Base': { 1951 'Debug_Base': {
1926 'variables': { 1952 'variables': {
1927 'debug_optimize%': '0', 1953 'debug_optimize%': '0',
1928 }, 1954 },
1929 'defines': [ 1955 'defines': [
1930 '_DEBUG', 1956 '_DEBUG',
1931 ], 1957 ],
1932 'cflags': [ 1958 'cflags': [
1933 '-O>(debug_optimize)', 1959 '-O>(debug_optimize)',
(...skipping 631 matching lines...) Expand 10 before | Expand all | Expand 10 after
2565 ['exclude', '(^|/)android/'] 2591 ['exclude', '(^|/)android/']
2566 ], 2592 ],
2567 }], 2593 }],
2568 ], 2594 ],
2569 }, 2595 },
2570 }], 2596 }],
2571 ['OS=="solaris"', { 2597 ['OS=="solaris"', {
2572 'cflags!': ['-fvisibility=hidden'], 2598 'cflags!': ['-fvisibility=hidden'],
2573 'cflags_cc!': ['-fvisibility-inlines-hidden'], 2599 'cflags_cc!': ['-fvisibility-inlines-hidden'],
2574 }], 2600 }],
2575 ['OS=="mac"', { 2601 ['OS=="mac" or OS=="ios"', {
2576 'target_defaults': { 2602 'target_defaults': {
2577 'variables': {
2578 # These should end with %, but there seems to be a bug with % in
2579 # variables that are intended to be set to different values in
2580 # different targets, like these.
2581 'mac_pie': 1, # Most executables can be position-independent.
2582 'mac_real_dsym': 0, # Fake .dSYMs are fine in most cases.
2583 # Strip debugging symbols from the target.
2584 'mac_strip': '<(mac_strip_release)',
2585 },
2586 'mac_bundle': 0, 2603 'mac_bundle': 0,
2587 'xcode_settings': { 2604 'xcode_settings': {
2588 'ALWAYS_SEARCH_USER_PATHS': 'NO', 2605 'ALWAYS_SEARCH_USER_PATHS': 'NO',
2589 'GCC_C_LANGUAGE_STANDARD': 'c99', # -std=c99 2606 'GCC_C_LANGUAGE_STANDARD': 'c99', # -std=c99
2590 'GCC_CW_ASM_SYNTAX': 'NO', # No -fasm-blocks 2607 'GCC_CW_ASM_SYNTAX': 'NO', # No -fasm-blocks
2591 'GCC_DYNAMIC_NO_PIC': 'NO', # No -mdynamic-no-pic
2592 # (Equivalent to -fPIC)
2593 'GCC_ENABLE_CPP_EXCEPTIONS': 'NO', # -fno-exceptions 2608 'GCC_ENABLE_CPP_EXCEPTIONS': 'NO', # -fno-exceptions
2594 'GCC_ENABLE_CPP_RTTI': 'NO', # -fno-rtti 2609 'GCC_ENABLE_CPP_RTTI': 'NO', # -fno-rtti
2595 'GCC_ENABLE_PASCAL_STRINGS': 'NO', # No -mpascal-strings 2610 'GCC_ENABLE_PASCAL_STRINGS': 'NO', # No -mpascal-strings
2596 # GCC_INLINES_ARE_PRIVATE_EXTERN maps to -fvisibility-inlines-hidden 2611 # GCC_INLINES_ARE_PRIVATE_EXTERN maps to -fvisibility-inlines-hidden
2597 'GCC_INLINES_ARE_PRIVATE_EXTERN': 'YES', 2612 'GCC_INLINES_ARE_PRIVATE_EXTERN': 'YES',
2598 'GCC_OBJC_CALL_CXX_CDTORS': 'YES', # -fobjc-call-cxx-cdtors 2613 'GCC_OBJC_CALL_CXX_CDTORS': 'YES', # -fobjc-call-cxx-cdtors
2599 'GCC_SYMBOLS_PRIVATE_EXTERN': 'YES', # -fvisibility=hidden 2614 'GCC_SYMBOLS_PRIVATE_EXTERN': 'YES', # -fvisibility=hidden
2600 'GCC_THREADSAFE_STATICS': 'NO', # -fno-threadsafe-statics 2615 'GCC_THREADSAFE_STATICS': 'NO', # -fno-threadsafe-statics
2601 'GCC_TREAT_WARNINGS_AS_ERRORS': 'YES', # -Werror 2616 'GCC_TREAT_WARNINGS_AS_ERRORS': 'YES', # -Werror
2602 'GCC_VERSION': '4.2', 2617 'GCC_VERSION': '4.2',
2603 'GCC_WARN_ABOUT_MISSING_NEWLINE': 'YES', # -Wnewline-eof 2618 'GCC_WARN_ABOUT_MISSING_NEWLINE': 'YES', # -Wnewline-eof
2604 # MACOSX_DEPLOYMENT_TARGET maps to -mmacosx-version-min
2605 'MACOSX_DEPLOYMENT_TARGET': '<(mac_deployment_target)',
2606 # Keep pch files below xcodebuild/.
2607 'SHARED_PRECOMPS_DIR': '$(CONFIGURATION_BUILD_DIR)/SharedPrecompiledHe aders',
2608 'USE_HEADERMAP': 'NO', 2619 'USE_HEADERMAP': 'NO',
2609 'OTHER_CFLAGS': [
2610 '-fno-strict-aliasing', # See http://crbug.com/32204
2611 ],
2612 'WARNING_CFLAGS': [ 2620 'WARNING_CFLAGS': [
2613 '-Wall', 2621 '-Wall',
2614 '-Wendif-labels', 2622 '-Wendif-labels',
2615 '-Wextra', 2623 '-Wextra',
2616 # Don't warn about unused function parameters. 2624 # Don't warn about unused function parameters.
2617 '-Wno-unused-parameter', 2625 '-Wno-unused-parameter',
2618 # Don't warn about the "struct foo f = {0};" initialization 2626 # Don't warn about the "struct foo f = {0};" initialization
2619 # pattern. 2627 # pattern.
2620 '-Wno-missing-field-initializers', 2628 '-Wno-missing-field-initializers',
2621 ], 2629 ],
2622 'conditions': [ 2630 'conditions': [
2623 ['chromium_mac_pch', {'GCC_PRECOMPILE_PREFIX_HEADER': 'YES'}, 2631 ['chromium_mac_pch', {'GCC_PRECOMPILE_PREFIX_HEADER': 'YES'},
2624 {'GCC_PRECOMPILE_PREFIX_HEADER': 'NO'} 2632 {'GCC_PRECOMPILE_PREFIX_HEADER': 'NO'}
2625 ], 2633 ],
2634 ],
2635 },
2636 'target_conditions': [
2637 ['_type!="static_library"', {
2638 'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-search_paths_first']},
2639 }],
2640 ['_mac_bundle', {
2641 'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-ObjC']},
2642 }],
2643 ], # target_conditions
2644 }, # target_defaults
2645 }], # OS=="mac" or OS=="ios"
2646 ['OS=="mac"', {
2647 'target_defaults': {
2648 'variables': {
2649 # These should end with %, but there seems to be a bug with % in
2650 # variables that are intended to be set to different values in
2651 # different targets, like these.
2652 'mac_pie': 1, # Most executables can be position-independent.
2653 'mac_real_dsym': 0, # Fake .dSYMs are fine in most cases.
2654 # Strip debugging symbols from the target.
2655 'mac_strip': '<(mac_strip_release)',
2656 },
2657 'xcode_settings': {
2658 'GCC_DYNAMIC_NO_PIC': 'NO', # No -mdynamic-no-pic
2659 # (Equivalent to -fPIC)
2660 # MACOSX_DEPLOYMENT_TARGET maps to -mmacosx-version-min
2661 'MACOSX_DEPLOYMENT_TARGET': '<(mac_deployment_target)',
2662 # Keep pch files below xcodebuild/.
2663 'SHARED_PRECOMPS_DIR': '$(CONFIGURATION_BUILD_DIR)/SharedPrecompiledHe aders',
2664 'OTHER_CFLAGS': [
2665 '-fno-strict-aliasing', # See http://crbug.com/32204
2666 ],
2667 'conditions': [
2626 ['clang==1', { 2668 ['clang==1', {
2627 'CC': '$(SOURCE_ROOT)/<(clang_dir)/clang', 2669 'CC': '$(SOURCE_ROOT)/<(clang_dir)/clang',
2628 'LDPLUSPLUS': '$(SOURCE_ROOT)/<(clang_dir)/clang++', 2670 'LDPLUSPLUS': '$(SOURCE_ROOT)/<(clang_dir)/clang++',
2629 2671
2630 # Don't use -Wc++0x-extensions, which Xcode 4 enables by default 2672 # Don't use -Wc++0x-extensions, which Xcode 4 enables by default
2631 # when buliding with clang. This warning is triggered when the 2673 # when buliding with clang. This warning is triggered when the
2632 # override keyword is used via the OVERRIDE macro from 2674 # override keyword is used via the OVERRIDE macro from
2633 # base/compiler_specific.h. 2675 # base/compiler_specific.h.
2634 'CLANG_WARN_CXX0X_EXTENSIONS': 'NO', 2676 'CLANG_WARN_CXX0X_EXTENSIONS': 'NO',
2635 2677
(...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after
2818 'action': ['<(strip_from_xcode_path)'], 2860 'action': ['<(strip_from_xcode_path)'],
2819 }, 2861 },
2820 ], # postbuilds 2862 ], # postbuilds
2821 }], # mac_real_dsym 2863 }], # mac_real_dsym
2822 ], # target_conditions 2864 ], # target_conditions
2823 }], # (_type=="executable" or _type=="shared_library" or 2865 }], # (_type=="executable" or _type=="shared_library" or
2824 # _type=="loadable_module") and mac_strip!=0 2866 # _type=="loadable_module") and mac_strip!=0
2825 ], # target_conditions 2867 ], # target_conditions
2826 }, # target_defaults 2868 }, # target_defaults
2827 }], # OS=="mac" 2869 }], # OS=="mac"
2870 ['OS=="ios"', {
2871 'target_defaults': {
2872 'xcode_settings' : {
2873 'GCC_VERSION': 'com.apple.compilers.llvm.clang.1_0',
2874
2875 # This next block is mostly common with the 'mac' section above,
2876 # but keying off (or setting) 'clang' isn't valid for iOS as it
2877 # also seems to mean using the custom build of clang.
2878
2879 # Don't use -Wc++0x-extensions, which Xcode 4 enables by default
2880 # when buliding with clang. This warning is triggered when the
2881 # override keyword is used via the OVERRIDE macro from
2882 # base/compiler_specific.h.
2883 'CLANG_WARN_CXX0X_EXTENSIONS': 'NO',
2884 'WARNING_CFLAGS': [
2885 '-Wheader-hygiene',
2886 # Don't die on dtoa code that uses a char as an array index.
2887 # This is required solely for base/third_party/dmg_fp/dtoa.cc.
2888 '-Wno-char-subscripts',
2889 # Clang spots more unused functions.
2890 '-Wno-unused-function',
2891 # See comments on this flag higher up in this file.
2892 '-Wno-unnamed-type-template-args',
2893 # This (rightyfully) complains about 'override', which we use
2894 # heavily.
2895 '-Wno-c++11-extensions',
2896 ],
2897 },
2898 'target_conditions': [
2899 ['_type=="executable"', {
2900 'configurations': {
2901 'Release_Base': {
2902 'xcode_settings': {
2903 'DEPLOYMENT_POSTPROCESSING': 'YES',
2904 'STRIP_INSTALLED_PRODUCT': 'YES',
2905 },
2906 },
2907 },
2908 'xcode_settings': {
2909 'conditions': [
2910 ['chromium_ios_signing', {
2911 # iOS SDK wants everything for device signed.
2912 'CODE_SIGN_IDENTITY[sdk=iphoneos*]': 'iPhone Developer',
2913 }, {
2914 'CODE_SIGNING_REQUIRED': 'NO',
2915 'CODE_SIGN_IDENTITY[sdk=iphoneos*]': '',
2916 }],
2917 ],
2918 },
2919 }],
2920 ], # target_conditions
2921 }, # target_defaults
2922 }], # OS=="ios"
2828 ['OS=="win"', { 2923 ['OS=="win"', {
2829 'target_defaults': { 2924 'target_defaults': {
2830 'defines': [ 2925 'defines': [
2831 '_WIN32_WINNT=0x0601', 2926 '_WIN32_WINNT=0x0601',
2832 'WINVER=0x0601', 2927 'WINVER=0x0601',
2833 'WIN32', 2928 'WIN32',
2834 '_WINDOWS', 2929 '_WINDOWS',
2835 'NOMINMAX', 2930 'NOMINMAX',
2836 'PSAPI_VERSION=1', 2931 'PSAPI_VERSION=1',
2837 '_CRT_RAND_S', 2932 '_CRT_RAND_S',
(...skipping 266 matching lines...) Expand 10 before | Expand all | Expand 10 after
3104 ['LINK.host', '<!(which g++)'], 3199 ['LINK.host', '<!(which g++)'],
3105 ], 3200 ],
3106 }], 3201 }],
3107 ], 3202 ],
3108 'xcode_settings': { 3203 'xcode_settings': {
3109 # DON'T ADD ANYTHING NEW TO THIS BLOCK UNLESS YOU REALLY REALLY NEED IT! 3204 # DON'T ADD ANYTHING NEW TO THIS BLOCK UNLESS YOU REALLY REALLY NEED IT!
3110 # This block adds *project-wide* configuration settings to each project 3205 # This block adds *project-wide* configuration settings to each project
3111 # file. It's almost always wrong to put things here. Specify your 3206 # file. It's almost always wrong to put things here. Specify your
3112 # custom xcode_settings in target_defaults to add them to targets instead. 3207 # custom xcode_settings in target_defaults to add them to targets instead.
3113 3208
3114 # In an Xcode Project Info window, the "Base SDK for All Configurations" 3209 'conditions': [
3115 # setting sets the SDK on a project-wide basis. In order to get the 3210 ['OS=="mac"', {
3116 # configured SDK to show properly in the Xcode UI, SDKROOT must be set 3211 # In an Xcode Project Info window, the "Base SDK for All Configurations"
3117 # here at the project level. 3212 # setting sets the SDK on a project-wide basis. In order to get the
3118 'SDKROOT': 'macosx<(mac_sdk)', # -isysroot 3213 # configured SDK to show properly in the Xcode UI, SDKROOT must be set
3214 # here at the project level.
3215 'SDKROOT': 'macosx<(mac_sdk)', # -isysroot
3216 }],
3217 ['OS=="ios"', {
3218 # Just build armv7 since iOS 4.3+ only supports armv7.
3219 'ARCHS': '$(ARCHS_UNIVERSAL_IPHONE_OS)',
3220 'IPHONEOS_DEPLOYMENT_TARGET': '<(ios_deployment_target)',
3221 'SDKROOT': 'iphoneos<(ios_sdk)', # -isysroot
3222 # Target both iPhone and iPad.
3223 'TARGETED_DEVICE_FAMILY': '1,2',
3224 }],
3225 ],
3119 3226
3120 # The Xcode generator will look for an xcode_settings section at the root 3227 # The Xcode generator will look for an xcode_settings section at the root
3121 # of each dict and use it to apply settings on a file-wide basis. Most 3228 # of each dict and use it to apply settings on a file-wide basis. Most
3122 # settings should not be here, they should be in target-specific 3229 # settings should not be here, they should be in target-specific
3123 # xcode_settings sections, or better yet, should use non-Xcode-specific 3230 # xcode_settings sections, or better yet, should use non-Xcode-specific
3124 # settings in target dicts. SYMROOT is a special case, because many other 3231 # settings in target dicts. SYMROOT is a special case, because many other
3125 # Xcode variables depend on it, including variables such as 3232 # Xcode variables depend on it, including variables such as
3126 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something 3233 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something
3127 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the 3234 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the
3128 # files to appear (when present) in the UI as actual files and not red 3235 # files to appear (when present) in the UI as actual files and not red
3129 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, 3236 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR,
3130 # and therefore SYMROOT, needs to be set at the project level. 3237 # and therefore SYMROOT, needs to be set at the project level.
3131 'SYMROOT': '<(DEPTH)/xcodebuild', 3238 'SYMROOT': '<(DEPTH)/xcodebuild',
3132 }, 3239 },
3133 } 3240 }
OLDNEW
« no previous file with comments | « build/build_config.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698