On Mon, Jul 29, 2019 at 09:04:33AM +0100, Daniel P. Berrangé wrote:
On Sat, Jul 27, 2019 at 02:19:47PM +0100, Richard W.M. Jones wrote:
> This patch adds support for symbol versions. It is based on what
> libvirt does.
>
> The generated syms file looks like:
>
> LIBNBD_1.0 {
> global:
> nbd_...;
> nbd_...;
> local: *;
> };
>
> In a future stable 1.2 release, new symbols would go into a new
> section which would look like this:
>
> LIBNBD_1.2 {
> global:
> nbd_new_symbol;
> nbd_another_new_symbol;
> local: *;
> } LIBNBD_1.0;
>
> In my testing the ‘local:’ label is needed. For some reason libvirt
> doesn’t use it.
We do use it - just note that src/libvirt_public.syms is *not* what
is used to link. We combine that file with libvirt_private.syms too,
and when combining, add the "local: *" bit to the result.
Got it, thanks. I adjusted the output to look more like
src/libvirt.syms and pushed it.
Rich.
--
Richard Jones, Virtualization Group, Red Hat
http://people.redhat.com/~rjones
Read my programming and virtualization blog:
http://rwmj.wordpress.com
virt-builder quickly builds VMs from scratch
http://libguestfs.org/virt-builder.1.html