Permalink
Browse files

Refactoring build configurations - make it clearer and allow better s…

…upport for x64 on Windows

TEST=none
BUG=29467


Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=35012
Review URL: http://codereview.chromium.org/501127

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35129 0039d316-1c4b-4281-b951-d872f2087c98
  • Loading branch information...
1 parent 2f93059 commit c58acae5e3965997015b26b95fd9ce5d3d4587d7 gregoryd@google.com committed Dec 22, 2009
View
2 DEPS
@@ -42,7 +42,7 @@ deps = {
"http://v8.googlecode.com/svn/trunk@3510",
"src/native_client":
- "http://nativeclient.googlecode.com/svn/trunk/src/native_client@1067",
+ "http://nativeclient.googlecode.com/svn/trunk/src/native_client@1175",
"src/third_party/skia/src":
"http://skia.googlecode.com/svn/trunk/src@" + Var("skia_revision"),
View
2 app/app_base.gypi
@@ -282,7 +282,7 @@
'../third_party/skia/include/core',
],
'configurations': {
- 'Common': {
+ 'Common_Base': {
'msvs_target_platform': 'x64',
},
},
View
4 base/allocator/allocator.gyp
@@ -20,7 +20,7 @@
],
'direct_dependent_settings': {
'configurations': {
- 'Common': {
+ 'Common_Base': {
'msvs_settings': {
'VCLinkerTool': {
'IgnoreDefaultLibraryNames': ['libcmtd.lib', 'libcmt.lib'],
@@ -261,7 +261,7 @@
},
},
'configurations': {
- 'Debug': {
+ 'Debug_Base': {
'msvs_settings': {
'VCCLCompilerTool': {
'RuntimeLibrary': '0',
View
4 breakpad/breakpad.gyp
@@ -14,7 +14,7 @@
'src',
],
'configurations': {
- 'Debug': {
+ 'Debug_Base': {
'defines': [
# This is needed for GTMLogger to work correctly.
'DEBUG',
@@ -115,7 +115,7 @@
],
},
'configurations': {
- 'Release': {
+ 'Release_Base': {
'xcode_settings': {
# dump_syms crashes when built at -O1, -O2, and -O3. It does
# not crash at -Os. To play it safe, dump_syms is always built
View
2 breakpad/breakpad_handler.gypi
@@ -73,7 +73,7 @@
],
},
'configurations': {
- 'Common': {
+ 'Common_Base': {
'msvs_target_platform': 'x64',
},
},
View
2 breakpad/breakpad_sender.gypi
@@ -59,7 +59,7 @@
],
},
'configurations': {
- 'Common': {
+ 'Common_Base': {
'msvs_target_platform': 'x64',
},
},
View
132 build/common.gypi
@@ -396,27 +396,62 @@
], # conditions for 'target_defaults'
'default_configuration': 'Debug',
'configurations': {
- # VCLinkerTool LinkIncremental values below:
- # 0 == default
- # 1 == /INCREMENTAL:NO
- # 2 == /INCREMENTAL
- # Debug links incremental, Release does not.
- 'Common': {
+ # VCLinkerTool LinkIncremental values below:
+ # 0 == default
+ # 1 == /INCREMENTAL:NO
+ # 2 == /INCREMENTAL
+ # Debug links incremental, Release does not.
+ #
+ # Abstract base configurations to cover common
+ # attributes.
+ #
+ 'Common_Base': {
'abstract': 1,
'msvs_configuration_attributes': {
'OutputDirectory': '$(SolutionDir)$(ConfigurationName)',
'IntermediateDirectory': '$(OutDir)\\obj\\$(ProjectName)',
'CharacterSet': '1',
},
+ },
+ 'x86_Base': {
+ 'abstract': 1,
'msvs_settings': {
'VCLinkerTool': {
'TargetMachine': '1',
},
},
'msvs_configuration_platform': 'Win32',
},
- 'Debug': {
- 'inherit_from': ['Common'],
+ 'x64_Base': {
+ 'abstract': 1,
+ 'msvs_configuration_platform': 'x64',
+ 'msvs_settings': {
+ 'VCLinkerTool': {
+ 'TargetMachine': '17', # x86 - 64
+ },
+ },
+ 'msvs_settings': {
+ 'VCLibrarianTool': {
+ 'AdditionalLibraryDirectories!':
+ ['<(DEPTH)/third_party/platformsdk_win7/files/Lib'],
+ 'AdditionalLibraryDirectories':
+ ['<(DEPTH)/third_party/platformsdk_win7/files/Lib/x64'],
+ },
+ 'VCLinkerTool': {
+ 'TargetMachine': '17',
+ 'AdditionalLibraryDirectories!':
+ ['<(DEPTH)/third_party/platformsdk_win7/files/Lib'],
+ 'AdditionalLibraryDirectories':
+ ['<(DEPTH)/third_party/platformsdk_win7/files/Lib/x64'],
+ },
+ },
+ 'defines': [
+ # Not sure if tcmalloc works on 64-bit Windows.
+ 'NO_TCMALLOC',
+ ],
+ },
+ 'Debug_Base': {
+ 'abstract': 1,
'xcode_settings': {
'COPY_PHASE_STRIP': 'NO',
'GCC_OPTIMIZATION_LEVEL': '<(mac_debug_optimization)',
@@ -444,8 +479,8 @@
}],
],
},
- 'Release': {
- 'inherit_from': ['Common'],
+ 'Release_Base': {
+ 'abstract': 1,
'defines': [
'NDEBUG',
],
@@ -477,54 +512,59 @@
# class 'std::bad_cast'
'msvs_disabled_warnings': [4275],
}],
- ['msvs_use_common_release', {
- 'msvs_props': ['release.vsprops'],
- }],
['OS=="linux"', {
'cflags': [
'<@(release_extra_cflags)',
],
}],
],
},
+ 'Purify_Base': {
+ 'abstract': 1,
+ 'defines': [
+ 'PURIFY',
+ 'NO_TCMALLOC',
+ ],
+ 'msvs_settings': {
+ 'VCCLCompilerTool': {
+ 'Optimization': '0',
+ 'RuntimeLibrary': '0',
+ 'BufferSecurityCheck': 'false',
+ },
+ 'VCLinkerTool': {
+ 'EnableCOMDATFolding': '1',
+ 'LinkIncremental': '1',
+ },
+ },
+ },
+ #
+ # Concrete configurations
+ #
+ 'Debug': {
+ 'inherit_from': ['Common_Base', 'x86_Base', 'Debug_Base'],
+ },
+ 'Release': {
+ 'inherit_from': ['Common_Base', 'x86_Base', 'Release_Base'],
+ 'conditions': [
+ ['msvs_use_common_release', {
+ 'msvs_props': ['release.vsprops'],
+ }],
+ ]
+ },
'conditions': [
[ 'OS=="win"', {
# TODO(bradnelson): add a gyp mechanism to make this more graceful.
'Purify': {
- 'inherit_from': ['Release'],
- 'defines': [
- 'PURIFY',
- 'NO_TCMALLOC',
- ],
- 'msvs_settings': {
- 'VCCLCompilerTool': {
- 'Optimization': '0',
- 'RuntimeLibrary': '0',
- 'BufferSecurityCheck': 'false',
- },
- 'VCLinkerTool': {
- 'EnableCOMDATFolding': '1',
- 'LinkIncremental': '1',
- },
- },
- },
- 'Common_x64': {
- 'msvs_configuration_platform': 'x64',
- 'msvs_settings': {
- 'VCLinkerTool': {
- 'TargetMachine': '17',
- },
- },
- 'abstract': 1,
+ 'inherit_from': ['Common_Base', 'x86_Base', 'Release_Base', 'Purify'],
},
'Debug_x64': {
- 'inherit_from': ['Debug', 'Common_x64'],
+ 'inherit_from': ['Common_Base', 'x64_Base', 'Debug_Base'],
},
'Release_x64': {
- 'inherit_from': ['Release', 'Common_x64'],
+ 'inherit_from': ['Common_Base', 'x64_Base', 'Release_Base'],
},
'Purify_x64': {
- 'inherit_from': ['Purify', 'Common_x64'],
+ 'inherit_from': ['Common_Base', 'x64_Base', 'Release_Base', 'Purify'],
},
}],
],
@@ -628,7 +668,7 @@
'OFFICIAL_BUILD',
],
'configurations': {
- 'Debug': {
+ 'Debug_Base': {
'variables': {
'debug_optimize%': '0',
},
@@ -645,7 +685,7 @@
'-rdynamic', # Allows backtrace to resolve symbols.
],
},
- 'Release': {
+ 'Release_Base': {
'variables': {
'release_optimize%': '2',
},
@@ -861,7 +901,7 @@
# strip_from_xcode will not be used, set Xcode to do the
# stripping as well.
'configurations': {
- 'Release': {
+ 'Release_Base': {
'xcode_settings': {
'DEBUG_INFORMATION_FORMAT': 'dwarf-with-dsym',
'DEPLOYMENT_POSTPROCESSING': 'YES',
@@ -1051,15 +1091,15 @@
},
},
'configurations': {
- 'Common': {
+ 'x86_Base': {
'msvs_settings': {
'VCLinkerTool': {
'AdditionalOptions':
'/safeseh /dynamicbase /ignore:4199 /ignore:4221 /nxcompat',
},
},
},
- 'Common_x64': {
+ 'x64_Base': {
'msvs_settings': {
'VCLinkerTool': {
'AdditionalOptions':
View
4 chrome/chrome.gyp
@@ -1766,7 +1766,7 @@
},
},
'configurations': {
- 'Debug': {
+ 'Debug_Base': {
'msvs_settings': {
'VCLinkerTool': {
'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
@@ -2624,7 +2624,7 @@
}],
],
'configurations': {
- 'Debug': {
+ 'Debug_Base': {
'msvs_settings': {
'VCLinkerTool': {
'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
View
14 chrome/chrome_tests.gypi
@@ -373,7 +373,7 @@
],
},
'configurations': {
- 'Debug': {
+ 'Debug_Base': {
'msvs_settings': {
'VCLinkerTool': {
'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
@@ -456,7 +456,7 @@
],
},
'configurations': {
- 'Debug': {
+ 'Debug_Base': {
'msvs_settings': {
'VCLinkerTool': {
'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
@@ -1001,7 +1001,7 @@
],
},
'configurations': {
- 'Debug': {
+ 'Debug_Base': {
'msvs_settings': {
'VCLinkerTool': {
'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
@@ -1136,7 +1136,7 @@
'<(allocator_target)',
],
'configurations': {
- 'Debug': {
+ 'Debug_Base': {
'msvs_settings': {
'VCLinkerTool': {
'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
@@ -1485,7 +1485,7 @@
],
},
'configurations': {
- 'Debug': {
+ 'Debug_Base': {
'msvs_settings': {
'VCLinkerTool': {
'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
@@ -1555,7 +1555,7 @@
}],
['OS=="win"', {
'configurations': {
- 'Debug': {
+ 'Debug_Base': {
'msvs_settings': {
'VCLinkerTool': {
'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
@@ -1666,7 +1666,7 @@
'<(allocator_target)',
],
'configurations': {
- 'Debug': {
+ 'Debug_Base': {
'msvs_settings': {
'VCLinkerTool': {
'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
View
2 chrome/installer/installer_util.gypi
@@ -112,7 +112,7 @@
'<(SHARED_INTERMEDIATE_DIR)',
],
'configurations': {
- 'Common': {
+ 'Common_Base': {
'msvs_target_platform': 'x64',
},
},
View
2 chrome/installer/mini_installer.gyp
@@ -60,7 +60,7 @@
},
},
'configurations': {
- 'Debug': {
+ 'Debug_Base': {
'msvs_settings': {
'VCCLCompilerTool': {
'BasicRuntimeChecks': '0',
View
2 chrome/test/interactive_ui/interactive_ui_tests.gypi
@@ -135,7 +135,7 @@
}],
],
'configurations': {
- 'Debug': {
+ 'Debug_Base': {
'msvs_settings': {
'VCLinkerTool': {
'LinkIncremental': '<(msvs_large_module_debug_link_mode)',
View
2 chrome_frame/chrome_frame.gyp
@@ -583,7 +583,7 @@
},
'configurations': {
# Bring back the standard library in debug buidls.
- 'Debug': {
+ 'Debug_Base': {
'msvs_settings': {
'VCLinkerTool': {
'IgnoreAllDefaultLibraries': "false",
View
2 ipc/ipc.gypi
@@ -82,7 +82,7 @@
],
},
'configurations': {
- 'Common': {
+ 'Common_Base': {
'msvs_target_platform': 'x64',
},
},
View
4 third_party/tcmalloc/tcmalloc.gyp
@@ -19,7 +19,7 @@
],
'direct_dependent_settings': {
'configurations': {
- 'Common': {
+ 'Common_Base': {
'msvs_settings': {
'VCLinkerTool': {
'IgnoreDefaultLibraryNames': ['libcmtd.lib', 'libcmt.lib'],
@@ -150,7 +150,7 @@
},
},
'configurations': {
- 'Debug': {
+ 'Debug_Base': {
'msvs_settings': {
'VCCLCompilerTool': {
'RuntimeLibrary': '0',

0 comments on commit c58acae

Please sign in to comment.