chiark / gitweb /
localed: create /etc/X11/xorg.conf.d if needed
[elogind.git] / Makefile.am
index 8e6e3fcbca14addfa661be368da20f799d883f56..94ae549b8f90ed15c077b124ab025a6684889189 100644 (file)
 
 ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
 AM_MAKEFLAGS = --no-print-directory
+AUTOMAKE_OPTIONS = color-tests parallel-tests
 
 SUBDIRS = . po
 
-LIBUDEV_CURRENT=1
-LIBUDEV_REVISION=2
-LIBUDEV_AGE=0
+# remove targets if the command fails
+.DELETE_ON_ERROR:
+
+LIBUDEV_CURRENT=3
+LIBUDEV_REVISION=0
+LIBUDEV_AGE=2
 
 LIBGUDEV_CURRENT=1
 LIBGUDEV_REVISION=2
 LIBGUDEV_AGE=1
 
 LIBSYSTEMD_LOGIN_CURRENT=3
-LIBSYSTEMD_LOGIN_REVISION=0
+LIBSYSTEMD_LOGIN_REVISION=10
 LIBSYSTEMD_LOGIN_AGE=3
 
 LIBSYSTEMD_DAEMON_CURRENT=0
-LIBSYSTEMD_DAEMON_REVISION=2
+LIBSYSTEMD_DAEMON_REVISION=6
 LIBSYSTEMD_DAEMON_AGE=0
 
 LIBSYSTEMD_ID128_CURRENT=0
-LIBSYSTEMD_ID128_REVISION=6
+LIBSYSTEMD_ID128_REVISION=16
 LIBSYSTEMD_ID128_AGE=0
 
-LIBSYSTEMD_JOURNAL_CURRENT=2
+LIBSYSTEMD_JOURNAL_CURRENT=7
 LIBSYSTEMD_JOURNAL_REVISION=0
-LIBSYSTEMD_JOURNAL_AGE=2
+LIBSYSTEMD_JOURNAL_AGE=7
 
 # Dirs of external packages
 dbuspolicydir=@dbuspolicydir@
@@ -58,10 +62,17 @@ pkgconfiglibdir=$(libdir)/pkgconfig
 polkitpolicydir=$(datadir)/polkit-1/actions
 bashcompletiondir=$(sysconfdir)/bash_completion.d
 rpmmacrosdir=$(sysconfdir)/rpm
+sysvinitdir=$(SYSTEM_SYSVINIT_PATH)
+sysvrcddir=$(SYSTEM_SYSVRCND_PATH)
+varlogdir=$(localstatedir)/log
+systemdstatedir=$(localstatedir)/lib/systemd
+catalogstatedir=$(systemdstatedir)/catalog
+hwdb_bin=/etc/udev/hwdb.bin
 
 # Our own, non-special dirs
 pkgsysconfdir=$(sysconfdir)/systemd
 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
@@ -70,21 +81,25 @@ systemgeneratordir=$(rootlibexecdir)/system-generators
 systemshutdowndir=$(rootlibexecdir)/system-shutdown
 systemsleepdir=$(rootlibexecdir)/system-sleep
 systemunitdir=$(rootprefix)/lib/systemd/system
+systempresetdir=$(rootprefix)/lib/systemd/system-preset
 udevlibexecdir=$(rootprefix)/lib/udev
-udevhomedir = $(udevlibexecdir)
-udevrulesdir = $(udevlibexecdir)/rules.d
+udevhomedir=$(udevlibexecdir)
+udevrulesdir=$(udevlibexecdir)/rules.d
+udevhwdbdir=$(udevlibexecdir)/hwdb.d
+catalogdir=$(prefix)/lib/systemd/catalog
 
 # And these are the special ones for /
 rootprefix=@rootprefix@
 rootbindir=$(rootprefix)/bin
 rootlibexecdir=$(rootprefix)/lib/systemd
 
-CLEANFILES =
+CLEANFILES = $(BUILT_SOURCES)
 EXTRA_DIST =
 BUILT_SOURCES =
 INSTALL_EXEC_HOOKS =
 UNINSTALL_EXEC_HOOKS =
 INSTALL_DATA_HOOKS =
+UNINSTALL_DATA_HOOKS =
 DISTCLEAN_LOCAL_HOOKS =
 pkginclude_HEADERS =
 noinst_LTLIBRARIES =
@@ -92,6 +107,7 @@ lib_LTLIBRARIES =
 include_HEADERS =
 pkgconfiglib_DATA =
 polkitpolicy_in_files =
+polkitpolicy_files =
 dist_udevrules_DATA =
 nodist_udevrules_DATA =
 dist_man_MANS =
@@ -108,7 +124,6 @@ udevlibexec_PROGRAMS =
 
 AM_CPPFLAGS = \
        -include $(top_builddir)/config.h \
-       -DSYSCONFDIR=\""$(sysconfdir)"\" \
        -DSYSTEM_CONFIG_FILE=\"$(pkgsysconfdir)/system.conf\" \
        -DSYSTEM_CONFIG_UNIT_PATH=\"$(pkgsysconfdir)/system\" \
        -DSYSTEM_DATA_UNIT_PATH=\"$(systemunitdir)\" \
@@ -117,6 +132,8 @@ AM_CPPFLAGS = \
        -DUSER_CONFIG_FILE=\"$(pkgsysconfdir)/user.conf\" \
        -DUSER_CONFIG_UNIT_PATH=\"$(pkgsysconfdir)/user\" \
        -DUSER_DATA_UNIT_PATH=\"$(userunitdir)\" \
+       -DCATALOG_PATH=\"$(catalogstatedir)\" \
+       -DHWDB_BIN=\"$(hwdb_bin)\" \
        -DSYSTEMD_CGROUP_AGENT_PATH=\"$(rootlibexecdir)/systemd-cgroups-agent\" \
        -DSYSTEMD_BINARY_PATH=\"$(rootlibexecdir)/systemd\" \
        -DSYSTEMD_SHUTDOWN_BINARY_PATH=\"$(rootlibexecdir)/systemd-shutdown\" \
@@ -141,54 +158,49 @@ AM_CPPFLAGS = \
        -I $(top_srcdir)/src/login \
        -I $(top_srcdir)/src/journal \
        -I $(top_srcdir)/src/systemd \
+       -I $(top_builddir)/src/core \
        -I $(top_srcdir)/src/core \
        -I $(top_srcdir)/src/libudev \
-       -I $(top_srcdir)/src/udev
+       -I $(top_srcdir)/src/udev \
+       $(OUR_CPPFLAGS)
 
-AM_CFLAGS = $(WARNINGFLAGS)
-AM_LDFLAGS = $(GCLDFLAGS)
+AM_CFLAGS = $(OUR_CFLAGS)
+AM_LDFLAGS = $(OUR_LDFLAGS)
 
 # ------------------------------------------------------------------------------
 if TARGET_GENTOO
 AM_CPPFLAGS += \
        -DKBD_LOADKEYS=\"/usr/bin/loadkeys\" \
-       -DKBD_SETFONT=\"/usr/bin/setfont\" \
-       -DDEFAULT_FONT=\"LatArCyrHeb-16\"
+       -DKBD_SETFONT=\"/usr/bin/setfont\"
 else
 if TARGET_ARCH
 AM_CPPFLAGS += \
        -DKBD_LOADKEYS=\"/usr/bin/loadkeys\" \
-       -DKBD_SETFONT=\"/usr/bin/setfont\" \
-       -DDEFAULT_FONT=\"LatArCyrHeb-16\"
+       -DKBD_SETFONT=\"/usr/bin/setfont\"
 else
 if TARGET_FRUGALWARE
 AM_CPPFLAGS += \
        -DKBD_LOADKEYS=\"/usr/bin/loadkeys\" \
-       -DKBD_SETFONT=\"/usr/bin/setfont\" \
-       -DDEFAULT_FONT=\"LatArCyrHeb-16\"
+       -DKBD_SETFONT=\"/usr/bin/setfont\"
 else
 if TARGET_MANDRIVA
 AM_CPPFLAGS += \
        -DKBD_LOADKEYS=\"/bin/loadkeys\" \
-       -DKBD_SETFONT=\"/bin/setfont\" \
-       -DDEFAULT_FONT=\"LatArCyrHeb-16\"
+       -DKBD_SETFONT=\"/bin/setfont\"
 else
 if TARGET_ANGSTROM
 AM_CPPFLAGS += \
        -DKBD_LOADKEYS=\"/usr/bin/loadkeys\" \
-       -DKBD_SETFONT=\"/usr/bin/setfont\" \
-       -DDEFAULT_FONT=\"LatArCyrHeb-16\"
+       -DKBD_SETFONT=\"/usr/bin/setfont\"
 else
 if TARGET_MAGEIA
 AM_CPPFLAGS += \
        -DKBD_LOADKEYS=\"/bin/loadkeys\" \
-       -DKBD_SETFONT=\"/bin/setfont\" \
-       -DDEFAULT_FONT=\"LatArCyrHeb-16\"
+       -DKBD_SETFONT=\"/bin/setfont\"
 else
 AM_CPPFLAGS += \
        -DKBD_LOADKEYS=\"/bin/loadkeys\" \
-       -DKBD_SETFONT=\"/bin/setfont\" \
-       -DDEFAULT_FONT=\"latarcyrheb-sun16\"
+       -DKBD_SETFONT=\"/bin/setfont\"
 endif
 endif
 endif
@@ -223,7 +235,6 @@ rootlibexec_PROGRAMS = \
        systemd-update-utmp \
        systemd-shutdownd \
        systemd-shutdown \
-       systemd-modules-load \
        systemd-remount-fs \
        systemd-reply-password \
        systemd-fsck \
@@ -232,13 +243,18 @@ rootlibexec_PROGRAMS = \
        systemd-sysctl \
        systemd-sleep
 
+if HAVE_KMOD
+rootlibexec_PROGRAMS += \
+       systemd-modules-load
+endif
+
 systemgenerator_PROGRAMS = \
        systemd-getty-generator \
        systemd-fstab-generator \
        systemd-system-update-generator
 
 dist_bashcompletion_DATA = \
-       bash-completion/systemd-bash-completion.sh
+       shell-completion/systemd-bash-completion.sh
 
 dist_tmpfiles_DATA = \
        tmpfiles.d/systemd.conf \
@@ -269,7 +285,7 @@ dist_systemunit_DATA = \
        units/nss-user-lookup.target \
        units/mail-transfer-agent.target \
        units/hibernate.target \
-       units/http-daemon.target \
+       units/hybrid-sleep.target \
        units/poweroff.target \
        units/reboot.target \
        units/rescue.target \
@@ -312,7 +328,6 @@ nodist_systemunit_DATA = \
        units/console-getty.service \
        units/systemd-initctl.service \
        units/systemd-shutdownd.service \
-       units/systemd-modules-load.service \
        units/systemd-remount-fs.service \
        units/systemd-update-utmp-runlevel.service \
        units/systemd-update-utmp-shutdown.service \
@@ -325,6 +340,7 @@ nodist_systemunit_DATA = \
        units/rescue.service \
        units/user@.service \
        units/systemd-hibernate.service \
+       units/systemd-hybrid-sleep.service \
        units/systemd-suspend.service \
        units/systemd-halt.service \
        units/systemd-poweroff.service \
@@ -337,6 +353,11 @@ nodist_systemunit_DATA = \
        units/systemd-udev-settle.service \
        units/debug-shell.service
 
+if HAVE_KMOD
+nodist_systemunit_DATA += \
+       units/systemd-modules-load.service
+endif
+
 dist_userunit_DATA = \
        units/user/default.target \
        units/user/exit.target
@@ -352,7 +373,6 @@ EXTRA_DIST += \
        units/rescue.service.m4.in \
        units/systemd-initctl.service.in \
        units/systemd-shutdownd.service.in \
-       units/systemd-modules-load.service.in \
        units/systemd-remount-fs.service.in \
        units/systemd-update-utmp-runlevel.service.in \
        units/systemd-update-utmp-shutdown.service.in \
@@ -375,13 +395,19 @@ EXTRA_DIST += \
        units/systemd-udev-settle.service \
        units/debug-shell.service.in \
        units/systemd-hibernate.service.in \
+       units/systemd-hybrid-sleep.service.in \
        units/systemd-suspend.service.in \
+       units/quotaon.service.in \
        introspect.awk \
        man/custom-html.xsl
 
+if HAVE_KMOD
+EXTRA_DIST += \
+       units/systemd-modules-load.service.in
+endif
+
 if TARGET_FEDORA
 dist_systemunit_DATA += \
-       units/fedora/prefdm.service \
        units/fedora/rc-local.service \
        units/fedora/halt-local.service
 systemgenerator_PROGRAMS += \
@@ -390,18 +416,12 @@ endif
 
 if TARGET_MANDRIVA
 dist_systemunit_DATA += \
-       units/mandriva/prefdm.service \
        units/fedora/rc-local.service \
        units/fedora/halt-local.service
 systemgenerator_PROGRAMS += \
        systemd-rc-local-generator
 endif
 
-if TARGET_FRUGALWARE
-dist_systemunit_DATA += \
-       units/frugalware/display-manager.service
-endif
-
 if TARGET_SUSE
 dist_systemunit_DATA += \
        units/suse/rc-local.service \
@@ -412,7 +432,6 @@ endif
 
 if TARGET_MAGEIA
 dist_systemunit_DATA += \
-       units/mageia/prefdm.service \
        units/fedora/rc-local.service \
        units/fedora/halt-local.service
 systemgenerator_PROGRAMS += \
@@ -451,8 +470,10 @@ MANPAGES = \
        man/systemd.device.5 \
        man/systemd.snapshot.5 \
        man/systemd.exec.5 \
+       man/systemd.kill.5 \
        man/systemd.special.7 \
        man/systemd.journal-fields.7 \
+       man/systemd.time.7 \
        man/kernel-command-line.7 \
        man/daemon.7 \
        man/bootup.7 \
@@ -464,13 +485,11 @@ MANPAGES = \
        man/systemd.conf.5 \
        man/tmpfiles.d.5 \
        man/hostname.5 \
-       man/timezone.5 \
+       man/localtime.5 \
        man/machine-id.5 \
        man/locale.conf.5 \
        man/os-release.5 \
        man/machine-info.5 \
-       man/modules-load.d.5 \
-       man/systemd-modules-load.service.8 \
        man/sysctl.d.5 \
        man/systemd-sysctl.service.8 \
        man/systemd-ask-password.1 \
@@ -480,6 +499,7 @@ MANPAGES = \
        man/journald.conf.5 \
        man/systemd-journald.service.8 \
        man/journalctl.1 \
+       man/systemd-coredumpctl.1 \
        man/systemd-inhibit.1 \
        man/systemd-remount-fs.service.8 \
        man/systemd-update-utmp-runlevel.service.8 \
@@ -498,19 +518,27 @@ MANPAGES = \
        man/sd-id128.3 \
        man/sd_id128_to_string.3 \
        man/sd_id128_randomize.3 \
+       man/sd_id128_get_machine.3 \
        man/sd-journal.3 \
        man/sd_journal_print.3 \
        man/sd_journal_stream_fd.3 \
        man/sd_journal_open.3 \
        man/sd_journal_next.3 \
        man/sd_journal_get_data.3 \
-       man/sd_journal_get_realtime_usec.3
+       man/sd_journal_get_realtime_usec.3 \
+       man/sd_journal_get_cutoff_realtime_usec.3 \
+       man/sd_journal_get_cursor.3 \
+       man/sd_journal_get_fd.3 \
+       man/sd_journal_get_usage.3 \
+       man/sd_journal_add_match.3 \
+       man/sd_journal_seek_head.3 \
+       man/sd_journal_query_unique.3 \
+       man/sd_journal_get_catalog.3
 
 MANPAGES_ALIAS = \
        man/reboot.8 \
        man/poweroff.8 \
        man/init.1 \
-       man/systemd-modules-load.8 \
        man/systemd-sysctl.8 \
        man/systemd-journald.socket.8 \
        man/systemd-journald.8 \
@@ -522,11 +550,13 @@ MANPAGES_ALIAS = \
        man/systemd-shutdownd.socket.8 \
        man/systemd-shutdownd.8 \
        man/systemd-hibernate.service.8 \
+       man/systemd-hybrid-sleep.service.8 \
        man/systemd-sleep.8 \
        man/systemd-shutdown.8 \
        man/systemd-poweroff.service.8 \
        man/systemd-reboot.service.8 \
        man/systemd-kexec.service.8 \
+       man/systemd-fsck.8 \
        man/systemd-fsck-root.service.8 \
        man/systemd-ask-password-console.path.8 \
        man/systemd-ask-password-wall.service.8 \
@@ -536,17 +566,23 @@ MANPAGES_ALIAS = \
        man/systemd-tmpfiles-clean.timer.8 \
        man/sd_id128_t.3 \
        man/SD_ID128_MAKE.3 \
+       man/SD_ID128_CONST_STR.3 \
        man/SD_ID128_FORMAT_STR.3 \
        man/SD_ID128_FORMAT_VAL.3 \
        man/sd_id128_equal.3 \
        man/sd_id128_from_string.3 \
-       man/sd_id128_get_machine.3 \
        man/sd_id128_get_boot.3 \
        man/sd_journal_printv.3 \
        man/sd_journal_send.3 \
        man/sd_journal_sendv.3 \
+       man/sd_journal_perror.3 \
+       man/SD_JOURNAL_SUPPRESS_LOCATION.3 \
        man/sd_journal_open_directory.3 \
        man/sd_journal_close.3 \
+       man/sd_journal.3 \
+       man/SD_JOURNAL_RUNTIME_ONLY.3 \
+       man/SD_JOURNAL_SYSTEM_ONLY.3 \
+       man/SD_JOURNAL_LOCAL_ONLY.3 \
        man/sd_journal_previous.3 \
        man/sd_journal_next_skip.3 \
        man/sd_journal_previous_skip.3 \
@@ -555,12 +591,48 @@ MANPAGES_ALIAS = \
        man/sd_journal_enumerate_data.3 \
        man/sd_journal_restart_data.3 \
        man/SD_JOURNAL_FOREACH_DATA.3 \
-       man/sd_journal_get_monotonic_usec.3
+       man/sd_journal_get_monotonic_usec.3 \
+       man/sd_journal_get_cutoff_monotonic_usec.3 \
+       man/sd_journal_reliable_fd.3 \
+       man/sd_journal_process.3 \
+       man/sd_journal_wait.3 \
+       man/SD_JOURNAL_NOP.3 \
+       man/SD_JOURNAL_APPEND.3 \
+       man/SD_JOURNAL_INVALIDATE.3 \
+       man/sd_journal_add_disjunction.3 \
+       man/sd_journal_flush_matches.3 \
+       man/sd_journal_seek_tail.3 \
+       man/sd_journal_seek_monotonic_usec.3 \
+       man/sd_journal_seek_realtime_usec.3 \
+       man/sd_journal_seek_cursor.3 \
+       man/sd_journal_test_cursor.3 \
+       man/sd_journal_enumerate_unique.3 \
+       man/sd_journal_restart_unique.3 \
+       man/SD_JOURNAL_FOREACH_UNIQUE.3 \
+       man/sd_journal_get_catalog_for_message_id.3
+
+if HAVE_KMOD
+MANPAGES += \
+       man/modules-load.d.5 \
+       man/systemd-modules-load.service.8
+MANPAGES_ALIAS += \
+       man/systemd-modules-load.8
+man/systemd-modules-load.8: man/systemd-modules-load.service.8
+endif
+
+if HAVE_MICROHTTPD
+MANPAGES += \
+       man/systemd-journal-gatewayd.service.8
+MANPAGES_ALIAS += \
+       man/systemd-journal-gatewayd.socket.8 \
+       man/systemd-journal-gatewayd.8
+man/systemd-journal-gatewayd.socket.8: man/systemd-journal-gatewayd.service.8
+man/systemd-journal-gatewayd.8: man/systemd-journal-gatewayd.service.8
+endif
 
 man/reboot.8: man/halt.8
 man/poweroff.8: man/halt.8
 man/init.1: man/systemd.1
-man/systemd-modules-load.8: man/systemd-modules-load.service.8
 man/systemd-sysctl.8: man/systemd-sysctl.service.8
 man/systemd-journald.socket.8: man/systemd-journald.service.8
 man/systemd-journald.8: man/systemd-journald.service.8
@@ -572,11 +644,13 @@ man/systemd-initctl.8: man/systemd-initctl.service.8
 man/systemd-shutdownd.socket.8: man/systemd-shutdownd.service.8
 man/systemd-shutdownd.8: man/systemd-shutdownd.service.8
 man/systemd-hibernate.service.8: man/systemd-suspend.service.8
+man/systemd-hybrid-sleep.service.8: man/systemd-suspend.service.8
 man/systemd-sleep.8: man/systemd-suspend.service.8
 man/systemd-shutdown.8: man/systemd-halt.service.8
 man/systemd-poweroff.service.8: man/systemd-halt.service.8
 man/systemd-reboot.service.8: man/systemd-halt.service.8
 man/systemd-kexec.service.8: man/systemd-halt.service.8
+man/systemd-fsck.8: man/systemd-fsck@.service.8
 man/systemd-fsck-root.service.8: man/systemd-fsck@.service.8
 man/systemd-ask-password-console.path.8: man/systemd-ask-password-console.service.8
 man/systemd-ask-password-wall.service.8: man/systemd-ask-password-console.service.8
@@ -586,17 +660,23 @@ man/systemd-tmpfiles-clean.service.8: man/systemd-tmpfiles.8
 man/systemd-tmpfiles-clean.timer.8: man/systemd-tmpfiles.8
 man/sd_id128_t.3: man/sd-id128.3
 man/SD_ID128_MAKE.3: man/sd-id128.3
+man/SD_ID128_CONST_STR.3: man/sd-id128.3
 man/SD_ID128_FORMAT_STR.3: man/sd-id128.3
 man/SD_ID128_FORMAT_VAL.3: man/sd-id128.3
 man/sd_id128_equal.3: man/sd-id128.3
 man/sd_id128_from_string.3: man/sd_id128_to_string.3
-man/sd_id128_get_machine.3: man/sd_id128_randomize.3
-man/sd_id128_get_boot.3: man/sd_id128_randomize.3
+man/sd_id128_get_boot.3: man/sd_id128_get_machine.3
 man/sd_journal_printv.3: man/sd_journal_print.3
 man/sd_journal_send.3: man/sd_journal_print.3
 man/sd_journal_sendv.3: man/sd_journal_print.3
+man/sd_journal_perror.3: man/sd_journal_print.3
+man/SD_JOURNAL_SUPPRESS_LOCATION.3: man/sd_journal_print.3
 man/sd_journal_open_directory.3: man/sd_journal_open.3
 man/sd_journal_close.3: man/sd_journal_open.3
+man/sd_journal.3: man/sd_journal_open.3
+man/SD_JOURNAL_RUNTIME_ONLY.3: man/sd_journal_open.3
+man/SD_JOURNAL_SYSTEM_ONLY.3: man/sd_journal_open.3
+man/SD_JOURNAL_LOCAL_ONLY.3: man/sd_journal_open.3
 man/sd_journal_previous.3: man/sd_journal_next.3
 man/sd_journal_next_skip.3: man/sd_journal_next.3
 man/sd_journal_previous_skip.3: man/sd_journal_next.3
@@ -606,6 +686,24 @@ man/sd_journal_enumerate_data.3: man/sd_journal_get_data.3
 man/sd_journal_restart_data.3: man/sd_journal_get_data.3
 man/SD_JOURNAL_FOREACH_DATA.3: man/sd_journal_get_data.3
 man/sd_journal_get_monotonic_usec.3: man/sd_journal_get_realtime_usec.3
+man/sd_journal_get_cutoff_monotonic_usec.3: man/sd_journal_get_cutoff_realtime_usec.3
+man/sd_journal_reliable_fd.3: man/sd_journal_get_fd.3
+man/sd_journal_process.3: man/sd_journal_get_fd.3
+man/sd_journal_wait.3: man/sd_journal_get_fd.3
+man/SD_JOURNAL_NOP.3: man/sd_journal_get_fd.3
+man/SD_JOURNAL_APPEND.3: man/sd_journal_get_fd.3
+man/SD_JOURNAL_INVALIDATE.3: man/sd_journal_get_fd.3
+man/sd_journal_add_disjunction.3: man/sd_journal_add_match.3
+man/sd_journal_flush_matches.3: man/sd_journal_add_match.3
+man/sd_journal_seek_tail.3: man/sd_journal_seek_head.3
+man/sd_journal_seek_monotonic_usec.3: man/sd_journal_seek_head.3
+man/sd_journal_seek_realtime_usec.3: man/sd_journal_seek_head.3
+man/sd_journal_seek_cursor.3: man/sd_journal_seek_head.3
+man/sd_journal_test_cursor.3: man/sd_journal_get_cursor.3
+man/sd_journal_enumerate_unique.3: man/sd_journal_query_unique.3
+man/sd_journal_restart_unique.3: man/sd_journal_query_unique.3
+man/SD_JOURNAL_FOREACH_UNIQUE.3: man/sd_journal_query_unique.3
+man/sd_journal_get_catalog_for_message_id.3: man/sd_journal_get_catalog.3
 
 XML_FILES = \
        ${patsubst %.1,%.xml,${patsubst %.3,%.xml,${patsubst %.5,%.xml,${patsubst %.7,%.xml,${patsubst %.8,%.xml,$(MANPAGES)}}}}}
@@ -617,13 +715,65 @@ man_MANS = \
 
 noinst_DATA = \
        ${XML_FILES:.xml=.html}
+
+CLEANFILES += \
+       $(MANPAGES) \
+       $(MANPAGES_ALIAS) \
+       ${XML_FILES:.xml=.html}
+
+if HAVE_PYTHON
+noinst_DATA += \
+       man/index.html
+
+CLEANFILES += \
+       man/index.html
+
+man/index.html: make-man-index.py $(XML_FILES)
+       $(AM_V_at)$(MKDIR_P) $(dir $@)
+       $(AM_V_GEN)$(PYTHON) $^ > $@
+
+MANPAGES += \
+       man/systemd.directives.5
+
+EXTRA_DIST += \
+       man/index.html
+
+XML_DIRECTIVE_FILES = \
+       man/systemd.unit.xml \
+       man/systemd.service.xml \
+       man/systemd.socket.xml \
+       man/systemd.mount.xml \
+       man/systemd.automount.xml \
+       man/systemd.swap.xml \
+       man/systemd.target.xml \
+       man/systemd.path.xml \
+       man/systemd.timer.xml \
+       man/systemd.snapshot.xml \
+       man/systemd.exec.xml \
+       man/systemd.kill.xml \
+       man/systemd.device.xml \
+       man/systemd.conf.xml \
+       man/systemd.journal-fields.xml \
+       man/systemd.time.xml
+
+man/systemd.directives.xml: make-directive-index.py $(XML_DIRECTIVE_FILES)
+       $(AM_V_at)$(MKDIR_P) $(dir $@)
+       $(AM_V_GEN)$(PYTHON) $^ > $@
+
+EXTRA_DIST += \
+       man/systemd.directives.xml
+
+endif
+
 endif
 
 EXTRA_DIST += \
        $(XML_FILES) \
        ${XML_FILES:.xml=.html} \
        $(MANPAGES) \
-       $(MANPAGES_ALIAS)
+       $(MANPAGES_ALIAS) \
+       make-man-index.py \
+       make-directive-index.py
 
 # ------------------------------------------------------------------------------
 noinst_LTLIBRARIES += \
@@ -632,22 +782,31 @@ noinst_LTLIBRARIES += \
 libsystemd_shared_la_SOURCES = \
        src/shared/linux/auto_dev-ioctl.h \
        src/shared/linux/fanotify.h \
+       src/shared/linux/seccomp.h \
+       src/shared/linux/seccomp-bpf.h \
        src/shared/missing.h \
        src/shared/list.h \
        src/shared/macro.h \
        src/shared/def.h \
+       src/shared/sparse-endian.h \
        src/shared/util.c \
        src/shared/util.h \
        src/shared/virt.c \
        src/shared/virt.h \
        src/shared/path-util.c \
        src/shared/path-util.h \
+       src/shared/time-util.c \
+       src/shared/time-util.h \
        src/shared/hashmap.c \
        src/shared/hashmap.h \
        src/shared/set.c \
        src/shared/set.h \
+       src/shared/fdset.c \
+       src/shared/fdset.h \
        src/shared/strv.c \
        src/shared/strv.h \
+       src/shared/strbuf.c \
+       src/shared/strbuf.h \
        src/shared/conf-parser.c \
        src/shared/conf-parser.h \
        src/shared/log.c \
@@ -679,10 +838,18 @@ libsystemd_shared_la_SOURCES = \
        src/shared/spawn-ask-password-agent.h \
        src/shared/specifier.c \
        src/shared/specifier.h \
+       src/shared/replace-var.c \
+       src/shared/replace-var.h \
        src/shared/spawn-polkit-agent.c \
        src/shared/spawn-polkit-agent.h \
        src/shared/hwclock.c \
-       src/shared/hwclock.h
+       src/shared/hwclock.h \
+       src/shared/time-dst.c \
+       src/shared/time-dst.h \
+       src/shared/calendarspec.c \
+       src/shared/calendarspec.h
+
+libsystemd_shared_la_LIBADD = libsystemd-daemon.la
 
 #-------------------------------------------------------------------------------
 noinst_LTLIBRARIES += \
@@ -726,6 +893,8 @@ libsystemd_label_la_SOURCES = \
        src/shared/socket-label.c \
        src/shared/label.c \
        src/shared/label.h \
+       src/shared/selinux-util.c \
+       src/shared/selinux-util.h \
        src/shared/mkdir.c \
        src/shared/mkdir.h \
        src/shared/ask-password-api.c \
@@ -806,6 +975,8 @@ noinst_LTLIBRARIES += \
 libsystemd_core_la_SOURCES = \
        src/core/unit.c \
        src/core/unit.h \
+       src/core/unit-printf.c \
+       src/core/unit-printf.h \
        src/core/job.c \
        src/core/job.h \
        src/core/manager.c \
@@ -838,6 +1009,8 @@ libsystemd_core_la_SOURCES = \
        src/core/load-dropin.h \
        src/core/execute.c \
        src/core/execute.h \
+       src/core/kill.c \
+       src/core/kill.h \
        src/core/dbus.c \
        src/core/dbus.h \
        src/core/dbus-manager.c \
@@ -866,16 +1039,18 @@ libsystemd_core_la_SOURCES = \
        src/core/dbus-device.h \
        src/core/dbus-execute.c \
        src/core/dbus-execute.h \
+       src/core/dbus-kill.c \
+       src/core/dbus-kill.h \
        src/core/dbus-path.c \
        src/core/dbus-path.h \
        src/core/cgroup.c \
        src/core/cgroup.h \
+       src/core/selinux-access.c \
+       src/core/selinux-access.h \
        src/core/selinux-setup.c \
        src/core/selinux-setup.h \
        src/core/ima-setup.c \
        src/core/ima-setup.h \
-       src/core/kmod-setup.c \
-       src/core/kmod-setup.h \
        src/core/locale-setup.h \
        src/core/locale-setup.c \
        src/core/hostname-setup.c \
@@ -886,8 +1061,6 @@ libsystemd_core_la_SOURCES = \
        src/core/mount-setup.h \
        src/core/loopback-setup.h \
        src/core/loopback-setup.c \
-       src/core/fdset.c \
-       src/core/fdset.h \
        src/core/condition.c \
        src/core/condition.h \
        src/core/namespace.c \
@@ -905,11 +1078,23 @@ libsystemd_core_la_SOURCES = \
        src/core/switch-root.h \
        src/core/switch-root.c \
        src/core/killall.h \
-       src/core/killall.c
+       src/core/killall.c \
+       src/core/syscall-list.c \
+       src/core/syscall-list.h \
+       src/core/audit-fd.c \
+       src/core/audit-fd.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
+       src/core/load-fragment-gperf-nulstr.c \
+       src/core/syscall-from-name.h \
+       src/core/syscall-to-name.h
 
 libsystemd_core_la_CFLAGS = \
        $(AM_CFLAGS) \
@@ -925,6 +1110,9 @@ libsystemd_core_la_LIBADD = \
        libsystemd-label.la \
        libsystemd-shared.la \
        libsystemd-dbus.la \
+       libsystemd-audit.la \
+       libsystemd-id128-internal.la \
+       libsystemd-daemon.la \
        libudev.la \
        $(LIBWRAP_LIBS) \
        $(PAM_LIBS) \
@@ -933,8 +1121,8 @@ libsystemd_core_la_LIBADD = \
        $(KMOD_LIBS)
 
 src/core/load-fragment-gperf-nulstr.c: src/core/load-fragment-gperf.gperf
-       $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
-       $(AWK) 'BEGIN{ keywords=0 ; FS="," ; print "extern const char load_fragment_gperf_nulstr[];" ; print "const char load_fragment_gperf_nulstr[] ="} ; keyword==1 { print "\"" $$1 "\\0\"" } ; /%%/ { keyword=1} ; END { print ";" }' < $< > $@ || rm $@
+       $(AM_V_at)$(MKDIR_P) $(dir $@)
+       $(AM_V_GEN)$(AWK) 'BEGIN{ keywords=0 ; FS="," ; print "extern const char load_fragment_gperf_nulstr[];" ; print "const char load_fragment_gperf_nulstr[] ="} ; keyword==1 { print "\"" $$1 "\\0\"" } ; /%%/ { keyword=1} ; END { print ";" }' < $< > $@
 
 EXTRA_DIST += \
        src/core/load-fragment-gperf.gperf.m4
@@ -942,7 +1130,29 @@ EXTRA_DIST += \
 CLEANFILES += \
        src/core/load-fragment-gperf.gperf \
        src/core/load-fragment-gperf.c \
-       src/core/load-fragment-gperf-nulstr.c
+       src/core/load-fragment-gperf-nulstr.c \
+       src/core/syscall-list.txt \
+       src/core/syscall-from-name.gperf
+
+BUILT_SOURCES += \
+       src/core/syscall-from-name.h \
+       src/core/syscall-to-name.h
+
+src/core/syscall-list.txt: Makefile
+       $(AM_V_at)$(MKDIR_P) $(dir $@)
+       $(AM_V_GEN)$(CPP) $(CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) -dM -include sys/syscall.h - < /dev/null | $(AWK) '/^#define[ \t]+__NR_[^ ]+[ \t]+\(?.*[0-9]+.*\)?/ { sub(/__NR_/, "", $$2); print $$2; }' > $@
+
+src/core/syscall-from-name.gperf: src/core/syscall-list.txt Makefile
+       $(AM_V_at)$(MKDIR_P) $(dir $@)
+       $(AM_V_GEN)$(AWK) 'BEGIN{ print "struct syscall_name { const char* name; int id; };"; print "%null-strings"; print "%%";} { printf "%s, __NR_%s\n", $$1, $$1 }' < $< > $@
+
+src/core/syscall-from-name.h: src/core/syscall-from-name.gperf Makefile
+       $(AM_V_at)$(MKDIR_P) $(dir $@)
+       $(AM_V_GEN)$(GPERF) -L ANSI-C -t --ignore-case -N lookup_syscall -H hash_syscall_name -p -C < $< > $@
+
+src/core/syscall-to-name.h: src/core/syscall-list.txt Makefile
+       $(AM_V_at)$(MKDIR_P) $(dir $@)
+       $(AM_V_GEN)$(AWK) 'BEGIN{ print "const char* const syscall_names[] = { "} { printf "[__NR_%s] = \"%s\",\n", $$1, $$1 } END{print "};"}' < $< > $@
 
 # ------------------------------------------------------------------------------
 systemd_SOURCES = \
@@ -1017,13 +1227,35 @@ noinst_PROGRAMS += \
        test-strv \
        test-install \
        test-watchdog \
-       test-unit-name
+       test-unit-name \
+       test-log \
+       test-unit-file \
+       test-date \
+       test-sleep \
+       test-replace-var \
+       test-sched-prio \
+       test-calendarspec \
+       test-strip-tab-ansi
 
 TESTS += \
        test-job-type \
        test-env-replace \
        test-strv \
-       test-unit-name
+       test-unit-name \
+       test-unit-file \
+       test-date \
+       test-sleep \
+       test-replace-var \
+       test-sched-prio \
+       test-calendarspec \
+       test-strip-tab-ansi
+
+EXTRA_DIST += \
+       test/sched_idle_bad.service \
+       test/sched_idle_ok.service \
+       test/sched_rr_bad.service \
+       test/sched_rr_ok.service \
+       test/sched_rr_change.service
 
 test_engine_SOURCES = \
        src/test/test-engine.c
@@ -1073,6 +1305,52 @@ test_unit_name_SOURCES = \
 test_unit_name_LDADD = \
        libsystemd-core.la
 
+test_unit_file_SOURCES = \
+       src/test/test-unit-file.c
+
+test_unit_file_CFLAGS = \
+       $(AM_CFLAGS) \
+       $(DBUS_CFLAGS)
+
+test_unit_file_LDADD = \
+       libsystemd-core.la
+
+test_log_SOURCES = \
+       src/test/test-log.c
+
+test_log_LDADD = \
+       libsystemd-core.la
+
+test_date_SOURCES = \
+       src/test/test-date.c
+
+test_date_LDADD = \
+       libsystemd-core.la
+
+test_sleep_SOURCES = \
+       src/test/test-sleep.c
+
+test_sleep_LDADD = \
+       libsystemd-core.la
+
+test_replace_var_SOURCES = \
+       src/test/test-replace-var.c
+
+test_replace_var_LDADD = \
+       libsystemd-shared.la
+
+test_calendarspec_SOURCES = \
+       src/test/test-calendarspec.c
+
+test_calendarspec_LDADD = \
+       libsystemd-shared.la
+
+test_strip_tab_ansi_SOURCES = \
+       src/test/test-strip-tab-ansi.c
+
+test_strip_tab_ansi_LDADD = \
+       libsystemd-shared.la
+
 test_daemon_SOURCES = \
        src/test/test-daemon.c
 
@@ -1117,6 +1395,18 @@ test_watchdog_SOURCES = \
 test_watchdog_LDADD = \
        libsystemd-shared.la
 
+test_sched_prio_SOURCES = \
+       src/test/test-sched-prio.c
+
+test_sched_prio_CFLAGS = \
+       $(AM_CFLAGS) \
+       $(DBUS_CFLAGS) \
+       -D"STR(s)=\#s" -D"TEST_DIR=STR($(abs_top_srcdir)/test/)"
+
+test_sched_prio_LDADD = \
+       libsystemd-core.la \
+       libsystemd-daemon.la
+
 # ------------------------------------------------------------------------------
 systemd_initctl_SOURCES = \
        src/initctl/initctl.c
@@ -1171,6 +1461,7 @@ systemd_shutdown_LDADD = \
        libsystemd-shared.la \
        libudev.la
 
+if HAVE_KMOD
 # ------------------------------------------------------------------------------
 systemd_modules_load_SOURCES = \
        src/modules-load/modules-load.c
@@ -1182,6 +1473,7 @@ systemd_modules_load_CFLAGS = \
 systemd_modules_load_LDADD = \
        libsystemd-shared.la \
        $(KMOD_LIBS)
+endif
 
 # ------------------------------------------------------------------------------
 systemd_tmpfiles_SOURCES = \
@@ -1189,7 +1481,8 @@ systemd_tmpfiles_SOURCES = \
 
 systemd_tmpfiles_LDADD = \
        libsystemd-label.la \
-       libsystemd-shared.la
+       libsystemd-shared.la \
+       libsystemd-capability.la
 
 # ------------------------------------------------------------------------------
 systemd_machine_id_setup_SOURCES = \
@@ -1251,6 +1544,12 @@ systemd_detect_virt_SOURCES = \
 systemd_detect_virt_LDADD = \
        libsystemd-shared.la
 
+systemd-detect-virt-install-hook:
+       -$(SETCAP) cap_dac_override,cap_sys_ptrace=ep $(DESTDIR)$(bindir)/systemd-detect-virt
+
+INSTALL_EXEC_HOOKS += \
+       systemd-detect-virt-install-hook
+
 # ------------------------------------------------------------------------------
 systemd_delta_SOURCES = \
        src/delta/delta.c
@@ -1298,6 +1597,7 @@ systemd_remount_fs_SOURCES = \
        src/core/mount-setup.h
 
 systemd_remount_fs_LDADD = \
+       libsystemd-label.la \
        libsystemd-shared.la
 
 # ------------------------------------------------------------------------------
@@ -1325,8 +1625,6 @@ systemctl_LDADD = \
        libsystemd-label.la \
        libsystemd-shared.la \
        libsystemd-daemon.la \
-       libsystemd-journal-internal.la \
-       libsystemd-id128-internal.la \
        libsystemd-dbus.la \
        libsystemd-logs.la
 
@@ -1380,7 +1678,8 @@ systemd_nspawn_LDADD = \
        libsystemd-label.la \
        libsystemd-capability.la \
        libsystemd-shared.la \
-       libsystemd-daemon.la
+       libsystemd-daemon.la \
+       libsystemd-id128-internal.la
 
 # ------------------------------------------------------------------------------
 systemd_stdio_bridge_SOURCES = \
@@ -1418,7 +1717,7 @@ pkginclude_HEADERS += \
 # move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
 libsystemd-daemon-install-hook:
        if test "$(libdir)" != "$(rootlibdir)"; then \
-               mkdir -p $(DESTDIR)$(rootlibdir) && \
+               $(MKDIR_P) $(DESTDIR)$(rootlibdir) && \
                so_img_name=$$(readlink $(DESTDIR)$(libdir)/libsystemd-daemon.so) && \
                so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
                ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libsystemd-daemon.so && \
@@ -1452,13 +1751,31 @@ MANPAGES_ALIAS += \
        man/sd_is_socket_unix.3 \
        man/sd_is_socket_inet.3 \
        man/sd_is_mq.3 \
-       man/sd_notifyf.3
+       man/sd_notifyf.3 \
+       man/SD_LISTEN_FDS_START.3 \
+       man/SD_EMERG.3 \
+       man/SD_ALERT.3 \
+       man/SD_CRIT.3 \
+       man/SD_ERR.3 \
+       man/SD_WARNING.3 \
+       man/SD_NOTICE.3 \
+       man/SD_INFO.3 \
+       man/SD_DEBUG.3
 
 man/sd_is_socket.3: man/sd_is_fifo.3
 man/sd_is_socket_unix.3: man/sd_is_fifo.3
 man/sd_is_socket_inet.3: man/sd_is_fifo.3
 man/sd_is_mq.3: man/sd_is_fifo.3
 man/sd_notifyf.3: man/sd_notify.3
+man/SD_LISTEN_FDS_START.3: man/sd_listen_fds.3
+man/SD_EMERG.3: man/sd-daemon.3
+man/SD_ALERT.3: man/sd-daemon.3
+man/SD_CRIT.3: man/sd-daemon.3
+man/SD_ERR.3: man/sd-daemon.3
+man/SD_WARNING.3: man/sd-daemon.3
+man/SD_NOTICE.3: man/sd-daemon.3
+man/SD_INFO.3: man/sd-daemon.3
+man/SD_DEBUG.3: man/sd-daemon.3
 
 EXTRA_DIST += \
        src/libsystemd-daemon/libsystemd-daemon.pc.in \
@@ -1484,7 +1801,9 @@ libudev_la_SOURCES =\
        src/libudev/libudev-device.c \
        src/libudev/libudev-enumerate.c \
        src/libudev/libudev-monitor.c \
-       src/libudev/libudev-queue.c
+       src/libudev/libudev-queue.c \
+       src/libudev/libudev-hwdb-def.h \
+       src/libudev/libudev-hwdb.c
 
 libudev_la_CFLAGS = \
        $(AM_CFLAGS) \
@@ -1511,7 +1830,7 @@ CLEANFILES += \
 # move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
 libudev-install-move-hook:
        if test "$(libdir)" != "$(rootlibdir)"; then \
-               mkdir -p $(DESTDIR)$(rootlibdir) && \
+               $(MKDIR_P) $(DESTDIR)$(rootlibdir) && \
                so_img_name=$$(readlink $(DESTDIR)$(libdir)/libudev.so) && \
                so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
                ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libudev.so && \
@@ -1547,10 +1866,17 @@ MANPAGES += \
        man/systemd-udevd.service.8
 
 MANPAGES_ALIAS += \
-       man/systemd-udevd.8
+       man/systemd-udevd.8 \
+       man/systemd-udevd-control.socket.8 \
+       man/systemd-udevd-kernel.socket.8
+
+man/systemd-udevd.8: man/systemd-udevd.service.8
+man/systemd-udevd-control.socket.8: man/systemd-udevd.service.8
+man/systemd-udevd-kernel.socket.8: man/systemd-udevd.service.8
 
 udev-confdirs:
-       -mkdir -p $(DESTDIR)$(sysconfdir)/udev/rules.d
+       -$(MKDIR_P) $(DESTDIR)$(sysconfdir)/udev/rules.d
+       -$(MKDIR_P) $(DESTDIR)$(sysconfdir)/udev/hwdb.d
 
 INSTALL_DATA_HOOKS += udev-confdirs
 
@@ -1563,12 +1889,26 @@ dist_udevrules_DATA += \
        rules/60-persistent-input.rules \
        rules/60-persistent-alsa.rules \
        rules/60-persistent-storage.rules \
+       rules/64-btrfs.rules \
        rules/75-net-description.rules \
        rules/75-tty-description.rules \
        rules/78-sound-card.rules \
-       rules/80-drivers.rules \
        rules/95-udev-late.rules
 
+if HAVE_KMOD
+dist_udevrules_DATA += \
+       rules/80-drivers.rules
+endif
+
+dist_udevhwdb_DATA = \
+       hwdb/20-pci-vendor-product.hwdb \
+       hwdb/20-pci-classes.hwdb \
+       hwdb/20-usb-vendor-product.hwdb \
+       hwdb/20-usb-classes.hwdb \
+       hwdb/20-bluetooth-vendor-product.hwdb \
+       hwdb/20-acpi-vendor.hwdb \
+       hwdb/20-OUI.hwdb
+
 udevconfdir = $(sysconfdir)/udev
 dist_udevconf_DATA = \
        src/udev/udev.conf
@@ -1596,10 +1936,10 @@ CLEANFILES += \
        units/systemd-udev-settle.service
 
 systemd-install-hook:
-       mkdir -p $(DESTDIR)$(systemunitdir)/sockets.target.wants
+       $(MKDIR_P) $(DESTDIR)$(systemunitdir)/sockets.target.wants
        ln -sf ../systemd-udevd-control.socket $(DESTDIR)$(systemunitdir)/sockets.target.wants/systemd-udevd-control.socket
        ln -sf ../systemd-udevd-kernel.socket $(DESTDIR)$(systemunitdir)/sockets.target.wants/systemd-udevd-kernel.socket
-       mkdir -p $(DESTDIR)$(systemunitdir)/sysinit.target.wants
+       $(MKDIR_P) $(DESTDIR)$(systemunitdir)/sysinit.target.wants
        ln -sf ../systemd-udevd.service $(DESTDIR)$(systemunitdir)/sysinit.target.wants/systemd-udevd.service
        ln -sf ../systemd-udev-trigger.service $(DESTDIR)$(systemunitdir)/sysinit.target.wants/systemd-udev-trigger.service
 
@@ -1622,11 +1962,11 @@ libudev_core_la_SOURCES = \
        src/udev/udev-rules.c \
        src/udev/udev-ctrl.c \
        src/udev/udev-builtin.c \
-       src/udev/udev-builtin-blkid.c \
+       src/udev/udev-builtin-btrfs.c \
        src/udev/udev-builtin-firmware.c \
        src/udev/udev-builtin-hwdb.c \
        src/udev/udev-builtin-input_id.c \
-       src/udev/udev-builtin-kmod.c \
+       src/udev/udev-builtin-net_id.c \
        src/udev/udev-builtin-path_id.c \
        src/udev/udev-builtin-usb_id.c \
        src/libsystemd-daemon/sd-daemon.c
@@ -1645,8 +1985,17 @@ libudev_core_la_LIBADD = \
 
 libudev_core_la_CPPFLAGS = \
        $(AM_CPPFLAGS) \
-       -DFIRMWARE_PATH="$(FIRMWARE_PATH)" \
-       -DUSB_DATABASE=\"$(USB_DATABASE)\" -DPCI_DATABASE=\"$(PCI_DATABASE)\"
+       -DFIRMWARE_PATH="$(FIRMWARE_PATH)"
+
+if HAVE_KMOD
+libudev_core_la_SOURCES += \
+       src/udev/udev-builtin-kmod.c
+endif
+
+if HAVE_BLKID
+libudev_core_la_SOURCES += \
+       src/udev/udev-builtin-blkid.c
+endif
 
 if HAVE_ACL
 libudev_core_la_SOURCES += \
@@ -1669,6 +2018,7 @@ udevadm_SOURCES = \
        src/udev/udevadm-info.c \
        src/udev/udevadm-control.c \
        src/udev/udevadm-monitor.c \
+       src/udev/udevadm-hwdb.c \
        src/udev/udevadm-settle.c \
        src/udev/udevadm-trigger.c \
        src/udev/udevadm-test.c \
@@ -1678,6 +2028,17 @@ udevadm_LDADD = \
        libudev-core.la \
        libsystemd-shared.la
 
+# Update hwdb on installation. Do not bother if installing
+# in DESTDIR, since this is likely for packaging purposes.
+hwdb-update-hook:
+       -test -n "$(DESTDIR)" || $(bindir)/udevadm hwdb --update
+
+INSTALL_DATA_HOOKS += \
+       hwdb-update-hook
+
+hwdb-remove-hook:
+       -test -n "$(DESTDIR)" || rm -f $(HWDB_BIN)
+
 # ------------------------------------------------------------------------------
 TESTS += \
        test/udev-test.pl \
@@ -1696,22 +2057,10 @@ test_libudev_LDADD = \
        libudev.la
 
 test_udev_SOURCES = \
-       src/test/test-udev.c \
-       $(libudev_core_la_SOURCES) \
-       $(libudev_private_la_SOURCES)
-
-# The test-udev program needs everything compiled with relative path
-# names for /sys, /dev, /run prefixed, pointing to our test/ directory.
-test_udev_CFLAGS = \
-       -DTEST_PREFIX=\"test\" \
-       $(libudev_core_la_CFLAGS) \
-       $(libudev_private_la_CFLAGS)
-
-test_udev_CPPFLAGS =\
-       $(libudev_core_la_CPPFLAGS)
+       src/test/test-udev.c
 
 test_udev_LDADD = \
-       libsystemd-label.la \
+       libudev-core.la \
        libsystemd-shared.la \
        $(BLKID_LIBS) \
        $(KMOD_LIBS) \
@@ -1727,7 +2076,8 @@ check_DATA += \
 
 # packed sysfs test tree
 test/sys:
-       $(AM_V_GEN)mkdir -p test && tar -C test/ -xJf $(top_srcdir)/test/sys.tar.xz
+       $(AM_V_at)$(MKDIR_P) $(dir $@)
+       $(AM_V_GEN)tar -C test/ -xJf $(top_srcdir)/test/sys.tar.xz
 
 test-sys-distclean:
        -rm -rf test/sys
@@ -1842,9 +2192,6 @@ lib_LTLIBRARIES += libgudev-1.0.la
 pkgconfiglib_DATA += \
        src/gudev/gudev-1.0.pc
 
-EXTRA_DIST += \
-       src/gudev/gudev-1.0.pc.in
-
 CLEANFILES += \
        src/gudev/gudev-1.0.pc
 
@@ -1895,31 +2242,18 @@ libgudev_1_0_la_LDFLAGS = \
        -export-dynamic -no-undefined \
        -export-symbols-regex '^g_udev_.*'
 
-EXTRA_DIST += \
-       src/gudev/gudevmarshal.list \
-       src/gudev/gudevenumtypes.h.template \
-       src/gudev/gudevenumtypes.c.template \
-       src/gudev/gjs-example.js \
-       src/gudev/seed-example-enum.js \
-       src/gudev/seed-example.js
-
-CLEANFILES += \
-       $(nodist_libgudev_1_0_la_SOURCES)
-
 src/gudev/gudevmarshal.h: src/gudev/gudevmarshal.list
+       $(AM_V_at)$(MKDIR_P) $(dir $@)
        $(AM_V_GEN)glib-genmarshal $< --prefix=g_udev_marshal --header > $@
 
 src/gudev/gudevmarshal.c: src/gudev/gudevmarshal.list
-       $(AM_V_GEN)echo "#include \"gudevmarshal.h\"" > $@ && \
+       $(AM_V_at)$(MKDIR_P) $(dir $@)
+       $(AM_V_GEN)echo '#include "gudevmarshal.h"' > $@ && \
        glib-genmarshal $< --prefix=g_udev_marshal --body >> $@
 
-src/gudev/gudevenumtypes.h: src/gudev/gudevenumtypes.h.template src/gudev/gudevenums.h
-       $(AM_V_GEN)glib-mkenums --template $^ > \
-           $@.tmp && mv $@.tmp $@
-
-src/gudev/gudevenumtypes.c: src/gudev/gudevenumtypes.c.template src/gudev/gudevenums.h
-       $(AM_V_GEN)glib-mkenums --template $^ > \
-           $@.tmp && mv $@.tmp $@
+src/gudev/gudevenumtypes.%: src/gudev/gudevenumtypes.%.template src/gudev/gudevenums.h
+       $(AM_V_at)$(MKDIR_P) $(dir $@)
+       $(AM_V_GEN)glib-mkenums --template $^ > $@
 
 if HAVE_INTROSPECTION
 -include $(INTROSPECTION_MAKEFILE)
@@ -1944,16 +2278,16 @@ src_gudev_GUdev_1_0_gir_SCANNERFLAGS = \
        --warn-all
 
 src_gudev_GUdev_1_0_gir_FILES = \
-       $(top_srcdir)/src/gudev/gudev.h \
-       $(top_srcdir)/src/gudev/gudevtypes.h \
-       $(top_srcdir)/src/gudev/gudevenums.h \
-       $(or $(wildcard $(top_builddir)/src/gudev/gudevenumtypes.h),$(top_srcdir)/src/gudev/gudevenumtypes.h) \
-       $(top_srcdir)/src/gudev/gudevclient.h \
-       $(top_srcdir)/src/gudev/gudevdevice.h \
-       $(top_srcdir)/src/gudev/gudevenumerator.h \
-       $(top_srcdir)/src/gudev/gudevclient.c \
-       $(top_srcdir)/src/gudev/gudevdevice.c \
-       $(top_srcdir)/src/gudev/gudevenumerator.c
+       src/gudev/gudev.h \
+       src/gudev/gudevtypes.h \
+       src/gudev/gudevenums.h \
+       src/gudev/gudevenumtypes.h \
+       src/gudev/gudevclient.h \
+       src/gudev/gudevdevice.h \
+       src/gudev/gudevenumerator.h \
+       src/gudev/gudevclient.c \
+       src/gudev/gudevdevice.c \
+       src/gudev/gudevenumerator.c
 
 INTROSPECTION_GIRS = src/gudev/GUdev-1.0.gir
 INTROSPECTION_SCANNER_ARGS = --c-include=gudev/gudev.h
@@ -1972,7 +2306,7 @@ endif # HAVE_INTROSPECTION
 # move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
 libgudev-install-move-hook:
        if test "$(libdir)" != "$(rootlibdir)"; then \
-               mkdir -p $(DESTDIR)$(rootlibdir) && \
+               $(MKDIR_P) $(DESTDIR)$(rootlibdir) && \
                so_img_name=$$(readlink $(DESTDIR)$(libdir)/libgudev-1.0.so) && \
                so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
                ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libgudev-1.0.so && \
@@ -1986,6 +2320,16 @@ INSTALL_EXEC_HOOKS += libgudev-install-move-hook
 UNINSTALL_EXEC_HOOKS += libgudev-uninstall-move-hook
 endif
 
+EXTRA_DIST += \
+       src/gudev/gudev-1.0.pc.in \
+       src/gudev/gudevmarshal.list \
+       src/gudev/gudevenumtypes.h.template \
+       src/gudev/gudevenumtypes.c.template \
+       src/gudev/gjs-example.js \
+       src/gudev/seed-example-enum.js \
+       src/gudev/seed-example.js
+
+
 # ------------------------------------------------------------------------------
 if ENABLE_KEYMAP
 keymap_SOURCES = \
@@ -2021,12 +2365,7 @@ dist_udevhome_SCRIPTS = \
 TESTS += \
        src/udev/keymap/check-keymaps.sh
 
-EXTRA_DIST += \
-       src/udev/keymap/check-keymaps.sh \
-       src/udev/keymap/keyboard-force-release.sh.in
-
 CLEANFILES += \
-       $(nodist_keymap_SOURCES) \
        src/udev/keymap/keys.txt \
        src/udev/keymap/keys-from-name.gperf \
        src/udev/keymap/keyboard-force-release.sh
@@ -2059,6 +2398,7 @@ dist_udevkeymap_DATA = \
        keymaps/hewlett-packard-presario-2100 \
        keymaps/hewlett-packard-tablet \
        keymaps/hewlett-packard-tx2 \
+       keymaps/hewlett-packard_elitebook-8440p \
        keymaps/ibm-thinkpad-usb-keyboard-trackpoint \
        keymaps/inventec-symphony_6.0_7.0 \
        keymaps/lenovo-3000 \
@@ -2080,11 +2420,12 @@ dist_udevkeymap_DATA = \
        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-90x3a \
+       keymaps/samsung-series-9 \
        keymaps/samsung-sq1us \
        keymaps/samsung-sx20s \
        keymaps/toshiba-satellite_a100 \
@@ -2098,14 +2439,14 @@ dist_udevkeymapforcerel_DATA = \
        keymaps-force-release/dell-xps \
        keymaps-force-release/hp-other \
        keymaps-force-release/samsung-other \
-       keymaps-force-release/samsung-90x3a \
+       keymaps-force-release/samsung-series-9 \
        keymaps-force-release/common-volume-keys
 
-src/udev/keymap/keys.txt: $(INCLUDE_PREFIX)/linux/input.h
-       $(AM_V_at)mkdir -p src/udev/keymap
-       $(AM_V_GEN)$(AWK) '/^#define.*KEY_[^ ]+[ \t]+[0-9]/ { if ($$2 != "KEY_MAX") { print $$2 } }' < $< | sed 's/^KEY_COFFEE$$/KEY_SCREENLOCK/' > $@
+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
+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
@@ -2115,6 +2456,10 @@ 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 \
@@ -2178,7 +2523,7 @@ pkgconfiglib_DATA += \
 # move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
 libsystemd-id128-install-hook:
        if test "$(libdir)" != "$(rootlibdir)"; then \
-               mkdir -p $(DESTDIR)$(rootlibdir) && \
+               $(MKDIR_P) $(DESTDIR)$(rootlibdir) && \
                so_img_name=$$(readlink $(DESTDIR)$(libdir)/libsystemd-id128.so) && \
                so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
                ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libsystemd-id128.so && \
@@ -2201,53 +2546,13 @@ EXTRA_DIST += \
 # ------------------------------------------------------------------------------
 systemd_journald_SOURCES = \
        src/journal/journald.c \
-       src/journal/journald.h \
-       src/journal/sd-journal.c \
-       src/journal/journal-file.c \
-       src/journal/journal-file.h \
-       src/journal/lookup3.c \
-       src/journal/lookup3.h \
-       src/journal/journal-rate-limit.c \
-       src/journal/journal-rate-limit.h \
-       src/journal/sparse-endian.h \
-       src/journal/journal-def.h \
-       src/journal/journal-internal.h \
-       src/journal/compress.h
-
-nodist_systemd_journald_SOURCES = \
-       src/journal/journald-gperf.c
-
-systemd_journald_CFLAGS =
+       src/journal/journald-server.h
 
 systemd_journald_LDADD = \
-       libsystemd-label.la \
+       libsystemd-journal-internal.la \
        libsystemd-shared.la \
-       libsystemd-audit.la \
-       libsystemd-daemon.la \
        libsystemd-id128-internal.la
 
-if ENABLE_LOGIND
-systemd_journald_LDADD += \
-       libsystemd-login-internal.la
-endif
-
-if HAVE_ACL
-systemd_journald_LDADD += \
-       libsystemd-acl.la
-endif
-
-if HAVE_XZ
-systemd_journald_SOURCES += \
-       src/journal/compress.c
-
-systemd_journald_CFLAGS += \
-       $(AM_CFLAGS) \
-       $(XZ_CFLAGS)
-
-systemd_journald_LDADD += \
-       $(XZ_LIBS)
-endif
-
 systemd_cat_SOURCES = \
        src/journal/cat.c
 
@@ -2258,12 +2563,34 @@ systemd_cat_LDADD = \
 journalctl_SOURCES = \
        src/journal/journalctl.c
 
+journalctl_CFLAGS = \
+       $(AM_CFLAGS)
+
 journalctl_LDADD = \
        libsystemd-shared.la \
        libsystemd-journal-internal.la \
        libsystemd-id128-internal.la \
        libsystemd-logs.la
 
+if HAVE_QRENCODE
+journalctl_SOURCES += \
+       src/journal/journal-qrcode.c \
+       src/journal/journal-qrcode.h
+
+journalctl_CFLAGS += \
+       $(QRENCODE_CFLAGS)
+
+journalctl_LDADD += \
+       $(QRENCODE_LIBS)
+endif
+
+systemd_coredumpctl_SOURCES = \
+       src/journal/coredumpctl.c
+
+systemd_coredumpctl_LDADD = \
+       libsystemd-shared.la \
+       libsystemd-journal.la
+
 test_journal_SOURCES = \
        src/journal/test-journal.c
 
@@ -2280,6 +2607,14 @@ test_journal_send_LDADD = \
        libsystemd-journal-internal.la \
        libsystemd-id128-internal.la
 
+test_journal_syslog_SOURCES = \
+       src/journal/test-journal-syslog.c
+
+test_journal_syslog_LDADD = \
+       libsystemd-journal-internal.la \
+       libsystemd-shared.la \
+       libsystemd-id128-internal.la
+
 test_journal_match_SOURCES = \
        src/journal/test-journal-match.c
 
@@ -2288,6 +2623,14 @@ test_journal_match_LDADD = \
        libsystemd-journal-internal.la \
        libsystemd-id128-internal.la
 
+test_journal_enum_SOURCES = \
+       src/journal/test-journal-enum.c
+
+test_journal_enum_LDADD = \
+       libsystemd-shared.la \
+       libsystemd-journal-internal.la \
+       libsystemd-id128-internal.la
+
 test_journal_stream_SOURCES = \
        src/journal/test-journal-stream.c
 
@@ -2296,11 +2639,48 @@ test_journal_stream_LDADD = \
        libsystemd-journal-internal.la \
        libsystemd-id128-internal.la
 
+test_journal_verify_SOURCES = \
+       src/journal/test-journal-verify.c
+
+test_journal_verify_LDADD = \
+       libsystemd-shared.la \
+       libsystemd-journal-internal.la \
+       libsystemd-id128-internal.la
+
+test_mmap_cache_SOURCES = \
+       src/journal/test-mmap-cache.c
+
+test_mmap_cache_LDADD = \
+       libsystemd-shared.la \
+       libsystemd-journal-internal.la
+
+test_catalog_SOURCES = \
+       src/journal/test-catalog.c
+
+test_catalog_LDADD = \
+       libsystemd-shared.la \
+       libsystemd-label.la \
+       libsystemd-journal-internal.la \
+       libsystemd-id128-internal.la
+
 libsystemd_journal_la_SOURCES = \
        src/journal/sd-journal.c \
+       src/systemd/sd-journal.h \
        src/journal/journal-file.c \
+       src/journal/journal-file.h \
+       src/journal/journal-vacuum.c \
+       src/journal/journal-vacuum.h \
+       src/journal/journal-verify.c \
+       src/journal/journal-verify.h \
        src/journal/lookup3.c \
-       src/journal/journal-send.c
+       src/journal/lookup3.h \
+       src/journal/journal-send.c \
+       src/journal/journal-def.h \
+       src/journal/compress.h \
+       src/journal/catalog.c \
+       src/journal/catalog.h \
+       src/journal/mmap-cache.c \
+       src/journal/mmap-cache.h
 
 libsystemd_journal_la_CFLAGS = \
        $(AM_CFLAGS) \
@@ -2314,35 +2694,95 @@ libsystemd_journal_la_LDFLAGS = \
 
 libsystemd_journal_la_LIBADD = \
        libsystemd-shared.la \
+       libsystemd-label.la \
        libsystemd-id128-internal.la
 
 libsystemd_journal_internal_la_SOURCES = \
-       $(libsystemd_journal_la_SOURCES)
+       $(libsystemd_journal_la_SOURCES) \
+       src/journal/journald-kmsg.c \
+       src/journal/journald-kmsg.h \
+       src/journal/journald-syslog.c \
+       src/journal/journald-syslog.h \
+       src/journal/journald-stream.c \
+       src/journal/journald-stream.h \
+       src/journal/journald-server.c \
+       src/journal/journald-server.h \
+       src/journal/journald-console.c \
+       src/journal/journald-console.h \
+       src/journal/journald-native.c \
+       src/journal/journald-native.h \
+       src/journal/journald-rate-limit.c \
+       src/journal/journald-rate-limit.h \
+       src/journal/journal-internal.h
+
+libsystemd_journal_internal_la_CFLAGS = \
+       $(AM_CFLAGS)
+
+libsystemd_journal_internal_la_LIBADD = \
+       libsystemd-label.la \
+       libsystemd-audit.la \
+       libsystemd-daemon.la \
+       libudev.la \
+       libsystemd-shared.la \
+       libsystemd-label.la
+
+nodist_libsystemd_journal_internal_la_SOURCES = \
+       src/journal/journald-gperf.c
+
+if ENABLE_LOGIND
+libsystemd_journal_internal_la_LIBADD += \
+       libsystemd-login-internal.la
+endif
+
+if HAVE_ACL
+libsystemd_journal_internal_la_LIBADD += \
+       libsystemd-acl.la
+endif
 
 if HAVE_XZ
 libsystemd_journal_la_SOURCES += \
        src/journal/compress.c
 
 libsystemd_journal_la_CFLAGS += \
-       $(AM_CFLAGS) \
        $(XZ_CFLAGS)
 
 libsystemd_journal_la_LIBADD += \
        $(XZ_LIBS)
 
-libsystemd_journal_internal_la_CFLAGS = \
-       $(AM_CFLAGS)
+libsystemd_journal_internal_la_CFLAGS += \
        $(XZ_CFLAGS)
 
-libsystemd_journal_internal_la_LIBADD = \
+libsystemd_journal_internal_la_LIBADD += \
        $(XZ_LIBS)
 
 endif
 
+if HAVE_GCRYPT
+libsystemd_journal_la_SOURCES += \
+       src/journal/journal-authenticate.c \
+       src/journal/journal-authenticate.h \
+       src/journal/fsprg.c \
+       src/journal/fsprg.h
+
+libsystemd_journal_la_CFLAGS += \
+       $(GCRYPT_CFLAGS) \
+       -Wno-pointer-arith
+
+libsystemd_journal_la_LIBADD += \
+       $(GCRYPT_LIBS)
+
+libsystemd_journal_internal_la_CFLAGS += \
+       $(GCRYPT_CFLAGS) \
+       -Wno-pointer-arith
+
+libsystemd_journal_internal_la_LIBADD += \
+       $(GCRYPT_LIBS)
+endif
+
 # move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
 libsystemd-journal-install-hook:
        if test "$(libdir)" != "$(rootlibdir)"; then \
-               mkdir -p $(DESTDIR)$(rootlibdir) && \
+               $(MKDIR_P) $(DESTDIR)$(rootlibdir) && \
                so_img_name=$$(readlink $(DESTDIR)$(libdir)/libsystemd-journal.so) && \
                so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
                ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libsystemd-journal.so && \
@@ -2358,16 +2798,39 @@ libsystemd-journal-uninstall-hook:
 UNINSTALL_EXEC_HOOKS += \
        libsystemd-journal-uninstall-hook
 
+# Update catalog on installation. Do not bother if installing
+# in DESTDIR, since this is likely for packaging purposes.
+catalog-update-hook:
+       -test -n "$(DESTDIR)" || $(rootbindir)/journalctl --update-catalog
+
+INSTALL_DATA_HOOKS += \
+       catalog-update-hook
+
+catalog-remove-hook:
+       -test -n "$(DESTDIR)" || rm -f $(catalogstatedir)/database
+
+UNINSTALL_DATA_HOOKS += \
+       catalog-remove-hook
+
 noinst_PROGRAMS += \
        test-journal \
        test-journal-send \
+       test-journal-syslog \
        test-journal-match \
-       test-journal-stream
+       test-journal-enum \
+       test-journal-stream \
+       test-journal-verify \
+       test-mmap-cache \
+       test-catalog
 
 TESTS += \
-       test-journal
+       test-journal \
+       test-journal-send \
+       test-journal-syslog \
        test-journal-match \
-       test-journal-stream
+       test-journal-stream \
+       test-journal-verify \
+       test-mmap-cache
 
 pkginclude_HEADERS += \
        src/systemd/sd-journal.h \
@@ -2386,6 +2849,7 @@ rootbin_PROGRAMS += \
        journalctl
 
 bin_PROGRAMS += \
+       systemd-coredumpctl \
        systemd-cat
 
 dist_systemunit_DATA += \
@@ -2401,6 +2865,9 @@ dist_pkgsysconf_DATA += \
 pkgconfiglib_DATA += \
        src/journal/libsystemd-journal.pc
 
+dist_catalog_DATA = \
+       catalog/systemd.catalog
+
 journal-install-data-hook:
        $(MKDIR_P) -m 0755 \
                $(DESTDIR)$(systemunitdir)/sockets.target.wants \
@@ -2409,8 +2876,9 @@ journal-install-data-hook:
                rm -f systemd-journald.socket && \
                $(LN_S) ../systemd-journald.socket )
        ( cd $(DESTDIR)$(systemunitdir)/sysinit.target.wants && \
-               rm -f systemd-journald.service && \
-               $(LN_S) ../systemd-journald.service )
+               rm -f systemd-journald.service systemd-journal-flush.service && \
+               $(LN_S) ../systemd-journald.service && \
+               $(LN_S) ../systemd-journal-flush.service )
 
 INSTALL_DATA_HOOKS += \
        journal-install-data-hook
@@ -2425,6 +2893,43 @@ EXTRA_DIST += \
 CLEANFILES += \
        src/journal/journald-gperf.c
 
+if HAVE_MICROHTTPD
+
+gatewayddocumentrootdir=$(pkgdatadir)/gatewayd
+
+rootlibexec_PROGRAMS += \
+       systemd-journal-gatewayd
+
+systemd_journal_gatewayd_SOURCES = \
+       src/journal/journal-gatewayd.c
+
+systemd_journal_gatewayd_LDADD = \
+       libsystemd-shared.la \
+       libsystemd-logs.la \
+       libsystemd-journal-internal.la \
+       libsystemd-id128-internal.la \
+       libsystemd-daemon.la \
+       $(MICROHTTPD_LIBS)
+
+systemd_journal_gatewayd_CFLAGS = \
+       -DDOCUMENT_ROOT=\"$(gatewayddocumentrootdir)\" \
+       $(AM_CFLAGS) \
+       $(MICROHTTPD_CFLAGS)
+
+dist_systemunit_DATA += \
+       units/systemd-journal-gatewayd.socket
+
+nodist_systemunit_DATA += \
+       units/systemd-journal-gatewayd.service
+
+dist_gatewayddocumentroot_DATA = \
+       src/journal/browse.html
+
+endif
+
+EXTRA_DIST += \
+       units/systemd-journal-gatewayd.service.in
+
 # ------------------------------------------------------------------------------
 if ENABLE_COREDUMP
 systemd_coredump_SOURCES = \
@@ -2446,13 +2951,13 @@ rootlibexec_PROGRAMS += \
 sysctl_DATA = \
        sysctl.d/coredump.conf
 
-EXTRA_DIST += \
-       sysctl.d/coredump.conf.in
-
 CLEANFILES += \
        sysctl.d/coredump.conf
 endif
 
+EXTRA_DIST += \
+       sysctl.d/coredump.conf.in
+
 # ------------------------------------------------------------------------------
 if ENABLE_BINFMT
 systemd_binfmt_SOURCES = \
@@ -2493,10 +2998,10 @@ MANPAGES_ALIAS +=  \
        man/systemd-binfmt.8
 
 man/systemd-binfmt.8: man/systemd-binfmt.service.8
+endif
 
 EXTRA_DIST += \
        units/systemd-binfmt.service.in
-endif
 
 # ------------------------------------------------------------------------------
 if ENABLE_VCONSOLE
@@ -2530,10 +3035,10 @@ MANPAGES_ALIAS += \
        man/systemd-vconsole-setup.8
 
 man/systemd-vconsole-setup.8: man/systemd-vconsole-setup.service.8
+endif
 
 EXTRA_DIST += \
        units/systemd-vconsole-setup.service.in
-endif
 
 # ------------------------------------------------------------------------------
 if ENABLE_READAHEAD
@@ -2550,7 +3055,8 @@ systemd_readahead_LDADD = \
        libsystemd-daemon.la \
        libudev.la
 
-pkginclude_HEADERS += \
+dist_doc_DATA += \
+       src/readahead/sd-readahead.c \
        src/systemd/sd-readahead.h
 
 rootlibexec_PROGRAMS += \
@@ -2565,11 +3071,6 @@ nodist_systemunit_DATA += \
        units/systemd-readahead-replay.service \
        units/systemd-readahead-done.service
 
-EXTRA_DIST += \
-       units/systemd-readahead-collect.service.in \
-       units/systemd-readahead-replay.service.in \
-       units/systemd-readahead-done.service.in
-
 MANPAGES += \
        man/sd_readahead.3 \
        man/sd-readahead.3 \
@@ -2588,6 +3089,11 @@ man/systemd-readahead.8: man/systemd-readahead-replay.service.8
 
 endif
 
+EXTRA_DIST += \
+       units/systemd-readahead-collect.service.in \
+       units/systemd-readahead-replay.service.in \
+       units/systemd-readahead-done.service.in
+
 # ------------------------------------------------------------------------------
 if ENABLE_QUOTACHECK
 rootlibexec_PROGRAMS += \
@@ -2596,9 +3102,6 @@ rootlibexec_PROGRAMS += \
 nodist_systemunit_DATA += \
        units/systemd-quotacheck.service
 
-EXTRA_DIST += \
-       units/systemd-quotacheck.service.in
-
 systemd_quotacheck_SOURCES = \
        src/quotacheck/quotacheck.c
 
@@ -2615,6 +3118,12 @@ man/systemd-quotacheck.8: man/systemd-quotacheck.service.8
 
 endif
 
+EXTRA_DIST += \
+       units/systemd-quotacheck.service.in
+
+nodist_systemunit_DATA += \
+       units/quotaon.service
+
 # ------------------------------------------------------------------------------
 if ENABLE_RANDOMSEED
 rootlibexec_PROGRAMS += \
@@ -2624,10 +3133,6 @@ nodist_systemunit_DATA += \
        units/systemd-random-seed-save.service \
        units/systemd-random-seed-load.service
 
-EXTRA_DIST += \
-       units/systemd-random-seed-save.service.in \
-       units/systemd-random-seed-load.service.in
-
 systemd_random_seed_SOURCES = \
        src/random-seed/random-seed.c
 
@@ -2661,6 +3166,10 @@ man/systemd-random-seed.8: man/systemd-random-seed-load.service.8
 
 endif
 
+EXTRA_DIST += \
+       units/systemd-random-seed-save.service.in \
+       units/systemd-random-seed-load.service.in
+
 # ------------------------------------------------------------------------------
 if HAVE_LIBCRYPTSETUP
 rootlibexec_PROGRAMS += \
@@ -2740,8 +3249,8 @@ dist_dbuspolicy_DATA += \
 dist_dbussystemservice_DATA += \
        src/hostname/org.freedesktop.hostname1.service
 
-polkitpolicy_in_files += \
-       src/hostname/org.freedesktop.hostname1.policy.in
+polkitpolicy_files += \
+       src/hostname/org.freedesktop.hostname1.policy
 
 dbusinterface_DATA += \
        org.freedesktop.hostname1.xml
@@ -2767,9 +3276,31 @@ MANPAGES_ALIAS += \
 
 man/systemd-hostnamed.8: man/systemd-hostnamed.service.8
 
+hostnamectl_SOURCES = \
+       src/hostname/hostnamectl.c
+
+hostnamectl_CFLAGS = \
+       $(AM_CFLAGS) \
+       $(DBUS_CFLAGS)
+
+hostnamectl_LDADD = \
+       libsystemd-shared.la \
+       libsystemd-dbus.la \
+       libsystemd-id128-internal.la
+
+bin_PROGRAMS += \
+       hostnamectl
+
+MANPAGES += \
+       man/hostnamectl.1
+
+endif
+
+polkitpolicy_in_files += \
+       src/hostname/org.freedesktop.hostname1.policy.in
+
 EXTRA_DIST += \
        units/systemd-hostnamed.service.in
-endif
 
 # ------------------------------------------------------------------------------
 if ENABLE_LOCALED
@@ -2798,8 +3329,8 @@ dist_dbuspolicy_DATA += \
 dist_dbussystemservice_DATA += \
        src/locale/org.freedesktop.locale1.service
 
-polkitpolicy_in_files += \
-       src/locale/org.freedesktop.locale1.policy.in
+polkitpolicy_files += \
+       src/locale/org.freedesktop.locale1.policy
 
 dbusinterface_DATA += \
        org.freedesktop.locale1.xml
@@ -2825,9 +3356,6 @@ MANPAGES_ALIAS += \
 
 man/systemd-localed.8: man/systemd-localed.service.8
 
-EXTRA_DIST += \
-       units/systemd-localed.service.in
-
 dist_pkgdata_DATA += \
        src/locale/kbd-model-map
 
@@ -2837,8 +3365,32 @@ dist_noinst_SCRIPT = \
 update-kbd-model-map:
        src/locale/generate-kbd-model-map > src/locale/kbd-model-map
 
+localectl_SOURCES = \
+       src/locale/localectl.c
+
+localectl_CFLAGS = \
+       $(AM_CFLAGS) \
+       $(DBUS_CFLAGS)
+
+localectl_LDADD = \
+       libsystemd-shared.la \
+       libsystemd-dbus.la \
+       libsystemd-id128-internal.la
+
+bin_PROGRAMS += \
+       localectl
+
+MANPAGES += \
+       man/localectl.1
+
 endif
 
+polkitpolicy_in_files += \
+       src/locale/org.freedesktop.locale1.policy.in
+
+EXTRA_DIST += \
+       units/systemd-localed.service.in
+
 # ------------------------------------------------------------------------------
 if ENABLE_TIMEDATED
 systemd_timedated_SOURCES = \
@@ -2865,8 +3417,8 @@ dist_dbuspolicy_DATA += \
 nodist_systemunit_DATA += \
        units/systemd-timedated.service
 
-polkitpolicy_in_files += \
-       src/timedate/org.freedesktop.timedate1.policy.in
+polkitpolicy_files += \
+       src/timedate/org.freedesktop.timedate1.policy
 
 org.freedesktop.timedate1.xml: systemd-timedated
        $(AM_V_GEN)$(LIBTOOL) --mode=execute $(OBJCOPY) -O binary -j introspect.timedate1 $< $@.tmp && \
@@ -2877,6 +3429,9 @@ dbusinterface_DATA += \
        org.freedesktop.timedate1.xml
 
 timedated-install-data-hook:
+       $(MKDIR_P) -m 0755 \
+               $(DESTDIR)$(prefix)/lib/systemd/ntp-units.d \
+               $(DESTDIR)$(sysconfdir)/systemd/ntp-units.d
        ( cd $(DESTDIR)$(systemunitdir) && \
                rm -f dbus-org.freedesktop.timedate1.service  && \
                $(LN_S) systemd-timedated.service dbus-org.freedesktop.timedate1.service )
@@ -2892,9 +3447,30 @@ MANPAGES_ALIAS += \
 
 man/systemd-timedated.8: man/systemd-timedated.service.8
 
+timedatectl_SOURCES = \
+       src/timedate/timedatectl.c
+
+timedatectl_CFLAGS = \
+       $(AM_CFLAGS) \
+       $(DBUS_CFLAGS)
+
+timedatectl_LDADD = \
+       libsystemd-shared.la \
+       libsystemd-dbus.la
+
+bin_PROGRAMS += \
+       timedatectl
+
+MANPAGES += \
+       man/timedatectl.1
+
+endif
+
+polkitpolicy_in_files += \
+       src/timedate/org.freedesktop.timedate1.policy.in
+
 EXTRA_DIST += \
        units/systemd-timedated.service.in
-endif
 
 # ------------------------------------------------------------------------------
 if ENABLE_LOGIND
@@ -2906,6 +3482,8 @@ systemd_logind_SOURCES = \
        src/login/logind-device.h \
        src/login/logind-button.c \
        src/login/logind-button.h \
+       src/login/logind-action.c \
+       src/login/logind-action.h \
        src/login/logind-seat.c \
        src/login/logind-seat.h \
        src/login/logind-session.c \
@@ -3055,7 +3633,7 @@ endif
 # move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
 libsystemd-login-install-hook:
        if test "$(libdir)" != "$(rootlibdir)"; then \
-               mkdir -p $(DESTDIR)$(rootlibdir) && \
+               $(MKDIR_P) $(DESTDIR)$(rootlibdir) && \
                so_img_name=$$(readlink $(DESTDIR)$(libdir)/libsystemd-login.so) && \
                so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
                ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libsystemd-login.so && \
@@ -3096,13 +3674,13 @@ noinst_LTLIBRARIES += \
 pkgconfiglib_DATA += \
        src/login/libsystemd-login.pc
 
-polkitpolicy_in_files += \
-       src/login/org.freedesktop.login1.policy.in
+polkitpolicy_files += \
+       src/login/org.freedesktop.login1.policy
 
 logind-install-data-hook:
        $(MKDIR_P) -m 0755 \
                $(DESTDIR)$(systemunitdir)/multi-user.target.wants \
-               $(DESTDIR)$(localstatedir)/lib/systemd
+               $(DESTDIR)$(systemdstatedir)
        ( cd $(DESTDIR)$(systemunitdir) && \
                rm -f dbus-org.freedesktop.login1.service && \
                $(LN_S) systemd-logind.service dbus-org.freedesktop.login1.service)
@@ -3119,8 +3697,7 @@ systemd_multi_seat_x_SOURCES = \
 
 systemd_multi_seat_x_LDADD = \
        libsystemd-label.la \
-       libsystemd-shared.la \
-       libudev.la
+       libsystemd-shared.la
 
 rootlibexec_PROGRAMS += \
        systemd-multi-seat-x
@@ -3147,13 +3724,14 @@ MANPAGES += \
        man/systemd-user-sessions.service.8
 
 MANPAGES_ALIAS += \
-       man/systemd-logind.8 \
        man/sd_login_monitor_unref.3 \
        man/sd_login_monitor_flush.3 \
        man/sd_login_monitor_get_fd.3 \
+       man/sd_login_monitor.3 \
        man/sd_session_get_uid.3 \
        man/sd_session_get_seat.3 \
        man/sd_session_get_service.3 \
+       man/sd_session_get_state.3 \
        man/sd_session_get_type.3 \
        man/sd_session_get_class.3 \
        man/sd_session_get_display.3 \
@@ -3166,15 +3744,18 @@ MANPAGES_ALIAS += \
        man/sd_seat_can_multi_session.3 \
        man/sd_get_sessions.3 \
        man/sd_get_uids.3 \
+       man/systemd-logind.8 \
        man/systemd-user-sessions.8
 
 man/systemd-logind.8: man/systemd-logind.service.8
 man/sd_login_monitor_unref.3: man/sd_login_monitor_new.3
 man/sd_login_monitor_flush.3: man/sd_login_monitor_new.3
 man/sd_login_monitor_get_fd.3: man/sd_login_monitor_new.3
+man/sd_login_monitor.3: man/sd_login_monitor_new.3
 man/sd_session_get_uid.3: man/sd_session_is_active.3
 man/sd_session_get_seat.3: man/sd_session_is_active.3
 man/sd_session_get_service.3: man/sd_session_is_active.3
+man/sd_session_get_state.3: man/sd_session_is_active.3
 man/sd_session_get_type.3: man/sd_session_is_active.3
 man/sd_session_get_class.3: man/sd_session_is_active.3
 man/sd_session_get_display.3: man/sd_session_is_active.3
@@ -3189,6 +3770,15 @@ man/sd_get_sessions.3: man/sd_get_seats.3
 man/sd_get_uids.3: man/sd_get_seats.3
 man/systemd-user-sessions.8: man/systemd-user-sessions.service.8
 
+CLEANFILES += \
+       src/login/logind-gperf.c \
+       src/login/71-seat.rules \
+       src/login/73-seat-late.rules
+endif
+
+polkitpolicy_in_files += \
+       src/login/org.freedesktop.login1.policy.in
+
 EXTRA_DIST += \
        src/login/logind-gperf.gperf \
        src/login/libsystemd-login.pc.in \
@@ -3198,11 +3788,37 @@ EXTRA_DIST += \
        units/systemd-logind.service.in \
        units/systemd-user-sessions.service.in
 
-CLEANFILES += \
-       src/login/logind-gperf.c \
-       src/login/71-seat.rules \
-       src/login/73-seat-late.rules
+# ------------------------------------------------------------------------------
+
+if HAVE_PYTHON_DEVEL
+
+pkgpyexec_LTLIBRARIES = \
+       _journal.la
+
+_journal_la_SOURCES = \
+       src/python-systemd/_journal.c
+
+_journal_la_CFLAGS = \
+       $(AM_CFLAGS) \
+        -fvisibility=default \
+       $(PYTHON_CFLAGS)
+
+_journal_la_LDFLAGS = \
+       $(AM_LDFLAGS) \
+       -shared \
+       -module \
+       -avoid-version
+
+_journal_la_LIBADD = \
+       $(PYTHON_LIBS) \
+       libsystemd-journal.la
+
+dist_pkgpyexec_PYTHON = \
+       src/python-systemd/journal.py \
+       src/python-systemd/__init__.py
+
 endif
+
 # ------------------------------------------------------------------------------
 
 SED_PROCESS = \
@@ -3216,6 +3832,13 @@ SED_PROCESS = \
                -e 's,@pkgdatadir\@,$(pkgdatadir),g' \
                -e 's,@systemunitdir\@,$(systemunitdir),g' \
                -e 's,@userunitdir\@,$(userunitdir),g' \
+               -e 's,@systempresetdir\@,$(systempresetdir),g' \
+               -e 's,@userpresetdir\@,$(userpresetdir),g' \
+               -e 's,@udevhwdbdir\@,$(udevhwdbdir),g' \
+               -e 's,@udevrulesdir\@,$(udevrulesdir),g' \
+               -e 's,@catalogdir\@,$(catalogdir),g' \
+               -e 's,@tmpfilesdir\@,$(tmpfilesdir),g' \
+               -e 's,@sysctldir\@,$(sysctldir),g' \
                -e 's,@PACKAGE_VERSION\@,$(PACKAGE_VERSION),g' \
                -e 's,@PACKAGE_NAME\@,$(PACKAGE_NAME),g' \
                -e 's,@PACKAGE_URL\@,$(PACKAGE_URL),g' \
@@ -3228,7 +3851,12 @@ SED_PROCESS = \
                -e 's,@rootprefix\@,$(rootprefix),g' \
                -e 's,@udevlibexecdir\@,$(udevlibexecdir),g' \
                -e 's,@sushell\@,$(sushell),g' \
-               < $< > $@ || rm $@
+               -e 's,@KILL\@,$(KILL),g' \
+               -e 's,@QUOTAON\@,$(QUOTAON),g' \
+               -e 's,@QUOTACHECK\@,$(QUOTACHECK),g' \
+               -e 's,@SYSTEM_SYSVINIT_PATH\@,$(sysvinitdir),g' \
+               -e 's,@VARLOGDIR\@,$(varlogdir),g' \
+               < $< > $@
 
 units/%: units/%.in Makefile
        $(SED_PROCESS)
@@ -3256,20 +3884,20 @@ src/%.policy.in: src/%.policy.in.in Makefile
        $(AM_V_GEN)chmod +x $@
 
 src/%.c: src/%.gperf
-       $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
-       $(GPERF) < $< > $@
+       $(AM_V_at)$(MKDIR_P) $(dir $@)
+       $(AM_V_GEN)$(GPERF) < $< > $@
 
 src/%: src/%.m4
-       $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
-       $(M4) -P $(M4_DEFINES) < $< > $@ || rm $@
+       $(AM_V_at)$(MKDIR_P) $(dir $@)
+       $(AM_V_GEN)$(M4) -P $(M4_DEFINES) < $< > $@
 
 M4_PROCESS_SYSTEM = \
        $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
-       $(M4) -P $(M4_DEFINES) -DFOR_SYSTEM=1 < $< > $@ || rm $@
+       $(M4) -P $(M4_DEFINES) -DFOR_SYSTEM=1 < $< > $@
 
 M4_PROCESS_USER = \
        $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
-       $(M4) -P $(M4_DEFINES) -DFOR_USER=1 < $< > $@ || rm $@
+       $(M4) -P $(M4_DEFINES) -DFOR_USER=1 < $< > $@
 
 units/%: units/%.m4 Makefile
        $(M4_PROCESS_SYSTEM)
@@ -3278,7 +3906,7 @@ units/user/%: units/%.m4 Makefile
        $(M4_PROCESS_USER)
 
 nodist_polkitpolicy_DATA = \
-       $(polkitpolicy_in_files:.policy.in=.policy) \
+       $(polkitpolicy_files) \
        $(polkitpolicy_in_in_files:.policy.in.in=.policy)
 
 EXTRA_DIST += \
@@ -3293,11 +3921,14 @@ CLEANFILES += \
        $(pkgconfiglib_DATA) \
        $(nodist_polkitpolicy_DATA)
 
-if HAVE_XSLTPROC
+if ENABLE_MANPAGES
 XSLTPROC_FLAGS = \
        --nonet \
        --stringparam man.output.quietly 1 \
-       --stringparam funcsynopsis.style ansi
+       --stringparam funcsynopsis.style ansi \
+       --stringparam man.th.extra1.suppress 1 \
+       --stringparam man.authors.section.enabled 0 \
+       --stringparam man.copyright.section.enabled 0
 
 XSLTPROC_PROCESS_MAN = \
        $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
@@ -3322,7 +3953,7 @@ man/%.7: man/%.xml
 man/%.8: man/%.xml
        $(XSLTPROC_PROCESS_MAN)
 
-man/%.html: man/%.xml
+man/%.html: man/%.xml man/custom-html.xsl
        $(XSLTPROC_PROCESS_HTML)
 
 CLEANFILES += \
@@ -3330,11 +3961,37 @@ CLEANFILES += \
        ${XML_FILES:.xml=.html}
 endif
 
-DBUS_PREPROCESS = $(CPP) -P $(DBUS_CFLAGS) -imacros dbus/dbus-protocol.h
+DBUS_PREPROCESS = $(CPP) -P $(CFLAGS) $(DBUS_CFLAGS) -imacros dbus/dbus-protocol.h
 
 CLEANFILES += \
        $(dbusinterface_DATA)
 
+if HAVE_SYSV_COMPAT
+sysvinit_DATA = \
+       docs/sysvinit/README
+
+varlog_DATA = \
+       docs/var-log/README
+
+docs/sysvinit/README: docs/sysvinit/README.in
+       $(SED_PROCESS)
+
+docs/var-log/README: docs/var-log/README.in
+       $(SED_PROCESS)
+
+EXTRA_DIST += \
+       docs/sysvinit/README.in \
+       docs/var-log/README.in
+
+CLEANFILES += \
+       docs/sysvinit/README \
+       docs/var-log/README
+
+endif
+
+EXTRA_DIST += \
+       shell-completion/systemd-zsh-completion.zsh
+
 systemd-install-data-hook:
        $(MKDIR_P) -m 0755 \
                $(DESTDIR)$(tmpfilesdir) \
@@ -3439,7 +4096,6 @@ systemd-install-data-hook:
                        sys-kernel-config.mount \
                        sys-kernel-debug.mount \
                        sys-fs-fuse-connections.mount \
-                       systemd-modules-load.service \
                        systemd-tmpfiles-setup.service \
                        systemd-sysctl.service \
                        systemd-ask-password-console.path && \
@@ -3448,7 +4104,6 @@ systemd-install-data-hook:
                $(LN_S) ../sys-kernel-config.mount sys-kernel-config.mount && \
                $(LN_S) ../sys-kernel-debug.mount sys-kernel-debug.mount && \
                $(LN_S) ../sys-fs-fuse-connections.mount sys-fs-fuse-connections.mount && \
-               $(LN_S) ../systemd-modules-load.service systemd-modules-load.service && \
                $(LN_S) ../systemd-tmpfiles-setup.service systemd-tmpfiles-setup.service && \
                $(LN_S) ../systemd-sysctl.service systemd-sysctl.service && \
                $(LN_S) ../systemd-ask-password-console.path systemd-ask-password-console.path )
@@ -3459,27 +4114,25 @@ systemd-install-data-hook:
                rm -f org.freedesktop.systemd1.service && \
                $(LN_S) ../system-services/org.freedesktop.systemd1.service org.freedesktop.systemd1.service )
 
+if HAVE_KMOD
+       ( cd $(DESTDIR)$(systemunitdir)/sysinit.target.wants && \
+               rm -f systemd-modules-load.service && \
+               $(LN_S) ../systemd-modules-load.service systemd-modules-load.service )
+endif
+
+
 if TARGET_FEDORA
        ( cd $(DESTDIR)$(systemunitdir) && \
                rm -f display-manager.service single.service && \
-               $(LN_S) prefdm.service display-manager.service && \
                $(LN_S) rescue.service single.service )
 endif
 
 if TARGET_MANDRIVA
        ( cd $(DESTDIR)$(systemunitdir) && \
                rm -f display-manager.service dm.service single.service && \
-               $(LN_S) prefdm.service display-manager.service && \
-               $(LN_S) prefdm.service dm.service && \
                $(LN_S) rescue.service single.service )
 endif
 
-if TARGET_DEBIAN_OR_UBUNTU
-       ( cd $(DESTDIR)$(systemunitdir) && \
-               rm -f runlevel5.target && \
-               $(LN_S) multi-user.target runlevel5.target )
-endif
-
 if TARGET_SUSE
        ( cd $(DESTDIR)$(systemunitdir) && \
                rm -f local.service && \
@@ -3488,14 +4141,12 @@ endif
 
 if TARGET_MAGEIA
        ( cd $(DESTDIR)$(systemunitdir) && \
-               rm -f display-manager.service && \
-               $(LN_S) prefdm.service display-manager.service && \
-               $(LN_S) prefdm.service dm.service )
+               rm -f display-manager.service )
 endif
 
 install-exec-hook: $(INSTALL_EXEC_HOOKS)
 
-uninstall-hook: $(UNINSTALL_EXEC_HOOKS)
+uninstall-hook: $(UNINSTALL_DATA_HOOKS) $(UNINSTALL_EXEC_HOOKS)
 
 install-data-hook: systemd-install-data-hook $(INSTALL_DATA_HOOKS)
 
@@ -3503,6 +4154,8 @@ distclean-local: $(DISTCLEAN_LOCAL_HOOKS)
 
 clean-local:
        rm -rf $(abs_srcdir)/install-tree
+       rm -f $(abs_srcdir)/hwdb/usb.ids $(abs_srcdir)/hwdb/pci.ids $(abs_srcdir)/hwdb/oui.txt \
+              $(abs_srcdir)/hwdb/iab.txt
 
 DISTCHECK_CONFIGURE_FLAGS = \
        --with-dbuspolicydir=$$dc_install_base/$(dbuspolicydir) \
@@ -3513,11 +4166,26 @@ DISTCHECK_CONFIGURE_FLAGS = \
        --with-rootprefix=$$dc_install_base \
        --disable-split-usr
 
+
+if HAVE_SYSV_COMPAT
+DISTCHECK_CONFIGURE_FLAGS += \
+       --with-sysvinit-path=$$dc_install_base/$(sysvinitdir) \
+       --with-sysvrcnd-path=$$dc_install_base/$(sysvrcddir)
+endif
+
 if ENABLE_GTK_DOC
 DISTCHECK_CONFIGURE_FLAGS += \
        --enable-gtk-doc
 endif
 
+hwdb-update:
+       ( cd hwdb && \
+       wget -N http://www.linux-usb.org/usb.ids && \
+       wget -N http://pci-ids.ucw.cz/v2.2/pci.ids && \
+       wget -N http://standards.ieee.org/develop/regauth/oui/oui.txt && \
+       wget -N http://standards.ieee.org/develop/regauth/iab/iab.txt && \
+       ./ids-update.pl )
+
 upload: all distcheck
        cp -v systemd-$(VERSION).tar.xz /home/lennart/git.fedora/systemd/
        scp systemd-$(VERSION).tar.xz fdo:/srv/www.freedesktop.org/www/software/systemd/