summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpetewil@chromium.org <petewil@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-01-09 18:48:05 +0000
committerpetewil@chromium.org <petewil@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-01-09 18:48:05 +0000
commitef1af5c3183fe154fa51ff89f71f0977b72ac3b4 (patch)
tree5ce852b4b5391d03b4dd0189c9c84c4414fa8e56
parent140cc3f38bf484809401e1bccba891c53f56491d (diff)
downloadchromium_src-ef1af5c3183fe154fa51ff89f71f0977b72ac3b4.zip
chromium_src-ef1af5c3183fe154fa51ff89f71f0977b72ac3b4.tar.gz
chromium_src-ef1af5c3183fe154fa51ff89f71f0977b72ac3b4.tar.bz2
Allow Win64 build of base library even in a Win32 build.
Some components of a 32 bit build of chrome for Windows need to be built as Win64 Dlls. To allow those components to use base, we make a Win64 build of the base library even when building chrome 32 bit. This is needed by the Chrome Desk Band code. crbug.com/327435. https://codereview.chromium.org/79173004/ BUG=327435 Review URL: https://codereview.chromium.org/103333004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@243936 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--base/base.gyp46
-rw-r--r--chrome/chrome_exe.gypi2
-rw-r--r--chrome/chrome_installer.gypi2
-rw-r--r--chrome/common_constants.gyp2
-rw-r--r--cloud_print/virtual_driver/win/virtual_driver64.gyp2
-rw-r--r--components/breakpad.gypi4
-rw-r--r--courgette/courgette.gyp4
-rw-r--r--crypto/crypto.gyp2
-rw-r--r--gpu/gpu.gyp2
-rw-r--r--ipc/ipc.gyp2
-rw-r--r--ppapi/ppapi_internal.gyp6
-rw-r--r--sandbox/win/sandbox_win.gypi2
-rw-r--r--third_party/modp_b64/modp_b64.gyp27
13 files changed, 82 insertions, 21 deletions
diff --git a/base/base.gyp b/base/base.gyp
index db88dfa..76ff7a5 100644
--- a/base/base.gyp
+++ b/base/base.gyp
@@ -1015,8 +1015,10 @@
}],
['OS == "win" and target_arch=="ia32"', {
'targets': [
+ # The base_win64 target here allows us to use base for Win64 targets
+ # (the normal build is 32 bits).
{
- 'target_name': 'base_nacl_win64',
+ 'target_name': 'base_win64',
'type': '<(component)',
'variables': {
'base_target': 1,
@@ -1024,6 +1026,7 @@
'dependencies': [
'base_static_win64',
'allocator/allocator.gyp:allocator_extension_thunks_win64',
+ '../third_party/modp_b64/modp_b64.gyp:modp_b64_win64',
'third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations_win64',
],
# TODO(gregoryd): direct_dependent_settings should be shared with the
@@ -1034,12 +1037,9 @@
],
},
'defines': [
+ 'BASE_WIN64',
'<@(nacl_win64_defines)',
],
- 'sources!': [
- # base64.cc depends on modp_b64.
- 'base64.cc',
- ],
'configurations': {
'Common_Base': {
'msvs_target_platform': 'x64',
@@ -1052,6 +1052,40 @@
],
}],
],
+ # TODO(rvargas): Bug 78117. Remove this.
+ 'msvs_disabled_warnings': [
+ 4244,
+ 4996,
+ 4267,
+ ],
+ 'sources': [
+ 'third_party/nspr/prcpucfg.h',
+ 'third_party/nspr/prcpucfg_win.h',
+ 'third_party/nspr/prtypes.h',
+ 'third_party/xdg_user_dirs/xdg_user_dir_lookup.cc',
+ 'third_party/xdg_user_dirs/xdg_user_dir_lookup.h',
+ 'async_socket_io_handler.h',
+ 'async_socket_io_handler_posix.cc',
+ 'async_socket_io_handler_win.cc',
+ 'auto_reset.h',
+ 'event_recorder.h',
+ 'event_recorder_stubs.cc',
+ 'event_recorder_win.cc',
+ 'linux_util.cc',
+ 'linux_util.h',
+ 'md5.cc',
+ 'md5.h',
+ 'message_loop/message_pump_observer.h',
+ 'message_loop/message_pump_libevent.cc',
+ 'message_loop/message_pump_libevent.h',
+ 'metrics/field_trial.cc',
+ 'metrics/field_trial.h',
+ 'posix/file_descriptor_shuffle.cc',
+ 'posix/file_descriptor_shuffle.h',
+ 'sync_socket.h',
+ 'sync_socket_win.cc',
+ 'sync_socket_posix.cc',
+ ],
},
{
'target_name': 'base_i18n_nacl_win64',
@@ -1103,7 +1137,7 @@
},
},
'defines': [
- 'NACL_WIN64',
+ '<@(nacl_win64_defines)',
],
# TODO(rvargas): Bug 78117. Remove this.
'msvs_disabled_warnings': [
diff --git a/chrome/chrome_exe.gypi b/chrome/chrome_exe.gypi
index f694ae0..52c06d8 100644
--- a/chrome/chrome_exe.gypi
+++ b/chrome/chrome_exe.gypi
@@ -591,7 +591,7 @@
'chrome_version_resources',
'installer_util_nacl_win64',
'../base/base.gyp:base_i18n_nacl_win64',
- '../base/base.gyp:base_nacl_win64',
+ '../base/base.gyp:base_win64',
'../base/base.gyp:base_static_win64',
'../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations_win64',
'../breakpad/breakpad.gyp:breakpad_handler_win64',
diff --git a/chrome/chrome_installer.gypi b/chrome/chrome_installer.gypi
index 95c80ae..4561054 100644
--- a/chrome/chrome_installer.gypi
+++ b/chrome/chrome_installer.gypi
@@ -482,7 +482,7 @@
'<@(nacl_win64_defines)',
],
'dependencies': [
- '<(DEPTH)/base/base.gyp:base_nacl_win64',
+ '<(DEPTH)/base/base.gyp:base_win64',
],
'configurations': {
'Common_Base': {
diff --git a/chrome/common_constants.gyp b/chrome/common_constants.gyp
index d556275..5166dad 100644
--- a/chrome/common_constants.gyp
+++ b/chrome/common_constants.gyp
@@ -99,7 +99,7 @@
'<(SHARED_INTERMEDIATE_DIR)', # Needed by chrome_paths.cc.
],
'dependencies': [
- '../base/base.gyp:base_nacl_win64',
+ '../base/base.gyp:base_win64',
'../components/nacl.gyp:nacl_switches_win64',
'../third_party/widevine/cdm/widevine_cdm.gyp:widevine_cdm_version_h',
],
diff --git a/cloud_print/virtual_driver/win/virtual_driver64.gyp b/cloud_print/virtual_driver/win/virtual_driver64.gyp
index b41a992..26a167f 100644
--- a/cloud_print/virtual_driver/win/virtual_driver64.gyp
+++ b/cloud_print/virtual_driver/win/virtual_driver64.gyp
@@ -11,7 +11,7 @@
'<@(nacl_win64_defines)',
],
'dependencies': [
- '<(DEPTH)/base/base.gyp:base_nacl_win64',
+ '<(DEPTH)/base/base.gyp:base_win64',
'<(DEPTH)/chrome/chrome.gyp:launcher_support64',
'<(DEPTH)/chrome/common_constants.gyp:common_constants_win64',
],
diff --git a/components/breakpad.gypi b/components/breakpad.gypi
index f613bfb..9dcf912 100644
--- a/components/breakpad.gypi
+++ b/components/breakpad.gypi
@@ -105,7 +105,7 @@
'COMPILE_CONTENT_STATICALLY',
],
'dependencies': [
- '../base/base.gyp:base_nacl_win64',
+ '../base/base.gyp:base_win64',
'../breakpad/breakpad.gyp:breakpad_handler_win64',
'../breakpad/breakpad.gyp:breakpad_sender_win64',
'../sandbox/sandbox.gyp:sandbox_win64',
@@ -120,7 +120,7 @@
'target_name': 'breakpad_crash_service_win64',
'type': 'static_library',
'dependencies': [
- '../base/base.gyp:base_nacl_win64',
+ '../base/base.gyp:base_win64',
'../breakpad/breakpad.gyp:breakpad_handler_win64',
'../breakpad/breakpad.gyp:breakpad_sender_win64',
],
diff --git a/courgette/courgette.gyp b/courgette/courgette.gyp
index 9de536f..fbd1ced 100644
--- a/courgette/courgette.gyp
+++ b/courgette/courgette.gyp
@@ -176,7 +176,7 @@
'target_name': 'courgette_lib64',
'type': 'static_library',
'dependencies': [
- '../base/base.gyp:base_nacl_win64',
+ '../base/base.gyp:base_win64',
'../third_party/lzma_sdk/lzma_sdk.gyp:lzma_sdk64',
],
'sources': [
@@ -196,7 +196,7 @@
],
'dependencies': [
'courgette_lib64',
- '../base/base.gyp:base_nacl_win64',
+ '../base/base.gyp:base_win64',
],
'configurations': {
'Common_Base': {
diff --git a/crypto/crypto.gyp b/crypto/crypto.gyp
index c932946..1f22aa9 100644
--- a/crypto/crypto.gyp
+++ b/crypto/crypto.gyp
@@ -327,7 +327,7 @@
# for the helper.
'type': '<(component)',
'dependencies': [
- '../base/base.gyp:base_nacl_win64',
+ '../base/base.gyp:base_win64',
'../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations_win64',
],
'sources': [
diff --git a/gpu/gpu.gyp b/gpu/gpu.gyp
index 0de31cf..3aeedfc1 100644
--- a/gpu/gpu.gyp
+++ b/gpu/gpu.gyp
@@ -550,7 +550,7 @@
'gpu_ipc.gypi',
],
'dependencies': [
- '../base/base.gyp:base_nacl_win64',
+ '../base/base.gyp:base_win64',
'../ipc/ipc.gyp:ipc_win64',
],
'defines': [
diff --git a/ipc/ipc.gyp b/ipc/ipc.gyp
index ace836b..95c6fd12 100644
--- a/ipc/ipc.gyp
+++ b/ipc/ipc.gyp
@@ -156,7 +156,7 @@
'ipc_target': 1,
},
'dependencies': [
- '../base/base.gyp:base_nacl_win64',
+ '../base/base.gyp:base_win64',
# TODO(viettrungluu): Needed for base/lazy_instance.h, which is
# suspect.
'../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations_win64',
diff --git a/ppapi/ppapi_internal.gyp b/ppapi/ppapi_internal.gyp
index 26bd9c4..989a591 100644
--- a/ppapi/ppapi_internal.gyp
+++ b/ppapi/ppapi_internal.gyp
@@ -224,7 +224,7 @@
},
'dependencies': [
'ppapi.gyp:ppapi_c',
- '../base/base.gyp:base_nacl_win64',
+ '../base/base.gyp:base_win64',
'../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations_win64',
'../ipc/ipc.gyp:ipc_win64',
],
@@ -232,7 +232,7 @@
'<@(nacl_win64_defines)',
],
'export_dependent_settings': [
- '../base/base.gyp:base_nacl_win64',
+ '../base/base.gyp:base_win64',
],
'configurations': {
'Common_Base': {
@@ -248,7 +248,7 @@
'ppapi_ipc_target': 1,
},
'dependencies': [
- '../base/base.gyp:base_nacl_win64',
+ '../base/base.gyp:base_win64',
'../ipc/ipc.gyp:ipc_win64',
'../gpu/gpu.gyp:gpu_ipc_win64',
'ppapi.gyp:ppapi_c',
diff --git a/sandbox/win/sandbox_win.gypi b/sandbox/win/sandbox_win.gypi
index 1fa8279..afc031c 100644
--- a/sandbox/win/sandbox_win.gypi
+++ b/sandbox/win/sandbox_win.gypi
@@ -337,7 +337,7 @@
'target_arch': 'x64',
},
'dependencies': [
- '../base/base.gyp:base_nacl_win64',
+ '../base/base.gyp:base_win64',
'../base/base.gyp:base_static_win64',
],
'configurations': {
diff --git a/third_party/modp_b64/modp_b64.gyp b/third_party/modp_b64/modp_b64.gyp
index baed111..6176c5d 100644
--- a/third_party/modp_b64/modp_b64.gyp
+++ b/third_party/modp_b64/modp_b64.gyp
@@ -18,4 +18,31 @@
],
},
],
+ 'conditions': [
+ ['OS == "win" and target_arch=="ia32"', {
+ # Even if we are building the browser for Win32, we need a few modules
+ # to be built for Win64, and this is a prerequsite.
+ 'targets': [
+ {
+ 'target_name': 'modp_b64_win64',
+ 'type': 'static_library',
+ # We can't use dynamic_annotations target for win64 build since it is
+ # a 32-bit library.
+ 'include_dirs': [
+ '../..',
+ ],
+ 'sources': [
+ 'modp_b64.cc',
+ 'modp_b64.h',
+ 'modp_b64_data.h',
+ ],
+ 'configurations': {
+ 'Common_Base': {
+ 'msvs_target_platform': 'x64',
+ },
+ },
+ },
+ ],
+ }],
+ ],
}