diff options
-rw-r--r-- | base/base.isolate | 22 | ||||
-rw-r--r-- | base/base_prefs.isolate | 28 | ||||
-rw-r--r-- | base/base_unittests.isolate | 1 | ||||
-rw-r--r-- | build/linux/system.isolate | 4 | ||||
-rw-r--r-- | crypto/crypto.isolate | 28 | ||||
-rw-r--r-- | net/net.isolate | 39 | ||||
-rw-r--r-- | net/net_unittests.isolate | 7 | ||||
-rw-r--r-- | net/third_party/nss/ssl.isolate | 14 | ||||
-rw-r--r-- | net/third_party/nss/ssl_base.isolate | 16 | ||||
-rw-r--r-- | net/v8.isolate | 30 | ||||
-rw-r--r-- | third_party/nss.isolate | 31 | ||||
-rw-r--r-- | url/url.isolate | 28 |
12 files changed, 240 insertions, 8 deletions
diff --git a/base/base.isolate b/base/base.isolate index c92a14b..bfa81fe 100644 --- a/base/base.isolate +++ b/base/base.isolate @@ -8,7 +8,6 @@ 'isolate_dependency_tracked': [ '<(PRODUCT_DIR)/lib/libbase.so', '<(PRODUCT_DIR)/lib/libbase_i18n.so', - '<(PRODUCT_DIR)/lib/libbase_prefs.so', ], }, }], @@ -17,7 +16,6 @@ 'isolate_dependency_tracked': [ '<(PRODUCT_DIR)/libbase.dylib', '<(PRODUCT_DIR)/libbase_i18n.dylib', - '<(PRODUCT_DIR)/libbase_prefs.dylib', ], }, }], @@ -26,13 +24,31 @@ 'isolate_dependency_tracked': [ '<(PRODUCT_DIR)/base.dll', '<(PRODUCT_DIR)/base_i18n.dll', - '<(PRODUCT_DIR)/base_prefs.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 (?). '../third_party/icu/icu.isolate', ], } diff --git a/base/base_prefs.isolate b/base/base_prefs.isolate new file mode 100644 index 0000000..dbc94d3 --- /dev/null +++ b/base/base_prefs.isolate @@ -0,0 +1,28 @@ +# 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 e9df795..3da5a20 100644 --- a/base/base_unittests.isolate +++ b/base/base_unittests.isolate @@ -57,5 +57,6 @@ ], 'includes': [ 'base.isolate', + 'base_prefs.isolate', ], } diff --git a/build/linux/system.isolate b/build/linux/system.isolate index 79fa36b..3933af1 100644 --- a/build/linux/system.isolate +++ b/build/linux/system.isolate @@ -2,7 +2,11 @@ # 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/crypto/crypto.isolate b/crypto/crypto.isolate new file mode 100644 index 0000000..9679d5b --- /dev/null +++ b/crypto/crypto.isolate @@ -0,0 +1,28 @@ +# 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/net/net.isolate b/net/net.isolate new file mode 100644 index 0000000..db983e7 --- /dev/null +++ b/net/net.isolate @@ -0,0 +1,39 @@ +# 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/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 96e6517..e09516d 100644 --- a/net/net_unittests.isolate +++ b/net/net_unittests.isolate @@ -1,4 +1,4 @@ -# Copyright (c) 2012 The Chromium Authors. All rights reserved. +# 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. { @@ -38,14 +38,15 @@ ], }, }], - ['OS=="win"', { + ['OS=="linux" and component=="shared_library"', { 'variables': { 'isolate_dependency_tracked': [ + '<(PRODUCT_DIR)/lib/libopenssl.so', ], }, }], ], 'includes': [ - '../third_party/icu/icu.isolate', + 'net.isolate', ], } diff --git a/net/third_party/nss/ssl.isolate b/net/third_party/nss/ssl.isolate index db208ed..f538e82 100644 --- a/net/third_party/nss/ssl.isolate +++ b/net/third_party/nss/ssl.isolate @@ -3,12 +3,22 @@ # found in the LICENSE file. { 'conditions': [ - ['OS=="linux" and component=="shared_library" and use_openssl==0', { + ['OS=="mac" and component=="shared_library"', { 'variables': { 'isolate_dependency_tracked': [ - '<(PRODUCT_DIR)/lib/libcrssl.so', + '<(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 new file mode 100644 index 0000000..3bae2bd --- /dev/null +++ b/net/third_party/nss/ssl_base.isolate @@ -0,0 +1,16 @@ +# 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 new file mode 100644 index 0000000..7ecc01f --- /dev/null +++ b/net/v8.isolate @@ -0,0 +1,30 @@ +# 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 new file mode 100644 index 0000000..4a35f95 --- /dev/null +++ b/third_party/nss.isolate @@ -0,0 +1,31 @@ +# 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 new file mode 100644 index 0000000..ee27a0d --- /dev/null +++ b/url/url.isolate @@ -0,0 +1,28 @@ +# 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', + ], + }, + }], + ], +} |