OLD | NEW |
1 # Copyright (C) 2012 Google Inc. All rights reserved. | 1 # Copyright (C) 2012 Google Inc. All rights reserved. |
2 # | 2 # |
3 # Redistribution and use in source and binary forms, with or without | 3 # Redistribution and use in source and binary forms, with or without |
4 # modification, are permitted provided that the following conditions are | 4 # modification, are permitted provided that the following conditions are |
5 # met: | 5 # met: |
6 # | 6 # |
7 # * Redistributions of source code must retain the above copyright | 7 # * Redistributions of source code must retain the above copyright |
8 # notice, this list of conditions and the following disclaimer. | 8 # notice, this list of conditions and the following disclaimer. |
9 # * Redistributions in binary form must reproduce the above | 9 # * Redistributions in binary form must reproduce the above |
10 # copyright notice, this list of conditions and the following disclaimer | 10 # copyright notice, this list of conditions and the following disclaimer |
(...skipping 13 matching lines...) Expand all Loading... |
24 # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | 24 # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
25 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 25 # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
26 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 26 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
27 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 27 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
28 { | 28 { |
29 'includes': [ | 29 'includes': [ |
30 '../build/win/precompile.gypi', | 30 '../build/win/precompile.gypi', |
31 '../build/features.gypi', | 31 '../build/features.gypi', |
32 'wtf.gypi', | 32 'wtf.gypi', |
33 ], | 33 ], |
34 'targets': [ | 34 'targets': [], |
35 { | 35 'conditions': [ |
36 # This target sets up defines and includes that are required by WTF and | 36 # Normally target should exists unconditionally and only their content |
37 # its dependents. | 37 # should be conditional. Those targets are intentionally only conditionally |
38 'target_name': 'wtf_config', | 38 # visible to make sure target using blink are not part of the iOS build (as |
39 'type': 'none', | 39 # iOS must not depends on blink). If you get an error about this target not |
40 'direct_dependent_settings': { | 40 # existing, then you must make the target depending on blink condition on |
41 'defines': [ | 41 # OS not being iOS. |
42 # Import features_defines from features.gypi | 42 ['OS!="ios"', { |
43 '<@(feature_defines)', | 43 'targets': [ |
44 ], | 44 { |
45 'conditions': [ | 45 # This target sets up defines and includes that are required by WTF an
d |
46 ['OS=="win"', { | 46 # its dependents. |
| 47 'target_name': 'wtf_config', |
| 48 'type': 'none', |
| 49 'direct_dependent_settings': { |
47 'defines': [ | 50 'defines': [ |
48 '__STD_C', | 51 # Import features_defines from features.gypi |
49 '_CRT_SECURE_NO_DEPRECATE', | 52 '<@(feature_defines)', |
50 '_SCL_SECURE_NO_DEPRECATE', | |
51 ], | 53 ], |
52 }], | 54 'conditions': [ |
53 ], | 55 ['OS=="win"', { |
54 }, | 56 'defines': [ |
55 }, | 57 '__STD_C', |
56 { | 58 '_CRT_SECURE_NO_DEPRECATE', |
57 'target_name': 'wtf', | 59 '_SCL_SECURE_NO_DEPRECATE', |
58 'type': '<(component)', | 60 ], |
59 'include_dirs': [ | 61 }], |
60 '..', | 62 ], |
61 ], | 63 }, |
62 'dependencies': [ | 64 }, |
63 'wtf_config', | 65 { |
64 '../config.gyp:config', | 66 'target_name': 'wtf', |
65 '<(DEPTH)/base/base.gyp:base', | 67 'type': '<(component)', |
66 '<(DEPTH)/third_party/icu/icu.gyp:icui18n', | 68 'include_dirs': [ |
67 '<(DEPTH)/third_party/icu/icu.gyp:icuuc', | 69 '..', |
68 ], | 70 ], |
69 'sources': [ | 71 'dependencies': [ |
70 '<@(wtf_files)', | 72 'wtf_config', |
71 ], | 73 '../config.gyp:config', |
72 'defines': [ | 74 '<(DEPTH)/base/base.gyp:base', |
73 'WTF_IMPLEMENTATION=1', | 75 '<(DEPTH)/third_party/icu/icu.gyp:icui18n', |
74 ], | 76 '<(DEPTH)/third_party/icu/icu.gyp:icuuc', |
75 'direct_dependent_settings': { | 77 ], |
76 'include_dirs': [ | 78 'sources': [ |
77 '..', | 79 '<@(wtf_files)', |
78 ], | 80 ], |
79 # Some warnings occur in WTF headers, so they must also be disabled | 81 'defines': [ |
80 # in targets that use WTF. | 82 'WTF_IMPLEMENTATION=1', |
81 'msvs_disabled_warnings': [ | 83 ], |
82 # Don't complain about calling specific versions of templatized | 84 'direct_dependent_settings': { |
83 # functions (e.g. in RefPtrHashMap.h). | 85 'include_dirs': [ |
84 4344, | 86 '..', |
85 # Don't complain about using "this" in an initializer list | 87 ], |
86 # (e.g. in StringImpl.h). | 88 # Some warnings occur in WTF headers, so they must also be disabled |
87 4355, | 89 # in targets that use WTF. |
| 90 'msvs_disabled_warnings': [ |
| 91 # Don't complain about calling specific versions of templatized |
| 92 # functions (e.g. in RefPtrHashMap.h). |
| 93 4344, |
| 94 # Don't complain about using "this" in an initializer list |
| 95 # (e.g. in StringImpl.h). |
| 96 4355, |
| 97 # Disable c4267 warnings until we fix size_t to int truncations. |
| 98 4267, |
| 99 ], |
| 100 }, |
| 101 'export_dependent_settings': [ |
| 102 'wtf_config', |
| 103 '<(DEPTH)/base/base.gyp:base', |
| 104 '<(DEPTH)/third_party/icu/icu.gyp:icui18n', |
| 105 '<(DEPTH)/third_party/icu/icu.gyp:icuuc', |
| 106 ], |
88 # Disable c4267 warnings until we fix size_t to int truncations. | 107 # Disable c4267 warnings until we fix size_t to int truncations. |
89 4267, | 108 'msvs_disabled_warnings': [4127, 4355, 4510, 4512, 4610, 4706, 4068, 4
267], |
90 ], | |
91 }, | |
92 'export_dependent_settings': [ | |
93 'wtf_config', | |
94 '<(DEPTH)/base/base.gyp:base', | |
95 '<(DEPTH)/third_party/icu/icu.gyp:icui18n', | |
96 '<(DEPTH)/third_party/icu/icu.gyp:icuuc', | |
97 ], | |
98 # Disable c4267 warnings until we fix size_t to int truncations. | |
99 'msvs_disabled_warnings': [4127, 4355, 4510, 4512, 4610, 4706, 4068, 4267]
, | |
100 'conditions': [ | |
101 ['OS=="android"', { | |
102 'link_settings': { 'libraries': [ '-llog' ] }, | |
103 }], | |
104 ['OS=="linux"', { | |
105 'link_settings': { 'libraries': [ '-ldl' ] }, | |
106 }], | |
107 ['OS=="win"', { | |
108 'sources/': [ | |
109 ['exclude', 'ThreadingPthreads\\.cpp$'], | |
110 ], | |
111 'include_dirs!': [ | |
112 '<(SHARED_INTERMEDIATE_DIR)/blink', | |
113 ], | |
114 'conditions': [ | 109 'conditions': [ |
115 ['component=="shared_library"', { | 110 ['OS=="android"', { |
116 # Chromium windows multi-dll build enables C++ exception and this | 111 'link_settings': { 'libraries': [ '-llog' ] }, |
117 # causes wtf to generate 4291 warning due to operator new/delete | 112 }], |
118 # implementations. Disable the warning for chromium windows | 113 ['OS=="linux"', { |
119 # multi-dll build. | 114 'link_settings': { 'libraries': [ '-ldl' ] }, |
120 'msvs_disabled_warnings': [4291], | 115 }], |
121 'direct_dependent_settings': { | 116 ['OS=="win"', { |
122 'msvs_disabled_warnings': [4291], | 117 'sources/': [ |
123 }, | 118 ['exclude', 'ThreadingPthreads\\.cpp$'], |
| 119 ], |
| 120 'include_dirs!': [ |
| 121 '<(SHARED_INTERMEDIATE_DIR)/blink', |
| 122 ], |
| 123 'conditions': [ |
| 124 ['component=="shared_library"', { |
| 125 # Chromium windows multi-dll build enables C++ exception and t
his |
| 126 # causes wtf to generate 4291 warning due to operator new/dele
te |
| 127 # implementations. Disable the warning for chromium windows |
| 128 # multi-dll build. |
| 129 'msvs_disabled_warnings': [4291], |
| 130 'direct_dependent_settings': { |
| 131 'msvs_disabled_warnings': [4291], |
| 132 }, |
| 133 }], |
| 134 ], |
| 135 }, { # OS!="win" |
| 136 'sources/': [ |
| 137 ['exclude', 'Win\\.cpp$'], |
| 138 ], |
| 139 }], |
| 140 ['OS=="mac"', { |
| 141 'link_settings': { |
| 142 'libraries': [ |
| 143 '$(SDKROOT)/System/Library/Frameworks/CoreFoundation.framework
', |
| 144 '$(SDKROOT)/System/Library/Frameworks/Foundation.framework', |
| 145 ] |
| 146 } |
| 147 }, { # OS!="mac" |
| 148 'sources/': [ |
| 149 ['exclude', 'CF\\.cpp$'], |
| 150 ['exclude', 'Mac\\.mm$'], |
| 151 # mac is the only OS that uses WebKit's copy of TCMalloc. |
| 152 ['exclude', 'TC.*\\.(cpp|h)$'], |
| 153 ], |
124 }], | 154 }], |
125 ], | 155 ], |
126 }, { # OS!="win" | 156 }, |
127 'sources/': [ | |
128 ['exclude', 'Win\\.cpp$'], | |
129 ], | |
130 }], | |
131 ['OS=="mac"', { | |
132 'link_settings': { | |
133 'libraries': [ | |
134 '$(SDKROOT)/System/Library/Frameworks/CoreFoundation.framework', | |
135 '$(SDKROOT)/System/Library/Frameworks/Foundation.framework', | |
136 ] | |
137 } | |
138 }, { # OS!="mac" | |
139 'sources/': [ | |
140 ['exclude', 'CF\\.cpp$'], | |
141 ['exclude', 'Mac\\.mm$'], | |
142 # mac is the only OS that uses WebKit's copy of TCMalloc. | |
143 ['exclude', 'TC.*\\.(cpp|h)$'], | |
144 ], | |
145 }], | |
146 ], | 157 ], |
147 }, | 158 }], |
148 ] | 159 ], |
149 } | 160 } |
OLD | NEW |