summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGerd Hoffmann <kraxel@redhat.com>2011-07-19 13:46:39 +0200
committerGerd Hoffmann <kraxel@redhat.com>2011-07-19 14:39:28 +0200
commit70135614623d573def52d062ccce34ffc42a5d0f (patch)
tree5c8f9d936e7bbe31719e5aa9c0033f7db112757a
parentf045886a0623fcec38c390c31570971b4fb8d2d5 (diff)
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. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
-rw-r--r--server/Makefile.am1
-rw-r--r--server/spice-server.syms66
2 files changed, 67 insertions, 0 deletions
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;
+