You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			235 lines
		
	
	
		
			7.0 KiB
		
	
	
	
		
			Python
		
	
			
		
		
	
	
			235 lines
		
	
	
		
			7.0 KiB
		
	
	
	
		
			Python
		
	
# Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
 | 
						|
#
 | 
						|
# Use of this source code is governed by a BSD-style license
 | 
						|
# that can be found in the LICENSE file in the root of the source
 | 
						|
# tree. An additional intellectual property rights grant can be found
 | 
						|
# in the file PATENTS.  All contributing project authors may
 | 
						|
# be found in the AUTHORS file in the root of the source tree.
 | 
						|
 | 
						|
{
 | 
						|
  'includes': [ '../../build/common.gypi', ],
 | 
						|
  'targets': [
 | 
						|
    {
 | 
						|
      'target_name': 'system_wrappers',
 | 
						|
      'type': 'static_library',
 | 
						|
      'include_dirs': [
 | 
						|
        'spreadsortlib',
 | 
						|
        '../interface',
 | 
						|
      ],
 | 
						|
      'dependencies': [
 | 
						|
        '../../base/base.gyp:webrtc_base',
 | 
						|
      ],
 | 
						|
      'direct_dependent_settings': {
 | 
						|
        'include_dirs': [
 | 
						|
          '../interface',
 | 
						|
        ],
 | 
						|
      },
 | 
						|
      'sources': [
 | 
						|
        '../interface/aligned_malloc.h',
 | 
						|
        '../interface/atomic32.h',
 | 
						|
        '../interface/clock.h',
 | 
						|
        '../interface/compile_assert.h',
 | 
						|
        '../interface/condition_variable_wrapper.h',
 | 
						|
        '../interface/cpu_info.h',
 | 
						|
        '../interface/cpu_features_wrapper.h',
 | 
						|
        '../interface/critical_section_wrapper.h',
 | 
						|
        '../interface/data_log.h',
 | 
						|
        '../interface/data_log_c.h',
 | 
						|
        '../interface/data_log_impl.h',
 | 
						|
        '../interface/event_tracer.h',
 | 
						|
        '../interface/event_wrapper.h',
 | 
						|
        '../interface/field_trial.h',
 | 
						|
        '../interface/file_wrapper.h',
 | 
						|
        '../interface/fix_interlocked_exchange_pointer_win.h',
 | 
						|
        '../interface/logcat_trace_context.h',
 | 
						|
        '../interface/logging.h',
 | 
						|
        '../interface/ref_count.h',
 | 
						|
        '../interface/rtp_to_ntp.h',
 | 
						|
        '../interface/rw_lock_wrapper.h',
 | 
						|
        '../interface/scoped_ptr.h',
 | 
						|
        '../interface/scoped_refptr.h',
 | 
						|
        '../interface/scoped_vector.h',
 | 
						|
        '../interface/sleep.h',
 | 
						|
        '../interface/sort.h',
 | 
						|
        '../interface/static_instance.h',
 | 
						|
        '../interface/stl_util.h',
 | 
						|
        '../interface/stringize_macros.h',
 | 
						|
        '../interface/thread_annotations.h',
 | 
						|
        '../interface/thread_wrapper.h',
 | 
						|
        '../interface/tick_util.h',
 | 
						|
        '../interface/timestamp_extrapolator.h',
 | 
						|
        '../interface/trace.h',
 | 
						|
        '../interface/trace_event.h',
 | 
						|
        '../interface/utf_util_win.h',
 | 
						|
        'aligned_malloc.cc',
 | 
						|
        'atomic32_mac.cc',
 | 
						|
        'atomic32_posix.cc',
 | 
						|
        'atomic32_win.cc',
 | 
						|
        'clock.cc',
 | 
						|
        'condition_variable.cc',
 | 
						|
        'condition_variable_posix.cc',
 | 
						|
        'condition_variable_posix.h',
 | 
						|
        'condition_variable_event_win.cc',
 | 
						|
        'condition_variable_event_win.h',
 | 
						|
        'condition_variable_native_win.cc',
 | 
						|
        'condition_variable_native_win.h',
 | 
						|
        'cpu_info.cc',
 | 
						|
        'cpu_features.cc',
 | 
						|
        'critical_section.cc',
 | 
						|
        'critical_section_posix.cc',
 | 
						|
        'critical_section_posix.h',
 | 
						|
        'critical_section_win.cc',
 | 
						|
        'critical_section_win.h',
 | 
						|
        'data_log.cc',
 | 
						|
        'data_log_c.cc',
 | 
						|
        'data_log_no_op.cc',
 | 
						|
        'event.cc',
 | 
						|
        'event_posix.cc',
 | 
						|
        'event_posix.h',
 | 
						|
        'event_tracer.cc',
 | 
						|
        'event_win.cc',
 | 
						|
        'event_win.h',
 | 
						|
        'file_impl.cc',
 | 
						|
        'file_impl.h',
 | 
						|
        'logcat_trace_context.cc',
 | 
						|
        'logging.cc',
 | 
						|
        'rtp_to_ntp.cc',
 | 
						|
        'rw_lock.cc',
 | 
						|
        'rw_lock_generic.cc',
 | 
						|
        'rw_lock_generic.h',
 | 
						|
        'rw_lock_posix.cc',
 | 
						|
        'rw_lock_posix.h',
 | 
						|
        'rw_lock_win.cc',
 | 
						|
        'rw_lock_win.h',
 | 
						|
        'set_thread_name_win.h',
 | 
						|
        'sleep.cc',
 | 
						|
        'sort.cc',
 | 
						|
        'tick_util.cc',
 | 
						|
        'thread.cc',
 | 
						|
        'thread_posix.cc',
 | 
						|
        'thread_posix.h',
 | 
						|
        'thread_win.cc',
 | 
						|
        'thread_win.h',
 | 
						|
        'timestamp_extrapolator.cc',
 | 
						|
        'trace_impl.cc',
 | 
						|
        'trace_impl.h',
 | 
						|
        'trace_posix.cc',
 | 
						|
        'trace_posix.h',
 | 
						|
        'trace_win.cc',
 | 
						|
        'trace_win.h',
 | 
						|
      ],
 | 
						|
      'conditions': [
 | 
						|
        ['enable_data_logging==1', {
 | 
						|
          'sources!': [ 'data_log_no_op.cc', ],
 | 
						|
        }, {
 | 
						|
          'sources!': [ 'data_log.cc', ],
 | 
						|
        },],
 | 
						|
        ['OS=="android"', {
 | 
						|
          'defines': [
 | 
						|
            'WEBRTC_THREAD_RR',
 | 
						|
            # TODO(leozwang): Investigate CLOCK_REALTIME and CLOCK_MONOTONIC
 | 
						|
            # support on Android. Keep WEBRTC_CLOCK_TYPE_REALTIME for now,
 | 
						|
            # remove it after I verify that CLOCK_MONOTONIC is fully functional
 | 
						|
            # with condition and event functions in system_wrappers.
 | 
						|
            'WEBRTC_CLOCK_TYPE_REALTIME',
 | 
						|
           ],
 | 
						|
          'dependencies': [ 'cpu_features_android', ],
 | 
						|
          'link_settings': {
 | 
						|
            'libraries': [
 | 
						|
              '-llog',
 | 
						|
            ],
 | 
						|
          },
 | 
						|
        }, {  # OS!="android"
 | 
						|
          'sources!': [
 | 
						|
            '../interface/logcat_trace_context.h',
 | 
						|
            'logcat_trace_context.cc',
 | 
						|
          ],
 | 
						|
        }],
 | 
						|
        ['OS=="linux"', {
 | 
						|
          'defines': [
 | 
						|
            'WEBRTC_THREAD_RR',
 | 
						|
            # TODO(andrew): can we select this automatically?
 | 
						|
            # Define this if the Linux system does not support CLOCK_MONOTONIC.
 | 
						|
            #'WEBRTC_CLOCK_TYPE_REALTIME',
 | 
						|
          ],
 | 
						|
          'link_settings': {
 | 
						|
            'libraries': [ '-lrt', ],
 | 
						|
          },
 | 
						|
        }],
 | 
						|
        ['OS=="mac"', {
 | 
						|
          'link_settings': {
 | 
						|
            'libraries': [ '$(SDKROOT)/System/Library/Frameworks/ApplicationServices.framework', ],
 | 
						|
          },
 | 
						|
          'sources!': [
 | 
						|
            'atomic32_posix.cc',
 | 
						|
          ],
 | 
						|
        }],
 | 
						|
        ['OS=="ios" or OS=="mac"', {
 | 
						|
          'defines': [
 | 
						|
            'WEBRTC_THREAD_RR',
 | 
						|
            'WEBRTC_CLOCK_TYPE_REALTIME',
 | 
						|
          ],
 | 
						|
        }],
 | 
						|
        ['OS=="win"', {
 | 
						|
          'link_settings': {
 | 
						|
            'libraries': [ '-lwinmm.lib', ],
 | 
						|
          },
 | 
						|
        }],
 | 
						|
      ], # conditions
 | 
						|
      'target_conditions': [
 | 
						|
        # We need to do this in a target_conditions block to override the
 | 
						|
        # filename_rules filters.
 | 
						|
        ['OS=="ios"', {
 | 
						|
          # Pull in specific Mac files for iOS (which have been filtered out
 | 
						|
          # by file name rules).
 | 
						|
          'sources/': [
 | 
						|
            ['include', '^atomic32_mac\\.'],
 | 
						|
          ],
 | 
						|
          'sources!': [
 | 
						|
            'atomic32_posix.cc',
 | 
						|
          ],
 | 
						|
        }],
 | 
						|
      ],
 | 
						|
      # Disable warnings to enable Win64 build, issue 1323.
 | 
						|
      'msvs_disabled_warnings': [
 | 
						|
        4267,  # size_t to int truncation.
 | 
						|
        4334,  # Ignore warning on shift operator promotion.
 | 
						|
      ],
 | 
						|
    }, {
 | 
						|
      'target_name': 'field_trial_default',
 | 
						|
      'type': 'static_library',
 | 
						|
      'sources': [
 | 
						|
        'field_trial_default.cc',
 | 
						|
      ],
 | 
						|
      'dependencies': [
 | 
						|
        'system_wrappers',
 | 
						|
      ]
 | 
						|
    },
 | 
						|
  ], # targets
 | 
						|
  'conditions': [
 | 
						|
    ['OS=="android"', {
 | 
						|
      'targets': [
 | 
						|
        {
 | 
						|
          'target_name': 'cpu_features_android',
 | 
						|
          'type': 'static_library',
 | 
						|
          'sources': [
 | 
						|
            'cpu_features_android.c',
 | 
						|
          ],
 | 
						|
          'conditions': [
 | 
						|
            ['android_webview_build == 1', {
 | 
						|
              'libraries': [
 | 
						|
                'cpufeatures.a'
 | 
						|
              ],
 | 
						|
            }, {
 | 
						|
              'dependencies': [
 | 
						|
                '<(android_ndk_root)/android_tools_ndk.gyp:cpu_features',
 | 
						|
              ],
 | 
						|
            }],
 | 
						|
          ],
 | 
						|
        },
 | 
						|
      ],
 | 
						|
    }],
 | 
						|
  ], # conditions
 | 
						|
}
 | 
						|
 |