1# Copyright (c) 2012 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  'target_defaults': {
7    'variables': {
8      'base_target': 0,
9      'base_i18n_target': 0,
10    },
11    'target_conditions': [
12      # This part is shared between the targets defined below.
13      ['base_target==1', {
14        'sources': [
15          '../build/build_config.h',
16          'third_party/dmg_fp/dmg_fp.h',
17          'third_party/dmg_fp/g_fmt.cc',
18          'third_party/dmg_fp/dtoa_wrapper.cc',
19          'third_party/icu/icu_utf.cc',
20          'third_party/icu/icu_utf.h',
21          'third_party/nspr/prtime.cc',
22          'third_party/nspr/prtime.h',
23          'third_party/superfasthash/superfasthash.c',
24          'third_party/xdg_mime/xdgmime.h',
25          'allocator/allocator_extension.cc',
26          'allocator/allocator_extension.h',
27          'allocator/type_profiler_control.cc',
28          'allocator/type_profiler_control.h',
29          'android/application_status_listener.cc',
30          'android/application_status_listener.h',
31          'android/base_jni_registrar.cc',
32          'android/base_jni_registrar.h',
33          'android/build_info.cc',
34          'android/build_info.h',
35          'android/command_line_android.cc',
36          'android/command_line_android.h',
37          'android/content_uri_utils.cc',
38          'android/content_uri_utils.h',
39          'android/cpu_features.cc',
40          'android/event_log.cc',
41          'android/event_log.h',
42          'android/field_trial_list.cc',
43          'android/field_trial_list.h',
44          'android/fifo_utils.cc',
45          'android/fifo_utils.h',
46          'android/important_file_writer_android.cc',
47          'android/important_file_writer_android.h',
48          'android/scoped_java_ref.cc',
49          'android/scoped_java_ref.h',
50          'android/jni_android.cc',
51          'android/jni_android.h',
52          'android/jni_array.cc',
53          'android/jni_array.h',
54          'android/jni_registrar.cc',
55          'android/jni_registrar.h',
56          'android/jni_string.cc',
57          'android/jni_string.h',
58          'android/jni_utils.cc',
59          'android/jni_utils.h',
60          'android/jni_weak_ref.cc',
61          'android/jni_weak_ref.h',
62          'android/library_loader/library_loader_hooks.cc',
63          'android/library_loader/library_loader_hooks.h',
64          'android/memory_pressure_listener_android.cc',
65          'android/memory_pressure_listener_android.h',
66          'android/java_handler_thread.cc',
67          'android/java_handler_thread.h',
68          'android/path_service_android.cc',
69          'android/path_service_android.h',
70          'android/path_utils.cc',
71          'android/path_utils.h',
72          'android/sys_utils.cc',
73          'android/sys_utils.h',
74          'android/thread_utils.h',
75          'android/trace_event_binding.cc',
76          'android/trace_event_binding.h',
77          'at_exit.cc',
78          'at_exit.h',
79          'atomic_ref_count.h',
80          'atomic_sequence_num.h',
81          'atomicops.h',
82          'atomicops_internals_gcc.h',
83          'atomicops_internals_mac.h',
84          'atomicops_internals_tsan.h',
85          'atomicops_internals_x86_gcc.cc',
86          'atomicops_internals_x86_gcc.h',
87          'atomicops_internals_x86_msvc.h',
88          'barrier_closure.cc',
89          'barrier_closure.h',
90          'base64.cc',
91          'base64.h',
92          'base_export.h',
93          'base_paths.cc',
94          'base_paths.h',
95          'base_paths_android.cc',
96          'base_paths_android.h',
97          'base_paths_mac.h',
98          'base_paths_mac.mm',
99          'base_paths_posix.cc',
100          'base_paths_posix.h',
101          'base_paths_win.cc',
102          'base_paths_win.h',
103          'base_switches.h',
104          'basictypes.h',
105          'big_endian.cc',
106          'big_endian.h',
107          'bind.h',
108          'bind_helpers.cc',
109          'bind_helpers.h',
110          'bind_internal.h',
111          'bind_internal_win.h',
112          'bits.h',
113          'build_time.cc',
114          'build_time.h',
115          'callback.h',
116          'callback_helpers.cc',
117          'callback_helpers.h',
118          'callback_internal.cc',
119          'callback_internal.h',
120          'callback_list.h',
121          'cancelable_callback.h',
122          'command_line.cc',
123          'command_line.h',
124          'compiler_specific.h',
125          'containers/hash_tables.h',
126          'containers/linked_list.h',
127          'containers/mru_cache.h',
128          'containers/scoped_ptr_hash_map.h',
129          'containers/small_map.h',
130          'containers/stack_container.h',
131          'cpu.cc',
132          'cpu.h',
133          'critical_closure.h',
134          'critical_closure_internal_ios.mm',
135          'debug/alias.cc',
136          'debug/alias.h',
137          'debug/asan_invalid_access.cc',
138          'debug/asan_invalid_access.h',
139          'debug/crash_logging.cc',
140          'debug/crash_logging.h',
141          'debug/debugger.cc',
142          'debug/debugger.h',
143          'debug/debugger_posix.cc',
144          'debug/debugger_win.cc',
145          'debug/dump_without_crashing.cc',
146          'debug/dump_without_crashing.h',
147          'debug/gdi_debug_util_win.cc',
148          'debug/gdi_debug_util_win.h',
149          # This file depends on files from the 'allocator' target,
150          # but this target does not depend on 'allocator' (see
151          # allocator.gyp for details).
152          'debug/leak_annotations.h',
153          'debug/leak_tracker.h',
154          'debug/proc_maps_linux.cc',
155          'debug/proc_maps_linux.h',
156          'debug/profiler.cc',
157          'debug/profiler.h',
158          'debug/stack_trace.cc',
159          'debug/stack_trace.h',
160          'debug/stack_trace_android.cc',
161          'debug/stack_trace_posix.cc',
162          'debug/stack_trace_win.cc',
163          'debug/task_annotator.cc',
164          'debug/task_annotator.h',
165          'debug/trace_event.h',
166          'debug/trace_event_android.cc',
167          'debug/trace_event_argument.cc',
168          'debug/trace_event_argument.h',
169          'debug/trace_event_impl.cc',
170          'debug/trace_event_impl.h',
171          'debug/trace_event_impl_constants.cc',
172          'debug/trace_event_synthetic_delay.cc',
173          'debug/trace_event_synthetic_delay.h',
174          'debug/trace_event_system_stats_monitor.cc',
175          'debug/trace_event_memory.cc',
176          'debug/trace_event_memory.h',
177          'debug/trace_event_win.cc',
178          'deferred_sequenced_task_runner.cc',
179          'deferred_sequenced_task_runner.h',
180          'environment.cc',
181          'environment.h',
182          'file_descriptor_posix.h',
183          'file_version_info.h',
184          'file_version_info_mac.h',
185          'file_version_info_mac.mm',
186          'file_version_info_win.cc',
187          'file_version_info_win.h',
188          'files/dir_reader_fallback.h',
189          'files/dir_reader_linux.h',
190          'files/dir_reader_posix.h',
191          'files/file.cc',
192          'files/file.h',
193          'files/file_enumerator.cc',
194          'files/file_enumerator.h',
195          'files/file_enumerator_posix.cc',
196          'files/file_enumerator_win.cc',
197          'files/file_path.cc',
198          'files/file_path.h',
199          'files/file_path_constants.cc',
200          'files/file_path_watcher.cc',
201          'files/file_path_watcher.h',
202          'files/file_path_watcher_fsevents.cc',
203          'files/file_path_watcher_fsevents.h',
204          'files/file_path_watcher_kqueue.cc',
205          'files/file_path_watcher_kqueue.h',
206          'files/file_path_watcher_linux.cc',
207          'files/file_path_watcher_mac.cc',
208          'files/file_path_watcher_stub.cc',
209          'files/file_path_watcher_win.cc',
210          'files/file_posix.cc',
211          'files/file_proxy.cc',
212          'files/file_proxy.h',
213          'files/file_util.cc',
214          'files/file_util.h',
215          'files/file_util_android.cc',
216          'files/file_util_linux.cc',
217          'files/file_util_mac.mm',
218          'files/file_util_posix.cc',
219          'files/file_util_proxy.cc',
220          'files/file_util_proxy.h',
221          'files/file_util_win.cc',
222          'files/file_win.cc',
223          'files/important_file_writer.h',
224          'files/important_file_writer.cc',
225          'files/memory_mapped_file.cc',
226          'files/memory_mapped_file.h',
227          'files/memory_mapped_file_posix.cc',
228          'files/memory_mapped_file_win.cc',
229          'files/scoped_file.cc',
230          'files/scoped_file.h',
231          'files/scoped_temp_dir.cc',
232          'files/scoped_temp_dir.h',
233          'float_util.h',
234          'format_macros.h',
235          'gtest_prod_util.h',
236          'guid.cc',
237          'guid.h',
238          'guid_posix.cc',
239          'guid_win.cc',
240          'hash.cc',
241          'hash.h',
242          'id_map.h',
243          'ios/device_util.h',
244          'ios/device_util.mm',
245          'ios/ios_util.h',
246          'ios/ios_util.mm',
247          'ios/scoped_critical_action.h',
248          'ios/scoped_critical_action.mm',
249          'json/json_file_value_serializer.cc',
250          'json/json_file_value_serializer.h',
251          'json/json_parser.cc',
252          'json/json_parser.h',
253          'json/json_reader.cc',
254          'json/json_reader.h',
255          'json/json_string_value_serializer.cc',
256          'json/json_string_value_serializer.h',
257          'json/json_value_converter.h',
258          'json/json_writer.cc',
259          'json/json_writer.h',
260          'json/string_escape.cc',
261          'json/string_escape.h',
262          'lazy_instance.cc',
263          'lazy_instance.h',
264          'location.cc',
265          'location.h',
266          'logging.cc',
267          'logging.h',
268          'logging_win.cc',
269          'logging_win.h',
270          'mac/authorization_util.h',
271          'mac/authorization_util.mm',
272          'mac/bind_objc_block.h',
273          'mac/bundle_locations.h',
274          'mac/bundle_locations.mm',
275          'mac/close_nocancel.cc',
276          'mac/cocoa_protocols.h',
277          'mac/foundation_util.h',
278          'mac/foundation_util.mm',
279          'mac/launch_services_util.cc',
280          'mac/launch_services_util.h',
281          'mac/launchd.cc',
282          'mac/launchd.h',
283          'mac/libdispatch_task_runner.cc',
284          'mac/libdispatch_task_runner.h',
285          'mac/mac_logging.h',
286          'mac/mac_logging.cc',
287          'mac/mac_util.h',
288          'mac/mac_util.mm',
289          'mac/mach_logging.cc',
290          'mac/mach_logging.h',
291          'mac/objc_property_releaser.h',
292          'mac/objc_property_releaser.mm',
293          'mac/os_crash_dumps.cc',
294          'mac/os_crash_dumps.h',
295          'mac/scoped_aedesc.h',
296          'mac/scoped_authorizationref.h',
297          'mac/scoped_block.h',
298          'mac/scoped_cftyperef.h',
299          'mac/scoped_ioobject.h',
300          'mac/scoped_ioplugininterface.h',
301          'mac/scoped_launch_data.h',
302          'mac/scoped_mach_port.cc',
303          'mac/scoped_mach_port.h',
304          'mac/scoped_mach_vm.cc',
305          'mac/scoped_mach_vm.h',
306          'mac/scoped_nsautorelease_pool.h',
307          'mac/scoped_nsautorelease_pool.mm',
308          'mac/scoped_nsexception_enabler.h',
309          'mac/scoped_nsexception_enabler.mm',
310          'mac/scoped_nsobject.h',
311          'mac/scoped_objc_class_swizzler.h',
312          'mac/scoped_objc_class_swizzler.mm',
313          'mac/scoped_sending_event.h',
314          'mac/scoped_sending_event.mm',
315          'mac/scoped_typeref.h',
316          'mac/sdk_forward_declarations.h',
317          'mac/sdk_forward_declarations.mm',
318          'macros.h',
319          'md5.cc',
320          'md5.h',
321          'memory/aligned_memory.cc',
322          'memory/aligned_memory.h',
323          'memory/discardable_memory.cc',
324          'memory/discardable_memory.h',
325          'memory/discardable_memory_android.cc',
326          'memory/discardable_memory_emulated.cc',
327          'memory/discardable_memory_emulated.h',
328          'memory/discardable_memory_linux.cc',
329          'memory/discardable_memory_mac.cc',
330          'memory/discardable_memory_malloc.cc',
331          'memory/discardable_memory_malloc.h',
332          'memory/discardable_memory_manager.cc',
333          'memory/discardable_memory_manager.h',
334          'memory/discardable_memory_win.cc',
335          'memory/linked_ptr.h',
336          'memory/manual_constructor.h',
337          'memory/memory_pressure_listener.cc',
338          'memory/memory_pressure_listener.h',
339          'memory/raw_scoped_refptr_mismatch_checker.h',
340          'memory/ref_counted.cc',
341          'memory/ref_counted.h',
342          'memory/ref_counted_delete_on_message_loop.h',
343          'memory/ref_counted_memory.cc',
344          'memory/ref_counted_memory.h',
345          'memory/scoped_open_process.h',
346          'memory/scoped_policy.h',
347          'memory/scoped_ptr.h',
348          'memory/scoped_vector.h',
349          'memory/shared_memory.h',
350          'memory/shared_memory_android.cc',
351          'memory/shared_memory_nacl.cc',
352          'memory/shared_memory_posix.cc',
353          'memory/shared_memory_win.cc',
354          'memory/singleton.cc',
355          'memory/singleton.h',
356          'memory/weak_ptr.cc',
357          'memory/weak_ptr.h',
358          'message_loop/incoming_task_queue.cc',
359          'message_loop/incoming_task_queue.h',
360          'message_loop/message_loop.cc',
361          'message_loop/message_loop.h',
362          'message_loop/message_loop_proxy.cc',
363          'message_loop/message_loop_proxy.h',
364          'message_loop/message_loop_proxy_impl.cc',
365          'message_loop/message_loop_proxy_impl.h',
366          'message_loop/message_pump.cc',
367          'message_loop/message_pump.h',
368          'message_loop/message_pump_android.cc',
369          'message_loop/message_pump_android.h',
370          'message_loop/message_pump_default.cc',
371          'message_loop/message_pump_default.h',
372          'message_loop/message_pump_win.cc',
373          'message_loop/message_pump_win.h',
374          'message_loop/timer_slack.h',
375          'metrics/sample_map.cc',
376          'metrics/sample_map.h',
377          'metrics/sample_vector.cc',
378          'metrics/sample_vector.h',
379          'metrics/bucket_ranges.cc',
380          'metrics/bucket_ranges.h',
381          'metrics/histogram.cc',
382          'metrics/histogram.h',
383          'metrics/histogram_base.cc',
384          'metrics/histogram_base.h',
385          'metrics/histogram_delta_serialization.cc',
386          'metrics/histogram_delta_serialization.h',
387          'metrics/histogram_flattener.h',
388          'metrics/histogram_samples.cc',
389          'metrics/histogram_samples.h',
390          'metrics/histogram_snapshot_manager.cc',
391          'metrics/histogram_snapshot_manager.h',
392          'metrics/sparse_histogram.cc',
393          'metrics/sparse_histogram.h',
394          'metrics/statistics_recorder.cc',
395          'metrics/statistics_recorder.h',
396          'metrics/stats_counters.cc',
397          'metrics/stats_counters.h',
398          'metrics/stats_table.cc',
399          'metrics/stats_table.h',
400          'metrics/user_metrics.cc',
401          'metrics/user_metrics.h',
402          'metrics/user_metrics_action.h',
403          'move.h',
404          'native_library.h',
405          'native_library_mac.mm',
406          'native_library_posix.cc',
407          'native_library_win.cc',
408          'nix/mime_util_xdg.cc',
409          'nix/mime_util_xdg.h',
410          'nix/xdg_util.cc',
411          'nix/xdg_util.h',
412          'observer_list.h',
413          'observer_list_threadsafe.h',
414          'os_compat_android.cc',
415          'os_compat_android.h',
416          'os_compat_nacl.cc',
417          'os_compat_nacl.h',
418          'path_service.cc',
419          'path_service.h',
420          'pending_task.cc',
421          'pending_task.h',
422          'pickle.cc',
423          'pickle.h',
424          'port.h',
425          'posix/eintr_wrapper.h',
426          'posix/global_descriptors.cc',
427          'posix/global_descriptors.h',
428          'posix/unix_domain_socket_linux.cc',
429          'posix/unix_domain_socket_linux.h',
430          'power_monitor/power_monitor.cc',
431          'power_monitor/power_monitor.h',
432          'power_monitor/power_monitor_device_source_android.cc',
433          'power_monitor/power_monitor_device_source_android.h',
434          'power_monitor/power_monitor_device_source.cc',
435          'power_monitor/power_monitor_device_source.h',
436          'power_monitor/power_monitor_device_source_ios.mm',
437          'power_monitor/power_monitor_device_source_mac.mm',
438          'power_monitor/power_monitor_device_source_posix.cc',
439          'power_monitor/power_monitor_device_source_win.cc',
440          'power_monitor/power_monitor_source.cc',
441          'power_monitor/power_monitor_source.h',
442          'power_monitor/power_observer.h',
443          'process/internal_linux.cc',
444          'process/internal_linux.h',
445          'process/kill.cc',
446          'process/kill.h',
447          'process/kill_mac.cc',
448          'process/kill_posix.cc',
449          'process/kill_win.cc',
450          'process/launch.cc',
451          'process/launch.h',
452          'process/launch_ios.cc',
453          'process/launch_mac.cc',
454          'process/launch_posix.cc',
455          'process/launch_win.cc',
456          'process/memory.h',
457          'process/memory.cc',
458          'process/memory_linux.cc',
459          'process/memory_mac.mm',
460          'process/memory_win.cc',
461          'process/process.h',
462          'process/process_handle_freebsd.cc',
463          'process/process_handle_linux.cc',
464          'process/process_handle_mac.cc',
465          'process/process_handle_openbsd.cc',
466          'process/process_handle_posix.cc',
467          'process/process_handle_win.cc',
468          'process/process_info.h',
469          'process/process_info_linux.cc',
470          'process/process_info_mac.cc',
471          'process/process_info_win.cc',
472          'process/process_iterator.cc',
473          'process/process_iterator.h',
474          'process/process_iterator_freebsd.cc',
475          'process/process_iterator_linux.cc',
476          'process/process_iterator_mac.cc',
477          'process/process_iterator_openbsd.cc',
478          'process/process_iterator_win.cc',
479          'process/process_linux.cc',
480          'process/process_metrics.h',
481          'process/process_metrics.cc',
482          'process/process_metrics_freebsd.cc',
483          'process/process_metrics_ios.cc',
484          'process/process_metrics_linux.cc',
485          'process/process_metrics_mac.cc',
486          'process/process_metrics_openbsd.cc',
487          'process/process_metrics_posix.cc',
488          'process/process_metrics_win.cc',
489          'process/process_posix.cc',
490          'process/process_win.cc',
491          'profiler/scoped_profile.cc',
492          'profiler/scoped_profile.h',
493          'profiler/alternate_timer.cc',
494          'profiler/alternate_timer.h',
495          'profiler/tracked_time.cc',
496          'profiler/tracked_time.h',
497          'rand_util.cc',
498          'rand_util.h',
499          'rand_util_nacl.cc',
500          'rand_util_posix.cc',
501          'rand_util_win.cc',
502          'run_loop.cc',
503          'run_loop.h',
504          'numerics/safe_conversions.h',
505          'numerics/safe_conversions_impl.h',
506          'numerics/safe_math.h',
507          'numerics/safe_math_impl.h',
508          'safe_strerror_posix.cc',
509          'safe_strerror_posix.h',
510          'scoped_generic.h',
511          'scoped_native_library.cc',
512          'scoped_native_library.h',
513          'scoped_observer.h',
514          'sequence_checker.h',
515          'sequence_checker_impl.cc',
516          'sequence_checker_impl.h',
517          'sequenced_task_runner.cc',
518          'sequenced_task_runner.h',
519          'sequenced_task_runner_helpers.h',
520          'sha1.h',
521          'sha1_portable.cc',
522          'sha1_win.cc',
523          'single_thread_task_runner.h',
524          'stl_util.h',
525          'strings/latin1_string_conversions.cc',
526          'strings/latin1_string_conversions.h',
527          'strings/nullable_string16.cc',
528          'strings/nullable_string16.h',
529          'strings/safe_sprintf.cc',
530          'strings/safe_sprintf.h',
531          'strings/string16.cc',
532          'strings/string16.h',
533          'strings/string_number_conversions.cc',
534          'strings/string_split.cc',
535          'strings/string_split.h',
536          'strings/string_number_conversions.h',
537          'strings/string_piece.cc',
538          'strings/string_piece.h',
539          'strings/string_tokenizer.h',
540          'strings/string_util.cc',
541          'strings/string_util.h',
542          'strings/string_util_constants.cc',
543          'strings/string_util_posix.h',
544          'strings/string_util_win.h',
545          'strings/stringize_macros.h',
546          'strings/stringprintf.cc',
547          'strings/stringprintf.h',
548          'strings/sys_string_conversions.h',
549          'strings/sys_string_conversions_mac.mm',
550          'strings/sys_string_conversions_posix.cc',
551          'strings/sys_string_conversions_win.cc',
552          'strings/utf_offset_string_conversions.cc',
553          'strings/utf_offset_string_conversions.h',
554          'strings/utf_string_conversion_utils.cc',
555          'strings/utf_string_conversion_utils.h',
556          'strings/utf_string_conversions.cc',
557          'strings/utf_string_conversions.h',
558          'supports_user_data.cc',
559          'supports_user_data.h',
560          'synchronization/cancellation_flag.cc',
561          'synchronization/cancellation_flag.h',
562          'synchronization/condition_variable.h',
563          'synchronization/condition_variable_posix.cc',
564          'synchronization/condition_variable_win.cc',
565          'synchronization/lock.cc',
566          'synchronization/lock.h',
567          'synchronization/lock_impl.h',
568          'synchronization/lock_impl_posix.cc',
569          'synchronization/lock_impl_win.cc',
570          'synchronization/spin_wait.h',
571          'synchronization/waitable_event.h',
572          'synchronization/waitable_event_posix.cc',
573          'synchronization/waitable_event_watcher.h',
574          'synchronization/waitable_event_watcher_posix.cc',
575          'synchronization/waitable_event_watcher_win.cc',
576          'synchronization/waitable_event_win.cc',
577          'system_monitor/system_monitor.cc',
578          'system_monitor/system_monitor.h',
579          'sys_byteorder.h',
580          'sys_info.cc',
581          'sys_info.h',
582          'sys_info_android.cc',
583          'sys_info_chromeos.cc',
584          'sys_info_freebsd.cc',
585          'sys_info_internal.h',
586          'sys_info_ios.mm',
587          'sys_info_linux.cc',
588          'sys_info_mac.cc',
589          'sys_info_openbsd.cc',
590          'sys_info_posix.cc',
591          'sys_info_win.cc',
592          'task/cancelable_task_tracker.cc',
593          'task/cancelable_task_tracker.h',
594          'task_runner.cc',
595          'task_runner.h',
596          'task_runner_util.h',
597          'template_util.h',
598          'thread_task_runner_handle.cc',
599          'thread_task_runner_handle.h',
600          'threading/non_thread_safe.h',
601          'threading/non_thread_safe_impl.cc',
602          'threading/non_thread_safe_impl.h',
603          'threading/platform_thread.h',
604          'threading/platform_thread_android.cc',
605          'threading/platform_thread_linux.cc',
606          'threading/platform_thread_mac.mm',
607          'threading/platform_thread_posix.cc',
608          'threading/platform_thread_win.cc',
609          'threading/post_task_and_reply_impl.cc',
610          'threading/post_task_and_reply_impl.h',
611          'threading/sequenced_worker_pool.cc',
612          'threading/sequenced_worker_pool.h',
613          'threading/simple_thread.cc',
614          'threading/simple_thread.h',
615          'threading/thread.cc',
616          'threading/thread.h',
617          'threading/thread_checker.h',
618          'threading/thread_checker_impl.cc',
619          'threading/thread_checker_impl.h',
620          'threading/thread_collision_warner.cc',
621          'threading/thread_collision_warner.h',
622          'threading/thread_id_name_manager.cc',
623          'threading/thread_id_name_manager.h',
624          'threading/thread_local.h',
625          'threading/thread_local_android.cc',
626          'threading/thread_local_posix.cc',
627          'threading/thread_local_storage.cc',
628          'threading/thread_local_storage.h',
629          'threading/thread_local_storage_posix.cc',
630          'threading/thread_local_storage_win.cc',
631          'threading/thread_local_win.cc',
632          'threading/thread_restrictions.h',
633          'threading/thread_restrictions.cc',
634          'threading/watchdog.cc',
635          'threading/watchdog.h',
636          'threading/worker_pool.h',
637          'threading/worker_pool.cc',
638          'threading/worker_pool_posix.cc',
639          'threading/worker_pool_posix.h',
640          'threading/worker_pool_win.cc',
641          'time/clock.cc',
642          'time/clock.h',
643          'time/default_clock.cc',
644          'time/default_clock.h',
645          'time/default_tick_clock.cc',
646          'time/default_tick_clock.h',
647          'time/tick_clock.cc',
648          'time/tick_clock.h',
649          'time/time.cc',
650          'time/time.h',
651          'time/time_mac.cc',
652          'time/time_posix.cc',
653          'time/time_win.cc',
654          'timer/elapsed_timer.cc',
655          'timer/elapsed_timer.h',
656          'timer/hi_res_timer_manager.h',
657          'timer/hi_res_timer_manager_posix.cc',
658          'timer/hi_res_timer_manager_win.cc',
659          'timer/mock_timer.cc',
660          'timer/mock_timer.h',
661          'timer/timer.cc',
662          'timer/timer.h',
663          'tracked_objects.cc',
664          'tracked_objects.h',
665          'tracking_info.cc',
666          'tracking_info.h',
667          'tuple.h',
668          'values.cc',
669          'values.h',
670          'value_conversions.cc',
671          'value_conversions.h',
672          'version.cc',
673          'version.h',
674          'vlog.cc',
675          'vlog.h',
676          'win/enum_variant.cc',
677          'win/enum_variant.h',
678          'win/event_trace_consumer.h',
679          'win/event_trace_controller.cc',
680          'win/event_trace_controller.h',
681          'win/event_trace_provider.cc',
682          'win/event_trace_provider.h',
683          'win/i18n.cc',
684          'win/i18n.h',
685          'win/iat_patch_function.cc',
686          'win/iat_patch_function.h',
687          'win/iunknown_impl.cc',
688          'win/iunknown_impl.h',
689          'win/message_window.cc',
690          'win/message_window.h',
691          'win/metro.cc',
692          'win/metro.h',
693          'win/object_watcher.cc',
694          'win/object_watcher.h',
695          'win/registry.cc',
696          'win/registry.h',
697          'win/resource_util.cc',
698          'win/resource_util.h',
699          'win/scoped_bstr.cc',
700          'win/scoped_bstr.h',
701          'win/scoped_co_mem.h',
702          'win/scoped_com_initializer.h',
703          'win/scoped_comptr.h',
704          'win/scoped_gdi_object.h',
705          'win/scoped_handle.cc',
706          'win/scoped_handle.h',
707          'win/scoped_hdc.h',
708          'win/scoped_hglobal.h',
709          'win/scoped_process_information.cc',
710          'win/scoped_process_information.h',
711          'win/scoped_propvariant.h',
712          'win/scoped_select_object.h',
713          'win/scoped_variant.cc',
714          'win/scoped_variant.h',
715          'win/shortcut.cc',
716          'win/shortcut.h',
717          'win/startup_information.cc',
718          'win/startup_information.h',
719          'win/win_util.cc',
720          'win/win_util.h',
721          'win/windows_version.cc',
722          'win/windows_version.h',
723          'win/wrapped_window_proc.cc',
724          'win/wrapped_window_proc.h',
725        ],
726        'defines': [
727          'BASE_IMPLEMENTATION',
728        ],
729        'include_dirs': [
730          '..',
731        ],
732        'msvs_disabled_warnings': [
733          4018,
734        ],
735        'target_conditions': [
736          ['(<(desktop_linux) == 0 and <(chromeos) == 0) or >(nacl_untrusted_build)==1', {
737              'sources/': [
738                ['exclude', '^nix/'],
739              ],
740              'sources!': [
741                'atomicops_internals_x86_gcc.cc',
742              ],
743          }],
744          ['<(use_glib)==0 or >(nacl_untrusted_build)==1', {
745              'sources!': [
746                'message_loop/message_pump_glib.cc',
747              ],
748          }],
749          ['(OS != "linux" and <(os_bsd) != 1 and OS != "android") or >(nacl_untrusted_build)==1', {
750              'sources!': [
751                # Not automatically excluded by the *linux.cc rules.
752                'linux_util.cc',
753              ],
754            },
755          ],
756          ['>(nacl_untrusted_build)==1', {
757            'sources!': [
758               'allocator/type_profiler_control.cc',
759               'allocator/type_profiler_control.h',
760               'base_paths.cc',
761               'cpu.cc',
762               'debug/stack_trace_posix.cc',
763               'files/file_enumerator_posix.cc',
764               'files/file_path_watcher_fsevents.cc',
765               'files/file_path_watcher_fsevents.h',
766               'files/file_path_watcher_kqueue.cc',
767               'files/file_path_watcher_kqueue.h',
768               'files/file_proxy.cc',
769               'files/file_util.cc',
770               'files/file_util_posix.cc',
771               'files/file_util_proxy.cc',
772               'memory/shared_memory_posix.cc',
773               'native_library_posix.cc',
774               'path_service.cc',
775               'posix/unix_domain_socket_linux.cc',
776               'process/kill_posix.cc',
777               'process/launch_posix.cc',
778               'process/process_metrics_posix.cc',
779               'process/process_posix.cc',
780               'rand_util_posix.cc',
781               'scoped_native_library.cc',
782               'files/scoped_temp_dir.cc',
783               'sys_info_posix.cc',
784               'third_party/dynamic_annotations/dynamic_annotations.c',
785            ],
786            'sources/': [
787              ['include', '^threading/platform_thread_linux\\.cc$'],
788            ],
789          }],
790          ['OS == "android" and _toolset == "target" and >(nacl_untrusted_build)==0', {
791           'sources': [
792             'memory/discardable_memory_ashmem_allocator.cc',
793             'memory/discardable_memory_ashmem_allocator.h',
794             'memory/discardable_memory_ashmem.cc',
795             'memory/discardable_memory_ashmem.h',
796           ],
797          }],
798          ['OS == "android" and >(nacl_untrusted_build)==0', {
799            'sources!': [
800              'base_paths_posix.cc',
801              'files/file_path_watcher_fsevents.cc',
802              'files/file_path_watcher_fsevents.h',
803              'files/file_path_watcher_kqueue.cc',
804              'files/file_path_watcher_kqueue.h',
805              'files/file_path_watcher_stub.cc',
806              'power_monitor/power_monitor_device_source_posix.cc',
807            ],
808            'sources/': [
809              ['include', '^debug/proc_maps_linux\\.cc$'],
810              ['include', '^files/file_path_watcher_linux\\.cc$'],
811              ['include', '^process/memory_linux\\.cc$'],
812              ['include', '^process/internal_linux\\.cc$'],
813              ['include', '^process/process_handle_linux\\.cc$'],
814              ['include', '^process/process_iterator\\.cc$'],
815              ['include', '^process/process_iterator_linux\\.cc$'],
816              ['include', '^process/process_metrics_linux\\.cc$'],
817              ['include', '^posix/unix_domain_socket_linux\\.cc$'],
818              ['include', '^strings/sys_string_conversions_posix\\.cc$'],
819              ['include', '^sys_info_linux\\.cc$'],
820              ['include', '^worker_pool_linux\\.cc$'],
821            ],
822          }],
823          ['OS == "android" and _toolset == "host" and host_os == "linux"', {
824            'defines': [
825              'OS_ANDROID_HOST=Linux',
826            ],
827            'sources/': [
828              # Pull in specific files for host builds.
829              ['include', '^atomicops_internals_x86_gcc\\.cc$'],
830              ['include', '^threading/platform_thread_linux\\.cc$'],
831            ],
832          }],
833          ['OS == "android" and <(android_webview_build)==1', {
834            'defines': [
835               # WebView builds as part of the system which already has sincos;
836               # avoid defining it again as it causes a linker warning.
837               'ANDROID_SINCOS_PROVIDED',
838            ],
839          }],
840          ['OS == "ios" and _toolset != "host"', {
841            'sources/': [
842              # Pull in specific Mac files for iOS (which have been filtered out
843              # by file name rules).
844              ['include', '^atomicops_internals_mac\\.'],
845              ['include', '^base_paths_mac\\.'],
846              ['include', '^files/file_util_mac\\.'],
847              ['include', '^file_version_info_mac\\.'],
848              ['include', '^mac/bundle_locations\\.'],
849              ['include', '^mac/foundation_util\\.'],
850              ['include', '^mac/mac_logging\\.'],
851              ['include', '^mac/mach_logging\\.'],
852              ['include', '^mac/objc_property_releaser\\.'],
853              ['include', '^mac/scoped_mach_port\\.'],
854              ['include', '^mac/scoped_mach_vm\\.'],
855              ['include', '^mac/scoped_nsautorelease_pool\\.'],
856              ['include', '^mac/scoped_nsobject\\.'],
857              ['include', '^memory/discardable_memory_mac\\.'],
858              ['include', '^message_loop/message_pump_mac\\.'],
859              ['include', '^strings/sys_string_conversions_mac\\.'],
860              ['include', '^threading/platform_thread_mac\\.'],
861              ['include', '^time/time_mac\\.'],
862              ['include', '^worker_pool_mac\\.'],
863              # Exclude all process/ except the minimal implementation
864              # needed on iOS (mostly for unit tests).
865              ['exclude', '^process/.*'],
866              ['include', '^process/.*_ios\.(cc|mm)$'],
867              ['include', '^process/memory_stubs\.cc$'],
868              ['include', '^process/process_handle_posix\.cc$'],
869              ['exclude', 'files/file_path_watcher_fsevents.cc'],
870              ['exclude', 'files/file_path_watcher_fsevents.h'],
871              ['include', 'files/file_path_watcher_mac.cc'],
872            ],
873            'sources': [
874              'process/memory_stubs.cc',
875            ],
876            'sources!': [
877              'message_loop/message_pump_libevent.cc'
878            ],
879          }],
880          ['OS == "ios" and _toolset == "host"', {
881            'sources/': [
882              # Copied filename_rules to switch from iOS to Mac inclusions.
883              ['include', '_(cocoa|mac)(_unittest)?\\.(h|cc|mm?)$'],
884              ['include', '(^|/)(cocoa|mac)/'],
885              ['exclude', '_ios(_unittest)?\\.(h|cc|mm?)$'],
886              ['exclude', '(^|/)ios/'],
887              ['exclude', 'files/file_path_watcher_fsevents.cc'],
888              ['exclude', 'files/file_path_watcher_fsevents.h'],
889              ['include', 'files/file_path_watcher_mac.cc'],
890            ]
891          }],
892          # For now, just test the *BSD platforms enough to exclude them.
893          # Subsequent changes will include them further.
894          ['OS != "freebsd" or >(nacl_untrusted_build)==1', {
895              'sources/': [ ['exclude', '_freebsd\\.cc$'] ],
896            },
897          ],
898          ['OS != "openbsd" or >(nacl_untrusted_build)==1', {
899              'sources/': [ ['exclude', '_openbsd\\.cc$'] ],
900            },
901          ],
902          ['OS == "win" and >(nacl_untrusted_build)==0', {
903            'include_dirs': [
904              '<(DEPTH)/third_party/wtl/include',
905            ],
906            'sources!': [
907              'event_recorder_stubs.cc',
908              'files/file_path_watcher_fsevents.cc',
909              'files/file_path_watcher_fsevents.h',
910              'files/file_path_watcher_kqueue.cc',
911              'files/file_path_watcher_kqueue.h',
912              'files/file_path_watcher_stub.cc',
913              'message_loop/message_pump_libevent.cc',
914              'posix/file_descriptor_shuffle.cc',
915              # Not using sha1_win.cc because it may have caused a
916              # regression to page cycler moz.
917              'sha1_win.cc',
918              'strings/string16.cc',
919            ],
920          },],
921          ['<(use_ozone) == 1', {
922            'sources!': [
923              'message_loop/message_pump_glib.cc',
924            ]
925          }],
926          ['OS == "linux" and >(nacl_untrusted_build)==0', {
927            'sources!': [
928              'files/file_path_watcher_fsevents.cc',
929              'files/file_path_watcher_fsevents.h',
930              'files/file_path_watcher_kqueue.cc',
931              'files/file_path_watcher_kqueue.h',
932              'files/file_path_watcher_stub.cc',
933            ],
934          }],
935          ['(OS == "mac" or OS == "ios") and >(nacl_untrusted_build)==0', {
936            'sources/': [
937              ['exclude', '^files/file_path_watcher_stub\\.cc$'],
938              ['exclude', '^base_paths_posix\\.cc$'],
939              ['exclude', '^native_library_posix\\.cc$'],
940              ['exclude', '^strings/sys_string_conversions_posix\\.cc$'],
941            ],
942          }],
943          ['<(os_bsd)==1 and >(nacl_untrusted_build)==0', {
944            'sources': [
945              'process/memory_stubs.cc',
946            ],
947            'sources/': [
948              ['exclude', '^files/file_path_watcher_linux\\.cc$'],
949              ['exclude', '^files/file_path_watcher_stub\\.cc$'],
950              ['exclude', '^files/file_util_linux\\.cc$'],
951              ['exclude', '^process/process_linux\\.cc$'],
952              ['exclude', '^sys_info_linux\\.cc$'],
953            ],
954          }],
955          # Remove all unnecessary files for build_nexe.py to avoid exceeding
956          # command-line-string limitation when building NaCl on Windows.
957          ['OS == "win" and >(nacl_untrusted_build)==1', {
958              'sources/': [ ['exclude', '\\.h$'] ],
959          }],
960        ],
961      }],
962      ['base_i18n_target==1', {
963        'defines': [
964          'BASE_I18N_IMPLEMENTATION',
965        ],
966        'sources': [
967          'i18n/base_i18n_export.h',
968          'i18n/bidi_line_iterator.cc',
969          'i18n/bidi_line_iterator.h',
970          'i18n/break_iterator.cc',
971          'i18n/break_iterator.h',
972          'i18n/case_conversion.cc',
973          'i18n/case_conversion.h',
974          'i18n/char_iterator.cc',
975          'i18n/char_iterator.h',
976          'i18n/file_util_icu.cc',
977          'i18n/file_util_icu.h',
978          'i18n/i18n_constants.cc',
979          'i18n/i18n_constants.h',
980          'i18n/icu_encoding_detection.cc',
981          'i18n/icu_encoding_detection.h',
982          'i18n/icu_string_conversions.cc',
983          'i18n/icu_string_conversions.h',
984          'i18n/icu_util.cc',
985          'i18n/icu_util.h',
986          'i18n/number_formatting.cc',
987          'i18n/number_formatting.h',
988          'i18n/rtl.cc',
989          'i18n/rtl.h',
990          'i18n/streaming_utf8_validator.cc',
991          'i18n/streaming_utf8_validator.h',
992          'i18n/string_compare.cc',
993          'i18n/string_compare.h',
994          'i18n/string_search.cc',
995          'i18n/string_search.h',
996          'i18n/time_formatting.cc',
997          'i18n/time_formatting.h',
998          'i18n/timezone.cc',
999          'i18n/timezone.h',
1000          'i18n/utf8_validator_tables.cc',
1001          'i18n/utf8_validator_tables.h',
1002        ],
1003      }]
1004    ],
1005  },
1006}
1007