1# Copyright (c) 2012 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. 8 9{ 10 'includes': [ '../../build/common.gypi', ], 11 'targets': [ 12 { 13 'target_name': 'system_wrappers', 14 'type': '<(library)', 15 'include_dirs': [ 16 'spreadsortlib', 17 '../interface', 18 ], 19 'direct_dependent_settings': { 20 'include_dirs': [ 21 '../interface', 22 ], 23 }, 24 'sources': [ 25 '../interface/aligned_malloc.h', 26 '../interface/atomic32.h', 27 '../interface/compile_assert.h', 28 '../interface/condition_variable_wrapper.h', 29 '../interface/cpu_info.h', 30 '../interface/cpu_wrapper.h', 31 '../interface/cpu_features_wrapper.h', 32 '../interface/critical_section_wrapper.h', 33 '../interface/data_log.h', 34 '../interface/data_log_c.h', 35 '../interface/data_log_impl.h', 36 '../interface/event_wrapper.h', 37 '../interface/file_wrapper.h', 38 '../interface/fix_interlocked_exchange_pointer_win.h', 39 '../interface/list_wrapper.h', 40 '../interface/map_wrapper.h', 41 '../interface/ref_count.h', 42 '../interface/rw_lock_wrapper.h', 43 '../interface/scoped_ptr.h', 44 '../interface/scoped_refptr.h', 45 '../interface/sleep.h', 46 '../interface/sort.h', 47 '../interface/static_instance.h', 48 '../interface/thread_wrapper.h', 49 '../interface/tick_util.h', 50 '../interface/trace.h', 51 'aligned_malloc.cc', 52 'atomic32_mac.cc', 53 'atomic32_posix.cc', 54 'atomic32_win.cc', 55 'condition_variable.cc', 56 'condition_variable_posix.cc', 57 'condition_variable_posix.h', 58 'condition_variable_win.cc', 59 'condition_variable_win.h', 60 'cpu.cc', 61 'cpu_no_op.cc', 62 'cpu_info.cc', 63 'cpu_linux.cc', 64 'cpu_linux.h', 65 'cpu_mac.cc', 66 'cpu_mac.h', 67 'cpu_win.cc', 68 'cpu_win.h', 69 'cpu_features.cc', 70 'critical_section.cc', 71 'critical_section_posix.cc', 72 'critical_section_posix.h', 73 'critical_section_win.cc', 74 'critical_section_win.h', 75 'data_log.cc', 76 'data_log_c.cc', 77 'data_log_no_op.cc', 78 'event.cc', 79 'event_posix.cc', 80 'event_posix.h', 81 'event_win.cc', 82 'event_win.h', 83 'file_impl.cc', 84 'file_impl.h', 85 'list_no_stl.cc', 86 'map.cc', 87 'rw_lock.cc', 88 'rw_lock_posix.cc', 89 'rw_lock_posix.h', 90 'rw_lock_win.cc', 91 'rw_lock_win.h', 92 'sleep.cc', 93 'sort.cc', 94 'thread.cc', 95 'thread_posix.cc', 96 'thread_posix.h', 97 'thread_win.cc', 98 'thread_win.h', 99 'set_thread_name_win.h', 100 'trace_impl.cc', 101 'trace_impl.h', 102 'trace_impl_no_op.cc', 103 'trace_posix.cc', 104 'trace_posix.h', 105 'trace_win.cc', 106 'trace_win.h', 107 ], 108 'conditions': [ 109 ['enable_data_logging==1', { 110 'sources!': [ 'data_log_no_op.cc', ], 111 },{ 112 'sources!': [ 'data_log.cc', ], 113 },], 114 ['OS=="android"', { 115 'dependencies': [ 'cpu_features_android', ], 116 }], 117 ['OS=="linux"', { 118 'link_settings': { 119 'libraries': [ '-lrt', ], 120 }, 121 }], 122 ['OS=="mac"', { 123 'link_settings': { 124 'libraries': [ '$(SDKROOT)/System/Library/Frameworks/ApplicationServices.framework', ], 125 }, 126 'sources!': [ 127 'atomic32_posix.cc', 128 ], 129 }], 130 ['OS=="win"', { 131 'link_settings': { 132 'libraries': [ '-lwinmm.lib', ], 133 }, 134 }], 135 ['build_with_chromium==1', { 136 'sources!': [ 137 'cpu.cc', 138 'cpu_linux.h', 139 'cpu_mac.h', 140 'cpu_win.h', 141 'trace_impl.cc', 142 'trace_impl.h', 143 'trace_posix.cc', 144 'trace_posix.h', 145 'trace_win.cc', 146 'trace_win.h', 147 ], 148 }, { 149 'sources!': [ 150 'cpu_no_op.cc', 151 'trace_impl_no_op.cc', 152 ], 153 }] 154 ] # conditions 155 }, 156 ], # targets 157 'conditions': [ 158 ['OS=="android"', { 159 'targets': [ 160 { 161 'variables': { 162 # Treat this as third-party code. 163 'chromium_code': 0, 164 }, 165 'target_name': 'cpu_features_android', 166 'type': '<(library)', 167 'sources': [ 168 'android/cpu-features.c', 169 'android/cpu-features.h', 170 # TODO(leozwang): Ideally we want to audomatically exclude .c files 171 # as with .cc files, gyp currently only excludes .cc files. 172 'cpu_features_android.c', 173 ], 174 }, 175 ], 176 }], 177 ['include_tests==1', { 178 'targets': [ 179 { 180 'target_name': 'system_wrappers_unittests', 181 'type': 'executable', 182 'dependencies': [ 183 'system_wrappers', 184 '<(DEPTH)/testing/gtest.gyp:gtest', 185 '<(webrtc_root)/test/test.gyp:test_support_main', 186 ], 187 'sources': [ 188 'condition_variable_unittest.cc', 189 'cpu_wrapper_unittest.cc', 190 'cpu_measurement_harness.h', 191 'cpu_measurement_harness.cc', 192 'critical_section_unittest.cc', 193 'list_unittest.cc', 194 'map_unittest.cc', 195 'data_log_unittest.cc', 196 'data_log_unittest_disabled.cc', 197 'data_log_helpers_unittest.cc', 198 'data_log_c_helpers_unittest.c', 199 'data_log_c_helpers_unittest.h', 200 'thread_unittest.cc', 201 'trace_unittest.cc', 202 'unittest_utilities_unittest.cc', 203 ], 204 'conditions': [ 205 ['enable_data_logging==1', { 206 'sources!': [ 'data_log_unittest_disabled.cc', ], 207 }, { 208 'sources!': [ 'data_log_unittest.cc', ], 209 }], 210 ], 211 }, 212 ], # targets 213 }], # include_tests 214 ], # conditions 215} 216 217# Local Variables: 218# tab-width:2 219# indent-tabs-mode:nil 220# End: 221# vim: set expandtab tabstop=2 shiftwidth=2: 222