From 89accad2bf9fdcdd9393ad761e08e4348c2913f2 Mon Sep 17 00:00:00 2001 From: Gerd Hoffmann Date: Tue, 19 Jul 2011 13:46:39 +0200 Subject: [PATCH] server: add symbol versioning to the spice server shared library. 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. [ 0.8 branch: drop 0.10 symbols from list ] Signed-off-by: Gerd Hoffmann --- server/Makefile.am | 1 + server/spice-server.syms | 55 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 56 insertions(+) create mode 100644 server/spice-server.syms diff --git a/server/Makefile.am b/server/Makefile.am index 29388064..49cb5d9d 100644 --- a/server/Makefile.am +++ b/server/Makefile.am @@ -59,6 +59,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 00000000..acd05aab --- /dev/null +++ b/server/spice-server.syms @@ -0,0 +1,55 @@ +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;