Index: chrome/chrome_dll.gypi |
diff --git a/chrome/chrome_dll.gypi b/chrome/chrome_dll.gypi |
index 3d4119a36ba6de532ff3dc97dcf325362d455bb4..a0ce997aba52eb9b75c6a5e68b60dd33b9115fe6 100644 |
--- a/chrome/chrome_dll.gypi |
+++ b/chrome/chrome_dll.gypi |
@@ -2,6 +2,75 @@ |
# Use of this source code is governed by a BSD-style license that can be |
# found in the LICENSE file. |
{ |
+ 'variables': { |
+ 'browser_dll_sources': [ |
+ 'app/chrome_command_ids.h', |
+ 'app/chrome_dll.rc', |
+ 'app/chrome_dll_resource.h', |
+ 'app/chrome_main.cc', |
+ 'app/chrome_main_delegate.cc', |
+ 'app/chrome_main_delegate.h', |
+ 'app/delay_load_hook_win.cc', |
+ 'app/delay_load_hook_win.h', |
+ |
+ '<(SHARED_INTERMEDIATE_DIR)/chrome_version/chrome_dll_version.rc', |
+ '../base/win/dllmain.cc', |
+ |
+ '../ui/resources/cursors/aliasb.cur', |
+ '../ui/resources/cursors/cell.cur', |
+ '../ui/resources/cursors/col_resize.cur', |
+ '../ui/resources/cursors/copy.cur', |
+ '../ui/resources/cursors/none.cur', |
+ '../ui/resources/cursors/row_resize.cur', |
+ '../ui/resources/cursors/vertical_text.cur', |
+ '../ui/resources/cursors/zoom_in.cur', |
+ '../ui/resources/cursors/zoom_out.cur', |
+ |
+ # TODO: It would be nice to have these pulled in |
+ # automatically from direct_dependent_settings in |
+ # their various targets (net.gyp:net_resources, etc.), |
+ # but that causes errors in other targets when |
+ # resulting .res files get referenced multiple times. |
+ '<(SHARED_INTERMEDIATE_DIR)/chrome/browser_resources.rc', |
+ '<(SHARED_INTERMEDIATE_DIR)/chrome/chrome_unscaled_resources.rc', |
+ '<(SHARED_INTERMEDIATE_DIR)/chrome/common_resources.rc', |
+ '<(SHARED_INTERMEDIATE_DIR)/chrome/extensions_api_resources.rc', |
+ '<(SHARED_INTERMEDIATE_DIR)/content/content_resources.rc', |
+ '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.rc', |
+ '<(SHARED_INTERMEDIATE_DIR)/ui/ui_resources/ui_unscaled_resources.rc', |
+ '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_chromium_resources.rc', |
+ ], |
+ 'delay_load_dlls_win': [ |
+ 'comdlg32.dll', |
+ 'crypt32.dll', |
+ 'cryptui.dll', |
+ 'dhcpcsvc.dll', |
+ 'imagehlp.dll', |
+ 'imm32.dll', |
+ 'iphlpapi.dll', |
+ 'setupapi.dll', |
+ 'urlmon.dll', |
+ 'winhttp.dll', |
+ 'wininet.dll', |
+ 'winspool.drv', |
+ 'ws2_32.dll', |
+ 'wsock32.dll', |
+ ], |
+ 'browser_dependencies_win': [ |
+ # On Windows, link the dependencies (libraries) that make |
+ # up actual Chromium functionality into this .dll. |
+ 'chrome_resources.gyp:chrome_resources', |
+ 'chrome_version_resources', |
+ '../chrome/chrome_resources.gyp:chrome_unscaled_resources', |
+ '../crypto/crypto.gyp:crypto', |
+ '../printing/printing.gyp:printing', |
+ '../net/net.gyp:net_resources', |
+ '../third_party/cld/cld.gyp:cld', |
+ '../ui/views/views.gyp:views', |
+ '../webkit/support/webkit_support.gyp:webkit_resources', |
+ ], |
+ 'manifest_files_win': '$(ProjectDir)\\app\\chrome.dll.manifest', |
+ }, |
'conditions': [ |
['OS=="mac" or OS=="win"', { |
'targets': [ |
@@ -74,7 +143,10 @@ |
'enable_wexit_time_destructors': 1, |
}, |
'dependencies': [ |
- '<@(chromium_dependencies)', |
+ '<@(chromium_browser_dependencies)', |
+ '<@(chromium_child_dependencies)', |
+ 'chrome_dll_pdb_workaround', |
+ '../content/content.gyp:content_worker', |
'app/policy/cloud_policy_codegen.gyp:policy', |
], |
'conditions': [ |
@@ -98,66 +170,14 @@ |
['OS=="win"', { |
'product_name': 'chrome', |
'dependencies': [ |
- # On Windows, link the dependencies (libraries) that make |
- # up actual Chromium functionality into this .dll. |
- 'chrome_dll_pdb_workaround', |
- 'chrome_resources.gyp:chrome_resources', |
- 'chrome_version_resources', |
- '../chrome/chrome_resources.gyp:chrome_unscaled_resources', |
- '../content/content.gyp:content_worker', |
- '../crypto/crypto.gyp:crypto', |
- '../printing/printing.gyp:printing', |
- '../net/net.gyp:net_resources', |
- '../third_party/cld/cld.gyp:cld', |
- '../ui/views/views.gyp:views', |
- '../webkit/support/webkit_support.gyp:webkit_resources', |
+ '<@(browser_dependencies_win)', |
], |
'sources': [ |
- 'app/chrome_command_ids.h', |
- 'app/chrome_dll.rc', |
- 'app/chrome_dll_resource.h', |
- 'app/chrome_main.cc', |
- 'app/chrome_main_delegate.cc', |
- 'app/chrome_main_delegate.h', |
- 'app/delay_load_hook_win.cc', |
- 'app/delay_load_hook_win.h', |
- |
- '<(SHARED_INTERMEDIATE_DIR)/chrome_version/chrome_dll_version.rc', |
- '../base/win/dllmain.cc', |
- |
- '../ui/resources/cursors/aliasb.cur', |
- '../ui/resources/cursors/cell.cur', |
- '../ui/resources/cursors/col_resize.cur', |
- '../ui/resources/cursors/copy.cur', |
- '../ui/resources/cursors/none.cur', |
- '../ui/resources/cursors/row_resize.cur', |
- '../ui/resources/cursors/vertical_text.cur', |
- '../ui/resources/cursors/zoom_in.cur', |
- '../ui/resources/cursors/zoom_out.cur', |
- |
- # TODO: It would be nice to have these pulled in |
- # automatically from direct_dependent_settings in |
- # their various targets (net.gyp:net_resources, etc.), |
- # but that causes errors in other targets when |
- # resulting .res files get referenced multiple times. |
- '<(SHARED_INTERMEDIATE_DIR)/chrome/browser_resources.rc', |
- '<(SHARED_INTERMEDIATE_DIR)/chrome/chrome_unscaled_resources.rc', |
- '<(SHARED_INTERMEDIATE_DIR)/chrome/common_resources.rc', |
- '<(SHARED_INTERMEDIATE_DIR)/chrome/extensions_api_resources.rc', |
- '<(SHARED_INTERMEDIATE_DIR)/content/content_resources.rc', |
- '<(SHARED_INTERMEDIATE_DIR)/net/net_resources.rc', |
- '<(SHARED_INTERMEDIATE_DIR)/ui/ui_resources/ui_unscaled_resources.rc', |
- '<(SHARED_INTERMEDIATE_DIR)/webkit/webkit_chromium_resources.rc', |
+ '<@(browser_dll_sources)', |
], |
'include_dirs': [ |
'<(DEPTH)/third_party/wtl/include', |
], |
- 'defines': [ |
- 'CHROME_DLL', |
- 'BROWSER_DLL', |
- 'RENDERER_DLL', |
- 'PLUGIN_DLL', |
- ], |
'configurations': { |
'Debug_Base': { |
'msvs_settings': { |
@@ -210,24 +230,11 @@ |
}], |
], |
'DelayLoadDLLs': [ |
- 'comdlg32.dll', |
- 'crypt32.dll', |
- 'cryptui.dll', |
- 'dhcpcsvc.dll', |
- 'imagehlp.dll', |
- 'imm32.dll', |
- 'iphlpapi.dll', |
- 'setupapi.dll', |
- 'urlmon.dll', |
- 'winhttp.dll', |
- 'wininet.dll', |
- 'winspool.drv', |
- 'ws2_32.dll', |
- 'wsock32.dll', |
+ '<@(delay_load_dlls_win)', |
], |
}, |
'VCManifestTool': { |
- 'AdditionalManifestFiles': '$(ProjectDir)\\app\\chrome.dll.manifest', |
+ 'AdditionalManifestFiles': '<(manifest_files_win)', |
}, |
}, |
}], # OS=="win" |
@@ -297,7 +304,59 @@ |
], # conditions |
}], # OS=="mac" |
], # conditions |
- }, # target chrome_dll |
+ }, # target chrome_main_dll |
+ { |
+ 'target_name': 'chrome_browser_dll', |
+ 'type': 'shared_library', |
+ 'variables': { |
+ 'enable_wexit_time_destructors': 1, |
+ }, |
+ 'dependencies': [ |
+ '<@(chromium_browser_dependencies)', |
+ 'app/policy/cloud_policy_codegen.gyp:policy', |
+ # TODO(scottmg): http://crbug.com/237249 Probably should be |
+ # renderer. |
+ '../ppapi/ppapi_internal.gyp:ppapi_host', |
+ ], |
+ 'conditions': [ |
+ ['use_aura==1', { |
+ 'dependencies': [ |
+ '../ui/compositor/compositor.gyp:compositor', |
+ ], |
+ }], |
+ ['use_ash==1', { |
+ 'sources': [ |
+ '<(SHARED_INTERMEDIATE_DIR)/ash/ash_resources/ash_wallpaper_resources.rc', |
+ ], |
+ }], |
+ ['OS=="win"', { |
+ 'product_name': 'chrome_browser', |
+ 'dependencies': [ |
+ '<@(browser_dependencies_win)', |
+ ], |
+ 'sources': [ |
+ '<@(browser_dll_sources)', |
+ ], |
+ 'include_dirs': [ |
+ '<(DEPTH)/third_party/wtl/include', |
+ ], |
+ 'msvs_settings': { |
+ 'VCLinkerTool': { |
+ 'BaseAddress': '0x01c30000', |
+ 'ImportLibrary': '$(OutDir)\\lib\\chrome_browser_dll.lib', |
+ # Set /SUBSYSTEM:WINDOWS for chrome_browser.dll (for consistency). |
+ 'SubSystem': '2', |
+ 'DelayLoadDLLs': [ |
+ '<@(delay_load_dlls_win)', |
+ ], |
+ }, |
+ 'VCManifestTool': { |
+ 'AdditionalManifestFiles': '<(manifest_files_win)', |
+ }, |
+ }, |
+ }], # OS=="win" |
+ ], # conditions |
+ }, # target chrome_browser_dll |
], # targets |
}], # OS=="mac" or OS=="win" |
['OS=="win"', { |