X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=Makefile.am;h=b255b7a1f6881e0e7a15fddaa5ba4c08f6b4bb0a;hp=e6366dd0049ba3876bd420ba7c154ebcdcc18bae;hb=35374c804d252b949c4bba7604fcf3430013595e;hpb=42e39f0b326d27f6392a81a7400f9af7cf0af3ab diff --git a/Makefile.am b/Makefile.am index e6366dd00..b255b7a1f 100644 --- a/Makefile.am +++ b/Makefile.am @@ -17,13 +17,21 @@ ACLOCAL_AMFLAGS = -I m4 +# Dirs of external packages dbuspolicydir=$(sysconfdir)/dbus-1/system.d udevrulesdir=@udevrulesdir@ +interfacedir=$(datadir)/dbus-1/interfaces +# Our own, non-special dirs pkgsysconfdir=$(sysconfdir)/systemd -systemunitdir=$(pkgdatadir)/system sessionunitdir=$(pkgdatadir)/session +# And these are the special ones for / +rootdir=@rootdir@ +rootbindir=$(rootdir)/bin +rootlibexecdir=$(rootdir)/lib/systemd +systemunitdir=$(rootdir)/lib/systemd/system + AM_CPPFLAGS = \ -include $(top_builddir)/config.h \ -DSYSTEM_CONFIG_UNIT_PATH=\"$(pkgsysconfdir)/system\" \ @@ -32,22 +40,20 @@ AM_CPPFLAGS = \ -DSYSTEM_SYSVRCND_PATH=\"$(SYSTEM_SYSVRCND_PATH)\" \ -DSESSION_CONFIG_UNIT_PATH=\"$(pkgsysconfdir)/session\" \ -DSESSION_DATA_UNIT_PATH=\"$(sessionunitdir)\" \ - -DCGROUP_AGENT_PATH=\"$(pkglibexecdir)/systemd-cgroups-agent\" \ - -DSYSTEMD_BINARY_PATH=\"$(sbindir)/systemd\" \ + -DCGROUP_AGENT_PATH=\"$(rootlibexecdir)/systemd-cgroups-agent\" \ + -DSYSTEMD_BINARY_PATH=\"$(rootbindir)/systemd\" \ -I $(top_srcdir)/src -sbin_PROGRAMS = \ - systemd - -bin_PROGRAMS = \ +rootbin_PROGRAMS = \ + systemd \ systemctl if HAVE_GTK -bin_PROGRAMS += \ +bin_PROGRAMS = \ systemadm endif -pkglibexec_PROGRAMS = \ +rootlibexec_PROGRAMS = \ systemd-logger \ systemd-cgroups-agent \ systemd-initctl @@ -64,6 +70,21 @@ dist_dbuspolicy_DATA = \ dist_udevrules_DATA = \ src/99-systemd.rules +interface_DATA = \ + org.freedesktop.systemd1.Manager.xml \ + org.freedesktop.systemd1.Job.xml \ + org.freedesktop.systemd1.Unit.xml \ + org.freedesktop.systemd1.Service.xml \ + org.freedesktop.systemd1.Socket.xml \ + org.freedesktop.systemd1.Timer.xml \ + org.freedesktop.systemd1.Target.xml \ + org.freedesktop.systemd1.Device.xml \ + org.freedesktop.systemd1.Mount.xml \ + org.freedesktop.systemd1.Automount.xml \ + org.freedesktop.systemd1.Snapshot.xml \ + org.freedesktop.systemd1.Swap.xml \ + org.freedesktop.systemd1.Path.xml + dist_systemunit_DATA = \ units/emergency.service \ units/getty.target \ @@ -71,6 +92,7 @@ dist_systemunit_DATA = \ units/local-fs.target \ units/network.target \ units/nss-lookup.target \ + units/mail-transfer-agent.target \ units/poweroff.target \ units/reboot.target \ units/remote-fs.target \ @@ -82,7 +104,19 @@ dist_systemunit_DATA = \ units/sockets.target \ units/swap.target \ units/systemd-initctl.socket \ - units/systemd-logger.socket + units/systemd-logger.socket \ + units/dev-hugepages.automount \ + units/dev-hugepages.mount \ + units/dev-mqueue.automount \ + units/dev-mqueue.mount \ + units/proc-sys-fs-binfmt_misc.automount \ + units/proc-sys-fs-binfmt_misc.mount \ + units/sys-kernel-debug.automount \ + units/sys-kernel-debug.mount \ + units/sys-kernel-security.automount \ + units/sys-kernel-security.mount \ + units/var-lock.mount \ + units/var-run.mount systemunit_DATA = \ units/basic.target \ @@ -93,8 +127,12 @@ systemunit_DATA = \ units/systemd-logger.service \ units/syslog.target +dist_sessionunit_DATA = \ + units/session/default.target + sessionunit_DATA = \ - units/session/remote-fs.target + units/session/remote-fs.target \ + units/session/exit.service EXTRA_DIST = \ units/basic.target.m4 \ @@ -105,6 +143,7 @@ EXTRA_DIST = \ units/systemd-initctl.service.in \ units/systemd-logger.service.in \ units/syslog.target.in \ + units/session/exit.service.in \ LICENSE \ README \ DISTRO_PORTING @@ -120,6 +159,22 @@ dist_systemunit_DATA += \ units/fedora/sysinit.service endif +if TARGET_SUSE +dist_systemunit_DATA += \ + units/suse/halt.service \ + units/suse/poweroff.service \ + units/suse/reboot.service +endif + +if TARGET_GENTOO +dist_systemunit_DATA += \ + units/gentoo/halt.service \ + units/gentoo/killall.service \ + units/gentoo/poweroff.service \ + units/gentoo/reboot.service \ + units/gentoo/xdm.service +endif + # 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. @@ -148,6 +203,7 @@ COMMON_SOURCES = \ src/snapshot.c \ src/socket.c \ src/timer.c \ + src/path.c \ src/load-dropin.c \ src/execute.c \ src/dbus.c \ @@ -156,6 +212,7 @@ COMMON_SOURCES = \ src/dbus-job.c \ src/dbus-service.c \ src/dbus-socket.c \ + src/dbus-timer.c \ src/dbus-target.c \ src/dbus-mount.c \ src/dbus-automount.c \ @@ -163,10 +220,12 @@ COMMON_SOURCES = \ src/dbus-snapshot.c \ src/dbus-device.c \ src/dbus-execute.c \ + src/dbus-path.c \ src/cgroup.c \ src/mount-setup.c \ src/hostname-setup.c \ src/loopback-setup.c \ + src/kmod-setup.c \ src/utmp-wtmp.c \ src/specifier.c \ src/unit-name.c \ @@ -229,7 +288,7 @@ test_engine_LDADD = $(systemd_LDADD) test_job_type_SOURCES = \ $(COMMON_SOURCES) \ - src/test-engine.c + src/test-job-type.c test_job_type_CPPFLAGS = $(systemd_CPPFLAGS) test_job_type_LDADD = $(systemd_LDADD) @@ -309,9 +368,10 @@ systemadm_LDADD = $(DBUSGLIB_LIBS) $(GTK_LIBS) SED_PROCESS = \ $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \ - $(SED) -e 's,@libexecdir\@,$(libexecdir),g' \ - -e 's,@pkglibexecdir\@,$(pkglibexecdir),g' \ + $(SED) -e 's,@rootlibexecdir\@,$(rootlibexecdir),g' \ -e 's,@SPECIAL_SYSLOG_SERVICE\@,$(SPECIAL_SYSLOG_SERVICE),g' \ + -e 's,@SPECIAL_DBUS_SERVICE\@,$(SPECIAL_DBUS_SERVICE),g' \ + -e 's,@SYSTEMCTL\@,$(rootbindir)/systemctl,g' \ < $< > $@ units/%: units/%.in Makefile @@ -344,6 +404,7 @@ CLEANFILES = \ units/multi-user.target \ units/remote-fs.target \ units/session/remote-fs.target \ + units/session/exit.service \ man/systemd.special.7 \ man/systemd.special.html @@ -399,11 +460,17 @@ CLEANFILES += \ man/systemd.special.html.in endif +org.freedesktop.systemd1.%.xml: systemd + $(AM_V_GEN)./systemd --introspect=${@:.xml=} > $@ + +CLEANFILES += $(interface_DATA) + install-data-hook: $(MKDIR_P) -m 0755 \ $(DESTDIR)$(systemunitdir) \ $(DESTDIR)$(sessionunitdir) \ $(DESTDIR)$(systemunitdir)/sockets.target.wants \ + $(DESTDIR)$(systemunitdir)/basic.target.wants \ $(DESTDIR)$(pkgsysconfdir)/system \ $(DESTDIR)$(pkgsysconfdir)/system/getty.target.wants \ $(DESTDIR)$(pkgsysconfdir)/system/multi-user.target.wants \ @@ -421,10 +488,10 @@ install-data-hook: $(LN_S) ../systemd-initctl.socket systemd-initctl.socket ) ( cd $(DESTDIR)$(sessionunitdir) && \ rm -f shutdown.target sockets.target local-fs.target swap.target && \ - $(LN_S) ../system/shutdown.target shutdown.target && \ - $(LN_S) ../system/sockets.target sockets.target && \ - $(LN_S) ../system/local-fs.target local-fs.target && \ - $(LN_S) ../system/swap.target swap.target ) + $(LN_S) $(systemunitdir)/shutdown.target shutdown.target && \ + $(LN_S) $(systemunitdir)/sockets.target sockets.target && \ + $(LN_S) $(systemunitdir)/local-fs.target local-fs.target && \ + $(LN_S) $(systemunitdir)/swap.target swap.target ) ( cd $(DESTDIR)$(systemunitdir) && \ rm -f runlevel0.target runlevel1.target runlevel6.target && \ $(LN_S) poweroff.target runlevel0.target && \ @@ -451,17 +518,42 @@ install-data-hook: ( cd $(DESTDIR)$(pkgsysconfdir)/system/multi-user.target.wants && \ rm -f getty.target && \ $(LN_S) $(systemunitdir)/getty.target getty.target ) + ( cd $(DESTDIR)$(systemunitdir)/basic.target.wants && \ + rm -f dev-hugepages.automount \ + dev-mqueue.automount \ + proc-sys-fs-binfmt_misc.automount \ + sys-kernel-debug.automount \ + sys-kernel-security.automount && \ + $(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 && \ + $(LN_S) ../sys-kernel-debug.automount sys-kernel-debug.automount && \ + $(LN_S) ../sys-kernel-security.automount sys-kernel-security.automount ) if TARGET_FEDORA + ( cd $(DESTDIR)$(pkgsysconfdir)/system && \ + rm -f display-manager.service && \ + $(LN_S) $(systemunitdir)/prefdm.service display-manager.service ) ( cd $(DESTDIR)$(pkgsysconfdir)/system/graphical.target.wants && \ - rm -f prefdm.service && \ - $(LN_S) $(systemunitdir)/prefdm.service prefdm.service ) + rm -f display-manager.service && \ + $(LN_S) ../display-manager.service display-manager.service ) ( cd $(DESTDIR)$(pkgsysconfdir)/system/multi-user.target.wants && \ rm -f rc-local.service && \ $(LN_S) $(systemunitdir)/rc-local.service rc-local.service ) ( cd $(DESTDIR)$(systemunitdir) && \ rm -f local.service && \ $(LN_S) rc-local.service local.service ) + ( cd $(DESTDIR)/etc/init.d && \ + $(LN_S) halt reboot > /dev/null 2>&1 || true ) +endif +if TARGET_GENTOO + ( cd $(DESTDIR)$(pkgsysconfdir)/system && \ + rm -f display-manager.service && \ + $(LN_S) $(systemunitdir)/xdm.service display-manager.service ) + ( cd $(DESTDIR)$(pkgsysconfdir)/system/graphical.target.wants && \ + rm -f display-manager.service && \ + $(LN_S) ../display-manager.service display-manager.service ) endif DISTCHECK_CONFIGURE_FLAGS = \ - --with-udevrulesdir=$$dc_install_base/$(udevrulesdir) + --with-udevrulesdir=$$dc_install_base/$(udevrulesdir) \ + --with-rootdir=$$dc_install_base/$(rootdir)