OLD | NEW |
1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 { | 4 { |
5 'conditions': [ | 5 'conditions': [ |
6 ['OS=="linux" and component=="shared_library"', { | 6 ['OS=="linux" and component=="shared_library"', { |
7 'variables': { | 7 'variables': { |
8 'isolate_dependency_tracked': [ | 8 'isolate_dependency_tracked': [ |
9 '<(PRODUCT_DIR)/lib/libbase.so', | 9 '<(PRODUCT_DIR)/lib/libbase.so', |
10 '<(PRODUCT_DIR)/lib/libbase_i18n.so', | 10 '<(PRODUCT_DIR)/lib/libbase_i18n.so', |
11 '<(PRODUCT_DIR)/lib/libbase_prefs.so', | |
12 ], | 11 ], |
13 }, | 12 }, |
14 }], | 13 }], |
15 ['OS=="mac" and component=="shared_library"', { | 14 ['OS=="mac" and component=="shared_library"', { |
16 'variables': { | 15 'variables': { |
17 'isolate_dependency_tracked': [ | 16 'isolate_dependency_tracked': [ |
18 '<(PRODUCT_DIR)/libbase.dylib', | 17 '<(PRODUCT_DIR)/libbase.dylib', |
19 '<(PRODUCT_DIR)/libbase_i18n.dylib', | 18 '<(PRODUCT_DIR)/libbase_i18n.dylib', |
20 '<(PRODUCT_DIR)/libbase_prefs.dylib', | |
21 ], | 19 ], |
22 }, | 20 }, |
23 }], | 21 }], |
24 ['OS=="win" and component=="shared_library"', { | 22 ['OS=="win" and component=="shared_library"', { |
25 'variables': { | 23 'variables': { |
26 'isolate_dependency_tracked': [ | 24 'isolate_dependency_tracked': [ |
27 '<(PRODUCT_DIR)/base.dll', | 25 '<(PRODUCT_DIR)/base.dll', |
28 '<(PRODUCT_DIR)/base_i18n.dll', | 26 '<(PRODUCT_DIR)/base_i18n.dll', |
29 '<(PRODUCT_DIR)/base_prefs.dll', | |
30 ], | 27 ], |
31 }, | 28 }, |
32 }], | 29 }], |
33 ], | 30 ], |
| 31 # Important note: |
| 32 # Running: |
| 33 # 1. GYP_DEFINES=component=shared_library build/gyp_chromium |
| 34 # 2. ninja -C out/Debug base |
| 35 # will result with only libbase.so being built. Building base by itself won't |
| 36 # force the build of icu or nss. This is because base is not usable by itself. |
| 37 # But on the other hand any test that includes base will be building and |
| 38 # loading at runtime both icu and nss. So define here what is brought by |
| 39 # importing base, not what base would load at runtime. |
| 40 # |
| 41 # There is no such thing as direct_dependent in .isolate, so it's not the best |
| 42 # format to describe this kind of thing. But as a user of base.so, the user |
| 43 # will be importing these other libraries: |
34 'includes': [ | 44 'includes': [ |
| 45 # While the target 'base' doesn't depend on ../build/linux/system.gyp:ssl |
| 46 # itself, virtually all targets using it has to include |
| 47 # ../third_party/nss/ssl.gyp:libssl through system.gyp. |
35 '../build/linux/system.isolate', | 48 '../build/linux/system.isolate', |
| 49 # While the target 'base' doesn't depend on ../third_party/icu/icu.gyp |
| 50 # itself, virtually all targets using it has to include icu. The only |
| 51 # exception is the Windows sandbox (?). |
36 '../third_party/icu/icu.isolate', | 52 '../third_party/icu/icu.isolate', |
37 ], | 53 ], |
38 } | 54 } |
OLD | NEW |