Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

447 lines
12 KiB
Plaintext
Raw Normal View History

# Copyright (c) 2014 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.
Reland of Moving webrtc.gni up one level from build/ (patchset #1 id:1 of https://codereview.webrtc.org/2657563002/ ) Reason for revert: Starting to work on a fix (it seems that there are third_party dependencies that depends on the path to the webrtc.gni file) Original issue's description: > Revert of Moving webrtc.gni up one level from build/ (patchset #1 id:1 of https://codereview.webrtc.org/2651543003/ ) > > Reason for revert: > This was causing the following failure: https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Builder/builds/838/steps/generate_build_files/logs/stdio > > Original issue's description: > > Moving webrtc.gni up one level from build/ > > > > BUG=webrtc:7030 > > > > Review-Url: https://codereview.webrtc.org/2651543003 > > Cr-Commit-Position: refs/heads/master@{#16241} > > Committed: https://chromium.googlesource.com/external/webrtc/+/35a32700fc9b5d932ddbd528c12f59c3274e4774 > > TBR=kjellander@webrtc.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=webrtc:7030 > > Review-Url: https://codereview.webrtc.org/2657563002 > Cr-Commit-Position: refs/heads/master@{#16244} > Committed: https://chromium.googlesource.com/external/webrtc/+/69dc7dbe247ead087f3bae0eb7e23f27f0de1ec3 TBR=kjellander@webrtc.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=webrtc:7030 Review-Url: https://codereview.webrtc.org/2654773002 Cr-Commit-Position: refs/heads/master@{#16247}
2017-01-24 06:58:22 -08:00
import("../../webrtc.gni")
Reland of Fixing package-boundary violation with srjar_deps (patchset #1 id:1 of https://codereview.webrtc.org/2617533005/ ) Reason for revert: Skipping the build of the target "//webrtc/modules/audio_device:audio_device_java" when building webrtc with chromium. This was causing a failure because in that case it is not possible to refer to the script used by the template "android_shared_srcjar" with an absolute path (which seems to be necessary since the script attribute of action is relative to the invocation target and not to the template declaration). Original issue's description: > Revert of Fixing package-boundary violation with srjar_deps (patchset #5 id:80001 of https://codereview.webrtc.org/2610823002/ ) > > Reason for revert: > This CL is breaking a chromium.webrtc.fyi: https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Builder/builds/226 > > I am trying to reproduce the issue on my local machine and I will try to re-land the CL later. > > Original issue's description: > > Fixing package-boundary violation with srjar_deps > > > > Without the usage of the srcjar_deps attribute we were not able to > > include .java files from other packages without violating the package > > boundary contraint. > > > > As an example, in this CL the target "libjingle_peerconnection_java" was > > directly including .java files from another packages in its "java_files" > > attribute. > > > > Using srcjar_deps we are able to declare the dependency of the target > > avoiding to create hidden dependencies in the codebase. > > > > This is not fixing the webrtc:6356 bug directly but it is a first step to > > include ThreadUtils classes in libjingle_peerconnection_client_java.jar > > again. > > > > It seems also to be related to the chromium:648244 bug. This can be solved > > if we can find a way to perform srcjar generation in the android_library > > target without changing the semantic of the target. > > > > BUG=webrtc:6356 > > > > Review-Url: https://codereview.webrtc.org/2610823002 > > Cr-Commit-Position: refs/heads/master@{#15914} > > Committed: https://chromium.googlesource.com/external/webrtc/+/10a76592a78762187bfaf3547b7e9986454062ab > > TBR=kjellander@webrtc.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=webrtc:6356 > > Review-Url: https://codereview.webrtc.org/2617533005 > Cr-Commit-Position: refs/heads/master@{#15915} > Committed: https://chromium.googlesource.com/external/webrtc/+/eb731ed09ebfea1b26d1b7bc1f2678f7bbc012ee TBR=kjellander@webrtc.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=webrtc:6356 Review-Url: https://codereview.webrtc.org/2612953004 Cr-Commit-Position: refs/heads/master@{#15958}
2017-01-09 02:37:21 -08:00
if (is_android) {
import("//build/config/android/config.gni")
import("//build/config/android/rules.gni")
}
config("audio_device_warnings_config") {
if (is_win && is_clang) {
cflags = [
# Disable warnings failing when compiling with Clang on Windows.
# https://bugs.chromium.org/p/webrtc/issues/detail?id=5366
"-Wno-microsoft-goto",
]
}
}
rtc_source_set("audio_device_default") {
visibility = [ "*" ]
sources = [ "include/audio_device_default.h" ]
deps = [ ":audio_device_api" ]
}
rtc_source_set("audio_device") {
Revert "Revert "GN rtc_* templates: Set default visibility to webrtc_root + "/*""" This reverts commit c73e1f437889d882cbf2987f7fb3a029a6150613. Reason for revert: The problem with failed deps in chrome content/renderer had already been fixed in https://webrtc-review.googlesource.com/c/src/+/38660 Original change's description: > Revert "GN rtc_* templates: Set default visibility to webrtc_root + "/*"" > > This reverts commit 588c548657b3ddf76e7b3f241263eef7f5799f16. > > Reason for revert: > > Breaks Chrome FYI: > > /b/c/b/Linux_Builder/src/buildtools/linux64/gn gen //out/Release --check > -> returned 1 > ERROR at //build/split_static_library.gni:12:5: Dependency not allowed. > static_library(target_name) { > ^---------------------------- > The item //content/renderer:renderer > can not depend on //third_party/webrtc/media:rtc_internal_video_codecs > because it is not in //third_party/webrtc/media:rtc_internal_video_codecs's visibility list: [ > //third_party/webrtc/* > //third_party/webrtc_overrides/* > ] > > https://logs.chromium.org/v/?s=chromium%2Fbb%2Fchromium.webrtc.fyi%2FLinux_Builder%2F23560%2F%2B%2Frecipes%2Fsteps%2Fgenerate_build_files%2F0%2Fstdout > > Original change's description: > > GN rtc_* templates: Set default visibility to webrtc_root + "/*" > > > > This means that by default, targets are visible to everything under > > the WebRTC root, but not visible to anything else. > > > > API targets are manually tagged with visibility "*", so that targets > > outside the WebRTC tree can see them. > > > > BUG=webrtc:8254 > > > > Change-Id: Icdbee6e0d22d93240ff2fb530c8f9dc48e351509 > > Reviewed-on: https://webrtc-review.googlesource.com/24140 > > Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org> > > Commit-Queue: Karl Wiberg <kwiberg@webrtc.org> > > Cr-Commit-Position: refs/heads/master@{#21548} > > TBR=mbonadei@webrtc.org,kwiberg@webrtc.org > > Change-Id: I06620ce3d6f67482935c22efa231dd6cab91625a > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: webrtc:8254 > Reviewed-on: https://webrtc-review.googlesource.com/38760 > Reviewed-by: Per Kjellander <perkj@webrtc.org> > Commit-Queue: Per Kjellander <perkj@webrtc.org> > Cr-Commit-Position: refs/heads/master@{#21555} TBR=mbonadei@webrtc.org,kwiberg@webrtc.org,perkj@webrtc.org Change-Id: I6f720078ce21bd172e0a6471bae8c4c011e4a657 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: webrtc:8254 Reviewed-on: https://webrtc-review.googlesource.com/38860 Reviewed-by: Per Kjellander <perkj@webrtc.org> Commit-Queue: Per Kjellander <perkj@webrtc.org> Cr-Commit-Position: refs/heads/master@{#21558}
2018-01-10 15:54:53 +00:00
visibility = [ "*" ]
public_deps = [
":audio_device_api",
# Deprecated.
# TODO(webrtc:7452): Remove this public dep. audio_device_impl should
# be depended on directly if needed.
":audio_device_impl",
]
}
rtc_source_set("audio_device_api") {
visibility = [ "*" ]
sources = [
"include/audio_device.h",
"include/audio_device_defines.h",
]
deps = [
"../../api:scoped_refptr",
"../../api/task_queue",
"../../rtc_base:checks",
"../../rtc_base:deprecation",
"../../rtc_base:rtc_base_approved",
"../../rtc_base:stringutils",
]
}
rtc_library("audio_device_buffer") {
sources = [
"audio_device_buffer.cc",
"audio_device_buffer.h",
"audio_device_config.h",
"fine_audio_buffer.cc",
"fine_audio_buffer.h",
]
deps = [
":audio_device_api",
"../../api:array_view",
"../../api/task_queue",
"../../common_audio:common_audio_c",
"../../rtc_base:checks",
"../../rtc_base:rtc_base_approved",
"../../rtc_base:rtc_task_queue",
"../../rtc_base/synchronization:mutex",
"../../system_wrappers",
"../../system_wrappers:metrics",
]
}
rtc_library("audio_device_generic") {
sources = [
"audio_device_generic.cc",
"audio_device_generic.h",
]
deps = [
":audio_device_api",
":audio_device_buffer",
"../../rtc_base:rtc_base_approved",
]
}
rtc_library("audio_device_name") {
sources = [
"audio_device_name.cc",
"audio_device_name.h",
]
}
rtc_source_set("windows_core_audio_utility") {
if (is_win && !build_with_chromium) {
sources = [
"win/core_audio_utility_win.cc",
"win/core_audio_utility_win.h",
]
deps = [
":audio_device_api",
":audio_device_name",
"../../api/units:time_delta",
"../../rtc_base:checks",
"../../rtc_base:rtc_base_approved",
]
libs = [ "oleaut32.lib" ]
}
}
# An ADM with a dedicated factory method which does not depend on the
# audio_device_impl target. The goal is to use this new structure and
# gradually phase out the old design.
# TODO(henrika): currently only supported on Windows.
rtc_source_set("audio_device_module_from_input_and_output") {
visibility = [ "*" ]
if (is_win && !build_with_chromium) {
sources = [
"include/audio_device_factory.cc",
"include/audio_device_factory.h",
]
sources += [
"win/audio_device_module_win.cc",
"win/audio_device_module_win.h",
"win/core_audio_base_win.cc",
"win/core_audio_base_win.h",
"win/core_audio_input_win.cc",
"win/core_audio_input_win.h",
"win/core_audio_output_win.cc",
"win/core_audio_output_win.h",
]
deps = [
":audio_device_api",
":audio_device_buffer",
":windows_core_audio_utility",
"../../api:scoped_refptr",
"../../api/task_queue",
"../../rtc_base:checks",
"../../rtc_base:rtc_base_approved",
]
absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
}
}
# Contains default implementations of webrtc::AudioDeviceModule for Windows,
# Linux, Mac, iOS and Android.
rtc_library("audio_device_impl") {
visibility = [ "*" ]
deps = [
":audio_device_api",
":audio_device_buffer",
":audio_device_default",
":audio_device_generic",
"../../api:array_view",
"../../api:refcountedbase",
"../../api:scoped_refptr",
"../../api/task_queue",
"../../common_audio",
"../../common_audio:common_audio_c",
"../../rtc_base",
"../../rtc_base:checks",
Remove voe::TransmitMixer TransmitMixer's functionality is moved into the AudioTransportProxy owned by AudioState. This removes the need for an AudioTransport implementation in VoEBaseImpl, which means that the proxy is no longer a proxy, hence AudioTransportProxy is renamed to AudioTransportImpl. In the short term, AudioState needs to know which AudioDeviceModule is used, so it is added in AudioState::Config. AudioTransportImpl needs to know which AudioSendStream:s are currently enabled to send, so AudioState maintains a map of them, which is reduced into a simple vector for AudioTransportImpl. To encode and transmit audio, AudioSendStream::OnAudioData(std::unique_ptr<AudioFrame> audio_frame) is introduced, which is used in both the Chromium and standalone use cases. This removes the need for two different instances of voe::Channel::ProcessAndEncodeAudio(), so there is now only one, taking an AudioFrame as argument. Callers need to allocate their own AudioFrame:s, which is wasteful but not a regression since this was already happening in the voe::Channel functions. Most of the logic changed resides in AudioTransportImpl::RecordedDataIsAvailable(), where two strange things were found: 1. The clock drift parameter was ineffective since apm->echo_cancellation()->enable_drift_compensation(false) is called during initialization. 2. The output parameter 'new_mic_volume' was never set - instead it was returned as a result, causing the ADM to never update the analog mic gain (https://cs.chromium.org/chromium/src/third_party/webrtc/voice_engine/voe_base_impl.cc?q=voe_base_impl.cc&dr&l=100). Besides this, tests are updated, and some dead code is removed which was found in the process. Bug: webrtc:4690, webrtc:8591 Change-Id: I789d5296bf5efb7299a5ee05a4f3ce6abf9124b2 Reviewed-on: https://webrtc-review.googlesource.com/26681 Commit-Queue: Fredrik Solenberg <solenberg@webrtc.org> Reviewed-by: Oskar Sundbom <ossu@webrtc.org> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org> Cr-Commit-Position: refs/heads/master@{#21301}
2017-12-15 16:42:15 +01:00
"../../rtc_base:deprecation",
"../../rtc_base:rtc_base_approved",
"../../rtc_base:rtc_task_queue",
"../../rtc_base/synchronization:mutex",
"../../rtc_base/system:arch",
"../../rtc_base/system:file_wrapper",
"../../rtc_base/task_utils:repeating_task",
"../../system_wrappers",
"../../system_wrappers:field_trial",
"../../system_wrappers:metrics",
"../utility",
]
if (rtc_include_internal_audio_device && is_ios) {
Reland "Remove old audio device implementation." This reverts commit e9d2b4efdd5dddaa3a476c0ac2a9cf9125b39929. Reason for revert: Fixing build break of downstream project. Original change's description: > Revert "Remove old audio device implementation." > > This reverts commit 0cfa4cba5cae5e942f5d8e0e4e93b94982d0bfc3. > > Reason for revert: audio_device_ios_objc target is removed, but still referenced by iPhone Meetins:Meeting_build_test, which now fails to build > > Original change's description: > > Remove old audio device implementation. > > > > The iOS ADM implementation now lives in sdk/objc/native/api/audio_device_module.{h,mm}. > > > > Bug: webrtc:10514 > > Change-Id: Ib0b162027b5680ebc40d621a57f1155f08e7a057 > > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/131326 > > Commit-Queue: Kári Helgason <kthelgason@webrtc.org> > > Reviewed-by: Henrik Andreassson <henrika@webrtc.org> > > Reviewed-by: Niels Moller <nisse@webrtc.org> > > Cr-Commit-Position: refs/heads/master@{#27488} > > TBR=henrika@webrtc.org,nisse@webrtc.org,kthelgason@webrtc.org > > Change-Id: I5be10b3d17403a79ea30afc255cde01171bc9f5b > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Bug: webrtc:10514 > Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/131960 > Reviewed-by: Jeroen de Borst <jeroendb@webrtc.org> > Commit-Queue: Jeroen de Borst <jeroendb@webrtc.org> > Cr-Commit-Position: refs/heads/master@{#27492} TBR=henrika@webrtc.org,nisse@webrtc.org,kthelgason@webrtc.org,jeroendb@webrtc.org Change-Id: Ic05131d902f9623bd5ae7635d3c71880ffd3c6d3 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: webrtc:10514 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/131944 Reviewed-by: Kári Helgason <kthelgason@webrtc.org> Reviewed-by: Henrik Andreassson <henrika@webrtc.org> Commit-Queue: Kári Helgason <kthelgason@webrtc.org> Cr-Commit-Position: refs/heads/master@{#27533}
2019-04-10 08:43:53 +02:00
deps += [ "../../sdk:audio_device" ]
}
sources = [
"dummy/audio_device_dummy.cc",
"dummy/audio_device_dummy.h",
"dummy/file_audio_device.cc",
"dummy/file_audio_device.h",
"include/fake_audio_device.h",
"include/test_audio_device.cc",
"include/test_audio_device.h",
]
if (build_with_mozilla) {
sources += [
"opensl/single_rw_fifo.cc",
"opensl/single_rw_fifo.h",
]
}
defines = []
cflags = []
if (rtc_audio_device_plays_sinus_tone) {
defines += [ "AUDIO_DEVICE_PLAYS_SINUS_TONE" ]
}
if (rtc_enable_android_aaudio) {
defines += [ "WEBRTC_AUDIO_DEVICE_INCLUDE_ANDROID_AAUDIO" ]
}
if (rtc_include_internal_audio_device) {
sources += [
"audio_device_data_observer.cc",
"audio_device_impl.cc",
"audio_device_impl.h",
"include/audio_device_data_observer.h",
]
if (is_android) {
sources += [
"android/audio_common.h",
"android/audio_device_template.h",
"android/audio_manager.cc",
"android/audio_manager.h",
"android/audio_record_jni.cc",
"android/audio_record_jni.h",
"android/audio_track_jni.cc",
"android/audio_track_jni.h",
"android/build_info.cc",
"android/build_info.h",
"android/opensles_common.cc",
"android/opensles_common.h",
"android/opensles_player.cc",
"android/opensles_player.h",
"android/opensles_recorder.cc",
"android/opensles_recorder.h",
]
libs = [
"log",
"OpenSLES",
]
if (rtc_enable_android_aaudio) {
sources += [
"android/aaudio_player.cc",
"android/aaudio_player.h",
"android/aaudio_recorder.cc",
"android/aaudio_recorder.h",
"android/aaudio_wrapper.cc",
"android/aaudio_wrapper.h",
]
libs += [ "aaudio" ]
}
if (build_with_mozilla) {
include_dirs += [
"/config/external/nspr",
"/nsprpub/lib/ds",
"/nsprpub/pr/include",
]
}
}
if (rtc_use_dummy_audio_file_devices) {
defines += [ "WEBRTC_DUMMY_FILE_DEVICES" ]
} else {
if (is_linux || is_chromeos) {
sources += [
"linux/alsasymboltable_linux.cc",
"linux/alsasymboltable_linux.h",
"linux/audio_device_alsa_linux.cc",
"linux/audio_device_alsa_linux.h",
"linux/audio_mixer_manager_alsa_linux.cc",
"linux/audio_mixer_manager_alsa_linux.h",
"linux/latebindingsymboltable_linux.cc",
"linux/latebindingsymboltable_linux.h",
]
defines += [ "WEBRTC_ENABLE_LINUX_ALSA" ]
libs = [ "dl" ]
if (rtc_use_x11) {
libs += [ "X11" ]
defines += [ "WEBRTC_USE_X11" ]
}
if (rtc_include_pulse_audio) {
defines += [ "WEBRTC_ENABLE_LINUX_PULSE" ]
}
sources += [
"linux/audio_device_pulse_linux.cc",
"linux/audio_device_pulse_linux.h",
"linux/audio_mixer_manager_pulse_linux.cc",
"linux/audio_mixer_manager_pulse_linux.h",
"linux/pulseaudiosymboltable_linux.cc",
"linux/pulseaudiosymboltable_linux.h",
]
}
if (is_mac) {
sources += [
"mac/audio_device_mac.cc",
"mac/audio_device_mac.h",
"mac/audio_mixer_manager_mac.cc",
"mac/audio_mixer_manager_mac.h",
]
deps += [
":audio_device_impl_frameworks",
"../third_party/portaudio:mac_portaudio",
]
}
if (is_win) {
sources += [
"win/audio_device_core_win.cc",
"win/audio_device_core_win.h",
]
libs = [
# Required for the built-in WASAPI AEC.
"dmoguids.lib",
"wmcodecdspuuid.lib",
"amstrmid.lib",
"msdmo.lib",
"oleaut32.lib",
]
deps += [ "../../rtc_base:win32" ]
}
configs += [ ":audio_device_warnings_config" ]
}
} else {
defines = [ "WEBRTC_DUMMY_AUDIO_BUILD" ]
}
if (!build_with_chromium) {
sources += [
# Do not link these into Chrome since they contain static data.
"dummy/file_audio_device_factory.cc",
"dummy/file_audio_device_factory.h",
]
}
}
if (is_mac) {
rtc_source_set("audio_device_impl_frameworks") {
visibility = [ ":*" ]
frameworks = [
# Needed for CoreGraphics:
"ApplicationServices.framework",
"AudioToolbox.framework",
"CoreAudio.framework",
# Needed for CGEventSourceKeyState in audio_device_mac.cc:
"CoreGraphics.framework",
]
}
}
Reland of Enabling `gn check` on webrtc/test (patchset #1 id:1 of https://codereview.webrtc.org/2920763002/ ) Reason for revert: Fixing and re-landing. Original issue's description: > Revert of Enabling `gn check` on webrtc/test (patchset #9 id:160001 of https://codereview.webrtc.org/2911203002/ ) > > Reason for revert: > ERROR at //webrtc/test/testsupport/fileutils_unittest.cc:20:11: Can't include this header from here. > #include "webrtc/base/checks.h" > ^------------------- > The target: > //webrtc/test:fileutils_unittests > is including a file from the target: > //webrtc/base:rtc_base_approved > > It's usually best to depend directly on the destination target. > In some cases, the destination target is considered a subcomponent > of an intermediate target. In this case, the intermediate target > should depend publicly on the destination to forward the ability > to include headers. > > Dependency chain (there may also be others): > //webrtc/test:fileutils_unittests --> > //webrtc/test:fileutils --[private]--> > //webrtc/base:rtc_base_approved > > > Original issue's description: > > Enabling `gn check` on webrtc/test > > > > BUG=webrtc:6828 > > NOTRY=True > > > > Review-Url: https://codereview.webrtc.org/2911203002 > > Cr-Commit-Position: refs/heads/master@{#18372} > > Committed: https://chromium.googlesource.com/external/webrtc/+/db5bb404b0f42a7c0a43f882b34ba1325d8cbae2 > > TBR=kjellander@webrtc.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=webrtc:6828 > > Review-Url: https://codereview.webrtc.org/2920763002 > Cr-Commit-Position: refs/heads/master@{#18375} > Committed: https://chromium.googlesource.com/external/webrtc/+/1a6f143d077aec85d919c516b4f74ada8b8c21a8 TBR=kjellander@webrtc.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=webrtc:6828 Review-Url: https://codereview.webrtc.org/2918793002 Cr-Commit-Position: refs/heads/master@{#18376}
2017-06-01 04:47:20 -07:00
rtc_source_set("mock_audio_device") {
visibility = [ "*" ]
Reland of Enabling `gn check` on webrtc/test (patchset #1 id:1 of https://codereview.webrtc.org/2920763002/ ) Reason for revert: Fixing and re-landing. Original issue's description: > Revert of Enabling `gn check` on webrtc/test (patchset #9 id:160001 of https://codereview.webrtc.org/2911203002/ ) > > Reason for revert: > ERROR at //webrtc/test/testsupport/fileutils_unittest.cc:20:11: Can't include this header from here. > #include "webrtc/base/checks.h" > ^------------------- > The target: > //webrtc/test:fileutils_unittests > is including a file from the target: > //webrtc/base:rtc_base_approved > > It's usually best to depend directly on the destination target. > In some cases, the destination target is considered a subcomponent > of an intermediate target. In this case, the intermediate target > should depend publicly on the destination to forward the ability > to include headers. > > Dependency chain (there may also be others): > //webrtc/test:fileutils_unittests --> > //webrtc/test:fileutils --[private]--> > //webrtc/base:rtc_base_approved > > > Original issue's description: > > Enabling `gn check` on webrtc/test > > > > BUG=webrtc:6828 > > NOTRY=True > > > > Review-Url: https://codereview.webrtc.org/2911203002 > > Cr-Commit-Position: refs/heads/master@{#18372} > > Committed: https://chromium.googlesource.com/external/webrtc/+/db5bb404b0f42a7c0a43f882b34ba1325d8cbae2 > > TBR=kjellander@webrtc.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=webrtc:6828 > > Review-Url: https://codereview.webrtc.org/2920763002 > Cr-Commit-Position: refs/heads/master@{#18375} > Committed: https://chromium.googlesource.com/external/webrtc/+/1a6f143d077aec85d919c516b4f74ada8b8c21a8 TBR=kjellander@webrtc.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=webrtc:6828 Review-Url: https://codereview.webrtc.org/2918793002 Cr-Commit-Position: refs/heads/master@{#18376}
2017-06-01 04:47:20 -07:00
testonly = true
sources = [
"include/mock_audio_device.h",
"include/mock_audio_transport.h",
"mock_audio_device_buffer.h",
Reland of Enabling `gn check` on webrtc/test (patchset #1 id:1 of https://codereview.webrtc.org/2920763002/ ) Reason for revert: Fixing and re-landing. Original issue's description: > Revert of Enabling `gn check` on webrtc/test (patchset #9 id:160001 of https://codereview.webrtc.org/2911203002/ ) > > Reason for revert: > ERROR at //webrtc/test/testsupport/fileutils_unittest.cc:20:11: Can't include this header from here. > #include "webrtc/base/checks.h" > ^------------------- > The target: > //webrtc/test:fileutils_unittests > is including a file from the target: > //webrtc/base:rtc_base_approved > > It's usually best to depend directly on the destination target. > In some cases, the destination target is considered a subcomponent > of an intermediate target. In this case, the intermediate target > should depend publicly on the destination to forward the ability > to include headers. > > Dependency chain (there may also be others): > //webrtc/test:fileutils_unittests --> > //webrtc/test:fileutils --[private]--> > //webrtc/base:rtc_base_approved > > > Original issue's description: > > Enabling `gn check` on webrtc/test > > > > BUG=webrtc:6828 > > NOTRY=True > > > > Review-Url: https://codereview.webrtc.org/2911203002 > > Cr-Commit-Position: refs/heads/master@{#18372} > > Committed: https://chromium.googlesource.com/external/webrtc/+/db5bb404b0f42a7c0a43f882b34ba1325d8cbae2 > > TBR=kjellander@webrtc.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=webrtc:6828 > > Review-Url: https://codereview.webrtc.org/2920763002 > Cr-Commit-Position: refs/heads/master@{#18375} > Committed: https://chromium.googlesource.com/external/webrtc/+/1a6f143d077aec85d919c516b4f74ada8b8c21a8 TBR=kjellander@webrtc.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=webrtc:6828 Review-Url: https://codereview.webrtc.org/2918793002 Cr-Commit-Position: refs/heads/master@{#18376}
2017-06-01 04:47:20 -07:00
]
deps = [
":audio_device",
":audio_device_buffer",
":audio_device_impl",
"../../rtc_base:refcount",
Reland of Enabling `gn check` on webrtc/test (patchset #1 id:1 of https://codereview.webrtc.org/2920763002/ ) Reason for revert: Fixing and re-landing. Original issue's description: > Revert of Enabling `gn check` on webrtc/test (patchset #9 id:160001 of https://codereview.webrtc.org/2911203002/ ) > > Reason for revert: > ERROR at //webrtc/test/testsupport/fileutils_unittest.cc:20:11: Can't include this header from here. > #include "webrtc/base/checks.h" > ^------------------- > The target: > //webrtc/test:fileutils_unittests > is including a file from the target: > //webrtc/base:rtc_base_approved > > It's usually best to depend directly on the destination target. > In some cases, the destination target is considered a subcomponent > of an intermediate target. In this case, the intermediate target > should depend publicly on the destination to forward the ability > to include headers. > > Dependency chain (there may also be others): > //webrtc/test:fileutils_unittests --> > //webrtc/test:fileutils --[private]--> > //webrtc/base:rtc_base_approved > > > Original issue's description: > > Enabling `gn check` on webrtc/test > > > > BUG=webrtc:6828 > > NOTRY=True > > > > Review-Url: https://codereview.webrtc.org/2911203002 > > Cr-Commit-Position: refs/heads/master@{#18372} > > Committed: https://chromium.googlesource.com/external/webrtc/+/db5bb404b0f42a7c0a43f882b34ba1325d8cbae2 > > TBR=kjellander@webrtc.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=webrtc:6828 > > Review-Url: https://codereview.webrtc.org/2920763002 > Cr-Commit-Position: refs/heads/master@{#18375} > Committed: https://chromium.googlesource.com/external/webrtc/+/1a6f143d077aec85d919c516b4f74ada8b8c21a8 TBR=kjellander@webrtc.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=webrtc:6828 Review-Url: https://codereview.webrtc.org/2918793002 Cr-Commit-Position: refs/heads/master@{#18376}
2017-06-01 04:47:20 -07:00
"../../test:test_support",
]
}
if (rtc_include_tests) {
rtc_library("audio_device_unittests") {
testonly = true
sources = [
"fine_audio_buffer_unittest.cc",
"include/test_audio_device_unittest.cc",
]
deps = [
":audio_device",
":audio_device_buffer",
":audio_device_impl",
":mock_audio_device",
"../../api:array_view",
"../../api:scoped_refptr",
"../../api/task_queue",
"../../api/task_queue:default_task_queue_factory",
"../../common_audio",
"../../rtc_base:checks",
"../../rtc_base:ignore_wundef",
"../../rtc_base:rtc_base_approved",
"../../rtc_base/synchronization:mutex",
"../../system_wrappers",
"../../test:fileutils",
"../../test:test_support",
"../utility",
]
absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
if (is_linux || is_chromeos || is_mac || is_win) {
sources += [ "audio_device_unittest.cc" ]
}
if (is_win) {
sources += [ "win/core_audio_utility_win_unittest.cc" ]
deps += [
":audio_device_module_from_input_and_output",
":windows_core_audio_utility",
]
}
if (is_android) {
# Need to disable error due to the line in
# base/android/jni_android.h triggering it:
# const BASE_EXPORT jobject GetApplicationContext()
# error: type qualifiers ignored on function return type
cflags = [ "-Wno-ignored-qualifiers" ]
sources += [
"android/audio_device_unittest.cc",
"android/audio_manager_unittest.cc",
"android/ensure_initialized.cc",
"android/ensure_initialized.h",
]
deps += [
"../../base",
"../../sdk/android:libjingle_peerconnection_java",
]
}
if (!rtc_include_internal_audio_device) {
defines = [ "WEBRTC_DUMMY_AUDIO_BUILD" ]
}
}
}
Reland of Fixing package-boundary violation with srjar_deps (patchset #1 id:1 of https://codereview.webrtc.org/2617533005/ ) Reason for revert: Skipping the build of the target "//webrtc/modules/audio_device:audio_device_java" when building webrtc with chromium. This was causing a failure because in that case it is not possible to refer to the script used by the template "android_shared_srcjar" with an absolute path (which seems to be necessary since the script attribute of action is relative to the invocation target and not to the template declaration). Original issue's description: > Revert of Fixing package-boundary violation with srjar_deps (patchset #5 id:80001 of https://codereview.webrtc.org/2610823002/ ) > > Reason for revert: > This CL is breaking a chromium.webrtc.fyi: https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Builder/builds/226 > > I am trying to reproduce the issue on my local machine and I will try to re-land the CL later. > > Original issue's description: > > Fixing package-boundary violation with srjar_deps > > > > Without the usage of the srcjar_deps attribute we were not able to > > include .java files from other packages without violating the package > > boundary contraint. > > > > As an example, in this CL the target "libjingle_peerconnection_java" was > > directly including .java files from another packages in its "java_files" > > attribute. > > > > Using srcjar_deps we are able to declare the dependency of the target > > avoiding to create hidden dependencies in the codebase. > > > > This is not fixing the webrtc:6356 bug directly but it is a first step to > > include ThreadUtils classes in libjingle_peerconnection_client_java.jar > > again. > > > > It seems also to be related to the chromium:648244 bug. This can be solved > > if we can find a way to perform srcjar generation in the android_library > > target without changing the semantic of the target. > > > > BUG=webrtc:6356 > > > > Review-Url: https://codereview.webrtc.org/2610823002 > > Cr-Commit-Position: refs/heads/master@{#15914} > > Committed: https://chromium.googlesource.com/external/webrtc/+/10a76592a78762187bfaf3547b7e9986454062ab > > TBR=kjellander@webrtc.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=webrtc:6356 > > Review-Url: https://codereview.webrtc.org/2617533005 > Cr-Commit-Position: refs/heads/master@{#15915} > Committed: https://chromium.googlesource.com/external/webrtc/+/eb731ed09ebfea1b26d1b7bc1f2678f7bbc012ee TBR=kjellander@webrtc.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=webrtc:6356 Review-Url: https://codereview.webrtc.org/2612953004 Cr-Commit-Position: refs/heads/master@{#15958}
2017-01-09 02:37:21 -08:00
if (!build_with_chromium && is_android) {
Reland: "Make javac warnings errors for WebRTC targets." This reverts commit 2bad72a27329ff30ceb9479253f5eb3d21888d25. Reason for revert: Fixing downstream projects (take 2). Original change's description: > Reland "Revert "Make javac warnings errors for WebRTC targets."" > > This is a reland of 098d24c3c18f4b1fd043d7ba716d7601f0ce2b74 > Original change's description: > > Revert "Make javac warnings errors for WebRTC targets." > > > > This reverts commit 19b761403c3522902d69d61179f4d184e3632f79. > > > > Reason for revert: Breaking internal builds > > > > Original change's description: > > > Make javac warnings errors for WebRTC targets. > > > > > > Adds new rtc_* templates for Android targets to allow specifying > > > default values that affect WebRTC targets. > > > > > > Bug: webrtc:6597 > > > Change-Id: Ie529bfc8500d1e785b8a59dba7078b5f88ccfcd1 > > > Reviewed-on: https://webrtc-review.googlesource.com/15103 > > > Reviewed-by: Patrik Höglund <phoglund@webrtc.org> > > > Commit-Queue: Sami Kalliomäki <sakal@webrtc.org> > > > Cr-Commit-Position: refs/heads/master@{#20567} > > > TBR=phoglund@webrtc.org,sakal@webrtc.org > > > > Change-Id: I6d3ff5604b3d4307765d3a65adb783f89fcc974c > > No-Presubmit: true > > No-Tree-Checks: true > > No-Try: true > > Bug: webrtc:6597 > > Reviewed-on: https://webrtc-review.googlesource.com/20740 > > Reviewed-by: Lu Liu <lliuu@webrtc.org> > > Commit-Queue: Lu Liu <lliuu@webrtc.org> > > Cr-Commit-Position: refs/heads/master@{#20571} > > Bug: webrtc:6597 > Change-Id: Icfb5ded46ce76b674bae67bfa02054b4ec52bb0f > Reviewed-on: https://webrtc-review.googlesource.com/20800 > Commit-Queue: Edward Lemur <ehmaldonado@webrtc.org> > Reviewed-by: Edward Lemur <ehmaldonado@webrtc.org> > Cr-Commit-Position: refs/heads/master@{#20577} TBR=phoglund@webrtc.org,ehmaldonado@webrtc.org,mbonadei@webrtc.org,sakal@webrtc.org,lliuu@webrtc.org Change-Id: Id3713c1885318741711987ae642a269a9ca5bb85 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: webrtc:6597 Reviewed-on: https://webrtc-review.googlesource.com/18441 Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org> Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org> Cr-Commit-Position: refs/heads/master@{#20588}
2017-11-07 15:36:33 +00:00
rtc_android_library("audio_device_java") {
sources = [
Reland of Fixing package-boundary violation with srjar_deps (patchset #1 id:1 of https://codereview.webrtc.org/2617533005/ ) Reason for revert: Skipping the build of the target "//webrtc/modules/audio_device:audio_device_java" when building webrtc with chromium. This was causing a failure because in that case it is not possible to refer to the script used by the template "android_shared_srcjar" with an absolute path (which seems to be necessary since the script attribute of action is relative to the invocation target and not to the template declaration). Original issue's description: > Revert of Fixing package-boundary violation with srjar_deps (patchset #5 id:80001 of https://codereview.webrtc.org/2610823002/ ) > > Reason for revert: > This CL is breaking a chromium.webrtc.fyi: https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Builder/builds/226 > > I am trying to reproduce the issue on my local machine and I will try to re-land the CL later. > > Original issue's description: > > Fixing package-boundary violation with srjar_deps > > > > Without the usage of the srcjar_deps attribute we were not able to > > include .java files from other packages without violating the package > > boundary contraint. > > > > As an example, in this CL the target "libjingle_peerconnection_java" was > > directly including .java files from another packages in its "java_files" > > attribute. > > > > Using srcjar_deps we are able to declare the dependency of the target > > avoiding to create hidden dependencies in the codebase. > > > > This is not fixing the webrtc:6356 bug directly but it is a first step to > > include ThreadUtils classes in libjingle_peerconnection_client_java.jar > > again. > > > > It seems also to be related to the chromium:648244 bug. This can be solved > > if we can find a way to perform srcjar generation in the android_library > > target without changing the semantic of the target. > > > > BUG=webrtc:6356 > > > > Review-Url: https://codereview.webrtc.org/2610823002 > > Cr-Commit-Position: refs/heads/master@{#15914} > > Committed: https://chromium.googlesource.com/external/webrtc/+/10a76592a78762187bfaf3547b7e9986454062ab > > TBR=kjellander@webrtc.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=webrtc:6356 > > Review-Url: https://codereview.webrtc.org/2617533005 > Cr-Commit-Position: refs/heads/master@{#15915} > Committed: https://chromium.googlesource.com/external/webrtc/+/eb731ed09ebfea1b26d1b7bc1f2678f7bbc012ee TBR=kjellander@webrtc.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=webrtc:6356 Review-Url: https://codereview.webrtc.org/2612953004 Cr-Commit-Position: refs/heads/master@{#15958}
2017-01-09 02:37:21 -08:00
"android/java/src/org/webrtc/voiceengine/BuildInfo.java",
"android/java/src/org/webrtc/voiceengine/WebRtcAudioEffects.java",
"android/java/src/org/webrtc/voiceengine/WebRtcAudioManager.java",
"android/java/src/org/webrtc/voiceengine/WebRtcAudioRecord.java",
"android/java/src/org/webrtc/voiceengine/WebRtcAudioTrack.java",
"android/java/src/org/webrtc/voiceengine/WebRtcAudioUtils.java",
]
Reland of Creating libwebrtc bundle jar (patchset #1 id:1 of https://codereview.webrtc.org/2640023010/ ) Reason for revert: It seems that we cannot skip the generation of "//webrtc/base/base_java" in chromium without some refactoring because it is included as a dependency in some places. Original issue's description: > Revert of Creating libwebrtc bundle jar (patchset #4 id:60001 of https://codereview.webrtc.org/2646443002/ ) > > Reason for revert: > This breaks some chromium.webrtc.fyi buildbots with the following error: > > ERROR Unresolved dependencies. > //third_party/webrtc/base:base(//build/toolchain/android:android_arm) > needs //third_party/webrtc/base:base_java(//build/toolchain/android:android_arm) > > > Original issue's description: > > Creating libwebrtc bundle jar > > > > Creates a JAR which includes: > > - //webrtc/base:base_java > > - //webrtc/modules/audio_device:audio_device_java > > - //webrtc/sdk/android:libjingle_peerconnection_java > > - //webrtc/sdk/android:libjingle_peerconnection_metrics_default_java > > > > The libwebrtc.jar file will be generated at '<output_dir>/lib.java/webrtc/sdk/android/libwebrtc.jar'. > > > > BUG=webrtc:6356 > > > > Review-Url: https://codereview.webrtc.org/2646443002 > > Cr-Commit-Position: refs/heads/master@{#16189} > > Committed: https://chromium.googlesource.com/external/webrtc/+/a62a82b7e7da5a1bbbf8b5614ef19334cc1603ce > > TBR=kjellander@webrtc.org,sakal@webrtc.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=webrtc:6356 > > Review-Url: https://codereview.webrtc.org/2640023010 > Cr-Commit-Position: refs/heads/master@{#16190} > Committed: https://chromium.googlesource.com/external/webrtc/+/3c9151b9532b372a35f0b81cc7c6b34d820506e1 TBR=kjellander@webrtc.org,sakal@webrtc.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=webrtc:6356 Review-Url: https://codereview.webrtc.org/2646093004 Cr-Commit-Position: refs/heads/master@{#16203}
2017-01-23 01:25:53 -08:00
deps = [
"../../rtc_base:base_java",
"//third_party/android_deps:com_android_support_support_annotations_java",
Reland of Creating libwebrtc bundle jar (patchset #1 id:1 of https://codereview.webrtc.org/2640023010/ ) Reason for revert: It seems that we cannot skip the generation of "//webrtc/base/base_java" in chromium without some refactoring because it is included as a dependency in some places. Original issue's description: > Revert of Creating libwebrtc bundle jar (patchset #4 id:60001 of https://codereview.webrtc.org/2646443002/ ) > > Reason for revert: > This breaks some chromium.webrtc.fyi buildbots with the following error: > > ERROR Unresolved dependencies. > //third_party/webrtc/base:base(//build/toolchain/android:android_arm) > needs //third_party/webrtc/base:base_java(//build/toolchain/android:android_arm) > > > Original issue's description: > > Creating libwebrtc bundle jar > > > > Creates a JAR which includes: > > - //webrtc/base:base_java > > - //webrtc/modules/audio_device:audio_device_java > > - //webrtc/sdk/android:libjingle_peerconnection_java > > - //webrtc/sdk/android:libjingle_peerconnection_metrics_default_java > > > > The libwebrtc.jar file will be generated at '<output_dir>/lib.java/webrtc/sdk/android/libwebrtc.jar'. > > > > BUG=webrtc:6356 > > > > Review-Url: https://codereview.webrtc.org/2646443002 > > Cr-Commit-Position: refs/heads/master@{#16189} > > Committed: https://chromium.googlesource.com/external/webrtc/+/a62a82b7e7da5a1bbbf8b5614ef19334cc1603ce > > TBR=kjellander@webrtc.org,sakal@webrtc.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=webrtc:6356 > > Review-Url: https://codereview.webrtc.org/2640023010 > Cr-Commit-Position: refs/heads/master@{#16190} > Committed: https://chromium.googlesource.com/external/webrtc/+/3c9151b9532b372a35f0b81cc7c6b34d820506e1 TBR=kjellander@webrtc.org,sakal@webrtc.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=webrtc:6356 Review-Url: https://codereview.webrtc.org/2646093004 Cr-Commit-Position: refs/heads/master@{#16203}
2017-01-23 01:25:53 -08:00
]
Reland of Fixing package-boundary violation with srjar_deps (patchset #1 id:1 of https://codereview.webrtc.org/2617533005/ ) Reason for revert: Skipping the build of the target "//webrtc/modules/audio_device:audio_device_java" when building webrtc with chromium. This was causing a failure because in that case it is not possible to refer to the script used by the template "android_shared_srcjar" with an absolute path (which seems to be necessary since the script attribute of action is relative to the invocation target and not to the template declaration). Original issue's description: > Revert of Fixing package-boundary violation with srjar_deps (patchset #5 id:80001 of https://codereview.webrtc.org/2610823002/ ) > > Reason for revert: > This CL is breaking a chromium.webrtc.fyi: https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Builder/builds/226 > > I am trying to reproduce the issue on my local machine and I will try to re-land the CL later. > > Original issue's description: > > Fixing package-boundary violation with srjar_deps > > > > Without the usage of the srcjar_deps attribute we were not able to > > include .java files from other packages without violating the package > > boundary contraint. > > > > As an example, in this CL the target "libjingle_peerconnection_java" was > > directly including .java files from another packages in its "java_files" > > attribute. > > > > Using srcjar_deps we are able to declare the dependency of the target > > avoiding to create hidden dependencies in the codebase. > > > > This is not fixing the webrtc:6356 bug directly but it is a first step to > > include ThreadUtils classes in libjingle_peerconnection_client_java.jar > > again. > > > > It seems also to be related to the chromium:648244 bug. This can be solved > > if we can find a way to perform srcjar generation in the android_library > > target without changing the semantic of the target. > > > > BUG=webrtc:6356 > > > > Review-Url: https://codereview.webrtc.org/2610823002 > > Cr-Commit-Position: refs/heads/master@{#15914} > > Committed: https://chromium.googlesource.com/external/webrtc/+/10a76592a78762187bfaf3547b7e9986454062ab > > TBR=kjellander@webrtc.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=webrtc:6356 > > Review-Url: https://codereview.webrtc.org/2617533005 > Cr-Commit-Position: refs/heads/master@{#15915} > Committed: https://chromium.googlesource.com/external/webrtc/+/eb731ed09ebfea1b26d1b7bc1f2678f7bbc012ee TBR=kjellander@webrtc.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=webrtc:6356 Review-Url: https://codereview.webrtc.org/2612953004 Cr-Commit-Position: refs/heads/master@{#15958}
2017-01-09 02:37:21 -08:00
}
}