| # Copyright (c) 2016 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. |
| |
| import("../webrtc.gni") |
| import("audio_coding/audio_coding.gni") |
| |
| group("modules") { |
| public_deps = [ |
| "audio_coding", |
| "audio_conference_mixer", |
| "audio_device", |
| "audio_mixer", |
| "audio_processing", |
| "bitrate_controller", |
| "congestion_controller", |
| "desktop_capture", |
| "media_file", |
| "pacing", |
| "remote_bitrate_estimator", |
| "rtp_rtcp", |
| "utility", |
| "video_coding", |
| "video_processing", |
| ] |
| } |
| |
| rtc_source_set("module_api") { |
| sources = [ |
| "include/module.h", |
| "include/module_common_types.h", |
| ] |
| deps = [ |
| "..:webrtc_common", |
| "../api:optional", |
| "../api:video_frame_api", |
| "../rtc_base:rtc_base_approved", |
| ] |
| } |
| |
| if (rtc_include_tests) { |
| modules_tests_resources = [ |
| "../resources/audio_coding/testfile32kHz.pcm", |
| "../resources/audio_coding/teststereo32kHz.pcm", |
| "../resources/foreman_cif.yuv", |
| "../resources/paris_qcif.yuv", |
| ] |
| |
| if (is_ios) { |
| bundle_data("modules_tests_bundle_data") { |
| testonly = true |
| sources = modules_tests_resources |
| outputs = [ |
| "{{bundle_resources_dir}}/{{source_file_part}}", |
| ] |
| } |
| } |
| |
| rtc_test("modules_tests") { |
| testonly = true |
| |
| deps = [ |
| "../test:test_main", |
| "../test:video_test_common", |
| "audio_coding:audio_coding_modules_tests", |
| "desktop_capture:desktop_capture_modules_tests", |
| "rtp_rtcp:rtp_rtcp_modules_tests", |
| "video_coding:video_coding_modules_tests", |
| "//testing/gmock", |
| "//testing/gtest", |
| ] |
| |
| data = modules_tests_resources |
| |
| if (is_android) { |
| deps += [ |
| # NOTE(brandtr): Including Java classes seems only to be possible from |
| # rtc_test targets. Therefore we include this target here, instead of |
| # in video_coding_modules_tests, where it is actually used. |
| "../sdk/android:libjingle_peerconnection_java", |
| "//testing/android/native_test:native_test_native_code", |
| ] |
| shard_timeout = 900 |
| } |
| |
| if (is_ios) { |
| deps += [ ":modules_tests_bundle_data" ] |
| } |
| |
| if (!build_with_chromium && is_clang) { |
| # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). |
| suppressed_configs += [ "//build/config/clang:find_bad_constructs" ] |
| } |
| if (is_win) { |
| cflags = [ |
| # TODO(phoglund): get rid of 4373 supression when |
| # http://code.google.com/p/webrtc/issues/detail?id=261 is solved. |
| # legacy warning for ignoring const / volatile in signatures. |
| "/wd4373", |
| ] |
| } |
| } |
| |
| modules_unittests_resources = [ |
| "../resources/att-downlink.rx", |
| "../resources/att-uplink.rx", |
| "../resources/audio_coding/neteq_opus.rtp", |
| "../resources/audio_coding/neteq_universal_new.rtp", |
| "../resources/audio_coding/speech_mono_16kHz.pcm", |
| "../resources/audio_coding/speech_mono_32_48kHz.pcm", |
| "../resources/audio_coding/testfile32kHz.pcm", |
| "../resources/audio_coding/teststereo32kHz.pcm", |
| "../resources/audio_device/audio_short16.pcm", |
| "../resources/audio_device/audio_short44.pcm", |
| "../resources/audio_device/audio_short48.pcm", |
| "../resources/audio_processing/agc/agc_audio.pcm", |
| "../resources/audio_processing/agc/agc_no_circular_buffer.dat", |
| "../resources/audio_processing/agc/agc_pitch_gain.dat", |
| "../resources/audio_processing/agc/agc_pitch_lag.dat", |
| "../resources/audio_processing/agc/agc_spectral_peak.dat", |
| "../resources/audio_processing/agc/agc_vad.dat", |
| "../resources/audio_processing/agc/agc_voicing_prob.dat", |
| "../resources/audio_processing/agc/agc_with_circular_buffer.dat", |
| "../resources/audio_processing/output_data_fixed.pb", |
| "../resources/audio_processing/output_data_float.pb", |
| "../resources/audio_processing/output_data_mac.pb", |
| "../resources/audio_processing/transient/ajm-macbook-1-spke16m.pcm", |
| "../resources/audio_processing/transient/audio16kHz.pcm", |
| "../resources/audio_processing/transient/audio32kHz.pcm", |
| "../resources/audio_processing/transient/audio48kHz.pcm", |
| "../resources/audio_processing/transient/audio8kHz.pcm", |
| "../resources/audio_processing/transient/detect16kHz.dat", |
| "../resources/audio_processing/transient/detect32kHz.dat", |
| "../resources/audio_processing/transient/detect48kHz.dat", |
| "../resources/audio_processing/transient/detect8kHz.dat", |
| "../resources/audio_processing/transient/double-utils.dat", |
| "../resources/audio_processing/transient/float-utils.dat", |
| "../resources/audio_processing/transient/suppressed16kHz.pcm", |
| "../resources/audio_processing/transient/suppressed32kHz.pcm", |
| "../resources/audio_processing/transient/suppressed8kHz.pcm", |
| "../resources/audio_processing/transient/wpd0.dat", |
| "../resources/audio_processing/transient/wpd1.dat", |
| "../resources/audio_processing/transient/wpd2.dat", |
| "../resources/audio_processing/transient/wpd3.dat", |
| "../resources/audio_processing/transient/wpd4.dat", |
| "../resources/audio_processing/transient/wpd5.dat", |
| "../resources/audio_processing/transient/wpd6.dat", |
| "../resources/audio_processing/transient/wpd7.dat", |
| "../resources/deflicker_before_cif_short.yuv", |
| "../resources/far16_stereo.pcm", |
| "../resources/far32_stereo.pcm", |
| "../resources/far44_stereo.pcm", |
| "../resources/far48_stereo.pcm", |
| "../resources/far8_stereo.pcm", |
| "../resources/foremanColorEnhanced_cif_short.yuv", |
| "../resources/foreman_cif.yuv", |
| "../resources/foreman_cif_short.yuv", |
| "../resources/near16_stereo.pcm", |
| "../resources/near32_stereo.pcm", |
| "../resources/near44_stereo.pcm", |
| "../resources/near48_stereo.pcm", |
| "../resources/near8_stereo.pcm", |
| "../resources/ref03.aecdump", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_IncreasingChoke1_0_AST.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_IncreasingChoke1_0_TOF.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_IncreasingChoke1_1_AST.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_IncreasingChoke1_1_TOF.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_IncreasingChoke2_0_AST.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_IncreasingChoke2_0_TOF.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_IncreasingChoke2_1_AST.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_IncreasingChoke2_1_TOF.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_IncreasingDelay1_0_AST.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_IncreasingDelay1_0_TOF.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_IncreasingLoss1_0_AST.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_IncreasingLoss1_0_TOF.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_Multi1_1_AST.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_Multi1_1_TOF.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_SteadyChoke_0_AST.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_SteadyChoke_0_TOF.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_SteadyChoke_1_AST.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_SteadyChoke_1_TOF.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_SteadyDelay_0_AST.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_SteadyDelay_0_TOF.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_SteadyLoss_0_AST.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_SteadyLoss_0_TOF.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_UnlimitedSpeed_0_AST.bin", |
| "../resources/remote_bitrate_estimator/VideoSendersTest_BweTest_UnlimitedSpeed_0_TOF.bin", |
| "../resources/short_mixed_mono_48.dat", |
| "../resources/short_mixed_mono_48_arm.dat", |
| "../resources/short_mixed_mono_48.pcm", |
| "../resources/short_mixed_stereo_48.dat", |
| "../resources/short_mixed_stereo_48.pcm", |
| "../resources/sprint-downlink.rx", |
| "../resources/sprint-uplink.rx", |
| "../resources/synthetic-trace.rx", |
| "../resources/tmobile-downlink.rx", |
| "../resources/tmobile-uplink.rx", |
| "../resources/verizon3g-downlink.rx", |
| "../resources/verizon3g-uplink.rx", |
| "../resources/verizon4g-downlink.rx", |
| "../resources/verizon4g-uplink.rx", |
| "../resources/voice_engine/audio_tiny48.wav", |
| ] |
| if (is_ios) { |
| bundle_data("modules_unittests_bundle_data") { |
| testonly = true |
| sources = modules_unittests_resources |
| outputs = [ |
| "{{bundle_resources_dir}}/{{source_file_part}}", |
| ] |
| } |
| } |
| |
| rtc_test("modules_unittests") { |
| testonly = true |
| defines = [] |
| sources = [ |
| "module_common_types_unittest.cc", |
| ] |
| |
| if (!build_with_chromium && is_clang) { |
| # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). |
| suppressed_configs += [ "//build/config/clang:find_bad_constructs" ] |
| } |
| |
| deps = [ |
| ":module_api", |
| "../test:test_main", |
| "audio_coding:audio_coding_unittests", |
| "audio_conference_mixer:audio_conference_mixer_unittests", |
| "audio_device:audio_device_unittests", |
| "audio_mixer:audio_mixer_unittests", |
| "audio_processing:audio_processing_unittests", |
| "bitrate_controller:bitrate_controller_unittests", |
| "congestion_controller:congestion_controller_unittests", |
| "desktop_capture:desktop_capture_unittests", |
| "media_file:media_file_unittests", |
| "pacing:pacing_unittests", |
| "remote_bitrate_estimator:remote_bitrate_estimator_unittests", |
| "rtp_rtcp:rtp_rtcp_unittests", |
| "utility:utility_unittests", |
| "video_capture", |
| "video_coding:video_coding_unittests", |
| "video_processing:video_processing_unittests", |
| ] |
| |
| data = modules_unittests_resources |
| |
| if (is_android) { |
| deps += [ |
| "../sdk/android:libjingle_peerconnection_java", |
| "//testing/android/native_test:native_test_support", |
| ] |
| shard_timeout = 900 |
| } |
| if (is_ios) { |
| info_plist = "../test/ios/Info.plist" |
| deps += [ ":modules_unittests_bundle_data" ] |
| configs += [ "..:common_objc" ] |
| ldflags = [ "-ObjC" ] |
| } |
| } |
| } |