blob: 31d9d49995f9c2944ea094d474093fcb070e3e04 [file] [log] [blame]
mark@chromium.org15425a12009-02-26 06:26:55 +09001# Copyright (c) 2009 The Chromium 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.
4
5{
6 'variables': {
7 'chromium_code': 1,
8 },
mark@chromium.org15425a12009-02-26 06:26:55 +09009 'targets': [
10 {
11 'target_name': 'base',
sgk@google.comf8000932009-04-08 21:55:49 +090012 'type': '<(library)',
bradnelson@google.comfb954952009-03-11 07:25:54 +090013 'msvs_guid': '1832A374-8A74-4F9E-B536-69A699B3E165',
mark@chromium.org15425a12009-02-26 06:26:55 +090014 'sources': [
15 '../build/build_config.h',
wtc@chromium.org3d33e022009-04-11 01:36:34 +090016 'crypto/cssm_init.cc',
17 'crypto/cssm_init.h',
aa@chromium.org31d8f2f2009-06-06 03:25:06 +090018 'crypto/rsa_private_key.h',
rafaelw@chromium.orgba0b0af2009-10-07 11:46:31 +090019 'crypto/rsa_private_key.cc',
hawk@chromium.org07038022009-10-03 06:05:01 +090020 'crypto/rsa_private_key_mac.cc',
rafaelw@chromium.orgbef71b92009-09-24 10:21:12 +090021 'crypto/rsa_private_key_nss.cc',
aa@chromium.org31d8f2f2009-06-06 03:25:06 +090022 'crypto/rsa_private_key_win.cc',
23 'crypto/signature_creator.h',
rafaelw@chromium.orgd3dc7c42009-10-07 03:55:35 +090024 'crypto/signature_creator_mac.cc',
rafaelw@chromium.orgbef71b92009-09-24 10:21:12 +090025 'crypto/signature_creator_nss.cc',
aa@chromium.org31d8f2f2009-06-06 03:25:06 +090026 'crypto/signature_creator_win.cc',
wtc@chromium.org3d33e022009-04-11 01:36:34 +090027 'crypto/signature_verifier.h',
28 'crypto/signature_verifier_mac.cc',
29 'crypto/signature_verifier_nss.cc',
30 'crypto/signature_verifier_win.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +090031 'third_party/dmg_fp/dmg_fp.h',
32 'third_party/dmg_fp/dtoa.cc',
33 'third_party/dmg_fp/g_fmt.cc',
brettw@chromium.org50c94652009-10-07 11:10:20 +090034 'third_party/icu/icu_utf.cc',
35 'third_party/icu/icu_utf.h',
mark@chromium.org15425a12009-02-26 06:26:55 +090036 'third_party/nspr/prcpucfg.h',
37 'third_party/nspr/prcpucfg_win.h',
38 'third_party/nspr/prtime.cc',
39 'third_party/nspr/prtime.h',
40 'third_party/nspr/prtypes.h',
41 'third_party/nss/blapi.h',
42 'third_party/nss/blapit.h',
43 'third_party/nss/sha256.h',
44 'third_party/nss/sha512.cc',
45 'third_party/purify/pure.h',
46 'third_party/purify/pure_api.c',
thestig@chromium.org1a3fde92009-05-16 13:30:05 +090047 'third_party/xdg_mime/xdgmime.c',
48 'third_party/xdg_mime/xdgmime.h',
49 'third_party/xdg_mime/xdgmimealias.c',
50 'third_party/xdg_mime/xdgmimealias.h',
51 'third_party/xdg_mime/xdgmimecache.c',
52 'third_party/xdg_mime/xdgmimecache.h',
53 'third_party/xdg_mime/xdgmimeglob.c',
54 'third_party/xdg_mime/xdgmimeglob.h',
55 'third_party/xdg_mime/xdgmimeicon.c',
56 'third_party/xdg_mime/xdgmimeicon.h',
57 'third_party/xdg_mime/xdgmimeint.c',
58 'third_party/xdg_mime/xdgmimeint.h',
59 'third_party/xdg_mime/xdgmimemagic.c',
60 'third_party/xdg_mime/xdgmimemagic.h',
61 'third_party/xdg_mime/xdgmimeparent.c',
62 'third_party/xdg_mime/xdgmimeparent.h',
mark@chromium.org15425a12009-02-26 06:26:55 +090063 'atomicops_internals_x86_gcc.cc',
64 'at_exit.cc',
65 'at_exit.h',
timurrrr@chromium.orgec4a0602009-10-16 22:09:11 +090066 'atomic_flag.h',
67 'atomic_flag.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +090068 'atomic_ref_count.h',
69 'atomic_sequence_num.h',
70 'atomicops.h',
71 'atomicops_internals_x86_msvc.h',
72 'base_drag_source.cc',
73 'base_drag_source.h',
74 'base_drop_target.cc',
75 'base_drop_target.h',
76 'base_paths.cc',
77 'base_paths.h',
mark@chromium.org582c1dd2009-03-24 00:54:43 +090078 'base_paths_linux.h',
mark@chromium.org15425a12009-02-26 06:26:55 +090079 'base_paths_linux.cc',
mark@chromium.org582c1dd2009-03-24 00:54:43 +090080 'base_paths_mac.h',
mark@chromium.org15425a12009-02-26 06:26:55 +090081 'base_paths_mac.mm',
82 'base_paths_win.cc',
83 'base_paths_win.h',
84 'base_switches.cc',
85 'base_switches.h',
86 'basictypes.h',
87 'bzip2_error_handler.cc',
dmaclach@chromium.orgd6753f32009-11-06 06:53:01 +090088 'chrome_application_mac.h',
89 'chrome_application_mac.mm',
mark@chromium.orga09b0402009-09-18 05:43:06 +090090 'cocoa_protocols_mac.h',
mark@chromium.org15425a12009-02-26 06:26:55 +090091 'command_line.cc',
92 'command_line.h',
93 'compiler_specific.h',
94 'condition_variable.h',
95 'condition_variable_posix.cc',
96 'condition_variable_win.cc',
97 'cpu.cc',
98 'cpu.h',
99 'data_pack.cc',
100 'debug_on_start.cc',
101 'debug_on_start.h',
102 'debug_util.cc',
103 'debug_util.h',
104 'debug_util_mac.cc',
105 'debug_util_posix.cc',
106 'debug_util_win.cc',
107 'directory_watcher.h',
phajdan.jr@chromium.org75b96ac2009-03-18 23:35:58 +0900108 'directory_watcher_inotify.cc',
phajdan.jr@chromium.orgb70bbac2009-05-01 04:39:15 +0900109 'directory_watcher_mac.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900110 'directory_watcher_win.cc',
deanm@chromium.org7c73faa2009-06-26 20:28:03 +0900111 'dynamic_annotations.h',
112 'dynamic_annotations.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900113 'event_recorder.cc',
114 'event_recorder.h',
115 'event_recorder_stubs.cc',
116 'field_trial.cc',
117 'field_trial.h',
agl@chromium.orgf9d91262009-05-01 04:40:03 +0900118 'file_descriptor_shuffle.cc',
119 'file_descriptor_shuffle.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900120 'file_path.cc',
121 'file_path.h',
122 'file_util.cc',
123 'file_util.h',
124 'file_util_linux.cc',
125 'file_util_mac.mm',
126 'file_util_posix.cc',
127 'file_util_win.cc',
128 'file_version_info.cc',
129 'file_version_info.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900130 'file_version_info_mac.mm',
131 'fix_wp64.h',
132 'float_util.h',
mark@chromium.org582c1dd2009-03-24 00:54:43 +0900133 'foundation_utils_mac.h',
brettw@chromium.org67eb77e2009-10-15 07:06:14 +0900134 'gfx/point.cc',
135 'gfx/point.h',
136 'gfx/rect.cc',
137 'gfx/rect.h',
138 'gfx/size.cc',
139 'gfx/size.h',
agl@chromium.org28a12e72009-06-13 02:36:55 +0900140 'global_descriptors_posix.h',
141 'global_descriptors_posix.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900142 'hash_tables.h',
143 'histogram.cc',
144 'histogram.h',
145 'hmac.h',
146 'hmac_mac.cc',
147 'hmac_nss.cc',
148 'hmac_win.cc',
149 'iat_patch.cc',
150 'iat_patch.h',
phajdan.jr@chromium.orga12746c2009-08-19 23:56:38 +0900151 'id_map.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900152 'image_util.cc',
153 'image_util.h',
brettw@chromium.org7cd41eb2009-10-24 05:00:20 +0900154 'json/json_reader.cc',
155 'json/json_reader.h',
156 'json/json_writer.cc',
157 'json/json_writer.h',
158 'json/string_escape.cc',
159 'json/string_escape.h',
brettw@chromium.org50c94652009-10-07 11:10:20 +0900160 'keyboard_code_conversion_gtk.cc',
161 'keyboard_code_conversion_gtk.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900162 'keyboard_codes.h',
163 'keyboard_codes_win.h',
jcampan@chromium.org9f5735d2009-09-26 08:15:41 +0900164 'keyboard_codes_posix.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900165 'lazy_instance.cc',
166 'lazy_instance.h',
ericroman@google.com7e41f132009-08-12 06:38:54 +0900167 'leak_tracker.h',
168 'linked_list.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900169 'linked_ptr.h',
sgk@google.come1f4a242009-04-22 02:20:10 +0900170 'linux_util.cc',
171 'linux_util.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900172 'lock.cc',
173 'lock.h',
174 'lock_impl.h',
175 'lock_impl_posix.cc',
176 'lock_impl_win.cc',
177 'logging.cc',
178 'logging.h',
mark@chromium.org582c1dd2009-03-24 00:54:43 +0900179 'mac_util.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900180 'mac_util.mm',
181 'md5.cc',
182 'md5.h',
183 'memory_debug.cc',
184 'memory_debug.h',
185 'message_loop.cc',
186 'message_loop.h',
187 'message_pump.h',
188 'message_pump_default.cc',
189 'message_pump_default.h',
190 'message_pump_glib.cc',
mark@chromium.org582c1dd2009-03-24 00:54:43 +0900191 'message_pump_glib.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900192 'message_pump_libevent.cc',
mark@chromium.org582c1dd2009-03-24 00:54:43 +0900193 'message_pump_libevent.h',
194 'message_pump_mac.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900195 'message_pump_mac.mm',
196 'message_pump_win.cc',
197 'message_pump_win.h',
thestig@chromium.org1a3fde92009-05-16 13:30:05 +0900198 'mime_util.h',
199 'mime_util_linux.cc',
evan@chromium.orgda642ae2009-04-21 09:56:07 +0900200 'native_library.h',
201 'native_library_linux.cc',
202 'native_library_mac.mm',
203 'native_library_win.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900204 'non_thread_safe.cc',
205 'non_thread_safe.h',
mark@chromium.org1521d6e2009-10-06 04:07:34 +0900206 'nsimage_cache_mac.h',
207 'nsimage_cache_mac.mm',
mark@chromium.org15425a12009-02-26 06:26:55 +0900208 'nss_init.cc',
wtc@chromium.org3d33e022009-04-11 01:36:34 +0900209 'nss_init.h',
jorlow@chromium.org3a2fc8c2009-08-27 09:55:02 +0900210 'nullable_string16.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900211 'object_watcher.cc',
212 'object_watcher.h',
213 'observer_list.h',
214 'observer_list_threadsafe.h',
215 'path_service.cc',
216 'path_service.h',
217 'pe_image.cc',
218 'pe_image.h',
219 'pickle.cc',
220 'pickle.h',
221 'platform_file.h',
222 'platform_file_win.cc',
223 'platform_file_posix.cc',
224 'platform_thread.h',
225 'platform_thread_mac.mm',
226 'platform_thread_posix.cc',
227 'platform_thread_win.cc',
228 'port.h',
asargent@chromium.orge3333cc2009-03-10 06:26:28 +0900229 'profiler.cc',
230 'profiler.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900231 'process.h',
davemoore@chromium.orgad59fcb2009-10-30 02:43:44 +0900232 'process_linux.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900233 'process_posix.cc',
234 'process_util.h',
235 'process_util_linux.cc',
236 'process_util_mac.mm',
237 'process_util_posix.cc',
238 'process_util_win.cc',
239 'process_win.cc',
240 'rand_util.cc',
241 'rand_util.h',
242 'rand_util_posix.cc',
243 'rand_util_win.cc',
244 'ref_counted.cc',
245 'ref_counted.h',
erg@google.comc25eae82009-10-20 02:04:46 +0900246 'ref_counted_memory.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900247 'registry.cc',
248 'registry.h',
249 'resource_util.cc',
250 'resource_util.h',
tschmelcher@chromium.orgf29a4fc2009-10-10 08:52:20 +0900251 'safe_strerror_posix.cc',
252 'safe_strerror_posix.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900253 'scoped_bstr_win.cc',
254 'scoped_bstr_win.h',
mark@chromium.org582c1dd2009-03-24 00:54:43 +0900255 'scoped_cftyperef.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900256 'scoped_comptr_win.h',
257 'scoped_handle.h',
sky@chromium.org922da972009-11-04 14:05:48 +0900258 'scoped_handle_gtk.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900259 'scoped_handle_win.h',
260 'scoped_nsautorelease_pool.h',
261 'scoped_nsautorelease_pool.mm',
pinkerton@chromium.org37462252009-06-10 02:39:34 +0900262 'scoped_nsdisable_screen_updates.h',
mark@chromium.org582c1dd2009-03-24 00:54:43 +0900263 'scoped_nsobject.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900264 'scoped_ptr.h',
265 'scoped_temp_dir.cc',
266 'scoped_temp_dir.h',
tommi@chromium.org27a0e642009-03-19 13:22:28 +0900267 'scoped_variant_win.cc',
268 'scoped_variant_win.h',
ben@chromium.orgbc3bca72009-05-05 12:31:44 +0900269 'scoped_vector.h',
mdm@chromium.org18175a02009-09-11 03:02:17 +0900270 'setproctitle_linux.c',
271 'setproctitle_linux.h',
jhawkins@chromium.orgf64907f2009-11-05 04:29:58 +0900272 'sha1.cc',
273 'sha1.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900274 'sha2.cc',
275 'sha2.h',
276 'shared_memory.h',
277 'shared_memory_posix.cc',
278 'shared_memory_win.cc',
279 'simple_thread.cc',
280 'simple_thread.h',
281 'singleton.h',
282 'spin_wait.h',
283 'stack_container.h',
284 'stats_counters.h',
285 'stats_table.cc',
286 'stats_table.h',
ben@chromium.orgbc3bca72009-05-05 12:31:44 +0900287 'stl_util-inl.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900288 'string16.cc',
289 'string16.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900290 'string_piece.cc',
291 'string_piece.h',
292 'string_tokenizer.h',
293 'string_util.cc',
294 'string_util.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900295 'string_util_win.h',
296 'sys_info.h',
evan@chromium.org54b72102009-07-22 09:35:18 +0900297 'sys_info_chromeos.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900298 'sys_info_mac.cc',
299 'sys_info_posix.cc',
300 'sys_info_win.cc',
301 'sys_string_conversions.h',
302 'sys_string_conversions_linux.cc',
303 'sys_string_conversions_mac.mm',
304 'sys_string_conversions_win.cc',
305 'system_monitor.cc',
306 'system_monitor.h',
307 'system_monitor_posix.cc',
308 'system_monitor_win.cc',
309 'task.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900310 'thread.cc',
311 'thread.h',
312 'thread_collision_warner.cc',
313 'thread_collision_warner.h',
314 'thread_local.h',
315 'thread_local_posix.cc',
316 'thread_local_storage.h',
317 'thread_local_storage_posix.cc',
318 'thread_local_storage_win.cc',
319 'thread_local_win.cc',
320 'time.cc',
321 'time.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900322 'time_mac.cc',
323 'time_posix.cc',
324 'time_win.cc',
325 'timer.cc',
326 'timer.h',
327 'trace_event.cc',
328 'trace_event.h',
329 'tracked.cc',
330 'tracked.h',
331 'tracked_objects.cc',
332 'tracked_objects.h',
333 'tuple.h',
brettw@chromium.org50c94652009-10-07 11:10:20 +0900334 'utf_string_conversions.cc',
335 'utf_string_conversions.h',
agl@chromium.org28a12e72009-06-13 02:36:55 +0900336 'unix_domain_socket_posix.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900337 'values.cc',
338 'values.h',
339 'version.cc',
340 'version.h',
341 'waitable_event.h',
342 'waitable_event_posix.cc',
343 'waitable_event_watcher.h',
344 'waitable_event_watcher_posix.cc',
345 'waitable_event_watcher_win.cc',
346 'waitable_event_win.cc',
347 'watchdog.cc',
348 'watchdog.h',
darin@chromium.org046526c2009-09-02 05:50:17 +0900349 'weak_ptr.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900350 'win_util.cc',
351 'win_util.h',
352 'windows_message_list.h',
353 'wmi_util.cc',
354 'wmi_util.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900355 'worker_pool.h',
willchan@chromium.org920c60c2009-03-07 05:35:45 +0900356 'worker_pool_linux.cc',
willchan@chromium.orge0a8f3a2009-03-25 08:41:53 +0900357 'worker_pool_linux.h',
mark@chromium.org0adbd642009-10-27 04:58:13 +0900358 'worker_pool_mac.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900359 'worker_pool_mac.mm',
willchan@chromium.org920c60c2009-03-07 05:35:45 +0900360 'worker_pool_win.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900361 ],
362 'include_dirs': [
363 '..',
364 ],
365 'direct_dependent_settings': {
366 'include_dirs': [
367 '..',
368 ],
369 },
370 # These warnings are needed for the files in third_party\dmg_fp.
371 'msvs_disabled_warnings': [
372 4244, 4554, 4018, 4102,
373 ],
brettw@chromium.org67eb77e2009-10-15 07:06:14 +0900374 'mac_framework_dirs': [
375 '$(SDKROOT)/System/Library/Frameworks/ApplicationServices.framework/Frameworks',
376 ],
mark@chromium.org15425a12009-02-26 06:26:55 +0900377 'conditions': [
benl@chromium.org6b6b2162009-09-08 01:39:46 +0900378 [ 'OS == "linux" or OS == "freebsd"', {
willchan@chromium.orgf4a03ec2009-08-27 06:53:46 +0900379 'variables' : {
380 'linux_use_tcmalloc%': 0,
381 },
evan@chromium.org54b72102009-07-22 09:35:18 +0900382 'sources/': [ ['exclude', '_(mac|win|chromeos)\\.cc$'],
mark@chromium.org15425a12009-02-26 06:26:55 +0900383 ['exclude', '\\.mm?$' ] ],
evan@chromium.org54b72102009-07-22 09:35:18 +0900384 'conditions': [
oshima@chromium.org6240fee2009-10-13 08:58:03 +0900385 [ 'chromeos==1 or toolkit_views==1', {
evan@chromium.org54b72102009-07-22 09:35:18 +0900386 'sources/': [ ['include', '_chromeos\\.cc$'] ]
387 },
388 ],
willchan@chromium.orgf4a03ec2009-08-27 06:53:46 +0900389 [ 'linux_use_tcmalloc==1', {
390 'dependencies': [
391 '../third_party/tcmalloc/tcmalloc.gyp:tcmalloc',
392 ],
393 },
394 ],
evan@chromium.org54b72102009-07-22 09:35:18 +0900395 ],
sgk@google.com300c8752009-03-21 08:13:26 +0900396 'dependencies': [
sgk@google.com6cf49262009-06-05 01:08:16 +0900397 '../build/util/build_util.gyp:lastchange',
sgk@google.com300c8752009-03-21 08:13:26 +0900398 '../build/linux/system.gyp:gtk',
399 '../build/linux/system.gyp:nss',
400 ],
401 'cflags': [
402 '-Wno-write-strings',
403 ],
mdm@chromium.org18175a02009-09-11 03:02:17 +0900404 'link_settings': {
405 'libraries': [
benl@chromium.org11b293c2009-09-08 03:29:35 +0900406 # We need rt for clock_gettime().
407 '-lrt',
408 ],
409 },
sky@chromium.orgff7ef5a2009-05-19 06:12:34 +0900410 'export_dependent_settings': [
411 '../build/linux/system.gyp:gtk',
412 ],
mark@chromium.org15425a12009-02-26 06:26:55 +0900413 },
benl@chromium.org6b6b2162009-09-08 01:39:46 +0900414 { # else: OS != "linux" && OS != "freebsd"
thestig@chromium.org1a3fde92009-05-16 13:30:05 +0900415 'sources/': [
416 ['exclude', '/xdg_mime/'],
417 ],
mark@chromium.org15425a12009-02-26 06:26:55 +0900418 'sources!': [
rafaelw@chromium.orgbef71b92009-09-24 10:21:12 +0900419 'crypto/rsa_private_key_nss.cc',
420 'crypto/signature_creator_nss.cc',
wtc@chromium.org3d33e022009-04-11 01:36:34 +0900421 'crypto/signature_verifier_nss.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900422 'atomicops_internals_x86_gcc.cc',
phajdan.jr@chromium.org75b96ac2009-03-18 23:35:58 +0900423 'directory_watcher_inotify.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900424 'hmac_nss.cc',
sgk@google.come1f4a242009-04-22 02:20:10 +0900425 'linux_util.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900426 'message_pump_glib.cc',
427 'nss_init.cc',
wtc@chromium.org3d33e022009-04-11 01:36:34 +0900428 'nss_init.h',
mark@chromium.org15425a12009-02-26 06:26:55 +0900429 'time_posix.cc',
430 ],
mdm@chromium.org18175a02009-09-11 03:02:17 +0900431 },
432 ],
433 [ 'OS != "linux"', {
434 'sources!': [
435 # Not automatically excluded by the *linux.cc rules.
436 'setproctitle_linux.c',
437 'setproctitle_linux.h',
438 ],
439 },
mark@chromium.org15425a12009-02-26 06:26:55 +0900440 ],
agl@chromium.orga6fc1a72009-03-19 08:19:10 +0900441 [ 'GENERATOR == "quentin"', {
442 # Quentin builds don't have a recent enough glibc to include the
443 # inotify headers
444 'sources!': [
445 'directory_watcher_inotify.cc',
446 ],
447 'sources': [
448 'directory_watcher_stub.cc',
449 ],
450 },
451 ],
benl@chromium.org6b6b2162009-09-08 01:39:46 +0900452 [ 'OS == "freebsd"', {
453 'sources!': [
454 'directory_watcher_inotify.cc',
455 ],
456 'sources': [
457 'directory_watcher_stub.cc',
458 ],
459 },
460 ],
mark@chromium.org15425a12009-02-26 06:26:55 +0900461 [ 'OS == "mac"', {
jcampan@chromium.org9f5735d2009-09-26 08:15:41 +0900462 'sources/': [ ['exclude', '_(linux|gtk|win|chromeos)\\.cc$'] ],
mark@chromium.org15425a12009-02-26 06:26:55 +0900463 'sources!': [
mark@chromium.org15425a12009-02-26 06:26:55 +0900464 ],
465 'link_settings': {
466 'libraries': [
467 '$(SDKROOT)/System/Library/Frameworks/AppKit.framework',
468 '$(SDKROOT)/System/Library/Frameworks/Carbon.framework',
469 '$(SDKROOT)/System/Library/Frameworks/CoreFoundation.framework',
470 '$(SDKROOT)/System/Library/Frameworks/Foundation.framework',
mark@chromium.orgcfdd6082009-10-28 23:09:31 +0900471 '$(SDKROOT)/System/Library/Frameworks/IOKit.framework',
wtc@chromium.org3d33e022009-04-11 01:36:34 +0900472 '$(SDKROOT)/System/Library/Frameworks/Security.framework',
mark@chromium.org15425a12009-02-26 06:26:55 +0900473 ],
474 },
475 },
wtc@chromium.org3d33e022009-04-11 01:36:34 +0900476 { # else: OS != "mac"
477 'sources!': [
478 'crypto/cssm_init.cc',
479 'crypto/cssm_init.h',
480 ],
481 }
mark@chromium.org15425a12009-02-26 06:26:55 +0900482 ],
483 [ 'OS == "win"', {
jhawkins@chromium.org418b8212009-08-08 05:57:16 +0900484 'include_dirs': [
485 '../chrome/third_party/wtl/include',
486 ],
jcampan@chromium.org9f5735d2009-09-26 08:15:41 +0900487 'sources/': [ ['exclude', '_(linux|gtk|mac|posix|chromeos)\\.cc$'],
mark@chromium.org15425a12009-02-26 06:26:55 +0900488 ['exclude', '\\.mm?$' ] ],
489 'sources!': [
mark@chromium.org95f0acf2009-02-27 00:25:44 +0900490 'data_pack.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900491 'event_recorder_stubs.cc',
agl@chromium.orgf9d91262009-05-01 04:40:03 +0900492 'file_descriptor_shuffle.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900493 'message_pump_libevent.cc',
494 'string16.cc',
495 ],
496 },
497 { # else: OS != "win"
498 'dependencies': ['../third_party/libevent/libevent.gyp:libevent'],
499 'sources!': [
500 'third_party/purify/pure_api.c',
501 'base_drag_source.cc',
502 'base_drop_target.cc',
503 'cpu.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900504 'debug_on_start.cc',
505 'event_recorder.cc',
506 'file_version_info.cc',
507 'iat_patch.cc',
508 'image_util.cc',
509 'object_watcher.cc',
510 'pe_image.cc',
511 'registry.cc',
512 'resource_util.cc',
513 'win_util.cc',
514 'wmi_util.cc',
515 ],
516 },
517 ],
518 ],
519 },
520 {
brettw@chromium.org67eb77e2009-10-15 07:06:14 +0900521 'target_name': 'base_i18n',
sgk@google.comf8000932009-04-08 21:55:49 +0900522 'type': '<(library)',
brettw@chromium.org67eb77e2009-10-15 07:06:14 +0900523 'msvs_guid': '968F3222-9798-4D21-BE08-15ECB5EF2994',
mark@chromium.org15425a12009-02-26 06:26:55 +0900524 'dependencies': [
525 'base',
brettw@chromium.org67eb77e2009-10-15 07:06:14 +0900526 '../third_party/icu/icu.gyp:icui18n',
527 '../third_party/icu/icu.gyp:icuuc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900528 ],
529 'export_dependent_settings': [
530 'base',
531 ],
brettw@chromium.org67eb77e2009-10-15 07:06:14 +0900532 'sources': [
533 'i18n/file_util_icu.cc',
534 'i18n/file_util_icu.h',
535 'i18n/icu_string_conversions.cc',
536 'i18n/icu_string_conversions.h',
537 'i18n/icu_util.cc',
538 'i18n/icu_util.h',
539 'i18n/number_formatting.cc',
540 'i18n/number_formatting.h',
541 'i18n/time_formatting.cc',
542 'i18n/time_formatting.h',
543 'i18n/word_iterator.cc',
544 'i18n/word_iterator.h',
545 ],
mark@chromium.org15425a12009-02-26 06:26:55 +0900546 'conditions': [
benl@chromium.org6b6b2162009-09-08 01:39:46 +0900547 ['OS == "linux" or OS == "freebsd"', {
sgk@google.com300c8752009-03-21 08:13:26 +0900548 'dependencies': [
549 '../build/linux/system.gyp:gtk',
550 ],
551 }],
mark@chromium.org15425a12009-02-26 06:26:55 +0900552 ],
553 },
554 {
555 'target_name': 'base_unittests',
556 'type': 'executable',
bradnelson@google.com86468712009-03-11 08:12:16 +0900557 'msvs_guid': '27A30967-4BBA-48D1-8522-CDE95F7B1CEC',
mark@chromium.org15425a12009-02-26 06:26:55 +0900558 'sources': [
maruel@chromium.org2b6effe2009-09-09 02:25:40 +0900559 # Infrastructure files.
560 'multiprocess_test.h',
brettw@chromium.orga52632f2009-10-10 03:20:30 +0900561 'test/run_all_unittests.cc',
562 'test/test_suite.h',
maruel@chromium.org2b6effe2009-09-09 02:25:40 +0900563
564 # Tests.
mark@chromium.org15425a12009-02-26 06:26:55 +0900565 'at_exit_unittest.cc',
timurrrr@chromium.orgec4a0602009-10-16 22:09:11 +0900566 'atomic_flag_unittest.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900567 'atomicops_unittest.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900568 'command_line_unittest.cc',
569 'condition_variable_unittest.cc',
aa@chromium.org31d8f2f2009-06-06 03:25:06 +0900570 'crypto/rsa_private_key_unittest.cc',
571 'crypto/signature_creator_unittest.cc',
ajwong@chromium.orgf5cd1472009-05-28 15:02:56 +0900572 'crypto/signature_verifier_unittest.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900573 'data_pack_unittest.cc',
ajwong@chromium.org24cb89e2009-04-24 09:13:08 +0900574 'debug_util_unittest.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900575 'directory_watcher_unittest.cc',
576 'field_trial_unittest.cc',
agl@chromium.orgf9d91262009-05-01 04:40:03 +0900577 'file_descriptor_shuffle_unittest.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900578 'file_path_unittest.cc',
579 'file_util_unittest.cc',
580 'file_version_info_unittest.cc',
ajwong@chromium.orgf5cd1472009-05-28 15:02:56 +0900581 'gfx/rect_unittest.cc',
ajwong@chromium.orgab54d3d2009-05-30 23:39:59 +0900582 'gmock_unittest.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900583 'histogram_unittest.cc',
584 'hmac_unittest.cc',
phajdan.jr@chromium.orga12746c2009-08-19 23:56:38 +0900585 'id_map_unittest.cc',
brettw@chromium.org86aca862009-10-09 02:38:30 +0900586 'i18n/file_util_icu_unittest.cc',
brettw@chromium.orgde29ea42009-10-11 05:40:50 +0900587 'i18n/icu_string_conversions_unittest.cc',
brettw@chromium.orga52632f2009-10-10 03:20:30 +0900588 'i18n/word_iterator_unittest.cc',
brettw@chromium.org7cd41eb2009-10-24 05:00:20 +0900589 'json/json_reader_unittest.cc',
590 'json/json_writer_unittest.cc',
591 'json/string_escape_unittest.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900592 'lazy_instance_unittest.cc',
ericroman@google.com7e41f132009-08-12 06:38:54 +0900593 'leak_tracker_unittest.cc',
594 'linked_list_unittest.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900595 'linked_ptr_unittest.cc',
mirandac@chromium.orgf44f6312009-10-28 00:55:52 +0900596 'mac_util_unittest.mm',
mark@chromium.org15425a12009-02-26 06:26:55 +0900597 'message_loop_unittest.cc',
deanm@chromium.orgbec47f42009-06-15 19:30:44 +0900598 'message_pump_glib_unittest.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900599 'object_watcher_unittest.cc',
600 'observer_list_unittest.cc',
601 'path_service_unittest.cc',
602 'pe_image_unittest.cc',
603 'pickle_unittest.cc',
604 'pr_time_unittest.cc',
605 'process_util_unittest.cc',
606 'rand_util_unittest.cc',
607 'ref_counted_unittest.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900608 'scoped_bstr_win_unittest.cc',
609 'scoped_comptr_win_unittest.cc',
610 'scoped_ptr_unittest.cc',
mark@chromium.org828adfd2009-03-02 15:53:31 +0900611 'scoped_temp_dir_unittest.cc',
tommi@chromium.org27a0e642009-03-19 13:22:28 +0900612 'scoped_variant_win_unittest.cc',
jhawkins@chromium.orgf64907f2009-11-05 04:29:58 +0900613 'sha1_unittest.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900614 'sha2_unittest.cc',
615 'shared_memory_unittest.cc',
616 'simple_thread_unittest.cc',
617 'singleton_unittest.cc',
618 'stack_container_unittest.cc',
619 'stats_table_unittest.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900620 'string_piece_unittest.cc',
621 'string_tokenizer_unittest.cc',
622 'string_util_unittest.cc',
623 'sys_info_unittest.cc',
mirandac@chromium.org69689342009-11-09 04:04:54 +0900624 'sys_string_conversions_mac_unittest.mm',
mark@chromium.org15425a12009-02-26 06:26:55 +0900625 'sys_string_conversions_unittest.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900626 'system_monitor_unittest.cc',
jam@chromium.org2750bf82009-07-18 03:14:47 +0900627 'task_unittest.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900628 'thread_collision_warner_unittest.cc',
629 'thread_local_storage_unittest.cc',
630 'thread_local_unittest.cc',
631 'thread_unittest.cc',
632 'time_unittest.cc',
633 'time_win_unittest.cc',
634 'timer_unittest.cc',
635 'tracked_objects_unittest.cc',
636 'tuple_unittest.cc',
pkasting@chromium.org47366502009-11-07 10:34:53 +0900637 'utf_string_conversions_unittest.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900638 'values_unittest.cc',
mark@chromium.org828adfd2009-03-02 15:53:31 +0900639 'version_unittest.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900640 'waitable_event_unittest.cc',
mark@chromium.org828adfd2009-03-02 15:53:31 +0900641 'waitable_event_watcher_unittest.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900642 'watchdog_unittest.cc',
darin@chromium.org046526c2009-09-02 05:50:17 +0900643 'weak_ptr_unittest.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900644 'win_util_unittest.cc',
645 'wmi_util_unittest.cc',
mark@chromium.org15425a12009-02-26 06:26:55 +0900646 'worker_pool_unittest.cc',
647 ],
648 'include_dirs': [
649 # word_iterator.h (used by word_iterator_unittest.cc) leaks an ICU
650 # #include for unicode/uchar.h. This should probably be cleaned up.
jshin@chromium.org5b8504c2009-09-09 15:49:08 +0900651 '../third_party/icu/public/common',
mark@chromium.org15425a12009-02-26 06:26:55 +0900652 ],
653 'dependencies': [
654 'base',
brettw@chromium.org67eb77e2009-10-15 07:06:14 +0900655 'base_i18n',
ajwong@chromium.orge2f951e2009-05-28 16:23:16 +0900656 '../testing/gmock.gyp:gmock',
mark@chromium.org15425a12009-02-26 06:26:55 +0900657 '../testing/gtest.gyp:gtest',
658 ],
659 'conditions': [
benl@chromium.org6b6b2162009-09-08 01:39:46 +0900660 ['OS == "linux" or OS == "freebsd"', {
mirandac@chromium.orgf44f6312009-10-28 00:55:52 +0900661 'sources/': [ ['exclude', '\\.mm?$' ] ],
mark@chromium.org828adfd2009-03-02 15:53:31 +0900662 'sources!': [
663 'file_version_info_unittest.cc',
thestig@chromium.org7f7d89e2009-04-04 05:21:52 +0900664 'worker_pool_linux_unittest.cc',
mark@chromium.org828adfd2009-03-02 15:53:31 +0900665 ],
sgk@google.com300c8752009-03-21 08:13:26 +0900666 'dependencies': [
667 '../build/linux/system.gyp:gtk',
wtc@chromium.org3d33e022009-04-11 01:36:34 +0900668 '../build/linux/system.gyp:nss',
thestig@chromium.orgb5e33342009-09-18 06:37:19 +0900669 '../tools/xdisplaycheck/xdisplaycheck.gyp:xdisplaycheck',
sgk@google.com300c8752009-03-21 08:13:26 +0900670 ],
benl@chromium.org6b6b2162009-09-08 01:39:46 +0900671 }, { # OS != "linux" and OS != "freebsd"
deanm@chromium.orgbec47f42009-06-15 19:30:44 +0900672 'sources!': [
673 'message_pump_glib_unittest.cc',
674 ]
mark@chromium.org828adfd2009-03-02 15:53:31 +0900675 }],
mark@chromium.org15425a12009-02-26 06:26:55 +0900676 # This is needed to trigger the dll copy step on windows.
677 # TODO(mark): This should not be necessary.
mark@chromium.org828adfd2009-03-02 15:53:31 +0900678 ['OS == "win"', {
679 'dependencies': [
jshin@chromium.org5b8504c2009-09-09 15:49:08 +0900680 '../third_party/icu/icu.gyp:icudata',
mark@chromium.org828adfd2009-03-02 15:53:31 +0900681 ],
682 'sources!': [
683 'data_pack_unittest.cc',
agl@chromium.orgf9d91262009-05-01 04:40:03 +0900684 'file_descriptor_shuffle_unittest.cc',
mark@chromium.org828adfd2009-03-02 15:53:31 +0900685 ],
686 }, { # OS != "win"
687 'sources!': [
mark@chromium.org828adfd2009-03-02 15:53:31 +0900688 'object_watcher_unittest.cc',
689 'pe_image_unittest.cc',
690 'scoped_bstr_win_unittest.cc',
691 'scoped_comptr_win_unittest.cc',
tommi@chromium.org27a0e642009-03-19 13:22:28 +0900692 'scoped_variant_win_unittest.cc',
mark@chromium.org828adfd2009-03-02 15:53:31 +0900693 'system_monitor_unittest.cc',
694 'time_win_unittest.cc',
695 'win_util_unittest.cc',
696 'wmi_util_unittest.cc',
697 ],
698 }],
mark@chromium.org15425a12009-02-26 06:26:55 +0900699 ],
700 },
sgk@google.com2b059ed2009-03-17 08:46:45 +0900701 {
702 'target_name': 'test_support_base',
sgk@google.comf8000932009-04-08 21:55:49 +0900703 'type': '<(library)',
sgk@google.com2b059ed2009-03-17 08:46:45 +0900704 'dependencies': [
705 'base',
phajdan.jr@chromium.orgf02d1442009-08-04 03:35:06 +0900706 ],
707 'sources': [
brettw@chromium.orga52632f2009-10-10 03:20:30 +0900708 'test/test_file_util.h',
709 'test/test_file_util_linux.cc',
710 'test/test_file_util_mac.cc',
711 'test/test_file_util_posix.cc',
712 'test/test_file_util_win.cc',
phajdan.jr@chromium.orgf02d1442009-08-04 03:35:06 +0900713 ],
714 'conditions': [
benl@chromium.org6b6b2162009-09-08 01:39:46 +0900715 [ 'OS == "linux" or OS == "freebsd"', {
phajdan.jr@chromium.orgf02d1442009-08-04 03:35:06 +0900716 'sources/': [ ['exclude', '_(mac|win|chromeos)\\.cc$'],
717 ['exclude', '\\.mm?$' ] ],
718 'conditions': [
oshima@chromium.org6240fee2009-10-13 08:58:03 +0900719 [ 'chromeos==1 or toolkit_views==1', {
phajdan.jr@chromium.orgf02d1442009-08-04 03:35:06 +0900720 'sources/': [ ['include', '_chromeos\\.cc$'] ]
721 },
722 ],
723 ],
724 },
725 ],
726 [ 'OS == "mac"', {
727 'sources/': [ ['exclude', '_(linux|win|chromeos)\\.cc$'] ],
728 },
729 ],
730 [ 'OS == "win"', {
731 'sources/': [ ['exclude', '_(linux|mac|posix|chromeos)\\.cc$'],
732 ['exclude', '\\.mm?$' ] ],
733 },
734 ],
735 ],
736 },
737 {
738 'target_name': 'test_support_perf',
739 'type': '<(library)',
740 'dependencies': [
741 'base',
sgk@google.com2b059ed2009-03-17 08:46:45 +0900742 '../testing/gtest.gyp:gtest',
743 ],
744 'sources': [
745 'perftimer.cc',
brettw@chromium.orga52632f2009-10-10 03:20:30 +0900746 'test/run_all_perftests.cc',
sgk@google.com2b059ed2009-03-17 08:46:45 +0900747 ],
748 'direct_dependent_settings': {
749 'defines': [
750 'PERF_TEST',
751 ],
752 },
sgk@google.com300c8752009-03-21 08:13:26 +0900753 'conditions': [
benl@chromium.org6b6b2162009-09-08 01:39:46 +0900754 ['OS == "linux" or OS == "freebsd"', {
sgk@google.com300c8752009-03-21 08:13:26 +0900755 'dependencies': [
756 # Needed to handle the #include chain:
brettw@chromium.orga52632f2009-10-10 03:20:30 +0900757 # base/test/perf_test_suite.h
758 # base/test/test_suite.h
sgk@google.com300c8752009-03-21 08:13:26 +0900759 # gtk/gtk.h
760 '../build/linux/system.gyp:gtk',
761 ],
762 }],
763 ],
sgk@google.com2b059ed2009-03-17 08:46:45 +0900764 },
mark@chromium.org15425a12009-02-26 06:26:55 +0900765 ],
766 'conditions': [
767 [ 'OS == "win"', {
768 'targets': [
769 {
770 'target_name': 'debug_message',
771 'type': 'executable',
772 'sources': [
773 'debug_message.cc',
774 ],
sgk@google.com36d40a42009-05-22 11:39:14 +0900775 'msvs_settings': {
776 'VCLinkerTool': {
777 'SubSystem': '2', # Set /SUBSYSTEM:WINDOWS
778 },
779 },
mark@chromium.org15425a12009-02-26 06:26:55 +0900780 },
781 ],
782 }],
benl@chromium.org6b6b2162009-09-08 01:39:46 +0900783 [ 'OS == "linux" or OS == "freebsd"', {
mmoss@chromium.org0b604032009-07-30 08:02:55 +0900784 'targets': [
785 {
786 'target_name': 'linux_versioninfo',
787 'type': '<(library)',
788 'sources': [
789 'file_version_info_linux.cc',
790 ],
791 'include_dirs': [
792 '..',
793 '<(SHARED_INTERMEDIATE_DIR)',
794 ],
795 'actions': [
796 {
797 'action_name': 'linux_version',
798 'variables': {
799 'lastchange_path':
800 '<(SHARED_INTERMEDIATE_DIR)/build/LASTCHANGE',
801 'version_py_path': '../chrome/tools/build/version.py',
802 'version_path': '../chrome/VERSION',
803 'template_input_path': 'file_version_info_linux.h.version',
804 },
805 'conditions': [
806 [ 'branding == "Chrome"', {
807 'variables': {
808 'branding_path':
809 '../chrome/app/theme/google_chrome/BRANDING',
810 },
811 }, { # else branding!="Chrome"
812 'variables': {
813 'branding_path':
814 '../chrome/app/theme/chromium/BRANDING',
815 },
816 }],
817 ],
818 'inputs': [
819 '<(template_input_path)',
820 '<(version_path)',
821 '<(branding_path)',
822 '<(lastchange_path)',
823 ],
824 'outputs': [
825 '<(SHARED_INTERMEDIATE_DIR)/base/file_version_info_linux.h',
826 ],
827 'action': [
828 'python',
829 '<(version_py_path)',
830 '-f', '<(version_path)',
831 '-f', '<(branding_path)',
832 '-f', '<(lastchange_path)',
833 '<(template_input_path)',
834 '<@(_outputs)',
835 ],
836 'message': 'Generating version information',
837 },
838 ],
839 },
840 ],
841 }],
mark@chromium.org15425a12009-02-26 06:26:55 +0900842 ],
843}
sgk@google.com8a558702009-10-06 12:02:38 +0900844
845# Local Variables:
846# tab-width:2
847# indent-tabs-mode:nil
848# End:
849# vim: set expandtab tabstop=2 shiftwidth=2: