webrtc/rtc_base/synchronization
Mirko Bonadei 86d053c2db 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}
2019-10-17 21:17:18 +00:00
..
BUILD.gn Use source_sets in component builds and static_library in release builds. 2019-10-17 21:17:18 +00:00
rw_lock_posix.cc [Cleanup] Add missing #include. Remove useless ones. 2018-10-23 11:32:56 +00:00
rw_lock_posix.h Delete root header file typedef.h. 2018-07-25 14:59:26 +00:00
rw_lock_win.cc Adding WinUWP compilation support to WebRTC. 2018-11-28 08:32:30 +00:00
rw_lock_win.h Format almost everything. 2019-07-08 13:45:15 +00:00
rw_lock_wrapper.cc Delete unused includes of assert.h 2018-10-04 14:01:44 +00:00
rw_lock_wrapper.h
sequence_checker.cc Merge of ThreadChecker and SequencedTaskChecker. 2019-03-29 18:53:27 +00:00
sequence_checker.h Add missing RTC_EXPORT for the component build. 2019-10-15 09:07:44 +00:00
sequence_checker_unittest.cc Merge SendTask implementation for SingleThreadedTaskQueueForTesting and TaskQueueForTest 2019-10-15 09:17:36 +00:00
yield_policy.cc Add pthread thread-local storage support for ScopedYieldPolicy 2019-07-19 14:33:53 +00:00
yield_policy.h Deleting copy constructors for Scoped* classes. 2019-03-25 09:05:29 +00:00
yield_policy_unittest.cc Format almost everything. 2019-07-08 13:45:15 +00:00