chiark / gitweb /
b55e0b954d59d0fe4271a6f1d83a040473fe0053
[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 systemd_shutdown_SOURCES = \
813         src/mount-setup.c \
814         src/umount.c \
815         src/shutdown.c
816
817 systemd_shutdown_CFLAGS = \
818         $(AM_CFLAGS) \
819         $(UDEV_CFLAGS)
820
821 systemd_shutdown_LDADD = \
822         libsystemd-basic.la \
823         $(UDEV_LIBS)
824
825 systemd_modules_load_SOURCES = \
826         src/modules-load.c
827
828 systemd_modules_load_LDADD = \
829         libsystemd-basic.la
830
831 systemd_tmpfiles_SOURCES = \
832         src/tmpfiles.c
833
834 systemd_tmpfiles_LDADD = \
835         libsystemd-basic.la
836
837 systemd_machine_id_setup_SOURCES = \
838         src/machine-id-setup.c \
839         src/machine-id-main.c \
840         src/sd-id128.c
841
842 systemd_machine_id_setup_LDADD = \
843         libsystemd-basic.la
844
845 systemd_sysctl_SOURCES = \
846         src/sysctl.c
847
848 systemd_sysctl_LDADD = \
849         libsystemd-basic.la
850
851 systemd_fsck_SOURCES = \
852         src/fsck.c \
853         src/dbus-common.c
854
855 systemd_fsck_CFLAGS = \
856         $(AM_CFLAGS) \
857         $(UDEV_CFLAGS) \
858         $(DBUS_CFLAGS)
859
860 systemd_fsck_LDADD = \
861         libsystemd-basic.la \
862         $(UDEV_LIBS) \
863         $(DBUS_LIBS)
864
865 systemd_quotacheck_SOURCES = \
866         src/quotacheck.c
867
868 systemd_quotacheck_LDADD = \
869         libsystemd-basic.la
870
871 systemd_timestamp_SOURCES = \
872         src/timestamp.c
873
874 systemd_timestamp_LDADD = \
875         libsystemd-basic.la
876
877 systemd_ac_power_SOURCES = \
878         src/ac-power.c
879
880 systemd_ac_power_CFLAGS = \
881         $(AM_CFLAGS) \
882         $(UDEV_CFLAGS)
883
884 systemd_ac_power_LDADD = \
885         libsystemd-basic.la \
886         $(UDEV_LIBS)
887
888 systemd_detect_virt_SOURCES = \
889         src/detect-virt.c
890
891 systemd_detect_virt_LDADD = \
892         libsystemd-basic.la
893
894 systemd_getty_generator_SOURCES = \
895         src/getty-generator.c \
896         src/unit-name.c
897
898 systemd_getty_generator_LDADD = \
899         libsystemd-basic.la
900
901 systemd_rc_local_generator_SOURCES = \
902         src/rc-local-generator.c
903
904 systemd_rc_local_generator_LDADD = \
905         libsystemd-basic.la
906
907 systemd_remount_api_vfs_SOURCES = \
908         src/remount-api-vfs.c \
909         src/mount-setup.c \
910         src/exit-status.c
911
912 systemd_remount_api_vfs_LDADD = \
913         libsystemd-basic.la
914
915 systemd_cgroups_agent_SOURCES = \
916         src/cgroups-agent.c \
917         src/dbus-common.c
918
919 systemd_cgroups_agent_CFLAGS = \
920         $(AM_CFLAGS) \
921         $(DBUS_CFLAGS)
922
923 systemd_cgroups_agent_LDADD = \
924         libsystemd-basic.la \
925         $(DBUS_LIBS)
926
927 systemd_kmsg_syslogd_SOURCES = \
928         src/kmsg-syslogd.c \
929         src/fdset.c
930
931 systemd_kmsg_syslogd_LDADD = \
932         libsystemd-basic.la \
933         libsystemd-daemon.la
934
935 systemctl_SOURCES = \
936         src/systemctl.c \
937         src/utmp-wtmp.c \
938         src/dbus-common.c \
939         src/path-lookup.c \
940         src/cgroup-show.c \
941         src/cgroup-util.c \
942         src/exit-status.c \
943         src/unit-name.c \
944         src/pager.c \
945         src/install.c \
946         src/spawn-agent.c
947
948 systemctl_CFLAGS = \
949         $(AM_CFLAGS) \
950         $(DBUS_CFLAGS)
951
952 systemctl_LDADD = \
953         libsystemd-basic.la \
954         libsystemd-daemon.la \
955         $(DBUS_LIBS)
956
957 systemd_notify_SOURCES = \
958         src/notify.c \
959         src/readahead/sd-readahead.c
960
961 systemd_notify_LDADD = \
962         libsystemd-basic.la \
963         libsystemd-daemon.la
964
965 systemd_ask_password_SOURCES = \
966         src/ask-password.c \
967         src/ask-password-api.c
968
969 systemd_ask_password_LDADD = \
970         libsystemd-basic.la
971
972 systemd_reply_password_SOURCES = \
973         src/reply-password.c
974
975 systemd_reply_password_LDADD = \
976         libsystemd-basic.la
977
978 systemd_cgls_SOURCES = \
979         src/cgls.c \
980         src/cgroup-show.c \
981         src/cgroup-util.c \
982         src/pager.c
983
984 systemd_cgls_LDADD = \
985         libsystemd-basic.la
986
987 systemd_nspawn_SOURCES = \
988         src/nspawn.c \
989         src/cgroup-util.c \
990         src/loopback-setup.c
991
992 systemd_nspawn_LDADD = \
993         libsystemd-basic.la \
994         libsystemd-daemon.la
995
996 systemd_stdio_bridge_SOURCES = \
997         src/bridge.c
998
999 systemd_stdio_bridge_LDADD = \
1000         libsystemd-basic.la
1001
1002 systemadm_SOURCES = \
1003         src/systemadm.vala \
1004         src/systemd-interfaces.vala \
1005         src/wraplabel.vala
1006
1007 systemadm_CFLAGS = \
1008         $(AM_CFLAGS) \
1009         $(GTK_CFLAGS) \
1010         -Wno-unused-variable \
1011         -Wno-unused-function \
1012         -Wno-shadow \
1013         -Wno-format-nonliteral
1014
1015 systemadm_VALAFLAGS = \
1016         --pkg=posix \
1017         --pkg=gtk+-2.0 \
1018         --pkg=gee-1.0 \
1019         -g
1020
1021 systemadm_LDADD = \
1022         $(GTK_LIBS)
1023
1024 systemd_gnome_ask_password_agent_SOURCES = \
1025         src/gnome-ask-password-agent.vala
1026
1027 systemd_gnome_ask_password_agent_CFLAGS = \
1028         $(AM_CFLAGS) \
1029         $(LIBNOTIFY_CFLAGS) \
1030         $(GTK_CFLAGS) \
1031         -Wno-unused-variable \
1032         -Wno-unused-function \
1033         -Wno-shadow \
1034         -Wno-format-nonliteral
1035
1036 systemd_gnome_ask_password_agent_VALAFLAGS = \
1037         --pkg=posix \
1038         --pkg=gtk+-2.0 \
1039         --pkg=linux \
1040         --pkg=gio-unix-2.0 \
1041         --pkg=libnotify \
1042         -g
1043
1044 systemd_gnome_ask_password_agent_LDADD = \
1045         $(LIBNOTIFY_LIBS) \
1046         $(GTK_LIBS)
1047
1048 systemd_tty_ask_password_agent_SOURCES = \
1049         src/tty-ask-password-agent.c \
1050         src/ask-password-api.c \
1051         src/utmp-wtmp.c
1052
1053 systemd_tty_ask_password_agent_LDADD = \
1054         libsystemd-basic.la
1055
1056 # ------------------------------------------------------------------------------
1057 libsystemd_daemon_la_SOURCES = \
1058         src/sd-daemon.c
1059
1060 libsystemd_daemon_la_CFLAGS = \
1061         $(AM_CFLAGS) \
1062         -fvisibility=hidden \
1063         -DSD_EXPORT_SYMBOLS
1064
1065 libsystemd_daemon_la_LDFLAGS = \
1066         -shared \
1067         -version-info $(LIBSYSTEMD_DAEMON_CURRENT):$(LIBSYSTEMD_DAEMON_REVISION):$(LIBSYSTEMD_DAEMON_AGE) \
1068         -Wl,--version-script=$(top_srcdir)/src/libsystemd-daemon.sym
1069
1070 pkginclude_HEADERS += \
1071         src/sd-daemon.h
1072
1073 # move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
1074 libsystemd-daemon-install-hook:
1075         if test "$(libdir)" != "$(rootlibdir)"; then \
1076                 mkdir -p $(DESTDIR)$(rootlibdir) && \
1077                 so_img_name=$$(readlink $(DESTDIR)$(libdir)/libsystemd-daemon.so) && \
1078                 so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
1079                 ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libsystemd-daemon.so && \
1080                 mv $(DESTDIR)$(libdir)/libsystemd-daemon.so.* $(DESTDIR)$(rootlibdir); \
1081         fi
1082
1083 INSTALL_EXEC_HOOKS += \
1084         libsystemd-daemon-install-hook
1085
1086 libsystemd-daemon-uninstall-hook:
1087         rm -f $(DESTDIR)$(rootlibdir)/libsystemd-daemon.so*
1088
1089 UNINSTALL_EXEC_HOOKS += \
1090         libsystemd-daemon-uninstall-hook
1091
1092 lib_LTLIBRARIES += \
1093         libsystemd-daemon.la
1094
1095 pkgconfiglib_DATA += \
1096         libsystemd-daemon.pc
1097
1098 MANPAGES += \
1099         man/sd-daemon.7 \
1100         man/sd_notify.3 \
1101         man/sd_listen_fds.3 \
1102         man/sd_is_fifo.3 \
1103         man/sd_booted.3
1104
1105 MANPAGES_ALIAS += \
1106         man/sd_is_socket.3 \
1107         man/sd_is_socket_unix.3 \
1108         man/sd_is_socket_inet.3 \
1109         man/sd_is_mq.3 \
1110         man/sd_notifyf.3
1111
1112 man/sd_is_socket.3: man/sd_is_fifo.3
1113 man/sd_is_socket_unix.3: man/sd_is_fifo.3
1114 man/sd_is_socket_inet.3: man/sd_is_fifo.3
1115 man/sd_is_mq.3: man/sd_is_fifo.3
1116 man/sd_notifyf.3: man/sd_notify.3
1117
1118 EXTRA_DIST += \
1119         libsystemd-daemon.pc.in \
1120         src/libsystemd-daemon.sym
1121
1122 # ------------------------------------------------------------------------------
1123 libsystemd_id128_la_SOURCES = \
1124         src/sd-id128.c
1125
1126 libsystemd_id128_la_CFLAGS = \
1127         $(AM_CFLAGS) \
1128         -fvisibility=hidden
1129
1130 libsystemd_id128_la_LDFLAGS = \
1131         -shared \
1132         -version-info $(LIBSYSTEMD_ID128_CURRENT):$(LIBSYSTEMD_ID128_REVISION):$(LIBSYSTEMD_ID128_AGE) \
1133         -Wl,--version-script=$(top_srcdir)/src/libsystemd-id128.sym
1134
1135 libsystemd_id128_la_LIBADD = \
1136         libsystemd-basic.la
1137
1138 test_id128_SOURCES = \
1139         src/test-id128.c \
1140         src/sd-id128.c
1141
1142 test_id128_LDADD = \
1143         libsystemd-basic.la
1144
1145 noinst_PROGRAMS += \
1146         test-id128
1147
1148 pkginclude_HEADERS += \
1149         src/sd-id128.h
1150
1151 lib_LTLIBRARIES += \
1152         libsystemd-id128.la
1153
1154 pkgconfiglib_DATA += \
1155         libsystemd-id128.pc
1156
1157 # move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
1158 libsystemd-id128-install-hook:
1159         if test "$(libdir)" != "$(rootlibdir)"; then \
1160                 mkdir -p $(DESTDIR)$(rootlibdir) && \
1161                 so_img_name=$$(readlink $(DESTDIR)$(libdir)/libsystemd-id128.so) && \
1162                 so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
1163                 ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libsystemd-id128.so && \
1164                 mv $(DESTDIR)$(libdir)/libsystemd-id128.so.* $(DESTDIR)$(rootlibdir); \
1165         fi
1166
1167 INSTALL_EXEC_HOOKS += \
1168         libsystemd-id128-install-hook
1169
1170 libsystemd-id128-uninstall-hook:
1171         rm -f $(DESTDIR)$(rootlibdir)/libsystemd-id128.so*
1172
1173 UNINSTALL_EXEC_HOOKS += \
1174         libsystemd-id128-uninstall-hook
1175
1176 EXTRA_DIST += \
1177         libsystemd-id128.pc.in \
1178         src/libsystemd-id128.sym
1179
1180 # ------------------------------------------------------------------------------
1181 systemd_journald_SOURCES = \
1182         src/journal/journald.c \
1183         src/journal/sd-journal.c \
1184         src/journal/journal-file.c \
1185         src/journal/lookup3.c \
1186         src/journal/journal-rate-limit.c \
1187         src/sd-id128.c \
1188         src/acl-util.c \
1189         src/cgroup-util.c
1190
1191 systemd_journald_CFLAGS = \
1192         $(AM_CFLAGS) \
1193         $(ACL_CFLAGS)
1194
1195 systemd_journald_LDADD = \
1196         libsystemd-basic.la \
1197         libsystemd-daemon.la \
1198         $(ACL_LIBS)
1199
1200 if HAVE_XZ
1201 systemd_journald_SOURCES += \
1202         src/journal/compress.c
1203 systemd_journald_CFLAGS += \
1204         $(XZ_CFLAGS)
1205 systemd_journald_LDADD += \
1206         $(XZ_LIBS)
1207 endif
1208
1209 systemd_journalctl_SOURCES = \
1210         src/journal/journalctl.c \
1211         src/journal/sd-journal.c \
1212         src/journal/journal-file.c \
1213         src/journal/lookup3.c \
1214         src/sd-id128.c \
1215         src/pager.c
1216
1217 systemd_journalctl_LDADD = \
1218         libsystemd-basic.la
1219
1220 if HAVE_XZ
1221 systemd_journalctl_SOURCES += \
1222         src/journal/compress.c
1223 systemd_journalctl_CFLAGS = \
1224         $(XZ_CFLAGS)
1225 systemd_journalctl_LDADD += \
1226         $(XZ_LIBS)
1227 endif
1228
1229 test_journal_SOURCES = \
1230         src/journal/test-journal.c \
1231         src/journal/sd-journal.c \
1232         src/journal/journal-file.c \
1233         src/journal/lookup3.c \
1234         src/journal/journal-send.c \
1235         src/sd-id128.c
1236
1237 test_journal_LDADD = \
1238         libsystemd-basic.la
1239
1240 if HAVE_XZ
1241 test_journal_SOURCES += \
1242         src/journal/compress.c
1243
1244 test_journal_CFLAGS = \
1245         $(XZ_CFLAGS)
1246
1247 test_journal_LDADD += \
1248         $(XZ_LIBS)
1249 endif
1250
1251 libsystemd_journal_la_SOURCES = \
1252         src/journal/sd-journal.c \
1253         src/journal/journal-file.c \
1254         src/journal/compress.c \
1255         src/journal/lookup3.c \
1256         src/journal/journal-send.c
1257
1258 libsystemd_journal_la_CFLAGS = \
1259         $(AM_CFLAGS) \
1260         $(XZ_CFLAGS) \
1261         -fvisibility=hidden
1262
1263 libsystemd_journal_la_LDFLAGS = \
1264         -shared \
1265         -version-info $(LIBSYSTEMD_JOURNAL_CURRENT):$(LIBSYSTEMD_JOURNAL_REVISION):$(LIBSYSTEMD_JOURNAL_AGE) \
1266         -Wl,--version-script=$(top_srcdir)/src/journal/libsystemd-journal.sym
1267
1268 libsystemd_journal_la_LIBADD = \
1269         libsystemd-basic.la \
1270         libsystemd-id128.la \
1271         $(XZ_LIBS)
1272
1273 # move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
1274 libsystemd-journal-install-hook:
1275         if test "$(libdir)" != "$(rootlibdir)"; then \
1276                 mkdir -p $(DESTDIR)$(rootlibdir) && \
1277                 so_img_name=$$(readlink $(DESTDIR)$(libdir)/libsystemd-journal.so) && \
1278                 so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
1279                 ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libsystemd-journal.so && \
1280                 mv $(DESTDIR)$(libdir)/libsystemd-journal.so.* $(DESTDIR)$(rootlibdir); \
1281         fi
1282
1283 INSTALL_EXEC_HOOKS += \
1284         libsystemd-journal-install-hook
1285
1286 libsystemd-journal-uninstall-hook:
1287         rm -f $(DESTDIR)$(rootlibdir)/libsystemd-journal.so*
1288
1289 UNINSTALL_EXEC_HOOKS += \
1290         libsystemd-journal-uninstall-hook
1291
1292 noinst_PROGRAMS += \
1293         test-journal
1294
1295 pkginclude_HEADERS += \
1296         src/journal/sd-journal.h
1297
1298 lib_LTLIBRARIES += \
1299         libsystemd-journal.la
1300
1301 rootlibexec_PROGRAMS += \
1302         systemd-journald
1303
1304 rootbin_PROGRAMS += \
1305         systemd-journalctl
1306
1307 dist_systemunit_DATA += \
1308         units/systemd-journald.socket
1309
1310 nodist_systemunit_DATA += \
1311         units/systemd-journald.service
1312
1313 pkgconfiglib_DATA += \
1314         src/journal/libsystemd-journal.pc
1315
1316 journal-install-data-hook:
1317         ( cd $(DESTDIR)$(systemunitdir)/sockets.target.wants && \
1318                 rm -f systemd-journald.socket && \
1319                 $(LN_S) ../systemd-journald.socket )
1320
1321 INSTALL_DATA_HOOKS += \
1322         journal-install-data-hook
1323
1324 EXTRA_DIST += \
1325         src/journal/journal-def.h \
1326         src/journal/journal-internal.h \
1327         src/journal/journal-file.h \
1328         src/journal/lookup3.h \
1329         src/journal/compress.h \
1330         src/journal/journal-rate-limit.h \
1331         src/journal/libsystemd-journal.pc.in \
1332         src/journal/libsystemd-journal.sym \
1333         units/systemd-journald.service.in
1334
1335 # ------------------------------------------------------------------------------
1336 if ENABLE_BINFMT
1337 systemd_binfmt_SOURCES = \
1338         src/binfmt/binfmt.c
1339
1340 systemd_binfmt_LDADD = \
1341         libsystemd-basic.la
1342
1343 rootlibexec_PROGRAMS += \
1344         systemd-binfmt
1345
1346 dist_systemunit_DATA += \
1347         units/proc-sys-fs-binfmt_misc.automount \
1348         units/proc-sys-fs-binfmt_misc.mount
1349
1350 nodist_systemunit_DATA += \
1351         units/systemd-binfmt.service
1352
1353 binfmt-install-data-hook:
1354         $(MKDIR_P) -m 0755 \
1355                 $(DESTDIR)$(prefix)/lib/binfmt.d \
1356                 $(DESTDIR)$(sysconfdir)/binfmt.d
1357         ( cd $(DESTDIR)$(systemunitdir)/sysinit.target.wants && \
1358                 rm -f systemd-binfmt.service \
1359                         proc-sys-fs-binfmt_misc.automount && \
1360                 $(LN_S) ../systemd-binfmt.service systemd-binfmt.service && \
1361                 $(LN_S) ../proc-sys-fs-binfmt_misc.automount proc-sys-fs-binfmt_misc.automount )
1362
1363 INSTALL_DATA_HOOKS += \
1364         binfmt-install-data-hook
1365
1366 MANPAGES += \
1367         man/binfmt.d.5
1368
1369 EXTRA_DIST += \
1370         units/systemd-binfmt.service.in
1371 endif
1372
1373 # ------------------------------------------------------------------------------
1374 if ENABLE_VCONSOLE
1375 systemd_vconsole_setup_SOURCES = \
1376         src/vconsole/vconsole-setup.c
1377
1378 systemd_vconsole_setup_LDADD = \
1379         libsystemd-basic.la
1380
1381 rootlibexec_PROGRAMS += \
1382         systemd-vconsole-setup
1383
1384 nodist_systemunit_DATA += \
1385         units/systemd-vconsole-setup.service
1386
1387 vconsole-install-data-hook:
1388         ( cd $(DESTDIR)$(systemunitdir)/sysinit.target.wants && \
1389                 rm -f systemd-vconsole-setup.service && \
1390                 $(LN_S) ../systemd-vconsole-setup.service systemd-vconsole-setup.service )
1391
1392 INSTALL_DATA_HOOKS += \
1393         vconsole-install-data-hook
1394
1395 MANPAGES += \
1396         man/vconsole.conf.5
1397
1398 EXTRA_DIST += \
1399         units/systemd-vconsole-setup.service.in
1400 endif
1401
1402 # ------------------------------------------------------------------------------
1403 if ENABLE_READAHEAD
1404 systemd_readahead_collect_SOURCES = \
1405         src/readahead/readahead-collect.c \
1406         src/readahead/readahead-common.c
1407
1408 systemd_readahead_collect_LDADD = \
1409         libsystemd-basic.la \
1410         libsystemd-daemon.la \
1411         $(UDEV_LIBS)
1412
1413 systemd_readahead_collect_CFLAGS = \
1414         $(AM_CFLAGS) \
1415         $(UDEV_CFLAGS)
1416
1417 systemd_readahead_replay_SOURCES = \
1418         src/readahead/readahead-replay.c \
1419         src/readahead/readahead-common.c
1420
1421 systemd_readahead_replay_CFLAGS = \
1422         $(AM_CFLAGS) \
1423         $(UDEV_CFLAGS)
1424
1425 systemd_readahead_replay_LDADD = \
1426         libsystemd-basic.la \
1427         libsystemd-daemon.la \
1428         $(UDEV_LIBS)
1429
1430 rootlibexec_PROGRAMS += \
1431         systemd-readahead-collect \
1432         systemd-readahead-replay
1433
1434 dist_systemunit_DATA += \
1435         units/systemd-readahead-done.timer
1436
1437 nodist_systemunit_DATA += \
1438         units/systemd-readahead-collect.service \
1439         units/systemd-readahead-replay.service \
1440         units/systemd-readahead-done.service
1441
1442 EXTRA_DIST += \
1443         src/readahead/sd-readahead.h \
1444         src/readahead/readahead-common.h \
1445         units/systemd-readahead-collect.service.in \
1446         units/systemd-readahead-replay.service.in \
1447         units/systemd-readahead-done.service.in
1448
1449 MANPAGES += \
1450         man/sd_readahead.3 \
1451         man/sd-readahead.7
1452 endif
1453
1454 # ------------------------------------------------------------------------------
1455 if HAVE_LIBCRYPTSETUP
1456 rootlibexec_PROGRAMS += \
1457         systemd-cryptsetup
1458
1459 systemgenerator_PROGRAMS += \
1460         systemd-cryptsetup-generator
1461
1462 dist_systemunit_DATA += \
1463         units/cryptsetup.target
1464
1465 systemd_cryptsetup_SOURCES = \
1466         src/cryptsetup/cryptsetup.c \
1467         src/ask-password-api.c
1468
1469 systemd_cryptsetup_CFLAGS = \
1470         $(AM_CFLAGS) \
1471         $(LIBCRYPTSETUP_CFLAGS) \
1472         $(UDEV_CFLAGS)
1473
1474 systemd_cryptsetup_LDADD = \
1475         $(LIBCRYPTSETUP_LIBS) \
1476         $(UDEV_LIBS) \
1477         libsystemd-basic.la
1478
1479 systemd_cryptsetup_generator_SOURCES = \
1480         src/cryptsetup/cryptsetup-generator.c \
1481         src/unit-name.c
1482
1483 systemd_cryptsetup_generator_LDADD = \
1484         libsystemd-basic.la
1485
1486 cryptsetup-install-data-hook:
1487         ( cd $(DESTDIR)$(systemunitdir)/sysinit.target.wants && \
1488                 rm -f cryptsetup.target && \
1489                 $(LN_S) ../cryptsetup.target cryptsetup.target )
1490
1491 INSTALL_DATA_HOOKS += \
1492         cryptsetup-install-data-hook
1493 endif
1494
1495 # ------------------------------------------------------------------------------
1496 if ENABLE_HOSTNAMED
1497 systemd_hostnamed_SOURCES = \
1498         src/hostname/hostnamed.c \
1499         src/dbus-common.c \
1500         src/polkit.c
1501
1502 systemd_hostnamed_CFLAGS = \
1503         $(AM_CFLAGS) \
1504         $(DBUS_CFLAGS)
1505
1506 systemd_hostnamed_LDADD = \
1507         libsystemd-basic.la \
1508         libsystemd-daemon.la \
1509         $(DBUS_LIBS)
1510
1511 rootlibexec_PROGRAMS += \
1512         systemd-hostnamed
1513
1514 nodist_systemunit_DATA += \
1515         units/systemd-hostnamed.service
1516
1517 dist_dbuspolicy_DATA += \
1518         src/hostname/org.freedesktop.hostname1.conf
1519
1520 dist_dbussystemservice_DATA += \
1521         src/hostname/org.freedesktop.hostname1.service
1522
1523 polkitpolicy_in_files += \
1524         src/hostname/org.freedesktop.hostname1.policy.in
1525
1526 dbusinterface_DATA += \
1527         org.freedesktop.hostname1.xml
1528
1529 org.freedesktop.hostname1.xml: systemd-hostnamed
1530         $(AM_V_GEN)$(LIBTOOL) --mode=execute $(OBJCOPY) -O binary -j introspect.hostname1 $< $@.tmp && \
1531                 $(STRINGS) $@.tmp | $(AWK) -f $(srcdir)/introspect.awk | \
1532                 $(DBUS_PREPROCESS) -o $@ - && rm $@.tmp
1533
1534 hostnamed-install-data-hook:
1535         ( cd $(DESTDIR)$(systemunitdir) && \
1536                 rm -f dbus-org.freedesktop.hostname1.service && \
1537                 $(LN_S) systemd-hostnamed.service dbus-org.freedesktop.hostname1.service )
1538
1539 INSTALL_DATA_HOOKS += \
1540         hostnamed-install-data-hook
1541
1542 EXTRA_DIST += \
1543         units/systemd-hostnamed.service.in
1544 endif
1545
1546 # ------------------------------------------------------------------------------
1547 if ENABLE_LOCALED
1548 systemd_localed_SOURCES = \
1549         src/locale/localed.c \
1550         src/dbus-common.c \
1551         src/polkit.c
1552
1553 systemd_localed_CFLAGS = \
1554         $(AM_CFLAGS) \
1555         $(DBUS_CFLAGS)
1556
1557 systemd_localed_LDADD = \
1558         libsystemd-basic.la \
1559         libsystemd-daemon.la \
1560         $(DBUS_LIBS)
1561
1562 nodist_systemunit_DATA += \
1563         units/systemd-localed.service
1564
1565 rootlibexec_PROGRAMS += \
1566         systemd-localed
1567
1568 dist_dbuspolicy_DATA += \
1569         src/locale/org.freedesktop.locale1.conf
1570
1571 dist_dbussystemservice_DATA += \
1572         src/locale/org.freedesktop.locale1.service
1573
1574 polkitpolicy_in_files += \
1575         src/locale/org.freedesktop.locale1.policy.in
1576
1577 dbusinterface_DATA += \
1578         org.freedesktop.locale1.xml
1579
1580 org.freedesktop.locale1.xml: systemd-localed
1581         $(AM_V_GEN)$(LIBTOOL) --mode=execute $(OBJCOPY) -O binary -j introspect.locale1 $< $@.tmp && \
1582                 $(STRINGS) $@.tmp | $(AWK) -f $(srcdir)/introspect.awk | \
1583                 $(DBUS_PREPROCESS) -o $@ - && rm $@.tmp
1584
1585 localed-install-data-hook:
1586         ( cd $(DESTDIR)$(systemunitdir) && \
1587                 rm -f dbus-org.freedesktop.locale1.service && \
1588                 $(LN_S) systemd-localed.service dbus-org.freedesktop.locale1.service )
1589
1590 INSTALL_DATA_HOOKS += \
1591         localed-install-data-hook
1592
1593 EXTRA_DIST += \
1594         units/systemd-localed.service.in
1595
1596 dist_pkgdata_DATA = \
1597         src/locale/kbd-model-map
1598
1599 dist_noinst_SCRIPT = \
1600         src/locale/generate-kbd-model-map
1601
1602 update-kbd-model-map:
1603         src/locale/generate-kbd-model-map > src/locale/kbd-model-map
1604
1605 endif
1606
1607 # ------------------------------------------------------------------------------
1608 if ENABLE_TIMEDATED
1609 systemd_timedated_SOURCES = \
1610         src/timedate/timedated.c \
1611         src/dbus-common.c \
1612         src/polkit.c
1613
1614 systemd_timedated_CFLAGS = \
1615         $(AM_CFLAGS) \
1616         $(DBUS_CFLAGS)
1617
1618 systemd_timedated_LDADD = \
1619         libsystemd-basic.la \
1620         libsystemd-daemon.la \
1621         $(DBUS_LIBS)
1622
1623 rootlibexec_PROGRAMS += \
1624         systemd-timedated
1625
1626 dist_dbussystemservice_DATA += \
1627         src/timedate/org.freedesktop.timedate1.service
1628
1629 dist_dbuspolicy_DATA += \
1630         src/timedate/org.freedesktop.timedate1.conf
1631
1632 nodist_systemunit_DATA += \
1633         units/systemd-timedated.service
1634
1635 polkitpolicy_in_files += \
1636         src/timedate/org.freedesktop.timedate1.policy.in
1637
1638 org.freedesktop.timedate1.xml: systemd-timedated
1639         $(AM_V_GEN)$(LIBTOOL) --mode=execute $(OBJCOPY) -O binary -j introspect.timedate1 $< $@.tmp && \
1640                 $(STRINGS) $@.tmp | $(AWK) -f $(srcdir)/introspect.awk | \
1641                 $(DBUS_PREPROCESS) -o $@ - && rm $@.tmp
1642
1643 dbusinterface_DATA += \
1644         org.freedesktop.timedate1.xml
1645
1646 timedated-install-data-hook:
1647         ( cd $(DESTDIR)$(systemunitdir) && \
1648                 rm -f dbus-org.freedesktop.timedate1.service  && \
1649                 $(LN_S) systemd-timedated.service dbus-org.freedesktop.timedate1.service )
1650
1651 INSTALL_DATA_HOOKS += \
1652         timedated-install-data-hook
1653
1654 EXTRA_DIST += \
1655         units/systemd-timedated.service.in
1656 endif
1657
1658 # ------------------------------------------------------------------------------
1659 if ENABLE_LOGIND
1660 systemd_logind_SOURCES = \
1661         src/login/logind.c \
1662         src/login/logind-dbus.c \
1663         src/login/logind-device.c \
1664         src/login/logind-seat.c \
1665         src/login/logind-seat-dbus.c \
1666         src/login/logind-session.c \
1667         src/login/logind-session-dbus.c \
1668         src/login/logind-user.c \
1669         src/login/logind-user-dbus.c \
1670         src/dbus-common.c \
1671         src/dbus-loop.c \
1672         src/cgroup-util.c \
1673         src/polkit.c
1674
1675 nodist_systemd_logind_SOURCES = \
1676         src/login/logind-gperf.c
1677
1678 if HAVE_ACL
1679 systemd_logind_SOURCES += \
1680         src/login/logind-acl.c \
1681         src/acl-util.c
1682 endif
1683
1684 systemd_logind_CFLAGS = \
1685         $(AM_CFLAGS) \
1686         $(DBUS_CFLAGS) \
1687         $(UDEV_CFLAGS) \
1688         $(ACL_CFLAGS)
1689
1690 systemd_logind_LDADD = \
1691         libsystemd-basic.la \
1692         libsystemd-daemon.la \
1693         $(DBUS_LIBS) \
1694         $(UDEV_LIBS) \
1695         $(ACL_LIBS)
1696
1697 systemd_user_sessions_SOURCES = \
1698         src/login/user-sessions.c \
1699         src/cgroup-util.c
1700
1701 systemd_user_sessions_LDADD = \
1702         libsystemd-basic.la
1703
1704 rootlibexec_PROGRAMS += \
1705         systemd-logind \
1706         systemd-user-sessions
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         units/systemd-user-sessions.service
1805
1806 dist_dbussystemservice_DATA += \
1807         src/login/org.freedesktop.login1.service
1808
1809 dist_dbuspolicy_DATA += \
1810         src/login/org.freedesktop.login1.conf
1811
1812 dist_pkgsysconf_DATA += \
1813         src/login/systemd-logind.conf
1814
1815 pkginclude_HEADERS += \
1816         src/login/sd-login.h
1817
1818 lib_LTLIBRARIES += \
1819         libsystemd-login.la
1820
1821 pkgconfiglib_DATA += \
1822         src/login/libsystemd-login.pc
1823
1824 polkitpolicy_in_files += \
1825         src/login/org.freedesktop.login1.policy.in
1826
1827 logind-install-data-hook:
1828         ( cd $(DESTDIR)$(systemunitdir) && \
1829                 rm -f dbus-org.freedesktop.login1.service && \
1830                 $(LN_S) systemd-logind.service dbus-org.freedesktop.login1.service)
1831         ( cd $(DESTDIR)$(systemunitdir)/multi-user.target.wants && \
1832                 rm -f systemd-logind.service systemd-user-sessions.service && \
1833                 $(LN_S) ../systemd-logind.service systemd-logind.service && \
1834                 $(LN_S) ../systemd-user-sessions.service systemd-user-sessions.service )
1835
1836 INSTALL_DATA_HOOKS += \
1837         logind-install-data-hook
1838
1839 systemd_uaccess_SOURCES = \
1840         src/login/uaccess.c
1841
1842 if HAVE_ACL
1843 systemd_uaccess_SOURCES += \
1844         src/login/logind-acl.c \
1845         src/acl-util.c
1846 endif
1847
1848 systemd_uaccess_CFLAGS = \
1849         $(AM_CFLAGS) \
1850         $(UDEV_CFLAGS) \
1851         $(ACL_CFLAGS)
1852
1853 systemd_uaccess_LDADD = \
1854         libsystemd-basic.la \
1855         libsystemd-daemon.la \
1856         libsystemd-login.la \
1857         $(UDEV_LIBS) \
1858         $(ACL_LIBS)
1859
1860 rootlibexec_PROGRAMS += \
1861         systemd-uaccess
1862
1863 dist_udevrules_DATA += \
1864         src/70-uaccess.rules
1865
1866 MANPAGES += \
1867         man/systemd-logind.conf.5 \
1868         man/sd-login.7 \
1869         man/systemd-loginctl.1 \
1870         man/sd_login_monitor_new.3 \
1871         man/sd_pid_get_session.3 \
1872         man/sd_uid_get_state.3 \
1873         man/sd_session_is_active.3 \
1874         man/sd_seat_get_active.3 \
1875         man/sd_get_seats.3
1876
1877 MANPAGES_ALIAS += \
1878         man/sd_login_monitor_unref.3 \
1879         man/sd_login_monitor_flush.3 \
1880         man/sd_login_monitor_get_fd.3 \
1881         man/sd_session_get_uid.3 \
1882         man/sd_session_get_seat.3 \
1883         man/sd_pid_get_owner_uid.3 \
1884         man/sd_uid_is_on_seat.3 \
1885         man/sd_uid_get_sessions.3 \
1886         man/sd_uid_get_seats.3 \
1887         man/sd_seat_get_sessions.3 \
1888         man/sd_seat_can_multi_session.3 \
1889         man/sd_get_sessions.3 \
1890         man/sd_get_uids.3
1891
1892 man/sd_login_monitor_unref.3: man/sd_login_monitor_new.3
1893 man/sd_login_monitor_flush.3: man/sd_login_monitor_new.3
1894 man/sd_login_monitor_get_fd.3: man/sd_login_monitor_new.3
1895 man/sd_session_get_uid.3: man/sd_session_is_active.3
1896 man/sd_session_get_seat.3: man/sd_session_is_active.3
1897 man/sd_pid_get_owner_uid.3: man/sd_pid_get_session.3
1898 man/sd_uid_is_on_seat.3: man/sd_uid_get_state.3
1899 man/sd_uid_get_sessions.3: man/sd_uid_get_state.3
1900 man/sd_uid_get_seats.3: man/sd_uid_get_state.3
1901 man/sd_seat_get_sessions.3: man/sd_seat_get_active.3
1902 man/sd_seat_can_multi_session.3: man/sd_seat_get_active.3
1903 man/sd_get_sessions.3: man/sd_get_seats.3
1904 man/sd_get_uids.3: man/sd_get_seats.3
1905
1906 EXTRA_DIST += \
1907         src/login/logind-gperf.gperf \
1908         units/systemd-logind.service.in \
1909         units/systemd-user-sessions.service.in \
1910         src/login/libsystemd-login.pc.in \
1911         src/login/libsystemd-login.sym \
1912         src/login/logind.h \
1913         src/login/logind-device.h \
1914         src/login/logind-seat.h \
1915         src/login/logind-session.h \
1916         src/login/logind-user.h \
1917         src/login/logind-acl.h
1918
1919 CLEANFILES += \
1920         src/login/logind-gperf.c
1921 endif
1922 # ------------------------------------------------------------------------------
1923
1924 SED_PROCESS = \
1925         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
1926         $(SED)  -e 's,@rootlibexecdir\@,$(rootlibexecdir),g' \
1927                 -e 's,@rootbindir\@,$(rootbindir),g' \
1928                 -e 's,@bindir\@,$(bindir),g' \
1929                 -e 's,@SYSTEMCTL\@,$(rootbindir)/systemctl,g' \
1930                 -e 's,@SYSTEMD_NOTIFY\@,$(rootbindir)/systemd-notify,g' \
1931                 -e 's,@pkgsysconfdir\@,$(pkgsysconfdir),g' \
1932                 -e 's,@pkgdatadir\@,$(pkgdatadir),g' \
1933                 -e 's,@pkglibexecdir\@,$(pkglibexecdir),g' \
1934                 -e 's,@systemunitdir\@,$(systemunitdir),g' \
1935                 -e 's,@userunitdir\@,$(userunitdir),g' \
1936                 -e 's,@PACKAGE_VERSION\@,$(PACKAGE_VERSION),g' \
1937                 -e 's,@PACKAGE_NAME\@,$(PACKAGE_NAME),g' \
1938                 -e 's,@PACKAGE_URL\@,$(PACKAGE_URL),g' \
1939                 -e 's,@prefix\@,$(prefix),g' \
1940                 -e 's,@exec_prefix\@,$(exec_prefix),g' \
1941                 -e 's,@libdir\@,$(libdir),g' \
1942                 -e 's,@includedir\@,$(includedir),g' \
1943                 < $< > $@ || rm $@
1944
1945 units/%: units/%.in Makefile
1946         $(SED_PROCESS)
1947
1948 man/%: man/%.in Makefile
1949         $(SED_PROCESS)
1950
1951 %.pc: %.pc.in Makefile
1952         $(SED_PROCESS)
1953
1954 src/%.policy.in: src/%.policy.in.in Makefile
1955         $(SED_PROCESS)
1956
1957 src/%.rules: src/%.rules.in Makefile
1958         $(SED_PROCESS)
1959
1960 src/%.c: src/%.gperf
1961         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
1962         $(GPERF) < $< > $@
1963
1964 src/%: src/%.m4
1965         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
1966         $(M4) -P $(M4_DEFINES) < $< > $@ || rm $@
1967
1968 src/load-fragment-gperf-nulstr.c: src/load-fragment-gperf.gperf
1969         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
1970         $(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 $@
1971
1972 M4_PROCESS_SYSTEM = \
1973         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
1974         $(M4) -P $(M4_DEFINES) -DFOR_SYSTEM=1 < $< > $@ || rm $@
1975
1976 M4_PROCESS_USER = \
1977         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
1978         $(M4) -P $(M4_DEFINES) -DFOR_USER=1 < $< > $@ || rm $@
1979
1980 units/%: units/%.m4 Makefile
1981         $(M4_PROCESS_SYSTEM)
1982
1983 units/user/%: units/%.m4 Makefile
1984         $(M4_PROCESS_USER)
1985
1986 CLEANFILES += \
1987         $(nodist_systemunit_DATA) \
1988         $(nodist_userunit_DATA) \
1989         $(nodist_man_MANS) \
1990         ${XML_IN_FILES:.xml.in=.html} \
1991         $(pkgconfigdata_DATA) \
1992         $(pkgconfiglib_DATA) \
1993         $(nodist_polkitpolicy_DATA) \
1994         src/73-seat-late.rules \
1995         src/99-systemd.rules \
1996         src/load-fragment-gperf.gperf \
1997         src/load-fragment-gperf.c \
1998         src/load-fragment-gperf-nulstr.c
1999
2000 if HAVE_VALAC
2001 CLEANFILES += \
2002         ${systemadm_SOURCES:.vala=.c}
2003 endif
2004
2005 if HAVE_XSLTPROC
2006 XSLTPROC_FLAGS = \
2007         --nonet \
2008         --stringparam funcsynopsis.style ansi
2009
2010 XSLTPROC_PROCESS_MAN = \
2011         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
2012         $(XSLTPROC) -o $@ $(XSLTPROC_FLAGS) http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $<
2013
2014 XSLTPROC_PROCESS_MAN_IN = \
2015         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
2016         $(XSLTPROC) -o ${@:.in=} $(XSLTPROC_FLAGS) http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $< && \
2017         mv ${@:.in=} $@
2018
2019 XSLTPROC_PROCESS_HTML = \
2020         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
2021         $(XSLTPROC) -o $@ $(XSLTPROC_FLAGS) man/custom-html.xsl $<
2022
2023 XSLTPROC_PROCESS_HTML_IN = \
2024         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
2025         $(XSLTPROC) -o ${@:.in=} $(XSLTPROC_FLAGS) man/custom-html.xsl $< && \
2026         mv ${@:.in=} $@
2027
2028 man/%.1: man/%.xml
2029         $(XSLTPROC_PROCESS_MAN)
2030
2031 man/%.1.in: man/%.xml.in
2032         $(XSLTPROC_PROCESS_MAN)
2033
2034 man/%.3: man/%.xml
2035         $(XSLTPROC_PROCESS_MAN)
2036
2037 man/%.3.in: man/%.xml.in
2038         $(XSLTPROC_PROCESS_MAN)
2039
2040 man/%.5: man/%.xml
2041         $(XSLTPROC_PROCESS_MAN)
2042
2043 man/%.5.in: man/%.xml.in
2044         $(XSLTPROC_PROCESS_MAN)
2045
2046 man/%.7: man/%.xml
2047         $(XSLTPROC_PROCESS_MAN)
2048
2049 man/%.7.in: man/%.xml.in
2050         $(XSLTPROC_PROCESS_MAN_IN)
2051
2052 man/%.8: man/%.xml
2053         $(XSLTPROC_PROCESS_MAN)
2054
2055 man/%.8.in: man/%.xml.in
2056         $(XSLTPROC_PROCESS_MAN_IN)
2057
2058 man/%.html: man/%.xml
2059         $(XSLTPROC_PROCESS_HTML)
2060
2061 man/%.html.in: man/%.xml.in
2062         $(XSLTPROC_PROCESS_HTML_IN)
2063
2064 CLEANFILES += \
2065         $(dist_man_MANS) \
2066         ${nodist_man_MANS:=.in} \
2067         ${XML_FILES:.xml=.html} \
2068         ${XML_IN_FILES:.xml.in=.html.in}
2069 endif
2070
2071 DBUS_PREPROCESS = $(CPP) -P $(DBUS_CFLAGS) -imacros dbus/dbus-protocol.h
2072
2073 org.freedesktop.systemd1.%.xml: systemd
2074         $(AM_V_GEN)$(LIBTOOL) --mode=execute $(OBJCOPY) -O binary -j introspect.$* $< $@.tmp && \
2075                 $(STRINGS) $@.tmp | $(AWK) -f $(srcdir)/introspect.awk | \
2076                 $(DBUS_PREPROCESS) -o $@ - && rm $@.tmp
2077
2078 CLEANFILES += \
2079         $(dbusinterface_DATA)
2080
2081 systemd-install-data-hook:
2082         $(MKDIR_P) -m 0755 \
2083                 $(DESTDIR)$(tmpfilesdir) \
2084                 $(DESTDIR)$(sysconfdir)/tmpfiles.d \
2085                 $(DESTDIR)$(prefix)/lib/modules-load.d \
2086                 $(DESTDIR)$(sysconfdir)/modules-load.d \
2087                 $(DESTDIR)$(prefix)/lib/sysctl.d \
2088                 $(DESTDIR)$(sysconfdir)/sysctl.d \
2089                 $(DESTDIR)$(systemshutdowndir) \
2090                 $(DESTDIR)$(systemgeneratordir) \
2091                 $(DESTDIR)$(usergeneratordir)
2092         $(MKDIR_P) -m 0755 \
2093                 $(DESTDIR)$(systemunitdir) \
2094                 $(DESTDIR)$(userunitdir) \
2095                 $(DESTDIR)$(systemunitdir)/sysinit.target.wants \
2096                 $(DESTDIR)$(systemunitdir)/sockets.target.wants \
2097                 $(DESTDIR)$(systemunitdir)/basic.target.wants \
2098                 $(DESTDIR)$(systemunitdir)/shutdown.target.wants \
2099                 $(DESTDIR)$(systemunitdir)/local-fs.target.wants \
2100                 $(DESTDIR)$(systemunitdir)/runlevel1.target.wants \
2101                 $(DESTDIR)$(systemunitdir)/runlevel2.target.wants \
2102                 $(DESTDIR)$(systemunitdir)/runlevel3.target.wants \
2103                 $(DESTDIR)$(systemunitdir)/runlevel4.target.wants \
2104                 $(DESTDIR)$(systemunitdir)/runlevel5.target.wants \
2105                 $(DESTDIR)$(systemunitdir)/multi-user.target.wants \
2106                 $(DESTDIR)$(systemunitdir)/graphical.target.wants \
2107                 $(DESTDIR)$(pkgsysconfdir)/system \
2108                 $(DESTDIR)$(pkgsysconfdir)/system/sysinit.target.wants \
2109                 $(DESTDIR)$(pkgsysconfdir)/system/local-fs.target.wants \
2110                 $(DESTDIR)$(pkgsysconfdir)/system/multi-user.target.wants \
2111                 $(DESTDIR)$(pkgsysconfdir)/system/getty.target.wants \
2112                 $(DESTDIR)$(pkgsysconfdir)/user \
2113                 $(DESTDIR)$(dbussessionservicedir) \
2114                 $(DESTDIR)$(sysconfdir)/xdg/systemd
2115         ( cd $(DESTDIR)$(sysconfdir)/xdg/systemd/ && \
2116                 rm -f user && \
2117                 $(LN_S) $(pkgsysconfdir)/user user )
2118         ( cd $(DESTDIR)$(systemunitdir)/sockets.target.wants && \
2119                 rm -f systemd-initctl.socket systemd-stdout-syslog-bridge.socket systemd-shutdownd.socket syslog.socket && \
2120                 $(LN_S) ../systemd-stdout-syslog-bridge.socket systemd-stdout-syslog-bridge.socket && \
2121                 $(LN_S) ../systemd-initctl.socket systemd-initctl.socket && \
2122                 $(LN_S) ../systemd-shutdownd.socket systemd-shutdownd.socket && \
2123                 $(LN_S) ../syslog.socket syslog.socket )
2124         ( cd $(DESTDIR)$(systemunitdir)/runlevel1.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)/runlevel2.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)/runlevel3.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)/runlevel4.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)/runlevel5.target.wants && \
2137                 rm -f systemd-update-utmp-runlevel.service && \
2138                 $(LN_S) ../systemd-update-utmp-runlevel.service systemd-update-utmp-runlevel.service )
2139         ( cd $(DESTDIR)$(systemunitdir)/shutdown.target.wants && \
2140                 rm -f systemd-update-utmp-shutdown.service \
2141                         systemd-random-seed-save.service && \
2142                 $(LN_S) ../systemd-update-utmp-shutdown.service systemd-update-utmp-shutdown.service && \
2143                 $(LN_S) ../systemd-random-seed-save.service systemd-random-seed-save.service )
2144         ( cd $(DESTDIR)$(systemunitdir)/local-fs.target.wants && \
2145                 rm -f systemd-remount-api-vfs.service \
2146                         fsck-root.service \
2147                         remount-rootfs.service \
2148                         var-run.mount \
2149                         media.mount && \
2150                 $(LN_S) ../systemd-remount-api-vfs.service systemd-remount-api-vfs.service && \
2151                 $(LN_S) ../fsck-root.service fsck-root.service && \
2152                 $(LN_S) ../remount-rootfs.service remount-rootfs.service && \
2153                 $(LN_S) ../var-run.mount var-run.mount && \
2154                 $(LN_S) ../media.mount media.mount )
2155         ( cd $(DESTDIR)$(userunitdir) && \
2156                 rm -f shutdown.target sockets.target bluetooth.target printer.target sound.target && \
2157                 $(LN_S) $(systemunitdir)/shutdown.target shutdown.target && \
2158                 $(LN_S) $(systemunitdir)/sockets.target sockets.target && \
2159                 $(LN_S) $(systemunitdir)/bluetooth.target bluetooth.target && \
2160                 $(LN_S) $(systemunitdir)/printer.target printer.target && \
2161                 $(LN_S) $(systemunitdir)/sound.target sound.target )
2162         ( cd $(DESTDIR)$(systemunitdir) && \
2163                 rm -f runlevel0.target runlevel1.target runlevel2.target runlevel3.target runlevel4.target runlevel5.target runlevel6.target && \
2164                 $(LN_S) poweroff.target runlevel0.target && \
2165                 $(LN_S) rescue.target runlevel1.target && \
2166                 $(LN_S) multi-user.target runlevel2.target && \
2167                 $(LN_S) multi-user.target runlevel3.target && \
2168                 $(LN_S) multi-user.target runlevel4.target && \
2169                 $(LN_S) graphical.target runlevel5.target && \
2170                 $(LN_S) reboot.target runlevel6.target )
2171         ( cd $(DESTDIR)$(systemunitdir) && \
2172                 rm -f default.target ctrl-alt-del.target autovt@.service && \
2173                 $(LN_S) graphical.target default.target && \
2174                 $(LN_S) reboot.target ctrl-alt-del.target && \
2175                 $(LN_S) getty@.service autovt@.service )
2176         ( cd $(DESTDIR)$(systemunitdir)/multi-user.target.wants && \
2177                 rm -f getty.target systemd-ask-password-wall.path && \
2178                 $(LN_S) ../getty.target getty.target && \
2179                 $(LN_S) ../systemd-ask-password-wall.path systemd-ask-password-wall.path)
2180         ( cd $(DESTDIR)$(pkgsysconfdir)/system/getty.target.wants && \
2181                 rm -f getty@tty1.service && \
2182                 $(LN_S) $(systemunitdir)/getty@.service getty@tty1.service )
2183         ( cd $(DESTDIR)$(pkgsysconfdir)/system/multi-user.target.wants && \
2184                 rm -f remote-fs.target && \
2185                 $(LN_S) $(systemunitdir)/remote-fs.target remote-fs.target )
2186         ( cd $(DESTDIR)$(systemunitdir)/sysinit.target.wants && \
2187                 rm -f dev-hugepages.mount \
2188                         dev-mqueue.mount \
2189                         sys-kernel-config.mount \
2190                         sys-kernel-debug.mount \
2191                         sys-kernel-security.mount \
2192                         sys-fs-fuse-connections.mount \
2193                         systemd-modules-load.service \
2194                         systemd-random-seed-load.service \
2195                         systemd-tmpfiles-setup.service \
2196                         systemd-sysctl.service \
2197                         systemd-ask-password-console.path \
2198                         systemd-kmsg-syslogd.service && \
2199                 $(LN_S) ../dev-hugepages.mount dev-hugepages.mount && \
2200                 $(LN_S) ../dev-mqueue.mount dev-mqueue.mount && \
2201                 $(LN_S) ../sys-kernel-config.mount sys-kernel-config.mount && \
2202                 $(LN_S) ../sys-kernel-debug.mount sys-kernel-debug.mount && \
2203                 $(LN_S) ../sys-kernel-security.mount sys-kernel-security.mount && \
2204                 $(LN_S) ../sys-fs-fuse-connections.mount sys-fs-fuse-connections.mount && \
2205                 $(LN_S) ../systemd-modules-load.service systemd-modules-load.service && \
2206                 $(LN_S) ../systemd-random-seed-load.service systemd-random-seed-load.service && \
2207                 $(LN_S) ../systemd-tmpfiles-setup.service systemd-tmpfiles-setup.service && \
2208                 $(LN_S) ../systemd-sysctl.service systemd-sysctl.service && \
2209                 $(LN_S) ../systemd-ask-password-console.path systemd-ask-password-console.path && \
2210                 $(LN_S) ../systemd-kmsg-syslogd.service )
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)"