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