379 lines
11 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_config") {
include_dirs = [
"../include",
"include",
"dummy", # Contains dummy audio device implementations.
]
}
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-bool-conversion",
"-Wno-delete-non-virtual-dtor",
"-Wno-logical-op-parentheses",
"-Wno-microsoft-extra-qualification",
"-Wno-microsoft-goto",
"-Wno-missing-braces",
"-Wno-parentheses-equality",
"-Wno-reorder",
"-Wno-shift-overflow",
"-Wno-tautological-compare",
# See https://bugs.chromium.org/p/webrtc/issues/detail?id=6265
# for -Wno-thread-safety-analysis
"-Wno-thread-safety-analysis",
"-Wno-unused-private-field",
]
}
}
rtc_source_set("audio_device") {
public_deps = [
":audio_device_generic",
]
if (rtc_include_internal_audio_device && is_ios) {
public_deps += [ ":audio_device_ios_objc" ]
}
}
if (rtc_include_internal_audio_device && is_ios) {
rtc_source_set("audio_device_ios_objc") {
visibility = [ ":audio_device" ]
sources = [
"ios/audio_device_ios.h",
"ios/audio_device_ios.mm",
"ios/audio_device_not_implemented_ios.mm",
"ios/audio_session_observer.h",
"ios/objc/RTCAudioSessionDelegateAdapter.h",
"ios/objc/RTCAudioSessionDelegateAdapter.mm",
"ios/voice_processing_audio_unit.h",
"ios/voice_processing_audio_unit.mm",
]
libs = [
"AudioToolbox.framework",
"AVFoundation.framework",
"Foundation.framework",
"UIKit.framework",
]
deps = [
":audio_device_generic",
"../../api:array_view",
"../../rtc_base:gtest_prod",
"../../rtc_base:rtc_base",
"../../sdk:audio_objc",
"../../sdk:common_objc",
"../../system_wrappers:metrics_api",
]
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" ]
}
}
}
rtc_source_set("audio_device_generic") {
visibility = [
":audio_device",
":audio_device_ios_objc",
]
public_configs = [ ":audio_device_config" ]
deps = [
Reland of Creating webrtc/modules:module_api (patchset #1 id:1 of https://codereview.webrtc.org/2839963005/ ) Reason for revert: Fixing the Gn error and try to reland. Original issue's description: > Revert of Creating webrtc/modules:module_api (patchset #5 id:80001 of https://codereview.webrtc.org/2838873002/ ) > > Reason for revert: > Causes build problem: https://build.chromium.org/p/client.webrtc/builders/iOS64%20Sim%20Debug%20%28iOS%209.0%29/builds/1630/steps/generate%20build%20files%20%28mb%29/logs/stdio > > Original issue's description: > > Creating webrtc/modules:module_api > > > > This target keeps track of .h the files under webrtc/modules/include/ > > that are not part of any target. > > If a .h file is not part of a target the 'gn check' utility is not > > able to spot if a target is missing a dependency because even if > > it parses '#include' directives it is not able to find a target that > > contains these headers. > > > > BUG=webrtc:7513 > > NOTRY=True > > > > Review-Url: https://codereview.webrtc.org/2838873002 > > Cr-Commit-Position: refs/heads/master@{#17880} > > Committed: https://chromium.googlesource.com/external/webrtc/+/5a1a092ed09ca92719eeb293275f64c0cdcc0e51 > > TBR=kjellander@webrtc.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=webrtc:7513 > > Review-Url: https://codereview.webrtc.org/2839963005 > Cr-Commit-Position: refs/heads/master@{#17881} > Committed: https://chromium.googlesource.com/external/webrtc/+/bb08c3e29656fafe8a2d5d16ec4a62db49689f8a TBR=kjellander@webrtc.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true TBR=kjellander@webrtc.org BUG=webrtc:7513 Review-Url: https://codereview.webrtc.org/2843913002 Cr-Commit-Position: refs/heads/master@{#17884}
2017-04-26 03:38:35 -07:00
"..:module_api",
"../..:webrtc_common",
"../../api:array_view",
"../../common_audio",
"../../rtc_base:rtc_base_approved",
"../../rtc_base:rtc_task_queue",
"../../system_wrappers",
"../utility",
]
sources = [
"audio_device_buffer.cc",
"audio_device_buffer.h",
"audio_device_config.h",
"audio_device_generic.cc",
"audio_device_generic.h",
"dummy/audio_device_dummy.cc",
"dummy/audio_device_dummy.h",
"dummy/file_audio_device.cc",
"dummy/file_audio_device.h",
"fine_audio_buffer.cc",
"fine_audio_buffer.h",
"include/audio_device.h",
"include/audio_device_defines.h",
]
include_dirs = []
if (is_linux) {
include_dirs += [ "linux" ]
}
if (is_ios) {
include_dirs += [ "ios" ]
}
if (is_mac) {
include_dirs += [ "mac" ]
}
if (is_win) {
include_dirs += [ "win" ]
}
if (is_android) {
include_dirs += [ "android" ]
}
defines = []
cflags = []
if (rtc_audio_device_plays_sinus_tone) {
defines += [ "AUDIO_DEVICE_PLAYS_SINUS_TONE" ]
}
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_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_use_dummy_audio_file_devices) {
defines += [ "WEBRTC_DUMMY_FILE_DEVICES" ]
} else {
if (is_linux) {
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 += [ "LINUX_ALSA" ]
libs = [ "dl" ]
if (use_x11) {
libs += [ "X11" ]
}
if (rtc_include_pulse_audio) {
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",
]
defines += [ "LINUX_PULSE" ]
}
}
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 += [ ":mac_portaudio" ]
libs = [
# Needed for CoreGraphics:
"ApplicationServices.framework",
"AudioToolbox.framework",
"CoreAudio.framework",
# Needed for CGEventSourceKeyState in audio_device_mac.cc:
"CoreGraphics.framework",
]
}
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",
]
}
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 (!build_with_chromium && is_clang) {
# Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
}
}
rtc_source_set("mac_portaudio") {
visibility = [ ":*" ] # Only targets in this file can depend on this.
sources = [
"mac/portaudio/pa_memorybarrier.h",
"mac/portaudio/pa_ringbuffer.c",
"mac/portaudio/pa_ringbuffer.h",
]
}
Added a public GN config to compile mock headers. Due to bugs.webrtc.org/216 code that includes //webrtc/modules/audio_device:mock_audio_device fails to compile on Windows unless a warning flag is switched off. It seems that googlemock changes types of overridden virtual method parameters from 'const int' to 'int', which causes the VS compiler to report an error. The problem was not solved by suppressing the flag wd4373 in //webrtc/modules/audio_device:mock_audio_device, because targets that include the headers are compiled separately. This CL adds the flag suppression to the GN variable |all_dependent_configs|. Then GN will apply the configuration to all reachable dependencies. This is needed to reduce clutter and extra conditions in dependency build targets. The reason for |all_dependent_configs| before |public_configs| is for a situation in which a targets headers include the headers from this target. Then dependencies of dependencies will have a copy of this targets' code after preprocessing, and compilation will fail. This will happen if we e.g. change mock_voice_engine to return a MockAudioTransport or MockAudioDevice. This change has been tested by compiling a dependent CL (https://codereview.webrtc.org/2454373002/) which uses these mocks on Windows without suppressing the flag. There is no GYP change, because test code has been removed from GYP. NOTRY=True BUG=webrtc:216 Review-Url: https://codereview.webrtc.org/2492713003 Cr-Commit-Position: refs/heads/master@{#15024}
2016-11-10 08:16:25 -08:00
config("mock_audio_device_config") {
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",
]
}
}
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") {
testonly = true
sources = [
"include/mock_audio_device.h",
"include/mock_audio_transport.h",
]
deps = [
":audio_device",
"../../test:test_support",
]
all_dependent_configs = [ ":mock_audio_device_config" ]
}
if (rtc_include_tests) {
# TODO(kthelgason): Reenable these tests on simulator.
# See bugs.webrtc.org/7812
if (is_ios && !use_ios_simulator) {
rtc_source_set("audio_device_ios_objc_unittests") {
testonly = true
visibility = [ ":*" ]
sources = [
"ios/audio_device_unittest_ios.mm",
]
deps = [
":audio_device",
":mock_audio_device",
"../../rtc_base:rtc_base_approved",
"../../sdk:audio_objc",
"../../system_wrappers",
"../../test:test_support",
"//testing/gmock",
"//third_party/ocmock",
]
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" ]
}
}
}
rtc_source_set("audio_device_unittests") {
testonly = true
sources = [
"fine_audio_buffer_unittest.cc",
]
deps = [
":audio_device",
":mock_audio_device",
"../../api:array_view",
"../../api:optional",
"../../rtc_base:rtc_base_approved",
"../../system_wrappers",
"../../test:test_support",
"../utility:utility",
"//testing/gmock",
]
if (is_linux || is_mac || is_win) {
sources += [ "audio_device_unittest.cc" ]
}
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 (!build_with_chromium && is_clang) {
# Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
}
}
}
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") {
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
java_files = [
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",
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
}
}