[systemd-commits] 5 commits - configure.ac .gitignore Makefile.am README src/compat-libs src/libsystemd src/libsystemd-id128 src/login
Zbigniew JÄdrzejewski-Szmek
zbyszek at kemper.freedesktop.org
Sat Jan 25 15:02:23 PST 2014
.gitignore | 1
Makefile.am | 306 +++++++++----------------
README | 2
configure.ac | 15 +
src/compat-libs/.gitignore | 1
src/compat-libs/libsystemd-id128.pc.in | 18 +
src/compat-libs/libsystemd-id128.sym | 21 +
src/compat-libs/libsystemd-login.pc.in | 18 +
src/compat-libs/libsystemd-login.sym | 87 +++++++
src/compat-libs/linkwarning.h | 34 ++
src/libsystemd-id128/.gitignore | 1
src/libsystemd-id128/Makefile | 1
src/libsystemd-id128/libsystemd-id128.pc.in | 18 -
src/libsystemd-id128/libsystemd-id128.sym | 21 -
src/libsystemd-id128/sd-id128.c | 234 -------------------
src/libsystemd/libsystemd.sym | 68 +++++
src/libsystemd/sd-id128/Makefile | 1
src/libsystemd/sd-id128/libsystemd-id128.pc.in | 18 +
src/libsystemd/sd-id128/sd-id128.c | 234 +++++++++++++++++++
src/login/.gitignore | 1
src/login/libsystemd-login.pc.in | 18 -
src/login/libsystemd-login.sym | 94 -------
22 files changed, 639 insertions(+), 573 deletions(-)
New commits:
commit be12791331b9b64867b5aa4b13df88c1a2b7e2a1
Author: Zbigniew JÄdrzejewski-Szmek <zbyszek at in.waw.pl>
Date: Sat Jan 25 16:05:08 2014 -0500
build-sys: merge libsystemd-id128 into libsystemd
diff --git a/Makefile.am b/Makefile.am
index 769d24a..37073d2 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -52,7 +52,7 @@ LIBSYSTEMD_DAEMON_REVISION=10
LIBSYSTEMD_DAEMON_AGE=0
LIBSYSTEMD_ID128_CURRENT=0
-LIBSYSTEMD_ID128_REVISION=26
+LIBSYSTEMD_ID128_REVISION=27
LIBSYSTEMD_ID128_AGE=0
LIBSYSTEMD_JOURNAL_CURRENT=11
@@ -999,7 +999,6 @@ libsystemd_core_la_LIBADD = \
libsystemd-capability.la \
libsystemd-units.la \
libsystemd-label.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libudev-internal.la \
libsystemd-shared.la \
@@ -1373,7 +1372,7 @@ test_strv_SOURCES = \
test_strv_LDADD = \
libsystemd-units.la \
- libsystemd-id128-internal.la \
+ libsystemd-internal.la \
libsystemd-shared.la
test_path_util_SOURCES = \
@@ -1394,7 +1393,7 @@ test_install_SOURCES = \
test_install_LDADD = \
libsystemd-units.la \
libsystemd-label.la \
- libsystemd-id128-internal.la \
+ libsystemd-internal.la \
libsystemd-shared.la
test_watchdog_SOURCES = \
@@ -1458,7 +1457,6 @@ systemd_analyze_SOURCES = \
systemd_analyze_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -1468,7 +1466,6 @@ systemd_initctl_SOURCES = \
systemd_initctl_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -1482,7 +1479,6 @@ systemd_update_utmp_CFLAGS = \
systemd_update_utmp_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la \
$(AUDIT_LIBS)
@@ -1558,7 +1554,7 @@ systemd_tmpfiles_LDADD = \
libsystemd-units.la \
libsystemd-label.la \
libsystemd-capability.la \
- libsystemd-id128-internal.la \
+ libsystemd-internal.la \
libsystemd-shared.la
rootbin_PROGRAMS += \
@@ -1611,7 +1607,7 @@ systemd_machine_id_setup_SOURCES = \
systemd_machine_id_setup_LDADD = \
libsystemd-label.la \
- libsystemd-id128-internal.la \
+ libsystemd-internal.la \
libsystemd-shared.la
# ------------------------------------------------------------------------------
@@ -1634,7 +1630,6 @@ systemd_fsck_SOURCES = \
systemd_fsck_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libudev-internal.la \
libsystemd-shared.la
@@ -1714,7 +1709,7 @@ bootctl_SOURCES = \
bootctl_LDADD = \
libsystemd-shared.la \
- libsystemd-id128-internal.la \
+ libsystemd-internal.la \
libsystemd-daemon-internal.la
bin_PROGRAMS += \
@@ -1735,7 +1730,7 @@ systemd_gpt_auto_generator_SOURCES = \
systemd_gpt_auto_generator_LDADD = \
libsystemd-label.la \
- libsystemd-id128-internal.la \
+ libsystemd-internal.la \
libudev-internal.la \
libsystemd-shared.la \
$(BLKID_LIBS)
@@ -1792,7 +1787,6 @@ systemd_cgroups_agent_SOURCES = \
systemd_cgroups_agent_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -1806,7 +1800,6 @@ systemctl_LDADD = \
libsystemd-internal.la \
libsystemd-logs.la \
libsystemd-journal-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -1860,7 +1853,6 @@ systemd_nspawn_LDADD = \
libsystemd-label.la \
libsystemd-capability.la \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -1873,7 +1865,6 @@ systemd_run_LDADD = \
libsystemd-capability.la \
libsystemd-internal.la \
libsystemd-daemon-internal.la \
- libsystemd-id128-internal.la \
libsystemd-shared.la
# ------------------------------------------------------------------------------
@@ -1883,7 +1874,6 @@ systemd_bus_proxyd_SOURCES = \
systemd_bus_proxyd_LDADD = \
libsystemd-internal.la \
libsystemd-daemon-internal.la \
- libsystemd-id128-internal.la \
libsystemd-shared.la
bus-proxyd-install-hook:
@@ -1980,6 +1970,7 @@ libsystemd_la_SOURCES = \
src/systemd/sd-rtnl.h \
src/systemd/sd-resolve.h \
src/systemd/sd-login.h \
+ src/systemd/sd-id128.h \
src/libsystemd/sd-bus/sd-bus.c \
src/libsystemd/sd-bus/bus-control.c \
src/libsystemd/sd-bus/bus-control.h \
@@ -2027,6 +2018,7 @@ libsystemd_la_SOURCES = \
src/libsystemd/sd-rtnl/rtnl-util.c \
src/libsystemd/sd-resolve/sd-resolve.c \
src/libsystemd/sd-resolve/resolve-util.h \
+ src/libsystemd/sd-id128/sd-id128.c \
src/login/sd-login.c \
src/login/login-shared.c \
src/login/login-shared.h
@@ -2035,7 +2027,6 @@ nodist_libsystemd_la_SOURCES = \
src/libsystemd/sd-bus/bus-error-mapping.c
libsystemd_la_LIBADD = \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -2052,6 +2043,10 @@ libsystemd_la_LDFLAGS = \
pkgconfiglib_DATA += \
src/libsystemd/libsystemd.pc
+pkginclude_HEADERS += \
+ src/systemd/sd-login.h \
+ src/systemd/sd-id128.h
+
EXTRA_DIST += \
src/libsystemd/sd-bus/bus-error-mapping.gperf \
src/libsystemd/sd-bus/DIFFERENCES \
@@ -2116,7 +2111,6 @@ test_bus_marshal_SOURCES = \
test_bus_marshal_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la \
libsystemd-dump.la \
@@ -2147,7 +2141,6 @@ test_bus_chat_CFLAGS = \
test_bus_chat_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -2156,7 +2149,6 @@ test_bus_cleanup_SOURCES = \
test_bus_cleanup_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -2169,7 +2161,6 @@ test_bus_server_CFLAGS = \
test_bus_server_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -2183,7 +2174,6 @@ test_bus_objects_CFLAGS = \
test_bus_objects_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la \
libsystemd-dump.la \
@@ -2195,7 +2185,6 @@ test_bus_error_SOURCES = \
test_bus_error_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -2204,7 +2193,6 @@ test_bus_gvariant_SOURCES = \
test_bus_gvariant_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la \
libsystemd-dump.la \
@@ -2222,7 +2210,6 @@ test_bus_creds_SOURCES = \
test_bus_creds_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la \
libsystemd-dump.la \
@@ -2233,7 +2220,6 @@ test_bus_match_SOURCES = \
test_bus_match_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -2242,7 +2228,6 @@ test_bus_kernel_SOURCES = \
test_bus_kernel_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la \
libsystemd-dump.la \
@@ -2258,7 +2243,6 @@ test_bus_kernel_bloom_SOURCES = \
test_bus_kernel_bloom_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -2267,7 +2251,6 @@ test_bus_kernel_benchmark_SOURCES = \
test_bus_kernel_benchmark_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -2283,7 +2266,6 @@ test_bus_zero_copy_SOURCES = \
test_bus_zero_copy_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la \
libsystemd-dump.la \
@@ -2306,7 +2288,6 @@ test_event_SOURCES = \
test_event_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -2316,7 +2297,6 @@ test_rtnl_SOURCES = \
test_rtnl_LDADD = \
libsystemd-internal.la \
libsystemd-daemon-internal.la \
- libsystemd-id128-internal.la \
libsystemd-shared.la
test_resolve_SOURCES = \
@@ -2336,7 +2316,6 @@ busctl_SOURCES = \
busctl_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la \
libsystemd-dump.la \
@@ -2383,7 +2362,6 @@ test_dhcp_client_LDADD = \
libsystemd-dhcp.la \
libsystemd-internal.la \
libsystemd-daemon-internal.la \
- libsystemd-id128-internal.la \
libsystemd-shared.la
tests += \
@@ -2430,7 +2408,6 @@ libudev_la_LDFLAGS = \
libudev_la_LIBADD = \
libsystemd-daemon-internal.la \
- libsystemd-id128-internal.la \
libsystemd-shared.la
pkgconfiglib_DATA += \
@@ -2615,7 +2592,6 @@ libudev_core_la_LIBADD = \
libsystemd-label.la \
libsystemd-daemon-internal.la \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-shared.la \
$(BLKID_LIBS) \
$(KMOD_LIBS)
@@ -2987,62 +2963,17 @@ udevlibexec_PROGRAMS += \
mtd_probe
# ------------------------------------------------------------------------------
-libsystemd_id128_la_SOURCES = \
- src/libsystemd-id128/libsystemd-id128.sym \
- src/libsystemd-id128/sd-id128.c
-
-libsystemd_id128_la_CFLAGS = \
- $(AM_CFLAGS) \
- -fvisibility=hidden
-
-libsystemd_id128_la_LDFLAGS = \
- $(AM_LDFLAGS) \
- -version-info $(LIBSYSTEMD_ID128_CURRENT):$(LIBSYSTEMD_ID128_REVISION):$(LIBSYSTEMD_ID128_AGE) \
- -Wl,--version-script=$(top_srcdir)/src/libsystemd-id128/libsystemd-id128.sym
-
-libsystemd_id128_la_LIBADD = \
- libsystemd-daemon-internal.la \
- libsystemd-shared.la
-
-libsystemd_id128_internal_la_SOURCES = \
- $(libsystemd_id128_la_SOURCES)
-
test_id128_SOURCES = \
src/test/test-id128.c
test_id128_LDADD = \
- libsystemd-id128-internal.la \
+ libsystemd-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
tests += \
test-id128
-pkginclude_HEADERS += \
- src/systemd/sd-id128.h
-
-lib_LTLIBRARIES += \
- libsystemd-id128.la
-
-noinst_LTLIBRARIES += \
- libsystemd-id128-internal.la
-
-pkgconfiglib_DATA += \
- src/libsystemd-id128/libsystemd-id128.pc
-
-# move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
-libsystemd-id128-install-hook:
- libname=libsystemd-id128.so && $(move-to-rootlibdir)
-
-libsystemd-id128-uninstall-hook:
- rm -f $(DESTDIR)$(rootlibdir)/libsystemd-id128.so*
-
-INSTALL_EXEC_HOOKS += libsystemd-id128-install-hook
-UNINSTALL_EXEC_HOOKS += libsystemd-id128-uninstall-hook
-
-EXTRA_DIST += \
- src/libsystemd-id128/libsystemd-id128.pc.in
-
# ------------------------------------------------------------------------------
rootlibexec_PROGRAMS += \
@@ -3081,7 +3012,7 @@ journalctl_SOURCES = \
journalctl_LDADD = \
libsystemd-journal-internal.la \
- libsystemd-id128-internal.la \
+ libsystemd-internal.la \
libsystemd-logs.la \
libsystemd-shared.la
@@ -3211,7 +3142,7 @@ libsystemd_journal_la_LDFLAGS = \
libsystemd_journal_la_LIBADD = \
libsystemd-label.la \
libsystemd-daemon-internal.la \
- libsystemd-id128-internal.la \
+ libsystemd-internal.la \
libsystemd-shared.la
libsystemd_journal_internal_la_SOURCES = \
@@ -3266,7 +3197,7 @@ libsystemd_journal_core_la_LIBADD = \
libsystemd-capability.la \
libsystemd-label.la \
libsystemd-daemon-internal.la \
- libsystemd-id128-internal.la \
+ libsystemd-internal.la \
libsystemd-shared.la
if HAVE_ACL
@@ -3417,7 +3348,6 @@ systemd_journal_gatewayd_SOURCES = \
systemd_journal_gatewayd_LDADD = \
libsystemd-logs.la \
libsystemd-journal-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-internal.la \
libsystemd-shared.la \
@@ -3454,7 +3384,6 @@ systemd_socket_proxyd_LDADD = \
libsystemd-logs.la \
libsystemd-internal.la \
libsystemd-journal-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -3477,7 +3406,7 @@ systemd_coredumpctl_SOURCES = \
systemd_coredumpctl_LDADD = \
libsystemd-journal-internal.la \
- libsystemd-id128-internal.la \
+ libsystemd-internal.la \
libsystemd-shared.la
bin_PROGRAMS += \
@@ -3738,7 +3667,6 @@ systemd_hostnamed_SOURCES = \
systemd_hostnamed_LDADD = \
libsystemd-label.la \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -3771,7 +3699,6 @@ hostnamectl_SOURCES = \
hostnamectl_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -3799,7 +3726,6 @@ systemd_bus_driverd_SOURCES = \
systemd_bus_driverd_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -3837,7 +3763,6 @@ systemd_localed_SOURCES = \
systemd_localed_LDADD = \
libsystemd-label.la \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -3879,7 +3804,6 @@ localectl_SOURCES = \
localectl_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -3908,7 +3832,6 @@ systemd_timedated_SOURCES = \
systemd_timedated_LDADD = \
libsystemd-label.la \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -3945,7 +3868,6 @@ timedatectl_SOURCES = \
timedatectl_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -4006,7 +3928,6 @@ libsystemd_machine_core_la_LIBADD = \
libsystemd-label.la \
libsystemd-daemon-internal.la \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libudev-internal.la \
libsystemd-shared.la
@@ -4018,7 +3939,6 @@ machinectl_SOURCES = \
machinectl_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -4084,7 +4004,6 @@ systemd_networkd_LDADD = \
libsystemd-daemon-internal.la \
libsystemd-internal.la \
libsystemd-dhcp.la \
- libsystemd-id128-internal.la \
libsystemd-label.la \
libsystemd-shared.la
@@ -4109,7 +4028,6 @@ test_network_LDADD = \
libudev-internal.la \
libsystemd-internal.la \
libsystemd-dhcp.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-label.la \
libsystemd-shared.la
@@ -4167,7 +4085,6 @@ libsystemd_logind_core_la_LIBADD = \
libsystemd-label.la \
libsystemd-capability.la \
libsystemd-daemon-internal.la \
- libsystemd-id128-internal.la \
libsystemd-internal.la \
libudev-internal.la \
libsystemd-shared.la
@@ -4201,7 +4118,6 @@ loginctl_LDADD = \
libsystemd-internal.la \
libudev-internal.la \
libsystemd-shared.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la
rootbin_PROGRAMS += \
@@ -4219,7 +4135,6 @@ systemd_inhibit_SOURCES = \
systemd_inhibit_LDADD = \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -4246,7 +4161,6 @@ test_inhibit_SOURCES = \
test_inhibit_LDADD = \
libsystemd-internal.la \
libsystemd-daemon-internal.la \
- libsystemd-id128-internal.la \
libsystemd-shared.la
test_login_tables_SOURCES = \
@@ -4283,7 +4197,6 @@ pam_systemd_la_LDFLAGS = \
pam_systemd_la_LIBADD = \
libsystemd-capability.la \
libsystemd-internal.la \
- libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la \
$(PAM_LIBS)
@@ -4312,9 +4225,6 @@ dist_dbuspolicy_DATA += \
dist_pkgsysconf_DATA += \
src/login/logind.conf
-pkginclude_HEADERS += \
- src/systemd/sd-login.h
-
polkitpolicy_files += \
src/login/org.freedesktop.login1.policy
@@ -4364,7 +4274,6 @@ polkitpolicy_in_files += \
EXTRA_DIST += \
src/login/logind-gperf.gperf \
- src/compat-libs/libsystemd-login.pc.in \
src/login/71-seat.rules.in \
src/login/73-seat-late.rules.in \
units/systemd-logind.service.in \
@@ -4417,7 +4326,7 @@ id128_la_LDFLAGS = \
id128_la_LIBADD = \
$(PYTHON_DEVEL_LIBS) \
- libsystemd-id128.la
+ libsystemd.la
_daemon_la_SOURCES = \
src/python-systemd/_daemon.c \
@@ -4459,7 +4368,7 @@ _reader_la_LDFLAGS = \
_reader_la_LIBADD = \
$(PYTHON_DEVEL_LIBS) \
libsystemd-journal.la \
- libsystemd-id128.la \
+ libsystemd.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -4552,30 +4461,56 @@ libsystemd_login_la_LDFLAGS = \
libsystemd_login_la_LIBADD = \
libsystemd.la
+libsystemd_id128_la_SOURCES = \
+ libsystemd-id128.c \
+ src/compat-libs/libsystemd-id128.sym
+
+libsystemd_id128_la_CFLAGS = \
+ $(AM_CFLAGS) \
+ -fvisibility=default \
+ -imacros $(top_srcdir)/src/compat-libs/linkwarning.h
+
+libsystemd_id128_la_LDFLAGS = \
+ $(AM_LDFLAGS) \
+ -version-info $(LIBSYSTEMD_ID128_CURRENT):$(LIBSYSTEMD_ID128_REVISION):$(LIBSYSTEMD_ID128_AGE) \
+ -Wl,--version-script=$(top_srcdir)/src/compat-libs/libsystemd-id128.sym
+
+libsystemd_id128_la_LIBADD = \
+ libsystemd.la
+
BUILT_SOURCES += \
- libsystemd-login.c
+ libsystemd-login.c \
+ libsystemd-id128.c
-libsystemd-login.c: src/compat-libs/libsystemd-login.sym
+libsystemd-%.c: src/compat-libs/libsystemd-%.sym
$(generate-fake-lib)
lib_LTLIBRARIES += \
- libsystemd-login.la
+ libsystemd-login.la \
+ libsystemd-id128.la
pkgconfiglib_DATA += \
- src/compat-libs/libsystemd-login.pc
+ src/compat-libs/libsystemd-login.pc \
+ src/compat-libs/libsystemd-id128.pc
# move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
-libsystemd-login-install-hook:
+compat-lib-install-hook:
libname=libsystemd-login.so && $(move-to-rootlibdir)
+ libname=libsystemd-id128.so && $(move-to-rootlibdir)
-libsystemd-login-uninstall-hook:
+compat-lib-uninstall-hook:
rm -f $(DESTDIR)$(rootlibdir)/libsystemd-login.so*
+ rm -f $(DESTDIR)$(rootlibdir)/libsystemd-id128.so*
-INSTALL_EXEC_HOOKS += libsystemd-login-install-hook
-UNINSTALL_EXEC_HOOKS += libsystemd-login-uninstall-hook
+INSTALL_EXEC_HOOKS += compat-lib-install-hook
+UNINSTALL_EXEC_HOOKS += compat-lib-uninstall-hook
endif
+EXTRA_DIST += \
+ src/compat-libs/libsystemd-login.pc.in \
+ src/compat-libs/libsystemd-id128.pc.in
+
# ------------------------------------------------------------------------------
substitutions = \
'|rootlibexecdir=$(rootlibexecdir)|' \
@@ -5002,7 +4937,7 @@ test-libsystemd-daemon-sym.c: \
$(generate-sym-test)
test-libsystemd-id128-sym.c: \
- src/libsystemd-id128/libsystemd-id128.sym \
+ src/compat-libs/libsystemd-id128.sym \
src/systemd/sd-id128.h
$(generate-sym-test)
@@ -5054,21 +4989,23 @@ test_libudev_sym_LDADD = \
BUILT_SOURCES += \
$(test_libsystemd_sym_SOURCES) \
$(test_libsystemd_daemon_sym_SOURCES) \
- $(test_libsystemd_id128_sym_SOURCES) \
$(test_libsystemd_journal_sym_SOURCES) \
- $(test_libsystemd_login_sym_SOURCES) \
$(test_libudev_sym_SOURCES)
tests += \
test-libsystemd-sym \
test-libsystemd-daemon-sym \
- test-libsystemd-id128-sym \
test-libsystemd-journal-sym \
test-libudev-sym
if ENABLE_COMPAT_LIBS
+BUILT_SOURCES += \
+ $(test_libsystemd_login_sym_SOURCES) \
+ $(test_libsystemd_id128_sym_SOURCES)
+
tests += \
- test-libsystemd-login-sym
+ test-libsystemd-login-sym \
+ test-libsystemd-id128-sym
endif
cppcheck:
diff --git a/src/compat-libs/.gitignore b/src/compat-libs/.gitignore
index 0b8d106..662c154 100644
--- a/src/compat-libs/.gitignore
+++ b/src/compat-libs/.gitignore
@@ -1 +1 @@
-/libsystemd-login.pc
+/libsystemd-*.pc
diff --git a/src/compat-libs/libsystemd-id128.pc.in b/src/compat-libs/libsystemd-id128.pc.in
new file mode 100644
index 0000000..bb65ffd
--- /dev/null
+++ b/src/compat-libs/libsystemd-id128.pc.in
@@ -0,0 +1,18 @@
+# This file is part of systemd.
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2.1 of the License, or
+# (at your option) any later version.
+
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: systemd
+Description: systemd 128 Bit ID Utility Library
+URL: @PACKAGE_URL@
+Version: @PACKAGE_VERSION@
+Libs: -L${libdir} -lsystemd-id128
+Cflags: -I${includedir}
diff --git a/src/compat-libs/libsystemd-id128.sym b/src/compat-libs/libsystemd-id128.sym
new file mode 100644
index 0000000..604c002
--- /dev/null
+++ b/src/compat-libs/libsystemd-id128.sym
@@ -0,0 +1,21 @@
+/***
+ This file is part of systemd.
+
+ systemd is free software; you can redistribute it and/or modify it
+ under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation; either version 2.1 of the License, or
+ (at your option) any later version.
+***/
+
+/* Original symbols from systemd v38 */
+
+LIBSYSTEMD_ID128_38 {
+global:
+ sd_id128_to_string;
+ sd_id128_from_string;
+ sd_id128_randomize;
+ sd_id128_get_machine;
+ sd_id128_get_boot;
+local:
+ *;
+};
diff --git a/src/libsystemd-id128/.gitignore b/src/libsystemd-id128/.gitignore
deleted file mode 100644
index 144adf9..0000000
--- a/src/libsystemd-id128/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/libsystemd-id128.pc
diff --git a/src/libsystemd-id128/Makefile b/src/libsystemd-id128/Makefile
deleted file mode 120000
index d0b0e8e..0000000
--- a/src/libsystemd-id128/Makefile
+++ /dev/null
@@ -1 +0,0 @@
-../Makefile
\ No newline at end of file
diff --git a/src/libsystemd-id128/libsystemd-id128.pc.in b/src/libsystemd-id128/libsystemd-id128.pc.in
deleted file mode 100644
index bb65ffd..0000000
--- a/src/libsystemd-id128/libsystemd-id128.pc.in
+++ /dev/null
@@ -1,18 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-libdir=@libdir@
-includedir=@includedir@
-
-Name: systemd
-Description: systemd 128 Bit ID Utility Library
-URL: @PACKAGE_URL@
-Version: @PACKAGE_VERSION@
-Libs: -L${libdir} -lsystemd-id128
-Cflags: -I${includedir}
diff --git a/src/libsystemd-id128/libsystemd-id128.sym b/src/libsystemd-id128/libsystemd-id128.sym
deleted file mode 100644
index 604c002..0000000
--- a/src/libsystemd-id128/libsystemd-id128.sym
+++ /dev/null
@@ -1,21 +0,0 @@
-/***
- This file is part of systemd.
-
- systemd is free software; you can redistribute it and/or modify it
- under the terms of the GNU Lesser General Public License as published by
- the Free Software Foundation; either version 2.1 of the License, or
- (at your option) any later version.
-***/
-
-/* Original symbols from systemd v38 */
-
-LIBSYSTEMD_ID128_38 {
-global:
- sd_id128_to_string;
- sd_id128_from_string;
- sd_id128_randomize;
- sd_id128_get_machine;
- sd_id128_get_boot;
-local:
- *;
-};
diff --git a/src/libsystemd-id128/sd-id128.c b/src/libsystemd-id128/sd-id128.c
deleted file mode 100644
index 9ee40ab..0000000
--- a/src/libsystemd-id128/sd-id128.c
+++ /dev/null
@@ -1,234 +0,0 @@
-/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
-
-/***
- This file is part of systemd.
-
- Copyright 2011 Lennart Poettering
-
- systemd is free software; you can redistribute it and/or modify it
- under the terms of the GNU Lesser General Public License as published by
- the Free Software Foundation; either version 2.1 of the License, or
- (at your option) any later version.
-
- systemd is distributed in the hope that it will be useful, but
- WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public License
- along with systemd; If not, see <http://www.gnu.org/licenses/>.
-***/
-
-#include <errno.h>
-#include <fcntl.h>
-#include <unistd.h>
-
-#include "util.h"
-#include "macro.h"
-#include "sd-id128.h"
-
-_public_ char *sd_id128_to_string(sd_id128_t id, char s[33]) {
- unsigned n;
-
- assert_return(s, NULL);
-
- for (n = 0; n < 16; n++) {
- s[n*2] = hexchar(id.bytes[n] >> 4);
- s[n*2+1] = hexchar(id.bytes[n] & 0xF);
- }
-
- s[32] = 0;
-
- return s;
-}
-
-_public_ int sd_id128_from_string(const char s[], sd_id128_t *ret) {
- unsigned n, i;
- sd_id128_t t;
- bool is_guid = false;
-
- assert_return(s, -EINVAL);
- assert_return(ret, -EINVAL);
-
- for (n = 0, i = 0; n < 16;) {
- int a, b;
-
- if (s[i] == '-') {
- /* Is this a GUID? Then be nice, and skip over
- * the dashes */
-
- if (i == 8)
- is_guid = true;
- else if (i == 13 || i == 18 || i == 23) {
- if (!is_guid)
- return -EINVAL;
- } else
- return -EINVAL;
-
- i++;
- continue;
- }
-
- a = unhexchar(s[i++]);
- if (a < 0)
- return -EINVAL;
-
- b = unhexchar(s[i++]);
- if (b < 0)
- return -EINVAL;
-
- t.bytes[n++] = (a << 4) | b;
- }
-
- if (i != (is_guid ? 36 : 32))
- return -EINVAL;
-
- if (s[i] != 0)
- return -EINVAL;
-
- *ret = t;
- return 0;
-}
-
-static sd_id128_t make_v4_uuid(sd_id128_t id) {
- /* Stolen from generate_random_uuid() of drivers/char/random.c
- * in the kernel sources */
-
- /* Set UUID version to 4 --- truly random generation */
- id.bytes[6] = (id.bytes[6] & 0x0F) | 0x40;
-
- /* Set the UUID variant to DCE */
- id.bytes[8] = (id.bytes[8] & 0x3F) | 0x80;
-
- return id;
-}
-
-_public_ int sd_id128_get_machine(sd_id128_t *ret) {
- static thread_local sd_id128_t saved_machine_id;
- static thread_local bool saved_machine_id_valid = false;
- _cleanup_close_ int fd = -1;
- char buf[33];
- ssize_t k;
- unsigned j;
- sd_id128_t t;
-
- assert_return(ret, -EINVAL);
-
- if (saved_machine_id_valid) {
- *ret = saved_machine_id;
- return 0;
- }
-
- fd = open("/etc/machine-id", O_RDONLY|O_CLOEXEC|O_NOCTTY);
- if (fd < 0)
- return -errno;
-
- k = loop_read(fd, buf, 33, false);
- if (k < 0)
- return (int) k;
-
- if (k != 33)
- return -EIO;
-
- if (buf[32] !='\n')
- return -EIO;
-
- for (j = 0; j < 16; j++) {
- int a, b;
-
- a = unhexchar(buf[j*2]);
- b = unhexchar(buf[j*2+1]);
-
- if (a < 0 || b < 0)
- return -EIO;
-
- t.bytes[j] = a << 4 | b;
- }
-
- saved_machine_id = t;
- saved_machine_id_valid = true;
-
- *ret = t;
- return 0;
-}
-
-_public_ int sd_id128_get_boot(sd_id128_t *ret) {
- static thread_local sd_id128_t saved_boot_id;
- static thread_local bool saved_boot_id_valid = false;
- _cleanup_close_ int fd = -1;
- char buf[36];
- ssize_t k;
- unsigned j;
- sd_id128_t t;
- char *p;
-
- assert_return(ret, -EINVAL);
-
- if (saved_boot_id_valid) {
- *ret = saved_boot_id;
- return 0;
- }
-
- fd = open("/proc/sys/kernel/random/boot_id", O_RDONLY|O_CLOEXEC|O_NOCTTY);
- if (fd < 0)
- return -errno;
-
- k = loop_read(fd, buf, 36, false);
- if (k < 0)
- return (int) k;
-
- if (k != 36)
- return -EIO;
-
- for (j = 0, p = buf; j < 16; j++) {
- int a, b;
-
- if (p >= buf + k)
- return -EIO;
-
- if (*p == '-')
- p++;
-
- a = unhexchar(p[0]);
- b = unhexchar(p[1]);
-
- if (a < 0 || b < 0)
- return -EIO;
-
- t.bytes[j] = a << 4 | b;
-
- p += 2;
- }
-
- saved_boot_id = t;
- saved_boot_id_valid = true;
-
- *ret = t;
- return 0;
-}
-
-_public_ int sd_id128_randomize(sd_id128_t *ret) {
- _cleanup_close_ int fd = -1;
- sd_id128_t t;
- ssize_t k;
-
- assert_return(ret, -EINVAL);
-
- fd = open("/dev/urandom", O_RDONLY|O_CLOEXEC|O_NOCTTY);
- if (fd < 0)
- return -errno;
-
- k = loop_read(fd, &t, 16, false);
- if (k < 0)
- return (int) k;
-
- if (k != 16)
- return -EIO;
-
- /* Turn this into a valid v4 UUID, to be nice. Note that we
- * only guarantee this for newly generated UUIDs, not for
- * pre-existing ones.*/
-
- *ret = make_v4_uuid(t);
- return 0;
-}
diff --git a/src/libsystemd/libsystemd.sym b/src/libsystemd/libsystemd.sym
index 9b10604..9416f22 100644
--- a/src/libsystemd/libsystemd.sym
+++ b/src/libsystemd/libsystemd.sym
@@ -10,6 +10,13 @@
LIBSYSTEMD_209 {
global:
+ /* originally LIBSYSTEMD_ID128_38 */
+ sd_id128_to_string;
+ sd_id128_from_string;
+ sd_id128_randomize;
+ sd_id128_get_machine;
+ sd_id128_get_boot;
+
/* originally LIBSYSTEMD_LOGIN_31 */
sd_get_seats;
sd_get_sessions;
diff --git a/src/libsystemd/sd-id128/Makefile b/src/libsystemd/sd-id128/Makefile
new file mode 120000
index 0000000..94aaae2
--- /dev/null
+++ b/src/libsystemd/sd-id128/Makefile
@@ -0,0 +1 @@
+../../Makefile
\ No newline at end of file
diff --git a/src/libsystemd/sd-id128/libsystemd-id128.pc.in b/src/libsystemd/sd-id128/libsystemd-id128.pc.in
new file mode 100644
index 0000000..bb65ffd
--- /dev/null
+++ b/src/libsystemd/sd-id128/libsystemd-id128.pc.in
@@ -0,0 +1,18 @@
+# This file is part of systemd.
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2.1 of the License, or
+# (at your option) any later version.
+
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: systemd
+Description: systemd 128 Bit ID Utility Library
+URL: @PACKAGE_URL@
+Version: @PACKAGE_VERSION@
+Libs: -L${libdir} -lsystemd-id128
+Cflags: -I${includedir}
diff --git a/src/libsystemd/sd-id128/sd-id128.c b/src/libsystemd/sd-id128/sd-id128.c
new file mode 100644
index 0000000..9ee40ab
--- /dev/null
+++ b/src/libsystemd/sd-id128/sd-id128.c
@@ -0,0 +1,234 @@
+/*-*- Mode: C; c-basic-offset: 8; indent-tabs-mode: nil -*-*/
+
+/***
+ This file is part of systemd.
+
+ Copyright 2011 Lennart Poettering
+
+ systemd is free software; you can redistribute it and/or modify it
+ under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation; either version 2.1 of the License, or
+ (at your option) any later version.
+
+ systemd is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public License
+ along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+#include <errno.h>
+#include <fcntl.h>
+#include <unistd.h>
+
+#include "util.h"
+#include "macro.h"
+#include "sd-id128.h"
+
+_public_ char *sd_id128_to_string(sd_id128_t id, char s[33]) {
+ unsigned n;
+
+ assert_return(s, NULL);
+
+ for (n = 0; n < 16; n++) {
+ s[n*2] = hexchar(id.bytes[n] >> 4);
+ s[n*2+1] = hexchar(id.bytes[n] & 0xF);
+ }
+
+ s[32] = 0;
+
+ return s;
+}
+
+_public_ int sd_id128_from_string(const char s[], sd_id128_t *ret) {
+ unsigned n, i;
+ sd_id128_t t;
+ bool is_guid = false;
+
+ assert_return(s, -EINVAL);
+ assert_return(ret, -EINVAL);
+
+ for (n = 0, i = 0; n < 16;) {
+ int a, b;
+
+ if (s[i] == '-') {
+ /* Is this a GUID? Then be nice, and skip over
+ * the dashes */
+
+ if (i == 8)
+ is_guid = true;
+ else if (i == 13 || i == 18 || i == 23) {
+ if (!is_guid)
+ return -EINVAL;
+ } else
+ return -EINVAL;
+
+ i++;
+ continue;
+ }
+
+ a = unhexchar(s[i++]);
+ if (a < 0)
+ return -EINVAL;
+
+ b = unhexchar(s[i++]);
+ if (b < 0)
+ return -EINVAL;
+
+ t.bytes[n++] = (a << 4) | b;
+ }
+
+ if (i != (is_guid ? 36 : 32))
+ return -EINVAL;
+
+ if (s[i] != 0)
+ return -EINVAL;
+
+ *ret = t;
+ return 0;
+}
+
+static sd_id128_t make_v4_uuid(sd_id128_t id) {
+ /* Stolen from generate_random_uuid() of drivers/char/random.c
+ * in the kernel sources */
+
+ /* Set UUID version to 4 --- truly random generation */
+ id.bytes[6] = (id.bytes[6] & 0x0F) | 0x40;
+
+ /* Set the UUID variant to DCE */
+ id.bytes[8] = (id.bytes[8] & 0x3F) | 0x80;
+
+ return id;
+}
+
+_public_ int sd_id128_get_machine(sd_id128_t *ret) {
+ static thread_local sd_id128_t saved_machine_id;
+ static thread_local bool saved_machine_id_valid = false;
+ _cleanup_close_ int fd = -1;
+ char buf[33];
+ ssize_t k;
+ unsigned j;
+ sd_id128_t t;
+
+ assert_return(ret, -EINVAL);
+
+ if (saved_machine_id_valid) {
+ *ret = saved_machine_id;
+ return 0;
+ }
+
+ fd = open("/etc/machine-id", O_RDONLY|O_CLOEXEC|O_NOCTTY);
+ if (fd < 0)
+ return -errno;
+
+ k = loop_read(fd, buf, 33, false);
+ if (k < 0)
+ return (int) k;
+
+ if (k != 33)
+ return -EIO;
+
+ if (buf[32] !='\n')
+ return -EIO;
+
+ for (j = 0; j < 16; j++) {
+ int a, b;
+
+ a = unhexchar(buf[j*2]);
+ b = unhexchar(buf[j*2+1]);
+
+ if (a < 0 || b < 0)
+ return -EIO;
+
+ t.bytes[j] = a << 4 | b;
+ }
+
+ saved_machine_id = t;
+ saved_machine_id_valid = true;
+
+ *ret = t;
+ return 0;
+}
+
+_public_ int sd_id128_get_boot(sd_id128_t *ret) {
+ static thread_local sd_id128_t saved_boot_id;
+ static thread_local bool saved_boot_id_valid = false;
+ _cleanup_close_ int fd = -1;
+ char buf[36];
+ ssize_t k;
+ unsigned j;
+ sd_id128_t t;
+ char *p;
+
+ assert_return(ret, -EINVAL);
+
+ if (saved_boot_id_valid) {
+ *ret = saved_boot_id;
+ return 0;
+ }
+
+ fd = open("/proc/sys/kernel/random/boot_id", O_RDONLY|O_CLOEXEC|O_NOCTTY);
+ if (fd < 0)
+ return -errno;
+
+ k = loop_read(fd, buf, 36, false);
+ if (k < 0)
+ return (int) k;
+
+ if (k != 36)
+ return -EIO;
+
+ for (j = 0, p = buf; j < 16; j++) {
+ int a, b;
+
+ if (p >= buf + k)
+ return -EIO;
+
+ if (*p == '-')
+ p++;
+
+ a = unhexchar(p[0]);
+ b = unhexchar(p[1]);
+
+ if (a < 0 || b < 0)
+ return -EIO;
+
+ t.bytes[j] = a << 4 | b;
+
+ p += 2;
+ }
+
+ saved_boot_id = t;
+ saved_boot_id_valid = true;
+
+ *ret = t;
+ return 0;
+}
+
+_public_ int sd_id128_randomize(sd_id128_t *ret) {
+ _cleanup_close_ int fd = -1;
+ sd_id128_t t;
+ ssize_t k;
+
+ assert_return(ret, -EINVAL);
+
+ fd = open("/dev/urandom", O_RDONLY|O_CLOEXEC|O_NOCTTY);
+ if (fd < 0)
+ return -errno;
+
+ k = loop_read(fd, &t, 16, false);
+ if (k < 0)
+ return (int) k;
+
+ if (k != 16)
+ return -EIO;
+
+ /* Turn this into a valid v4 UUID, to be nice. Note that we
+ * only guarantee this for newly generated UUIDs, not for
+ * pre-existing ones.*/
+
+ *ret = make_v4_uuid(t);
+ return 0;
+}
commit 53e856e16ac37fe30b8bb59153ff69aad0fa9c27
Author: Zbigniew JÄdrzejewski-Szmek <zbyszek at in.waw.pl>
Date: Sun Jan 19 08:50:02 2014 -0500
build-sys: create "compatibility libraries" section
Compat stuff is moved to src/compat-libs/.
Warnings are issued when programs are linked with the deprecated library.
diff --git a/Makefile.am b/Makefile.am
index dcfad03..769d24a 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -4364,7 +4364,7 @@ polkitpolicy_in_files += \
EXTRA_DIST += \
src/login/logind-gperf.gperf \
- src/login/libsystemd-login.pc.in \
+ src/compat-libs/libsystemd-login.pc.in \
src/login/71-seat.rules.in \
src/login/73-seat-late.rules.in \
units/systemd-logind.service.in \
@@ -4527,24 +4527,27 @@ clean-python:
-rm -f _daemon.la id128.la _journal.la login.la _reader.la
# ------------------------------------------------------------------------------
+if ENABLE_COMPAT_LIBS
+
define generate-fake-lib
$(AM_V_at)$(MKDIR_P) $(dir $@)
- $(AM_V_GEN)sed -r -n 's/^ +(sd_.*);/void new_\1(void);\n__asm__(".symver new_\1,\1 at LIBSYSTEMD_209");\nstatic void (*resolve_\1(void)) (void) {\n\treturn new_\1;\n}\nvoid \1(void) __attribute__((ifunc("resolve_\1")));\n/p' <$< >$@
+ $(AM_V_GEN)sed -r -n 's/^ +(sd_.*);/void new_\1(void);\n__asm__(".symver new_\1,\1 at LIBSYSTEMD_209");\nstatic void (*resolve_\1(void)) (void) {\n\treturn new_\1;\n}\nvoid \1(void) __attribute__((ifunc("resolve_\1")));\nobsolete_lib(\1,$(notdir $(basename $<)));\n/p' <$< >$@
endef
libsystemd_login_la_SOURCES = \
libsystemd-login.c \
- src/login/libsystemd-login.sym
+ src/compat-libs/libsystemd-login.sym
libsystemd_login_la_CFLAGS = \
$(AM_CFLAGS) \
-fvisibility=default \
+ -imacros $(top_srcdir)/src/compat-libs/linkwarning.h \
-fno-lto
libsystemd_login_la_LDFLAGS = \
$(AM_LDFLAGS) \
-version-info $(LIBSYSTEMD_LOGIN_CURRENT):$(LIBSYSTEMD_LOGIN_REVISION):$(LIBSYSTEMD_LOGIN_AGE) \
- -Wl,--version-script=$(top_srcdir)/src/login/libsystemd-login.sym
+ -Wl,--version-script=$(top_srcdir)/src/compat-libs/libsystemd-login.sym
libsystemd_login_la_LIBADD = \
libsystemd.la
@@ -4552,14 +4555,14 @@ libsystemd_login_la_LIBADD = \
BUILT_SOURCES += \
libsystemd-login.c
-libsystemd-login.c: src/login/libsystemd-login.sym
+libsystemd-login.c: src/compat-libs/libsystemd-login.sym
$(generate-fake-lib)
lib_LTLIBRARIES += \
libsystemd-login.la
pkgconfiglib_DATA += \
- src/login/libsystemd-login.pc
+ src/compat-libs/libsystemd-login.pc
# move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
libsystemd-login-install-hook:
@@ -4571,6 +4574,8 @@ libsystemd-login-uninstall-hook:
INSTALL_EXEC_HOOKS += libsystemd-login-install-hook
UNINSTALL_EXEC_HOOKS += libsystemd-login-uninstall-hook
+endif
+
# ------------------------------------------------------------------------------
substitutions = \
'|rootlibexecdir=$(rootlibexecdir)|' \
@@ -5007,7 +5012,7 @@ test-libsystemd-journal-sym.c: \
$(generate-sym-test)
test-libsystemd-login-sym.c: \
- src/login/libsystemd-login.sym \
+ src/compat-libs/libsystemd-login.sym \
src/systemd/sd-login.h
$(generate-sym-test)
@@ -5059,9 +5064,13 @@ tests += \
test-libsystemd-daemon-sym \
test-libsystemd-id128-sym \
test-libsystemd-journal-sym \
- test-libsystemd-login-sym \
test-libudev-sym
+if ENABLE_COMPAT_LIBS
+tests += \
+ test-libsystemd-login-sym
+endif
+
cppcheck:
cppcheck --enable=all -q $(top_srcdir)
diff --git a/configure.ac b/configure.ac
index 6c1ba7c..d92f1fe 100644
--- a/configure.ac
+++ b/configure.ac
@@ -259,6 +259,17 @@ AS_IF([test "x$enable_dbus" != "xno"], [
AM_CONDITIONAL(HAVE_DBUS, [test "$have_dbus" = "yes"])
# ------------------------------------------------------------------------------
+have_compat_libs=no
+AC_ARG_ENABLE([compat_libs], AS_HELP_STRING([--enable-compat-libs],[Enable creation of compatibility libraries]),
+ [case "${enableval}" in
+ yes) have_compat_libs=yes ;;
+ no) have_compat_libs=no ;;
+ *) AC_MSG_ERROR(bad value ${enableval} for --enable-compat-libs) ;;
+ esac],
+ [have_compat_libs=no])
+AM_CONDITIONAL([ENABLE_COMPAT_LIBS], [test "$have_compat_libs" = "yes"])
+
+# ------------------------------------------------------------------------------
have_coverage=no
AC_ARG_ENABLE(coverage, AS_HELP_STRING([--enable-coverage], [enable test coverage]))
if test "x$enable_coverage" = "xyes" ; then
@@ -1117,6 +1128,7 @@ AC_MSG_RESULT([
test coverage: ${have_coverage}
Split /usr: ${enable_split_usr}
SysV compatibility: ${SYSTEM_SYSV_COMPAT}
+ compatibility libraries: ${have_compat_libs}
prefix: ${prefix}
rootprefix: ${with_rootprefix}
diff --git a/src/compat-libs/.gitignore b/src/compat-libs/.gitignore
new file mode 100644
index 0000000..0b8d106
--- /dev/null
+++ b/src/compat-libs/.gitignore
@@ -0,0 +1 @@
+/libsystemd-login.pc
diff --git a/src/compat-libs/libsystemd-login.pc.in b/src/compat-libs/libsystemd-login.pc.in
new file mode 100644
index 0000000..677f6b6
--- /dev/null
+++ b/src/compat-libs/libsystemd-login.pc.in
@@ -0,0 +1,18 @@
+# This file is part of systemd.
+#
+# systemd is free software; you can redistribute it and/or modify it
+# under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2.1 of the License, or
+# (at your option) any later version.
+
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: systemd
+Description: systemd Login Utility Library deprecated compatibility library
+URL: @PACKAGE_URL@
+Version: @PACKAGE_VERSION@
+Libs: -L${libdir} -lsystemd
+Cflags: -I${includedir}
diff --git a/src/compat-libs/libsystemd-login.sym b/src/compat-libs/libsystemd-login.sym
new file mode 100644
index 0000000..54aa91c
--- /dev/null
+++ b/src/compat-libs/libsystemd-login.sym
@@ -0,0 +1,87 @@
+/***
+ This file is part of systemd.
+
+ systemd is free software; you can redistribute it and/or modify it
+ under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation; either version 2.1 of the License, or
+ (at your option) any later version.
+***/
+
+/* Original symbols from systemd v31 */
+
+LIBSYSTEMD_LOGIN_31 {
+global:
+ sd_get_seats;
+ sd_get_sessions;
+ sd_get_uids;
+ sd_login_monitor_flush;
+ sd_login_monitor_get_fd;
+ sd_login_monitor_new;
+ sd_login_monitor_unref;
+ sd_pid_get_owner_uid;
+ sd_pid_get_session;
+ sd_seat_can_multi_session;
+ sd_seat_get_active;
+ sd_seat_get_sessions;
+ sd_session_get_seat;
+ sd_session_get_uid;
+ sd_session_is_active;
+ sd_uid_get_seats;
+ sd_uid_get_sessions;
+ sd_uid_get_state;
+ sd_uid_is_on_seat;
+local:
+ *;
+};
+
+LIBSYSTEMD_LOGIN_38 {
+global:
+ sd_pid_get_unit;
+ sd_session_get_service;
+} LIBSYSTEMD_LOGIN_31;
+
+LIBSYSTEMD_LOGIN_43 {
+global:
+ sd_session_get_type;
+ sd_session_get_class;
+ sd_session_get_display;
+} LIBSYSTEMD_LOGIN_38;
+
+LIBSYSTEMD_LOGIN_186 {
+global:
+ sd_session_get_state;
+ sd_seat_can_tty;
+ sd_seat_can_graphical;
+} LIBSYSTEMD_LOGIN_43;
+
+LIBSYSTEMD_LOGIN_198 {
+global:
+ sd_session_get_tty;
+} LIBSYSTEMD_LOGIN_186;
+
+LIBSYSTEMD_LOGIN_201 {
+global:
+ sd_login_monitor_get_events;
+ sd_login_monitor_get_timeout;
+} LIBSYSTEMD_LOGIN_198;
+
+LIBSYSTEMD_LOGIN_202 {
+global:
+ sd_pid_get_user_unit;
+ sd_pid_get_machine_name;
+} LIBSYSTEMD_LOGIN_201;
+
+LIBSYSTEMD_LOGIN_203 {
+global:
+ sd_get_machine_names;
+} LIBSYSTEMD_LOGIN_202;
+
+LIBSYSTEMD_LOGIN_205 {
+global:
+ sd_pid_get_slice;
+} LIBSYSTEMD_LOGIN_203;
+
+LIBSYSTEMD_LOGIN_207 {
+global:
+ sd_session_get_vt;
+} LIBSYSTEMD_LOGIN_205;
diff --git a/src/compat-libs/linkwarning.h b/src/compat-libs/linkwarning.h
new file mode 100644
index 0000000..b6a6ac2
--- /dev/null
+++ b/src/compat-libs/linkwarning.h
@@ -0,0 +1,34 @@
+/***
+ This file is part of systemd, but is heavily based on
+ glibc's libc-symbols.h.
+
+ Copyright (C) 1995-1998,2000-2006,2008,2009 Free Software Foundation, Inc
+
+ systemd is free software; you can redistribute it and/or modify it
+ under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation; either version 2.1 of the License, or
+ (at your option) any later version.
+
+ systemd is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public License
+ along with systemd; If not, see <http://www.gnu.org/licenses/>.
+***/
+
+
+#define __make_section_unallocated(section_string) \
+ asm (".section " section_string "\n\t.previous");
+
+#define __sec_comment "\n#APP\n\t#"
+
+#define link_warning(symbol, msg) \
+ __make_section_unallocated (".gnu.warning." #symbol) \
+ static const char __evoke_link_warning_##symbol[] \
+ __attribute__ ((used, section (".gnu.warning." #symbol __sec_comment))) \
+ = msg
+
+#define obsolete_lib(name, lib) \
+ link_warning(name, #name " was moved to libsystemd. Do not use " #lib ".")
diff --git a/src/login/.gitignore b/src/login/.gitignore
index d3840c7..5c0b2ac 100644
--- a/src/login/.gitignore
+++ b/src/login/.gitignore
@@ -1,4 +1,3 @@
-/libsystemd-login.pc
/logind-gperf.c
/org.freedesktop.login1.policy
/71-seat.rules
diff --git a/src/login/libsystemd-login.pc.in b/src/login/libsystemd-login.pc.in
deleted file mode 100644
index 7b2a724..0000000
--- a/src/login/libsystemd-login.pc.in
+++ /dev/null
@@ -1,18 +0,0 @@
-# This file is part of systemd.
-#
-# systemd is free software; you can redistribute it and/or modify it
-# under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or
-# (at your option) any later version.
-
-prefix=@prefix@
-exec_prefix=@exec_prefix@
-libdir=@libdir@
-includedir=@includedir@
-
-Name: systemd
-Description: systemd Login Utility Library
-URL: @PACKAGE_URL@
-Version: @PACKAGE_VERSION@
-Libs: -L${libdir} -lsystemd-login
-Cflags: -I${includedir}
diff --git a/src/login/libsystemd-login.sym b/src/login/libsystemd-login.sym
deleted file mode 100644
index 54aa91c..0000000
--- a/src/login/libsystemd-login.sym
+++ /dev/null
@@ -1,87 +0,0 @@
-/***
- This file is part of systemd.
-
- systemd is free software; you can redistribute it and/or modify it
- under the terms of the GNU Lesser General Public License as published by
- the Free Software Foundation; either version 2.1 of the License, or
- (at your option) any later version.
-***/
-
-/* Original symbols from systemd v31 */
-
-LIBSYSTEMD_LOGIN_31 {
-global:
- sd_get_seats;
- sd_get_sessions;
- sd_get_uids;
- sd_login_monitor_flush;
- sd_login_monitor_get_fd;
- sd_login_monitor_new;
- sd_login_monitor_unref;
- sd_pid_get_owner_uid;
- sd_pid_get_session;
- sd_seat_can_multi_session;
- sd_seat_get_active;
- sd_seat_get_sessions;
- sd_session_get_seat;
- sd_session_get_uid;
- sd_session_is_active;
- sd_uid_get_seats;
- sd_uid_get_sessions;
- sd_uid_get_state;
- sd_uid_is_on_seat;
-local:
- *;
-};
-
-LIBSYSTEMD_LOGIN_38 {
-global:
- sd_pid_get_unit;
- sd_session_get_service;
-} LIBSYSTEMD_LOGIN_31;
-
-LIBSYSTEMD_LOGIN_43 {
-global:
- sd_session_get_type;
- sd_session_get_class;
- sd_session_get_display;
-} LIBSYSTEMD_LOGIN_38;
-
-LIBSYSTEMD_LOGIN_186 {
-global:
- sd_session_get_state;
- sd_seat_can_tty;
- sd_seat_can_graphical;
-} LIBSYSTEMD_LOGIN_43;
-
-LIBSYSTEMD_LOGIN_198 {
-global:
- sd_session_get_tty;
-} LIBSYSTEMD_LOGIN_186;
-
-LIBSYSTEMD_LOGIN_201 {
-global:
- sd_login_monitor_get_events;
- sd_login_monitor_get_timeout;
-} LIBSYSTEMD_LOGIN_198;
-
-LIBSYSTEMD_LOGIN_202 {
-global:
- sd_pid_get_user_unit;
- sd_pid_get_machine_name;
-} LIBSYSTEMD_LOGIN_201;
-
-LIBSYSTEMD_LOGIN_203 {
-global:
- sd_get_machine_names;
-} LIBSYSTEMD_LOGIN_202;
-
-LIBSYSTEMD_LOGIN_205 {
-global:
- sd_pid_get_slice;
-} LIBSYSTEMD_LOGIN_203;
-
-LIBSYSTEMD_LOGIN_207 {
-global:
- sd_session_get_vt;
-} LIBSYSTEMD_LOGIN_205;
commit 242465b5bfcc2ea1b1d704907e7dd5f1c15d4404
Author: Zbigniew JÄdrzejewski-Szmek <zbyszek at in.waw.pl>
Date: Sat Jan 25 17:24:19 2014 -0500
build-sys: disable lto for compatibility libraries
https://sourceware.org/bugzilla/show_bug.cgi?id=16504
diff --git a/Makefile.am b/Makefile.am
index 53707d9..dcfad03 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -4538,7 +4538,8 @@ libsystemd_login_la_SOURCES = \
libsystemd_login_la_CFLAGS = \
$(AM_CFLAGS) \
- -fvisibility=default
+ -fvisibility=default \
+ -fno-lto
libsystemd_login_la_LDFLAGS = \
$(AM_LDFLAGS) \
commit 0bba8d6eb74466bc708a4453130b99b5b4e0254c
Author: Zbigniew JÄdrzejewski-Szmek <zbyszek at in.waw.pl>
Date: Sun Jan 19 00:12:20 2014 -0500
build-sys: merge libsystemd-login into libsystemd
A compatibility libsystemd-login library is created which uses
.symver and ifunc magic proposed by Lennart to make programs linked
to the old library name continue to work seamlessly.
Unfortunately the bfd linker crashes:
https://sourceware.org/bugzilla/show_bug.cgi?id=16467
This will be fixed in binutils 2.25.
As a work-around, gold can be used:
LDFLAGS=-Wl,-fuse-ld=gold
Unfortunately the switch to pick the linker appeared in gcc 4.8.
This also doesn't work with LLVM:
http://llvm.org/bugs/show_bug.cgi?id=11897
diff --git a/.gitignore b/.gitignore
index b706ab9..36b91b4 100644
--- a/.gitignore
+++ b/.gitignore
@@ -33,6 +33,7 @@
/hostnamectl
/install-tree
/journalctl
+/libsystemd-login.c
/libtool
/localectl
/loginctl
diff --git a/Makefile.am b/Makefile.am
index 6c4f834..53707d9 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -44,7 +44,7 @@ LIBGUDEV_REVISION=3
LIBGUDEV_AGE=1
LIBSYSTEMD_LOGIN_CURRENT=9
-LIBSYSTEMD_LOGIN_REVISION=1
+LIBSYSTEMD_LOGIN_REVISION=2
LIBSYSTEMD_LOGIN_AGE=9
LIBSYSTEMD_DAEMON_CURRENT=0
@@ -1804,14 +1804,7 @@ systemctl_LDADD = \
libsystemd-units.la \
libsystemd-label.la \
libsystemd-internal.la \
- libsystemd-logs.la
-
-if ENABLE_LOGIND
-systemctl_LDADD += \
- libsystemd-login-internal.la
-endif
-
-systemctl_LDADD += \
+ libsystemd-logs.la \
libsystemd-journal-internal.la \
libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
@@ -1986,6 +1979,7 @@ libsystemd_la_SOURCES = \
src/systemd/sd-event.h \
src/systemd/sd-rtnl.h \
src/systemd/sd-resolve.h \
+ src/systemd/sd-login.h \
src/libsystemd/sd-bus/sd-bus.c \
src/libsystemd/sd-bus/bus-control.c \
src/libsystemd/sd-bus/bus-control.h \
@@ -2032,7 +2026,10 @@ libsystemd_la_SOURCES = \
src/libsystemd/sd-rtnl/rtnl-util.h \
src/libsystemd/sd-rtnl/rtnl-util.c \
src/libsystemd/sd-resolve/sd-resolve.c \
- src/libsystemd/sd-resolve/resolve-util.h
+ src/libsystemd/sd-resolve/resolve-util.h \
+ src/login/sd-login.c \
+ src/login/login-shared.c \
+ src/login/login-shared.h
nodist_libsystemd_la_SOURCES = \
src/libsystemd/sd-bus/bus-error-mapping.c
@@ -3272,11 +3269,6 @@ libsystemd_journal_core_la_LIBADD = \
libsystemd-id128-internal.la \
libsystemd-shared.la
-if ENABLE_LOGIND
-libsystemd_journal_core_la_LIBADD += \
- libsystemd-login-internal.la
-endif
-
if HAVE_ACL
libsystemd_journal_core_la_LIBADD += \
libsystemd-acl.la
@@ -3474,12 +3466,8 @@ systemd_coredump_SOURCES = \
systemd_coredump_LDADD = \
libsystemd-journal-internal.la \
libsystemd-label.la \
- libsystemd-shared.la
-
-if ENABLE_LOGIND
-systemd_coredump_LDADD += \
- libsystemd-login-internal.la
-endif
+ libsystemd-shared.la \
+ libsystemd-internal.la
rootlibexec_PROGRAMS += \
systemd-coredump
@@ -4242,14 +4230,14 @@ test_login_SOURCES = \
src/login/test-login.c
test_login_LDADD = \
- libsystemd-login-internal.la \
+ libsystemd-internal.la \
libsystemd-shared.la
test_login_shared_SOURCES = \
src/login/test-login-shared.c
test_login_shared_LDADD = \
- libsystemd-login-internal.la \
+ libsystemd-internal.la \
libsystemd-shared.la
test_inhibit_SOURCES = \
@@ -4275,29 +4263,6 @@ tests += \
test-login-tables \
test-login-shared
-libsystemd_login_la_SOURCES = \
- src/login/libsystemd-login.sym \
- src/login/sd-login.c \
- src/systemd/sd-login.h \
- src/login/login-shared.c \
- src/login/login-shared.h
-
-libsystemd_login_la_CFLAGS = \
- $(AM_CFLAGS) \
- -fvisibility=hidden
-
-libsystemd_login_la_LDFLAGS = \
- $(AM_LDFLAGS) \
- -version-info $(LIBSYSTEMD_LOGIN_CURRENT):$(LIBSYSTEMD_LOGIN_REVISION):$(LIBSYSTEMD_LOGIN_AGE) \
- -Wl,--version-script=$(top_srcdir)/src/login/libsystemd-login.sym
-
-libsystemd_login_la_LIBADD = \
- libsystemd-daemon-internal.la \
- libsystemd-shared.la
-
-libsystemd_login_internal_la_SOURCES = \
- $(libsystemd_login_la_SOURCES)
-
if HAVE_PAM
pam_systemd_la_SOURCES = \
src/login/pam-module.c
@@ -4330,16 +4295,6 @@ dist_pamconf_DATA = \
src/login/systemd-user
endif
-# move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
-libsystemd-login-install-hook:
- libname=libsystemd-login.so && $(move-to-rootlibdir)
-
-libsystemd-login-uninstall-hook:
- rm -f $(DESTDIR)$(rootlibdir)/libsystemd-login.so*
-
-INSTALL_EXEC_HOOKS += libsystemd-login-install-hook
-UNINSTALL_EXEC_HOOKS += libsystemd-login-uninstall-hook
-
nodist_systemunit_DATA += \
units/systemd-logind.service \
units/systemd-user-sessions.service
@@ -4360,15 +4315,6 @@ dist_pkgsysconf_DATA += \
pkginclude_HEADERS += \
src/systemd/sd-login.h
-lib_LTLIBRARIES += \
- libsystemd-login.la
-
-noinst_LTLIBRARIES += \
- libsystemd-login-internal.la
-
-pkgconfiglib_DATA += \
- src/login/libsystemd-login.pc
-
polkitpolicy_files += \
src/login/org.freedesktop.login1.policy
@@ -4536,7 +4482,7 @@ login_la_LDFLAGS = \
login_la_LIBADD = \
$(PYTHON_DEVEL_LIBS) \
libsystemd-journal.la \
- libsystemd-login.la \
+ libsystemd.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
@@ -4581,6 +4527,50 @@ clean-python:
-rm -f _daemon.la id128.la _journal.la login.la _reader.la
# ------------------------------------------------------------------------------
+define generate-fake-lib
+ $(AM_V_at)$(MKDIR_P) $(dir $@)
+ $(AM_V_GEN)sed -r -n 's/^ +(sd_.*);/void new_\1(void);\n__asm__(".symver new_\1,\1 at LIBSYSTEMD_209");\nstatic void (*resolve_\1(void)) (void) {\n\treturn new_\1;\n}\nvoid \1(void) __attribute__((ifunc("resolve_\1")));\n/p' <$< >$@
+endef
+
+libsystemd_login_la_SOURCES = \
+ libsystemd-login.c \
+ src/login/libsystemd-login.sym
+
+libsystemd_login_la_CFLAGS = \
+ $(AM_CFLAGS) \
+ -fvisibility=default
+
+libsystemd_login_la_LDFLAGS = \
+ $(AM_LDFLAGS) \
+ -version-info $(LIBSYSTEMD_LOGIN_CURRENT):$(LIBSYSTEMD_LOGIN_REVISION):$(LIBSYSTEMD_LOGIN_AGE) \
+ -Wl,--version-script=$(top_srcdir)/src/login/libsystemd-login.sym
+
+libsystemd_login_la_LIBADD = \
+ libsystemd.la
+
+BUILT_SOURCES += \
+ libsystemd-login.c
+
+libsystemd-login.c: src/login/libsystemd-login.sym
+ $(generate-fake-lib)
+
+lib_LTLIBRARIES += \
+ libsystemd-login.la
+
+pkgconfiglib_DATA += \
+ src/login/libsystemd-login.pc
+
+# move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
+libsystemd-login-install-hook:
+ libname=libsystemd-login.so && $(move-to-rootlibdir)
+
+libsystemd-login-uninstall-hook:
+ rm -f $(DESTDIR)$(rootlibdir)/libsystemd-login.so*
+
+INSTALL_EXEC_HOOKS += libsystemd-login-install-hook
+UNINSTALL_EXEC_HOOKS += libsystemd-login-uninstall-hook
+
+# ------------------------------------------------------------------------------
substitutions = \
'|rootlibexecdir=$(rootlibexecdir)|' \
'|rootbindir=$(rootbindir)|' \
@@ -4996,7 +4986,8 @@ endef
test-libsystemd-sym.c: \
src/libsystemd/libsystemd.sym \
src/systemd/sd-bus.h \
- src/systemd/sd-utf8.h
+ src/systemd/sd-utf8.h \
+ src/systemd/sd-login.h
$(generate-sym-test)
test-libsystemd-daemon-sym.c: \
diff --git a/src/libsystemd/libsystemd.sym b/src/libsystemd/libsystemd.sym
index e2e917e..9b10604 100644
--- a/src/libsystemd/libsystemd.sym
+++ b/src/libsystemd/libsystemd.sym
@@ -9,6 +9,67 @@
LIBSYSTEMD_209 {
global:
+
+ /* originally LIBSYSTEMD_LOGIN_31 */
+ sd_get_seats;
+ sd_get_sessions;
+ sd_get_uids;
+ sd_login_monitor_flush;
+ sd_login_monitor_get_fd;
+ sd_login_monitor_new;
+ sd_login_monitor_unref;
+ sd_pid_get_owner_uid;
+ sd_pid_get_session;
+ sd_seat_can_multi_session;
+ sd_seat_get_active;
+ sd_seat_get_sessions;
+ sd_session_get_seat;
+ sd_session_get_uid;
+ sd_session_is_active;
+ sd_uid_get_seats;
+ sd_uid_get_sessions;
+ sd_uid_get_state;
+ sd_uid_is_on_seat;
+
+ /* originally LIBSYSTEMD_LOGIN_38 */
+ sd_pid_get_unit;
+ sd_session_get_service;
+
+ /* originally LIBSYSTEMD_LOGIN_43 */
+ sd_session_get_type;
+ sd_session_get_class;
+ sd_session_get_display;
+
+ /* originally LIBSYSTEMD_LOGIN_186 */
+ sd_session_get_state;
+ sd_seat_can_tty;
+ sd_seat_can_graphical;
+
+ /* originally LIBSYSTEMD_LOGIN_198 */
+ sd_session_get_tty;
+
+ /* originally LIBSYSTEMD_LOGIN_201 */
+ sd_login_monitor_get_events;
+ sd_login_monitor_get_timeout;
+
+ /* originally LIBSYSTEMD_LOGIN_202 */
+ sd_pid_get_user_unit;
+ sd_pid_get_machine_name;
+
+ /* originally LIBSYSTEMD_LOGIN_203 */
+ sd_get_machine_names;
+
+ /* originally LIBSYSTEMD_LOGIN_205 */
+ sd_pid_get_slice;
+
+ /* originally LIBSYSTEMD_LOGIN_207 */
+ sd_session_get_vt;
+
+ /* new in LIBSYSTEMD_LOGIN_209 */
+ sd_session_is_remote;
+ sd_session_get_remote_user;
+ sd_session_get_remote_host;
+
/* Same order as in sd-bus.h should be used */
/* Connections */
diff --git a/src/login/libsystemd-login.sym b/src/login/libsystemd-login.sym
index 1d33982..54aa91c 100644
--- a/src/login/libsystemd-login.sym
+++ b/src/login/libsystemd-login.sym
@@ -85,10 +85,3 @@ LIBSYSTEMD_LOGIN_207 {
global:
sd_session_get_vt;
} LIBSYSTEMD_LOGIN_205;
-
-LIBSYSTEMD_LOGIN_209 {
-global:
- sd_session_is_remote;
- sd_session_get_remote_user;
- sd_session_get_remote_host;
-} LIBSYSTEMD_LOGIN_207;
commit 39c4ead2323b45bbe9866e0f97fd8dcfb8a0bede
Author: Zbigniew JÄdrzejewski-Szmek <zbyszek at in.waw.pl>
Date: Tue Jan 21 20:38:49 2014 -0500
build-sys: default to gold linker
gold doesn't exhibit the problems with linking of compatibility
libraries.
It is also slightly faster:
make clean && make -j5 bfd gold
real 34.885s 33.707s
user 34.486s 32.189s
sys 9.929s 10.845s
real 35.128s 33.508s
user 34.660s 31.858s
sys 10.798s 10.341s
real 35.405s 33.748s
user 34.765s 32.384s
sys 11.635s 10.998s
real 35.250s 33.795s
user 34.704s 32.253s
sys 11.220s 11.469s
touch src/libsystemd/sd-bus.c && make -j5
bfd gold
real 10.224s 9.030s
user 11.664s 9.877s
sys 3.431s 2.878s
real 10.021s 9.165s
user 11.526s 9.990s
sys 3.061s 3.015s
real 10.233s 8.961s
user 11.657s 9.973s
sys 3.467s 2.202s
real 10.160s 9.086s
user 11.637s 9.950s
sys 3.188s 2.859s
diff --git a/README b/README
index 0548e6a..509b45f 100644
--- a/README
+++ b/README
@@ -108,6 +108,8 @@ REQUIREMENTS:
libpython (optional)
make, gcc, and similar tools
+ To sucessfully use --compat-libs, gcc >= 4.8 seems necessary.
+
During runtime, you need the following additional
dependencies:
diff --git a/configure.ac b/configure.ac
index 939ba6d..6c1ba7c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -175,7 +175,8 @@ CC_CHECK_FLAGS_APPEND([with_ldflags], [LDFLAGS], [\
-Wl,--no-undefined \
-Wl,--gc-sections \
-Wl,-z,relro \
- -Wl,-z,now])
+ -Wl,-z,now \
+ -Wl,-fuse-ld=gold])
AC_SUBST([OUR_LDFLAGS], "$with_ldflags $address_sanitizer_ldflags")
AC_CHECK_SIZEOF(pid_t)
More information about the systemd-commits
mailing list