webrtc/rtc_base/third_party/sigslot
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
LICENSE
README.chromium
sigslot.cc
sigslot.h Format almost everything. 2019-07-08 13:45:15 +00:00

Name: C++ Signal/Slot Library
Short Name: sigslot
URL: http://sigslot.sourceforge.net/
Version: 0
Date: 2018-07-09
License: Custom license
License File: LICENSE
Security Critical: yes

Description:
C++ Signal/Slot Library

This file has been modified such that has_slots and signalx do not have to be
using the same threading requirements. E.g. it is possible to connect a
has_slots<single_threaded> and signal0<multi_threaded_local> or
has_slots<multi_threaded_local> and signal0<single_threaded>.
If has_slots is single threaded the user must ensure that it is not trying
to connect or disconnect to signalx concurrently or data race may occur.
If signalx is single threaded the user must ensure that disconnect, connect
or signal is not happening concurrently or data race may occur.