Update mojo sdk to rev 1dc8a9a5db73d3718d99917fadf31f5fb2ebad4f
[chromium-blink-merge.git] / third_party / leveldatabase / leveldatabase.gyp
blobdce7b426c8f664f05b10c078ae0dc626b6ba2fb9
1 # Copyright (c) 2011 The LevelDB Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. See the AUTHORS file for names of contributors.
6   'conditions': [
7     ['OS=="android"', {
8       'targets': [{
9         'target_name': 'env_chromium_unittests_apk',
10         'type': 'none',
11         'dependencies': [
12           '<(DEPTH)/base/base.gyp:base_java',
13           'env_chromium_unittests',
14         ],
15         'variables': {
16           'test_suite_name': 'env_chromium_unittests',
17         },
18         'includes': [ '../../build/apk_test.gypi' ],
19       }],
20     }],
21   ],
22   'target_defaults': {
23     'defines': [
24       'LEVELDB_PLATFORM_CHROMIUM=1',
25     ],
26     'include_dirs': [
27       '.',
28       'src/',
29       'src/include/',
30     ],
31   },
32   'targets': [
33     {
34       'target_name': 'leveldatabase',
35       'type': 'static_library',
36       'dependencies': [
37         '../../base/base.gyp:base',
38         # base::LazyInstance is a template that pulls in dynamic_annotations so
39         # we need to explictly link in the code for dynamic_annotations.
40         '../../base/third_party/dynamic_annotations/dynamic_annotations.gyp:dynamic_annotations',
41         '../../third_party/re2/re2.gyp:re2',
42         '../../third_party/snappy/snappy.gyp:snappy',
43       ],
44       'direct_dependent_settings': {
45         'include_dirs': [
46           'src/include/',
47           'src/',
48           '.',
49         ],
50       },
51       # Patch posted for upstream, can be removed once that's landed and
52       # rolled into Chromium.
53       # Internal link: https://mondrian.corp.google.com/#review/29997992
54       'msvs_disabled_warnings': [
55         # Signed/unsigned comparison.
56         4018,
58         # TODO(jschuh): http://crbug.com/167187 size_t -> int
59         4267,
60       ],
61       'sources': [
62         # Include and then exclude so that all files show up in IDEs, even if
63         # they don't build.
64         'chromium_logger.h',
65         'env_chromium.cc',
66         'env_chromium.h',
67         'env_idb.h',
68         'port/port_chromium.cc',
69         'port/port_chromium.h',
70         'src/db/builder.cc',
71         'src/db/builder.h',
72         'src/db/db_impl.cc',
73         'src/db/db_impl.h',
74         'src/db/db_iter.cc',
75         'src/db/db_iter.h',
76         'src/db/dbformat.cc',
77         'src/db/dbformat.h',
78         'src/db/dumpfile.cc',
79         'src/db/filename.cc',
80         'src/db/filename.h',
81         'src/db/log_format.h',
82         'src/db/log_reader.cc',
83         'src/db/log_reader.h',
84         'src/db/log_writer.cc',
85         'src/db/log_writer.h',
86         'src/db/memtable.cc',
87         'src/db/memtable.h',
88         'src/db/repair.cc',
89         'src/db/skiplist.h',
90         'src/db/snapshot.h',
91         'src/db/table_cache.cc',
92         'src/db/table_cache.h',
93         'src/db/version_edit.cc',
94         'src/db/version_edit.h',
95         'src/db/version_set.cc',
96         'src/db/version_set.h',
97         'src/db/write_batch.cc',
98         'src/db/write_batch_internal.h',
99         'src/helpers/memenv/memenv.cc',
100         'src/helpers/memenv/memenv.h',
101         'src/include/leveldb/cache.h',
102         'src/include/leveldb/comparator.h',
103         'src/include/leveldb/db.h',
104         'src/include/leveldb/dumpfile.h',
105         'src/include/leveldb/env.h',
106         'src/include/leveldb/filter_policy.h',
107         'src/include/leveldb/iterator.h',
108         'src/include/leveldb/options.h',
109         'src/include/leveldb/slice.h',
110         'src/include/leveldb/status.h',
111         'src/include/leveldb/table.h',
112         'src/include/leveldb/table_builder.h',
113         'src/include/leveldb/write_batch.h',
114         'src/port/port.h',
115         'src/table/block.cc',
116         'src/table/block.h',
117         'src/table/block_builder.cc',
118         'src/table/block_builder.h',
119         'src/table/filter_block.cc',
120         'src/table/filter_block.h',
121         'src/table/format.cc',
122         'src/table/format.h',
123         'src/table/iterator.cc',
124         'src/table/iterator_wrapper.h',
125         'src/table/merger.cc',
126         'src/table/merger.h',
127         'src/table/table.cc',
128         'src/table/table_builder.cc',
129         'src/table/two_level_iterator.cc',
130         'src/table/two_level_iterator.h',
131         'src/util/arena.cc',
132         'src/util/arena.h',
133         'src/util/bloom.cc',
134         'src/util/cache.cc',
135         'src/util/coding.cc',
136         'src/util/coding.h',
137         'src/util/comparator.cc',
138         'src/util/crc32c.cc',
139         'src/util/crc32c.h',
140         'src/util/env.cc',
141         'src/util/filter_policy.cc',
142         'src/util/hash.cc',
143         'src/util/hash.h',
144         'src/util/logging.cc',
145         'src/util/logging.h',
146         'src/util/mutexlock.h',
147         'src/util/options.cc',
148         'src/util/random.h',
149         'src/util/status.cc',
150       ],
151     },
152     {
153       'target_name': 'env_chromium_unittests',
154       'type': '<(gtest_target_type)',
155       'dependencies': [
156         'leveldatabase',
157         '../../base/base.gyp:test_support_base',
158         '../../testing/gtest.gyp:gtest',
159       ],
160       'sources': [
161         'env_chromium_unittest.cc',
162       ],
163       'conditions': [
164         ['OS=="android"', {
165           'type': 'shared_library',
166           'dependencies': [
167             '../../testing/android/native_test.gyp:native_test_native_code',
168             '../../tools/android/forwarder2/forwarder.gyp:forwarder2',
169           ],
170         }],
171       ],
172     },
173     {
174       'target_name': 'leveldb_testutil',
175       'type': 'static_library',
176       'dependencies': [
177         '../../base/base.gyp:base',
178         'leveldatabase',
179       ],
180       'export_dependent_settings': [
181         # The tests use include directories from these projects.
182         '../../base/base.gyp:base',
183         'leveldatabase',
184       ],
185       'sources': [
186         'src/util/histogram.cc',
187         'src/util/histogram.h',
188         'src/util/testharness.cc',
189         'src/util/testharness.h',
190         'src/util/testutil.cc',
191         'src/util/testutil.h',
192       ],
193     },
194     {
195       'target_name': 'leveldb_arena_test',
196       'type': 'executable',
197       'dependencies': [
198         'leveldb_testutil',
199       ],
200       'sources': [
201         'src/util/arena_test.cc',
202       ],
203     },
204     {
205       'target_name': 'leveldb_bloom_test',
206       'type': 'executable',
207       'dependencies': [
208         'leveldb_testutil',
209       ],
210       'sources': [
211         'src/util/bloom_test.cc',
212       ],
213     },
214     {
215       'target_name': 'leveldb_cache_test',
216       'type': 'executable',
217       'dependencies': [
218         'leveldb_testutil',
219       ],
220       'sources': [
221         'src/util/cache_test.cc',
222       ],
223     },
224     {
225       'target_name': 'leveldb_coding_test',
226       'type': 'executable',
227       'dependencies': [
228         'leveldb_testutil',
229       ],
230       'sources': [
231         'src/util/coding_test.cc',
232       ],
233     },
234     {
235       'target_name': 'leveldb_corruption_test',
236       'type': 'executable',
237       'dependencies': [
238         'leveldb_testutil',
239       ],
240       'sources': [
241         'src/db/corruption_test.cc',
242       ],
243     },
244     {
245       'target_name': 'leveldb_fault_injection_test',
246       'type': 'executable',
247       'dependencies': [
248         'leveldb_testutil',
249       ],
250       'sources': [
251         'src/db/fault_injection_test.cc',
252       ],
253     },
254     {
255       'target_name': 'leveldb_recovery_test',
256       'type': 'executable',
257       'dependencies': [
258         'leveldb_testutil',
259       ],
260       'sources': [
261         'src/db/recovery_test.cc',
262       ],
263     },
264     {
265       'target_name': 'leveldb_crc32c_test',
266       'type': 'executable',
267       'dependencies': [
268         'leveldb_testutil',
269       ],
270       'sources': [
271         'src/util/crc32c_test.cc',
272       ],
273     },
274     {
275       'target_name': 'leveldb_db_bench',
276       'type': 'executable',
277       'dependencies': [
278         'leveldb_testutil',
279       ],
280       'sources': [
281         'src/db/db_bench.cc',
282       ],
283     },
284     {
285       'target_name': 'leveldb_db_test',
286       'type': 'executable',
287       'dependencies': [
288         'leveldb_testutil',
289       ],
290       'sources': [
291         'src/db/db_test.cc',
292       ],
293     },
294     {
295       'target_name': 'leveldb_dbformat_test',
296       'type': 'executable',
297       'dependencies': [
298         'leveldb_testutil',
299       ],
300       'sources': [
301         'src/db/dbformat_test.cc',
302       ],
303     },
304     {
305       'target_name': 'leveldb_env_test',
306       'type': 'executable',
307       'dependencies': [
308         'leveldb_testutil',
309       ],
310       'sources': [
311         'src/util/env_test.cc',
312       ],
313     },
314     {
315       'target_name': 'leveldb_filename_test',
316       'type': 'executable',
317       'dependencies': [
318         'leveldb_testutil',
319       ],
320       'sources': [
321         'src/db/filename_test.cc',
322       ],
323     },
324     {
325       'target_name': 'leveldb_filter_block_test',
326       'type': 'executable',
327       'dependencies': [
328         'leveldb_testutil',
329       ],
330       'sources': [
331         'src/table/filter_block_test.cc',
332       ],
333     },
334     {
335       'target_name': 'leveldb_log_test',
336       'type': 'executable',
337       'dependencies': [
338         'leveldb_testutil',
339       ],
340       'sources': [
341         'src/db/log_test.cc',
342       ],
343     },
344     {
345       'target_name': 'leveldb_skiplist_test',
346       'type': 'executable',
347       'dependencies': [
348         'leveldb_testutil',
349       ],
350       'sources': [
351         'src/db/skiplist_test.cc',
352       ],
353     },
354     {
355       'target_name': 'leveldb_table_test',
356       'type': 'executable',
357       'dependencies': [
358         'leveldb_testutil',
359       ],
360       'sources': [
361         'src/table/table_test.cc',
362       ],
363     },
364     {
365       'target_name': 'leveldb_version_edit_test',
366       'type': 'executable',
367       'dependencies': [
368         'leveldb_testutil',
369       ],
370       'sources': [
371         'src/db/version_edit_test.cc',
372       ],
373     },
374     {
375       'target_name': 'leveldb_write_batch_test',
376       'type': 'executable',
377       'dependencies': [
378         'leveldb_testutil',
379       ],
380       'sources': [
381         'src/db/write_batch_test.cc',
382       ],
383     },
384     {
385       'target_name': 'leveldb_main',
386       'type': 'executable',
387       'dependencies': [
388         'leveldb_testutil',
389       ],
390       'sources': [
391         'src/db/leveldb_main.cc',
392       ],
393     },
394   ],