chiark / gitweb /
gpt-auto-generator: add basic auto-discovery of GPT partitions
[elogind.git] / Makefile.am
index f1dfeedf583946949faefc28fadcc1614c9cb231..c19d596120a1ae122fa98799f1ca73c0535b5b42 100644 (file)
@@ -31,8 +31,11 @@ SUBDIRS = . po
 # keep intermediate files
 .SECONDARY:
 
+# Keep the test-suite.log
+.PRECIOUS: $(TEST_SUITE_LOG) Makefile
+
 LIBUDEV_CURRENT=4
-LIBUDEV_REVISION=6
+LIBUDEV_REVISION=7
 LIBUDEV_AGE=3
 
 LIBGUDEV_CURRENT=1
@@ -40,7 +43,7 @@ LIBGUDEV_REVISION=3
 LIBGUDEV_AGE=1
 
 LIBSYSTEMD_LOGIN_CURRENT=8
-LIBSYSTEMD_LOGIN_REVISION=0
+LIBSYSTEMD_LOGIN_REVISION=1
 LIBSYSTEMD_LOGIN_AGE=8
 
 LIBSYSTEMD_DAEMON_CURRENT=0
@@ -48,11 +51,11 @@ LIBSYSTEMD_DAEMON_REVISION=10
 LIBSYSTEMD_DAEMON_AGE=0
 
 LIBSYSTEMD_ID128_CURRENT=0
-LIBSYSTEMD_ID128_REVISION=23
+LIBSYSTEMD_ID128_REVISION=24
 LIBSYSTEMD_ID128_AGE=0
 
 LIBSYSTEMD_JOURNAL_CURRENT=11
-LIBSYSTEMD_JOURNAL_REVISION=0
+LIBSYSTEMD_JOURNAL_REVISION=1
 LIBSYSTEMD_JOURNAL_AGE=11
 
 # Dirs of external packages
@@ -65,6 +68,7 @@ pkgconfigdatadir=$(datadir)/pkgconfig
 pkgconfiglibdir=$(libdir)/pkgconfig
 polkitpolicydir=$(datadir)/polkit-1/actions
 bashcompletiondir=@bashcompletiondir@
+zshcompletiondir=@zshcompletiondir@
 rpmmacrosdir=$(prefix)/lib/rpm/macros.d
 sysvinitdir=$(SYSTEM_SYSVINIT_PATH)
 sysvrcnddir=$(SYSTEM_SYSVRCND_PATH)
@@ -78,9 +82,9 @@ userunitdir=$(prefix)/lib/systemd/user
 userpresetdir=$(prefix)/lib/systemd/user-preset
 tmpfilesdir=$(prefix)/lib/tmpfiles.d
 sysctldir=$(prefix)/lib/sysctl.d
-usergeneratordir=$(prefix)/lib/systemd/user-generators
 pkgincludedir=$(includedir)/systemd
 systemgeneratordir=$(rootlibexecdir)/system-generators
+usergeneratordir=$(prefix)/lib/systemd/user-generators
 systemshutdowndir=$(rootlibexecdir)/system-shutdown
 systemsleepdir=$(rootlibexecdir)/system-sleep
 systemunitdir=$(rootprefix)/lib/systemd/system
@@ -165,6 +169,7 @@ AM_CPPFLAGS = \
        -DUDEVLIBEXECDIR=\"$(udevlibexecdir)\" \
        -DPOLKIT_AGENT_BINARY_PATH=\"$(bindir)/pkttyagent\" \
        -DQUOTACHECK=\"$(QUOTACHECK)\" \
+       -DKEXEC=\"$(KEXEC)\" \
        -I $(top_srcdir)/src \
        -I $(top_srcdir)/src/shared \
        -I $(top_srcdir)/src/login \
@@ -311,7 +316,6 @@ rootlibexec_PROGRAMS = \
        systemd-remount-fs \
        systemd-reply-password \
        systemd-fsck \
-       systemd-timestamp \
        systemd-ac-power \
        systemd-sysctl \
        systemd-sleep
@@ -336,7 +340,17 @@ dist_bashcompletion_DATA = \
        shell-completion/bash/journalctl \
        shell-completion/bash/systemctl \
        shell-completion/bash/systemd-analyze \
-       shell-completion/bash/udevadm
+       shell-completion/bash/udevadm \
+       shell-completion/bash/kernel-install
+
+dist_zshcompletion_DATA = \
+       shell-completion/zsh/_systemctl \
+       shell-completion/zsh/_journalctl \
+       shell-completion/zsh/_udevadm \
+       shell-completion/zsh/_kernel-install \
+       shell-completion/zsh/_systemd-nspawn \
+       shell-completion/zsh/_systemd-analyze \
+       shell-completion/zsh/_systemd
 
 dist_sysctl_DATA = \
        sysctl.d/50-default.conf
@@ -606,7 +620,7 @@ EXTRA_DIST += \
        $(XML_FILES) \
        $(HTML_FILES) \
        $(HTML_ALIAS) \
-       $(dist_MANS) \
+       $(man_MANS) \
        make-man-index.py \
        make-directive-index.py \
        xml_helper.py
@@ -748,6 +762,7 @@ libsystemd_label_la_SOURCES = \
        src/shared/selinux-util.c \
        src/shared/selinux-util.h \
        src/shared/mkdir.c \
+       src/shared/mkdir-label.c \
        src/shared/mkdir.h \
        src/shared/ask-password-api.c \
        src/shared/ask-password-api.h \
@@ -1389,6 +1404,44 @@ test_sched_prio_LDADD = \
        libsystemd-core.la \
        libsystemd-daemon.la
 
+# ------------------------------------------------------------------------------
+## .PHONY so it always rebuilds it
+.PHONY: coverage lcov-run lcov-report
+
+# run lcov from scratch, always
+coverage:
+       $(MAKE) lcov-run
+       $(MAKE) lcov-report
+
+coverage_dir = coverage
+coverage_opts = --base-directory $(srcdir) --directory $(builddir) --rc 'geninfo_adjust_src_path=$(abspath $(srcdir))=>$(abspath $(builddir))'
+
+if ENABLE_COVERAGE
+# reset run coverage tests
+lcov-run:
+       @rm -rf $(coverage_dir)
+       lcov $(coverage_opts) --zerocounters
+       -$(MAKE) check
+
+# generate report based on current coverage data
+lcov-report:
+       $(MKDIR_P) $(coverage_dir)
+       lcov $(coverage_opts) --compat-libtool --capture --no-external \
+               | sed 's|$(abspath $(builddir))|$(abspath $(srcdir))|' > $(coverage_dir)/.lcov.info
+       genhtml -t "systemd test coverage" -o $(coverage_dir) $(coverage_dir)/.lcov.info
+       @echo "Coverage report generated in $(abs_builddir)/$(coverage_dir)/index.html"
+
+# lcov doesn't work properly with vpath builds, make sure that bad
+# output is not uploaded by mistake.
+coverage-sync: coverage
+       test "$(builddir)" = "$(srcdir)"
+       rsync -rlv --delete --omit-dir-times coverage/ $(www_target)/coverage
+
+else
+lcov-run lcov-report:
+       echo "Need to reconfigure with --enable-coverage"
+endif
+
 # ------------------------------------------------------------------------------
 systemd_initctl_SOURCES = \
        src/initctl/initctl.c
@@ -1513,6 +1566,9 @@ SYSINIT_TARGET_WANTS += \
        systemd-tmpfiles-setup-dev.service \
        systemd-tmpfiles-setup.service
 
+dist_zshcompletion_DATA += \
+       shell-completion/zsh/_systemd-tmpfiles
+
 TIMERS_TARGET_WANTS += \
        systemd-tmpfiles-clean.timer
 
@@ -1564,13 +1620,6 @@ systemd_fsck_LDADD = \
        libsystemd-dbus.la \
        libudev.la
 
-# ------------------------------------------------------------------------------
-systemd_timestamp_SOURCES = \
-       src/timestamp/timestamp.c
-
-systemd_timestamp_LDADD = \
-       libsystemd-shared.la
-
 # ------------------------------------------------------------------------------
 systemd_ac_power_SOURCES = \
        src/ac-power/ac-power.c
@@ -1653,6 +1702,24 @@ bin_PROGRAMS += \
        bootctl
 endif
 
+# ------------------------------------------------------------------------------
+systemgenerator_PROGRAMS +=  \
+       systemd-gpt-auto-generator
+
+systemd_gpt_auto_generator_SOURCES = \
+       src/gpt-auto-generator/gpt-auto-generator.c
+
+systemd_gpt_auto_generator_LDADD = \
+       libsystemd-label.la \
+       libsystemd-shared.la \
+       libsystemd-id128-internal.la \
+       libudev-private.la \
+       $(BLKID_LIBS)
+
+systemd_gpt_auto_generator_CFLAGS = \
+       $(AM_CFLAGS) \
+       $(BLKID_CFLAGS)
+
 # ------------------------------------------------------------------------------
 systemd_rc_local_generator_SOURCES = \
        src/rc-local-generator/rc-local-generator.c
@@ -1799,6 +1866,9 @@ libsystemd_daemon_la_LDFLAGS = \
        -version-info $(LIBSYSTEMD_DAEMON_CURRENT):$(LIBSYSTEMD_DAEMON_REVISION):$(LIBSYSTEMD_DAEMON_AGE) \
        -Wl,--version-script=$(top_srcdir)/src/libsystemd-daemon/libsystemd-daemon.sym
 
+libsystemd_daemon_la_LIBADD =  \
+       $(RT_LIBS)
+
 pkginclude_HEADERS += \
        src/systemd/sd-daemon.h
 
@@ -2038,6 +2108,7 @@ libudev_la_LIBADD = \
        libsystemd-shared.la \
        libsystemd-label.la \
        libsystemd-daemon-internal.la \
+       $(RT_LIBS) \
        libsystemd-id128-internal.la
 
 pkgconfiglib_DATA += \
@@ -2115,7 +2186,8 @@ dist_udevhwdb_DATA = \
        hwdb/20-usb-classes.hwdb \
        hwdb/20-bluetooth-vendor-product.hwdb \
        hwdb/20-acpi-vendor.hwdb \
-       hwdb/20-OUI.hwdb
+       hwdb/20-OUI.hwdb \
+       hwdb/60-keyboard.hwdb
 
 udevconfdir = $(sysconfdir)/udev
 dist_udevconf_DATA = \
@@ -2208,6 +2280,7 @@ libudev_core_la_LIBADD = \
        libudev-private.la \
        libsystemd-label.la \
        libsystemd-daemon-internal.la \
+       $(RT_LIBS) \
        libsystemd-shared.la \
        $(BLKID_LIBS) \
        $(KMOD_LIBS)
@@ -2563,140 +2636,6 @@ EXTRA_DIST += \
        src/gudev/seed-example-enum.js \
        src/gudev/seed-example.js
 
-# ------------------------------------------------------------------------------
-if ENABLE_KEYMAP
-keymap_SOURCES = \
-       src/udev/keymap/keymap.c
-
-keymap_CPPFLAGS = \
-       $(AM_CPPFLAGS) -I src/udev/keymap
-
-keymap_LDADD = \
-       libsystemd-shared.la
-
-nodist_keymap_SOURCES = \
-       src/udev/keymap/keys-from-name.h \
-       src/udev/keymap/keys-to-name.h
-
-BUILT_SOURCES += \
-       $(nodist_keymap_SOURCES)
-
-udevlibexec_PROGRAMS += \
-       keymap
-
-dist_doc_DATA += \
-       src/udev/keymap/README.keymap.txt
-
-dist_udevrules_DATA += \
-       src/udev/keymap/95-keymap.rules \
-       src/udev/keymap/95-keyboard-force-release.rules
-
-dist_udevhome_SCRIPTS = \
-       src/udev/keymap/findkeyboards \
-       src/udev/keymap/keyboard-force-release.sh
-
-TESTS += \
-       src/udev/keymap/check-keymaps.sh
-
-CLEANFILES += \
-       src/udev/keymap/keys.txt \
-       src/udev/keymap/keys-from-name.gperf \
-       src/udev/keymap/keyboard-force-release.sh
-
-udevkeymapdir = $(udevlibexecdir)/keymaps
-dist_udevkeymap_DATA = \
-       keymaps/acer \
-       keymaps/acer-aspire_5720 \
-       keymaps/acer-aspire_8930 \
-       keymaps/acer-aspire_5920g \
-       keymaps/acer-aspire_6920 \
-       keymaps/acer-travelmate_c300 \
-       keymaps/asus \
-       keymaps/compaq-e_evo \
-       keymaps/dell \
-       keymaps/dell-latitude-xt2 \
-       keymaps/everex-xt5000 \
-       keymaps/fujitsu-amilo_li_2732 \
-       keymaps/fujitsu-amilo_pa_2548 \
-       keymaps/fujitsu-amilo_pro_edition_v3505 \
-       keymaps/fujitsu-amilo_pro_v3205 \
-       keymaps/fujitsu-amilo_si_1520 \
-       keymaps/fujitsu-esprimo_mobile_v5 \
-       keymaps/fujitsu-esprimo_mobile_v6 \
-       keymaps/genius-slimstar-320 \
-       keymaps/hewlett-packard \
-       keymaps/hewlett-packard-2510p_2530p \
-       keymaps/hewlett-packard-compaq_elitebook \
-       keymaps/hewlett-packard-pavilion \
-       keymaps/hewlett-packard-presario-2100 \
-       keymaps/hewlett-packard-tablet \
-       keymaps/hewlett-packard-tx2 \
-       keymaps/hewlett-packard_elitebook-8440p \
-       keymaps/hewlett-packard_elitebook-8460p \
-       keymaps/hewlett-packard-hdx9494nr \
-       keymaps/ibm-thinkpad-usb-keyboard-trackpoint \
-       keymaps/inventec-symphony_6.0_7.0 \
-       keymaps/lenovo-3000 \
-       keymaps/lenovo-ideapad \
-       keymaps/lenovo-thinkpad-usb-keyboard-trackpoint \
-       keymaps/lenovo-thinkpad_x6_tablet \
-       keymaps/lenovo-thinkpad_x200_tablet \
-       keymaps/lg-x110 \
-       keymaps/logitech-usb \
-       keymaps/logitech-wave \
-       keymaps/logitech-wave-cordless \
-       keymaps/logitech-wave-pro-cordless \
-       keymaps/maxdata-pro_7000 \
-       keymaps/medion-fid2060 \
-       keymaps/medionnb-a555 \
-       keymaps/micro-star \
-       keymaps/module-ibm \
-       keymaps/module-lenovo \
-       keymaps/module-sony \
-       keymaps/module-sony-old \
-       keymaps/module-sony-vgn \
-       keymaps/module-sony-vpc \
-       keymaps/olpc-xo \
-       keymaps/onkyo \
-       keymaps/oqo-model2 \
-       keymaps/samsung-other \
-       keymaps/samsung-series-9 \
-       keymaps/samsung-series-3 \
-       keymaps/samsung-sq1us \
-       keymaps/samsung-sx20s \
-       keymaps/toshiba-satellite_a100 \
-       keymaps/toshiba-satellite_a110 \
-       keymaps/toshiba-satellite_m30x \
-       keymaps/zepto-znote
-
-udevkeymapforcereldir = $(udevlibexecdir)/keymaps/force-release
-dist_udevkeymapforcerel_DATA = \
-       keymaps-force-release/dell-touchpad \
-       keymaps-force-release/dell-xps \
-       keymaps-force-release/hp-other \
-       keymaps-force-release/samsung-other \
-       keymaps-force-release/samsung-series-9 \
-       keymaps-force-release/samsung-series-3 \
-       keymaps-force-release/common-volume-keys
-
-src/udev/keymap/keys.txt: Makefile
-       $(AM_V_at)$(MKDIR_P) $(dir $@)
-       $(AM_V_GEN)$(CPP) $(CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) -dM -include linux/input.h - < /dev/null | $(AWK) '/^#define[ \t]+KEY_[^ ]+[ \t]+[0-9]/ { if ($$2 != "KEY_MAX") { print $$2 } }' | sed 's/^KEY_COFFEE$$/KEY_SCREENLOCK/' > $@
-
-src/udev/keymap/keys-from-name.gperf: src/udev/keymap/keys.txt Makefile
-       $(AM_V_GEN)$(AWK) 'BEGIN{ print "struct key { const char* name; unsigned short id; };"; print "%null-strings"; print "%%";} { print $$1 ", " $$1 }' < $< > $@
-
-src/udev/keymap/keys-from-name.h: src/udev/keymap/keys-from-name.gperf Makefile
-       $(AM_V_GPERF)$(GPERF) -L ANSI-C -t --ignore-case -N lookup_key -H hash_key_name -p -C < $< > $@
-
-src/udev/keymap/keys-to-name.h: src/udev/keymap/keys.txt Makefile
-       $(AM_V_GEN)$(AWK) 'BEGIN{ print "const char* const key_names[KEY_CNT] = { "} { print "[" $$1 "] = \"" $$1 "\"," } END{print "};"}' < $< > $@
-endif
-
-EXTRA_DIST += \
-       src/udev/keymap/check-keymaps.sh \
-       src/udev/keymap/keyboard-force-release.sh.in
-
 # ------------------------------------------------------------------------------
 mtd_probe_SOURCES =  \
        src/udev/mtd_probe/mtd_probe.c \
@@ -2728,7 +2667,8 @@ libsystemd_id128_la_LDFLAGS = \
 libsystemd_id128_la_LIBADD = \
        libsystemd-shared.la \
        libsystemd-label.la \
-       libsystemd-daemon-internal.la
+       libsystemd-daemon-internal.la \
+       $(RT_LIBS)
 
 libsystemd_id128_internal_la_SOURCES = \
        $(libsystemd_id128_la_SOURCES)
@@ -2875,6 +2815,15 @@ test_journal_stream_LDADD = \
        libsystemd-journal-internal.la \
        libsystemd-id128-internal.la
 
+test_journal_init_SOURCES = \
+       src/journal/test-journal-init.c
+
+test_journal_init_LDADD = \
+       libsystemd-shared.la \
+       libsystemd-daemon-internal.la \
+       $(RT_LIBS) \
+       libsystemd-journal.la
+
 test_journal_verify_SOURCES = \
        src/journal/test-journal-verify.c
 
@@ -2939,6 +2888,7 @@ libsystemd_journal_la_LIBADD = \
        libsystemd-shared.la \
        libsystemd-label.la \
        libsystemd-daemon-internal.la \
+       $(RT_LIBS) \
        libsystemd-id128-internal.la
 
 libsystemd_journal_internal_la_SOURCES = \
@@ -3065,6 +3015,7 @@ tests += \
        test-journal-syslog \
        test-journal-match \
        test-journal-stream \
+       test-journal-init \
        test-journal-verify \
        test-journal-interleaving \
        test-mmap-cache \
@@ -3184,7 +3135,9 @@ systemd_coredumpctl_SOURCES = \
 
 systemd_coredumpctl_LDADD = \
        libsystemd-shared.la \
-       libsystemd-journal.la
+       libsystemd-journal.la \
+       libsystemd-journal-internal.la \
+       libsystemd-id128-internal.la
 
 bin_PROGRAMS += \
        systemd-coredumpctl
@@ -3192,6 +3145,9 @@ bin_PROGRAMS += \
 dist_bashcompletion_DATA += \
        shell-completion/bash/systemd-coredumpctl
 
+dist_zshcompletion_DATA += \
+       shell-completion/zsh/_systemd-coredumpctl
+
 sysctl_DATA = \
        sysctl.d/50-coredump.conf
 
@@ -3452,6 +3408,9 @@ bin_PROGRAMS += \
 dist_bashcompletion_DATA += \
        shell-completion/bash/hostnamectl
 
+dist_zshcompletion_DATA += \
+       shell-completion/zsh/_hostnamectl
+
 endif
 
 polkitpolicy_in_files += \
@@ -3528,6 +3487,9 @@ bin_PROGRAMS += \
 dist_bashcompletion_DATA += \
        shell-completion/bash/localectl
 
+dist_zshcompletion_DATA += \
+       shell-completion/zsh/_localectl
+
 endif
 
 polkitpolicy_in_files += \
@@ -3597,6 +3559,9 @@ bin_PROGRAMS += \
 
 dist_bashcompletion_DATA += \
        shell-completion/bash/timedatectl
+
+dist_zshcompletion_DATA += \
+       shell-completion/zsh/_timedatectl
 endif
 
 polkitpolicy_in_files += \
@@ -3705,6 +3670,9 @@ dist_dbussystemservice_DATA += \
 dist_dbuspolicy_DATA += \
        src/machine/org.freedesktop.machine1.conf
 
+dist_zshcompletion_DATA += \
+       shell-completion/zsh/_machinectl
+
 SYSTEM_UNIT_ALIASES += \
        systemd-machined.service dbus-org.freedesktop.machine1.service
 
@@ -3803,6 +3771,10 @@ rootbin_PROGRAMS += \
 dist_bashcompletion_DATA += \
        shell-completion/bash/loginctl
 
+dist_zshcompletion_DATA += \
+       shell-completion/zsh/_loginctl \
+       shell-completion/zsh/_systemd-inhibit
+
 systemd_inhibit_SOURCES = \
        src/login/inhibit.c
 
@@ -3866,7 +3838,8 @@ libsystemd_login_la_LDFLAGS = \
 
 libsystemd_login_la_LIBADD = \
        libsystemd-shared.la \
-       libsystemd-daemon-internal.la
+       libsystemd-daemon-internal.la \
+       $(RT_LIBS)
 
 libsystemd_login_internal_la_SOURCES = \
        $(libsystemd_login_la_SOURCES)
@@ -3894,6 +3867,7 @@ pam_systemd_la_LIBADD = \
        libsystemd-dbus.la \
        libsystemd-shared.la \
        libsystemd-daemon-internal.la \
+       $(RT_LIBS) \
        $(PAM_LIBS)
 
 pamlib_LTLIBRARIES = \
@@ -4002,7 +3976,7 @@ _journal_la_SOURCES = \
 _journal_la_CFLAGS = \
        $(AM_CFLAGS) \
        -fvisibility=default \
-       $(PYTHON_CFLAGS)
+       $(PYTHON_DEVEL_CFLAGS)
 
 _journal_la_LDFLAGS = \
        $(AM_LDFLAGS) \
@@ -4011,7 +3985,7 @@ _journal_la_LDFLAGS = \
        -avoid-version
 
 _journal_la_LIBADD = \
-       $(PYTHON_LIBS) \
+       $(PYTHON_DEVEL_LIBS) \
        libsystemd-journal.la
 
 id128_la_SOURCES = \
@@ -4023,7 +3997,7 @@ id128_la_SOURCES = \
 id128_la_CFLAGS = \
        $(AM_CFLAGS) \
        -fvisibility=default \
-       $(PYTHON_CFLAGS) \
+       $(PYTHON_DEVEL_CFLAGS) \
        -I$(top_builddir)/src/python-systemd
 
 id128_la_LDFLAGS = \
@@ -4033,7 +4007,7 @@ id128_la_LDFLAGS = \
        -avoid-version
 
 id128_la_LIBADD = \
-       $(PYTHON_LIBS) \
+       $(PYTHON_DEVEL_LIBS) \
        libsystemd-id128.la
 
 _daemon_la_SOURCES = \
@@ -4044,7 +4018,7 @@ _daemon_la_SOURCES = \
 _daemon_la_CFLAGS = \
        $(AM_CFLAGS) \
        -fvisibility=default \
-       $(PYTHON_CFLAGS) \
+       $(PYTHON_DEVEL_CFLAGS) \
        -I$(top_builddir)/src/python-systemd
 
 _daemon_la_LDFLAGS = \
@@ -4054,7 +4028,7 @@ _daemon_la_LDFLAGS = \
        -avoid-version
 
 _daemon_la_LIBADD = \
-       $(PYTHON_LIBS) \
+       $(PYTHON_DEVEL_LIBS) \
        libsystemd-daemon.la
 
 _reader_la_SOURCES = \
@@ -4065,7 +4039,7 @@ _reader_la_SOURCES = \
 _reader_la_CFLAGS = \
        $(AM_CFLAGS) \
        -fvisibility=default \
-       $(PYTHON_CFLAGS)
+       $(PYTHON_DEVEL_CFLAGS)
 
 _reader_la_LDFLAGS = \
        $(AM_LDFLAGS) \
@@ -4074,11 +4048,12 @@ _reader_la_LDFLAGS = \
        -avoid-version
 
 _reader_la_LIBADD = \
-       $(PYTHON_LIBS) \
+       $(PYTHON_DEVEL_LIBS) \
        libsystemd-journal.la \
        libsystemd-id128.la \
        libsystemd-shared.la \
-       libsystemd-daemon-internal.la
+       libsystemd-daemon-internal.la \
+       $(RT_LIBS)
 
 login_la_SOURCES = \
        src/python-systemd/login.c \
@@ -4088,7 +4063,7 @@ login_la_SOURCES = \
 login_la_CFLAGS = \
        $(AM_CFLAGS) \
        -fvisibility=default \
-       $(PYTHON_CFLAGS)
+       $(PYTHON_DEVEL_CFLAGS)
 
 login_la_LDFLAGS = \
        $(AM_LDFLAGS) \
@@ -4097,11 +4072,12 @@ login_la_LDFLAGS = \
        -avoid-version
 
 login_la_LIBADD = \
-       $(PYTHON_LIBS) \
+       $(PYTHON_DEVEL_LIBS) \
        libsystemd-journal.la \
        libsystemd-login.la \
        libsystemd-shared.la \
-       libsystemd-daemon-internal.la
+       libsystemd-daemon-internal.la \
+       $(RT_LIBS)
 
 dist_pkgpyexec_PYTHON = \
        src/python-systemd/journal.py \
@@ -4158,6 +4134,8 @@ substitutions = \
        '|catalogdir=$(catalogdir)|' \
        '|tmpfilesdir=$(tmpfilesdir)|' \
        '|sysctldir=$(sysctldir)|' \
+       '|systemgeneratordir=$(systemgeneratordir)|' \
+       '|usergeneratordir=$(usergeneratordir)|' \
        '|PACKAGE_VERSION=$(PACKAGE_VERSION)|' \
        '|PACKAGE_NAME=$(PACKAGE_NAME)|' \
        '|PACKAGE_URL=$(PACKAGE_URL)|' \
@@ -4173,6 +4151,7 @@ substitutions = \
        '|DEBUGTTY=$(DEBUGTTY)|' \
        '|KILL=$(KILL)|' \
        '|KMOD=$(KMOD)|' \
+       '|MKDIR_P=$(MKDIR_P)|' \
        '|QUOTAON=$(QUOTAON)|' \
        '|QUOTACHECK=$(QUOTACHECK)|' \
        '|SYSTEM_SYSVINIT_PATH=$(sysvinitdir)|' \
@@ -4327,9 +4306,6 @@ EXTRA_DIST += \
        docs/sysvinit/README.in \
        docs/var-log/README.in
 
-EXTRA_DIST += \
-       shell-completion/systemd-zsh-completion.zsh
-
 SOCKETS_TARGET_WANTS += \
        systemd-initctl.socket \
        systemd-shutdownd.socket
@@ -4444,6 +4420,7 @@ DISTCHECK_CONFIGURE_FLAGS = \
        --with-dbussystemservicedir=$$dc_install_base/$(dbussystemservicedir) \
        --with-dbusinterfacedir=$$dc_install_base/$(dbusinterfacedir) \
        --with-bashcompletiondir=$$dc_install_base/$(bashcompletiondir) \
+       --with-zshcompletiondir=$$dc_install_base/$(zshcompletiondir) \
        --with-pamlibdir=$$dc_install_base/$(pamlibdir) \
        --with-rootprefix=$$dc_install_base \
        --disable-split-usr