[Spice-devel] [PATCH] server: add symbol versioning to the spice server shared library.
Alon Levy
alevy at redhat.com
Tue Jul 19 05:13:07 PDT 2011
On Tue, Jul 19, 2011 at 01:59:31PM +0200, Gerd Hoffmann wrote:
> This patch adds symbol versions to the spice server library. Each
> symbol which is exported by libspice-server gets tagged with the
> (stable) version where it appeared first. This way the linker and rpm
> are able to figure which version of the spice-server libary is required
> by a particular qemu binary/package.
>
Didn't realize this is how this works - I was sure it was automatic. Pretty
cool. When I add the spice_qxl_* will I have to update spice-server.syms too?
> Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
> ---
> server/Makefile.am | 1 +
> server/spice-server.syms | 66 ++++++++++++++++++++++++++++++++++++++++++++++
> 2 files changed, 67 insertions(+), 0 deletions(-)
> create mode 100644 server/spice-server.syms
>
> diff --git a/server/Makefile.am b/server/Makefile.am
> index 601840a..d94f9fb 100644
> --- a/server/Makefile.am
> +++ b/server/Makefile.am
> @@ -34,6 +34,7 @@ lib_LTLIBRARIES = libspice-server.la
>
> libspice_server_la_LDFLAGS = \
> -version-number $(SPICE_LT_VERSION) \
> + -Wl,--version-script=spice-server.syms \
> -no-undefined \
> $(NULL)
>
> diff --git a/server/spice-server.syms b/server/spice-server.syms
> new file mode 100644
> index 0000000..7f3c5d4
> --- /dev/null
> +++ b/server/spice-server.syms
> @@ -0,0 +1,66 @@
> +SPICE_SERVER_0.6.0 {
> +global:
> + spice_server_add_interface;
> + spice_server_add_renderer;
> + spice_server_char_device_recognized_subtypes;
> + spice_server_char_device_wakeup;
> + spice_server_destroy;
> + spice_server_get_image_compression;
> + spice_server_get_peer_info;
> + spice_server_get_sock_info;
> + spice_server_init;
> + spice_server_kbd_leds;
> + spice_server_migrate_client_state;
> + spice_server_migrate_end;
> + spice_server_migrate_info;
> + spice_server_migrate_start;
> + spice_server_new;
> + spice_server_playback_get_buffer;
> + spice_server_playback_put_samples;
> + spice_server_playback_start;
> + spice_server_playback_stop;
> + spice_server_record_get_samples;
> + spice_server_record_start;
> + spice_server_record_stop;
> + spice_server_remove_interface;
> + spice_server_set_addr;
> + spice_server_set_agent_mouse;
> + spice_server_set_channel_security;
> + spice_server_set_image_compression;
> + spice_server_set_jpeg_compression;
> + spice_server_set_noauth;
> + spice_server_set_playback_compression;
> + spice_server_set_port;
> + spice_server_set_streaming_video;
> + spice_server_set_ticket;
> + spice_server_set_tls;
> + spice_server_set_zlib_glz_compression;
> +local: *;
> +};
> +
> +SPICE_SERVER_0.6.1 {
> +global:
> + spice_get_current_compat_version;
> + spice_server_set_compat_version;
> +} SPICE_SERVER_0.6.0;
> +
> +SPICE_SERVER_0.8.0 {
> +global:
> + spice_server_migrate_switch;
> +} SPICE_SERVER_0.6.1;
> +
> +SPICE_SERVER_0.8.1 {
> +global:
> + spice_server_set_agent_copypaste;
> +} SPICE_SERVER_0.8.0;
> +
> +SPICE_SERVER_0.10.0 {
> +global:
> + spice_server_playback_set_mute;
> + spice_server_playback_set_volume;
> + spice_server_record_set_mute;
> + spice_server_record_set_volume;
> + spice_server_set_sasl;
> + spice_server_set_sasl_appname;
> +} SPICE_SERVER_0.8.1;
> +
> --
> 1.7.1
>
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/spice-devel
More information about the Spice-devel
mailing list