aboutsummaryrefslogtreecommitdiff
path: root/logging
diff options
context:
space:
mode:
authorMirko Bonadei <mbonadei@webrtc.org>2019-10-17 21:32:04 +0200
committerCommit Bot <commit-bot@chromium.org>2019-10-17 21:17:18 +0000
commit86d053c2db6ed25e4854c307d563999298dda2e5 (patch)
tree170909a876f1443e0cec6defac0ac5ea5f4cbc56 /logging
parente8b962bd3c9775b2859f908004263dbc8840629a (diff)
downloadwebrtc-86d053c2db6ed25e4854c307d563999298dda2e5.tar.gz
Use source_sets in component builds and static_library in release builds.
Static libraries don't guarantee that an exported symbol gets linked into a shared library (and in order to support Chromium's component build mode, WebRTC needs to be linked as a shared library). Source sets always pass all the object files to the linker. On the flip side, source_sets link more object files in release builds and to avoid this, this CL introduces a the GN template "rtc_library" that expands to static_library during release builds and to source_set during component builds. See: https://gn.googlesource.com/gn/+/master/docs/reference.md#func_source_set Bug: webrtc:9419 Change-Id: I4667e820c2b3fcec417becbd2034acc13e4f04fe Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/157168 Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org> Reviewed-by: Nico Weber <thakis@chromium.org> Cr-Commit-Position: refs/heads/master@{#29525}
Diffstat (limited to 'logging')
-rw-r--r--logging/BUILD.gn28
1 files changed, 14 insertions, 14 deletions
diff --git a/logging/BUILD.gn b/logging/BUILD.gn
index 079cd3ac5a..eb52c73ec8 100644
--- a/logging/BUILD.gn
+++ b/logging/BUILD.gn
@@ -36,7 +36,7 @@ rtc_source_set("rtc_event_log_api") {
]
}
-rtc_source_set("rtc_stream_config") {
+rtc_library("rtc_stream_config") {
sources = [
"rtc_event_log/rtc_stream_config.cc",
"rtc_event_log/rtc_stream_config.h",
@@ -48,7 +48,7 @@ rtc_source_set("rtc_stream_config") {
]
}
-rtc_source_set("rtc_event_pacing") {
+rtc_library("rtc_event_pacing") {
sources = [
"rtc_event_log/events/rtc_event_alr_state.cc",
"rtc_event_log/events/rtc_event_alr_state.h",
@@ -61,7 +61,7 @@ rtc_source_set("rtc_event_pacing") {
]
}
-rtc_source_set("rtc_event_audio") {
+rtc_library("rtc_event_audio") {
sources = [
"rtc_event_log/events/rtc_event_audio_network_adaptation.cc",
"rtc_event_log/events/rtc_event_audio_network_adaptation.h",
@@ -83,7 +83,7 @@ rtc_source_set("rtc_event_audio") {
]
}
-rtc_source_set("rtc_event_bwe") {
+rtc_library("rtc_event_bwe") {
sources = [
"rtc_event_log/events/rtc_event_bwe_update_delay_based.cc",
"rtc_event_log/events/rtc_event_bwe_update_delay_based.h",
@@ -110,7 +110,7 @@ rtc_source_set("rtc_event_bwe") {
]
}
-rtc_source_set("rtc_event_generic_packet_events") {
+rtc_library("rtc_event_generic_packet_events") {
visibility = [ "*" ]
sources = [
"rtc_event_log/events/rtc_event_generic_ack_received.cc",
@@ -128,7 +128,7 @@ rtc_source_set("rtc_event_generic_packet_events") {
]
}
-rtc_source_set("rtc_event_rtp_rtcp") {
+rtc_library("rtc_event_rtp_rtcp") {
sources = [
"rtc_event_log/events/rtc_event_rtcp_packet_incoming.cc",
"rtc_event_log/events/rtc_event_rtcp_packet_incoming.h",
@@ -151,7 +151,7 @@ rtc_source_set("rtc_event_rtp_rtcp") {
]
}
-rtc_source_set("rtc_event_video") {
+rtc_library("rtc_event_video") {
sources = [
"rtc_event_log/events/rtc_event_video_receive_stream_config.cc",
"rtc_event_log/events/rtc_event_video_receive_stream_config.h",
@@ -170,7 +170,7 @@ rtc_source_set("rtc_event_video") {
# TODO(eladalon): Break down into (1) encoder and (2) decoder; we don't need
# the decoder code in the WebRTC library, only in unit tests and tools.
-rtc_static_library("rtc_event_log_impl_encoder") {
+rtc_library("rtc_event_log_impl_encoder") {
sources = [
"rtc_event_log/encoder/blob_encoding.cc",
"rtc_event_log/encoder/blob_encoding.h",
@@ -235,7 +235,7 @@ rtc_source_set("rtc_event_log_impl_output") {
}
if (rtc_enable_protobuf) {
- rtc_source_set("rtc_event_log_impl") {
+ rtc_library("rtc_event_log_impl") {
visibility = [ "../api/rtc_event_log:rtc_event_log_factory" ]
sources = [
"rtc_event_log/rtc_event_log_impl.cc",
@@ -258,7 +258,7 @@ if (rtc_enable_protobuf) {
}
}
-rtc_source_set("fake_rtc_event_log") {
+rtc_library("fake_rtc_event_log") {
testonly = true
sources = [
"rtc_event_log/fake_rtc_event_log.cc",
@@ -292,7 +292,7 @@ if (rtc_enable_protobuf) {
proto_out_dir = "logging/rtc_event_log"
}
- rtc_static_library("rtc_event_log_parser") {
+ rtc_library("rtc_event_log_parser") {
visibility = [ "*" ]
sources = [
"rtc_event_log/logged_events.cc",
@@ -335,7 +335,7 @@ if (rtc_enable_protobuf) {
}
if (rtc_include_tests) {
- rtc_source_set("rtc_event_log_tests") {
+ rtc_library("rtc_event_log_tests") {
testonly = true
assert(rtc_enable_protobuf)
defines = [ "ENABLE_RTC_EVENT_LOG" ]
@@ -412,7 +412,7 @@ if (rtc_enable_protobuf) {
}
}
-rtc_source_set("ice_log") {
+rtc_library("ice_log") {
sources = [
"rtc_event_log/events/rtc_event_dtls_transport_state.cc",
"rtc_event_log/events/rtc_event_dtls_transport_state.h",
@@ -436,7 +436,7 @@ rtc_source_set("ice_log") {
}
if (rtc_include_tests) {
- rtc_source_set("mocks") {
+ rtc_library("mocks") {
testonly = true
sources = [
"rtc_event_log/mock/mock_rtc_event_log.cc",