OLD | NEW |
1 # Copyright 2014 The Crashpad Authors. All rights reserved. | 1 # Copyright 2014 The Crashpad Authors. All rights reserved. |
2 # | 2 # |
3 # Licensed under the Apache License, Version 2.0 (the "License"); | 3 # Licensed under the Apache License, Version 2.0 (the "License"); |
4 # you may not use this file except in compliance with the License. | 4 # you may not use this file except in compliance with the License. |
5 # You may obtain a copy of the License at | 5 # You may obtain a copy of the License at |
6 # | 6 # |
7 # http://www.apache.org/licenses/LICENSE-2.0 | 7 # http://www.apache.org/licenses/LICENSE-2.0 |
8 # | 8 # |
9 # Unless required by applicable law or agreed to in writing, software | 9 # Unless required by applicable law or agreed to in writing, software |
10 # distributed under the License is distributed on an "AS IS" BASIS, | 10 # distributed under the License is distributed on an "AS IS" BASIS, |
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | 11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
12 # See the License for the specific language governing permissions and | 12 # See the License for the specific language governing permissions and |
13 # limitations under the License. | 13 # limitations under the License. |
14 | 14 |
15 { | 15 { |
16 'includes': [ | 16 'includes': [ |
17 '../../build/crashpad_dependencies.gypi', | 17 '../../build/crashpad_dependencies.gypi', |
18 ], | 18 ], |
19 'conditions': [ | 19 'conditions': [ |
20 ['1==1', { # Defer processing until crashpad_dependencies is set | 20 ['crashpad_dependencies!="chromium"', { |
21 'variables': { | 21 'variables': { |
22 'conditions': [ | 22 'conditions': [ |
23 ['crashpad_dependencies=="standalone"', { | 23 ['crashpad_dependencies=="standalone"', { |
24 'gmock_dir': 'gtest/googlemock', | 24 'gmock_dir': 'gtest/googlemock', |
25 }], | 25 }, { |
26 ['crashpad_dependencies=="external"', { | |
27 'gmock_dir': '../../../../gmock', | 26 'gmock_dir': '../../../../gmock', |
28 }], | 27 }], |
29 ], | 28 ], |
30 }, | 29 }, |
31 }], | 30 'target_defaults': { |
32 ], | 31 # gmock relies heavily on objects with static storage duration. |
33 'target_defaults': { | 32 'xcode_settings': { |
34 # gmock relies heavily on objects with static storage duration. | 33 'WARNING_CFLAGS!': [ |
35 'xcode_settings': { | 34 '-Wexit-time-destructors', |
36 'WARNING_CFLAGS!': [ | 35 ], |
37 '-Wexit-time-destructors', | 36 }, |
38 ], | 37 'cflags!': [ |
39 }, | 38 '-Wexit-time-destructors', |
40 'cflags!': [ | 39 ], |
41 '-Wexit-time-destructors', | 40 }, |
42 ], | |
43 }, | |
44 | 41 |
45 'targets': [ | 42 'targets': [ |
46 { | 43 { |
47 'target_name': 'gmock', | 44 'target_name': 'gmock', |
48 'type': 'static_library', | 45 'type': 'static_library', |
49 'dependencies': [ | 46 'dependencies': [ |
50 'gtest.gyp:gtest', | 47 'gtest.gyp:gtest', |
51 ], | 48 ], |
52 'include_dirs': [ | 49 'include_dirs': [ |
53 '<(gmock_dir)', | 50 '<(gmock_dir)', |
54 '<(gmock_dir)/include', | 51 '<(gmock_dir)/include', |
55 ], | 52 ], |
56 'sources': [ | 53 'sources': [ |
57 '<(gmock_dir)/include/gmock/gmock-actions.h', | 54 '<(gmock_dir)/include/gmock/gmock-actions.h', |
58 '<(gmock_dir)/include/gmock/gmock-cardinalities.h', | 55 '<(gmock_dir)/include/gmock/gmock-cardinalities.h', |
59 '<(gmock_dir)/include/gmock/gmock-generated-actions.h', | 56 '<(gmock_dir)/include/gmock/gmock-generated-actions.h', |
60 '<(gmock_dir)/include/gmock/gmock-generated-function-mockers.h', | 57 '<(gmock_dir)/include/gmock/gmock-generated-function-mockers.h', |
61 '<(gmock_dir)/include/gmock/gmock-generated-matchers.h', | 58 '<(gmock_dir)/include/gmock/gmock-generated-matchers.h', |
62 '<(gmock_dir)/include/gmock/gmock-generated-nice-strict.h', | 59 '<(gmock_dir)/include/gmock/gmock-generated-nice-strict.h', |
63 '<(gmock_dir)/include/gmock/gmock-matchers.h', | 60 '<(gmock_dir)/include/gmock/gmock-matchers.h', |
64 '<(gmock_dir)/include/gmock/gmock-more-actions.h', | 61 '<(gmock_dir)/include/gmock/gmock-more-actions.h', |
65 '<(gmock_dir)/include/gmock/gmock-more-matchers.h', | 62 '<(gmock_dir)/include/gmock/gmock-more-matchers.h', |
66 '<(gmock_dir)/include/gmock/gmock-spec-builders.h', | 63 '<(gmock_dir)/include/gmock/gmock-spec-builders.h', |
67 '<(gmock_dir)/include/gmock/gmock.h', | 64 '<(gmock_dir)/include/gmock/gmock.h', |
68 '<(gmock_dir)/include/gmock/internal/custom/gmock-generated-actions.h', | 65 '<(gmock_dir)/include/gmock/internal/custom/gmock-generated-actions.
h', |
69 '<(gmock_dir)/include/gmock/internal/custom/gmock-matchers.h', | 66 '<(gmock_dir)/include/gmock/internal/custom/gmock-matchers.h', |
70 '<(gmock_dir)/include/gmock/internal/custom/gmock-port.h', | 67 '<(gmock_dir)/include/gmock/internal/custom/gmock-port.h', |
71 '<(gmock_dir)/include/gmock/internal/gmock-generated-internal-utils.h', | 68 '<(gmock_dir)/include/gmock/internal/gmock-generated-internal-utils.
h', |
72 '<(gmock_dir)/include/gmock/internal/gmock-internal-utils.h', | 69 '<(gmock_dir)/include/gmock/internal/gmock-internal-utils.h', |
73 '<(gmock_dir)/include/gmock/internal/gmock-port.h', | 70 '<(gmock_dir)/include/gmock/internal/gmock-port.h', |
74 '<(gmock_dir)/src/gmock-all.cc', | 71 '<(gmock_dir)/src/gmock-all.cc', |
75 '<(gmock_dir)/src/gmock-cardinalities.cc', | 72 '<(gmock_dir)/src/gmock-cardinalities.cc', |
76 '<(gmock_dir)/src/gmock-internal-utils.cc', | 73 '<(gmock_dir)/src/gmock-internal-utils.cc', |
77 '<(gmock_dir)/src/gmock-matchers.cc', | 74 '<(gmock_dir)/src/gmock-matchers.cc', |
78 '<(gmock_dir)/src/gmock-spec-builders.cc', | 75 '<(gmock_dir)/src/gmock-spec-builders.cc', |
79 '<(gmock_dir)/src/gmock.cc', | 76 '<(gmock_dir)/src/gmock.cc', |
80 ], | 77 ], |
81 'sources!': [ | 78 'sources!': [ |
82 '<(gmock_dir)/src/gmock-all.cc', | 79 '<(gmock_dir)/src/gmock-all.cc', |
83 ], | 80 ], |
84 | 81 |
85 'direct_dependent_settings': { | 82 'direct_dependent_settings': { |
86 'include_dirs': [ | 83 'include_dirs': [ |
87 '<(gmock_dir)/include', | 84 '<(gmock_dir)/include', |
88 ], | 85 ], |
89 'conditions': [ | |
90 ['clang!=0', { | |
91 # The MOCK_METHODn() macros do not specify “override”, which | |
92 # triggers this warning in users: “error: 'Method' overrides a | |
93 # member function but is not marked 'override' | |
94 # [-Werror,-Winconsistent-missing-override]”. Suppress these | |
95 # warnings, and add -Wno-unknown-warning-option because only | |
96 # recent versions of clang (trunk r220703 and later, version | |
97 # 3.6 and later) recognize it. | |
98 'conditions': [ | 86 'conditions': [ |
99 ['OS=="mac"', { | 87 ['clang!=0', { |
100 'xcode_settings': { | 88 # The MOCK_METHODn() macros do not specify “override”, which |
101 'WARNING_CFLAGS': [ | 89 # triggers this warning in users: “error: 'Method' overrides a |
102 '-Wno-inconsistent-missing-override', | 90 # member function but is not marked 'override' |
103 '-Wno-unknown-warning-option', | 91 # [-Werror,-Winconsistent-missing-override]”. Suppress these |
104 ], | 92 # warnings, and add -Wno-unknown-warning-option because only |
105 }, | 93 # recent versions of clang (trunk r220703 and later, version |
106 }], | 94 # 3.6 and later) recognize it. |
107 ['OS=="linux"', { | 95 'conditions': [ |
108 'cflags': [ | 96 ['OS=="mac"', { |
109 '-Wno-inconsistent-missing-override', | 97 'xcode_settings': { |
110 '-Wno-unknown-warning-option', | 98 'WARNING_CFLAGS': [ |
| 99 '-Wno-inconsistent-missing-override', |
| 100 '-Wno-unknown-warning-option', |
| 101 ], |
| 102 }, |
| 103 }], |
| 104 ['OS=="linux"', { |
| 105 'cflags': [ |
| 106 '-Wno-inconsistent-missing-override', |
| 107 '-Wno-unknown-warning-option', |
| 108 ], |
| 109 }], |
111 ], | 110 ], |
112 }], | 111 }], |
113 ], | 112 ], |
114 }], | 113 }, |
115 ], | 114 'export_dependent_settings': [ |
116 }, | 115 'gtest.gyp:gtest', |
117 'export_dependent_settings': [ | 116 ], |
118 'gtest.gyp:gtest', | 117 }, |
| 118 { |
| 119 'target_name': 'gmock_main', |
| 120 'type': 'static_library', |
| 121 'dependencies': [ |
| 122 'gmock', |
| 123 'gtest.gyp:gtest', |
| 124 ], |
| 125 'sources': [ |
| 126 '<(gmock_dir)/src/gmock_main.cc', |
| 127 ], |
| 128 }, |
| 129 { |
| 130 'target_name': 'gmock_test_executable', |
| 131 'type': 'none', |
| 132 'dependencies': [ |
| 133 'gmock', |
| 134 'gtest.gyp:gtest', |
| 135 ], |
| 136 'direct_dependent_settings': { |
| 137 'type': 'executable', |
| 138 'include_dirs': [ |
| 139 '<(gmock_dir)', |
| 140 ], |
| 141 }, |
| 142 'export_dependent_settings': [ |
| 143 'gmock', |
| 144 'gtest.gyp:gtest', |
| 145 ], |
| 146 }, |
| 147 { |
| 148 'target_name': 'gmock_all_test', |
| 149 'dependencies': [ |
| 150 'gmock_test_executable', |
| 151 'gmock_main', |
| 152 ], |
| 153 'include_dirs': [ |
| 154 'gtest/googletest', |
| 155 ], |
| 156 'sources': [ |
| 157 '<(gmock_dir)/test/gmock-actions_test.cc', |
| 158 '<(gmock_dir)/test/gmock-cardinalities_test.cc', |
| 159 '<(gmock_dir)/test/gmock-generated-actions_test.cc', |
| 160 '<(gmock_dir)/test/gmock-generated-function-mockers_test.cc', |
| 161 '<(gmock_dir)/test/gmock-generated-internal-utils_test.cc', |
| 162 '<(gmock_dir)/test/gmock-generated-matchers_test.cc', |
| 163 '<(gmock_dir)/test/gmock-internal-utils_test.cc', |
| 164 '<(gmock_dir)/test/gmock-matchers_test.cc', |
| 165 '<(gmock_dir)/test/gmock-more-actions_test.cc', |
| 166 '<(gmock_dir)/test/gmock-nice-strict_test.cc', |
| 167 '<(gmock_dir)/test/gmock-port_test.cc', |
| 168 '<(gmock_dir)/test/gmock-spec-builders_test.cc', |
| 169 '<(gmock_dir)/test/gmock_test.cc', |
| 170 ], |
| 171 }, |
| 172 { |
| 173 'target_name': 'gmock_link_test', |
| 174 'dependencies': [ |
| 175 'gmock_test_executable', |
| 176 'gmock_main', |
| 177 ], |
| 178 'sources': [ |
| 179 '<(gmock_dir)/test/gmock_link_test.cc', |
| 180 '<(gmock_dir)/test/gmock_link_test.h', |
| 181 '<(gmock_dir)/test/gmock_link2_test.cc', |
| 182 ], |
| 183 }, |
| 184 { |
| 185 'target_name': 'gmock_stress_test', |
| 186 'dependencies': [ |
| 187 'gmock_test_executable', |
| 188 ], |
| 189 'sources': [ |
| 190 '<(gmock_dir)/test/gmock_stress_test.cc', |
| 191 ], |
| 192 }, |
| 193 { |
| 194 'target_name': 'gmock_all_tests', |
| 195 'type': 'none', |
| 196 'dependencies': [ |
| 197 'gmock_all_test', |
| 198 'gmock_link_test', |
| 199 'gmock_stress_test', |
| 200 ], |
| 201 }, |
119 ], | 202 ], |
120 }, | 203 }, { # else: crashpad_dependencies=="chromium" |
121 { | 204 'targets': [ |
122 'target_name': 'gmock_main', | 205 { |
123 'type': 'static_library', | 206 'target_name': 'gmock', |
124 'dependencies': [ | 207 'type': 'none', |
125 'gmock', | 208 'dependencies': [ |
126 'gtest.gyp:gtest', | 209 '<(DEPTH)/testing/gmock.gyp:gmock', |
| 210 ], |
| 211 'export_dependent_settings': [ |
| 212 '<(DEPTH)/testing/gmock.gyp:gmock', |
| 213 ], |
| 214 }, |
| 215 { |
| 216 'target_name': 'gmock_main', |
| 217 'type': 'none', |
| 218 'dependencies': [ |
| 219 '<(DEPTH)/testing/gmock.gyp:gmock_main', |
| 220 ], |
| 221 'export_dependent_settings': [ |
| 222 '<(DEPTH)/testing/gmock.gyp:gmock_main', |
| 223 ], |
| 224 }, |
127 ], | 225 ], |
128 'sources': [ | 226 }], |
129 '<(gmock_dir)/src/gmock_main.cc', | |
130 ], | |
131 }, | |
132 { | |
133 'target_name': 'gmock_test_executable', | |
134 'type': 'none', | |
135 'dependencies': [ | |
136 'gmock', | |
137 'gtest.gyp:gtest', | |
138 ], | |
139 'direct_dependent_settings': { | |
140 'type': 'executable', | |
141 'include_dirs': [ | |
142 '<(gmock_dir)', | |
143 ], | |
144 }, | |
145 'export_dependent_settings': [ | |
146 'gmock', | |
147 'gtest.gyp:gtest', | |
148 ], | |
149 }, | |
150 { | |
151 'target_name': 'gmock_all_test', | |
152 'dependencies': [ | |
153 'gmock_test_executable', | |
154 'gmock_main', | |
155 ], | |
156 'include_dirs': [ | |
157 'gtest/googletest', | |
158 ], | |
159 'sources': [ | |
160 '<(gmock_dir)/test/gmock-actions_test.cc', | |
161 '<(gmock_dir)/test/gmock-cardinalities_test.cc', | |
162 '<(gmock_dir)/test/gmock-generated-actions_test.cc', | |
163 '<(gmock_dir)/test/gmock-generated-function-mockers_test.cc', | |
164 '<(gmock_dir)/test/gmock-generated-internal-utils_test.cc', | |
165 '<(gmock_dir)/test/gmock-generated-matchers_test.cc', | |
166 '<(gmock_dir)/test/gmock-internal-utils_test.cc', | |
167 '<(gmock_dir)/test/gmock-matchers_test.cc', | |
168 '<(gmock_dir)/test/gmock-more-actions_test.cc', | |
169 '<(gmock_dir)/test/gmock-nice-strict_test.cc', | |
170 '<(gmock_dir)/test/gmock-port_test.cc', | |
171 '<(gmock_dir)/test/gmock-spec-builders_test.cc', | |
172 '<(gmock_dir)/test/gmock_test.cc', | |
173 ], | |
174 }, | |
175 { | |
176 'target_name': 'gmock_link_test', | |
177 'dependencies': [ | |
178 'gmock_test_executable', | |
179 'gmock_main', | |
180 ], | |
181 'sources': [ | |
182 '<(gmock_dir)/test/gmock_link_test.cc', | |
183 '<(gmock_dir)/test/gmock_link_test.h', | |
184 '<(gmock_dir)/test/gmock_link2_test.cc', | |
185 ], | |
186 }, | |
187 { | |
188 'target_name': 'gmock_stress_test', | |
189 'dependencies': [ | |
190 'gmock_test_executable', | |
191 ], | |
192 'sources': [ | |
193 '<(gmock_dir)/test/gmock_stress_test.cc', | |
194 ], | |
195 }, | |
196 { | |
197 'target_name': 'gmock_all_tests', | |
198 'type': 'none', | |
199 'dependencies': [ | |
200 'gmock_all_test', | |
201 'gmock_link_test', | |
202 'gmock_stress_test', | |
203 ], | |
204 }, | |
205 ], | 227 ], |
206 } | 228 } |
OLD | NEW |