chiark / gitweb /
build-sys: make readahead and vconsole optional
[elogind.git] / Makefile.am
1 #  This file is part of systemd.
2 #
3 #  Copyright 2011 Lennart Poettering
4 #  Copyright 2011 Kay Sievers
5 #
6 #  systemd is free software; you can redistribute it and/or modify it
7 #  under the terms of the GNU General Public License as published by
8 #  the Free Software Foundation; either version 2 of the License, or
9 #  (at your option) any later version.
10 #
11 #  systemd is distributed in the hope that it will be useful, but
12 #  WITHOUT ANY WARRANTY; without even the implied warranty of
13 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 #  General Public License for more details.
15 #
16 #  You should have received a copy of the GNU General Public License
17 #  along with systemd; If not, see <http://www.gnu.org/licenses/>.
18
19 ACLOCAL_AMFLAGS = -I m4
20
21 SUBDIRS = po
22
23 LIBSYSTEMD_LOGIN_CURRENT=0
24 LIBSYSTEMD_LOGIN_REVISION=6
25 LIBSYSTEMD_LOGIN_AGE=0
26
27 LIBSYSTEMD_DAEMON_CURRENT=0
28 LIBSYSTEMD_DAEMON_REVISION=0
29 LIBSYSTEMD_DAEMON_AGE=0
30
31 LIBSYSTEMD_ID128_CURRENT=0
32 LIBSYSTEMD_ID128_REVISION=0
33 LIBSYSTEMD_ID128_AGE=0
34
35 LIBSYSTEMD_JOURNAL_CURRENT=0
36 LIBSYSTEMD_JOURNAL_REVISION=0
37 LIBSYSTEMD_JOURNAL_AGE=0
38
39 # Dirs of external packages
40 dbuspolicydir=@dbuspolicydir@
41 dbussessionservicedir=@dbussessionservicedir@
42 dbussystemservicedir=@dbussystemservicedir@
43 dbusinterfacedir=@dbusinterfacedir@
44 udevrulesdir=@udevrulesdir@
45 pamlibdir=@pamlibdir@
46 pkgconfigdatadir=$(datadir)/pkgconfig
47 pkgconfiglibdir=$(libdir)/pkgconfig
48 polkitpolicydir=$(datadir)/polkit-1/actions
49 bashcompletiondir=$(sysconfdir)/bash_completion.d
50
51 # Our own, non-special dirs
52 pkgsysconfdir=$(sysconfdir)/systemd
53 userunitdir=$(prefix)/lib/systemd/user
54 tmpfilesdir=$(prefix)/lib/tmpfiles.d
55 usergeneratordir=$(pkglibexecdir)/user-generators
56 pkgincludedir=$(includedir)/systemd
57
58 # And these are the special ones for /
59 rootdir=@rootdir@
60 rootbindir=$(rootdir)/bin
61 rootlibexecdir=$(rootdir)/lib/systemd
62 systemgeneratordir=$(rootlibexecdir)/system-generators
63 systemshutdowndir=$(rootlibexecdir)/system-shutdown
64 systemunitdir=$(rootdir)/lib/systemd/system
65
66 CLEANFILES =
67 EXTRA_DIST =
68 INSTALL_EXEC_HOOKS =
69 UNINSTALL_EXEC_HOOKS =
70 INSTALL_DATA_HOOKS =
71 pkginclude_HEADERS =
72 lib_LTLIBRARIES =
73 pkgconfiglib_DATA =
74 polkitpolicy_in_files =
75
76 AM_CPPFLAGS = \
77         -include $(top_builddir)/config.h \
78         -DSYSTEM_CONFIG_FILE=\"$(pkgsysconfdir)/system.conf\" \
79         -DSYSTEM_CONFIG_UNIT_PATH=\"$(pkgsysconfdir)/system\" \
80         -DSYSTEM_DATA_UNIT_PATH=\"$(systemunitdir)\" \
81         -DSYSTEM_SYSVINIT_PATH=\"$(SYSTEM_SYSVINIT_PATH)\" \
82         -DSYSTEM_SYSVRCND_PATH=\"$(SYSTEM_SYSVRCND_PATH)\" \
83         -DUSER_CONFIG_FILE=\"$(pkgsysconfdir)/user.conf\" \
84         -DUSER_CONFIG_UNIT_PATH=\"$(pkgsysconfdir)/user\" \
85         -DUSER_DATA_UNIT_PATH=\"$(userunitdir)\" \
86         -DSYSTEMD_CGROUP_AGENT_PATH=\"$(rootlibexecdir)/systemd-cgroups-agent\" \
87         -DSYSTEMD_BINARY_PATH=\"$(rootbindir)/systemd\" \
88         -DSYSTEMD_SHUTDOWN_BINARY_PATH=\"$(rootlibexecdir)/systemd-shutdown\" \
89         -DSYSTEMCTL_BINARY_PATH=\"$(rootbindir)/systemctl\" \
90         -DSYSTEMD_TTY_ASK_PASSWORD_AGENT_BINARY_PATH=\"$(rootbindir)/systemd-tty-ask-password-agent\" \
91         -DSYSTEMD_STDIO_BRIDGE_BINARY_PATH=\"$(bindir)/systemd-stdio-bridge\" \
92         -DRUNTIME_DIR=\"/run\" \
93         -DRANDOM_SEED=\"$(localstatedir)/lib/random-seed\" \
94         -DSYSTEMD_CRYPTSETUP_PATH=\"$(rootlibexecdir)/systemd-cryptsetup\" \
95         -DSYSTEM_GENERATOR_PATH=\"$(systemgeneratordir)\" \
96         -DUSER_GENERATOR_PATH=\"$(usergeneratordir)\" \
97         -DSYSTEM_SHUTDOWN_PATH=\"$(systemshutdowndir)\" \
98         -DSYSTEMD_KBD_MODEL_MAP=\"$(pkgdatadir)/kbd-model-map\" \
99         -I $(top_srcdir)/src \
100         -I $(top_srcdir)/src/readahead \
101         -I $(top_srcdir)/src/login
102
103 if TARGET_GENTOO
104 AM_CPPFLAGS += \
105         -DKBD_LOADKEYS=\"/usr/bin/loadkeys\" \
106         -DKBD_SETFONT=\"/usr/bin/setfont\" \
107         -DDEFAULT_FONT=\"LatArCyrHeb-16\"
108 else
109 if TARGET_ARCH
110 AM_CPPFLAGS += \
111         -DKBD_LOADKEYS=\"/usr/bin/loadkeys\" \
112         -DKBD_SETFONT=\"/usr/bin/setfont\" \
113         -DDEFAULT_FONT=\"LatArCyrHeb-16\"
114 else
115 if TARGET_FRUGALWARE
116 AM_CPPFLAGS += \
117         -DKBD_LOADKEYS=\"/usr/bin/loadkeys\" \
118         -DKBD_SETFONT=\"/usr/bin/setfont\" \
119         -DDEFAULT_FONT=\"LatArCyrHeb-16\"
120 else
121 if TARGET_MANDRIVA
122 AM_CPPFLAGS += \
123         -DKBD_LOADKEYS=\"/bin/loadkeys\" \
124         -DKBD_SETFONT=\"/bin/setfont\" \
125         -DDEFAULT_FONT=\"LatArCyrHeb-16\"
126 else
127 if TARGET_MEEGO
128 AM_CPPFLAGS += \
129         -DKBD_LOADKEYS=\"/bin/loadkeys\" \
130         -DKBD_SETFONT=\"/bin/setfont\" \
131         -DDEFAULT_FONT=\"LatArCyrHeb-16\"
132 else
133 if TARGET_ANGSTROM
134 AM_CPPFLAGS += \
135         -DKBD_LOADKEYS=\"/usr/bin/loadkeys\" \
136         -DKBD_SETFONT=\"/usr/bin/setfont\" \
137         -DDEFAULT_FONT=\"LatArCyrHeb-16\"
138 else
139 if TARGET_MAGEIA
140 AM_CPPFLAGS += \
141         -DKBD_LOADKEYS=\"/bin/loadkeys\" \
142         -DKBD_SETFONT=\"/bin/setfont\" \
143         -DDEFAULT_FONT=\"LatArCyrHeb-16\"
144 else
145 AM_CPPFLAGS += \
146         -DKBD_LOADKEYS=\"/bin/loadkeys\" \
147         -DKBD_SETFONT=\"/bin/setfont\" \
148         -DDEFAULT_FONT=\"latarcyrheb-sun16\"
149 endif
150 endif
151 endif
152 endif
153 endif
154 endif
155 endif
156
157 rootbin_PROGRAMS = \
158         systemd \
159         systemctl \
160         systemd-notify \
161         systemd-ask-password \
162         systemd-tty-ask-password-agent \
163         systemd-tmpfiles \
164         systemd-machine-id-setup
165
166 bin_PROGRAMS = \
167         systemd-cgls \
168         systemd-stdio-bridge \
169         systemd-nspawn
170
171 dist_bin_SCRIPTS = \
172         src/systemd-analyze
173
174 if HAVE_GTK
175 bin_PROGRAMS += \
176         systemadm \
177         systemd-gnome-ask-password-agent
178 endif
179
180 rootlibexec_PROGRAMS = \
181         systemd-stdout-syslog-bridge \
182         systemd-cgroups-agent \
183         systemd-initctl \
184         systemd-update-utmp \
185         systemd-random-seed \
186         systemd-shutdownd \
187         systemd-shutdown \
188         systemd-modules-load \
189         systemd-remount-api-vfs \
190         systemd-kmsg-syslogd \
191         systemd-reply-password \
192         systemd-user-sessions \
193         systemd-fsck \
194         systemd-quotacheck \
195         systemd-timestamp \
196         systemd-ac-power \
197         systemd-detect-virt \
198         systemd-sysctl
199
200 systemgenerator_PROGRAMS = \
201         systemd-getty-generator
202
203 if HAVE_LIBCRYPTSETUP
204 rootlibexec_PROGRAMS += \
205         systemd-cryptsetup
206
207 systemgenerator_PROGRAMS += \
208         systemd-cryptsetup-generator
209 endif
210
211 noinst_PROGRAMS = \
212         test-engine \
213         test-job-type \
214         test-ns \
215         test-loopback \
216         test-hostname \
217         test-daemon \
218         test-cgroup \
219         test-env-replace \
220         test-strv \
221         test-install
222
223 dist_pkgsysconf_DATA = \
224         src/system.conf \
225         src/user.conf
226
227 dist_dbuspolicy_DATA = \
228         src/org.freedesktop.systemd1.conf
229
230 dist_dbussystemservice_DATA = \
231         src/org.freedesktop.systemd1.service
232
233 dist_udevrules_DATA = \
234         src/71-seat.rules
235
236 nodist_udevrules_DATA = \
237         src/73-seat-late.rules \
238         src/99-systemd.rules
239
240 dbusinterface_DATA = \
241         org.freedesktop.systemd1.Manager.xml \
242         org.freedesktop.systemd1.Job.xml \
243         org.freedesktop.systemd1.Unit.xml \
244         org.freedesktop.systemd1.Service.xml \
245         org.freedesktop.systemd1.Socket.xml \
246         org.freedesktop.systemd1.Timer.xml \
247         org.freedesktop.systemd1.Target.xml \
248         org.freedesktop.systemd1.Device.xml \
249         org.freedesktop.systemd1.Mount.xml \
250         org.freedesktop.systemd1.Automount.xml \
251         org.freedesktop.systemd1.Snapshot.xml \
252         org.freedesktop.systemd1.Swap.xml \
253         org.freedesktop.systemd1.Path.xml
254
255 dist_bashcompletion_DATA = \
256         src/systemd-bash-completion.sh
257
258 dist_tmpfiles_DATA = \
259         tmpfiles.d/systemd.conf \
260         tmpfiles.d/tmp.conf \
261         tmpfiles.d/x11.conf
262
263 if HAVE_SYSV_COMPAT
264 dist_tmpfiles_DATA += \
265         tmpfiles.d/legacy.conf
266 endif
267
268 dist_systemunit_DATA = \
269         units/graphical.target \
270         units/multi-user.target \
271         units/emergency.service \
272         units/emergency.target \
273         units/sysinit.target \
274         units/basic.target \
275         units/getty.target \
276         units/halt.target \
277         units/kexec.target \
278         units/local-fs.target \
279         units/local-fs-pre.target \
280         units/remote-fs.target \
281         units/remote-fs-pre.target \
282         units/cryptsetup.target \
283         units/network.target \
284         units/nss-lookup.target \
285         units/mail-transfer-agent.target \
286         units/http-daemon.target \
287         units/poweroff.target \
288         units/reboot.target \
289         units/rescue.target \
290         units/rpcbind.target \
291         units/time-sync.target \
292         units/shutdown.target \
293         units/final.target \
294         units/umount.target \
295         units/sigpwr.target \
296         units/sockets.target \
297         units/swap.target \
298         units/systemd-initctl.socket \
299         units/systemd-stdout-syslog-bridge.socket \
300         units/systemd-shutdownd.socket \
301         units/syslog.socket \
302         units/dev-hugepages.mount \
303         units/dev-mqueue.mount \
304         units/sys-kernel-config.mount \
305         units/sys-kernel-debug.mount \
306         units/sys-kernel-security.mount \
307         units/sys-fs-fuse-connections.mount \
308         units/var-run.mount \
309         units/media.mount \
310         units/remount-rootfs.service \
311         units/printer.target \
312         units/sound.target \
313         units/bluetooth.target \
314         units/smartcard.target \
315         units/systemd-tmpfiles-clean.timer \
316         units/quotaon.service \
317         units/systemd-ask-password-wall.path \
318         units/systemd-ask-password-console.path \
319         units/syslog.target
320
321 if HAVE_SYSV_COMPAT
322 dist_systemunit_DATA += \
323         units/var-lock.mount
324 endif
325
326 nodist_systemunit_DATA = \
327         units/getty@.service \
328         units/serial-getty@.service \
329         units/console-shell.service \
330         units/systemd-initctl.service \
331         units/systemd-stdout-syslog-bridge.service \
332         units/systemd-shutdownd.service \
333         units/systemd-kmsg-syslogd.service \
334         units/systemd-modules-load.service \
335         units/systemd-remount-api-vfs.service \
336         units/systemd-update-utmp-runlevel.service \
337         units/systemd-update-utmp-shutdown.service \
338         units/systemd-random-seed-save.service \
339         units/systemd-random-seed-load.service \
340         units/systemd-tmpfiles-setup.service \
341         units/systemd-tmpfiles-clean.service \
342         units/systemd-user-sessions.service \
343         units/systemd-ask-password-wall.service \
344         units/systemd-ask-password-console.service \
345         units/systemd-sysctl.service \
346         units/halt.service \
347         units/poweroff.service \
348         units/reboot.service \
349         units/kexec.service \
350         units/fsck@.service \
351         units/fsck-root.service \
352         units/quotacheck.service \
353         units/rescue.service \
354         units/user@.service
355
356 dist_userunit_DATA = \
357         units/user/default.target \
358         units/user/exit.target
359
360 nodist_userunit_DATA = \
361         units/user/exit.service
362
363 EXTRA_DIST += \
364         units/getty@.service.m4 \
365         units/serial-getty@.service.m4 \
366         units/console-shell.service.m4 \
367         units/rescue.service.m4 \
368         units/systemd-initctl.service.in \
369         units/systemd-stdout-syslog-bridge.service.in \
370         units/systemd-shutdownd.service.in \
371         units/systemd-kmsg-syslogd.service.in \
372         units/systemd-modules-load.service.in \
373         units/systemd-remount-api-vfs.service.in \
374         units/systemd-update-utmp-runlevel.service.in \
375         units/systemd-update-utmp-shutdown.service.in \
376         units/systemd-random-seed-save.service.in \
377         units/systemd-random-seed-load.service.in \
378         units/systemd-tmpfiles-setup.service.in \
379         units/systemd-tmpfiles-clean.service.in \
380         units/systemd-user-sessions.service.in \
381         units/systemd-ask-password-wall.service.in \
382         units/systemd-ask-password-console.service.in \
383         units/systemd-sysctl.service.in \
384         units/halt.service.in \
385         units/poweroff.service.in \
386         units/reboot.service.in \
387         units/kexec.service.in \
388         units/user/exit.service.in \
389         units/fsck@.service.in \
390         units/fsck-root.service.in \
391         units/quotacheck.service.in \
392         units/user@.service.in \
393         systemd.pc.in \
394         introspect.awk \
395         src/73-seat-late.rules.in \
396         src/99-systemd.rules.in \
397         man/custom-html.xsl
398
399 if TARGET_FEDORA
400 dist_systemunit_DATA += \
401         units/fedora/prefdm.service \
402         units/fedora/rc-local.service \
403         units/fedora/halt-local.service
404 systemgenerator_PROGRAMS += \
405         systemd-rc-local-generator
406 endif
407
408 if TARGET_MANDRIVA
409 dist_systemunit_DATA += \
410         units/mandriva/prefdm.service \
411         units/fedora/rc-local.service \
412         units/fedora/halt-local.service
413 systemgenerator_PROGRAMS += \
414         systemd-rc-local-generator
415 endif
416
417 if TARGET_FRUGALWARE
418 dist_systemunit_DATA += \
419         units/frugalware/display-manager.service
420 endif
421
422 if TARGET_SUSE
423 dist_systemunit_DATA += \
424         units/suse/rc-local.service \
425         units/suse/halt-local.service
426 systemgenerator_PROGRAMS += \
427         systemd-rc-local-generator
428 endif
429
430 if TARGET_MAGEIA
431 dist_systemunit_DATA += \
432         units/mageia/prefdm.service \
433         units/fedora/rc-local.service \
434         units/fedora/halt-local.service
435 systemgenerator_PROGRAMS += \
436         systemd-rc-local-generator
437 endif
438
439 if HAVE_PLYMOUTH
440 dist_systemunit_DATA += \
441         units/plymouth-start.service \
442         units/plymouth-read-write.service \
443         units/plymouth-quit.service \
444         units/plymouth-quit-wait.service \
445         units/plymouth-reboot.service \
446         units/plymouth-kexec.service \
447         units/plymouth-poweroff.service \
448         units/plymouth-halt.service \
449         units/systemd-ask-password-plymouth.path
450
451 nodist_systemunit_DATA += \
452         units/systemd-ask-password-plymouth.service
453
454 EXTRA_DIST += \
455         units/systemd-ask-password-plymouth.service.in
456 endif
457
458 dist_doc_DATA = \
459         README \
460         LICENSE \
461         DISTRO_PORTING
462
463 pkgconfigdata_DATA = \
464         systemd.pc
465
466 # First passed through sed, followed by intltool
467 polkitpolicy_in_in_files = \
468         src/org.freedesktop.systemd1.policy.in.in
469
470 nodist_polkitpolicy_DATA = \
471         $(polkitpolicy_in_files:.policy.in=.policy) \
472         $(polkitpolicy_in_in_files:.policy.in.in=.policy)
473
474 EXTRA_DIST += \
475         $(polkitpolicy_in_files) \
476         $(polkitpolicy_in_in_files)
477
478 @INTLTOOL_POLICY_RULE@
479
480 noinst_LTLIBRARIES = \
481         libsystemd-basic.la \
482         libsystemd-core.la
483
484 libsystemd_basic_la_SOURCES = \
485         src/util.c \
486         src/virt.c \
487         src/label.c \
488         src/hashmap.c \
489         src/set.c \
490         src/strv.c \
491         src/conf-parser.c \
492         src/socket-util.c \
493         src/log.c \
494         src/ratelimit.c \
495         src/exit-status.c
496
497 libsystemd_basic_la_CFLAGS = \
498         $(AM_CFLAGS) \
499         $(SELINUX_CFLAGS)
500
501 libsystemd_basic_la_LIBADD = \
502         $(SELINUX_LIBS) \
503         $(CAP_LIBS)
504
505 libsystemd_core_la_SOURCES = \
506         src/unit.c \
507         src/job.c \
508         src/manager.c \
509         src/path-lookup.c \
510         src/load-fragment.c \
511         src/service.c \
512         src/automount.c \
513         src/mount.c \
514         src/swap.c \
515         src/device.c \
516         src/target.c \
517         src/snapshot.c \
518         src/socket.c \
519         src/timer.c \
520         src/path.c \
521         src/load-dropin.c \
522         src/execute.c \
523         src/utmp-wtmp.c \
524         src/dbus.c \
525         src/dbus-manager.c \
526         src/dbus-unit.c \
527         src/dbus-job.c \
528         src/dbus-service.c \
529         src/dbus-socket.c \
530         src/dbus-timer.c \
531         src/dbus-target.c \
532         src/dbus-mount.c \
533         src/dbus-automount.c \
534         src/dbus-swap.c \
535         src/dbus-snapshot.c \
536         src/dbus-device.c \
537         src/dbus-execute.c \
538         src/dbus-path.c \
539         src/cgroup.c \
540         src/mount-setup.c \
541         src/hostname-setup.c \
542         src/selinux-setup.c \
543         src/loopback-setup.c \
544         src/kmod-setup.c \
545         src/locale-setup.c \
546         src/machine-id-setup.c \
547         src/specifier.c \
548         src/unit-name.c \
549         src/fdset.c \
550         src/namespace.c \
551         src/tcpwrap.c \
552         src/cgroup-util.c \
553         src/condition.c \
554         src/dbus-common.c \
555         src/sd-daemon.c \
556         src/install.c \
557         src/cgroup-attr.c \
558         src/sd-id128.c
559
560 nodist_libsystemd_core_la_SOURCES = \
561         src/load-fragment-gperf.c \
562         src/load-fragment-gperf-nulstr.c
563
564 EXTRA_DIST += \
565         src/load-fragment-gperf.gperf.m4
566
567 libsystemd_core_la_CFLAGS = \
568         $(AM_CFLAGS) \
569         $(DBUS_CFLAGS) \
570         $(UDEV_CFLAGS) \
571         $(LIBWRAP_CFLAGS) \
572         $(PAM_CFLAGS) \
573         $(AUDIT_CFLAGS)
574
575 libsystemd_core_la_LIBADD = \
576         libsystemd-basic.la \
577         $(DBUS_LIBS) \
578         $(UDEV_LIBS) \
579         $(LIBWRAP_LIBS) \
580         $(PAM_LIBS) \
581         $(AUDIT_LIBS) \
582         $(CAP_LIBS)
583
584 # This is needed because automake is buggy in how it generates the
585 # rules for C programs, but not Vala programs.  We therefore can't
586 # list the .h files as dependencies if we want make dist to work.
587
588 EXTRA_DIST += \
589         ${libsystemd_basic_la_SOURCES:.c=.h} \
590         ${libsystemd_core_la_SOURCES:.c=.h} \
591         src/macro.h \
592         src/def.h \
593         src/ioprio.h \
594         src/missing.h \
595         src/list.h \
596         src/securebits.h \
597         src/linux/auto_dev-ioctl.h \
598         src/linux/fanotify.h \
599         src/initreq.h \
600         src/special.h \
601         src/dbus-common.h \
602         src/bus-errors.h \
603         src/cgroup-show.h \
604         src/build.h \
605         src/shutdownd.h \
606         src/umount.h \
607         src/ask-password-api.h \
608         src/pager.h \
609         src/sysfs-show.h \
610         src/polkit.h \
611         src/dbus-loop.h \
612         src/spawn-agent.h \
613         src/acl-util.h
614
615 MANPAGES = \
616         man/systemd.1 \
617         man/systemctl.1 \
618         man/systemadm.1 \
619         man/systemd-cgls.1 \
620         man/systemd-nspawn.1 \
621         man/systemd-tmpfiles.8 \
622         man/systemd-notify.1 \
623         man/systemd.unit.5 \
624         man/systemd.service.5 \
625         man/systemd.socket.5 \
626         man/systemd.mount.5 \
627         man/systemd.automount.5 \
628         man/systemd.swap.5 \
629         man/systemd.timer.5 \
630         man/systemd.path.5 \
631         man/systemd.target.5 \
632         man/systemd.device.5 \
633         man/systemd.snapshot.5 \
634         man/systemd.exec.5 \
635         man/daemon.7 \
636         man/runlevel.8 \
637         man/telinit.8 \
638         man/halt.8 \
639         man/shutdown.8 \
640         man/pam_systemd.8 \
641         man/systemd.conf.5 \
642         man/tmpfiles.d.5 \
643         man/hostname.5 \
644         man/timezone.5 \
645         man/machine-id.5 \
646         man/locale.conf.5 \
647         man/os-release.5 \
648         man/machine-info.5 \
649         man/modules-load.d.5 \
650         man/sysctl.d.5 \
651         man/systemd-ask-password.1
652
653 MANPAGES_ALIAS = \
654         man/reboot.8 \
655         man/poweroff.8 \
656         man/init.1
657
658 man/reboot.8: man/halt.8
659 man/poweroff.8: man/halt.8
660 man/init.1: man/systemd.1
661
662 dist_man_MANS = \
663         $(MANPAGES) \
664         $(MANPAGES_ALIAS)
665
666 nodist_man_MANS = \
667         man/systemd.special.7
668
669 XML_FILES = \
670         ${patsubst %.1,%.xml,${patsubst %.3,%.xml,${patsubst %.5,%.xml,${patsubst %.7,%.xml,${patsubst %.8,%.xml,$(MANPAGES)}}}}}
671
672 XML_IN_FILES = \
673         ${patsubst %.1,%.xml.in,${patsubst %.3,%.xml.in,${patsubst %.5,%.xml.in,${patsubst %.7,%.xml.in,${patsubst %.8,%.xml.in,$(nodist_man_MANS)}}}}}
674
675 dist_noinst_DATA = \
676         ${XML_FILES:.xml=.html}
677
678 nodist_noinst_DATA = \
679         ${XML_IN_FILES:.xml.in=.html}
680
681 EXTRA_DIST += \
682         $(XML_FILES) \
683         $(XML_IN_FILES) \
684         ${nodist_man_MANS:=.in} \
685         ${XML_IN_FILES:.xml.in=.html.in}
686
687 systemd_SOURCES = \
688         src/main.c
689
690 systemd_CFLAGS = \
691         $(AM_CFLAGS) \
692         $(DBUS_CFLAGS) \
693         $(UDEV_CFLAGS)
694
695 systemd_LDADD = \
696         libsystemd-core.la
697
698 test_engine_SOURCES = \
699         src/test-engine.c
700
701 test_engine_CFLAGS = $(systemd_CFLAGS)
702 test_engine_LDADD = $(systemd_LDADD)
703
704 test_job_type_SOURCES = \
705         src/test-job-type.c
706
707 test_job_type_CFLAGS = $(systemd_CFLAGS)
708 test_job_type_LDADD = $(systemd_LDADD)
709
710 test_ns_SOURCES = \
711         src/test-ns.c
712
713 test_ns_CFLAGS = $(systemd_CFLAGS)
714 test_ns_LDADD = $(systemd_LDADD)
715
716 test_loopback_SOURCES = \
717         src/test-loopback.c \
718         src/loopback-setup.c
719
720 test_loopback_LDADD = \
721         libsystemd-basic.la
722
723 test_hostname_SOURCES = \
724         src/test-hostname.c \
725         src/hostname-setup.c
726
727 test_hostname_LDADD = \
728         libsystemd-basic.la
729
730 test_daemon_SOURCES = \
731         src/test-daemon.c
732
733 test_daemon_LDADD = \
734         libsystemd-basic.la \
735         libsystemd-daemon.la
736
737 test_cgroup_SOURCES = \
738         src/test-cgroup.c \
739         src/cgroup-util.c
740
741 test_cgroup_LDADD = \
742         libsystemd-basic.la
743
744 test_env_replace_SOURCES = \
745         src/test-env-replace.c
746
747 test_env_replace_LDADD = \
748         libsystemd-basic.la
749
750 test_strv_SOURCES = \
751         src/test-strv.c \
752         src/specifier.c
753
754 test_strv_LDADD = \
755         libsystemd-basic.la
756
757 test_install_SOURCES = \
758         src/test-install.c \
759         src/install.c \
760         src/path-lookup.c \
761         src/unit-name.c
762
763 test_install_CFLAGS = \
764         $(AM_CFLAGS) \
765         $(DBUS_CFLAGS)
766
767 test_install_LDADD = \
768         libsystemd-basic.la
769
770 systemd_stdout_syslog_bridge_SOURCES = \
771         src/stdout-syslog-bridge.c \
772         src/tcpwrap.c
773
774 systemd_stdout_syslog_bridge_LDADD = \
775         libsystemd-basic.la \
776         libsystemd-daemon.la \
777         $(LIBWRAP_LIBS)
778
779 systemd_initctl_SOURCES = \
780         src/initctl.c \
781         src/dbus-common.c
782
783 systemd_initctl_CFLAGS = \
784         $(AM_CFLAGS) \
785         $(DBUS_CFLAGS)
786
787 systemd_initctl_LDADD = \
788         libsystemd-basic.la \
789         libsystemd-daemon.la \
790         $(DBUS_LIBS)
791
792 systemd_update_utmp_SOURCES = \
793         src/update-utmp.c \
794         src/dbus-common.c \
795         src/utmp-wtmp.c
796
797 systemd_update_utmp_CFLAGS = \
798         $(AM_CFLAGS) \
799         $(DBUS_CFLAGS) \
800         $(AUDIT_CFLAGS)
801
802 systemd_update_utmp_LDADD = \
803         libsystemd-basic.la \
804         $(DBUS_LIBS) \
805         $(AUDIT_LIBS)
806
807 systemd_random_seed_SOURCES = \
808         src/random-seed.c
809
810 systemd_random_seed_LDADD = \
811         libsystemd-basic.la
812
813 systemd_shutdownd_SOURCES = \
814         src/utmp-wtmp.c \
815         src/shutdownd.c
816
817 systemd_shutdownd_CFLAGS = \
818         $(AM_CFLAGS)
819
820 systemd_shutdownd_LDADD = \
821         libsystemd-basic.la \
822         libsystemd-daemon.la
823
824 dist_pkgdata_DATA = \
825         src/kbd-model-map
826
827 dist_noinst_SCRIPT = \
828         src/generate-kbd-model-map
829
830 systemd_shutdown_SOURCES = \
831         src/mount-setup.c \
832         src/umount.c \
833         src/shutdown.c
834
835 systemd_shutdown_CFLAGS = \
836         $(AM_CFLAGS) \
837         $(UDEV_CFLAGS)
838
839 systemd_shutdown_LDADD = \
840         libsystemd-basic.la \
841         $(UDEV_LIBS)
842
843 systemd_modules_load_SOURCES = \
844         src/modules-load.c
845
846 systemd_modules_load_LDADD = \
847         libsystemd-basic.la
848
849 systemd_tmpfiles_SOURCES = \
850         src/tmpfiles.c
851
852 systemd_tmpfiles_LDADD = \
853         libsystemd-basic.la
854
855 systemd_machine_id_setup_SOURCES = \
856         src/machine-id-setup.c \
857         src/machine-id-main.c \
858         src/sd-id128.c
859
860 systemd_machine_id_setup_LDADD = \
861         libsystemd-basic.la
862
863 systemd_sysctl_SOURCES = \
864         src/sysctl.c
865
866 systemd_sysctl_LDADD = \
867         libsystemd-basic.la
868
869 systemd_fsck_SOURCES = \
870         src/fsck.c \
871         src/dbus-common.c
872
873 systemd_fsck_CFLAGS = \
874         $(AM_CFLAGS) \
875         $(UDEV_CFLAGS) \
876         $(DBUS_CFLAGS)
877
878 systemd_fsck_LDADD = \
879         libsystemd-basic.la \
880         $(UDEV_LIBS) \
881         $(DBUS_LIBS)
882
883 systemd_quotacheck_SOURCES = \
884         src/quotacheck.c
885
886 systemd_quotacheck_LDADD = \
887         libsystemd-basic.la
888
889 systemd_timestamp_SOURCES = \
890         src/timestamp.c
891
892 systemd_timestamp_LDADD = \
893         libsystemd-basic.la
894
895 systemd_ac_power_SOURCES = \
896         src/ac-power.c
897
898 systemd_ac_power_CFLAGS = \
899         $(AM_CFLAGS) \
900         $(UDEV_CFLAGS)
901
902 systemd_ac_power_LDADD = \
903         libsystemd-basic.la \
904         $(UDEV_LIBS)
905
906 systemd_detect_virt_SOURCES = \
907         src/detect-virt.c
908
909 systemd_detect_virt_LDADD = \
910         libsystemd-basic.la
911
912 systemd_cryptsetup_SOURCES = \
913         src/cryptsetup.c \
914         src/ask-password-api.c
915
916 systemd_cryptsetup_CFLAGS = \
917         $(AM_CFLAGS) \
918         $(LIBCRYPTSETUP_CFLAGS) \
919         $(UDEV_CFLAGS)
920
921 systemd_cryptsetup_LDADD = \
922         $(LIBCRYPTSETUP_LIBS) \
923         $(UDEV_LIBS) \
924         libsystemd-basic.la
925
926 systemd_cryptsetup_generator_SOURCES = \
927         src/cryptsetup-generator.c \
928         src/unit-name.c
929
930 systemd_cryptsetup_generator_LDADD = \
931         libsystemd-basic.la
932
933 systemd_getty_generator_SOURCES = \
934         src/getty-generator.c \
935         src/unit-name.c
936
937 systemd_getty_generator_LDADD = \
938         libsystemd-basic.la
939
940 systemd_rc_local_generator_SOURCES = \
941         src/rc-local-generator.c
942
943 systemd_rc_local_generator_LDADD = \
944         libsystemd-basic.la
945
946 systemd_user_sessions_SOURCES = \
947         src/user-sessions.c \
948         src/cgroup-util.c
949
950 systemd_user_sessions_LDADD = \
951         libsystemd-basic.la
952
953 systemd_remount_api_vfs_SOURCES = \
954         src/remount-api-vfs.c \
955         src/mount-setup.c \
956         src/exit-status.c
957
958 systemd_remount_api_vfs_LDADD = \
959         libsystemd-basic.la
960
961 systemd_cgroups_agent_SOURCES = \
962         src/cgroups-agent.c \
963         src/dbus-common.c
964
965 systemd_cgroups_agent_CFLAGS = \
966         $(AM_CFLAGS) \
967         $(DBUS_CFLAGS)
968
969 systemd_cgroups_agent_LDADD = \
970         libsystemd-basic.la \
971         $(DBUS_LIBS)
972
973 systemd_kmsg_syslogd_SOURCES = \
974         src/kmsg-syslogd.c \
975         src/fdset.c
976
977 systemd_kmsg_syslogd_LDADD = \
978         libsystemd-basic.la \
979         libsystemd-daemon.la
980
981 systemctl_SOURCES = \
982         src/systemctl.c \
983         src/utmp-wtmp.c \
984         src/dbus-common.c \
985         src/path-lookup.c \
986         src/cgroup-show.c \
987         src/cgroup-util.c \
988         src/exit-status.c \
989         src/unit-name.c \
990         src/pager.c \
991         src/install.c \
992         src/spawn-agent.c
993
994 systemctl_CFLAGS = \
995         $(AM_CFLAGS) \
996         $(DBUS_CFLAGS)
997
998 systemctl_LDADD = \
999         libsystemd-basic.la \
1000         libsystemd-daemon.la \
1001         $(DBUS_LIBS)
1002
1003 systemd_notify_SOURCES = \
1004         src/notify.c \
1005         src/readahead/sd-readahead.c
1006
1007 systemd_notify_LDADD = \
1008         libsystemd-basic.la \
1009         libsystemd-daemon.la
1010
1011 systemd_ask_password_SOURCES = \
1012         src/ask-password.c \
1013         src/ask-password-api.c
1014
1015 systemd_ask_password_LDADD = \
1016         libsystemd-basic.la
1017
1018 systemd_reply_password_SOURCES = \
1019         src/reply-password.c
1020
1021 systemd_reply_password_LDADD = \
1022         libsystemd-basic.la
1023
1024 systemd_cgls_SOURCES = \
1025         src/cgls.c \
1026         src/cgroup-show.c \
1027         src/cgroup-util.c \
1028         src/pager.c
1029
1030 systemd_cgls_LDADD = \
1031         libsystemd-basic.la
1032
1033 systemd_nspawn_SOURCES = \
1034         src/nspawn.c \
1035         src/cgroup-util.c \
1036         src/loopback-setup.c
1037
1038 systemd_nspawn_LDADD = \
1039         libsystemd-basic.la \
1040         libsystemd-daemon.la
1041
1042 systemd_stdio_bridge_SOURCES = \
1043         src/bridge.c
1044
1045 systemd_stdio_bridge_LDADD = \
1046         libsystemd-basic.la
1047
1048 systemadm_SOURCES = \
1049         src/systemadm.vala \
1050         src/systemd-interfaces.vala \
1051         src/wraplabel.vala
1052
1053 systemadm_CFLAGS = \
1054         $(AM_CFLAGS) \
1055         $(GTK_CFLAGS) \
1056         -Wno-unused-variable \
1057         -Wno-unused-function \
1058         -Wno-shadow \
1059         -Wno-format-nonliteral
1060
1061 systemadm_VALAFLAGS = \
1062         --pkg=posix \
1063         --pkg=gtk+-2.0 \
1064         --pkg=gee-1.0 \
1065         -g
1066
1067 systemadm_LDADD = \
1068         $(GTK_LIBS)
1069
1070 systemd_gnome_ask_password_agent_SOURCES = \
1071         src/gnome-ask-password-agent.vala
1072
1073 systemd_gnome_ask_password_agent_CFLAGS = \
1074         $(AM_CFLAGS) \
1075         $(LIBNOTIFY_CFLAGS) \
1076         $(GTK_CFLAGS) \
1077         -Wno-unused-variable \
1078         -Wno-unused-function \
1079         -Wno-shadow \
1080         -Wno-format-nonliteral
1081
1082 systemd_gnome_ask_password_agent_VALAFLAGS = \
1083         --pkg=posix \
1084         --pkg=gtk+-2.0 \
1085         --pkg=linux \
1086         --pkg=gio-unix-2.0 \
1087         --pkg=libnotify \
1088         -g
1089
1090 systemd_gnome_ask_password_agent_LDADD = \
1091         $(LIBNOTIFY_LIBS) \
1092         $(GTK_LIBS)
1093
1094 systemd_tty_ask_password_agent_SOURCES = \
1095         src/tty-ask-password-agent.c \
1096         src/ask-password-api.c \
1097         src/utmp-wtmp.c
1098
1099 systemd_tty_ask_password_agent_LDADD = \
1100         libsystemd-basic.la
1101
1102 # ------------------------------------------------------------------------------
1103 libsystemd_daemon_la_SOURCES = \
1104         src/sd-daemon.c
1105
1106 libsystemd_daemon_la_CFLAGS = \
1107         $(AM_CFLAGS) \
1108         -fvisibility=hidden \
1109         -DSD_EXPORT_SYMBOLS
1110
1111 libsystemd_daemon_la_LDFLAGS = \
1112         -shared \
1113         -version-info $(LIBSYSTEMD_DAEMON_CURRENT):$(LIBSYSTEMD_DAEMON_REVISION):$(LIBSYSTEMD_DAEMON_AGE) \
1114         -Wl,--version-script=$(top_srcdir)/src/libsystemd-daemon.sym
1115
1116 pkginclude_HEADERS += \
1117         src/sd-daemon.h
1118
1119 # move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
1120 libsystemd-daemon-install-hook:
1121         if test "$(libdir)" != "$(rootlibdir)"; then \
1122                 mkdir -p $(DESTDIR)$(rootlibdir) && \
1123                 so_img_name=$$(readlink $(DESTDIR)$(libdir)/libsystemd-daemon.so) && \
1124                 so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
1125                 ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libsystemd-daemon.so && \
1126                 mv $(DESTDIR)$(libdir)/libsystemd-daemon.so.* $(DESTDIR)$(rootlibdir); \
1127         fi
1128
1129 INSTALL_EXEC_HOOKS += \
1130         libsystemd-daemon-install-hook
1131
1132 libsystemd-daemon-uninstall-hook:
1133         rm -f $(DESTDIR)$(rootlibdir)/libsystemd-daemon.so*
1134
1135 UNINSTALL_EXEC_HOOKS += \
1136         libsystemd-daemon-uninstall-hook
1137
1138 lib_LTLIBRARIES += \
1139         libsystemd-daemon.la
1140
1141 pkgconfiglib_DATA += \
1142         libsystemd-daemon.pc
1143
1144 dist_doc_DATA += \
1145         src/sd-daemon.h \
1146         src/sd-daemon.c
1147
1148 MANPAGES += \
1149         man/sd-daemon.7 \
1150         man/sd_notify.3 \
1151         man/sd_listen_fds.3 \
1152         man/sd_is_fifo.3 \
1153         man/sd_booted.3
1154
1155 MANPAGES_ALIAS += \
1156         man/sd_is_socket.3 \
1157         man/sd_is_socket_unix.3 \
1158         man/sd_is_socket_inet.3 \
1159         man/sd_is_mq.3 \
1160         man/sd_notifyf.3
1161
1162 man/sd_is_socket.3: man/sd_is_fifo.3
1163 man/sd_is_socket_unix.3: man/sd_is_fifo.3
1164 man/sd_is_socket_inet.3: man/sd_is_fifo.3
1165 man/sd_is_mq.3: man/sd_is_fifo.3
1166 man/sd_notifyf.3: man/sd_notify.3
1167
1168 EXTRA_DIST += \
1169         ${libsystemd_daemon_la_SOURCES:.c=.h} \
1170         libsystemd-daemon.pc.in \
1171         src/libsystemd-daemon.sym
1172
1173 # ------------------------------------------------------------------------------
1174 libsystemd_id128_la_SOURCES = \
1175         src/sd-id128.c
1176
1177 libsystemd_id128_la_CFLAGS = \
1178         $(AM_CFLAGS) \
1179         -fvisibility=hidden
1180
1181 libsystemd_id128_la_LDFLAGS = \
1182         -shared \
1183         -version-info $(LIBSYSTEMD_ID128_CURRENT):$(LIBSYSTEMD_ID128_REVISION):$(LIBSYSTEMD_ID128_AGE) \
1184         -Wl,--version-script=$(top_srcdir)/src/libsystemd-id128.sym
1185
1186 libsystemd_id128_la_LIBADD = \
1187         libsystemd-basic.la
1188
1189 test_id128_SOURCES = \
1190         src/test-id128.c \
1191         src/sd-id128.c
1192
1193 test_id128_LDADD = \
1194         libsystemd-basic.la
1195
1196 noinst_PROGRAMS += \
1197         test-id128
1198
1199 pkginclude_HEADERS += \
1200         src/sd-id128.h
1201
1202 lib_LTLIBRARIES += \
1203         libsystemd-id128.la
1204
1205 pkgconfiglib_DATA += \
1206         libsystemd-id128.pc
1207
1208 # move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
1209 libsystemd-id128-install-hook:
1210         if test "$(libdir)" != "$(rootlibdir)"; then \
1211                 mkdir -p $(DESTDIR)$(rootlibdir) && \
1212                 so_img_name=$$(readlink $(DESTDIR)$(libdir)/libsystemd-id128.so) && \
1213                 so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
1214                 ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libsystemd-id128.so && \
1215                 mv $(DESTDIR)$(libdir)/libsystemd-id128.so.* $(DESTDIR)$(rootlibdir); \
1216         fi
1217
1218 INSTALL_EXEC_HOOKS += \
1219         libsystemd-id128-install-hook
1220
1221 libsystemd-id128-uninstall-hook:
1222         rm -f $(DESTDIR)$(rootlibdir)/libsystemd-id128.so*
1223
1224 UNINSTALL_EXEC_HOOKS += \
1225         libsystemd-id128-uninstall-hook
1226
1227 EXTRA_DIST += \
1228         libsystemd-id128.pc.in \
1229         src/libsystemd-id128.sym
1230
1231 # ------------------------------------------------------------------------------
1232 systemd_journald_SOURCES = \
1233         src/journal/journald.c \
1234         src/journal/sd-journal.c \
1235         src/journal/journal-file.c \
1236         src/journal/lookup3.c \
1237         src/journal/journal-rate-limit.c \
1238         src/sd-id128.c \
1239         src/acl-util.c \
1240         src/cgroup-util.c
1241
1242 systemd_journald_CFLAGS = \
1243         $(AM_CFLAGS) \
1244         $(ACL_CFLAGS)
1245
1246 systemd_journald_LDADD = \
1247         libsystemd-basic.la \
1248         libsystemd-daemon.la \
1249         $(ACL_LIBS)
1250
1251 if HAVE_XZ
1252 systemd_journald_SOURCES += \
1253         src/journal/compress.c
1254 systemd_journald_CFLAGS += \
1255         $(XZ_CFLAGS)
1256 systemd_journald_LDADD += \
1257         $(XZ_LIBS)
1258 endif
1259
1260 systemd_journalctl_SOURCES = \
1261         src/journal/journalctl.c \
1262         src/journal/sd-journal.c \
1263         src/journal/journal-file.c \
1264         src/journal/lookup3.c \
1265         src/sd-id128.c \
1266         src/pager.c
1267
1268 systemd_journalctl_LDADD = \
1269         libsystemd-basic.la
1270
1271 if HAVE_XZ
1272 systemd_journalctl_SOURCES += \
1273         src/journal/compress.c
1274 systemd_journalctl_CFLAGS = \
1275         $(XZ_CFLAGS)
1276 systemd_journalctl_LDADD += \
1277         $(XZ_LIBS)
1278 endif
1279
1280 test_journal_SOURCES = \
1281         src/journal/test-journal.c \
1282         src/journal/sd-journal.c \
1283         src/journal/journal-file.c \
1284         src/journal/lookup3.c \
1285         src/journal/journal-send.c \
1286         src/sd-id128.c
1287
1288 test_journal_LDADD = \
1289         libsystemd-basic.la
1290
1291 if HAVE_XZ
1292 test_journal_SOURCES += \
1293         src/journal/compress.c
1294
1295 test_journal_CFLAGS = \
1296         $(XZ_CFLAGS)
1297
1298 test_journal_LDADD += \
1299         $(XZ_LIBS)
1300 endif
1301
1302 libsystemd_journal_la_SOURCES = \
1303         src/journal/sd-journal.c \
1304         src/journal/journal-file.c \
1305         src/journal/compress.c \
1306         src/journal/lookup3.c \
1307         src/journal/journal-send.c
1308
1309 libsystemd_journal_la_CFLAGS = \
1310         $(AM_CFLAGS) \
1311         $(XZ_CFLAGS) \
1312         -fvisibility=hidden
1313
1314 libsystemd_journal_la_LDFLAGS = \
1315         -shared \
1316         -version-info $(LIBSYSTEMD_JOURNAL_CURRENT):$(LIBSYSTEMD_JOURNAL_REVISION):$(LIBSYSTEMD_JOURNAL_AGE) \
1317         -Wl,--version-script=$(top_srcdir)/src/journal/libsystemd-journal.sym
1318
1319 libsystemd_journal_la_LIBADD = \
1320         libsystemd-basic.la \
1321         libsystemd-id128.la \
1322         $(XZ_LIBS)
1323
1324 # move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
1325 libsystemd-journal-install-hook:
1326         if test "$(libdir)" != "$(rootlibdir)"; then \
1327                 mkdir -p $(DESTDIR)$(rootlibdir) && \
1328                 so_img_name=$$(readlink $(DESTDIR)$(libdir)/libsystemd-journal.so) && \
1329                 so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
1330                 ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libsystemd-journal.so && \
1331                 mv $(DESTDIR)$(libdir)/libsystemd-journal.so.* $(DESTDIR)$(rootlibdir); \
1332         fi
1333
1334 INSTALL_EXEC_HOOKS += \
1335         libsystemd-journal-install-hook
1336
1337 libsystemd-journal-uninstall-hook:
1338         rm -f $(DESTDIR)$(rootlibdir)/libsystemd-journal.so*
1339
1340 UNINSTALL_EXEC_HOOKS += \
1341         libsystemd-journal-uninstall-hook
1342
1343 noinst_PROGRAMS += \
1344         test-journal
1345
1346 pkginclude_HEADERS += \
1347         src/journal/sd-journal.h
1348
1349 lib_LTLIBRARIES += \
1350         libsystemd-journal.la
1351
1352 rootlibexec_PROGRAMS += \
1353         systemd-journald
1354
1355 rootbin_PROGRAMS += \
1356         systemd-journalctl
1357
1358 dist_systemunit_DATA += \
1359         units/systemd-journald.socket
1360
1361 nodist_systemunit_DATA += \
1362         units/systemd-journald.service
1363
1364 pkgconfiglib_DATA += \
1365         src/journal/libsystemd-journal.pc
1366
1367 journal-install-data-hook:
1368         ( cd $(DESTDIR)$(systemunitdir)/sockets.target.wants && \
1369                 rm -f systemd-journald.socket && \
1370                 $(LN_S) ../systemd-journald.socket )
1371
1372 INSTALL_DATA_HOOKS += \
1373         journal-install-data-hook
1374
1375 EXTRA_DIST += \
1376         src/journal/journal-def.h \
1377         src/journal/journal-internal.h \
1378         src/journal/journal-file.h \
1379         src/journal/lookup3.h \
1380         src/journal/compress.h \
1381         src/journal/journal-rate-limit.h \
1382         src/journal/libsystemd-journal.pc.in \
1383         src/journal/libsystemd-journal.sym \
1384         units/systemd-journald.service.in
1385
1386 # ------------------------------------------------------------------------------
1387 if ENABLE_BINFMT
1388 systemd_binfmt_SOURCES = \
1389         src/binfmt/binfmt.c
1390
1391 systemd_binfmt_LDADD = \
1392         libsystemd-basic.la
1393
1394 rootlibexec_PROGRAMS += \
1395         systemd-binfmt
1396
1397 dist_systemunit_DATA += \
1398         units/proc-sys-fs-binfmt_misc.automount \
1399         units/proc-sys-fs-binfmt_misc.mount
1400
1401 nodist_systemunit_DATA += \
1402         units/systemd-binfmt.service
1403
1404 binfmt-install-data-hook:
1405         $(MKDIR_P) -m 0755 \
1406                 $(DESTDIR)$(prefix)/lib/binfmt.d \
1407                 $(DESTDIR)$(sysconfdir)/binfmt.d
1408         ( cd $(DESTDIR)$(systemunitdir)/sysinit.target.wants && \
1409                 rm -f systemd-binfmt.service \
1410                         proc-sys-fs-binfmt_misc.automount && \
1411                 $(LN_S) ../systemd-binfmt.service systemd-binfmt.service && \
1412                 $(LN_S) ../proc-sys-fs-binfmt_misc.automount proc-sys-fs-binfmt_misc.automount )
1413
1414 INSTALL_DATA_HOOKS += \
1415         binfmt-install-data-hook
1416
1417 MANPAGES += \
1418         man/binfmt.d.5
1419
1420 EXTRA_DIST += \
1421         units/systemd-binfmt.service.in
1422 endif
1423
1424 # ------------------------------------------------------------------------------
1425 if ENABLE_VCONSOLE
1426 systemd_vconsole_setup_SOURCES = \
1427         src/vconsole/vconsole-setup.c
1428
1429 systemd_vconsole_setup_LDADD = \
1430         libsystemd-basic.la
1431
1432 rootlibexec_PROGRAMS += \
1433         systemd-vconsole-setup
1434
1435 nodist_systemunit_DATA += \
1436         units/systemd-vconsole-setup.service
1437
1438 vconsole-install-data-hook:
1439         ( cd $(DESTDIR)$(systemunitdir)/sysinit.target.wants && \
1440                 rm -f systemd-vconsole-setup.service && \
1441                 $(LN_S) ../systemd-vconsole-setup.service systemd-vconsole-setup.service )
1442
1443 INSTALL_DATA_HOOKS += \
1444         vconsole-install-data-hook
1445
1446 MANPAGES += \
1447         man/vconsole.conf.5
1448
1449 EXTRA_DIST += \
1450         units/systemd-vconsole-setup.service.in
1451 endif
1452
1453 # ------------------------------------------------------------------------------
1454 if ENABLE_READAHEAD
1455 systemd_readahead_collect_SOURCES = \
1456         src/readahead/readahead-collect.c \
1457         src/readahead/readahead-common.c
1458
1459 systemd_readahead_collect_LDADD = \
1460         libsystemd-basic.la \
1461         libsystemd-daemon.la \
1462         $(UDEV_LIBS)
1463
1464 systemd_readahead_collect_CFLAGS = \
1465         $(AM_CFLAGS) \
1466         $(UDEV_CFLAGS)
1467
1468 systemd_readahead_replay_SOURCES = \
1469         src/readahead/readahead-replay.c \
1470         src/readahead/readahead-common.c
1471
1472 systemd_readahead_replay_CFLAGS = \
1473         $(AM_CFLAGS) \
1474         $(UDEV_CFLAGS)
1475
1476 systemd_readahead_replay_LDADD = \
1477         libsystemd-basic.la \
1478         libsystemd-daemon.la \
1479         $(UDEV_LIBS)
1480
1481 rootlibexec_PROGRAMS += \
1482         systemd-readahead-collect \
1483         systemd-readahead-replay
1484
1485 dist_systemunit_DATA += \
1486         units/systemd-readahead-done.timer
1487
1488 nodist_systemunit_DATA += \
1489         units/systemd-readahead-collect.service \
1490         units/systemd-readahead-replay.service \
1491         units/systemd-readahead-done.service
1492
1493 EXTRA_DIST += \
1494         src/readahead/sd-readahead.h \
1495         src/readahead/readahead-common.h \
1496         units/systemd-readahead-collect.service.in \
1497         units/systemd-readahead-replay.service.in \
1498         units/systemd-readahead-done.service.in
1499
1500 dist_doc_DATA += \
1501         src/readahead/sd-readahead.h \
1502         src/readahead/sd-readahead.c
1503
1504 MANPAGES += \
1505         man/sd_readahead.3 \
1506         man/sd-readahead.7
1507 endif
1508
1509 # ------------------------------------------------------------------------------
1510 if ENABLE_HOSTNAMED
1511 systemd_hostnamed_SOURCES = \
1512         src/hostname/hostnamed.c \
1513         src/dbus-common.c \
1514         src/polkit.c
1515
1516 systemd_hostnamed_CFLAGS = \
1517         $(AM_CFLAGS) \
1518         $(DBUS_CFLAGS)
1519
1520 systemd_hostnamed_LDADD = \
1521         libsystemd-basic.la \
1522         libsystemd-daemon.la \
1523         $(DBUS_LIBS)
1524
1525 rootlibexec_PROGRAMS += \
1526         systemd-hostnamed
1527
1528 nodist_systemunit_DATA += \
1529         units/systemd-hostnamed.service
1530
1531 dist_dbuspolicy_DATA += \
1532         src/hostname/org.freedesktop.hostname1.conf
1533
1534 dist_dbussystemservice_DATA += \
1535         src/hostname/org.freedesktop.hostname1.service
1536
1537 polkitpolicy_in_files += \
1538         src/hostname/org.freedesktop.hostname1.policy.in
1539
1540 dbusinterface_DATA += \
1541         org.freedesktop.hostname1.xml
1542
1543 org.freedesktop.hostname1.xml: systemd-hostnamed
1544         $(AM_V_GEN)$(LIBTOOL) --mode=execute $(OBJCOPY) -O binary -j introspect.hostname1 $< $@.tmp && \
1545                 $(STRINGS) $@.tmp | $(AWK) -f $(srcdir)/introspect.awk | \
1546                 $(DBUS_PREPROCESS) -o $@ - && rm $@.tmp
1547
1548 hostnamed-install-data-hook:
1549         ( cd $(DESTDIR)$(systemunitdir) && \
1550                 rm -f dbus-org.freedesktop.hostname1.service && \
1551                 $(LN_S) systemd-hostnamed.service dbus-org.freedesktop.hostname1.service )
1552
1553 INSTALL_DATA_HOOKS += \
1554         hostnamed-install-data-hook
1555
1556 EXTRA_DIST += \
1557         units/systemd-hostnamed.service.in
1558 endif
1559
1560 # ------------------------------------------------------------------------------
1561 if ENABLE_LOCALED
1562 systemd_localed_SOURCES = \
1563         src/locale/localed.c \
1564         src/dbus-common.c \
1565         src/polkit.c
1566
1567 systemd_localed_CFLAGS = \
1568         $(AM_CFLAGS) \
1569         $(DBUS_CFLAGS)
1570
1571 systemd_localed_LDADD = \
1572         libsystemd-basic.la \
1573         libsystemd-daemon.la \
1574         $(DBUS_LIBS)
1575
1576 nodist_systemunit_DATA += \
1577         units/systemd-localed.service
1578
1579 rootlibexec_PROGRAMS += \
1580         systemd-localed
1581
1582 dist_dbuspolicy_DATA += \
1583         src/locale/org.freedesktop.locale1.conf
1584
1585 dist_dbussystemservice_DATA += \
1586         src/locale/org.freedesktop.locale1.service
1587
1588 polkitpolicy_in_files += \
1589         src/locale/org.freedesktop.locale1.policy.in
1590
1591 dbusinterface_DATA += \
1592         org.freedesktop.locale1.xml
1593
1594 org.freedesktop.locale1.xml: systemd-localed
1595         $(AM_V_GEN)$(LIBTOOL) --mode=execute $(OBJCOPY) -O binary -j introspect.locale1 $< $@.tmp && \
1596                 $(STRINGS) $@.tmp | $(AWK) -f $(srcdir)/introspect.awk | \
1597                 $(DBUS_PREPROCESS) -o $@ - && rm $@.tmp
1598
1599 localed-install-data-hook:
1600         ( cd $(DESTDIR)$(systemunitdir) && \
1601                 rm -f dbus-org.freedesktop.locale1.service && \
1602                 $(LN_S) systemd-localed.service dbus-org.freedesktop.locale1.service )
1603
1604 INSTALL_DATA_HOOKS += \
1605         localed-install-data-hook
1606
1607 EXTRA_DIST += \
1608         units/systemd-localed.service.in
1609 endif
1610
1611 # ------------------------------------------------------------------------------
1612 if ENABLE_TIMEDATED
1613 systemd_timedated_SOURCES = \
1614         src/timedate/timedated.c \
1615         src/dbus-common.c \
1616         src/polkit.c
1617
1618 systemd_timedated_CFLAGS = \
1619         $(AM_CFLAGS) \
1620         $(DBUS_CFLAGS)
1621
1622 systemd_timedated_LDADD = \
1623         libsystemd-basic.la \
1624         libsystemd-daemon.la \
1625         $(DBUS_LIBS)
1626
1627 rootlibexec_PROGRAMS += \
1628         systemd-timedated
1629
1630 dist_dbussystemservice_DATA += \
1631         src/timedate/org.freedesktop.timedate1.service
1632
1633 dist_dbuspolicy_DATA += \
1634         src/timedate/org.freedesktop.timedate1.conf
1635
1636 nodist_systemunit_DATA += \
1637         units/systemd-timedated.service
1638
1639 polkitpolicy_in_files += \
1640         src/timedate/org.freedesktop.timedate1.policy.in
1641
1642 org.freedesktop.timedate1.xml: systemd-timedated
1643         $(AM_V_GEN)$(LIBTOOL) --mode=execute $(OBJCOPY) -O binary -j introspect.timedate1 $< $@.tmp && \
1644                 $(STRINGS) $@.tmp | $(AWK) -f $(srcdir)/introspect.awk | \
1645                 $(DBUS_PREPROCESS) -o $@ - && rm $@.tmp
1646
1647 dbusinterface_DATA += \
1648         org.freedesktop.timedate1.xml
1649
1650 timedated-install-data-hook:
1651         ( cd $(DESTDIR)$(systemunitdir) && \
1652                 rm -f dbus-org.freedesktop.timedate1.service  && \
1653                 $(LN_S) systemd-timedated.service dbus-org.freedesktop.timedate1.service )
1654
1655 INSTALL_DATA_HOOKS += \
1656         timedated-install-data-hook
1657
1658 EXTRA_DIST += \
1659         units/systemd-timedated.service.in
1660 endif
1661
1662 # ------------------------------------------------------------------------------
1663 if ENABLE_LOGIND
1664 systemd_logind_SOURCES = \
1665         src/login/logind.c \
1666         src/login/logind-dbus.c \
1667         src/login/logind-device.c \
1668         src/login/logind-seat.c \
1669         src/login/logind-seat-dbus.c \
1670         src/login/logind-session.c \
1671         src/login/logind-session-dbus.c \
1672         src/login/logind-user.c \
1673         src/login/logind-user-dbus.c \
1674         src/dbus-common.c \
1675         src/dbus-loop.c \
1676         src/cgroup-util.c \
1677         src/polkit.c
1678
1679 nodist_systemd_logind_SOURCES = \
1680         src/login/logind-gperf.c
1681
1682 if HAVE_ACL
1683 systemd_logind_SOURCES += \
1684         src/login/logind-acl.c \
1685         src/acl-util.c
1686 endif
1687
1688 systemd_logind_CPPFLAGS = \
1689         $(AM_CPPFLAGS) \
1690         -I $(top_srcdir)/src/login
1691
1692 systemd_logind_CFLAGS = \
1693         $(AM_CFLAGS) \
1694         $(DBUS_CFLAGS) \
1695         $(UDEV_CFLAGS) \
1696         $(ACL_CFLAGS)
1697
1698 systemd_logind_LDADD = \
1699         libsystemd-basic.la \
1700         libsystemd-daemon.la \
1701         $(DBUS_LIBS) \
1702         $(UDEV_LIBS) \
1703         $(ACL_LIBS)
1704
1705 rootlibexec_PROGRAMS += \
1706         systemd-logind
1707
1708 systemd_loginctl_SOURCES = \
1709         src/login/loginctl.c \
1710         src/dbus-common.c \
1711         src/cgroup-show.c \
1712         src/cgroup-util.c \
1713         src/pager.c \
1714         src/sysfs-show.c
1715
1716 systemd_loginctl_CFLAGS = \
1717         $(AM_CFLAGS) \
1718         $(DBUS_CFLAGS) \
1719         $(UDEV_CFLAGS)
1720
1721 systemd_loginctl_LDADD = \
1722         libsystemd-basic.la \
1723         $(DBUS_LIBS) \
1724         $(UDEV_LIBS)
1725
1726 rootbin_PROGRAMS += \
1727         systemd-loginctl
1728
1729 test_login_SOURCES = \
1730         src/login/test-login.c
1731
1732 test_login_LDADD = \
1733         libsystemd-basic.la \
1734         libsystemd-login.la
1735
1736 noinst_PROGRAMS += \
1737         test-login
1738
1739 libsystemd_login_la_SOURCES = \
1740         src/login/sd-login.c \
1741         src/cgroup-util.c
1742
1743 libsystemd_login_la_CFLAGS = \
1744         $(AM_CFLAGS) \
1745         -fvisibility=hidden
1746
1747 libsystemd_login_la_LDFLAGS = \
1748         -shared \
1749         -version-info $(LIBSYSTEMD_LOGIN_CURRENT):$(LIBSYSTEMD_LOGIN_REVISION):$(LIBSYSTEMD_LOGIN_AGE) \
1750         -Wl,--version-script=$(top_srcdir)/src/login/libsystemd-login.sym
1751
1752 libsystemd_login_la_LIBADD = \
1753         libsystemd-basic.la
1754
1755 if HAVE_PAM
1756 pam_systemd_la_SOURCES = \
1757         src/login/pam-module.c \
1758         src/dbus-common.c
1759
1760 pam_systemd_la_CFLAGS = \
1761         $(AM_CFLAGS) \
1762         $(PAM_CFLAGS) \
1763         $(DBUS_CFLAGS) \
1764         -fvisibility=hidden
1765
1766 pam_systemd_la_LDFLAGS = \
1767         -module \
1768         -export-dynamic \
1769         -avoid-version \
1770         -shared \
1771         -export-symbols-regex '^pam_sm_.*'
1772
1773 pam_systemd_la_LIBADD = \
1774         libsystemd-basic.la \
1775         libsystemd-daemon.la \
1776         $(PAM_LIBS) \
1777         $(DBUS_LIBS)
1778
1779 pamlib_LTLIBRARIES = \
1780         pam_systemd.la
1781 endif
1782
1783 # move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
1784 libsystemd-login-install-hook:
1785         if test "$(libdir)" != "$(rootlibdir)"; then \
1786                 mkdir -p $(DESTDIR)$(rootlibdir) && \
1787                 so_img_name=$$(readlink $(DESTDIR)$(libdir)/libsystemd-login.so) && \
1788                 so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
1789                 ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libsystemd-login.so && \
1790                 mv $(DESTDIR)$(libdir)/libsystemd-login.so.* $(DESTDIR)$(rootlibdir); \
1791         fi
1792
1793 INSTALL_EXEC_HOOKS += \
1794         libsystemd-login-install-hook
1795
1796 libsystemd-login-uninstall-hook:
1797         rm -f $(DESTDIR)$(rootlibdir)/libsystemd-login.so*
1798
1799 UNINSTALL_EXEC_HOOKS += \
1800         libsystemd-login-uninstall-hook
1801
1802 nodist_systemunit_DATA += \
1803         units/systemd-logind.service
1804
1805 dist_dbussystemservice_DATA += \
1806         src/login/org.freedesktop.login1.service
1807
1808 dist_dbuspolicy_DATA += \
1809         src/login/org.freedesktop.login1.conf
1810
1811 dist_pkgsysconf_DATA += \
1812         src/login/systemd-logind.conf
1813
1814 pkginclude_HEADERS += \
1815         src/login/sd-login.h
1816
1817 lib_LTLIBRARIES += \
1818         libsystemd-login.la
1819
1820 pkgconfiglib_DATA += \
1821         src/login/libsystemd-login.pc
1822
1823 polkitpolicy_in_files += \
1824         src/login/org.freedesktop.login1.policy.in
1825
1826 logind-install-data-hook:
1827         ( cd $(DESTDIR)$(systemunitdir) && \
1828                 rm -f dbus-org.freedesktop.login1.service && \
1829                 $(LN_S) systemd-logind.service dbus-org.freedesktop.login1.service)
1830         ( cd $(DESTDIR)$(systemunitdir)/multi-user.target.wants && \
1831                 rm -f systemd-logind.service && \
1832                 $(LN_S) ../systemd-logind.service systemd-logind.service )
1833
1834 INSTALL_DATA_HOOKS += \
1835         logind-install-data-hook
1836
1837 systemd_uaccess_SOURCES = \
1838         src/login/uaccess.c
1839
1840 if HAVE_ACL
1841 systemd_uaccess_SOURCES += \
1842         src/login/logind-acl.c \
1843         src/acl-util.c
1844 endif
1845
1846 systemd_uaccess_CFLAGS = \
1847         $(AM_CFLAGS) \
1848         $(UDEV_CFLAGS) \
1849         $(ACL_CFLAGS)
1850
1851 systemd_uaccess_LDADD = \
1852         libsystemd-basic.la \
1853         libsystemd-daemon.la \
1854         libsystemd-login.la \
1855         $(UDEV_LIBS) \
1856         $(ACL_LIBS)
1857
1858 rootlibexec_PROGRAMS += \
1859         systemd-uaccess
1860
1861 dist_udevrules_DATA += \
1862         src/70-uaccess.rules
1863
1864 MANPAGES += \
1865         man/systemd-logind.conf.5 \
1866         man/sd-login.7 \
1867         man/systemd-loginctl.1 \
1868         man/sd_login_monitor_new.3 \
1869         man/sd_pid_get_session.3 \
1870         man/sd_uid_get_state.3 \
1871         man/sd_session_is_active.3 \
1872         man/sd_seat_get_active.3 \
1873         man/sd_get_seats.3
1874
1875 MANPAGES_ALIAS += \
1876         man/sd_login_monitor_unref.3 \
1877         man/sd_login_monitor_flush.3 \
1878         man/sd_login_monitor_get_fd.3 \
1879         man/sd_session_get_uid.3 \
1880         man/sd_session_get_seat.3 \
1881         man/sd_pid_get_owner_uid.3 \
1882         man/sd_uid_is_on_seat.3 \
1883         man/sd_uid_get_sessions.3 \
1884         man/sd_uid_get_seats.3 \
1885         man/sd_seat_get_sessions.3 \
1886         man/sd_seat_can_multi_session.3 \
1887         man/sd_get_sessions.3 \
1888         man/sd_get_uids.3
1889
1890 man/sd_login_monitor_unref.3: man/sd_login_monitor_new.3
1891 man/sd_login_monitor_flush.3: man/sd_login_monitor_new.3
1892 man/sd_login_monitor_get_fd.3: man/sd_login_monitor_new.3
1893 man/sd_session_get_uid.3: man/sd_session_is_active.3
1894 man/sd_session_get_seat.3: man/sd_session_is_active.3
1895 man/sd_pid_get_owner_uid.3: man/sd_pid_get_session.3
1896 man/sd_uid_is_on_seat.3: man/sd_uid_get_state.3
1897 man/sd_uid_get_sessions.3: man/sd_uid_get_state.3
1898 man/sd_uid_get_seats.3: man/sd_uid_get_state.3
1899 man/sd_seat_get_sessions.3: man/sd_seat_get_active.3
1900 man/sd_seat_can_multi_session.3: man/sd_seat_get_active.3
1901 man/sd_get_sessions.3: man/sd_get_seats.3
1902 man/sd_get_uids.3: man/sd_get_seats.3
1903
1904 EXTRA_DIST += \
1905         src/login/logind-gperf.gperf \
1906         units/systemd-logind.service.in \
1907         src/login/libsystemd-login.pc.in \
1908         src/login/libsystemd-login.sym \
1909         src/login/logind.h \
1910         src/login/logind-device.h \
1911         src/login/logind-seat.h \
1912         src/login/logind-session.h \
1913         src/login/logind-user.h \
1914         src/login/logind-acl.h
1915
1916 CLEANFILES += \
1917         src/login/logind-gperf.c
1918 endif
1919 # ------------------------------------------------------------------------------
1920
1921 SED_PROCESS = \
1922         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
1923         $(SED)  -e 's,@rootlibexecdir\@,$(rootlibexecdir),g' \
1924                 -e 's,@rootbindir\@,$(rootbindir),g' \
1925                 -e 's,@bindir\@,$(bindir),g' \
1926                 -e 's,@SYSTEMCTL\@,$(rootbindir)/systemctl,g' \
1927                 -e 's,@SYSTEMD_NOTIFY\@,$(rootbindir)/systemd-notify,g' \
1928                 -e 's,@pkgsysconfdir\@,$(pkgsysconfdir),g' \
1929                 -e 's,@pkgdatadir\@,$(pkgdatadir),g' \
1930                 -e 's,@pkglibexecdir\@,$(pkglibexecdir),g' \
1931                 -e 's,@systemunitdir\@,$(systemunitdir),g' \
1932                 -e 's,@userunitdir\@,$(userunitdir),g' \
1933                 -e 's,@PACKAGE_VERSION\@,$(PACKAGE_VERSION),g' \
1934                 -e 's,@PACKAGE_NAME\@,$(PACKAGE_NAME),g' \
1935                 -e 's,@PACKAGE_URL\@,$(PACKAGE_URL),g' \
1936                 -e 's,@prefix\@,$(prefix),g' \
1937                 -e 's,@exec_prefix\@,$(exec_prefix),g' \
1938                 -e 's,@libdir\@,$(libdir),g' \
1939                 -e 's,@includedir\@,$(includedir),g' \
1940                 < $< > $@ || rm $@
1941
1942 units/%: units/%.in Makefile
1943         $(SED_PROCESS)
1944
1945 man/%: man/%.in Makefile
1946         $(SED_PROCESS)
1947
1948 %.pc: %.pc.in Makefile
1949         $(SED_PROCESS)
1950
1951 src/%.policy.in: src/%.policy.in.in Makefile
1952         $(SED_PROCESS)
1953
1954 src/%.rules: src/%.rules.in Makefile
1955         $(SED_PROCESS)
1956
1957 src/%.c: src/%.gperf
1958         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
1959         $(GPERF) < $< > $@
1960
1961 src/%: src/%.m4
1962         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
1963         $(M4) -P $(M4_DEFINES) < $< > $@ || rm $@
1964
1965 src/load-fragment-gperf-nulstr.c: src/load-fragment-gperf.gperf
1966         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
1967         $(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 $@
1968
1969 M4_PROCESS_SYSTEM = \
1970         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
1971         $(M4) -P $(M4_DEFINES) -DFOR_SYSTEM=1 < $< > $@ || rm $@
1972
1973 M4_PROCESS_USER = \
1974         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
1975         $(M4) -P $(M4_DEFINES) -DFOR_USER=1 < $< > $@ || rm $@
1976
1977 units/%: units/%.m4 Makefile
1978         $(M4_PROCESS_SYSTEM)
1979
1980 units/user/%: units/%.m4 Makefile
1981         $(M4_PROCESS_USER)
1982
1983 CLEANFILES += \
1984         $(nodist_systemunit_DATA) \
1985         $(nodist_userunit_DATA) \
1986         $(nodist_man_MANS) \
1987         ${XML_IN_FILES:.xml.in=.html} \
1988         $(pkgconfigdata_DATA) \
1989         $(pkgconfiglib_DATA) \
1990         $(nodist_polkitpolicy_DATA) \
1991         src/73-seat-late.rules \
1992         src/99-systemd.rules \
1993         src/load-fragment-gperf.gperf \
1994         src/load-fragment-gperf.c \
1995         src/load-fragment-gperf-nulstr.c
1996
1997 if HAVE_VALAC
1998 CLEANFILES += \
1999         ${systemadm_SOURCES:.vala=.c}
2000 endif
2001
2002 if HAVE_XSLTPROC
2003 XSLTPROC_FLAGS = \
2004         --nonet \
2005         --stringparam funcsynopsis.style ansi
2006
2007 XSLTPROC_PROCESS_MAN = \
2008         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
2009         $(XSLTPROC) -o $@ $(XSLTPROC_FLAGS) http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $<
2010
2011 XSLTPROC_PROCESS_MAN_IN = \
2012         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
2013         $(XSLTPROC) -o ${@:.in=} $(XSLTPROC_FLAGS) http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $< && \
2014         mv ${@:.in=} $@
2015
2016 XSLTPROC_PROCESS_HTML = \
2017         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
2018         $(XSLTPROC) -o $@ $(XSLTPROC_FLAGS) man/custom-html.xsl $<
2019
2020 XSLTPROC_PROCESS_HTML_IN = \
2021         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
2022         $(XSLTPROC) -o ${@:.in=} $(XSLTPROC_FLAGS) man/custom-html.xsl $< && \
2023         mv ${@:.in=} $@
2024
2025 man/%.1: man/%.xml
2026         $(XSLTPROC_PROCESS_MAN)
2027
2028 man/%.1.in: man/%.xml.in
2029         $(XSLTPROC_PROCESS_MAN)
2030
2031 man/%.3: man/%.xml
2032         $(XSLTPROC_PROCESS_MAN)
2033
2034 man/%.3.in: man/%.xml.in
2035         $(XSLTPROC_PROCESS_MAN)
2036
2037 man/%.5: man/%.xml
2038         $(XSLTPROC_PROCESS_MAN)
2039
2040 man/%.5.in: man/%.xml.in
2041         $(XSLTPROC_PROCESS_MAN)
2042
2043 man/%.7: man/%.xml
2044         $(XSLTPROC_PROCESS_MAN)
2045
2046 man/%.7.in: man/%.xml.in
2047         $(XSLTPROC_PROCESS_MAN_IN)
2048
2049 man/%.8: man/%.xml
2050         $(XSLTPROC_PROCESS_MAN)
2051
2052 man/%.8.in: man/%.xml.in
2053         $(XSLTPROC_PROCESS_MAN_IN)
2054
2055 man/%.html: man/%.xml
2056         $(XSLTPROC_PROCESS_HTML)
2057
2058 man/%.html.in: man/%.xml.in
2059         $(XSLTPROC_PROCESS_HTML_IN)
2060
2061 CLEANFILES += \
2062         $(dist_man_MANS) \
2063         ${nodist_man_MANS:=.in} \
2064         ${XML_FILES:.xml=.html} \
2065         ${XML_IN_FILES:.xml.in=.html.in}
2066 endif
2067
2068 DBUS_PREPROCESS = $(CPP) -P $(DBUS_CFLAGS) -imacros dbus/dbus-protocol.h
2069
2070 org.freedesktop.systemd1.%.xml: systemd
2071         $(AM_V_GEN)$(LIBTOOL) --mode=execute $(OBJCOPY) -O binary -j introspect.$* $< $@.tmp && \
2072                 $(STRINGS) $@.tmp | $(AWK) -f $(srcdir)/introspect.awk | \
2073                 $(DBUS_PREPROCESS) -o $@ - && rm $@.tmp
2074
2075 CLEANFILES += \
2076         $(dbusinterface_DATA)
2077
2078 systemd-install-data-hook:
2079         $(MKDIR_P) -m 0755 \
2080                 $(DESTDIR)$(tmpfilesdir) \
2081                 $(DESTDIR)$(sysconfdir)/tmpfiles.d \
2082                 $(DESTDIR)$(prefix)/lib/modules-load.d \
2083                 $(DESTDIR)$(sysconfdir)/modules-load.d \
2084                 $(DESTDIR)$(prefix)/lib/sysctl.d \
2085                 $(DESTDIR)$(sysconfdir)/sysctl.d \
2086                 $(DESTDIR)$(systemshutdowndir) \
2087                 $(DESTDIR)$(systemgeneratordir) \
2088                 $(DESTDIR)$(usergeneratordir)
2089         $(MKDIR_P) -m 0755 \
2090                 $(DESTDIR)$(systemunitdir) \
2091                 $(DESTDIR)$(userunitdir) \
2092                 $(DESTDIR)$(systemunitdir)/sysinit.target.wants \
2093                 $(DESTDIR)$(systemunitdir)/sockets.target.wants \
2094                 $(DESTDIR)$(systemunitdir)/basic.target.wants \
2095                 $(DESTDIR)$(systemunitdir)/shutdown.target.wants \
2096                 $(DESTDIR)$(systemunitdir)/local-fs.target.wants \
2097                 $(DESTDIR)$(systemunitdir)/runlevel1.target.wants \
2098                 $(DESTDIR)$(systemunitdir)/runlevel2.target.wants \
2099                 $(DESTDIR)$(systemunitdir)/runlevel3.target.wants \
2100                 $(DESTDIR)$(systemunitdir)/runlevel4.target.wants \
2101                 $(DESTDIR)$(systemunitdir)/runlevel5.target.wants \
2102                 $(DESTDIR)$(systemunitdir)/multi-user.target.wants \
2103                 $(DESTDIR)$(systemunitdir)/graphical.target.wants \
2104                 $(DESTDIR)$(pkgsysconfdir)/system \
2105                 $(DESTDIR)$(pkgsysconfdir)/system/sysinit.target.wants \
2106                 $(DESTDIR)$(pkgsysconfdir)/system/local-fs.target.wants \
2107                 $(DESTDIR)$(pkgsysconfdir)/system/multi-user.target.wants \
2108                 $(DESTDIR)$(pkgsysconfdir)/system/getty.target.wants \
2109                 $(DESTDIR)$(pkgsysconfdir)/user \
2110                 $(DESTDIR)$(dbussessionservicedir) \
2111                 $(DESTDIR)$(sysconfdir)/xdg/systemd
2112         ( cd $(DESTDIR)$(sysconfdir)/xdg/systemd/ && \
2113                 rm -f user && \
2114                 $(LN_S) $(pkgsysconfdir)/user user )
2115         ( cd $(DESTDIR)$(systemunitdir)/sockets.target.wants && \
2116                 rm -f systemd-initctl.socket systemd-stdout-syslog-bridge.socket systemd-shutdownd.socket syslog.socket && \
2117                 $(LN_S) ../systemd-stdout-syslog-bridge.socket systemd-stdout-syslog-bridge.socket && \
2118                 $(LN_S) ../systemd-initctl.socket systemd-initctl.socket && \
2119                 $(LN_S) ../systemd-shutdownd.socket systemd-shutdownd.socket && \
2120                 $(LN_S) ../syslog.socket syslog.socket )
2121         ( cd $(DESTDIR)$(systemunitdir)/runlevel1.target.wants && \
2122                 rm -f systemd-update-utmp-runlevel.service && \
2123                 $(LN_S) ../systemd-update-utmp-runlevel.service systemd-update-utmp-runlevel.service )
2124         ( cd $(DESTDIR)$(systemunitdir)/runlevel2.target.wants && \
2125                 rm -f systemd-update-utmp-runlevel.service && \
2126                 $(LN_S) ../systemd-update-utmp-runlevel.service systemd-update-utmp-runlevel.service )
2127         ( cd $(DESTDIR)$(systemunitdir)/runlevel3.target.wants && \
2128                 rm -f systemd-update-utmp-runlevel.service && \
2129                 $(LN_S) ../systemd-update-utmp-runlevel.service systemd-update-utmp-runlevel.service )
2130         ( cd $(DESTDIR)$(systemunitdir)/runlevel4.target.wants && \
2131                 rm -f systemd-update-utmp-runlevel.service && \
2132                 $(LN_S) ../systemd-update-utmp-runlevel.service systemd-update-utmp-runlevel.service )
2133         ( cd $(DESTDIR)$(systemunitdir)/runlevel5.target.wants && \
2134                 rm -f systemd-update-utmp-runlevel.service && \
2135                 $(LN_S) ../systemd-update-utmp-runlevel.service systemd-update-utmp-runlevel.service )
2136         ( cd $(DESTDIR)$(systemunitdir)/shutdown.target.wants && \
2137                 rm -f systemd-update-utmp-shutdown.service \
2138                         systemd-random-seed-save.service && \
2139                 $(LN_S) ../systemd-update-utmp-shutdown.service systemd-update-utmp-shutdown.service && \
2140                 $(LN_S) ../systemd-random-seed-save.service systemd-random-seed-save.service )
2141         ( cd $(DESTDIR)$(systemunitdir)/local-fs.target.wants && \
2142                 rm -f systemd-remount-api-vfs.service \
2143                         fsck-root.service \
2144                         remount-rootfs.service \
2145                         var-run.mount \
2146                         media.mount && \
2147                 $(LN_S) ../systemd-remount-api-vfs.service systemd-remount-api-vfs.service && \
2148                 $(LN_S) ../fsck-root.service fsck-root.service && \
2149                 $(LN_S) ../remount-rootfs.service remount-rootfs.service && \
2150                 $(LN_S) ../var-run.mount var-run.mount && \
2151                 $(LN_S) ../media.mount media.mount )
2152         ( cd $(DESTDIR)$(userunitdir) && \
2153                 rm -f shutdown.target sockets.target bluetooth.target printer.target sound.target && \
2154                 $(LN_S) $(systemunitdir)/shutdown.target shutdown.target && \
2155                 $(LN_S) $(systemunitdir)/sockets.target sockets.target && \
2156                 $(LN_S) $(systemunitdir)/bluetooth.target bluetooth.target && \
2157                 $(LN_S) $(systemunitdir)/printer.target printer.target && \
2158                 $(LN_S) $(systemunitdir)/sound.target sound.target )
2159         ( cd $(DESTDIR)$(systemunitdir) && \
2160                 rm -f runlevel0.target runlevel1.target runlevel2.target runlevel3.target runlevel4.target runlevel5.target runlevel6.target && \
2161                 $(LN_S) poweroff.target runlevel0.target && \
2162                 $(LN_S) rescue.target runlevel1.target && \
2163                 $(LN_S) multi-user.target runlevel2.target && \
2164                 $(LN_S) multi-user.target runlevel3.target && \
2165                 $(LN_S) multi-user.target runlevel4.target && \
2166                 $(LN_S) graphical.target runlevel5.target && \
2167                 $(LN_S) reboot.target runlevel6.target )
2168         ( cd $(DESTDIR)$(systemunitdir) && \
2169                 rm -f default.target ctrl-alt-del.target autovt@.service && \
2170                 $(LN_S) graphical.target default.target && \
2171                 $(LN_S) reboot.target ctrl-alt-del.target && \
2172                 $(LN_S) getty@.service autovt@.service )
2173         ( cd $(DESTDIR)$(systemunitdir)/multi-user.target.wants && \
2174                 rm -f getty.target systemd-user-sessions.service systemd-ask-password-wall.path && \
2175                 $(LN_S) ../getty.target getty.target && \
2176                 $(LN_S) ../systemd-user-sessions.service systemd-user-sessions.service && \
2177                 $(LN_S) ../systemd-ask-password-wall.path systemd-ask-password-wall.path)
2178         ( cd $(DESTDIR)$(pkgsysconfdir)/system/getty.target.wants && \
2179                 rm -f getty@tty1.service && \
2180                 $(LN_S) $(systemunitdir)/getty@.service getty@tty1.service )
2181         ( cd $(DESTDIR)$(pkgsysconfdir)/system/multi-user.target.wants && \
2182                 rm -f remote-fs.target && \
2183                 $(LN_S) $(systemunitdir)/remote-fs.target remote-fs.target )
2184         ( cd $(DESTDIR)$(systemunitdir)/sysinit.target.wants && \
2185                 rm -f dev-hugepages.mount \
2186                         dev-mqueue.mount \
2187                         sys-kernel-config.mount \
2188                         sys-kernel-debug.mount \
2189                         sys-kernel-security.mount \
2190                         sys-fs-fuse-connections.mount \
2191                         systemd-modules-load.service \
2192                         systemd-random-seed-load.service \
2193                         systemd-tmpfiles-setup.service \
2194                         systemd-sysctl.service \
2195                         systemd-ask-password-console.path \
2196                         systemd-kmsg-syslogd.service \
2197                         cryptsetup.target && \
2198                 $(LN_S) ../dev-hugepages.mount dev-hugepages.mount && \
2199                 $(LN_S) ../dev-mqueue.mount dev-mqueue.mount && \
2200                 $(LN_S) ../sys-kernel-config.mount sys-kernel-config.mount && \
2201                 $(LN_S) ../sys-kernel-debug.mount sys-kernel-debug.mount && \
2202                 $(LN_S) ../sys-kernel-security.mount sys-kernel-security.mount && \
2203                 $(LN_S) ../sys-fs-fuse-connections.mount sys-fs-fuse-connections.mount && \
2204                 $(LN_S) ../systemd-modules-load.service systemd-modules-load.service && \
2205                 $(LN_S) ../systemd-random-seed-load.service systemd-random-seed-load.service && \
2206                 $(LN_S) ../systemd-tmpfiles-setup.service systemd-tmpfiles-setup.service && \
2207                 $(LN_S) ../systemd-sysctl.service systemd-sysctl.service && \
2208                 $(LN_S) ../systemd-ask-password-console.path systemd-ask-password-console.path && \
2209                 $(LN_S) ../systemd-kmsg-syslogd.service && \
2210                 $(LN_S) ../cryptsetup.target cryptsetup.target )
2211         ( cd $(DESTDIR)$(systemunitdir)/basic.target.wants && \
2212                 rm -f systemd-tmpfiles-clean.timer && \
2213                 $(LN_S) ../systemd-tmpfiles-clean.timer systemd-tmpfiles-clean.timer )
2214         ( cd $(DESTDIR)$(dbussessionservicedir) && \
2215                 rm -f org.freedesktop.systemd1.service && \
2216                 $(LN_S) ../system-services/org.freedesktop.systemd1.service org.freedesktop.systemd1.service )
2217 if HAVE_PLYMOUTH
2218         $(MKDIR_P) -m 0755 \
2219                 $(DESTDIR)$(SYSTEM_SYSVINIT_PATH) \
2220                 $(DESTDIR)$(systemunitdir)/reboot.target.wants \
2221                 $(DESTDIR)$(systemunitdir)/kexec.target.wants \
2222                 $(DESTDIR)$(systemunitdir)/poweroff.target.wants \
2223                 $(DESTDIR)$(systemunitdir)/halt.target.wants
2224         ( cd $(DESTDIR)$(systemunitdir)/sysinit.target.wants && \
2225                 rm -f plymouth-start.service plymouth-read-write.service && \
2226                 $(LN_S) ../plymouth-start.service plymouth-start.service && \
2227                 $(LN_S) ../plymouth-read-write.service plymouth-read-write.service )
2228         ( cd $(DESTDIR)$(systemunitdir)/multi-user.target.wants && \
2229                 rm -f plymouth-quit.service plymouth-quit-wait.service && \
2230                 $(LN_S) ../plymouth-quit.service plymouth-quit.service && \
2231                 $(LN_S) ../plymouth-quit-wait.service plymouth-quit-wait.service )
2232         ( cd $(DESTDIR)$(systemunitdir)/reboot.target.wants && \
2233                 rm -f plymouth-reboot.service && \
2234                 $(LN_S) ../plymouth-reboot.service plymouth-reboot.service )
2235         ( cd $(DESTDIR)$(systemunitdir)/kexec.target.wants && \
2236                 rm -f plymouth-kexec.service && \
2237                 $(LN_S) ../plymouth-kexec.service plymouth-kexec.service )
2238         ( cd $(DESTDIR)$(systemunitdir)/poweroff.target.wants && \
2239                 rm -f plymouth-poweroff.service && \
2240                 $(LN_S) ../plymouth-poweroff.service plymouth-poweroff.service )
2241         ( cd $(DESTDIR)$(systemunitdir)/halt.target.wants && \
2242                 rm -f plymouth-halt.service && \
2243                 $(LN_S) ../plymouth-halt.service plymouth-halt.service )
2244 endif
2245 if TARGET_MEEGO
2246         $(MKDIR_P) -m 0755 $(DESTDIR)$(systemunitdir)/final.target.wants
2247         ( cd $(DESTDIR)$(systemunitdir)/multi-user.target.wants && \
2248                 rm -f network.target && \
2249                 $(LN_S) $(systemunitdir)/network.target network.target )
2250         ( cd $(DESTDIR)$(pkgsysconfdir)/system/sysinit.target.wants && \
2251                 rm -f * )
2252         ( cd $(DESTDIR)$(pkgsysconfdir)/system/local-fs.target.wants && \
2253                 rm -f * )
2254         ( cd $(DESTDIR)$(pkgsysconfdir)/system/multi-user.target.wants && \
2255                 rm -f * )
2256         ( cd $(DESTDIR)$(pkgsysconfdir)/system/getty.target.wants && \
2257                 rm -f * )
2258 endif
2259
2260 if TARGET_FEDORA
2261         $(MKDIR_P) -m 0755 $(DESTDIR)$(systemunitdir)/final.target.wants
2262         ( cd $(DESTDIR)$(systemunitdir)/final.target.wants && \
2263                 rm -f halt-local.service && \
2264                 $(LN_S) $(systemunitdir)/halt-local.service halt-local.service )
2265         ( cd $(DESTDIR)$(systemunitdir) && \
2266                 rm -f display-manager.service single.service && \
2267                 $(LN_S) prefdm.service display-manager.service && \
2268                 $(LN_S) rescue.service single.service )
2269         ( cd $(DESTDIR)$(systemunitdir)/graphical.target.wants && \
2270                 rm -f display-manager.service && \
2271                 $(LN_S) $(systemunitdir)/display-manager.service display-manager.service )
2272 endif
2273
2274 if TARGET_MANDRIVA
2275         $(MKDIR_P) -m 0755 $(DESTDIR)$(systemunitdir)/final.target.wants
2276         ( cd $(DESTDIR)$(systemunitdir)/final.target.wants && \
2277                 rm -f halt-local.service && \
2278                 $(LN_S) $(systemunitdir)/halt-local.service halt-local.service )
2279         ( cd $(DESTDIR)$(systemunitdir) && \
2280                 rm -f display-manager.service dm.service single.service && \
2281                 $(LN_S) prefdm.service display-manager.service && \
2282                 $(LN_S) prefdm.service dm.service && \
2283                 $(LN_S) rescue.service single.service )
2284         ( cd $(DESTDIR)$(systemunitdir)/graphical.target.wants && \
2285                 rm -f display-manager.service && \
2286                 $(LN_S) $(systemunitdir)/display-manager.service display-manager.service )
2287 endif
2288
2289 if TARGET_DEBIAN_OR_UBUNTU
2290         ( cd $(DESTDIR)$(systemunitdir) && \
2291                 rm -f runlevel5.target && \
2292                 $(LN_S) multi-user.target runlevel5.target )
2293 endif
2294
2295 if TARGET_SUSE
2296         $(MKDIR_P) -m 0755 $(DESTDIR)$(systemunitdir)/final.target.wants
2297         ( cd $(DESTDIR)$(systemunitdir) && \
2298                 rm -f local.service && \
2299                 $(LN_S) rc-local.service local.service )
2300         ( cd $(DESTDIR)$(systemunitdir)/final.target.wants && \
2301                 rm -f halt-local.service && \
2302                 $(LN_S) $(systemunitdir)/halt-local.service halt-local.service )
2303 endif
2304
2305 if TARGET_MAGEIA
2306         $(MKDIR_P) -m 0755 $(DESTDIR)$(systemunitdir)/final.target.wants
2307         ( cd $(DESTDIR)$(systemunitdir)/final.target.wants && \
2308                 rm -f halt-local.service && \
2309                 $(LN_S) $(systemunitdir)/halt-local.service halt-local.service )
2310         ( cd $(DESTDIR)$(systemunitdir) && \
2311                 rm -f display-manager.service && \
2312                 $(LN_S) prefdm.service display-manager.service && \
2313                 $(LN_S) prefdm.service dm.service )
2314         ( cd $(DESTDIR)$(systemunitdir)/graphical.target.wants && \
2315                 rm -f display-manager.service && \
2316                 $(LN_S) $(systemunitdir)/display-manager.service display-manager.service )
2317 endif
2318
2319 if HAVE_SYSV_COMPAT
2320         ( cd $(DESTDIR)$(systemunitdir)/local-fs.target.wants && \
2321                 rm -f var-lock.mount && \
2322                 $(LN_S) ../var-lock.mount var-lock.mount )
2323 endif
2324
2325 install-exec-hook: $(INSTALL_EXEC_HOOKS)
2326
2327 uninstall-hook: $(UNINSTALL_EXEC_HOOKS)
2328
2329 install-data-hook: systemd-install-data-hook $(INSTALL_DATA_HOOKS)
2330
2331 DISTCHECK_CONFIGURE_FLAGS = \
2332         --with-dbuspolicydir=$$dc_install_base/$(dbuspolicydir) \
2333         --with-dbussessionservicedir=$$dc_install_base/$(dbussessionservicedir) \
2334         --with-dbussystemservicedir=$$dc_install_base/$(dbussystemservicedir) \
2335         --with-dbusinterfacedir=$$dc_install_base/$(dbusinterfacedir) \
2336         --with-udevrulesdir=$$dc_install_base/$(udevrulesdir) \
2337         --with-pamlibdir=$$dc_install_base/$(pamlibdir) \
2338         --with-rootdir=$$dc_install_base/$(rootdir)
2339
2340 upload: all distcheck
2341         cp -v systemd-$(VERSION).tar.bz2 /home/lennart/git.fedora/systemd/
2342         scp systemd-$(VERSION).tar.bz2 fdo:/srv/www.freedesktop.org/www/software/systemd/
2343         scp man/*.html tango:public/systemd-man/
2344
2345 git-tag:
2346         git tag "v$(VERSION)" -m "systemd $(VERSION)"
2347
2348 update-kbd-model-map:
2349         src/generate-kbd-model-map > src/kbd-model-map