Home | History | Annotate | Download | only in modules
      1 # 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.
      8 
      9 {
     10   'includes': [
     11     '../build/common.gypi',
     12     'audio_coding/codecs/cng/cng.gypi',
     13     'audio_coding/codecs/g711/g711.gypi',
     14     'audio_coding/codecs/g722/g722.gypi',
     15     'audio_coding/codecs/ilbc/ilbc.gypi',
     16     'audio_coding/codecs/isac/main/source/isac.gypi',
     17     'audio_coding/codecs/isac/fix/source/isacfix.gypi',
     18     'audio_coding/codecs/pcm16b/pcm16b.gypi',
     19     'audio_coding/main/acm2/audio_coding_module.gypi',
     20     'audio_coding/neteq/neteq.gypi',
     21     'audio_conference_mixer/source/audio_conference_mixer.gypi',
     22     'audio_device/audio_device.gypi',
     23     'audio_processing/audio_processing.gypi',
     24     'bitrate_controller/bitrate_controller.gypi',
     25     'desktop_capture/desktop_capture.gypi',
     26     'media_file/source/media_file.gypi',
     27     'pacing/pacing.gypi',
     28     'remote_bitrate_estimator/remote_bitrate_estimator.gypi',
     29     'rtp_rtcp/source/rtp_rtcp.gypi',
     30     'utility/source/utility.gypi',
     31     'video_coding/codecs/i420/main/source/i420.gypi',
     32     'video_coding/main/source/video_coding.gypi',
     33     'video_capture/video_capture.gypi',
     34     'video_processing/main/source/video_processing.gypi',
     35     'video_render/video_render.gypi',
     36   ],
     37   'conditions': [
     38     ['include_opus==1', {
     39       'includes': ['audio_coding/codecs/opus/opus.gypi',],
     40     }],
     41     ['include_tests==1', {
     42       'includes': [
     43         'audio_coding/codecs/isac/isac_test.gypi',
     44         'audio_coding/codecs/isac/isacfix_test.gypi',
     45         'audio_coding/codecs/tools/audio_codec_speed_tests.gypi',
     46         'audio_processing/audio_processing_tests.gypi',
     47         'rtp_rtcp/test/testFec/test_fec.gypi',
     48         'video_coding/main/source/video_coding_test.gypi',
     49         'video_coding/codecs/test/video_codecs_test_framework.gypi',
     50         'video_coding/codecs/test_framework/test_framework.gypi',
     51         'video_coding/codecs/tools/video_codecs_tools.gypi',
     52       ], # includes
     53       'variables': {
     54         'conditions': [
     55           # Desktop capturer is supported only on Windows, OSX and Linux.
     56           ['OS=="win" or OS=="mac" or OS=="linux"', {
     57             'desktop_capture_supported%': 1,
     58           }, {
     59             'desktop_capture_supported%': 0,
     60           }],
     61         ],
     62       },
     63       'targets': [
     64         {
     65           'target_name': 'modules_unittests',
     66           'type': '<(gtest_target_type)',
     67           'defines': [
     68             '<@(audio_coding_defines)',
     69           ],
     70           'dependencies': [
     71             'audio_coding_module',
     72             'audio_processing',
     73             'bitrate_controller',
     74             'CNG',
     75             'desktop_capture',
     76             'iSACFix',
     77             'media_file',
     78             'neteq',
     79             'neteq_test_tools',
     80             'neteq_unittest_tools',
     81             'paced_sender',
     82             'PCM16B',  # Needed by NetEq tests.
     83             'remote_bitrate_estimator',
     84             'rtp_rtcp',
     85             'test_framework',
     86             'video_codecs_test_framework',
     87             'video_processing',
     88             'webrtc_utility',
     89             'webrtc_video_coding',
     90             '<@(neteq_dependencies)',
     91             '<(rbe_components_path)/remote_bitrate_estimator_components.gyp:rbe_components',
     92             '<(DEPTH)/testing/gmock.gyp:gmock',
     93             '<(DEPTH)/testing/gtest.gyp:gtest',
     94             '<(DEPTH)/third_party/gflags/gflags.gyp:gflags',
     95             '<(webrtc_root)/common_audio/common_audio.gyp:common_audio',
     96             '<(webrtc_root)/modules/video_coding/codecs/vp8/vp8.gyp:webrtc_vp8',
     97             '<(webrtc_root)/system_wrappers/source/system_wrappers.gyp:system_wrappers',
     98             '<(webrtc_root)/test/test.gyp:test_support_main',
     99             '<(webrtc_root)/test/test.gyp:frame_generator',
    100             '<(webrtc_root)/test/test.gyp:rtcp_packet_parser',
    101           ],
    102           'sources': [
    103             'audio_coding/main/acm2/acm_receiver_unittest.cc',
    104             'audio_coding/main/acm2/audio_coding_module_unittest.cc',
    105             'audio_coding/main/acm2/call_statistics_unittest.cc',
    106             'audio_coding/main/acm2/initial_delay_manager_unittest.cc',
    107             'audio_coding/main/acm2/nack_unittest.cc',
    108             'audio_coding/codecs/cng/cng_unittest.cc',
    109             'audio_coding/codecs/isac/fix/source/filters_unittest.cc',
    110             'audio_coding/codecs/isac/fix/source/filterbanks_unittest.cc',
    111             'audio_coding/codecs/isac/fix/source/lpc_masking_model_unittest.cc',
    112             'audio_coding/codecs/isac/fix/source/transform_unittest.cc',
    113             'audio_coding/codecs/isac/main/source/isac_unittest.cc',
    114             'audio_coding/codecs/opus/opus_unittest.cc',
    115             'audio_coding/neteq/audio_classifier_unittest.cc',
    116             'audio_coding/neteq/audio_multi_vector_unittest.cc',
    117             'audio_coding/neteq/audio_vector_unittest.cc',
    118             'audio_coding/neteq/background_noise_unittest.cc',
    119             'audio_coding/neteq/buffer_level_filter_unittest.cc',
    120             'audio_coding/neteq/comfort_noise_unittest.cc',
    121             'audio_coding/neteq/decision_logic_unittest.cc',
    122             'audio_coding/neteq/decoder_database_unittest.cc',
    123             'audio_coding/neteq/delay_manager_unittest.cc',
    124             'audio_coding/neteq/delay_peak_detector_unittest.cc',
    125             'audio_coding/neteq/dsp_helper_unittest.cc',
    126             'audio_coding/neteq/dtmf_buffer_unittest.cc',
    127             'audio_coding/neteq/dtmf_tone_generator_unittest.cc',
    128             'audio_coding/neteq/expand_unittest.cc',
    129             'audio_coding/neteq/merge_unittest.cc',
    130             'audio_coding/neteq/neteq_external_decoder_unittest.cc',
    131             'audio_coding/neteq/neteq_impl_unittest.cc',
    132             'audio_coding/neteq/neteq_stereo_unittest.cc',
    133             'audio_coding/neteq/neteq_unittest.cc',
    134             'audio_coding/neteq/normal_unittest.cc',
    135             'audio_coding/neteq/packet_buffer_unittest.cc',
    136             'audio_coding/neteq/payload_splitter_unittest.cc',
    137             'audio_coding/neteq/post_decode_vad_unittest.cc',
    138             'audio_coding/neteq/random_vector_unittest.cc',
    139             'audio_coding/neteq/sync_buffer_unittest.cc',
    140             'audio_coding/neteq/timestamp_scaler_unittest.cc',
    141             'audio_coding/neteq/time_stretch_unittest.cc',
    142             'audio_coding/neteq/mock/mock_audio_decoder.h',
    143             'audio_coding/neteq/mock/mock_audio_vector.h',
    144             'audio_coding/neteq/mock/mock_buffer_level_filter.h',
    145             'audio_coding/neteq/mock/mock_decoder_database.h',
    146             'audio_coding/neteq/mock/mock_delay_manager.h',
    147             'audio_coding/neteq/mock/mock_delay_peak_detector.h',
    148             'audio_coding/neteq/mock/mock_dtmf_buffer.h',
    149             'audio_coding/neteq/mock/mock_dtmf_tone_generator.h',
    150             'audio_coding/neteq/mock/mock_external_decoder_pcm16b.h',
    151             'audio_coding/neteq/mock/mock_packet_buffer.h',
    152             'audio_coding/neteq/mock/mock_payload_splitter.h',
    153             'audio_coding/neteq/tools/packet_unittest.cc',
    154             'audio_processing/aec/system_delay_unittest.cc',
    155             'audio_processing/aec/echo_cancellation_unittest.cc',
    156             'audio_processing/echo_cancellation_impl_unittest.cc',
    157             'audio_processing/utility/delay_estimator_unittest.cc',
    158             'audio_processing/utility/ring_buffer_unittest.cc',
    159             'bitrate_controller/bitrate_controller_unittest.cc',
    160             'desktop_capture/desktop_and_cursor_composer_unittest.cc',
    161             'desktop_capture/desktop_region_unittest.cc',
    162             'desktop_capture/differ_block_unittest.cc',
    163             'desktop_capture/differ_unittest.cc',
    164             'desktop_capture/mouse_cursor_monitor_unittest.cc',
    165             'desktop_capture/screen_capturer_helper_unittest.cc',
    166             'desktop_capture/screen_capturer_mac_unittest.cc',
    167             'desktop_capture/screen_capturer_mock_objects.h',
    168             'desktop_capture/screen_capturer_unittest.cc',
    169             'desktop_capture/window_capturer_unittest.cc',
    170             'desktop_capture/win/cursor_unittest.cc',
    171             'desktop_capture/win/cursor_unittest_resources.h',
    172             'desktop_capture/win/cursor_unittest_resources.rc',
    173             'media_file/source/media_file_unittest.cc',
    174             'module_common_types_unittest.cc',
    175             'pacing/paced_sender_unittest.cc',
    176             'remote_bitrate_estimator/bwe_simulations.cc',
    177             'remote_bitrate_estimator/include/mock/mock_remote_bitrate_observer.h',
    178             'remote_bitrate_estimator/rate_statistics_unittest.cc',
    179             'remote_bitrate_estimator/remote_bitrate_estimator_single_stream_unittest.cc',
    180             'remote_bitrate_estimator/remote_bitrate_estimator_unittest_helper.cc',
    181             'remote_bitrate_estimator/remote_bitrate_estimator_unittest_helper.h',
    182             'remote_bitrate_estimator/remote_bitrate_estimators_test.cc',
    183             'remote_bitrate_estimator/test/bwe_test_baselinefile.cc',
    184             'remote_bitrate_estimator/test/bwe_test_baselinefile.h',
    185             'remote_bitrate_estimator/test/bwe_test_fileutils.cc',
    186             'remote_bitrate_estimator/test/bwe_test_fileutils.h',
    187             'remote_bitrate_estimator/test/bwe_test_framework.cc',
    188             'remote_bitrate_estimator/test/bwe_test_framework.h',
    189             'remote_bitrate_estimator/test/bwe_test_framework_unittest.cc',
    190             'remote_bitrate_estimator/test/bwe_test_logging.cc',
    191             'remote_bitrate_estimator/test/bwe_test_logging.h',
    192             'remote_bitrate_estimator/test/bwe_test.cc',
    193             'remote_bitrate_estimator/test/bwe_test.h',
    194             'rtp_rtcp/source/mock/mock_rtp_payload_strategy.h',
    195             'rtp_rtcp/source/byte_io_unittest.cc',
    196             'rtp_rtcp/source/fec_receiver_unittest.cc',
    197             'rtp_rtcp/source/fec_test_helper.cc',
    198             'rtp_rtcp/source/fec_test_helper.h',
    199             'rtp_rtcp/source/nack_rtx_unittest.cc',
    200             'rtp_rtcp/source/producer_fec_unittest.cc',
    201             'rtp_rtcp/source/receive_statistics_unittest.cc',
    202             'rtp_rtcp/source/remote_ntp_time_estimator_unittest.cc',
    203             'rtp_rtcp/source/rtcp_format_remb_unittest.cc',
    204             'rtp_rtcp/source/rtcp_packet_unittest.cc',
    205             'rtp_rtcp/source/rtcp_receiver_unittest.cc',
    206             'rtp_rtcp/source/rtcp_sender_unittest.cc',
    207             'rtp_rtcp/source/rtp_fec_unittest.cc',
    208             'rtp_rtcp/source/rtp_format_vp8_unittest.cc',
    209             'rtp_rtcp/source/rtp_format_vp8_test_helper.cc',
    210             'rtp_rtcp/source/rtp_format_vp8_test_helper.h',
    211             'rtp_rtcp/source/rtp_packet_history_unittest.cc',
    212             'rtp_rtcp/source/rtp_payload_registry_unittest.cc',
    213             'rtp_rtcp/source/rtp_rtcp_impl_unittest.cc',
    214             'rtp_rtcp/source/rtp_utility_unittest.cc',
    215             'rtp_rtcp/source/rtp_header_extension_unittest.cc',
    216             'rtp_rtcp/source/rtp_sender_unittest.cc',
    217             'rtp_rtcp/source/vp8_partition_aggregator_unittest.cc',
    218             'rtp_rtcp/test/testAPI/test_api.cc',
    219             'rtp_rtcp/test/testAPI/test_api.h',
    220             'rtp_rtcp/test/testAPI/test_api_audio.cc',
    221             'rtp_rtcp/test/testAPI/test_api_rtcp.cc',
    222             'rtp_rtcp/test/testAPI/test_api_video.cc',
    223             'utility/source/audio_frame_operations_unittest.cc',
    224             'utility/source/file_player_unittests.cc',
    225             'video_coding/codecs/test/packet_manipulator_unittest.cc',
    226             'video_coding/codecs/test/stats_unittest.cc',
    227             'video_coding/codecs/test/videoprocessor_unittest.cc',
    228             'video_coding/codecs/vp8/default_temporal_layers_unittest.cc',
    229             'video_coding/codecs/vp8/reference_picture_selection_unittest.cc',
    230             'video_coding/main/interface/mock/mock_vcm_callbacks.h',
    231             'video_coding/main/source/decoding_state_unittest.cc',
    232             'video_coding/main/source/jitter_buffer_unittest.cc',
    233             'video_coding/main/source/media_optimization_unittest.cc',
    234             'video_coding/main/source/receiver_unittest.cc',
    235             'video_coding/main/source/session_info_unittest.cc',
    236             'video_coding/main/source/timing_unittest.cc',
    237             'video_coding/main/source/video_coding_robustness_unittest.cc',
    238             'video_coding/main/source/video_receiver_unittest.cc',
    239             'video_coding/main/source/video_sender_unittest.cc',
    240             'video_coding/main/source/qm_select_unittest.cc',
    241             'video_coding/main/source/test/stream_generator.cc',
    242             'video_coding/main/source/test/stream_generator.h',
    243             'video_coding/main/test/pcap_file_reader.cc',
    244             'video_coding/main/test/pcap_file_reader_unittest.cc',
    245             'video_coding/main/test/rtp_file_reader.cc',
    246             'video_coding/main/test/rtp_file_reader_unittest.cc',
    247             'video_processing/main/test/unit_test/brightness_detection_test.cc',
    248             'video_processing/main/test/unit_test/color_enhancement_test.cc',
    249             'video_processing/main/test/unit_test/content_metrics_test.cc',
    250             'video_processing/main/test/unit_test/deflickering_test.cc',
    251             'video_processing/main/test/unit_test/denoising_test.cc',
    252             'video_processing/main/test/unit_test/video_processing_unittest.cc',
    253             'video_processing/main/test/unit_test/video_processing_unittest.h',
    254           ],
    255           'conditions': [
    256             ['enable_bwe_test_logging==1', {
    257               'defines': [ 'BWE_TEST_LOGGING_COMPILE_TIME_ENABLE=1' ],
    258             }, {
    259               'defines': [ 'BWE_TEST_LOGGING_COMPILE_TIME_ENABLE=0' ],
    260               'sources!': [
    261                 'remote_bitrate_estimator/test/bwe_test_logging.cc'
    262               ],
    263             }],
    264             # Run screen/window capturer tests only on platforms where they are
    265             # supported.
    266             ['desktop_capture_supported==0', {
    267               'sources!': [
    268                 'desktop_capture/desktop_and_cursor_composer_unittest.cc',
    269                 'desktop_capture/mouse_cursor_monitor_unittest.cc',
    270                 'desktop_capture/screen_capturer_helper_unittest.cc',
    271                 'desktop_capture/screen_capturer_mac_unittest.cc',
    272                 'desktop_capture/screen_capturer_mock_objects.h',
    273                 'desktop_capture/screen_capturer_unittest.cc',
    274                 'desktop_capture/window_capturer_unittest.cc',
    275               ],
    276             }],
    277             ['prefer_fixed_point==1', {
    278               'defines': [ 'WEBRTC_AUDIOPROC_FIXED_PROFILE' ],
    279             }, {
    280               'defines': [ 'WEBRTC_AUDIOPROC_FLOAT_PROFILE' ],
    281             }],
    282             ['enable_protobuf==1', {
    283               'defines': [ 'WEBRTC_AUDIOPROC_DEBUG_DUMP' ],
    284               'dependencies': [
    285                 'audioproc_unittest_proto',
    286               ],
    287               'sources': [
    288                 'audio_processing/audio_processing_impl_unittest.cc',
    289                 'audio_processing/test/audio_processing_unittest.cc',
    290                 'audio_processing/test/test_utils.h',
    291               ],
    292             }],
    293             ['build_libvpx==1', {
    294               'dependencies': [
    295                 '<(DEPTH)/third_party/libvpx/libvpx.gyp:libvpx',
    296               ],
    297             }],
    298             # TODO(henrike): remove build_with_chromium==1 when the bots are
    299             # using Chromium's buildbots.
    300             ['build_with_chromium==1 and OS=="android"', {
    301               'dependencies': [
    302                 '<(DEPTH)/testing/android/native_test.gyp:native_test_native_code',
    303               ],
    304             }],
    305           ],
    306           # Disable warnings to enable Win64 build, issue 1323.
    307           'msvs_disabled_warnings': [
    308             4267,  # size_t to int truncation.
    309           ],
    310         },
    311         {
    312           'target_name': 'modules_tests',
    313           'type': '<(gtest_target_type)',
    314           'dependencies': [
    315             'audio_coding_module',
    316             'rtp_rtcp',
    317             'test_framework',
    318             'video_codecs_test_framework',
    319             'webrtc_utility',
    320             'webrtc_video_coding',
    321             '<(DEPTH)/testing/gtest.gyp:gtest',
    322             '<(webrtc_root)/common_video/common_video.gyp:common_video',
    323             '<(webrtc_root)/modules/video_coding/codecs/vp8/vp8.gyp:webrtc_vp8',
    324             '<(webrtc_root)/system_wrappers/source/system_wrappers.gyp:system_wrappers',
    325             '<(webrtc_root)/test/metrics.gyp:metrics',
    326             '<(webrtc_root)/test/test.gyp:test_support',
    327             '<(webrtc_root)/test/test.gyp:test_support_main',
    328           ],
    329           'defines': [
    330             '<@(audio_coding_defines)',
    331           ],
    332           'sources': [
    333             'audio_coding/main/test/ACMTest.cc',
    334             'audio_coding/main/test/APITest.cc',
    335             'audio_coding/main/test/Channel.cc',
    336             'audio_coding/main/test/dual_stream_unittest.cc',
    337             'audio_coding/main/test/EncodeDecodeTest.cc',
    338             'audio_coding/main/test/iSACTest.cc',
    339             'audio_coding/main/test/opus_test.cc',
    340             'audio_coding/main/test/PacketLossTest.cc',
    341             'audio_coding/main/test/PCMFile.cc',
    342             'audio_coding/main/test/RTPFile.cc',
    343             'audio_coding/main/test/SpatialAudio.cc',
    344             'audio_coding/main/test/TestAllCodecs.cc',
    345             'audio_coding/main/test/target_delay_unittest.cc',
    346             'audio_coding/main/test/Tester.cc',
    347             'audio_coding/main/test/TestRedFec.cc',
    348             'audio_coding/main/test/TestStereo.cc',
    349             'audio_coding/main/test/TestVADDTX.cc',
    350             'audio_coding/main/test/TimedTrace.cc',
    351             'audio_coding/main/test/TwoWayCommunication.cc',
    352             'audio_coding/main/test/initial_delay_unittest.cc',
    353             'audio_coding/main/test/utility.cc',
    354             'rtp_rtcp/test/testFec/test_fec.cc',
    355             'video_coding/codecs/test/videoprocessor_integrationtest.cc',
    356             'video_coding/codecs/vp8/test/vp8_impl_unittest.cc',
    357           ],
    358           'conditions': [
    359             # TODO(henrike): remove build_with_chromium==1 when the bots are
    360             # using Chromium's buildbots.
    361             ['build_with_chromium==1 and OS=="android"', {
    362               'dependencies': [
    363                 '<(DEPTH)/testing/android/native_test.gyp:native_test_native_code',
    364               ],
    365             }],
    366           ],
    367         },
    368       ],
    369       'conditions': [
    370         # TODO(henrike): remove build_with_chromium==1 when the bots are using
    371         # Chromium's buildbots.
    372         ['build_with_chromium==1 and OS=="android"', {
    373           'targets': [
    374             {
    375               'target_name': 'modules_unittests_apk_target',
    376               'type': 'none',
    377               'dependencies': [
    378                 '<(apk_tests_path):modules_unittests_apk',
    379               ],
    380             },
    381             {
    382               'target_name': 'modules_tests_apk_target',
    383               'type': 'none',
    384               'dependencies': [
    385                 '<(apk_tests_path):modules_tests_apk',
    386               ],
    387             },
    388           ],
    389         }],
    390         ['test_isolation_mode != "noop"', {
    391           'targets': [
    392             {
    393               'target_name': 'modules_tests_run',
    394               'type': 'none',
    395               'dependencies': [
    396                 'modules_tests',
    397               ],
    398               'includes': [
    399                 '../build/isolate.gypi',
    400                 'modules_tests.isolate',
    401               ],
    402               'sources': [
    403                 'modules_tests.isolate',
    404               ],
    405             },
    406             {
    407               'target_name': 'modules_unittests_run',
    408               'type': 'none',
    409               'dependencies': [
    410                 'modules_unittests',
    411               ],
    412               'includes': [
    413                 '../build/isolate.gypi',
    414                 'modules_unittests.isolate',
    415               ],
    416               'sources': [
    417                 'modules_unittests.isolate',
    418               ],
    419             },
    420           ],
    421         }],
    422       ],
    423     }], # include_tests
    424   ], # conditions
    425 }
    426