chiark / gitweb /
libs: add symbol versioning for the benefit of RPM
authorLennart Poettering <lennart@poettering.net>
Thu, 14 Jul 2011 21:49:37 +0000 (23:49 +0200)
committerLennart Poettering <lennart@poettering.net>
Thu, 14 Jul 2011 21:49:37 +0000 (23:49 +0200)
Makefile.am
libsystemd-daemon.pc.in
src/libsystemd-daemon.sym [new file with mode: 0644]
src/libsystemd-login.sym [new file with mode: 0644]

index 767baf7cd3acdf21835d216569d9cef465d4fc3b..fc59b57c0f52796c7d8a976a08ef04e59eab533a 100644 (file)
@@ -1377,7 +1377,8 @@ libsystemd_daemon_la_CFLAGS = \
 
 libsystemd_daemon_la_LDFLAGS = \
         -shared \
 
 libsystemd_daemon_la_LDFLAGS = \
         -shared \
-        -version-info $(LIBSYSTEMD_DAEMON_CURRENT):$(LIBSYSTEMD_DAEMON_REVISION):$(LIBSYSTEMD_DAEMON_AGE)
+        -version-info $(LIBSYSTEMD_DAEMON_CURRENT):$(LIBSYSTEMD_DAEMON_REVISION):$(LIBSYSTEMD_DAEMON_AGE) \
+        -Wl,--version-script=$(top_srcdir)/src/libsystemd-daemon.sym
 
 libsystemd_login_la_SOURCES = \
         src/sd-login.c \
 
 libsystemd_login_la_SOURCES = \
         src/sd-login.c \
@@ -1389,7 +1390,8 @@ libsystemd_login_la_CFLAGS = \
 
 libsystemd_login_la_LDFLAGS = \
         -shared \
 
 libsystemd_login_la_LDFLAGS = \
         -shared \
-        -version-info $(LIBSYSTEMD_LOGIN_CURRENT):$(LIBSYSTEMD_LOGIN_REVISION):$(LIBSYSTEMD_LOGIN_AGE)
+        -version-info $(LIBSYSTEMD_LOGIN_CURRENT):$(LIBSYSTEMD_LOGIN_REVISION):$(LIBSYSTEMD_LOGIN_AGE) \
+        -Wl,--version-script=$(top_srcdir)/src/libsystemd-login.sym
 
 libsystemd_login_la_LIBADD = \
        libsystemd-basic.la
 
 libsystemd_login_la_LIBADD = \
        libsystemd-basic.la
index 2b6b9d67274e7b98b92ada4e74d3b860cc2e516d..8bb3a74c87bb3bf5fb7ed0be45ba111f5968f281 100644 (file)
@@ -1,9 +1,10 @@
-#  This file is part of systemd.
-#
-#  systemd is free software; you can redistribute it and/or modify it
-#  under the terms of the GNU General Public License as published by
-#  the Free Software Foundation; either version 2 of the License, or
-#  (at your option) any later version.
+#  Permission is hereby granted, free of charge, to any person
+#  obtaining a copy of this software and associated documentation files
+#  (the "Software"), to deal in the Software without restriction,
+#  including without limitation the rights to use, copy, modify, merge,
+#  publish, distribute, sublicense, and/or sell copies of the Software,
+#  and to permit persons to whom the Software is furnished to do so,
+#  subject to the following conditions:
 
 prefix=@prefix@
 exec_prefix=@exec_prefix@
 
 prefix=@prefix@
 exec_prefix=@exec_prefix@
diff --git a/src/libsystemd-daemon.sym b/src/libsystemd-daemon.sym
new file mode 100644 (file)
index 0000000..f440238
--- /dev/null
@@ -0,0 +1,27 @@
+/***
+  Permission is hereby granted, free of charge, to any person
+  obtaining a copy of this software and associated documentation files
+  (the "Software"), to deal in the Software without restriction,
+  including without limitation the rights to use, copy, modify, merge,
+  publish, distribute, sublicense, and/or sell copies of the Software,
+  and to permit persons to whom the Software is furnished to do so,
+  subject to the following conditions:
+***/
+
+/* Original symbols from systemd v31 */
+
+LIBSYSTEMD_DAEMON_31 {
+global:
+        sd_booted;
+        sd_is_fifo;
+        sd_is_mq;
+        sd_is_socket;
+        sd_is_socket_inet;
+        sd_is_socket_unix;
+        sd_is_special;
+        sd_listen_fds;
+        sd_notify;
+        sd_notifyf;
+local:
+        *;
+};
diff --git a/src/libsystemd-login.sym b/src/libsystemd-login.sym
new file mode 100644 (file)
index 0000000..708ef6f
--- /dev/null
@@ -0,0 +1,24 @@
+/***
+  This file is part of systemd.
+
+  systemd is free software; you can redistribute it and/or modify it
+  under the terms of the GNU General Public License as published by
+  the Free Software Foundation; either version 2 of the License, or
+  (at your option) any later version.
+***/
+
+/* Original symbols from systemd v31 */
+
+LIBSYSTEMD_LOGIN_31 {
+global:
+        sd_pid_get_session;
+        sd_seat_get_active;
+        sd_session_get_seat;
+        sd_session_get_uid;
+        sd_session_is_active;
+        sd_uid_get_state;
+        sd_uid_is_active_on_seat;
+        sd_uid_is_on_seat;
+local:
+        *;
+};