[Spice-devel] [PATCH spice-streaming-agent 6/8 v2] Export symbols in the binary to use by the plugins
Lukáš Hrázký
lhrazky at redhat.com
Tue Jan 15 14:39:06 UTC 2019
Hi,
I've just noticed I've somehow messed up my commits right before
sending the v2, disregard this one and 7/8 is two commits squashed
together it seems. I'll resend.
Cheers,
Lukas
On Mon, 2019-01-14 at 17:38 +0100, Lukáš Hrázký wrote:
> This commits adds the -export-dynamic linker flag to export dynamic
> symbols to be used by the streaming agent's plugins. It also adds the
> -fvisibility=hidden compiler flag to hide all symbols by default (along
> with -fvisibility-inline-hidden for C++ inline functions).
>
> Then it adds the visibility("default") attribute to the namespace
> containing the Error class, as that one needs to be exported and have
> its typeinfo defined for exception catching to work.
>
> Signed-off-by: Lukáš Hrázký <lhrazky at redhat.com>
> Acked-by: Frediano Ziglio <fziglio at redhat.com>
> ---
> include/spice-streaming-agent/error.hpp | 2 +-
> src/Makefile.am | 4 ++++
> 2 files changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/include/spice-streaming-agent/error.hpp b/include/spice-streaming-agent/error.hpp
> index 3202d78..c0d4755 100644
> --- a/include/spice-streaming-agent/error.hpp
> +++ b/include/spice-streaming-agent/error.hpp
> @@ -11,7 +11,7 @@
> #include <string>
>
>
> -namespace spice {
> +namespace spice __attribute__ ((visibility ("default"))) {
> namespace streaming_agent {
>
> class Error : public std::runtime_error
> diff --git a/src/Makefile.am b/src/Makefile.am
> index dc64c29..bae3f9d 100644
> --- a/src/Makefile.am
> +++ b/src/Makefile.am
> @@ -22,10 +22,13 @@ AM_CPPFLAGS = \
> $(NULL)
>
> AM_CFLAGS = \
> + -fvisibility=hidden \
> $(WARN_CFLAGS) \
> $(NULL)
>
> AM_CXXFLAGS = \
> + -fvisibility=hidden \
> + -fvisibility-inlines-hidden \
> $(WARN_CXXFLAGS) \
> $(NULL)
>
> @@ -38,6 +41,7 @@ libstreaming_utils_a_SOURCES = \
> $(NULL)
>
> spice_streaming_agent_LDFLAGS = \
> + -export-dynamic \
> $(RELRO_LDFLAGS) \
> $(NO_INDIRECT_LDFLAGS) \
> $(NULL)
More information about the Spice-devel
mailing list