chiark / gitweb /
util: introduce our own gperf based capability list
[elogind.git] / Makefile.am
index d3abda1f43a6df90cd77b93285c2cf1a5a5c6093..23210ff33edb09a03297c15caf6042bd297762da 100644 (file)
@@ -385,6 +385,7 @@ rootlibexec_PROGRAMS = \
        systemd-remount-fs \
        systemd-reply-password \
        systemd-fsck \
+       systemd-machine-id-commit \
        systemd-ac-power \
        systemd-sysctl \
        systemd-sleep \
@@ -536,6 +537,7 @@ nodist_systemunit_DATA = \
        units/systemd-kexec.service \
        units/systemd-fsck@.service \
        units/systemd-fsck-root.service \
+       units/systemd-machine-id-commit.service \
        units/systemd-udevd.service \
        units/systemd-udev-trigger.service \
        units/systemd-udev-settle.service \
@@ -588,7 +590,8 @@ EXTRA_DIST += \
        units/user/systemd-exit.service.in \
        units/systemd-fsck@.service.in \
        units/systemd-fsck-root.service.in \
-       units/user@.service.in \
+       units/systemd-machine-id-commit.service.in \
+       units/user@.service.m4.in \
        units/debug-shell.service.in \
        units/systemd-suspend.service.in \
        units/quotaon.service.in \
@@ -739,6 +742,8 @@ noinst_LTLIBRARIES += \
        libsystemd-shared.la
 
 libsystemd_shared_la_SOURCES = \
+       src/shared/capability.c \
+       src/shared/capability.h \
        src/shared/linux/auto_dev-ioctl.h \
        src/shared/ioprio.h \
        src/shared/missing.h \
@@ -809,6 +814,7 @@ libsystemd_shared_la_SOURCES = \
        src/shared/socket-util.h \
        src/shared/in-addr-util.c \
        src/shared/in-addr-util.h \
+       src/shared/ether-addr-util.h \
        src/shared/conf-files.c \
        src/shared/conf-files.h \
        src/shared/cgroup-util.c \
@@ -857,12 +863,12 @@ libsystemd_shared_la_SOURCES = \
        src/shared/af-list.h \
        src/shared/arphrd-list.c \
        src/shared/arphrd-list.h \
+       src/shared/cap-list.c \
+       src/shared/cap-list.h \
        src/shared/audit.c \
        src/shared/audit.h \
        src/shared/xml.c \
        src/shared/xml.h \
-       src/shared/condition.c \
-       src/shared/condition.h \
        src/shared/bus-label.c \
        src/shared/bus-label.h \
        src/shared/gpt.h \
@@ -899,7 +905,9 @@ nodist_libsystemd_shared_la_SOURCES = \
        src/shared/af-from-name.h \
        src/shared/af-to-name.h \
        src/shared/arphrd-from-name.h \
-       src/shared/arphrd-to-name.h
+       src/shared/arphrd-to-name.h \
+       src/shared/cap-from-name.h \
+       src/shared/cap-to-name.h
 
 libsystemd_shared_la_CFLAGS = \
        $(AM_CFLAGS) \
@@ -945,6 +953,8 @@ libsystemd_label_la_SOURCES = \
        src/shared/dev-setup.h \
        src/shared/dropin.c \
        src/shared/dropin.h \
+       src/shared/condition.c \
+       src/shared/condition.h \
        src/shared/generator.h \
        src/shared/generator.c
 
@@ -991,21 +1001,6 @@ libsystemd_logs_la_SOURCES = \
        src/shared/logs-show.c \
        src/shared/logs-show.h
 
-# ------------------------------------------------------------------------------
-noinst_LTLIBRARIES += \
-       libsystemd-capability.la
-
-libsystemd_capability_la_SOURCES = \
-       src/shared/capability.c \
-       src/shared/capability.h
-
-libsystemd_capability_la_CFLAGS = \
-       $(AM_CFLAGS) \
-       $(CAP_CFLAGS)
-
-libsystemd_capability_la_LIBADD = \
-       $(CAP_LIBS)
-
 # ------------------------------------------------------------------------------
 if HAVE_ACL
 noinst_LTLIBRARIES += \
@@ -1134,6 +1129,8 @@ libsystemd_core_la_SOURCES = \
        src/core/machine-id-setup.h \
        src/core/mount-setup.c \
        src/core/mount-setup.h \
+       src/core/kmod-setup.c \
+       src/core/kmod-setup.h \
        src/core/loopback-setup.h \
        src/core/loopback-setup.c \
        src/core/namespace.c \
@@ -1149,12 +1146,6 @@ libsystemd_core_la_SOURCES = \
        src/core/failure-action.c \
        src/core/failure-action.h
 
-if HAVE_KMOD
-libsystemd_core_la_SOURCES += \
-       src/core/kmod-setup.c \
-       src/core/kmod-setup.h
-endif
-
 nodist_libsystemd_core_la_SOURCES = \
        src/core/load-fragment-gperf.c \
        src/core/load-fragment-gperf-nulstr.c
@@ -1163,14 +1154,13 @@ libsystemd_core_la_CFLAGS = \
        $(AM_CFLAGS) \
        $(PAM_CFLAGS) \
        $(AUDIT_CFLAGS) \
-       $(CAP_CFLAGS) \
        $(KMOD_CFLAGS) \
        $(APPARMOR_CFLAGS) \
        $(SECCOMP_CFLAGS) \
+       $(MOUNT_CFLAGS) \
        -pthread
 
 libsystemd_core_la_LIBADD = \
-       libsystemd-capability.la \
        libsystemd-units.la \
        libsystemd-label.la \
        libudev-internal.la \
@@ -1178,10 +1168,10 @@ libsystemd_core_la_LIBADD = \
        libsystemd-internal.la \
        $(PAM_LIBS) \
        $(AUDIT_LIBS) \
-       $(CAP_LIBS) \
        $(KMOD_LIBS) \
        $(APPARMOR_LIBS) \
-       $(SECCOMP_LIBS)
+       $(SECCOMP_LIBS) \
+       $(MOUNT_LIBS)
 
 if HAVE_SECCOMP
 libsystemd_core_la_LIBADD += \
@@ -1205,8 +1195,10 @@ CLEANFILES += \
        src/shared/af-from-name.gperf \
        src/shared/arphrd-list.txt \
        src/shared/arphrd-from-name.gperf \
-       src/shared/dns_type-list.txt \
-       src/shared/dns_type-from-name.gperf
+       src/shared/cap-list.txt \
+       src/shared/cap-from-name.gperf \
+       src/resolve/dns_type-list.txt \
+       src/resolve/dns_type-from-name.gperf
 
 BUILT_SOURCES += \
        src/shared/errno-from-name.h \
@@ -1215,6 +1207,8 @@ BUILT_SOURCES += \
        src/shared/af-to-name.h \
        src/shared/arphrd-from-name.h \
        src/shared/arphrd-to-name.h \
+       src/shared/cap-from-name.h \
+       src/shared/cap-to-name.h \
        src/resolve/dns_type-from-name.h \
        src/resolve/dns_type-to-name.h
 
@@ -1240,6 +1234,7 @@ src/shared/af-list.txt:
 src/shared/af-to-name.h: src/shared/af-list.txt
        $(AM_V_GEN)$(AWK) 'BEGIN{ print "static const char* const af_names[] = { "} !/AF_FILE/ && !/AF_ROUTE/ && !/AF_LOCAL/ { printf "[%s] = \"%s\",\n", $$1, $$1 } END{print "};"}' <$< >$@
 
+
 src/shared/arphrd-list.txt:
        $(AM_V_at)$(MKDIR_P) $(dir $@)
        $(AM_V_GEN)$(CPP) $(CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) -dM -include net/if_arp.h - </dev/null | $(AWK) '/^#define[ \t]+ARPHRD_[^ \t]+[ \t]+[^ \t]/ { print $$2; }' | sed -e 's/ARPHRD_//' >$@
@@ -1251,6 +1246,20 @@ src/shared/arphrd-from-name.gperf: src/shared/arphrd-list.txt
        $(AM_V_GEN)$(AWK) 'BEGIN{ print "struct arphrd_name { const char* name; int id; };"; print "%null-strings"; print "%%";} { printf "%s, ARPHRD_%s\n", $$1, $$1 }' <$< >$@
 
 
+src/shared/cap-list.txt:
+       $(AM_V_at)$(MKDIR_P) $(dir $@)
+       $(AM_V_GEN)$(CPP) $(CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) -dM -include linux/capability.h -include missing.h - </dev/null | $(AWK) '/^#define[ \t]+CAP_[A-Z_]+[ \t]+/ { print $$2; }' | grep -v CAP_LAST_CAP >$@
+
+src/shared/cap-to-name.h: src/shared/cap-list.txt
+       $(AM_V_GEN)$(AWK) 'BEGIN{ print "static const char* const capability_names[] = { "} { printf "[%s] = \"%s\",\n", $$1, $$1 } END{print "};"}' <$< >$@
+
+src/shared/cap-from-name.gperf: src/shared/cap-list.txt
+       $(AM_V_GEN)$(AWK) 'BEGIN{ print "struct capability_name { const char* name; int id; };"; print "%null-strings"; print "%%";} { printf "%s, %s\n", $$1, $$1 }' <$< >$@
+
+src/shared/cap-from-name.h: src/shared/cap-from-name.gperf
+       $(AM_V_GPERF)$(GPERF) -L ANSI-C -t --ignore-case -N lookup_capability -H hash_capability_name -p -C <$< >$@
+
+
 src/resolve/dns_type-list.txt: src/resolve/dns-type.h
        $(AM_V_at)$(MKDIR_P) $(dir $@)
        $(AM_V_GEN)$(SED) -n -r 's/.* DNS_TYPE_(\w+).*/\1/p' <$< >$@
@@ -1366,7 +1375,9 @@ tests += \
        test-uid-range \
        test-bus-policy \
        test-locale-util \
-       test-copy
+       test-execute \
+       test-copy \
+       test-cap-list
 
 EXTRA_DIST += \
        test/a.service \
@@ -1399,10 +1410,47 @@ EXTRA_DIST += \
        test/testsuite.target \
        test/timers.target \
        test/unstoppable.service \
+       test/path-changed.service \
+       test/path-directorynotempty.service \
+       test/path-existsglob.service \
+       test/path-exists.service \
+       test/path-makedirectory.service \
+       test/path-modified.service \
+       test/path-mycustomunit.service \
+       test/path-service.service \
+       test/path-changed.path \
+       test/path-directorynotempty.path \
+       test/path-existsglob.path \
+       test/path-exists.path \
+       test/path-makedirectory.path \
+       test/path-modified.path \
+       test/path-unit.path \
+       test/exec-environment-empty.service \
+       test/exec-environment-multiple.service \
+       test/exec-environment.service \
+       test/exec-group.service \
+       test/exec-ignoresigpipe-no.service \
+       test/exec-ignoresigpipe-yes.service \
+       test/exec-personality-x86-64.service \
+       test/exec-personality-x86.service \
+       test/exec-privatedevices-no.service \
+       test/exec-privatedevices-yes.service \
+       test/exec-privatetmp-no.service \
+       test/exec-privatetmp-yes.service \
+       test/exec-systemcallerrornumber.service \
+       test/exec-systemcallfilter-failing2.service \
+       test/exec-systemcallfilter-failing.service \
+       test/exec-systemcallfilter-not-failing2.service \
+       test/exec-systemcallfilter-not-failing.service \
+       test/exec-user.service \
+       test/exec-workingdirectory.service \
        test/bus-policy/hello.conf \
        test/bus-policy/methods.conf \
        test/bus-policy/ownerships.conf \
-       test/bus-policy/signals.conf
+       test/bus-policy/signals.conf \
+       test/bus-policy/check-own-rules.conf \
+       test/bus-policy/many-rules.conf \
+       test/bus-policy/test.conf
 
 
 EXTRA_DIST += \
@@ -1501,8 +1549,7 @@ test_capability_SOURCES = \
        src/test/test-capability.c
 
 test_capability_LDADD = \
-       libsystemd-shared.la \
-       libsystemd-capability.la
+       libsystemd-shared.la
 
 test_async_SOURCES = \
        src/test/test-async.c
@@ -1526,10 +1573,9 @@ test_condition_SOURCES = \
        src/test/test-condition.c
 
 test_condition_LDADD = \
-       libsystemd-shared.la \
+       libsystemd-label.la \
        libsystemd-internal.la \
-       libsystemd-capability.la \
-       libsystemd-label.la
+       libsystemd-shared.la
 
 test_fdset_SOURCES = \
        src/test/test-fdset.c
@@ -1557,6 +1603,12 @@ test_uid_range_SOURCES = \
 test_uid_range_LDADD = \
        libsystemd-shared.la
 
+test_cap_list_SOURCES = \
+       src/test/test-cap-list.c
+
+test_cap_list_LDADD = \
+       libsystemd-shared.la
+
 test_socket_util_SOURCES = \
        src/test/test-socket-util.c
 
@@ -1823,6 +1875,15 @@ test_path_CFLAGS = \
 test_path_LDADD = \
        libsystemd-core.la
 
+test_execute_SOURCES = \
+       src/test/test-execute.c
+
+test_execute_CFLAGS = \
+       $(AM_CFLAGS)
+
+test_execute_LDADD = \
+       libsystemd-core.la
+
 test_strxcpyx_SOURCES = \
        src/test/test-strxcpyx.c
 
@@ -1870,7 +1931,6 @@ test_bus_policy_SOURCES = \
        src/bus-proxyd/bus-policy.h
 
 test_bus_policy_LDADD = \
-       libsystemd-capability.la \
        libsystemd-internal.la \
        libsystemd-shared.la
 
@@ -2029,7 +2089,6 @@ systemd_tmpfiles_SOURCES = \
 systemd_tmpfiles_LDADD = \
        libsystemd-units.la \
        libsystemd-label.la \
-       libsystemd-capability.la \
        libsystemd-internal.la \
        libsystemd-shared.la
 
@@ -2050,7 +2109,6 @@ nodist_tmpfiles_DATA = \
 dist_tmpfiles_DATA = \
        tmpfiles.d/systemd.conf \
        tmpfiles.d/systemd-nologin.conf \
-       tmpfiles.d/systemd-remote.conf \
        tmpfiles.d/tmp.conf \
        tmpfiles.d/x11.conf \
        tmpfiles.d/var.conf
@@ -2092,7 +2150,6 @@ systemd_sysusers_SOURCES = \
 systemd_sysusers_LDADD = \
        libsystemd-units.la \
        libsystemd-label.la \
-       libsystemd-capability.la \
        libsystemd-internal.la \
        libsystemd-shared.la
 
@@ -2106,8 +2163,7 @@ SYSINIT_TARGET_WANTS += \
        systemd-sysusers.service
 
 dist_sysusers_DATA = \
-       sysusers.d/systemd.conf \
-       sysusers.d/systemd-remote.conf
+       sysusers.d/systemd.conf
 
 nodist_sysusers_DATA = \
        sysusers.d/basic.conf
@@ -2141,7 +2197,6 @@ systemd_firstboot_SOURCES = \
 systemd_firstboot_LDADD = \
        libsystemd-units.la \
        libsystemd-label.la \
-       libsystemd-capability.la \
        libsystemd-internal.la \
        libsystemd-shared.la \
        -lcrypt
@@ -2193,6 +2248,20 @@ systemd_fsck_LDADD = \
        libudev-internal.la \
        libsystemd-shared.la
 
+# ------------------------------------------------------------------------------
+systemd_machine_id_commit_SOURCES = \
+       src/machine-id-commit/machine-id-commit.c \
+       src/core/machine-id-setup.c \
+       src/core/machine-id-setup.h
+
+systemd_machine_id_commit_LDADD = \
+       libsystemd-label.la \
+       libsystemd-internal.la \
+       libsystemd-shared.la
+
+SYSINIT_TARGET_WANTS += \
+       systemd-machine-id-commit.service
+
 # ------------------------------------------------------------------------------
 systemd_ac_power_SOURCES = \
        src/ac-power/ac-power.c
@@ -2484,7 +2553,6 @@ systemd_nspawn_CFLAGS = \
 
 systemd_nspawn_LDADD = \
        libsystemd-label.la \
-       libsystemd-capability.la \
        libsystemd-internal.la \
        libudev-internal.la \
        libsystemd-shared.la \
@@ -2502,7 +2570,6 @@ systemd_run_SOURCES = \
 
 systemd_run_LDADD = \
        libsystemd-label.la \
-       libsystemd-capability.la \
        libsystemd-internal.la \
        libsystemd-shared.la
 
@@ -2513,7 +2580,6 @@ systemd_bus_proxyd_SOURCES = \
        src/bus-proxyd/bus-policy.h
 
 systemd_bus_proxyd_LDADD = \
-       libsystemd-capability.la \
        libsystemd-internal.la \
        libsystemd-shared.la
 
@@ -2543,9 +2609,16 @@ dist_userunit_DATA += \
 endif
 
 EXTRA_DIST += \
-       units/systemd-bus-proxyd@.service.in \
+       units/systemd-bus-proxyd@.service.m4.in \
        units/user/systemd-bus-proxyd@.service.in
 
+if HAVE_SMACK
+bus-proxyd-set-cap-hook:
+       -$(SETCAP) cap_mac_admin+ei $(DESTDIR)$(rootlibexecdir)/systemd-bus-proxyd
+
+INSTALL_EXEC_HOOKS += bus-proxyd-set-cap-hook
+endif
+
 # ------------------------------------------------------------------------------
 systemd_tty_ask_password_agent_SOURCES = \
        src/tty-ask-password-agent/tty-ask-password-agent.c
@@ -2657,10 +2730,6 @@ libsystemd_dump_la_SOURCES = \
        src/libsystemd/sd-bus/bus-dump.c \
        src/libsystemd/sd-bus/bus-dump.h
 
-libsystemd_dump_la_CFLAGS = \
-       $(AM_CFLAGS) \
-       $(CAP_CFLAGS)
-
 noinst_LTLIBRARIES += \
        libsystemd-dump.la
 
@@ -2750,6 +2819,7 @@ tests += \
        test-bus-gvariant \
        test-event \
        test-rtnl \
+       test-local-addresses \
        test-resolve
 
 bin_PROGRAMS += \
@@ -2759,19 +2829,16 @@ test_bus_marshal_SOURCES = \
        src/libsystemd/sd-bus/test-bus-marshal.c
 
 test_bus_marshal_LDADD = \
+       libsystemd-dump.la \
        libsystemd-internal.la \
        libsystemd-shared.la \
-       libsystemd-dump.la \
-       libsystemd-capability.la \
        $(GLIB_LIBS) \
-       $(DBUS_LIBS) \
-       $(CAP_LIBS)
+       $(DBUS_LIBS)
 
 test_bus_marshal_CFLAGS = \
        $(AM_CFLAGS) \
        $(GLIB_CFLAGS) \
-       $(DBUS_CFLAGS) \
-       $(CAP_CFLAGS)
+       $(DBUS_CFLAGS)
 
 test_bus_signature_SOURCES = \
        src/libsystemd/sd-bus/test-bus-signature.c
@@ -2818,15 +2885,12 @@ test_bus_objects_SOURCES = \
 
 test_bus_objects_CFLAGS = \
        $(AM_CFLAGS) \
-       $(CAP_CFLAGS) \
        -pthread
 
 test_bus_objects_LDADD = \
-       libsystemd-internal.la \
-       libsystemd-shared.la \
        libsystemd-dump.la \
-       libsystemd-capability.la \
-       $(CAP_LIBS)
+       libsystemd-internal.la \
+       libsystemd-shared.la
 
 test_bus_error_SOURCES = \
        src/libsystemd/sd-bus/test-bus-error.c
@@ -2839,26 +2903,22 @@ test_bus_gvariant_SOURCES = \
        src/libsystemd/sd-bus/test-bus-gvariant.c
 
 test_bus_gvariant_LDADD = \
+       libsystemd-dump.la \
        libsystemd-internal.la \
        libsystemd-shared.la \
-       libsystemd-dump.la \
-       libsystemd-capability.la \
-       $(GLIB_LIBS) \
-       $(CAP_LIBS)
+       $(GLIB_LIBS)
 
 test_bus_gvariant_CFLAGS = \
        $(AM_CFLAGS) \
        $(GLIB_CFLAGS)
-       $(CAP_CFLAGS)
 
 test_bus_creds_SOURCES = \
        src/libsystemd/sd-bus/test-bus-creds.c
 
 test_bus_creds_LDADD = \
-       libsystemd-internal.la \
-       libsystemd-shared.la \
        libsystemd-dump.la \
-       libsystemd-capability.la
+       libsystemd-internal.la \
+       libsystemd-shared.la
 
 test_bus_match_SOURCES = \
        src/libsystemd/sd-bus/test-bus-match.c
@@ -2871,15 +2931,9 @@ test_bus_kernel_SOURCES = \
        src/libsystemd/sd-bus/test-bus-kernel.c
 
 test_bus_kernel_LDADD = \
-       libsystemd-internal.la \
-       libsystemd-shared.la \
        libsystemd-dump.la \
-       libsystemd-capability.la \
-       $(CAP_LIBS)
-
-test_bus_kernel_CFLAGS = \
-       $(AM_CFLAGS) \
-       $(CAP_CFLAGS)
+       libsystemd-internal.la \
+       libsystemd-shared.la
 
 test_bus_kernel_bloom_SOURCES = \
        src/libsystemd/sd-bus/test-bus-kernel-bloom.c
@@ -2899,15 +2953,9 @@ test_bus_zero_copy_SOURCES = \
        src/libsystemd/sd-bus/test-bus-zero-copy.c
 
 test_bus_zero_copy_LDADD = \
-       libsystemd-internal.la \
-       libsystemd-shared.la \
        libsystemd-dump.la \
-       libsystemd-capability.la \
-       $(CAP_LIBS)
-
-test_bus_zero_copy_CFLAGS = \
-       $(AM_CFLAGS) \
-       $(CAP_CFLAGS)
+       libsystemd-internal.la \
+       libsystemd-shared.la
 
 test_bus_introspect_SOURCES = \
        src/libsystemd/sd-bus/test-bus-introspect.c
@@ -2930,6 +2978,13 @@ test_rtnl_LDADD = \
        libsystemd-internal.la \
        libsystemd-shared.la
 
+test_local_addresses_SOURCES = \
+       src/libsystemd/sd-rtnl/test-local-addresses.c
+
+test_local_addresses_LDADD = \
+       libsystemd-internal.la \
+       libsystemd-shared.la
+
 test_resolve_SOURCES = \
        src/libsystemd/sd-resolve/test-resolve.c
 
@@ -2943,18 +2998,14 @@ test_resolve_CFLAGS = \
        -pthread
 
 busctl_SOURCES = \
-       src/libsystemd/sd-bus/busctl.c
+       src/libsystemd/sd-bus/busctl.c \
+       src/libsystemd/sd-bus/busctl-introspect.c \
+       src/libsystemd/sd-bus/busctl-introspect.h
 
 busctl_LDADD = \
-       libsystemd-internal.la \
-       libsystemd-shared.la \
        libsystemd-dump.la \
-       libsystemd-capability.la \
-       $(CAP_LIBS)
-
-busctl_CFLAGS = \
-       $(AM_CFLAGS) \
-       $(CAP_CFLAGS)
+       libsystemd-internal.la \
+       libsystemd-shared.la
 
 # ------------------------------------------------------------------------------
 noinst_LTLIBRARIES += \
@@ -3334,6 +3385,7 @@ dist_udevrules_DATA += \
        rules/50-udev-default.rules \
        rules/60-drm.rules \
        rules/60-keyboard.rules \
+       rules/70-mouse.rules \
        rules/60-persistent-storage-tape.rules \
        rules/60-persistent-serial.rules \
        rules/60-persistent-input.rules \
@@ -3360,7 +3412,8 @@ dist_udevhwdb_DATA = \
        hwdb/20-acpi-vendor.hwdb \
        hwdb/20-OUI.hwdb \
        hwdb/20-net-ifname.hwdb \
-       hwdb/60-keyboard.hwdb
+       hwdb/60-keyboard.hwdb \
+       hwdb/70-mouse.hwdb
 
 udevconfdir = $(sysconfdir)/udev
 dist_udevconf_DATA = \
@@ -3500,8 +3553,7 @@ systemd_udevd_SOURCES = \
        src/udev/udevd.c
 
 systemd_udevd_LDADD = \
-       libudev-core.la \
-       libsystemd-capability.la
+       libudev-core.la
 
 udevadm_SOURCES = \
        src/udev/udevadm.c \
@@ -3512,11 +3564,12 @@ udevadm_SOURCES = \
        src/udev/udevadm-settle.c \
        src/udev/udevadm-trigger.c \
        src/udev/udevadm-test.c \
-       src/udev/udevadm-test-builtin.c
+       src/udev/udevadm-test-builtin.c \
+       src/udev/udevadm-util.c \
+       src/udev/udevadm-util.h
 
 udevadm_LDADD = \
-       libudev-core.la \
-       libsystemd-capability.la
+       libudev-core.la
 
 # Update hwdb on installation. Do not bother if installing
 # in DESTDIR, since this is likely for packaging purposes.
@@ -3551,7 +3604,6 @@ test_udev_SOURCES = \
 
 test_udev_LDADD = \
        libudev-core.la  \
-       libsystemd-capability.la \
        $(BLKID_LIBS) \
        $(KMOD_LIBS) \
        $(SELINUX_LIBS)
@@ -3886,6 +3938,16 @@ systemd_journal_remote_CFLAGS = \
 systemd_journal_remote_LDADD += \
        $(MICROHTTPD_LIBS)
 
+if ENABLE_SYSUSERS
+dist_sysusers_DATA += \
+       sysusers.d/systemd-remote.conf
+endif
+
+if ENABLE_TMPFILES
+dist_tmpfiles_DATA += \
+       tmpfiles.d/systemd-remote.conf
+endif
+
 if HAVE_GNUTLS
 systemd_journal_remote_LDADD += \
        $(GNUTLS_LIBS)
@@ -4101,7 +4163,6 @@ nodist_libsystemd_journal_core_la_SOURCES = \
 libsystemd_journal_core_la_LIBADD = \
        libsystemd-journal-internal.la \
        libudev-internal.la \
-       libsystemd-capability.la \
        libsystemd-label.la \
        libsystemd-internal.la \
        libsystemd-shared.la
@@ -4454,14 +4515,18 @@ rootlibexec_PROGRAMS += \
 nodist_systemunit_DATA += \
        units/systemd-vconsole-setup.service
 
-dist_udevrules_DATA += \
+nodist_udevrules_DATA += \
        src/vconsole/90-vconsole.rules
 
 SYSINIT_TARGET_WANTS += \
        systemd-vconsole-setup.service
+
+CLEANFILES += \
+       src/vconsole/90-vconsole.rules
 endif
 
 EXTRA_DIST += \
+       src/vconsole/90-vconsole.rules.in \
        units/systemd-vconsole-setup.service.in
 
 # ------------------------------------------------------------------------------
@@ -4483,6 +4548,15 @@ rootlibexec_PROGRAMS += \
 
 dist_pkgsysconf_DATA += \
        src/bootchart/bootchart.conf
+
+nodist_systemunit_DATA += \
+       units/systemd-bootchart.service
+
+EXTRA_DIST += \
+       units/systemd-bootchart.service.in
+
+CLEANFILES += \
+       units/systemd-bootchart.service
 endif
 
 # ------------------------------------------------------------------------------
@@ -4679,7 +4753,12 @@ systemd_localed_SOURCES = \
 systemd_localed_LDADD = \
        libsystemd-label.la \
        libsystemd-internal.la \
-       libsystemd-shared.la
+       libsystemd-shared.la \
+       $(XKBCOMMON_LIBS)
+
+systemd_localed_CFLAGS = \
+       $(AM_CFLAGS) \
+       $(XKBCOMMON_CFLAGS)
 
 nodist_systemunit_DATA += \
        units/systemd-localed.service
@@ -4818,7 +4897,6 @@ systemd_timesyncd_LDADD = \
        libsystemd-resolve.la \
        libsystemd-network.la \
        libsystemd-label.la \
-       libsystemd-capability.la \
        libsystemd-internal.la \
        libsystemd-shared.la \
        -lm
@@ -5019,7 +5097,6 @@ CLEANFILES += \
        src/resolve/resolved-gperf.c
 
 systemd_resolved_LDADD = \
-       libsystemd-capability.la \
        libsystemd-network.la \
        libsystemd-label.la \
        libsystemd-internal.la \
@@ -5072,7 +5149,6 @@ test_dns_domain_SOURCES = \
        src/resolve/test-dns-domain.c
 
 test_dns_domain_LDADD = \
-       libsystemd-capability.la \
        libsystemd-network.la \
        libsystemd-label.la \
        libsystemd-internal.la \
@@ -5136,8 +5212,7 @@ systemd_networkd_SOURCES = \
        src/network/networkd.c
 
 systemd_networkd_LDADD = \
-       libsystemd-networkd-core.la \
-       libsystemd-capability.la
+       libsystemd-networkd-core.la
 
 noinst_LTLIBRARIES += \
        libsystemd-networkd-core.la
@@ -5225,8 +5300,7 @@ test_network_SOURCES = \
        src/network/test-network.c
 
 test_network_LDADD = \
-       libsystemd-networkd-core.la \
-       libsystemd-capability.la
+       libsystemd-networkd-core.la
 
 test_network_tables_SOURCES = \
        src/network/test-network-tables.c \
@@ -5297,7 +5371,6 @@ libsystemd_logind_core_la_SOURCES = \
 
 libsystemd_logind_core_la_LIBADD = \
        libsystemd-label.la \
-       libsystemd-capability.la \
        libsystemd-internal.la \
        libudev-internal.la \
        libsystemd-shared.la
@@ -5406,7 +5479,6 @@ pam_systemd_la_LDFLAGS = \
        -Wl,--version-script=$(top_srcdir)/src/login/pam_systemd.sym
 
 pam_systemd_la_LIBADD = \
-       libsystemd-capability.la \
        libsystemd-internal.la \
        libsystemd-shared.la \
        $(PAM_LIBS)
@@ -5860,6 +5932,10 @@ src/%: src/%.m4
        $(AM_V_at)$(MKDIR_P) $(dir $@)
        $(AM_V_M4)$(M4) -P $(M4_DEFINES) < $< > $@
 
+sysusers.d/%: sysusers.d/%.m4
+       $(AM_V_at)$(MKDIR_P) $(dir $@)
+       $(AM_V_M4)$(M4) -P $(M4_DEFINES) < $< > $@
+
 tmpfiles.d/%: tmpfiles.d/%.m4
        $(AM_V_at)$(MKDIR_P) $(dir $@)
        $(AM_V_M4)$(M4) -P $(M4_DEFINES) < $< > $@