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

Side by Side Diff: build/common.gypi

Issue 160538: Move the entire application into a dylib (framework) (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 11 years, 4 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | build/mac/dump_app_syms » ('j') | 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) 2009 The Chromium Authors. All rights reserved. 1 # Copyright (c) 2009 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 { 5 {
6 'variables': { 6 'variables': {
7 # .gyp files should set chromium_code to 1 if they build Chromium-specific 7 # .gyp files should set chromium_code to 1 if they build Chromium-specific
8 # code, as opposed to external code. This variable is used to control 8 # code, as opposed to external code. This variable is used to control
9 # such things as the set of warnings to enable, and whether warnings are 9 # such things as the set of warnings to enable, and whether warnings are
10 # treated as errors. 10 # treated as errors.
11 'chromium_code%': 0, 11 'chromium_code%': 0,
12 12
13 # Variables expected to be overriden on the GYP command line (-D) or by 13 # Variables expected to be overriden on the GYP command line (-D) or by
14 # ~/.gyp/include.gypi. 14 # ~/.gyp/include.gypi.
15 15
16 # Putting a variables dict inside another variables dict looks kind of
17 # weird. This is done so that "branding" and "buildtype" are defined as
18 # variables within the outer variables dict here. This is necessary
19 # to get these variables defined for the conditions within this variables
20 # dict that operate on these variables.
21 'variables': {
22 # Override branding to select the desired branding flavor.
23 'branding%': 'Chromium',
24
25 # Override buildtype to select the desired build flavor.
26 # Dev - everyday build for development/testing
27 # Official - release build (generally implies additional processing)
28 # TODO(mmoss) Once 'buildtype' is fully supported (e.g. Windows gyp
29 # conversion is done), some of the things which are now controlled by
30 # 'branding', such as symbol generation, will need to be refactored based
31 # on 'buildtype' (i.e. we don't care about saving symbols for non-Official
32 # builds).
33 'buildtype%': 'Dev',
34 },
35
36 # Define branding and buildtype on the basis of their settings within the
37 # variables sub-dict above, unless overridden.
38 'branding%': '<(branding)',
39 'buildtype%': '<(buildtype)',
40
16 # Override chromium_mac_pch and set it to 0 to suppress the use of 41 # Override chromium_mac_pch and set it to 0 to suppress the use of
17 # precompiled headers on the Mac. Prefix header injection may still be 42 # precompiled headers on the Mac. Prefix header injection may still be
18 # used, but prefix headers will not be precompiled. This is useful when 43 # used, but prefix headers will not be precompiled. This is useful when
19 # using distcc to distribute a build to compile slaves that don't 44 # using distcc to distribute a build to compile slaves that don't
20 # share the same compiler executable as the system driving the compilation, 45 # share the same compiler executable as the system driving the compilation,
21 # because precompiled headers rely on pointers into a specific compiler 46 # because precompiled headers rely on pointers into a specific compiler
22 # executable's image. Setting this to 0 is needed to use an experimental 47 # executable's image. Setting this to 0 is needed to use an experimental
23 # Linux-Mac cross compiler distcc farm. 48 # Linux-Mac cross compiler distcc farm.
24 'chromium_mac_pch%': 1, 49 'chromium_mac_pch%': 1,
25 50
26 # Override branding to select the desired branding flavor.
27 'branding%': 'Chromium',
28
29 # Override buildtype to select the desired build flavor.
30 # Dev - everyday build for development/testing
31 # Official - release build (generally implies additional processing)
32 # TODO(mmoss) Once 'buildtype' is fully supported (e.g. Windows gyp
33 # conversion is done), some of the things which are now controlled by
34 # 'branding', such as symbol generation, will need to be refactored based
35 # on 'buildtype' (i.e. we don't care about saving symbols for non-Official
36 # builds).
37 'buildtype%': 'Dev',
38
39 # Set to 1 to enable code coverage. In addition to build changes 51 # Set to 1 to enable code coverage. In addition to build changes
40 # (e.g. extra CFLAGS), also creates a new target in the src/chrome 52 # (e.g. extra CFLAGS), also creates a new target in the src/chrome
41 # project file called "coverage". 53 # project file called "coverage".
42 # Currently ignored on Windows. 54 # Currently ignored on Windows.
43 'coverage%': 0, 55 'coverage%': 0,
44 56
45 # Overridable specification for potential use of alternative 57 # Overridable specification for potential use of alternative
46 # JavaScript engines. 58 # JavaScript engines.
47 'javascript_engine%': 'v8', 59 'javascript_engine%': 'v8',
48 60
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
97 # sandbox the zygote process and, thus, all renderer processes. 109 # sandbox the zygote process and, thus, all renderer processes.
98 'linux_sandbox_path%': '', 110 'linux_sandbox_path%': '',
99 111
100 # If |linux_suid_sandbox_restrictions|, above, is 'Path' then only a single 112 # If |linux_suid_sandbox_restrictions|, above, is 'Path' then only a single
101 # path is allowed to be exec'ed by the sandbox for security reasons. That 113 # path is allowed to be exec'ed by the sandbox for security reasons. That
102 # path is set here. It should be the final location of the Chromium binary 114 # path is set here. It should be the final location of the Chromium binary
103 # on the system. 115 # on the system.
104 'linux_sandbox_chrome_path%': '/opt/google/chrome/chrome', 116 'linux_sandbox_chrome_path%': '/opt/google/chrome/chrome',
105 117
106 'conditions': [ 118 'conditions': [
119 ['OS=="mac"', {
120 'conditions': [
121 # mac_product_name is set to the name of the .app bundle as it should
122 # appear on disk. This duplicates data from
123 # chrome/app/theme/chromium/BRANDING and
124 # chrome/app/theme/google_chrome/BRANDING, but is necessary to get
125 # these names into the build system.
126 ['branding=="Chrome"', {
127 'mac_product_name%': 'Google Chrome',
128 }, { # else: branding!="Chrome"
129 'mac_product_name%': 'Chromium',
130 }],
131
132 # Feature variables for enabling Mac Breakpad and Keystone auto-update
133 # support. Both features are on by default in official builds with
134 # Chrome branding.
135 ['branding=="Chrome" and buildtype=="Official"', {
136 'mac_breakpad%': 1,
137 'mac_keystone%': 1,
138 }, { # else: branding!="Chrome" or buildtype!="Official"
139 'mac_breakpad%': 0,
140 'mac_keystone%': 0,
141 }],
142 ],
143 }], # OS=="mac"
107 # Whether to use multiple cores to compile with visual studio. This is 144 # Whether to use multiple cores to compile with visual studio. This is
108 # optional because it sometimes causes corruption on VS 2005. 145 # optional because it sometimes causes corruption on VS 2005.
109 # It is on by default on VS 2008 and off on VS 2005. 146 # It is on by default on VS 2008 and off on VS 2005.
110 ['OS=="win"', { 147 ['OS=="win"', {
111 'conditions': [ 148 'conditions': [
112 ['MSVS_VERSION=="2005"', { 149 ['MSVS_VERSION=="2005"', {
113 'msvs_multi_core_compile%': 0, 150 'msvs_multi_core_compile%': 0,
114 },{ 151 },{
115 'msvs_multi_core_compile%': 1, 152 'msvs_multi_core_compile%': 1,
116 }], 153 }],
(...skipping 390 matching lines...) Expand 10 before | Expand all | Expand 10 after
507 {'GCC_PRECOMPILE_PREFIX_HEADER': 'NO'}], 544 {'GCC_PRECOMPILE_PREFIX_HEADER': 'NO'}],
508 ], 545 ],
509 }, 546 },
510 'target_conditions': [ 547 'target_conditions': [
511 ['_type!="static_library"', { 548 ['_type!="static_library"', {
512 'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-search_paths_first']}, 549 'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-search_paths_first']},
513 }], 550 }],
514 ['_mac_bundle', { 551 ['_mac_bundle', {
515 'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-ObjC']}, 552 'xcode_settings': {'OTHER_LDFLAGS': ['-Wl,-ObjC']},
516 }], 553 }],
517 ['_type=="executable"', { 554 ['_type=="executable" or _type=="shared_library"', {
518 'target_conditions': [ 555 'target_conditions': [
519 ['mac_real_dsym == 1', { 556 ['mac_real_dsym == 1', {
520 # To get a real .dSYM bundle produced by dsymutil, set the 557 # To get a real .dSYM bundle produced by dsymutil, set the
521 # debug information format to dwarf-with-dsym. Since 558 # debug information format to dwarf-with-dsym. Since
522 # strip_from_xcode will not be used, set Xcode to do the 559 # strip_from_xcode will not be used, set Xcode to do the
523 # stripping as well. 560 # stripping as well.
524 'configurations': { 561 'configurations': {
525 'Release': { 562 'Release': {
526 'xcode_settings': { 563 'xcode_settings': {
527 'DEBUG_INFORMATION_FORMAT': 'dwarf-with-dsym', 564 'DEBUG_INFORMATION_FORMAT': 'dwarf-with-dsym',
528 'DEPLOYMENT_POSTPROCESSING': 'YES', 565 'DEPLOYMENT_POSTPROCESSING': 'YES',
529 'STRIP_INSTALLED_PRODUCT': 'YES', 566 'STRIP_INSTALLED_PRODUCT': 'YES',
530 }, 567 'target_conditions': [
531 }, 568 ['_type=="shared_library"', {
532 }, 569 # The Xcode default is to strip debugging symbols
570 # only (-S). Local symbols should be stripped as
571 # well, which will be handled by -x. Xcode will
572 # continue to insert -S when stripping even when
573 # additional flags are added with STRIPFLAGS.
574 'STRIPFLAGS': '-x',
575 }], # _type=="shared_library"
576 ], # target_conditions
577 }, # xcode_settings
578 }, # configuration "Release"
579 }, # configurations
533 }, { # mac_real_dsym != 1 580 }, { # mac_real_dsym != 1
534 # To get a fast fake .dSYM bundle, use a post-build step to 581 # To get a fast fake .dSYM bundle, use a post-build step to
535 # produce the .dSYM and strip the executable. strip_from_xcode 582 # produce the .dSYM and strip the executable. strip_from_xcode
536 # only operates in the Release configuration. 583 # only operates in the Release configuration.
537 'postbuilds': [ 584 'postbuilds': [
538 { 585 {
539 'variables': { 586 'variables': {
540 # Define strip_from_xcode in a variable ending in _path 587 # Define strip_from_xcode in a variable ending in _path
541 # so that gyp understands it's a path and performs proper 588 # so that gyp understands it's a path and performs proper
542 # relativization during dict merging. 589 # relativization during dict merging.
543 'strip_from_xcode_path': 'mac/strip_from_xcode', 590 'strip_from_xcode_path': 'mac/strip_from_xcode',
544 }, 591 },
545 'postbuild_name': 'Strip If Needed', 592 'postbuild_name': 'Strip If Needed',
546 'action': ['<(strip_from_xcode_path)'], 593 'action': ['<(strip_from_xcode_path)'],
547 }, 594 },
548 ], 595 ], # postbuilds
549 }], 596 }], # mac_real_dsym
550 ], 597 ], # target_conditions
551 }], 598 }], # _type=="executable" or _type=="shared_library"
552 ], 599 ], # target_conditions
553 }, 600 }, # target_defaults
554 }], 601 }], # OS=="mac"
555 ['OS=="win"', { 602 ['OS=="win"', {
556 'target_defaults': { 603 'target_defaults': {
557 'defines': [ 604 'defines': [
558 '_WIN32_WINNT=0x0600', 605 '_WIN32_WINNT=0x0600',
559 'WINVER=0x0600', 606 'WINVER=0x0600',
560 'WIN32', 607 'WIN32',
561 '_WINDOWS', 608 '_WINDOWS',
562 '_HAS_EXCEPTIONS=0', 609 '_HAS_EXCEPTIONS=0',
563 'NOMINMAX', 610 'NOMINMAX',
564 '_CRT_RAND_S', 611 '_CRT_RAND_S',
(...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after
677 # settings in target dicts. SYMROOT is a special case, because many other 724 # settings in target dicts. SYMROOT is a special case, because many other
678 # Xcode variables depend on it, including variables such as 725 # Xcode variables depend on it, including variables such as
679 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something 726 # PROJECT_DERIVED_FILE_DIR. When a source group corresponding to something
680 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the 727 # like PROJECT_DERIVED_FILE_DIR is added to a project, in order for the
681 # files to appear (when present) in the UI as actual files and not red 728 # files to appear (when present) in the UI as actual files and not red
682 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR, 729 # red "missing file" proxies, the correct path to PROJECT_DERIVED_FILE_DIR,
683 # and therefore SYMROOT, needs to be set at the project level. 730 # and therefore SYMROOT, needs to be set at the project level.
684 'SYMROOT': '<(DEPTH)/xcodebuild', 731 'SYMROOT': '<(DEPTH)/xcodebuild',
685 }, 732 },
686 } 733 }
OLDNEW
« no previous file with comments | « no previous file | build/mac/dump_app_syms » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698