-DSYSTEMD_TTY_ASK_PASSWORD_AGENT_BINARY_PATH=\"$(rootbindir)/systemd-tty-ask-password-agent\" \
-DSYSTEMD_STDIO_BRIDGE_BINARY_PATH=\"$(bindir)/systemd-stdio-bridge\" \
-DROOTPREFIX=\"$(rootprefix)\" \
+ -DRANDOM_SEED_DIR=\"$(localstatedir)/lib/systemd/\" \
-DRANDOM_SEED=\"$(localstatedir)/lib/systemd/random-seed\" \
-DSYSTEMD_CRYPTSETUP_PATH=\"$(rootlibexecdir)/systemd-cryptsetup\" \
-DSYSTEM_GENERATOR_PATH=\"$(systemgeneratordir)\" \
-DQUOTACHECK=\"$(QUOTACHECK)\" \
-DKEXEC=\"$(KEXEC)\" \
-I $(top_srcdir)/src \
+ -I $(top_builddir)/src/shared \
-I $(top_srcdir)/src/shared \
+ -I $(top_srcdir)/src/network \
-I $(top_srcdir)/src/login \
-I $(top_srcdir)/src/journal \
-I $(top_srcdir)/src/systemd \
MULTI_USER_TARGET_WANTS =
SYSINIT_TARGET_WANTS =
SOCKETS_TARGET_WANTS =
+BUSNAMES_TARGET_WANTS =
TIMERS_TARGET_WANTS =
SYSTEM_UNIT_ALIASES =
what="$(MULTI_USER_TARGET_WANTS)" && wants=multi-user.target && $(add-wants)
what="$(SYSINIT_TARGET_WANTS)" && wants=sysinit.target && $(add-wants)
what="$(SOCKETS_TARGET_WANTS)" && wants=sockets.target && $(add-wants)
+ what="$(BUSNAMES_TARGET_WANTS)" && wants=busnames.target && $(add-wants)
what="$(TIMERS_TARGET_WANTS)" && wants=timers.target && $(add-wants)
what="$(SLICES_TARGET_WANTS)" && wants=slices.target && $(add-wants)
bin_PROGRAMS = \
systemd-cgls \
systemd-cgtop \
- systemd-stdio-bridge \
systemd-nspawn \
systemd-detect-virt \
systemd-delta \
systemd-ac-power \
systemd-sysctl \
systemd-sleep \
+ systemd-bus-proxyd \
systemd-socket-proxyd
systemgenerator_PROGRAMS = \
units/sigpwr.target \
units/sleep.target \
units/sockets.target \
+ units/busnames.target \
units/timers.target \
units/paths.target \
units/suspend.target \
test_rtnl_LDADD = \
libsystemd-rtnl.la \
+ libsystemd-bus-internal.la \
+ libsystemd-id128-internal.la \
libsystemd-shared.la
tests += test-rtnl
src/shared/linux/fanotify.h \
src/shared/linux/seccomp.h \
src/shared/linux/seccomp-bpf.h \
+ src/shared/ioprio.h \
src/shared/missing.h \
+ src/shared/initreq.h \
+ src/shared/securebits.h \
+ src/shared/special.h \
src/shared/list.h \
src/shared/macro.h \
src/shared/def.h \
+ src/shared/sparse-endian.h \
+ src/shared/refcnt.h \
+ src/shared/udev-util.h \
+ src/shared/bus-errors.h \
src/shared/device-nodes.c \
src/shared/device-nodes.h \
- src/shared/sparse-endian.h \
src/shared/util.c \
src/shared/util.h \
- src/shared/udev-util.h \
src/shared/virt.c \
src/shared/virt.h \
src/shared/efivars.c \
src/shared/gunicode.h \
src/shared/pager.c \
src/shared/pager.h \
- src/shared/ioprio.h \
src/shared/socket-util.c \
src/shared/socket-util.h \
src/shared/conf-files.c \
src/shared/acpi-fpdt.c \
src/shared/boot-timestamps.h \
src/shared/boot-timestamps.c \
- src/shared/refcnt.h \
src/shared/mkdir.c \
src/shared/mkdir.h \
src/shared/smack-util.c \
src/shared/ptyfwd.c \
src/shared/ptyfwd.h \
src/shared/net-util.c \
- src/shared/net-util.h
-
-#-------------------------------------------------------------------------------
-noinst_LTLIBRARIES += \
- libsystemd-dbus.la
-
-libsystemd_dbus_la_SOURCES = \
- src/shared/dbus-common.c \
- src/shared/dbus-common.h
-
-libsystemd_dbus_la_CFLAGS = \
- $(AM_CFLAGS) \
- $(DBUS_CFLAGS)
+ src/shared/net-util.h \
+ src/shared/errno-list.c \
+ src/shared/errno-list.h \
+ src/shared/syscall-list.c \
+ src/shared/syscall-list.h \
+ src/shared/audit.c \
+ src/shared/audit.h
-libsystemd_dbus_la_LIBADD = \
- $(DBUS_LIBS)
+nodist_libsystemd_shared_la_SOURCES = \
+ src/shared/errno-from-name.h \
+ src/shared/errno-to-name.h \
+ src/shared/syscall-from-name.h \
+ src/shared/syscall-to-name.h
# ------------------------------------------------------------------------------
noinst_LTLIBRARIES += \
src/shared/specifier.h
libsystemd_units_la_CFLAGS = \
- $(AM_CFLAGS) \
- $(DBUS_CFLAGS)
+ $(AM_CFLAGS)
# ------------------------------------------------------------------------------
noinst_LTLIBRARIES += \
libsystemd_capability_la_LIBADD = \
$(CAP_LIBS)
-# ------------------------------------------------------------------------------
-noinst_LTLIBRARIES += \
- libsystemd-audit.la
-
-libsystemd_audit_la_SOURCES = \
- src/shared/audit.c \
- src/shared/audit.h
-
# ------------------------------------------------------------------------------
if HAVE_ACL
noinst_LTLIBRARIES += \
src/core/load-fragment.h \
src/core/service.c \
src/core/service.h \
- src/core/automount.c \
- src/core/automount.h \
- src/core/mount.c \
- src/core/mount.h \
- src/core/swap.c \
- src/core/swap.h \
- src/core/device.c \
- src/core/device.h \
+ src/core/socket.c \
+ src/core/socket.h \
+ src/core/busname.c \
+ src/core/busname.h \
src/core/target.c \
src/core/target.h \
src/core/snapshot.c \
src/core/snapshot.h \
- src/core/socket.c \
- src/core/socket.h \
+ src/core/device.c \
+ src/core/device.h \
+ src/core/mount.c \
+ src/core/mount.h \
+ src/core/automount.c \
+ src/core/automount.h \
+ src/core/swap.c \
+ src/core/swap.h \
src/core/timer.c \
src/core/timer.h \
src/core/path.c \
src/core/dbus-service.h \
src/core/dbus-socket.c \
src/core/dbus-socket.h \
- src/core/dbus-timer.c \
- src/core/dbus-timer.h \
+ src/core/dbus-busname.c \
+ src/core/dbus-busname.h \
src/core/dbus-target.c \
src/core/dbus-target.h \
+ src/core/dbus-snapshot.c \
+ src/core/dbus-snapshot.h \
+ src/core/dbus-device.c \
+ src/core/dbus-device.h \
src/core/dbus-mount.c \
src/core/dbus-mount.h \
src/core/dbus-automount.c \
src/core/dbus-automount.h \
src/core/dbus-swap.c \
src/core/dbus-swap.h \
- src/core/dbus-snapshot.c \
- src/core/dbus-snapshot.h \
- src/core/dbus-device.c \
- src/core/dbus-device.h \
+ src/core/dbus-timer.c \
+ src/core/dbus-timer.h \
src/core/dbus-path.c \
src/core/dbus-path.h \
src/core/dbus-slice.c \
src/core/dbus-kill.h \
src/core/dbus-cgroup.c \
src/core/dbus-cgroup.h \
+ src/core/dbus-client-track.c \
+ src/core/dbus-client-track.h \
src/core/cgroup.c \
src/core/cgroup.h \
src/core/selinux-access.c \
src/core/namespace.h \
src/core/tcpwrap.c \
src/core/tcpwrap.h \
- src/core/securebits.h \
- src/core/initreq.h \
- src/core/special.h \
- src/core/bus-errors.h \
src/core/build.h \
src/core/sysfs-show.h \
src/core/switch-root.h \
src/core/switch-root.c \
src/core/killall.h \
src/core/killall.c \
- src/core/syscall-list.c \
- src/core/syscall-list.h \
src/core/audit-fd.c \
src/core/audit-fd.h \
src/core/async.c \
nodist_libsystemd_core_la_SOURCES = \
src/core/load-fragment-gperf.c \
- src/core/load-fragment-gperf-nulstr.c \
- src/core/syscall-from-name.h \
- src/core/syscall-to-name.h
+ src/core/load-fragment-gperf-nulstr.c
libsystemd_core_la_CFLAGS = \
$(AM_CFLAGS) \
- $(DBUS_CFLAGS) \
$(LIBWRAP_CFLAGS) \
$(PAM_CFLAGS) \
$(AUDIT_CFLAGS) \
libsystemd-capability.la \
libsystemd-units.la \
libsystemd-label.la \
- libsystemd-dbus.la \
- libsystemd-audit.la \
libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libudev-internal.la \
libsystemd-shared.la \
+ libsystemd-rtnl.la \
+ libsystemd-bus-internal.la \
$(LIBWRAP_LIBS) \
$(PAM_LIBS) \
$(AUDIT_LIBS) \
src/core/load-fragment-gperf.gperf \
src/core/load-fragment-gperf.c \
src/core/load-fragment-gperf-nulstr.c \
- src/core/syscall-list.txt \
- src/core/syscall-from-name.gperf
+ src/shared/syscall-list.txt \
+ src/shared/syscall-from-name.gperf \
+ src/shared/errno-list.txt \
+ src/shared/errno-from-name.gperf
BUILT_SOURCES += \
- src/core/syscall-from-name.h \
- src/core/syscall-to-name.h
+ src/shared/syscall-from-name.h \
+ src/shared/syscall-to-name.h \
+ src/shared/errno-from-name.h \
+ src/shared/errno-to-name.h
-src/core/syscall-list.txt: Makefile
+src/shared/syscall-list.txt:
$(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); if ($$2 !~ /SYSCALL_BASE/) print $$2; }' > $@
-src/core/syscall-from-name.gperf: src/core/syscall-list.txt Makefile
+src/shared/syscall-from-name.gperf: src/shared/syscall-list.txt
$(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
+src/shared/syscall-from-name.h: src/shared/syscall-from-name.gperf
$(AM_V_at)$(MKDIR_P) $(dir $@)
$(AM_V_GPERF)$(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
+src/shared/syscall-to-name.h: src/shared/syscall-list.txt
+ $(AM_V_at)$(MKDIR_P) $(dir $@)
+ $(AM_V_GEN)$(AWK) 'BEGIN{ print "static const char* const syscall_names[] = { "} { printf "[SYSCALL_TO_INDEX(__NR_%s)] = \"%s\",\n", $$1, $$1 } END{print "};"}' < $< > $@
+
+src/shared/errno-list.txt:
$(AM_V_at)$(MKDIR_P) $(dir $@)
- $(AM_V_GEN)$(AWK) 'BEGIN{ print "const char* const syscall_names[] = { "} { printf "[SYSCALL_TO_INDEX(__NR_%s)] = \"%s\",\n", $$1, $$1 } END{print "};"}' < $< > $@
+ $(AM_V_GEN)$(CPP) $(CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) -dM -include errno.h - < /dev/null | $(AWK) '/^#define[ \t]+E[^ _]+[ \t]+[0-9]/ { print $$2; }' > $@
+
+src/shared/errno-from-name.gperf: src/shared/errno-list.txt
+ $(AM_V_at)$(MKDIR_P) $(dir $@)
+ $(AM_V_GEN)$(AWK) 'BEGIN{ print "struct errno_name { const char* name; int id; };"; print "%null-strings"; print "%%";} { printf "%s, %s\n", $$1, $$1 }' < $< > $@
+
+src/shared/errno-from-name.h: src/shared/errno-from-name.gperf
+ $(AM_V_at)$(MKDIR_P) $(dir $@)
+ $(AM_V_GPERF)$(GPERF) -L ANSI-C -t --ignore-case -N lookup_errno -H hash_errno_name -p -C < $< > $@
+
+src/shared/errno-to-name.h: src/shared/errno-list.txt
+ $(AM_V_at)$(MKDIR_P) $(dir $@)
+ $(AM_V_GEN)$(AWK) 'BEGIN{ print "static const char* const errno_names[] = { "} { printf "[%s] = \"%s\",\n", $$1, $$1 } END{print "};"}' < $< > $@
# ------------------------------------------------------------------------------
systemd_SOURCES = \
src/core/main.c
-systemd_CFLAGS = \
- $(AM_CFLAGS) \
- $(DBUS_CFLAGS)
-
systemd_LDADD = \
libsystemd-core.la \
$(RT_LIBS)
test-calendarspec \
test-strip-tab-ansi \
test-cgroup-util \
+ test-cgroup-mask \
test-prioq \
test-fileio \
test-time \
test/sched_idle_ok.service \
test/sched_rr_bad.service \
test/sched_rr_ok.service \
- test/sched_rr_change.service
+ test/sched_rr_change.service \
+ test/son.service \
+ test/daughter.service \
+ test/parent.slice
EXTRA_DIST += \
src/test/test-helper.h
test_engine_SOURCES = \
src/test/test-engine.c
-test_engine_CFLAGS = \
- $(AM_CFLAGS) \
- $(DBUS_CFLAGS)
-
test_engine_LDADD = \
libsystemd-core.la \
$(RT_LIBS)
test_job_type_SOURCES = \
src/test/test-job-type.c
-test_job_type_CFLAGS = \
- $(AM_CFLAGS) \
- $(DBUS_CFLAGS)
-
test_job_type_LDADD = \
libsystemd-core.la \
$(RT_LIBS)
test_ns_LDADD = \
libsystemd-core.la
-test_ns_CFLAGS = \
- $(AM_CFLAGS) \
- $(DBUS_CFLAGS)
-
test_loopback_SOURCES = \
src/test/test-loopback.c
test_unit_name_SOURCES = \
src/test/test-unit-name.c
-test_unit_name_CFLAGS = \
- $(AM_CFLAGS) \
- $(DBUS_CFLAGS)
-
test_unit_name_LDADD = \
libsystemd-core.la \
$(RT_LIBS)
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 \
$(RT_LIBS)
src/test/test-tables.c \
src/shared/test-tables.h
-test_tables_CFLAGS = \
- $(AM_CFLAGS) \
- $(DBUS_CFLAGS)
-
test_tables_LDADD = \
libsystemd-logs.la \
libsystemd-journal-internal.la \
libsystemd-label.la \
libsystemd-shared.la
+test_cgroup_mask_SOURCES = \
+ src/test/test-cgroup-mask.c
+
+test_cgroup_mask_CFLAGS = \
+ $(AM_CFLAGS) \
+ $(DBUS_CFLAGS) \
+ -D"STR(s)=\#s" -D"TEST_DIR=STR($(abs_top_srcdir)/test/)"
+
+test_cgroup_mask_LDADD = \
+ libsystemd-core.la \
+ $(RT_LIBS)
+
test_cgroup_util_SOURCES = \
src/test/test-cgroup-util.c
test_install_SOURCES = \
src/test/test-install.c
-test_install_CFLAGS = \
- $(AM_CFLAGS) \
- $(DBUS_CFLAGS)
-
test_install_LDADD = \
libsystemd-units.la \
libsystemd-label.la \
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-daemon-internal.la \
libsystemd-shared.la
-pkginclude_HEADERS += \
+dist_doc_DATA += \
src/systemd/sd-shutdown.h
# ------------------------------------------------------------------------------
bin_PROGRAMS += \
bootctl
+
+dist_zshcompletion_DATA += \
+ shell-completion/zsh/_bootctl
+
endif
# ------------------------------------------------------------------------------
$(BLKID_CFLAGS)
endif
+# ------------------------------------------------------------------------------
+systemgenerator_PROGRAMS += \
+ systemd-dbus1-generator
+
+systemd_dbus1_generator_SOURCES = \
+ src/dbus1-generator/dbus1-generator.c
+
+systemd_dbus1_generator_LDADD = \
+ libsystemd-label.la \
+ libsystemd-shared.la \
+ libsystemd-bus-internal.la
+
# ------------------------------------------------------------------------------
systemd_rc_local_generator_SOURCES = \
src/rc-local-generator/rc-local-generator.c
systemctl_SOURCES = \
src/systemctl/systemctl.c
-systemctl_CFLAGS = \
- $(AM_CFLAGS) \
- $(DBUS_CFLAGS)
-
systemctl_LDADD = \
libsystemd-units.la \
libsystemd-label.la \
- libsystemd-dbus.la \
- libsystemd-logs.la \
- libsystemd-login-internal.la \
+ libsystemd-bus-internal.la \
+ libsystemd-logs.la
+
+if ENABLE_LOGIND
+systemctl_LDADD += \
+ libsystemd-login-internal.la
+endif
+
+systemctl_LDADD += \
libsystemd-journal-internal.la \
libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-bus-internal.la \
libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
- libsystemd-shared.la
+ libsystemd-shared.la \
+ libsystemd-rtnl.la
# ------------------------------------------------------------------------------
systemd_run_SOURCES = \
libsystemd-shared.la
# ------------------------------------------------------------------------------
-systemd_stdio_bridge_SOURCES = \
- src/stdio-bridge/stdio-bridge.c
+systemd_bus_proxyd_SOURCES = \
+ src/bus-proxyd/bus-proxyd.c
-systemd_stdio_bridge_LDADD = \
+systemd_bus_proxyd_LDADD = \
libsystemd-bus-internal.la \
libsystemd-daemon-internal.la \
libsystemd-id128-internal.la \
libsystemd-shared.la
+bus-proxyd-install-hook:
+ $(AM_V_LN)$(LN_S) -f ../../lib/systemd/systemd-bus-proxyd $(DESTDIR)$(bindir)/systemd-stdio-bridge
+
+bus-proxyd-uninstall-hook:
+ rm -f $(DESTDIR)$(bindir)/systemd-stdio-bridge
+
+INSTALL_EXEC_HOOKS += bus-proxyd-install-hook
+UNINSTALL_EXEC_HOOKS += bus-proxyd-uninstall-hook
# ------------------------------------------------------------------------------
systemd_tty_ask_password_agent_SOURCES = \
src/tty-ask-password-agent/tty-ask-password-agent.c
# ------------------------------------------------------------------------------
libsystemd_daemon_la_SOURCES = \
+ src/libsystemd-daemon/libsystemd-daemon.sym \
src/libsystemd-daemon/sd-daemon.c
libsystemd_daemon_internal_la_SOURCES = \
src/libsystemd-daemon/libsystemd-daemon.pc
EXTRA_DIST += \
- src/libsystemd-daemon/libsystemd-daemon.pc.in \
- src/libsystemd-daemon/libsystemd-daemon.sym
+ src/libsystemd-daemon/libsystemd-daemon.pc.in
# ------------------------------------------------------------------------------
libsystemd_bus_la_SOURCES = \
+ src/libsystemd-bus/libsystemd-bus.sym \
src/systemd/sd-bus.h \
src/systemd/sd-bus-protocol.h \
src/systemd/sd-bus-vtable.h \
src/libsystemd-bus/bus-container.h \
src/libsystemd-bus/bus-message.c \
src/libsystemd-bus/bus-message.h \
+ src/libsystemd-bus/bus-creds.c \
+ src/libsystemd-bus/bus-creds.h \
src/libsystemd-bus/bus-signature.c \
src/libsystemd-bus/bus-signature.h \
src/libsystemd-bus/bus-type.c \
src/libsystemd-bus/bus-introspect.h \
src/libsystemd-bus/bus-objects.c \
src/libsystemd-bus/bus-objects.h \
+ src/libsystemd-bus/bus-gvariant.c \
+ src/libsystemd-bus/bus-gvariant.h \
src/libsystemd-bus/bus-convenience.c \
src/libsystemd-bus/kdbus.h \
src/libsystemd-bus/sd-memfd.c \
src/libsystemd-bus/bus-util.h \
src/libsystemd-bus/sd-utf8.c \
src/libsystemd-bus/sd-event.c \
- src/libsystemd-bus/event-util.h
+ src/libsystemd-bus/event-util.h \
+ src/libsystemd-bus/bus-protocol.h
libsystemd_bus_la_LIBADD = \
libsystemd-id128-internal.la \
EXTRA_DIST += \
src/libsystemd-bus/libsystemd-bus.pc.in \
- src/libsystemd-bus/libsystemd-bus.sym
+ src/libsystemd-bus/DIFFERENCES \
+ src/libsystemd-bus/GVARIANT-SERIALIZATION
lib_LTLIBRARIES += \
libsystemd-bus.la
noinst_LTLIBRARIES += \
libsystemd-bus-internal.la
+libsystemd_bus_dump_la_SOURCES = \
+ src/libsystemd-bus/bus-dump.c \
+ src/libsystemd-bus/bus-dump.h
+
+libsystemd_bus_dump_la_CFLAGS = \
+ $(AM_CFLAGS)
+ $(CAP_CFLAGS)
+
+noinst_LTLIBRARIES += \
+ libsystemd-bus-dump.la
+
tests += \
test-bus-marshal \
test-bus-signature \
test-bus-zero-copy \
test-bus-introspect \
test-bus-objects \
+ test-bus-error \
+ test-bus-creds \
+ test-bus-gvariant \
test-event
-noinst_PROGRAMS += \
+bin_PROGRAMS += \
busctl
test_bus_marshal_SOURCES = \
libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la \
+ libsystemd-bus-dump.la \
+ libsystemd-capability.la \
$(GLIB_LIBS) \
- $(DBUS_LIBS)
+ $(DBUS_LIBS) \
+ $(CAP_LIBS)
test_bus_marshal_CFLAGS = \
$(AM_CFLAGS) \
$(GLIB_CFLAGS) \
- $(DBUS_CFLAGS)
+ $(DBUS_CFLAGS) \
+ $(CAP_CFLAGS)
test_bus_signature_SOURCES = \
src/libsystemd-bus/test-bus-signature.c
test_bus_objects_CFLAGS = \
$(AM_CFLAGS) \
+ $(CAP_CFLAGS) \
-pthread
test_bus_objects_LDADD = \
+ libsystemd-bus-internal.la \
+ libsystemd-id128-internal.la \
+ libsystemd-daemon-internal.la \
+ libsystemd-shared.la \
+ libsystemd-bus-dump.la \
+ libsystemd-capability.la \
+ $(CAP_LIBS)
+
+test_bus_error_SOURCES = \
+ src/libsystemd-bus/test-bus-error.c
+
+test_bus_error_LDADD = \
libsystemd-bus-internal.la \
libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
libsystemd-shared.la
+test_bus_gvariant_SOURCES = \
+ src/libsystemd-bus/test-bus-gvariant.c
+
+test_bus_gvariant_LDADD = \
+ libsystemd-bus-internal.la \
+ libsystemd-id128-internal.la \
+ libsystemd-daemon-internal.la \
+ libsystemd-shared.la \
+ libsystemd-bus-dump.la \
+ libsystemd-capability.la \
+ $(GLIB_LIBS) \
+ $(CAP_LIBS)
+
+test_bus_gvariant_CFLAGS = \
+ $(AM_CFLAGS) \
+ $(GLIB_CFLAGS)
+ $(CAP_CFLAGS)
+
+test_bus_creds_SOURCES = \
+ src/libsystemd-bus/test-bus-creds.c
+
+test_bus_creds_LDADD = \
+ libsystemd-bus-internal.la \
+ libsystemd-id128-internal.la \
+ libsystemd-daemon-internal.la \
+ libsystemd-shared.la \
+ libsystemd-bus-dump.la \
+ libsystemd-capability.la
+
test_bus_match_SOURCES = \
src/libsystemd-bus/test-bus-match.c
libsystemd-bus-internal.la \
libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
- libsystemd-shared.la
+ libsystemd-shared.la \
+ libsystemd-bus-dump.la \
+ libsystemd-capability.la \
+ $(CAP_LIBS)
+
+test_bus_kernel_CFLAGS = \
+ $(AM_CFLAGS) \
+ $(CAP_CFLAGS)
test_bus_kernel_bloom_SOURCES = \
src/libsystemd-bus/test-bus-kernel-bloom.c
libsystemd-bus-internal.la \
libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
- libsystemd-shared.la
+ libsystemd-shared.la \
+ libsystemd-bus-dump.la \
+ libsystemd-capability.la \
+ $(CAP_LIBS)
+
+test_bus_zero_copy_CFLAGS = \
+ $(AM_CFLAGS) \
+ $(CAP_CFLAGS)
test_bus_introspect_SOURCES = \
src/libsystemd-bus/test-bus-introspect.c
libsystemd-bus-internal.la \
libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
- libsystemd-shared.la
+ libsystemd-shared.la \
+ libsystemd-bus-dump.la \
+ libsystemd-capability.la \
+ $(CAP_LIBS)
+
+busctl_CFLAGS = \
+ $(AM_CFLAGS) \
+ $(CAP_CFLAGS)
# ------------------------------------------------------------------------------
if ENABLE_GTK_DOC
libudev.la
libudev_la_SOURCES =\
+ src/libudev/libudev.sym \
src/libudev/libudev-private.h \
src/libudev/libudev.c \
src/libudev/libudev-list.c \
src/libudev/libudev.pc
EXTRA_DIST += \
- src/libudev/libudev.pc.in \
- src/libudev/libudev.sym
+ src/libudev/libudev.pc.in
CLEANFILES += \
src/libudev/libudev.pc \
noinst_LTLIBRARIES += \
libudev-core.la
-src/udev/keyboard-keys.txt: Makefile
+src/udev/keyboard-keys.txt:
$(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/keyboard-keys-from-name.gperf: src/udev/keyboard-keys.txt Makefile
+src/udev/keyboard-keys-from-name.gperf: src/udev/keyboard-keys.txt
$(AM_V_GEN)$(AWK) 'BEGIN{ print "struct key { const char* name; unsigned short id; };"; print "%null-strings"; print "%%";} { print tolower(substr($$1 ,5)) ", " $$1 }' < $< > $@
-src/udev/keyboard-keys-from-name.h: src/udev/keyboard-keys-from-name.gperf Makefile
+src/udev/keyboard-keys-from-name.h: src/udev/keyboard-keys-from-name.gperf
$(AM_V_GPERF)$(GPERF) -L ANSI-C -t -N keyboard_lookup_key -H hash_key_name -p -C < $< > $@
-src/udev/keyboard-keys-to-name.h: src/udev/keyboard-keys.txt Makefile
+src/udev/keyboard-keys-to-name.h: src/udev/keyboard-keys.txt
$(AM_V_GEN)$(AWK) 'BEGIN{ print "const char* const key_names[KEY_CNT] = { "} { print "[" $$1 "] = \"" $$1 "\"," } END{print "};"}' < $< > $@
libudev_core_la_SOURCES = \
src/udev/mtd_probe/mtd_probe.h \
src/udev/mtd_probe/probe_smartmedia.c
-mtd_probe_CPPFLAGS = \
- $(AM_CPPFLAGS)
-
dist_udevrules_DATA += \
rules/75-probe_mtd.rules
# ------------------------------------------------------------------------------
libsystemd_id128_la_SOURCES = \
+ src/libsystemd-id128/libsystemd-id128.sym \
src/libsystemd-id128/sd-id128.c
libsystemd_id128_la_CFLAGS = \
-Wl,--version-script=$(top_srcdir)/src/libsystemd-id128/libsystemd-id128.sym
libsystemd_id128_la_LIBADD = \
+ libsystemd-daemon-internal.la \
libsystemd-shared.la
libsystemd_id128_internal_la_SOURCES = \
UNINSTALL_EXEC_HOOKS += libsystemd-id128-uninstall-hook
EXTRA_DIST += \
- src/libsystemd-id128/libsystemd-id128.pc.in \
- src/libsystemd-id128/libsystemd-id128.sym
+ src/libsystemd-id128/libsystemd-id128.pc.in
# ------------------------------------------------------------------------------
test_journal_stream_LDADD = \
libsystemd-journal-core.la
+test_journal_flush_SOURCES = \
+ src/journal/test-journal-flush.c
+
+test_journal_flush_LDADD = \
+ libsystemd-journal-core.la
+
test_journal_init_SOURCES = \
src/journal/test-journal-init.c
libsystemd-journal-core.la
libsystemd_journal_la_SOURCES = \
+ src/journal/libsystemd-journal.sym \
src/journal/sd-journal.c \
src/systemd/sd-journal.h \
src/systemd/_sd-common.h \
libsystemd_journal_core_la_LIBADD = \
libsystemd-journal-internal.la \
libudev-internal.la \
- libsystemd-audit.la \
libsystemd-capability.la \
libsystemd-label.la \
libsystemd-daemon-internal.la \
test-journal-init \
test-journal-verify \
test-journal-interleaving \
+ test-journal-flush \
test-mmap-cache \
test-catalog
src/journal/libsystemd-journal.pc
dist_catalog_DATA = \
+ catalog/systemd.fr.catalog \
+ catalog/systemd.ru.catalog \
+ catalog/systemd.it.catalog \
catalog/systemd.catalog
SOCKETS_TARGET_WANTS += \
EXTRA_DIST += \
src/journal/libsystemd-journal.pc.in \
- src/journal/libsystemd-journal.sym \
units/systemd-journald.service.in \
units/systemd-journal-flush.service.in \
src/journal/journald-gperf.gperf
nodist_systemunit_DATA += \
units/systemd-hostnamed.service
+dist_systemunit_DATA += \
+ units/org.freedesktop.hostname1.busname
+
dist_dbuspolicy_DATA += \
src/hostname/org.freedesktop.hostname1.conf
SYSTEM_UNIT_ALIASES += \
systemd-hostnamed.service dbus-org.freedesktop.hostname1.service
+BUSNAMES_TARGET_WANTS += \
+ org.freedesktop.hostname1.busname
+
hostnamectl_SOURCES = \
src/hostname/hostnamectl.c
nodist_systemunit_DATA += \
units/systemd-localed.service
+dist_systemunit_DATA += \
+ units/org.freedesktop.locale1.busname
+
rootlibexec_PROGRAMS += \
systemd-localed
SYSTEM_UNIT_ALIASES += \
systemd-localed.service dbus-org.freedesktop.locale1.service
+BUSNAMES_TARGET_WANTS += \
+ org.freedesktop.locale1.busname
+
dist_pkgdata_DATA += \
src/locale/kbd-model-map
nodist_systemunit_DATA += \
units/systemd-timedated.service
+dist_systemunit_DATA += \
+ units/org.freedesktop.timedate1.busname
+
polkitpolicy_files += \
src/timedate/org.freedesktop.timedate1.policy
SYSTEM_UNIT_ALIASES += \
systemd-timedated.service dbus-org.freedesktop.timedate1.service
+BUSNAMES_TARGET_WANTS += \
+ org.freedesktop.timedate1.busname
+
timedatectl_SOURCES = \
src/timedate/timedatectl.c
libsystemd_machine_core_la_LIBADD = \
libsystemd-label.la \
- libsystemd-audit.la \
libsystemd-daemon-internal.la \
libsystemd-bus-internal.la \
libsystemd-id128-internal.la \
units/systemd-machined.service
dist_systemunit_DATA += \
- units/machine.slice
+ units/machine.slice \
+ units/org.freedesktop.machine1.busname
dist_dbussystemservice_DATA += \
src/machine/org.freedesktop.machine1.service
SYSTEM_UNIT_ALIASES += \
systemd-machined.service dbus-org.freedesktop.machine1.service
+BUSNAMES_TARGET_WANTS += \
+ org.freedesktop.machine1.busname
+
EXTRA_DIST += \
units/systemd-machined.service.in
endif
+# ------------------------------------------------------------------------------
+if ENABLE_NETWORKD
+rootlibexec_PROGRAMS += \
+ systemd-networkd
+
+systemd_networkd_SOURCES = \
+ src/network/networkd.h \
+ src/network/networkd.c \
+ src/network/networkd-link.c \
+ src/network/networkd-bridge.c \
+ src/network/networkd-network.c \
+ src/network/networkd-address.c \
+ src/network/networkd-route.c \
+ src/network/networkd-manager.c
+
+nodist_systemd_networkd_SOURCES = \
+ src/network/networkd-gperf.c
+
+systemd_networkd_LDADD = \
+ libudev-internal.la \
+ libsystemd-daemon-internal.la \
+ libsystemd-bus-internal.la \
+ libsystemd-id128-internal.la \
+ libsystemd-rtnl.la \
+ libsystemd-shared.la
+
+nodist_systemunit_DATA += \
+ units/systemd-networkd.service
+
+MULTI_USER_TARGET_WANTS += \
+ systemd-networkd.service
+
+test_network_SOURCES = \
+ src/network/test-network.c \
+ src/network/networkd.h \
+ src/network/networkd-link.c \
+ src/network/networkd-bridge.c \
+ src/network/networkd-network.c \
+ src/network/networkd-address.c \
+ src/network/networkd-route.c \
+ src/network/networkd-manager.c \
+ src/network/networkd-gperf.c
+
+test_network_LDADD = \
+ libudev-internal.la \
+ libsystemd-bus-internal.la \
+ libsystemd-id128-internal.la \
+ libsystemd-rtnl.la \
+ libsystemd-shared.la
+
+tests += test-network
+
+EXTRA_DIST += \
+ src/network/networkd-gperf.gperf \
+ units/systemd-networkd.service.in
+
+CLEANFILES += \
+ src/network/networkd-gperf.c
+endif
+
# ------------------------------------------------------------------------------
if ENABLE_LOGIND
systemd_logind_SOURCES = \
libsystemd_logind_core_la_SOURCES = \
src/login/logind-core.c \
- src/login/logind-dbus.c \
src/login/logind-device.c \
src/login/logind-device.h \
src/login/logind-button.c \
src/login/logind-user.h \
src/login/logind-inhibit.c \
src/login/logind-inhibit.h \
+ src/login/logind-dbus.c \
src/login/logind-session-dbus.c \
src/login/logind-seat-dbus.c \
src/login/logind-user-dbus.c \
libsystemd_logind_core_la_LIBADD = \
libsystemd-label.la \
libsystemd-capability.la \
- libsystemd-audit.la \
libsystemd-daemon-internal.la \
libsystemd-id128-internal.la \
libsystemd-bus-internal.la \
src/login/loginctl.c \
src/login/sysfs-show.c
-loginctl_CFLAGS = \
- $(AM_CFLAGS) \
- $(DBUS_CFLAGS)
-
loginctl_LDADD = \
- libsystemd-dbus.la \
+ libsystemd-bus-internal.la \
libudev-internal.la \
- libsystemd-shared.la
+ libsystemd-shared.la \
+ libsystemd-id128-internal.la \
+ libsystemd-daemon-internal.la
rootbin_PROGRAMS += \
loginctl
test-login-shared
libsystemd_login_la_SOURCES = \
+ src/login/libsystemd-login.sym \
src/login/sd-login.c \
src/systemd/sd-login.h \
src/login/login-shared.c \
pam_systemd_la_LIBADD = \
libsystemd-capability.la \
- libsystemd-audit.la \
libsystemd-bus-internal.la \
libsystemd-id128-internal.la \
libsystemd-daemon-internal.la \
units/systemd-user-sessions.service
dist_systemunit_DATA += \
- units/user.slice
+ units/user.slice \
+ units/org.freedesktop.login1.busname
dist_dbussystemservice_DATA += \
src/login/org.freedesktop.login1.service
SYSTEM_UNIT_ALIASES += \
systemd-logind.service dbus-org.freedesktop.login1.service
+BUSNAMES_TARGET_WANTS += \
+ org.freedesktop.login1.busname
+
+if ENABLE_MULTI_SEAT_X
+
systemd_multi_seat_x_SOURCES = \
src/login/multi-seat-x.c
rootlibexec_PROGRAMS += \
systemd-multi-seat-x
+endif
+
dist_udevrules_DATA += \
src/login/70-uaccess.rules \
src/login/70-power-switch.rules
EXTRA_DIST += \
src/login/logind-gperf.gperf \
src/login/libsystemd-login.pc.in \
- src/login/libsystemd-login.sym \
src/login/71-seat.rules.in \
src/login/73-seat-late.rules.in \
units/systemd-logind.service.in \
src/python-systemd/daemon.py \
src/python-systemd/__init__.py
-src/python-systemd/id128-constants.h: src/systemd/sd-messages.h Makefile
+src/python-systemd/id128-constants.h: src/systemd/sd-messages.h
$(AM_V_at)$(MKDIR_P) $(dir $@)
$(AM_V_GEN)$(SED) -n -r 's/,//g; s/#define (SD_MESSAGE_[A-Z0-9_]+)\s.*/add_id(m, "\1", \1) JOINER/p' <$< >$@
'|PACKAGE_VERSION=$(PACKAGE_VERSION)|' \
'|PACKAGE_NAME=$(PACKAGE_NAME)|' \
'|PACKAGE_URL=$(PACKAGE_URL)|' \
+ '|RANDOM_SEED_DIR=$(localstatedir)/lib/systemd/|' \
'|RANDOM_SEED=$(localstatedir)/lib/systemd/random-seed|' \
'|prefix=$(prefix)|' \
'|exec_prefix=$(exec_prefix)|' \
$(SED) $(subst '|,-e 's|@,$(subst =,\@|,$(subst |',|g',$(substitutions)))) \
< $< > $@
-units/%: units/%.in Makefile
+units/%: units/%.in
$(SED_PROCESS)
-man/%: man/%.in Makefile
+man/%: man/%.in
$(SED_PROCESS)
-sysctl.d/%: sysctl.d/%.in Makefile
+sysctl.d/%: sysctl.d/%.in
$(SED_PROCESS)
-%.pc: %.pc.in Makefile
+%.pc: %.pc.in
$(SED_PROCESS)
-src/core/macros.%: src/core/macros.%.in Makefile
+src/core/macros.%: src/core/macros.%.in
$(SED_PROCESS)
-src/%.policy.in: src/%.policy.in.in Makefile
+src/%.policy.in: src/%.policy.in.in
$(SED_PROCESS)
-%.rules: %.rules.in Makefile
+%.rules: %.rules.in
$(SED_PROCESS)
-%.sh: %.sh.in Makefile
+%.sh: %.sh.in
$(SED_PROCESS)
$(AM_V_GEN)chmod +x $@
$(AM_V_at)$(MKDIR_P) $(dir $@)
$(AM_V_M4)$(M4) -P $(M4_DEFINES) < $< > $@
-units/%: units/%.m4 Makefile
+units/%: units/%.m4
$(AM_V_M4)$(MKDIR_P) $(dir $@)
$(AM_V_M4)$(M4) -P $(M4_DEFINES) -DFOR_SYSTEM=1 < $< > $@
-units/user/%: units/%.m4 Makefile
+units/user/%: units/%.m4
$(AM_V_M4)$(MKDIR_P) $(dir $@)
$(AM_V_M4)$(M4) -P $(M4_DEFINES) -DFOR_USER=1 < $< > $@
# ------------------------------------------------------------------------------
if ENABLE_MANPAGES
-man/custom-entities.ent: Makefile
+man/custom-entities.ent:
$(AM_V_GEN)$(MKDIR_P) $(dir $@)
$(AM_V_GEN)(echo '<?xml version="1.0" encoding="utf-8" ?>' && \
echo '$(subst '|,<!ENTITY ,$(subst =, ",$(subst |',">,$(substitutions))))') \
USER_UNIT_ALIASES += \
$(systemunitdir)/shutdown.target shutdown.target \
$(systemunitdir)/sockets.target sockets.target \
+ $(systemunitdir)/busnames.target busnames.target \
$(systemunitdir)/timers.target timers.target \
$(systemunitdir)/paths.target paths.target \
$(systemunitdir)/bluetooth.target bluetooth.target \
--with-pamlibdir=$$dc_install_base/$(pamlibdir) \
--with-pamconfdir=$$dc_install_base/$(pamconfdir) \
--with-rootprefix=$$dc_install_base \
- --disable-split-usr
+ --disable-split-usr \
+ --enable-kdbus
if HAVE_SYSV_COMPAT
DISTCHECK_CONFIGURE_FLAGS += \
# Let's run all tests of the test suite, but under valgrind. Let's
# exclude the one perl script we have in there
valgrind-tests: $(TESTS)
- for f in $(TESTS) ; do [ "$$f" == "$${f/.pl/}" ] && libtool --mode=execute valgrind --leak-check=full --error-exitcode=55 $(builddir)/$$f ; done
+ $(AM_V_GEN)for f in $(filter-out %.pl, $^); do \
+ echo "Running $$f"; \
+ libtool --mode=execute valgrind -q --leak-check=full --max-stackframe=4194400 --error-exitcode=55 $(builddir)/$$f ; \
+ done
+
+exported-%: %
+ $(AM_V_GEN)nm -g --defined-only $(builddir)/.libs/$(<:.la=.so) 2>&1 /dev/null | grep " T " | cut -d" " -f3 > $@
+
+exported: $(addprefix exported-, $(lib_LTLIBRARIES))
+ $(AM_V_GEN)cat $^ > $@
+
+check-api-docs: exported man
+ $(AM_V_GEN)for symbol in `cat exported` ; do \
+ if test -f $(builddir)/man/$$symbol.html ; then \
+ echo " Symbol $$symbol() is documented." ; \
+ else \
+ echo "‣ Symbol $$symbol() lacks documentation." ; \
+ fi ; \
+ done
+
+OBJECT_VARIABLES:=$(filter %_OBJECTS,$(.VARIABLES))
+ALL_OBJECTS:=$(foreach v,$(OBJECT_VARIABLES),$($(v)))
+
+undefined defined: $(ALL_OBJECTS)
+ $(AM_V_GEN)for f in $(ALL_OBJECTS) ; do \
+ nm -g --$@-only `echo $(builddir)/"$$f" | sed -e 's,\([^/]*\).lo$$,.libs/\1.o,'` ; \
+ done | cut -c 20- | cut -d @ -f 1 | sort -u > $@
+
+CLEANFILES += \
+ defined \
+ undefined
+
+check-api-unused: defined undefined exported
+ ( cat exported undefined ) | sort -u | diff -u - defined | grep ^+ | grep -v ^+++ | cut -c2-
+
+# Stupid test that everything purported to be exported really is
+
+define generate-sym-test
+ $(AM_V_at)$(MKDIR_P) $(dir $@)
+ $(AM_V_at)printf '#include <stdio.h>\n' > $@
+ $(AM_V_at)printf '#include "%s"\n' $(notdir $(filter %.h, $^)) >> $@
+ $(AM_V_at)printf 'void* functions[] = {\n' >> $@
+ $(AM_V_GEN)sed -r -n 's/^ +([a-zA-Z0-9_]+);/\1,/p' $< >> $@
+ $(AM_V_at)printf '};\nint main(void) {\n' >> $@
+ $(AM_V_at)printf 'unsigned i; for (i=0;i<sizeof(functions)/sizeof(void*);i++) printf("%%p\\n", functions[i]);\n' >> $@
+ $(AM_V_at)printf 'return 0; }\n' >> $@
+endef
+
+test-libsystemd-bus-sym.c: \
+ src/libsystemd-bus/libsystemd-bus.sym \
+ src/systemd/sd-bus.h \
+ src/systemd/sd-utf8.h
+ $(generate-sym-test)
+
+test-libsystemd-daemon-sym.c: \
+ src/libsystemd-daemon/libsystemd-daemon.sym \
+ src/systemd/sd-daemon.h
+ $(generate-sym-test)
+
+test-libsystemd-id128-sym.c: \
+ src/libsystemd-id128/libsystemd-id128.sym \
+ src/systemd/sd-id128.h
+ $(generate-sym-test)
+
+test-libsystemd-journal-sym.c: \
+ src/journal/libsystemd-journal.sym \
+ src/systemd/sd-journal.h
+ $(generate-sym-test)
+
+test-libsystemd-login-sym.c: \
+ src/login/libsystemd-login.sym \
+ src/systemd/sd-login.h
+ $(generate-sym-test)
+
+test-libudev-sym.c: \
+ src/libudev/libudev.sym \
+ src/udev/udev.h
+ $(generate-sym-test)
+
+test_libsystemd_bus_sym_SOURCES = \
+ test-libsystemd-bus-sym.c
+test_libsystemd_bus_sym_LDADD = \
+ libsystemd-bus.la
+
+test_libsystemd_daemon_sym_SOURCES = \
+ test-libsystemd-daemon-sym.c
+test_libsystemd_daemon_sym_LDADD = \
+ libsystemd-daemon.la
+
+test_libsystemd_id128_sym_SOURCES = \
+ test-libsystemd-id128-sym.c
+test_libsystemd_id128_sym_LDADD = \
+ libsystemd-id128.la
+
+test_libsystemd_journal_sym_SOURCES = \
+ test-libsystemd-journal-sym.c
+test_libsystemd_journal_sym_LDADD = \
+ libsystemd-journal.la
+
+test_libsystemd_login_sym_SOURCES = \
+ test-libsystemd-login-sym.c
+test_libsystemd_login_sym_LDADD = \
+ libsystemd-login.la
+
+test_libudev_sym_SOURCES = \
+ test-libudev-sym.c
+test_libudev_sym_LDADD = \
+ libudev.la
+
+BUILT_SOURCES += \
+ $(test_libsystemd_bus_sym_SOURCES) \
+ $(test_libsystemd_daemon_sym_SOURCES) \
+ $(test_libsystemd_id128_sym_SOURCES) \
+ $(test_libsystemd_journal_sym_SOURCES) \
+ $(test_libsystemd_login_sym_SOURCES) \
+ $(test_libudev_sym_SOURCES)
+
+tests += \
+ test-libsystemd-bus-sym \
+ test-libsystemd-daemon-sym \
+ test-libsystemd-id128-sym \
+ test-libsystemd-journal-sym \
+ test-libsystemd-login-sym \
+ test-libudev-sym