Index: build/split_link_partition.py |
diff --git a/build/split_link_partition.py b/build/split_link_partition.py |
index 60409d23560999dd38e356e987210c7ce36e3f99..422c3d1d74d2876731dab2b7aee8d1c2859ecfbb 100644 |
--- a/build/split_link_partition.py |
+++ b/build/split_link_partition.py |
@@ -114,6 +114,51 @@ |
r'^ws2_32\.lib$', |
], |
+ # objs split out of libs. These will be extracted from whichever side |
+ # they're not on according to the 'parts' split, and then just the obj |
+ # linked into the other side. Each should be a 2-tuple, where the first is |
+ # a regex for the .lib name, and the second is a regex for the .obj from |
+ # that lib. The lib should not match anything in 'all'. |
+ # |
+ # Note: If you're considering adding something that isn't a _switches or a |
+ # _constants file, it'd probably be better to break the target into separate |
+ # .lib files. |
+ 'all_from_libs': [ |
+ (r'autofill_common\.lib$', r'switches\.obj$'), |
+ (r'base_static\.lib$', r'base_switches\.obj$'), |
+ # TODO(scottmg): This one is not solely constants, but looks safe. |
+ (r'browser_extensions\.lib$', r'tab_capture_api\.obj$'), |
+ (r'\bcc\.lib$', r'switches\.obj$'), |
+ (r'\bcommon\.lib$', r'extension_constants\.obj$'), |
+ (r'\bcommon\.lib$', r'extension_manifest_constants\.obj$'), |
+ (r'\bcommon\.lib$', r'url_constants\.obj$'), |
+ (r'\bcommon\.lib$', r'view_type\.obj$'), |
+ # It sort of looks like most of this lib could go in 'all', but there's a |
+ # couple registration/initialization functions that make me a bit nervous. |
+ (r'common_constants\.lib$', r'chrome_constants\.obj$'), |
+ (r'common_constants\.lib$', r'chrome_switches\.obj$'), |
+ (r'common_constants\.lib$', r'pref_names\.obj$'), |
+ (r'content_common\.lib$', r'browser_plugin_constants\.obj$'), |
+ (r'content_common\.lib$', r'content_constants\.obj$'), |
+ (r'content_common\.lib$', r'content_switches\.obj$'), |
+ (r'content_common\.lib$', r'page_zoom\.obj$'), |
+ (r'content_common\.lib$', r'url_constants\.obj$'), |
+ (r'gl_wrapper\.lib$', r'gl_switches\.obj$'), |
+ # TODO(scottmg): This one is not solely constants, but looks safe. |
+ (r'libjingle_webrtc_common\.lib$', r'mediaconstraintsinterface\.obj$'), |
+ (r'\bmedia\.lib$', r'media_switches\.obj$'), |
+ # TODO(scottmg): This one is not solely constants, but looks safe. |
+ (r'\bnet\.lib$', r'http_request_headers\.obj$'), |
+ (r'ppapi_shared\.lib$', r'ppapi_switches\.obj$'), |
+ (r'printing\.lib$', r'print_job_constants\.obj$'), |
+ (r'skia\.lib$', r'skunpremultiply\.obj$'), |
+ (r'\bui\.lib$', r'favicon_size\.obj$'), |
+ (r'\bui\.lib$', r'ui_base_switches\.obj$'), |
+ (r'webkit.*plugins_common\.lib$', r'plugin_switches\.obj$'), |
+ (r'webkit.*plugins_common\.lib$', r'plugin_constants'), |
+ (r'webkit.*storage\.lib$', r'file_permission_policy\.obj$'), |
+ ], |
+ |
# This manifest will be merged with the intermediate one from the linker, |
# and embedded in both DLLs. |
'manifest': '..\\..\\chrome\\app\\chrome.dll.manifest' |