Skip to content

Commit

Permalink
Revert 198834 "Add chrome_split_dll gyp variable, and duplicate ..."
Browse files Browse the repository at this point in the history
> Add chrome_split_dll gyp variable, and duplicate chrome_main_dll target
> 
> Currently contains chrome_browser_dll target. Removes some paths from browser->webcore
> via content that are there due to single process mode, and removes dependency of content
> on content_renderer.
> 
> Current remaining paths from chrome_browser_dll to webcore: http://i.imgur.com/7WWRvpA.jpg
> 
> R=cpu@chromium.org
> BUG=237249
> 
> Review URL: https://chromiumcodereview.appspot.com/14682014

TBR=scottmg@chromium.org

Review URL: https://codereview.chromium.org/14882004

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@198837 0039d316-1c4b-4281-b951-d872f2087c98
  • Loading branch information
dewittj@chromium.org committed May 8, 2013
1 parent 0a99939 commit 11d7f96
Show file tree
Hide file tree
Showing 11 changed files with 87 additions and 220 deletions.
7 changes: 0 additions & 7 deletions build/common.gypi
Original file line number Diff line number Diff line change
Expand Up @@ -888,10 +888,6 @@
# to get incremental linking to be faster in debug builds.
'incremental_chrome_dll%': '0',

# Experimental setting to break chrome.dll in to chrome_browser.dll and
# chrome_child.dll.
'chrome_split_dll%': '0',

# The default settings for third party code for treating
# warnings-as-errors. Ideally, this would not be required, however there
# is some third party code that takes a long time to fix/roll. So, this
Expand Down Expand Up @@ -1813,9 +1809,6 @@
'<(DEPTH)/base/allocator/allocator.gyp:type_profiler',
],
}],
['chrome_split_dll', {
'defines': ['CHROME_SPLIT_DLL'],
}],
['OS=="linux" and clang==1 and host_arch=="ia32"', {
# TODO(dmikurube): Remove -Wno-sentinel when Clang/LLVM is fixed.
# See http://crbug.com/162818.
Expand Down
25 changes: 1 addition & 24 deletions chrome/app/chrome_main_delegate.cc
Original file line number Diff line number Diff line change
Expand Up @@ -88,16 +88,12 @@

base::LazyInstance<chrome::ChromeContentBrowserClient>
g_chrome_content_browser_client = LAZY_INSTANCE_INITIALIZER;
// TODO(scottmg): http://crbug.com/237249 This will have to be split out into
// browser and child parts.
#if !defined(CHROME_SPLIT_DLL)
base::LazyInstance<chrome::ChromeContentRendererClient>
g_chrome_content_renderer_client = LAZY_INSTANCE_INITIALIZER;
base::LazyInstance<chrome::ChromeContentUtilityClient>
g_chrome_content_utility_client = LAZY_INSTANCE_INITIALIZER;
base::LazyInstance<chrome::ChromeContentPluginClient>
g_chrome_content_plugin_client = LAZY_INSTANCE_INITIALIZER;
#endif

extern int NaClMain(const content::MainFunctionParams&);
extern int ServiceProcessMain(const content::MainFunctionParams&);
Expand Down Expand Up @@ -635,8 +631,7 @@ int ChromeMainDelegate::RunProcess(
{ switches::kRelauncherProcess,
mac_relauncher::internal::RelauncherMain },
#endif
// TODO(scottmg): http://crbug.com/237249 NaCl -> child.
#if !defined(DISABLE_NACL) && !defined(CHROME_SPLIT_DLL)
#if !defined(DISABLE_NACL)
{ switches::kNaClLoaderProcess, NaClMain },
#endif // DISABLE_NACL
};
Expand Down Expand Up @@ -710,33 +705,15 @@ content::ContentBrowserClient*
}

content::ContentPluginClient* ChromeMainDelegate::CreateContentPluginClient() {
// TODO(scottmg): http://crbug.com/237249 This will have to be split out into
// browser and child parts.
#if defined(CHROME_SPLIT_DLL)
return NULL;
#else
return &g_chrome_content_plugin_client.Get();
#endif
}

content::ContentRendererClient*
ChromeMainDelegate::CreateContentRendererClient() {
// TODO(scottmg): http://crbug.com/237249 This will have to be split out into
// browser and child parts.
#if defined(CHROME_SPLIT_DLL)
return NULL;
#else
return &g_chrome_content_renderer_client.Get();
#endif
}

content::ContentUtilityClient*
ChromeMainDelegate::CreateContentUtilityClient() {
// TODO(scottmg): http://crbug.com/237249 This will have to be split out into
// browser and child parts.
#if defined(CHROME_SPLIT_DLL)
return NULL;
#else
return &g_chrome_content_utility_client.Get();
#endif
}
16 changes: 3 additions & 13 deletions chrome/chrome.gyp
Original file line number Diff line number Diff line change
Expand Up @@ -10,17 +10,12 @@
# the link of the actual chrome (or chromium) executable on
# Linux or Mac, and into chrome.dll on Windows.
# NOTE: Most new includes should go in the OS!="ios" condition below.
'chromium_browser_dependencies': [
'chromium_dependencies': [
'common',
'browser',
'../content/content.gyp:content_app',
'../sync/sync.gyp:sync',
],
'chromium_child_dependencies': [
'common',
'../content/content.gyp:content_app',
'../sync/sync.gyp:sync',
],
'allocator_target': '../base/allocator/allocator.gyp:allocator',
'grit_out_dir': '<(SHARED_INTERMEDIATE_DIR)/chrome',
'protoc_out_dir': '<(SHARED_INTERMEDIATE_DIR)/protoc_out',
Expand All @@ -29,12 +24,7 @@
'apply_locales_cmd': ['python', '<(DEPTH)/build/apply_locales.py'],
'conditions': [
['OS!="ios"', {
'chromium_browser_dependencies': [
'debugger',
'../content/content.gyp:content_ppapi_plugin',
'../printing/printing.gyp:printing',
],
'chromium_child_dependencies': [
'chromium_dependencies': [
'debugger',
'plugin',
'renderer',
Expand All @@ -56,7 +46,7 @@
'app/resources/locale_settings_win.grd',
},],
['OS!="android" and OS!="ios"', {
'chromium_browser_dependencies': [
'chromium_dependencies': [
# Android doesn't use the service process (only needed for print).
'service',
],
Expand Down
201 changes: 71 additions & 130 deletions chrome/chrome_dll.gypi
Original file line number Diff line number Diff line change
Expand Up @@ -2,75 +2,6 @@
# 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': [
Expand Down Expand Up @@ -143,10 +74,7 @@
'enable_wexit_time_destructors': 1,
},
'dependencies': [
'<@(chromium_browser_dependencies)',
'<@(chromium_child_dependencies)',
'chrome_dll_pdb_workaround',
'../content/content.gyp:content_worker',
'<@(chromium_dependencies)',
'app/policy/cloud_policy_codegen.gyp:policy',
],
'conditions': [
Expand All @@ -170,14 +98,66 @@
['OS=="win"', {
'product_name': 'chrome',
'dependencies': [
'<@(browser_dependencies_win)',
# 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',
],
'sources': [
'<@(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',
],
'include_dirs': [
'<(DEPTH)/third_party/wtl/include',
],
'defines': [
'CHROME_DLL',
'BROWSER_DLL',
'RENDERER_DLL',
'PLUGIN_DLL',
],
'configurations': {
'Debug_Base': {
'msvs_settings': {
Expand Down Expand Up @@ -230,11 +210,24 @@
}],
],
'DelayLoadDLLs': [
'<@(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',
],
},
'VCManifestTool': {
'AdditionalManifestFiles': '<(manifest_files_win)',
'AdditionalManifestFiles': '$(ProjectDir)\\app\\chrome.dll.manifest',
},
},
}], # OS=="win"
Expand Down Expand Up @@ -304,59 +297,7 @@
], # conditions
}], # OS=="mac"
], # conditions
}, # 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
}, # target chrome_dll
], # targets
}], # OS=="mac" or OS=="win"
['OS=="win"', {
Expand Down
6 changes: 2 additions & 4 deletions chrome/chrome_exe.gypi
Original file line number Diff line number Diff line change
Expand Up @@ -142,8 +142,7 @@
'dependencies': [
# On Linux, link the dependencies (libraries) that make up actual
# Chromium functionality directly into the executable.
'<@(chromium_browser_dependencies)',
'<@(chromium_child_dependencies)',
'<@(chromium_dependencies)',
# Needed for chrome_main.cc initialization of libraries.
'../build/linux/system.gyp:gtk',
# Needed to use the master_preferences functions
Expand All @@ -153,8 +152,7 @@
'dependencies': [
# On Linux, link the dependencies (libraries) that make up actual
# Chromium functionality directly into the executable.
'<@(chromium_browser_dependencies)',
'<@(chromium_child_dependencies)',
'<@(chromium_dependencies)',
# Needed for chrome_main.cc initialization of libraries.
'../build/linux/system.gyp:x11',
'../build/linux/system.gyp:pangocairo',
Expand Down
Loading

0 comments on commit 11d7f96

Please sign in to comment.