diff --git a/examples/BUILD.gn b/examples/BUILD.gn index c5bc83f092..01d73a48dc 100644 --- a/examples/BUILD.gn +++ b/examples/BUILD.gn @@ -49,7 +49,7 @@ group("examples") { } if (is_android) { - android_apk("AppRTCMobile") { + rtc_android_apk("AppRTCMobile") { testonly = true apk_name = "AppRTCMobile" android_manifest = "androidapp/AndroidManifest.xml" @@ -62,12 +62,9 @@ if (is_android) { ] shared_libraries = [ "../sdk/android:libjingle_peerconnection_so" ] - - # TODO(sakal): Fix build hooks crbug.com/webrtc/8148 - no_build_hooks = true } - android_library("AppRTCMobile_javalib") { + rtc_android_library("AppRTCMobile_javalib") { testonly = true android_manifest = "androidapp/AndroidManifest.xml" @@ -103,9 +100,6 @@ if (is_android) { "../sdk/android:libjingle_peerconnection_metrics_default_java", "androidapp/third_party/autobanh:autobanh_java", ] - - # TODO(sakal): Fix build hooks crbug.com/webrtc/8148 - no_build_hooks = true } android_resources("AppRTCMobile_resources") { @@ -114,7 +108,7 @@ if (is_android) { custom_package = "org.appspot.apprtc" } - instrumentation_test_apk("AppRTCMobileTest") { + rtc_instrumentation_test_apk("AppRTCMobileTest") { apk_name = "AppRTCMobileTest" android_manifest = "androidtests/AndroidManifest.xml" @@ -128,12 +122,9 @@ if (is_android) { "//third_party/android_support_test_runner:runner_java", "//third_party/junit", ] - - # TODO(sakal): Fix build hooks crbug.com/webrtc/8148 - no_build_hooks = true } - instrumentation_test_apk("AppRTCMobileTestStubbedVideoIO") { + rtc_instrumentation_test_apk("AppRTCMobileTestStubbedVideoIO") { apk_name = "AppRTCMobileTestStubbedVideoIO" android_manifest = "androidtests/AndroidManifest.xml" @@ -154,9 +145,6 @@ if (is_android) { data = [ "../resources/reference_video_640x360_30fps.y4m", ] - - # TODO(sakal): Fix build hooks crbug.com/webrtc/8148 - no_build_hooks = true } } @@ -676,7 +664,7 @@ if (is_win || is_android) { } if (is_android) { - android_library("webrtc_unity_java") { + rtc_android_library("webrtc_unity_java") { java_files = [ "unityplugin/java/src/org/webrtc/UnityUtility.java" ] deps = [ "../rtc_base:base_java", diff --git a/modules/audio_device/BUILD.gn b/modules/audio_device/BUILD.gn index e50041fe15..8f6f7469a0 100644 --- a/modules/audio_device/BUILD.gn +++ b/modules/audio_device/BUILD.gn @@ -368,7 +368,7 @@ if (rtc_include_tests) { } if (!build_with_chromium && is_android) { - android_library("audio_device_java") { + rtc_android_library("audio_device_java") { java_files = [ "android/java/src/org/webrtc/voiceengine/BuildInfo.java", "android/java/src/org/webrtc/voiceengine/WebRtcAudioEffects.java", @@ -380,8 +380,5 @@ if (!build_with_chromium && is_android) { deps = [ "../../rtc_base:base_java", ] - - # TODO(sakal): Fix build hooks crbug.com/webrtc/8148 - no_build_hooks = true } } diff --git a/rtc_base/BUILD.gn b/rtc_base/BUILD.gn index 400efb633d..bc9b9296b5 100644 --- a/rtc_base/BUILD.gn +++ b/rtc_base/BUILD.gn @@ -1089,15 +1089,12 @@ if (rtc_include_tests) { } if (is_android) { - android_library("base_java") { + rtc_android_library("base_java") { java_files = [ "java/src/org/webrtc/ContextUtils.java", "java/src/org/webrtc/Logging.java", "java/src/org/webrtc/Size.java", "java/src/org/webrtc/ThreadUtils.java", ] - - # TODO(sakal): Fix build hooks crbug.com/webrtc/8148 - no_build_hooks = true } } diff --git a/sdk/android/BUILD.gn b/sdk/android/BUILD.gn index f30c7aef9d..c368d1257d 100644 --- a/sdk/android/BUILD.gn +++ b/sdk/android/BUILD.gn @@ -385,7 +385,7 @@ dist_jar("libwebrtc") { ] } -android_library("libjingle_peerconnection_java") { +rtc_android_library("libjingle_peerconnection_java") { java_files = [ "api/org/webrtc/AudioProcessingFactory.java", "api/org/webrtc/AudioSource.java", @@ -488,24 +488,18 @@ android_library("libjingle_peerconnection_java") { "../../modules/audio_device:audio_device_java", "../../rtc_base:base_java", ] - - # TODO(sakal): Fix build hooks crbug.com/webrtc/8148 - no_build_hooks = true } -android_library("libjingle_peerconnection_metrics_default_java") { +rtc_android_library("libjingle_peerconnection_metrics_default_java") { java_files = [ "api/org/webrtc/Metrics.java" ] deps = [ "../../rtc_base:base_java", ] - - # TODO(sakal): Fix build hooks crbug.com/webrtc/8148 - no_build_hooks = true } if (rtc_include_tests) { - instrumentation_test_apk("libjingle_peerconnection_android_unittest") { + rtc_instrumentation_test_apk("libjingle_peerconnection_android_unittest") { apk_name = "libjingle_peerconnection_android_unittest" android_manifest = "instrumentationtests/AndroidManifest.xml" @@ -547,8 +541,5 @@ if (rtc_include_tests) { ] shared_libraries = [ "../../sdk/android:libjingle_peerconnection_so" ] - - # TODO(sakal): Fix build hooks crbug.com/webrtc/8148 - no_build_hooks = true } } diff --git a/test/BUILD.gn b/test/BUILD.gn index 78a734d98a..7277e6bab3 100644 --- a/test/BUILD.gn +++ b/test/BUILD.gn @@ -710,7 +710,7 @@ rtc_source_set("audio_codec_mocks") { } if (!build_with_chromium && is_android) { - android_library("native_test_java") { + rtc_android_library("native_test_java") { testonly = true java_files = [ "android/org/webrtc/native_test/RTCNativeUnitTest.java", @@ -720,8 +720,5 @@ if (!build_with_chromium && is_android) { "../rtc_base:base_java", "//testing/android/native_test:native_test_java", ] - - # TODO(sakal): Fix build hooks crbug.com/webrtc/8148 - no_build_hooks = true } } diff --git a/webrtc.gni b/webrtc.gni index a4b7c1881f..3b504e8f89 100644 --- a/webrtc.gni +++ b/webrtc.gni @@ -398,3 +398,62 @@ if (is_ios) { } } } + +if (is_android) { + template("rtc_android_library") { + android_library(target_name) { + forward_variables_from(invoker, + "*", + [ + "configs", + "public_configs", + "suppressed_configs", + "visibility", + ]) + + # Treat warnings as errors. + javac_args = [ "-Werror" ] + + # TODO(sakal): Fix build hooks crbug.com/webrtc/8168 + no_build_hooks = true + } + } + + template("rtc_android_apk") { + android_apk(target_name) { + forward_variables_from(invoker, + "*", + [ + "configs", + "public_configs", + "suppressed_configs", + "visibility", + ]) + + # Treat warnings as errors. + javac_args = [ "-Werror" ] + + # TODO(sakal): Fix build hooks crbug.com/webrtc/8168 + no_build_hooks = true + } + } + + template("rtc_instrumentation_test_apk") { + instrumentation_test_apk(target_name) { + forward_variables_from(invoker, + "*", + [ + "configs", + "public_configs", + "suppressed_configs", + "visibility", + ]) + + # Treat warnings as errors. + javac_args = [ "-Werror" ] + + # TODO(sakal): Fix build hooks crbug.com/webrtc/8168 + no_build_hooks = true + } + } +}