From 4df54e8c095bd239b8f7c3786440a4878d2eb509 Mon Sep 17 00:00:00 2001 From: "maruel@chromium.org" Date: Fri, 4 Apr 2014 21:06:46 +0000 Subject: [PATCH] Get rid of all component builds specific .isolate. The status quo was unmaintainable. These 'component build specific .isolate files' are superseeded by tools/isolate_driver.py which packages dynamic libraries automatically. The new way is much more sane and dynamic, isolate_driver.py is currently very crude but 'does the job', the expected way to make it work is to read the .ninja files to extract all the dynamic libraries marked as a dependency to the main target being executed. TBR=csharp@chromium.org BUG=333473 Review URL: https://codereview.chromium.org/226123004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@261871 0039d316-1c4b-4281-b951-d872f2087c98 --- base/base.isolate | 43 ---------------------------- base/base_prefs.isolate | 28 ------------------ base/base_unittests.isolate | 1 - build/linux/system.isolate | 12 -------- chrome/unit_tests.isolate | 2 +- crypto/crypto.isolate | 28 ------------------ mojo/mojo_apps_js_unittests.isolate | 42 --------------------------- mojo/mojo_js_unittests.isolate | 36 ----------------------- net/net.isolate | 29 ------------------- net/net_unittests.isolate | 9 +----- net/third_party/nss/ssl.isolate | 24 ---------------- net/third_party/nss/ssl_base.isolate | 16 ----------- net/v8.isolate | 30 ------------------- third_party/nss.isolate | 31 -------------------- url/url.isolate | 28 ------------------ 15 files changed, 2 insertions(+), 357 deletions(-) delete mode 100644 base/base_prefs.isolate delete mode 100644 build/linux/system.isolate delete mode 100644 crypto/crypto.isolate delete mode 100644 net/third_party/nss/ssl.isolate delete mode 100644 net/third_party/nss/ssl_base.isolate delete mode 100644 net/v8.isolate delete mode 100644 third_party/nss.isolate delete mode 100644 url/url.isolate diff --git a/base/base.isolate b/base/base.isolate index bfa81fe760df26..442d168ca4112c 100644 --- a/base/base.isolate +++ b/base/base.isolate @@ -2,50 +2,7 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. { - 'conditions': [ - ['OS=="linux" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/lib/libbase.so', - '<(PRODUCT_DIR)/lib/libbase_i18n.so', - ], - }, - }], - ['OS=="mac" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/libbase.dylib', - '<(PRODUCT_DIR)/libbase_i18n.dylib', - ], - }, - }], - ['OS=="win" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/base.dll', - '<(PRODUCT_DIR)/base_i18n.dll', - ], - }, - }], - ], - # Important note: - # Running: - # 1. GYP_DEFINES=component=shared_library build/gyp_chromium - # 2. ninja -C out/Debug base - # will result with only libbase.so being built. Building base by itself won't - # force the build of icu or nss. This is because base is not usable by itself. - # But on the other hand any test that includes base will be building and - # loading at runtime both icu and nss. So define here what is brought by - # importing base, not what base would load at runtime. - # - # There is no such thing as direct_dependent in .isolate, so it's not the best - # format to describe this kind of thing. But as a user of base.so, the user - # will be importing these other libraries: 'includes': [ - # While the target 'base' doesn't depend on ../build/linux/system.gyp:ssl - # itself, virtually all targets using it has to include - # ../third_party/nss/ssl.gyp:libssl through system.gyp. - '../build/linux/system.isolate', # While the target 'base' doesn't depend on ../third_party/icu/icu.gyp # itself, virtually all targets using it has to include icu. The only # exception is the Windows sandbox (?). diff --git a/base/base_prefs.isolate b/base/base_prefs.isolate deleted file mode 100644 index dbc94d3d77c43f..00000000000000 --- a/base/base_prefs.isolate +++ /dev/null @@ -1,28 +0,0 @@ -# Copyright 2014 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. -{ - 'conditions': [ - ['OS=="linux" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/lib/libbase_prefs.so', - ], - }, - }], - ['OS=="mac" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/libbase_prefs.dylib', - ], - }, - }], - ['OS=="win" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/base_prefs.dll', - ], - }, - }], - ], -} diff --git a/base/base_unittests.isolate b/base/base_unittests.isolate index 097c55aaf774ef..b5464be8e37343 100644 --- a/base/base_unittests.isolate +++ b/base/base_unittests.isolate @@ -54,6 +54,5 @@ ], 'includes': [ 'base.isolate', - 'base_prefs.isolate', ], } diff --git a/build/linux/system.isolate b/build/linux/system.isolate deleted file mode 100644 index 3933af1e2ee9a0..00000000000000 --- a/build/linux/system.isolate +++ /dev/null @@ -1,12 +0,0 @@ -# Copyright 2014 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. -{ - # This file is only used with the condition "desktop_linux==1 or chromeos==1". - 'includes': [ - # This is only used when use_openssl==0. - # TODO(rsleevi): This is awkward, because this file is imported from - # base.isolate but references net, causing an improper import cycle. - '../../net/third_party/nss/ssl.isolate', - ], -} diff --git a/chrome/unit_tests.isolate b/chrome/unit_tests.isolate index f80333730b354d..c81e61d922bf30 100644 --- a/chrome/unit_tests.isolate +++ b/chrome/unit_tests.isolate @@ -124,6 +124,6 @@ }], ], 'includes': [ - '../third_party/icu/icu.isolate', + '../base/base.isolate', ], } diff --git a/crypto/crypto.isolate b/crypto/crypto.isolate deleted file mode 100644 index 9679d5b04ea00c..00000000000000 --- a/crypto/crypto.isolate +++ /dev/null @@ -1,28 +0,0 @@ -# Copyright 2014 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. -{ - 'conditions': [ - ['OS=="linux" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/lib/libcrcrypto.so', - ], - }, - }], - ['OS=="mac" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/libcrcrypto.dylib', - ], - }, - }], - ['OS=="win" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/crcrypto.dll', - ], - }, - }], - ], -} diff --git a/mojo/mojo_apps_js_unittests.isolate b/mojo/mojo_apps_js_unittests.isolate index c8fe03889c36b4..4fdeb7296cb4bc 100644 --- a/mojo/mojo_apps_js_unittests.isolate +++ b/mojo/mojo_apps_js_unittests.isolate @@ -35,19 +35,6 @@ ], }, }], - ['OS=="win" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/base.dll', - '<(PRODUCT_DIR)/base_i18n.dll', - '<(PRODUCT_DIR)/gin.dll', - '<(PRODUCT_DIR)/mojo_system_impl.dll', - '<(PRODUCT_DIR)/msvcp120d.dll', - '<(PRODUCT_DIR)/msvcr120d.dll', - '<(PRODUCT_DIR)/v8.dll', - ], - }, - }], ['OS=="linux"', { 'variables': { 'isolate_dependency_tracked': [ @@ -55,17 +42,6 @@ ], }, }], - ['OS=="linux" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/lib/libbase.so', - '<(PRODUCT_DIR)/lib/libbase_i18n.so', - '<(PRODUCT_DIR)/lib/libgin.so', - '<(PRODUCT_DIR)/lib/libmojo_system_impl.so', - '<(PRODUCT_DIR)/lib/libv8.so', - ], - }, - }], ['OS=="mac"', { 'variables': { 'isolate_dependency_tracked': [ @@ -74,23 +50,5 @@ ], }, }], - ['OS=="mac" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/libbase.dylib', - '<(PRODUCT_DIR)/libbase_i18n.dylib', - '<(PRODUCT_DIR)/libgfx.dylib', - '<(PRODUCT_DIR)/libgfx_geometry.dylib', - '<(PRODUCT_DIR)/libgin.dylib', - '<(PRODUCT_DIR)/libgl_wrapper.dylib', - '<(PRODUCT_DIR)/libgles2_utils.dylib', - '<(PRODUCT_DIR)/libmojo_common_lib.dylib', - '<(PRODUCT_DIR)/libmojo_environment_chromium_impl.dylib', - '<(PRODUCT_DIR)/libmojo_system_impl.dylib', - '<(PRODUCT_DIR)/libskia.dylib', - '<(PRODUCT_DIR)/libv8.dylib', - ], - }, - }], ], } diff --git a/mojo/mojo_js_unittests.isolate b/mojo/mojo_js_unittests.isolate index 770a7c3f039cf1..6ceaab17342250 100644 --- a/mojo/mojo_js_unittests.isolate +++ b/mojo/mojo_js_unittests.isolate @@ -34,19 +34,6 @@ ], }, }], - ['OS=="win" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/base.dll', - '<(PRODUCT_DIR)/base_i18n.dll', - '<(PRODUCT_DIR)/gin.dll', - '<(PRODUCT_DIR)/mojo_system_impl.dll', - '<(PRODUCT_DIR)/msvcp120d.dll', - '<(PRODUCT_DIR)/msvcr120d.dll', - '<(PRODUCT_DIR)/v8.dll', - ], - }, - }], ['OS=="linux"', { 'variables': { 'isolate_dependency_tracked': [ @@ -54,17 +41,6 @@ ], }, }], - ['OS=="linux" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/lib/libbase.so', - '<(PRODUCT_DIR)/lib/libbase_i18n.so', - '<(PRODUCT_DIR)/lib/libgin.so', - '<(PRODUCT_DIR)/lib/libmojo_system_impl.so', - '<(PRODUCT_DIR)/lib/libv8.so', - ], - }, - }], ['OS=="mac"', { 'variables': { 'isolate_dependency_tracked': [ @@ -72,17 +48,5 @@ ], }, }], - ['OS=="mac" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/libbase.dylib', - '<(PRODUCT_DIR)/libbase_i18n.dylib', - '<(PRODUCT_DIR)/libgin.dylib', - '<(PRODUCT_DIR)/libmojo_common_lib.dylib', - '<(PRODUCT_DIR)/libmojo_system_impl.dylib', - '<(PRODUCT_DIR)/libv8.dylib', - ], - }, - }], ], } diff --git a/net/net.isolate b/net/net.isolate index db983e7b82f8bb..f5ca9b501c3027 100644 --- a/net/net.isolate +++ b/net/net.isolate @@ -3,37 +3,8 @@ # found in the LICENSE file. { 'conditions': [ - ['OS=="linux" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/lib/libnet.so', - '<(PRODUCT_DIR)/lib/libnet_with_v8.so', - ], - }, - }], - ['OS=="mac" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/libnet.dylib', - '<(PRODUCT_DIR)/libnet_with_v8.dylib', - ], - }, - }], - ['OS=="win" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/net.dll', - '<(PRODUCT_DIR)/net_with_v8.dll', - ], - }, - }], ], 'includes': [ '../base/base.isolate', - '../crypto/crypto.isolate', - '../third_party/nss.isolate', - '../url/url.isolate', - 'third_party/nss/ssl.isolate', - 'v8.isolate', ], } diff --git a/net/net_unittests.isolate b/net/net_unittests.isolate index c88685d842f187..662eeb0bb5c038 100644 --- a/net/net_unittests.isolate +++ b/net/net_unittests.isolate @@ -38,15 +38,8 @@ 'read_only': 1, }, }], - ['OS=="linux" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/lib/libopenssl.so', - ], - }, - }], ], 'includes': [ - 'net.isolate', + '../base/base.isolate', ], } diff --git a/net/third_party/nss/ssl.isolate b/net/third_party/nss/ssl.isolate deleted file mode 100644 index f538e82e848f8c..00000000000000 --- a/net/third_party/nss/ssl.isolate +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright 2014 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. -{ - 'conditions': [ - ['OS=="mac" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/libcrssl.dylib', - ], - }, - }], - ['OS=="win" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/crssl.dll', - ], - }, - }], - ], - 'includes': [ - 'ssl_base.isolate', - ], -} diff --git a/net/third_party/nss/ssl_base.isolate b/net/third_party/nss/ssl_base.isolate deleted file mode 100644 index 3bae2bdd398f8e..00000000000000 --- a/net/third_party/nss/ssl_base.isolate +++ /dev/null @@ -1,16 +0,0 @@ -# Copyright 2014 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. -# -# This is what is included by base_unittests. -{ - 'conditions': [ - ['OS=="linux" and component=="shared_library" and use_openssl==0', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/lib/libcrssl.so', - ], - }, - }], - ], -} diff --git a/net/v8.isolate b/net/v8.isolate deleted file mode 100644 index 7ecc01f64dad22..00000000000000 --- a/net/v8.isolate +++ /dev/null @@ -1,30 +0,0 @@ -# Copyright 2014 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. -# -# TODO(maruel): Move to ../v8/v8.isolate but this is a separate repo. -{ - 'conditions': [ - ['OS=="linux" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/lib/libv8.so', - ], - }, - }], - ['OS=="mac" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/libv8.dylib', - ], - }, - }], - ['OS=="win" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/v8.dll', - ], - }, - }], - ], -} diff --git a/third_party/nss.isolate b/third_party/nss.isolate deleted file mode 100644 index 4a35f955938ea3..00000000000000 --- a/third_party/nss.isolate +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright 2014 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. -# -# TODO(maruel): this file should live in third_party/nss but two factors get in -# the way: -# - .isolate files do not support conditional includes. This works in gyp by -# using the 'dependencies': [ 'path/to/file.gyp:project' ] which dynamically -# loads project files. -# - third_party/nss is conditionally checked out. It is not checked out on -# linux. -{ - 'conditions': [ - ['OS=="mac" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/libcrnspr.dylib', - '<(PRODUCT_DIR)/libcrnss.dylib', - ], - }, - }], - ['OS=="win" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/crnspr.dll', - '<(PRODUCT_DIR)/crnss.dll', - ], - }, - }], - ], -} diff --git a/url/url.isolate b/url/url.isolate deleted file mode 100644 index ee27a0dc94947c..00000000000000 --- a/url/url.isolate +++ /dev/null @@ -1,28 +0,0 @@ -# Copyright 2014 The Chromium Authors. All rights reserved. -# Use of this source code is governed by a BSD-style license that can be -# found in the LICENSE file. -{ - 'conditions': [ - ['OS=="linux" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/lib/liburl_lib.so', - ], - }, - }], - ['OS=="mac" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/liburl_lib.dylib', - ], - }, - }], - ['OS=="win" and component=="shared_library"', { - 'variables': { - 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/url_lib.dll', - ], - }, - }], - ], -}