chiark / gitweb /
update TODO
[elogind.git] / Makefile.am
index f27bed2a1fa58857c5da71254674d731c85d8801..b594b65387441338a35ee169e0f005b7c9230b02 100644 (file)
@@ -30,9 +30,9 @@ bashcompletiondir=$(sysconfdir)/bash_completion.d
 
 # Our own, non-special dirs
 pkgsysconfdir=$(sysconfdir)/systemd
-sessionunitdir=$(pkgdatadir)/session
+userunitdir=$(pkgdatadir)/user
 tmpfilesdir=$(sysconfdir)/tmpfiles.d
-sessiongeneratordir=$(pkglibexecdir)/session-generators
+usergeneratordir=$(pkglibexecdir)/user-generators
 
 # And these are the special ones for /
 rootdir=@rootdir@
@@ -49,9 +49,9 @@ AM_CPPFLAGS = \
        -DSYSTEM_DATA_UNIT_PATH=\"$(systemunitdir)\" \
        -DSYSTEM_SYSVINIT_PATH=\"$(SYSTEM_SYSVINIT_PATH)\" \
        -DSYSTEM_SYSVRCND_PATH=\"$(SYSTEM_SYSVRCND_PATH)\" \
-       -DSESSION_CONFIG_FILE=\"$(pkgsysconfdir)/session.conf\" \
-       -DSESSION_CONFIG_UNIT_PATH=\"$(pkgsysconfdir)/session\" \
-       -DSESSION_DATA_UNIT_PATH=\"$(sessionunitdir)\" \
+       -DUSER_CONFIG_FILE=\"$(pkgsysconfdir)/user.conf\" \
+       -DUSER_CONFIG_UNIT_PATH=\"$(pkgsysconfdir)/user\" \
+       -DUSER_DATA_UNIT_PATH=\"$(userunitdir)\" \
        -DSYSTEMD_CGROUP_AGENT_PATH=\"$(rootlibexecdir)/systemd-cgroups-agent\" \
        -DSYSTEMD_BINARY_PATH=\"$(rootbindir)/systemd\" \
        -DSYSTEMD_SHUTDOWN_BINARY_PATH=\"$(rootlibexecdir)/systemd-shutdown\" \
@@ -61,7 +61,7 @@ AM_CPPFLAGS = \
        -DRANDOM_SEED=\"$(localstatedir)/lib/random-seed\" \
        -DSYSTEMD_CRYPTSETUP_PATH=\"$(rootlibexecdir)/systemd-cryptsetup\" \
        -DSYSTEM_GENERATOR_PATH=\"$(systemgeneratordir)\" \
-       -DSESSION_GENERATOR_PATH=\"$(sessiongeneratordir)\" \
+       -DUSER_GENERATOR_PATH=\"$(usergeneratordir)\" \
        -I $(top_srcdir)/src
 
 if TARGET_GENTOO
@@ -76,12 +76,19 @@ AM_CPPFLAGS += \
        -DKBD_SETFONT=\"/usr/bin/setfont\" \
        -DDEFAULT_FONT=\"LatArCyrHeb-16\"
 else
+if TARGET_FRUGALWARE
+AM_CPPFLAGS += \
+       -DKBD_LOADKEYS=\"/usr/bin/loadkeys\" \
+       -DKBD_SETFONT=\"/usr/bin/setfont\" \
+       -DDEFAULT_FONT=\"LatArCyrHeb-16\"
+else
 AM_CPPFLAGS += \
        -DKBD_LOADKEYS=\"/bin/loadkeys\" \
        -DKBD_SETFONT=\"/bin/setfont\" \
        -DDEFAULT_FONT=\"latarcyrheb-sun16\"
 endif
 endif
+endif
 
 rootbin_PROGRAMS = \
        systemd \
@@ -119,7 +126,8 @@ rootlibexec_PROGRAMS = \
        systemd-fsck \
        systemd-quotacheck \
        systemd-timestamp \
-       systemd-ac-power
+       systemd-ac-power \
+       systemd-sysctl
 
 if HAVE_LIBCRYPTSETUP
 rootlibexec_PROGRAMS += \
@@ -188,6 +196,7 @@ dist_systemunit_DATA = \
        units/halt.target \
        units/kexec.target \
        units/local-fs.target \
+       units/cryptsetup.target \
        units/network.target \
        units/nss-lookup.target \
        units/mail-transfer-agent.target \
@@ -218,12 +227,10 @@ dist_systemunit_DATA = \
        units/sys-kernel-debug.mount \
        units/sys-kernel-security.automount \
        units/sys-kernel-security.mount \
-       units/tmp.mount \
        units/var-lock.mount \
        units/var-run.mount \
        units/hwclock-load.service \
        units/hwclock-save.service \
-       units/sysctl.service \
        units/remount-rootfs.service \
        units/printer.target \
        units/bluetooth.target \
@@ -232,7 +239,8 @@ dist_systemunit_DATA = \
        units/systemd-tmpfiles-clean.timer \
        units/quotaon.service \
        units/systemd-ask-password-wall.path \
-       units/systemd-ask-password-plymouth.path
+       units/systemd-ask-password-plymouth.path \
+       units/systemd-ask-password-console.path
 
 nodist_systemunit_DATA = \
        units/getty@.service \
@@ -259,6 +267,8 @@ nodist_systemunit_DATA = \
        units/systemd-user-sessions.service \
        units/systemd-ask-password-wall.service \
        units/systemd-ask-password-plymouth.service \
+       units/systemd-ask-password-console.service \
+       units/systemd-sysctl.service \
        units/syslog.target \
        units/halt.service \
        units/poweroff.service \
@@ -269,13 +279,13 @@ nodist_systemunit_DATA = \
        units/quotacheck.service \
        units/rescue.service
 
-dist_sessionunit_DATA = \
-       units/session/default.target \
-       units/session/exit.target
+dist_userunit_DATA = \
+       units/user/default.target \
+       units/user/exit.target
 
-nodist_sessionunit_DATA = \
-       units/session/remote-fs.target \
-       units/session/exit.service
+nodist_userunit_DATA = \
+       units/user/remote-fs.target \
+       units/user/exit.service
 
 EXTRA_DIST = \
        units/getty@.service.m4 \
@@ -303,16 +313,19 @@ EXTRA_DIST = \
        units/systemd-user-sessions.service.in \
        units/systemd-ask-password-wall.service.in \
        units/systemd-ask-password-plymouth.service.in \
+       units/systemd-ask-password-console.service.in \
+       units/systemd-sysctl.service.in \
        units/syslog.target.in \
        units/halt.service.in \
        units/poweroff.service.in \
        units/reboot.service.in \
        units/kexec.service.in \
-       units/session/exit.service.in \
+       units/user/exit.service.in \
        units/fsck@.service.in \
        units/fsck-root.service.in \
        units/quotacheck.service.in \
-       systemd.pc.in
+       systemd.pc.in \
+       introspect.awk
 
 if TARGET_FEDORA
 dist_systemunit_DATA += \
@@ -328,16 +341,6 @@ dist_systemunit_DATA += \
        units/fedora/plymouth-halt.service
 endif
 
-if TARGET_GENTOO
-dist_systemunit_DATA += \
-       units/gentoo/xdm.service
-endif
-
-if TARGET_ARCH
-dist_systemunit_DATA += \
-       units/arch/rc-local.service
-endif
-
 dist_doc_DATA = \
        README \
        LICENSE \
@@ -355,7 +358,8 @@ dist_polkitpolicy_DATA = \
 
 noinst_LTLIBRARIES = \
        libsystemd-basic.la \
-       libsystemd-core.la
+       libsystemd-core.la \
+       libsystemd-daemon.la
 
 libsystemd_basic_la_SOURCES = \
        src/util.c \
@@ -441,6 +445,9 @@ libsystemd_core_la_LIBADD = \
        $(PAM_LIBS) \
        $(AUDIT_LIBS)
 
+libsystemd_daemon_la_SOURCES = \
+       src/sd-daemon.c
+
 # This is needed because automake is buggy in how it generates the
 # rules for C programs, but not Vala programs.  We therefore can't
 # list the .h files as dependencies if we want make dist to work.
@@ -448,6 +455,7 @@ libsystemd_core_la_LIBADD = \
 EXTRA_DIST += \
        ${libsystemd_basic_la_SOURCES:.c=.h} \
        ${libsystemd_core_la_SOURCES:.c=.h} \
+       ${libsystemd_daemon_la_SOURCES:.c=.h} \
        src/macro.h \
        src/ioprio.h \
        src/missing.h \
@@ -456,7 +464,6 @@ EXTRA_DIST += \
        src/linux/auto_dev-ioctl.h \
        src/linux/fanotify.h \
        src/initreq.h \
-       src/sd-daemon.h \
        src/sd-readahead.h \
        src/special.h \
        src/dbus-common.h \
@@ -500,7 +507,12 @@ MANPAGES = \
        man/shutdown.8 \
        man/pam_systemd.8 \
        man/systemd.conf.5 \
-       man/tmpfiles.d.5
+       man/tmpfiles.d.5 \
+       man/hostname.5 \
+       man/vconsole.conf.5 \
+       man/locale.conf.5 \
+       man/os-release.5 \
+       man/modules-load.d.5
 
 MANPAGES_ALIAS = \
        man/reboot.8 \
@@ -588,11 +600,11 @@ test_hostname_LDADD = \
        libsystemd-basic.la
 
 test_daemon_SOURCES = \
-       src/test-daemon.c \
-       src/sd-daemon.c
+       src/test-daemon.c
 
 test_daemon_LDADD = \
-       libsystemd-basic.la
+       libsystemd-basic.la \
+       libsystemd-daemon.la
 
 test_cgroup_SOURCES = \
        src/test-cgroup.c \
@@ -614,7 +626,8 @@ test_env_replace_LDADD = \
        libsystemd-basic.la
 
 test_strv_SOURCES = \
-       src/test-strv.c
+       src/test-strv.c \
+       src/specifier.c
 
 test_strv_CFLAGS = \
        $(AM_CFLAGS)
@@ -624,16 +637,15 @@ test_strv_LDADD = \
 
 systemd_logger_SOURCES = \
        src/logger.c \
-       src/sd-daemon.c \
        src/tcpwrap.c
 
 systemd_logger_LDADD = \
        libsystemd-basic.la \
+       libsystemd-daemon.la \
        $(LIBWRAP_LIBS)
 
 systemd_initctl_SOURCES = \
        src/initctl.c \
-       src/sd-daemon.c \
        src/dbus-common.c
 
 systemd_initctl_CFLAGS = \
@@ -642,6 +654,7 @@ systemd_initctl_CFLAGS = \
 
 systemd_initctl_LDADD = \
        libsystemd-basic.la \
+       libsystemd-daemon.la \
        $(DBUS_LIBS)
 
 systemd_update_utmp_SOURCES = \
@@ -670,14 +683,14 @@ systemd_random_seed_LDADD = \
 
 systemd_shutdownd_SOURCES = \
        src/utmp-wtmp.c \
-       src/sd-daemon.c \
        src/shutdownd.c
 
 systemd_shutdownd_CFLAGS = \
        $(AM_CFLAGS)
 
 systemd_shutdownd_LDADD = \
-       libsystemd-basic.la
+       libsystemd-basic.la \
+       libsystemd-daemon.la
 
 systemd_shutdown_SOURCES = \
        src/mount-setup.c \
@@ -710,6 +723,15 @@ systemd_tmpfiles_CFLAGS = \
 systemd_tmpfiles_LDADD = \
        libsystemd-basic.la
 
+systemd_sysctl_SOURCES = \
+       src/sysctl.c
+
+systemd_sysctl_CFLAGS = \
+       $(AM_CFLAGS)
+
+systemd_sysctl_LDADD = \
+       libsystemd-basic.la
+
 systemd_fsck_SOURCES = \
        src/fsck.c \
        src/dbus-common.c
@@ -759,10 +781,12 @@ systemd_cryptsetup_SOURCES = \
 
 systemd_cryptsetup_CFLAGS = \
        $(LIBCRYPTSETUP_CFLAGS) \
+       $(UDEV_CFLAGS) \
        $(AM_CFLAGS)
 
 systemd_cryptsetup_LDADD = \
        $(LIBCRYPTSETUP_LIBS) \
+       $(UDEV_LIBS) \
        libsystemd-basic.la
 
 systemd_cryptsetup_generator_SOURCES = \
@@ -818,21 +842,20 @@ systemd_cgroups_agent_LDADD = \
 
 systemd_kmsg_syslogd_SOURCES = \
        src/kmsg-syslogd.c \
-       src/sd-daemon.c \
        src/fdset.c
 
 systemd_kmsg_syslogd_CFLAGS = \
        $(AM_CFLAGS)
 
 systemd_kmsg_syslogd_LDADD = \
-       libsystemd-basic.la
+       libsystemd-basic.la \
+       libsystemd-daemon.la
 
 systemctl_SOURCES = \
        src/systemctl.c \
        src/utmp-wtmp.c \
        src/dbus-common.c \
        src/path-lookup.c \
-       src/sd-daemon.c \
        src/cgroup-show.c \
        src/cgroup-util.c \
        src/exit-status.c \
@@ -844,15 +867,16 @@ systemctl_CFLAGS = \
 
 systemctl_LDADD = \
        libsystemd-basic.la \
+       libsystemd-daemon.la \
        $(DBUS_LIBS)
 
 systemd_notify_SOURCES = \
        src/notify.c \
-       src/sd-daemon.c \
        src/sd-readahead.c
 
 systemd_notify_LDADD = \
-       libsystemd-basic.la
+       libsystemd-basic.la \
+       libsystemd-daemon.la
 
 systemd_ask_password_SOURCES = \
        src/ask-password.c \
@@ -869,7 +893,6 @@ systemd_reply_password_LDADD = \
 
 systemd_readahead_collect_SOURCES = \
        src/readahead-collect.c \
-       src/sd-daemon.c \
        src/readahead-common.c
 
 systemd_readahead_collect_CFLAGS = \
@@ -877,11 +900,11 @@ systemd_readahead_collect_CFLAGS = \
 
 systemd_readahead_collect_LDADD = \
        libsystemd-basic.la \
+       libsystemd-daemon.la \
        $(UDEV_LIBS)
 
 systemd_readahead_replay_SOURCES = \
        src/readahead-replay.c \
-       src/sd-daemon.c \
        src/readahead-common.c
 
 systemd_readahead_replay_CFLAGS = \
@@ -889,6 +912,7 @@ systemd_readahead_replay_CFLAGS = \
 
 systemd_readahead_replay_LDADD = \
        libsystemd-basic.la \
+       libsystemd-daemon.la \
        $(UDEV_LIBS)
 
 systemd_cgls_SOURCES = \
@@ -931,6 +955,7 @@ systemd_gnome_ask_password_agent_SOURCES = \
 systemd_gnome_ask_password_agent_CFLAGS = \
        $(AM_CFLAGS) \
        $(DBUSGLIB_CFLAGS) \
+       $(LIBNOTIFY_CFLAGS) \
        $(GTK_CFLAGS) \
        -Wno-unused-variable \
        -Wno-unused-function \
@@ -943,11 +968,17 @@ systemd_gnome_ask_password_agent_VALAFLAGS = \
        --pkg=gtk+-2.0 \
        --pkg=linux \
        --pkg=gio-unix-2.0 \
-       --pkg=libnotify \
+       --pkg=libnotify
+if LIBNOTIFY07
+systemd_gnome_ask_password_agent_VALAFLAGS += \
+       -D LIBNOTIFY07
+endif
+systemd_gnome_ask_password_agent_VALAFLAGS += \
        -g
 
 systemd_gnome_ask_password_agent_LDADD = \
        $(DBUSGLIB_LIBS) \
+       $(LIBNOTIFY_LIBS) \
        $(GTK_LIBS)
 
 systemd_tty_ask_password_agent_SOURCES = \
@@ -960,8 +991,7 @@ systemd_tty_ask_password_agent_LDADD = \
 
 pam_systemd_la_SOURCES = \
        src/pam-module.c \
-       src/cgroup-util.c \
-       src/sd-daemon.c
+       src/cgroup-util.c
 
 pam_systemd_la_CFLAGS = \
        $(AM_CFLAGS)
@@ -976,6 +1006,7 @@ pam_systemd_la_LDFLAGS = \
 
 pam_systemd_la_LIBADD = \
        libsystemd-basic.la \
+       libsystemd-daemon.la \
        $(PAM_LIBS)
 
 SED_PROCESS = \
@@ -1007,19 +1038,19 @@ M4_PROCESS_SYSTEM = \
        $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
        $(M4) -P $(M4_DISTRO_FLAG) -DFOR_SYSTEM=1 < $< > $@ || rm $@
 
-M4_PROCESS_SESSION = \
+M4_PROCESS_USER = \
        $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
-       $(M4) -P $(M4_DISTRO_FLAG) -DFOR_SESSION=1 < $< > $@ || rm $@
+       $(M4) -P $(M4_DISTRO_FLAG) -DFOR_USER=1 < $< > $@ || rm $@
 
 units/%: units/%.m4 Makefile
        $(M4_PROCESS_SYSTEM)
 
-units/session/%: units/%.m4 Makefile
-       $(M4_PROCESS_SESSION)
+units/user/%: units/%.m4 Makefile
+       $(M4_PROCESS_USER)
 
 CLEANFILES = \
        $(nodist_systemunit_DATA) \
-       $(nodist_sessionunit_DATA) \
+       $(nodist_userunit_DATA) \
        $(nodist_man_MANS) \
        ${XML_IN_FILES:.xml.in=.html} \
        $(pkgconfigdata_DATA)
@@ -1095,8 +1126,12 @@ CLEANFILES += \
        ${XML_IN_FILES:.xml.in=.html.in}
 endif
 
+DBUS_PREPROCESS = $(CPP) -P $(DBUS_CFLAGS) -imacros dbus/dbus-protocol.h
+
 org.freedesktop.systemd1.%.xml: systemd
-       $(AM_V_GEN)SYSTEMD_SKIP_API_MOUNTS=1 ./systemd --introspect=${@:.xml=} > $@
+       $(AM_V_GEN)$(OBJCOPY) -O binary -j introspect.$* $< $@.tmp && \
+               $(STRINGS) $@.tmp | $(AWK) -f $(srcdir)/introspect.awk | \
+               $(DBUS_PREPROCESS) -o $@ - && rm $@.tmp
 
 CLEANFILES += \
        $(dbusinterface_DATA)
@@ -1104,7 +1139,7 @@ CLEANFILES += \
 install-data-hook:
        $(MKDIR_P) -m 0755 \
                $(DESTDIR)$(systemunitdir) \
-               $(DESTDIR)$(sessionunitdir) \
+               $(DESTDIR)$(userunitdir) \
                $(DESTDIR)$(systemunitdir)/sysinit.target.wants \
                $(DESTDIR)$(systemunitdir)/sockets.target.wants \
                $(DESTDIR)$(systemunitdir)/basic.target.wants \
@@ -1122,11 +1157,11 @@ install-data-hook:
                $(DESTDIR)$(pkgsysconfdir)/system/local-fs.target.wants \
                $(DESTDIR)$(pkgsysconfdir)/system/multi-user.target.wants \
                $(DESTDIR)$(pkgsysconfdir)/system/getty.target.wants \
-               $(DESTDIR)$(pkgsysconfdir)/session \
+               $(DESTDIR)$(pkgsysconfdir)/user \
                $(DESTDIR)$(sysconfdir)/xdg/systemd
        ( cd $(DESTDIR)$(sysconfdir)/xdg/systemd/ && \
-               rm -f session && \
-               $(LN_S) $(pkgsysconfdir)/session session )
+               rm -f user && \
+               $(LN_S) $(pkgsysconfdir)/user user )
        ( cd $(DESTDIR)$(systemunitdir)/sockets.target.wants && \
                rm -f systemd-initctl.socket systemd-logger.socket systemd-shutdownd.socket syslog.socket && \
                $(LN_S) ../systemd-logger.socket systemd-logger.socket && \
@@ -1160,13 +1195,15 @@ install-data-hook:
                        fsck-root.service \
                        remount-rootfs.service \
                        var-run.mount \
-                       var-lock.mount && \
+                       var-lock.mount \
+                       cryptsetup.target && \
                $(LN_S) ../systemd-remount-api-vfs.service systemd-remount-api-vfs.service && \
                $(LN_S) ../fsck-root.service fsck-root.service && \
                $(LN_S) ../remount-rootfs.service remount-rootfs.service && \
                $(LN_S) ../var-run.mount var-run.mount && \
-               $(LN_S) ../var-lock.mount var-lock.mount )
-       ( cd $(DESTDIR)$(sessionunitdir) && \
+               $(LN_S) ../var-lock.mount var-lock.mount && \
+               $(LN_S) ../cryptsetup.target )
+       ( cd $(DESTDIR)$(userunitdir) && \
                rm -f shutdown.target sockets.target local-fs.target swap.target bluetooth.target printer.target && \
                $(LN_S) $(systemunitdir)/shutdown.target shutdown.target && \
                $(LN_S) $(systemunitdir)/sockets.target sockets.target && \
@@ -1220,7 +1257,8 @@ install-data-hook:
                        systemd-modules-load.service \
                        systemd-random-seed-load.service \
                        systemd-tmpfiles-setup.service \
-                       sysctl.service && \
+                       systemd-sysctl.service \
+                       systemd-ask-password-console.path && \
                $(LN_S) ../dev-hugepages.automount dev-hugepages.automount && \
                $(LN_S) ../dev-mqueue.automount dev-mqueue.automount && \
                $(LN_S) ../proc-sys-fs-binfmt_misc.automount proc-sys-fs-binfmt_misc.automount && \
@@ -1230,7 +1268,8 @@ install-data-hook:
                $(LN_S) ../systemd-modules-load.service systemd-modules-load.service && \
                $(LN_S) ../systemd-random-seed-load.service systemd-random-seed-load.service && \
                $(LN_S) ../systemd-tmpfiles-setup.service systemd-tmpfiles-setup.service && \
-               $(LN_S) ../sysctl.service sysctl.service )
+               $(LN_S) ../systemd-sysctl.service systemd-sysctl.service && \
+               $(LN_S) ../systemd-ask-password-console.path systemd-ask-password-console.path )
        ( cd $(DESTDIR)$(systemunitdir)/basic.target.wants && \
                rm -f systemd-tmpfiles-clean.timer && \
                $(LN_S) ../systemd-tmpfiles-clean.timer systemd-tmpfiles-clean.timer )
@@ -1252,10 +1291,9 @@ if TARGET_FEDORA
                rm -f halt-local.service && \
                $(LN_S) $(systemunitdir)/halt-local.service halt-local.service )
        ( cd $(DESTDIR)$(systemunitdir)/sysinit.target.wants && \
-               rm -f plymouth-start.service systemd-ask-password-plymouth.path plymouth-read-write.service && \
+               rm -f plymouth-start.service plymouth-read-write.service && \
                $(LN_S) ../plymouth-start.service plymouth-start.service && \
-               $(LN_S) ../plymouth-read-write.service plymouth-read-write.service && \
-               $(LN_S) ../systemd-ask-password-plymouth.path systemd-ask-password-plymouth.path )
+               $(LN_S) ../plymouth-read-write.service plymouth-read-write.service )
        ( cd $(DESTDIR)$(systemunitdir)/multi-user.target.wants && \
                rm -f plymouth-quit.service  && \
                $(LN_S) ../plymouth-quit.service plymouth-quit.service )
@@ -1278,14 +1316,6 @@ if TARGET_FEDORA
                rm -f display-manager.service && \
                $(LN_S) $(systemunitdir)/display-manager.service display-manager.service )
 endif
-if TARGET_GENTOO
-       ( cd $(DESTDIR)$(systemunitdir) && \
-               rm -f display-manager.service && \
-               $(LN_S) xdm.service display-manager.service )
-       ( cd $(DESTDIR)$(systemunitdir)/graphical.target.wants && \
-               rm -f display-manager.service && \
-               $(LN_S) $(systemunitdir)/display-manager.service display-manager.service )
-endif
 if TARGET_DEBIAN_OR_UBUNTU
        ( cd $(DESTDIR)$(systemunitdir) && \
                rm -f runlevel5.target && \
@@ -1308,8 +1338,3 @@ upload: all distcheck
 
 git-tag:
        git tag "v$(VERSION)" -m "systemd $(VERSION)"
-
-# Opt out from a few services on Fedora for now, as long as rc.sysinit does this job
-fedora: install
-       rm $(DESTDIR)/lib/systemd/system/local-fs.target.wants/var-run.mount
-       rm $(DESTDIR)/lib/systemd/system/local-fs.target.wants/var-lock.mount