dbussystemservicedir=@dbussystemservicedir@
dbusinterfacedir=@dbusinterfacedir@
udevrulesdir=@udevrulesdir@
+pamlibdir=@pamlibdir@
+pkgconfigdatadir=$(datadir)/pkgconfig
# Our own, non-special dirs
pkgsysconfdir=$(sysconfdir)/systemd
-DSESSION_DATA_UNIT_PATH=\"$(sessionunitdir)\" \
-DCGROUP_AGENT_PATH=\"$(rootlibexecdir)/systemd-cgroups-agent\" \
-DSYSTEMD_BINARY_PATH=\"$(rootbindir)/systemd\" \
+ -DSYSTEMCTL_BINARY_PATH=\"$(rootbindir)/systemctl\" \
+ -DRUNTIME_DIR=\"$(localstatedir)/run\" \
-I $(top_srcdir)/src
rootbin_PROGRAMS = \
test-job-type \
test-ns \
test-loopback \
- test-daemon
+ test-daemon \
+ test-cgroup
+
+if HAVE_PAM
+pamlib_LTLIBRARIES = \
+ pam_systemd.la
+endif
dist_dbuspolicy_DATA = \
src/org.freedesktop.systemd1.conf
units/systemd-logger.service.in \
units/syslog.target.in \
units/session/exit.service.in \
- LICENSE \
- README \
- DISTRO_PORTING
+ systemd.pc.in
if TARGET_FEDORA
dist_systemunit_DATA += \
units/arch/reboot.service
endif
+dist_doc_DATA = \
+ README \
+ LICENSE \
+ DISTRO_PORTING \
+ src/sd-daemon.h \
+ src/sd-daemon.c
+
+pkgconfigdata_DATA = \
+ systemd.pc
+
+noinst_LTLIBRARIES = \
+ libsystemd-basic.la \
+ libsystemd-core.la
+
# 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.
-BASIC_SOURCES = \
+
+libsystemd_basic_la_SOURCES = \
src/util.c \
src/hashmap.c \
src/set.c \
src/log.c \
src/ratelimit.c
-COMMON_SOURCES = \
- $(BASIC_SOURCES) \
+libsystemd_core_la_SOURCES = \
src/unit.c \
src/job.c \
src/manager.c \
src/unit-name.c \
src/fdset.c \
src/namespace.c \
- src/tcpwrap.c
+ src/tcpwrap.c \
+ src/cgroup-util.c
+
+libsystemd_core_la_CFLAGS = \
+ $(AM_CFLAGS) \
+ $(DBUS_CFLAGS) \
+ $(UDEV_CFLAGS) \
+ $(CGROUP_CFLAGS)
+
+libsystemd_core_la_LIBADD = \
+ libsystemd-basic.la \
+ $(DBUS_LIBS) \
+ $(UDEV_LIBS) \
+ $(CGROUP_LIBS) \
+ $(LIBWRAP_LIBS) \
+ $(PAM_LIBS)
EXTRA_DIST += \
- ${COMMON_SOURCES:.c=.h} \
+ ${libsystemd_basic_la_SOURCES:.c=.h} \
+ ${libsystemd_core_la_SOURCES:.c=.h} \
src/macro.h \
src/ioprio.h \
src/missing.h \
src/securebits.h \
src/linux/auto_dev-ioctl.h \
src/initreq.h \
- src/sd-daemon.h
+ src/sd-daemon.h \
+ src/special.h
dist_man_MANS = \
man/systemd.unit.5 \
- man/systemd.service.5
+ man/systemd.service.5 \
+ man/daemon.7 \
+ man/systemd.8 \
+ man/sd_notify.3 \
+ man/sd_booted.3 \
+ man/sd_listen_fds.3 \
+ man/sd_is_fifo.3 \
+ man/sd-daemon.7 \
+ man/runlevel.8 \
+ man/systemd-install.1
nodist_man_MANS = \
man/systemd.special.7
dist_noinst_DATA = \
man/systemd.unit.html \
- man/systemd.service.html
+ man/systemd.service.html \
+ man/daemon.html \
+ man/systemd.html \
+ man/sd_notify.html \
+ man/sd_booted.html \
+ man/sd_listen_fds.html \
+ man/sd_is_fifo.html \
+ man/sd-daemon.html \
+ man/runlevel.html \
+ man/systemd-install.html
nodist_noinst_DATA = \
man/systemd.special.html
man/systemd.service.xml \
man/systemd.special.xml.in \
man/systemd.special.7.in \
- man/systemd.special.html.in
+ man/systemd.special.html.in \
+ man/daemon.xml \
+ man/systemd.xml \
+ man/sd_notify.xml \
+ man/sd_booted.xml \
+ man/sd_listen_fds.xml \
+ man/sd_is_fifo.xml \
+ man/sd-daemon.xml \
+ man/runlevel.xml \
+ man/systemd-install.xml
systemd_SOURCES = \
- $(COMMON_SOURCES) \
src/main.c
systemd_CFLAGS = \
$(CGROUP_CFLAGS)
systemd_LDADD = \
- $(DBUS_LIBS) \
- $(UDEV_LIBS) \
- $(CGROUP_LIBS) \
- $(LIBWRAP_LIBS) \
- $(PAM_LIBS)
+ libsystemd-core.la
test_engine_SOURCES = \
- $(COMMON_SOURCES) \
src/test-engine.c
test_engine_CFLAGS = $(systemd_CFLAGS)
test_engine_LDADD = $(systemd_LDADD)
test_job_type_SOURCES = \
- $(COMMON_SOURCES) \
src/test-job-type.c
test_job_type_CFLAGS = $(systemd_CFLAGS)
test_job_type_LDADD = $(systemd_LDADD)
test_ns_SOURCES = \
- $(BASIC_SOURCES) \
- src/test-ns.c \
- src/namespace.c
+ src/test-ns.c
test_ns_CFLAGS = $(systemd_CFLAGS)
test_ns_LDADD = $(systemd_LDADD)
test_loopback_SOURCES = \
- $(BASIC_SOURCES) \
src/test-loopback.c \
src/loopback-setup.c
+test_loopback_LDADD = \
+ libsystemd-basic.la
+
test_daemon_SOURCES = \
- $(BASIC_SOURCES) \
src/test-daemon.c \
src/sd-daemon.c
+test_daemon_LDADD = \
+ libsystemd-basic.la
+
+test_cgroup_SOURCES = \
+ src/test-cgroup.c \
+ src/cgroup-util.c
+
+test_cgroup_CFLAGS = \
+ $(AM_CFLAGS) \
+ $(CGROUP_CFLAGS)
+
+test_cgroup_LDADD = \
+ libsystemd-basic.la \
+ $(CGROUP_LIBS)
+
systemd_logger_SOURCES = \
- $(BASIC_SOURCES) \
src/logger.c \
src/sd-daemon.c \
src/tcpwrap.c
systemd_logger_LDADD = \
+ libsystemd-basic.la \
$(LIBWRAP_LIBS)
systemd_initctl_SOURCES = \
- $(BASIC_SOURCES) \
src/initctl.c \
src/sd-daemon.c
$(DBUS_CFLAGS)
systemd_initctl_LDADD = \
+ libsystemd-basic.la \
$(DBUS_LIBS)
systemd_cgroups_agent_SOURCES = \
- $(BASIC_SOURCES) \
src/cgroups-agent.c
systemd_cgroups_agent_CFLAGS = \
$(DBUS_CFLAGS)
systemd_cgroups_agent_LDADD = \
+ libsystemd-basic.la \
$(DBUS_LIBS)
systemctl_SOURCES = \
src/systemctl.c \
- src/utmp-wtmp.c \
- $(BASIC_SOURCES)
+ src/utmp-wtmp.c
-systemctl_CFLAGS = $(AM_CFLAGS) $(DBUS_CFLAGS)
-systemctl_LDADD = $(DBUS_LIBS)
+systemctl_CFLAGS = \
+ $(AM_CFLAGS) \
+ $(DBUS_CFLAGS)
+
+systemctl_LDADD = \
+ libsystemd-basic.la \
+ $(DBUS_LIBS)
systemd_notify_SOURCES = \
src/notify.c \
- src/sd-daemon.c \
- $(BASIC_SOURCES)
+ src/sd-daemon.c
+
+systemd_notify_LDADD = \
+ libsystemd-basic.la
systemd_install_SOURCES = \
src/install.c \
- src/path-lookup.c \
- $(BASIC_SOURCES)
+ src/path-lookup.c
+
+systemd_install_LDADD = \
+ libsystemd-basic.la
# We don't really link here against D-Bus, however we indirectly include D-Bus header files
-systemd_install_CFLAGS = $(AM_CFLAGS) $(DBUS_CFLAGS)
+systemd_install_CFLAGS = \
+ $(AM_CFLAGS) \
+ $(DBUS_CFLAGS)
systemadm_SOURCES = \
src/systemadm.vala \
--pkg=gtk+-2.0 \
-g
-systemadm_LDADD = $(DBUSGLIB_LIBS) $(GTK_LIBS)
+systemadm_LDADD = \
+ $(DBUSGLIB_LIBS) \
+ $(GTK_LIBS)
+
+pam_systemd_la_SOURCES = \
+ src/pam-module.c \
+ src/cgroup-util.c \
+ src/sd-daemon.c
+
+pam_systemd_la_CFLAGS = \
+ $(AM_CFLAGS) \
+ $(CGROUP_CFLAGS) \
+ -fvisibility=hidden
+
+pam_systemd_la_LDFLAGS = \
+ -module \
+ -export-dynamic \
+ -avoid-version \
+ -shared \
+ -export-symbols-regex '^pam_sm_.*'
+
+pam_systemd_la_LIBADD = \
+ libsystemd-basic.la \
+ $(PAM_LIBS) \
+ $(CGROUP_LIBS)
SED_PROCESS = \
$(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
-e 's,@SPECIAL_SYSLOG_SERVICE\@,$(SPECIAL_SYSLOG_SERVICE),g' \
-e 's,@SPECIAL_DBUS_SERVICE\@,$(SPECIAL_DBUS_SERVICE),g' \
-e 's,@SYSTEMCTL\@,$(rootbindir)/systemctl,g' \
+ -e 's,@pkgsysconfdir\@,$(pkgsysconfdir),g' \
+ -e 's,@pkgdatadir\@,$(pkgdatadir),g' \
+ -e 's,@systemunitdir\@,$(systemunitdir),g' \
+ -e 's,@PACKAGE_VERSION\@,$(PACKAGE_VERSION),g' \
+ -e 's,@PACKAGE_NAME\@,$(PACKAGE_NAME),g' \
+ -e 's,@PACKAGE_URL\@,$(PACKAGE_URL),g' \
+ -e 's,@prefix\@,$(prefix),g' \
< $< > $@
units/%: units/%.in Makefile
man/%: man/%.in Makefile
$(SED_PROCESS)
+%.pc: %.pc.in Makefile
+ $(SED_PROCESS)
+
M4_PROCESS_SYSTEM = \
$(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
$(M4) -P $(M4_DISTRO_FLAG) -DFOR_SYSTEM=1 < $< > $@
units/session/remote-fs.target \
units/session/exit.service \
man/systemd.special.7 \
- man/systemd.special.html
+ man/systemd.special.html \
+ systemd.pc
if HAVE_VALAC
CLEANFILES += \
if HAVE_XSLTPROC
XSLTPROC_PROCESS_MAN = \
$(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
- $(XSLTPROC) -o $@ -nonet http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $<
+ $(XSLTPROC) -o $@ --nonet http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $<
XSLTPROC_PROCESS_MAN_IN = \
$(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
- $(XSLTPROC) -o ${@:.in=} -nonet http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $< && \
+ $(XSLTPROC) -o ${@:.in=} --nonet http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $< && \
mv ${@:.in=} $@
XSLTPROC_PROCESS_HTML = \
$(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
- $(XSLTPROC) -o $@ -nonet http://docbook.sourceforge.net/release/xsl/current/xhtml-1_1/docbook.xsl $<
+ $(XSLTPROC) -o $@ --nonet http://docbook.sourceforge.net/release/xsl/current/xhtml-1_1/docbook.xsl $<
XSLTPROC_PROCESS_HTML_IN = \
$(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
- $(XSLTPROC) -o ${@:.in=} -nonet http://docbook.sourceforge.net/release/xsl/current/xhtml-1_1/docbook.xsl $< && \
+ $(XSLTPROC) -o ${@:.in=} --nonet http://docbook.sourceforge.net/release/xsl/current/xhtml-1_1/docbook.xsl $< && \
mv ${@:.in=} $@
+man/%.3: man/%.xml
+ $(XSLTPROC_PROCESS_MAN)
+
+man/%.3.in: man/%.xml.in
+ $(XSLTPROC_PROCESS_MAN)
+
+man/%.1: man/%.xml
+ $(XSLTPROC_PROCESS_MAN)
+
+man/%.1.in: man/%.xml.in
+ $(XSLTPROC_PROCESS_MAN)
+
man/%.5: man/%.xml
$(XSLTPROC_PROCESS_MAN)
man/%.7.in: man/%.xml.in
$(XSLTPROC_PROCESS_MAN_IN)
+man/%.8: man/%.xml
+ $(XSLTPROC_PROCESS_MAN)
+
+man/%.8.in: man/%.xml.in
+ $(XSLTPROC_PROCESS_MAN_IN)
+
man/%.html: man/%.xml
$(XSLTPROC_PROCESS_HTML)
$(DESTDIR)$(pkgsysconfdir)/system/graphical.target.wants \
$(DESTDIR)$(pkgsysconfdir)/session \
$(DESTDIR)$(sysconfdir)/xdg/systemd
- $(MKDIR_P) -m 0755 $(DESTDIR)/cgroup/systemd || \
- echo "Don't forget to create /cgroup/systemd! Couldn't create it for you, continuing anyway."
+ $(MKDIR_P) -m 0755 $(DESTDIR)/cgroup || \
+ echo "Don't forget to create /cgroup! Couldn't create it for you, continuing anyway."
( cd $(DESTDIR)$(sysconfdir)/xdg/systemd/ && \
rm -f session && \
$(LN_S) $(pkgsysconfdir)/session session )
rm -f org.freedesktop.systemd1.service && \
$(LN_S) ../system-services/org.freedesktop.systemd1.service org.freedesktop.systemd1.service )
if TARGET_FEDORA
+ $(MKDIR_P) -m 0755 \
+ $(DESTDIR)$(SYSTEM_SYSVINIT_PATH)
( cd $(DESTDIR)$(pkgsysconfdir)/system && \
rm -f display-manager.service && \
$(LN_S) $(systemunitdir)/prefdm.service display-manager.service )
( cd $(DESTDIR)$(systemunitdir) && \
rm -f local.service && \
$(LN_S) rc-local.service local.service )
- ( cd $(DESTDIR)/etc/init.d && \
+ ( cd $(DESTDIR)$(SYSTEM_SYSVINIT_PATH) && \
$(LN_S) halt reboot > /dev/null 2>&1 || true )
endif
if TARGET_GENTOO
--with-dbussystemservicedir=$$dc_install_base/$(dbussystemservicedir) \
--with-dbusinterfacedir=$$dc_install_base/$(dbusinterfacedir) \
--with-udevrulesdir=$$dc_install_base/$(udevrulesdir) \
+ --with-pamlibdir=$$dc_install_base/$(pamlibdir) \
--with-rootdir=$$dc_install_base/$(rootdir)