[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] libcacard: actually use symbols file
From: |
Alon Levy |
Subject: |
Re: [Qemu-devel] [PATCH] libcacard: actually use symbols file |
Date: |
Sun, 27 Apr 2014 17:53:00 +0300 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 |
On 04/27/2014 05:37 PM, Michael Tokarev wrote:
> libtool has an argument for .syms file, which is -export-symbols.
> There's no argument `-export-syms', and it looks like at least on
> linux, -export-syms is just ignored. Use the correct argument,
> -export-symbols, to actually get the right export list.
>
> But it turns out that vscclient binary, which also uses qemu
> privitives for sockets, mutexes and some other stuff, but only
> linked with libcacard, does not link after hiding extra symbols
> previously exported by libcacard. So while at it, link it with
> libqemuutil.a and libqemustub.a. This makes the binary as twice
> as large, but allows to have cleaner export table for libcacard.so.
>
Reviewed-by: Alon Levy <address@hidden>
Any chance to get this through the trivial patch queue?
> Signed-off-by: Michael Tokarev <address@hidden>
> ---
> libcacard/Makefile | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/libcacard/Makefile b/libcacard/Makefile
> index 6b06448..bb00c94 100644
> --- a/libcacard/Makefile
> +++ b/libcacard/Makefile
> @@ -17,14 +17,14 @@ $(libcacard-obj-y): | $(libcacard-lobj-y)
>
> all: libcacard.la libcacard.pc
>
> -vscclient$(EXESUF): libcacard/vscclient.o libcacard.la
> +vscclient$(EXESUF): libcacard/vscclient.o libcacard.la libqemuutil.a
> libqemustub.a
> $(call LINK,$^)
>
> #########################################################################
> # Rules for building libcacard standalone library
>
> libcacard.la: LDFLAGS += -rpath $(libdir) -no-undefined \
> - -export-syms $(SRC_PATH)/libcacard/libcacard.syms
> + -export-symbols $(SRC_PATH)/libcacard/libcacard.syms
> libcacard.la: LIBS = $(libcacard_libs)
> libcacard.la: $(libcacard-lobj-y)
> $(call LINK,$^)
>