blob: 3eabc4edf207a517f66a47ff5baf8bfc0949f2ba [file] [log] [blame]
andrew@webrtc.orga3c6d612011-09-13 17:17:49 +00001# Copyright (c) 2011 The WebRTC project authors. All Rights Reserved.
2#
3# Use of this source code is governed by a BSD-style license
4# that can be found in the LICENSE file in the root of the source
5# tree. An additional intellectual property rights grant can be found
6# in the file PATENTS. All contributing project authors may
7# be found in the AUTHORS file in the root of the source tree.
niklase@google.com470e71d2011-07-07 08:21:25 +00008
9# TODO: Rename files to use *_linux.cpp etc. names, to automatically include relevant files. Remove conditions section.
10
11{
12 'includes': [
13 '../../common_settings.gypi', # Common settings
14 ],
15 'targets': [
16 {
17 'target_name': 'system_wrappers',
18 'type': '<(library)',
19 'include_dirs': [
20 'spreadsortlib',
21 '../interface',
22 ],
23 'direct_dependent_settings': {
24 'include_dirs': [
25 '../interface',
26 ],
27 },
28 'sources': [
29 '../interface/aligned_malloc.h',
30 '../interface/atomic32_wrapper.h',
31 '../interface/condition_variable_wrapper.h',
32 '../interface/cpu_wrapper.h',
33 '../interface/cpu_features_wrapper.h',
34 '../interface/critical_section_wrapper.h',
stefan@webrtc.orgc9cff242011-08-29 07:39:02 +000035 '../interface/data_log.h',
henrik.lundin@webrtc.orgd855bd42011-10-10 08:06:17 +000036 '../interface/data_log_c.h',
stefan@webrtc.orgc9cff242011-08-29 07:39:02 +000037 '../interface/data_log_impl.h',
niklase@google.com470e71d2011-07-07 08:21:25 +000038 '../interface/event_wrapper.h',
39 '../interface/file_wrapper.h',
andrew@webrtc.orga3c6d612011-09-13 17:17:49 +000040 '../interface/fix_interlocked_exchange_pointer_windows.h',
niklase@google.com470e71d2011-07-07 08:21:25 +000041 '../interface/list_wrapper.h',
42 '../interface/map_wrapper.h',
perkj@google.com88a0da82011-09-02 12:51:35 +000043 '../interface/ref_count.h',
niklase@google.com470e71d2011-07-07 08:21:25 +000044 '../interface/rw_lock_wrapper.h',
stefan@webrtc.orgc9cff242011-08-29 07:39:02 +000045 '../interface/scoped_ptr.h',
andrew@webrtc.orga3c6d612011-09-13 17:17:49 +000046 '../interface/scoped_refptr.h',
niklase@google.com470e71d2011-07-07 08:21:25 +000047 '../interface/sort.h',
48 '../interface/thread_wrapper.h',
49 '../interface/tick_util.h',
50 '../interface/trace.h',
51 'aligned_malloc.cc',
52 'atomic32.cc',
53 'atomic32_linux.h',
54 'atomic32_mac.h',
55 'atomic32_windows.h',
56 'condition_variable.cc',
ajm@google.comb5c49ff2011-08-01 17:04:04 +000057 'condition_variable_posix.h',
niklase@google.com470e71d2011-07-07 08:21:25 +000058 'condition_variable_windows.h',
59 'cpu.cc',
60 'cpu_linux.h',
61 'cpu_mac.h',
62 'cpu_windows.h',
63 'cpu_features.cc',
64 'critical_section.cc',
ajm@google.comb5c49ff2011-08-01 17:04:04 +000065 'critical_section_posix.h',
niklase@google.com470e71d2011-07-07 08:21:25 +000066 'critical_section_windows.h',
henrik.lundin@webrtc.orgd855bd42011-10-10 08:06:17 +000067 'data_log_c.cc',
niklase@google.com470e71d2011-07-07 08:21:25 +000068 'event.cc',
ajm@google.comb5c49ff2011-08-01 17:04:04 +000069 'event_posix.h',
niklase@google.com470e71d2011-07-07 08:21:25 +000070 'event_windows.h',
71 'file_impl.cc',
72 'file_impl.h',
73 'list_no_stl.cc',
74 'map.cc',
75 'rw_lock.cc',
ajm@google.comb5c49ff2011-08-01 17:04:04 +000076 'rw_lock_posix.h',
niklase@google.com470e71d2011-07-07 08:21:25 +000077 'rw_lock_windows.h',
78 'sort.cc',
79 'thread.cc',
ajm@google.comb5c49ff2011-08-01 17:04:04 +000080 'thread_posix.h',
niklase@google.com470e71d2011-07-07 08:21:25 +000081 'thread_windows.h',
andrew@webrtc.orga3c6d612011-09-13 17:17:49 +000082 'thread_windows_set_name.h',
niklase@google.com470e71d2011-07-07 08:21:25 +000083 'trace_impl.cc',
84 'trace_impl.h',
ajm@google.comb5c49ff2011-08-01 17:04:04 +000085 'trace_posix.h',
niklase@google.com470e71d2011-07-07 08:21:25 +000086 'trace_windows.h',
87 ],
88 'conditions': [
ajm@google.comb5c49ff2011-08-01 17:04:04 +000089 ['os_posix==1', {
90 'sources': [
91 'condition_variable_posix.cc',
92 'critical_section_posix.cc',
93 'event_posix.cc',
94 'rw_lock_posix.cc',
95 'thread_posix.cc',
96 'trace_posix.cc',
97 ],
98 }],
stefan@webrtc.orgc9cff242011-08-29 07:39:02 +000099 ['enable_data_logging==1', {
100 'sources': [
101 'data_log.cc',
102 ],
103 },{
104 'sources': [
105 'data_log_dummy.cc',
106 ],
107 },],
niklase@google.com470e71d2011-07-07 08:21:25 +0000108 ['OS=="linux"', {
109 'sources': [
niklase@google.com470e71d2011-07-07 08:21:25 +0000110 'cpu_linux.cc',
niklase@google.com470e71d2011-07-07 08:21:25 +0000111 ],
112 'link_settings': {
113 'libraries': [
114 '-lrt',
115 ],
116 },
117 }],
118 ['OS=="mac"', {
119 'sources': [
niklase@google.com470e71d2011-07-07 08:21:25 +0000120 'cpu_mac.cc',
niklase@google.com470e71d2011-07-07 08:21:25 +0000121 ],
zakkhoyt@google.com59af6f12011-08-25 20:30:25 +0000122 'link_settings': {
123 'libraries': [
124 '$(SDKROOT)/System/Library/Frameworks/ApplicationServices.framework',
125 ],
126 },
niklase@google.com470e71d2011-07-07 08:21:25 +0000127 }],
128 ['OS=="win"', {
129 'sources': [
niklase@google.com470e71d2011-07-07 08:21:25 +0000130 'condition_variable_windows.cc',
niklase@google.com470e71d2011-07-07 08:21:25 +0000131 'cpu_windows.cc',
niklase@google.com470e71d2011-07-07 08:21:25 +0000132 'critical_section_windows.cc',
niklase@google.com470e71d2011-07-07 08:21:25 +0000133 'event_windows.cc',
niklase@google.com470e71d2011-07-07 08:21:25 +0000134 'rw_lock_windows.cc',
niklase@google.com470e71d2011-07-07 08:21:25 +0000135 'thread_windows.cc',
niklase@google.com470e71d2011-07-07 08:21:25 +0000136 'trace_windows.cc',
niklase@google.com470e71d2011-07-07 08:21:25 +0000137 ],
138 'link_settings': {
139 'libraries': [
140 '-lwinmm.lib',
141 ],
142 },
143 }],
ajm@google.comb5c49ff2011-08-01 17:04:04 +0000144 ] # conditions
niklase@google.com470e71d2011-07-07 08:21:25 +0000145 },
niklase@google.com470e71d2011-07-07 08:21:25 +0000146 ], # targets
kjellander@webrtc.org177bb522011-10-31 17:10:01 +0000147 'conditions': [
xians@google.com87062562011-08-08 12:08:15 +0000148 ['build_with_chromium==0', {
149 'targets': [
150 {
kjellander@webrtc.org177bb522011-10-31 17:10:01 +0000151 'target_name': 'system_wrappers_unittests',
xians@google.com87062562011-08-08 12:08:15 +0000152 'type': 'executable',
153 'dependencies': [
kjellander@webrtc.org177bb522011-10-31 17:10:01 +0000154 'system_wrappers',
155 '<(webrtc_root)/../testing/gtest.gyp:gtest',
156 '<(webrtc_root)/../test/test.gyp:test_support',
xians@google.com87062562011-08-08 12:08:15 +0000157 ],
158 'sources': [
kjellander@webrtc.org177bb522011-10-31 17:10:01 +0000159 'cpu_wrapper_unittest.cc',
160 'list_unittest.cc',
161 'map_unittest.cc',
162 'data_log_helpers_unittest.cc',
163 'data_log_c_helpers_unittest.c',
164 'data_log_c_helpers_unittest.h',
165 '<(webrtc_root)/../test/run_all_unittests.cc',
166 ],
167 'conditions': [
168 ['enable_data_logging==1', {
169 'sources': [ 'data_log_unittest.cc', ],
170 }, {
171 'sources': [ 'data_log_unittest_disabled.cc', ],
172 }],
xians@google.com87062562011-08-08 12:08:15 +0000173 ],
174 },
175 ], # targets
176 }], # build_with_chromium
177 ], # conditions
niklase@google.com470e71d2011-07-07 08:21:25 +0000178}
179
180# Local Variables:
181# tab-width:2
182# indent-tabs-mode:nil
183# End:
184# vim: set expandtab tabstop=2 shiftwidth=2: