diff --git a/webrtc/api/BUILD.gn b/webrtc/api/BUILD.gn index 69e0a85cf9..cae9e65d4e 100644 --- a/webrtc/api/BUILD.gn +++ b/webrtc/api/BUILD.gn @@ -220,12 +220,12 @@ if (is_android && !build_with_chromium) { } } - shared_library("libjingle_peerconnection_so") { + rtc_shared_library("libjingle_peerconnection_so") { sources = [ "android/jni/jni_onload.cc", ] - configs -= [ "//build/config/android:hide_native_jni_exports" ] + suppressed_configs += [ "//build/config/android:hide_native_jni_exports" ] deps = [ ":libjingle_peerconnection", diff --git a/webrtc/build/webrtc.gni b/webrtc/build/webrtc.gni index 5c188a05bf..71a4eda8be 100644 --- a/webrtc/build/webrtc.gni +++ b/webrtc/build/webrtc.gni @@ -215,6 +215,11 @@ set_defaults("rtc_static_library") { suppressed_configs = [] } +set_defaults("rtc_shared_library") { + configs = rtc_add_configs + suppressed_configs = [] +} + template("rtc_test") { test(target_name) { forward_variables_from(invoker, @@ -295,3 +300,22 @@ template("rtc_static_library") { } } } + +template("rtc_shared_library") { + shared_library(target_name) { + forward_variables_from(invoker, + "*", + [ + "configs", + "public_configs", + "suppressed_configs", + ]) + configs += invoker.configs + configs -= rtc_remove_configs + configs -= invoker.suppressed_configs + public_configs = [ rtc_common_inherited_config ] + if (defined(invoker.public_configs)) { + public_configs += invoker.public_configs + } + } +}