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: 10a76592a7
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}
This commit is contained in:
parent
10a76592a7
commit
eb731ed09e
@ -1,68 +0,0 @@
|
||||
#!/usr/bin/env python
|
||||
#
|
||||
# Copyright (c) 2017 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.
|
||||
|
||||
# TODO(mbonadei): move this script into chromium (build/android/gyp)
|
||||
# when approved
|
||||
|
||||
import optparse
|
||||
import os
|
||||
import re
|
||||
import sys
|
||||
import zipfile
|
||||
|
||||
sys.path.insert(0, os.path.abspath(os.path.join(os.pardir, os.pardir, 'build',
|
||||
'android', 'gyp', 'util')))
|
||||
import build_utils
|
||||
|
||||
|
||||
def PackageToPath(src_file):
|
||||
"""Returns the path of a .java file according to the package declaration.
|
||||
|
||||
Example:
|
||||
src_file='/home/foo/bar/org/android/TestClass.java'
|
||||
With the following package definition:
|
||||
package org.android;
|
||||
|
||||
It will return 'org/android'.
|
||||
|
||||
Args:
|
||||
A string with the path of the .java source file to analyze.
|
||||
|
||||
Returns:
|
||||
A string with the translation of the package definition into a path.
|
||||
"""
|
||||
with open(src_file) as f:
|
||||
file_src = f.read()
|
||||
package = re.search('package (.*);', file_src).group(1)
|
||||
zip_folder = package.replace('.', os.path.sep)
|
||||
file_name = os.path.basename(src_file)
|
||||
return os.path.join(zip_folder, file_name)
|
||||
|
||||
|
||||
def DoMain(argv):
|
||||
usage = 'usage: %prog [options] input_file(s)...'
|
||||
parser = optparse.OptionParser(usage=usage)
|
||||
parser.add_option('-s', '--srcjar',
|
||||
help='The path where the .srcjar file will be generated')
|
||||
|
||||
options, args = parser.parse_args(argv)
|
||||
|
||||
if not args:
|
||||
parser.error('Need to specify at least one input source file (.java)')
|
||||
input_paths = args
|
||||
|
||||
with zipfile.ZipFile(options.srcjar, 'w', zipfile.ZIP_STORED) as srcjar:
|
||||
for src_path in input_paths:
|
||||
zip_path = PackageToPath(src_path)
|
||||
build_utils.AddToZipHermetic(srcjar, zip_path, src_path)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
DoMain(sys.argv[1:])
|
||||
@ -324,32 +324,3 @@ template("rtc_shared_library") {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# TODO(mbonadei): Merge this in android_library or create an
|
||||
# rtc_android_library. Waiting for hints from chromium:648244.
|
||||
if (is_android) {
|
||||
template("android_shared_srcjar") {
|
||||
action(target_name) {
|
||||
check_includes = false
|
||||
set_sources_assignment_filter([])
|
||||
assert(defined(invoker.sources))
|
||||
|
||||
forward_variables_from(invoker,
|
||||
[
|
||||
"sources",
|
||||
"testonly",
|
||||
"visibility",
|
||||
])
|
||||
script = "//webrtc/build/generate_srcjar.py"
|
||||
_srcjar_path = "${target_gen_dir}/${target_name}.srcjar"
|
||||
_rebased_srcjar_path = rebase_path(_srcjar_path, root_build_dir)
|
||||
_rebased_sources = rebase_path(invoker.sources, root_build_dir)
|
||||
|
||||
args = [ "--srcjar=$_rebased_srcjar_path" ] + _rebased_sources
|
||||
|
||||
outputs = [
|
||||
_srcjar_path,
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -8,11 +8,6 @@
|
||||
|
||||
import("../../build/webrtc.gni")
|
||||
|
||||
if (is_android) {
|
||||
import("//build/config/android/config.gni")
|
||||
import("//build/config/android/rules.gni")
|
||||
}
|
||||
|
||||
config("audio_device_config") {
|
||||
include_dirs = [
|
||||
"../include",
|
||||
@ -301,16 +296,3 @@ if (rtc_include_tests && !is_ios) {
|
||||
public_configs = [ ":audio_device_config" ]
|
||||
}
|
||||
}
|
||||
|
||||
if (is_android) {
|
||||
android_shared_srcjar("audio_device_java") {
|
||||
sources = [
|
||||
"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",
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
@ -112,6 +112,12 @@ rtc_shared_library("libjingle_peerconnection_so") {
|
||||
|
||||
android_library("libjingle_peerconnection_java") {
|
||||
java_files = [
|
||||
"//webrtc/modules/audio_device/android/java/src/org/webrtc/voiceengine/BuildInfo.java",
|
||||
"//webrtc/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioEffects.java",
|
||||
"//webrtc/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioManager.java",
|
||||
"//webrtc/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioRecord.java",
|
||||
"//webrtc/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioTrack.java",
|
||||
"//webrtc/modules/audio_device/android/java/src/org/webrtc/voiceengine/WebRtcAudioUtils.java",
|
||||
"api/org/webrtc/AudioSource.java",
|
||||
"api/org/webrtc/AudioTrack.java",
|
||||
"api/org/webrtc/CallSessionFileRotatingLogSink.java",
|
||||
@ -172,8 +178,6 @@ android_library("libjingle_peerconnection_java") {
|
||||
deps = [
|
||||
"//webrtc/base:base_java",
|
||||
]
|
||||
|
||||
srcjar_deps = [ "//webrtc/modules/audio_device:audio_device_java" ]
|
||||
}
|
||||
|
||||
android_library("libjingle_peerconnection_metrics_default_java") {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user