chiark / gitweb /
ca676e588e0e0db46028c877aaddd87f0b2fcd43
[elogind.git] / Makefile.am
1 #  -*- Mode: makefile; indent-tabs-mode: t -*- */
2 #
3 #  This file is part of systemd.
4 #
5 #  Copyright 2010-2012 Lennart Poettering
6 #  Copyright 2010-2012 Kay Sievers
7 #
8 #  systemd is free software; you can redistribute it and/or modify it
9 #  under the terms of the GNU Lesser General Public License as published by
10 #  the Free Software Foundation; either version 2.1 of the License, or
11 #  (at your option) any later version.
12 #
13 #  systemd is distributed in the hope that it will be useful, but
14 #  WITHOUT ANY WARRANTY; without even the implied warranty of
15 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 #  Lesser General Public License for more details.
17 #
18 #  You should have received a copy of the GNU Lesser General Public License
19 #  along with systemd; If not, see <http://www.gnu.org/licenses/>.
20
21 ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
22 AM_MAKEFLAGS = --no-print-directory
23
24 SUBDIRS = . po
25
26 LIBUDEV_CURRENT=1
27 LIBUDEV_REVISION=1
28 LIBUDEV_AGE=0
29
30 LIBGUDEV_CURRENT=1
31 LIBGUDEV_REVISION=2
32 LIBGUDEV_AGE=1
33
34 LIBSYSTEMD_LOGIN_CURRENT=2
35 LIBSYSTEMD_LOGIN_REVISION=4
36 LIBSYSTEMD_LOGIN_AGE=2
37
38 LIBSYSTEMD_DAEMON_CURRENT=0
39 LIBSYSTEMD_DAEMON_REVISION=2
40 LIBSYSTEMD_DAEMON_AGE=0
41
42 LIBSYSTEMD_ID128_CURRENT=0
43 LIBSYSTEMD_ID128_REVISION=5
44 LIBSYSTEMD_ID128_AGE=0
45
46 LIBSYSTEMD_JOURNAL_CURRENT=1
47 LIBSYSTEMD_JOURNAL_REVISION=1
48 LIBSYSTEMD_JOURNAL_AGE=1
49
50 # Dirs of external packages
51 dbuspolicydir=@dbuspolicydir@
52 dbussessionservicedir=@dbussessionservicedir@
53 dbussystemservicedir=@dbussystemservicedir@
54 dbusinterfacedir=@dbusinterfacedir@
55 pamlibdir=@pamlibdir@
56 pkgconfigdatadir=$(datadir)/pkgconfig
57 pkgconfiglibdir=$(libdir)/pkgconfig
58 polkitpolicydir=$(datadir)/polkit-1/actions
59 bashcompletiondir=$(sysconfdir)/bash_completion.d
60 rpmmacrosdir=$(sysconfdir)/rpm
61
62 # Our own, non-special dirs
63 pkgsysconfdir=$(sysconfdir)/systemd
64 userunitdir=$(prefix)/lib/systemd/user
65 tmpfilesdir=$(prefix)/lib/tmpfiles.d
66 sysctldir=$(prefix)/lib/sysctl.d
67 usergeneratordir=$(prefix)/lib/systemd/user-generators
68 pkgincludedir=$(includedir)/systemd
69 systemgeneratordir=$(rootlibexecdir)/system-generators
70 systemshutdowndir=$(rootlibexecdir)/system-shutdown
71 systemsleepdir=$(rootlibexecdir)/system-sleep
72 systemunitdir=$(rootprefix)/lib/systemd/system
73 udevlibexecdir=$(rootprefix)/lib/udev
74 udevhomedir = $(udevlibexecdir)
75 udevrulesdir = $(udevlibexecdir)/rules.d
76
77 # And these are the special ones for /
78 rootprefix=@rootprefix@
79 rootbindir=$(rootprefix)/bin
80 rootlibexecdir=$(rootprefix)/lib/systemd
81
82 CLEANFILES =
83 EXTRA_DIST =
84 BUILT_SOURCES =
85 INSTALL_EXEC_HOOKS =
86 UNINSTALL_EXEC_HOOKS =
87 INSTALL_DATA_HOOKS =
88 DISTCLEAN_LOCAL_HOOKS =
89 pkginclude_HEADERS =
90 noinst_LTLIBRARIES =
91 lib_LTLIBRARIES =
92 include_HEADERS =
93 pkgconfiglib_DATA =
94 polkitpolicy_in_files =
95 dist_udevrules_DATA =
96 nodist_udevrules_DATA =
97 dist_man_MANS =
98 dist_pkgsysconf_DATA =
99 dist_dbuspolicy_DATA =
100 dbusinterface_DATA =
101 dist_dbussystemservice_DATA =
102 check_PROGRAMS =
103 check_DATA =
104 noinst_PROGRAMS =
105 TESTS =
106 udevlibexec_PROGRAMS =
107
108 AM_CPPFLAGS = \
109         -include $(top_builddir)/config.h \
110         -DSYSCONFDIR=\""$(sysconfdir)"\" \
111         -DSYSTEM_CONFIG_FILE=\"$(pkgsysconfdir)/system.conf\" \
112         -DSYSTEM_CONFIG_UNIT_PATH=\"$(pkgsysconfdir)/system\" \
113         -DSYSTEM_DATA_UNIT_PATH=\"$(systemunitdir)\" \
114         -DSYSTEM_SYSVINIT_PATH=\"$(SYSTEM_SYSVINIT_PATH)\" \
115         -DSYSTEM_SYSVRCND_PATH=\"$(SYSTEM_SYSVRCND_PATH)\" \
116         -DUSER_CONFIG_FILE=\"$(pkgsysconfdir)/user.conf\" \
117         -DUSER_CONFIG_UNIT_PATH=\"$(pkgsysconfdir)/user\" \
118         -DUSER_DATA_UNIT_PATH=\"$(userunitdir)\" \
119         -DSYSTEMD_CGROUP_AGENT_PATH=\"$(rootlibexecdir)/systemd-cgroups-agent\" \
120         -DSYSTEMD_BINARY_PATH=\"$(rootlibexecdir)/systemd\" \
121         -DSYSTEMD_SHUTDOWN_BINARY_PATH=\"$(rootlibexecdir)/systemd-shutdown\" \
122         -DSYSTEMD_SLEEP_BINARY_PATH=\"$(rootlibexecdir)/systemd-sleep\" \
123         -DSYSTEMCTL_BINARY_PATH=\"$(rootbindir)/systemctl\" \
124         -DSYSTEMD_TTY_ASK_PASSWORD_AGENT_BINARY_PATH=\"$(rootbindir)/systemd-tty-ask-password-agent\" \
125         -DSYSTEMD_STDIO_BRIDGE_BINARY_PATH=\"$(bindir)/systemd-stdio-bridge\" \
126         -DROOTPREFIX=\"$(rootprefix)\" \
127         -DRUNTIME_DIR=\"/run\" \
128         -DRANDOM_SEED=\"$(localstatedir)/lib/random-seed\" \
129         -DSYSTEMD_CRYPTSETUP_PATH=\"$(rootlibexecdir)/systemd-cryptsetup\" \
130         -DSYSTEM_GENERATOR_PATH=\"$(systemgeneratordir)\" \
131         -DUSER_GENERATOR_PATH=\"$(usergeneratordir)\" \
132         -DSYSTEM_SHUTDOWN_PATH=\"$(systemshutdowndir)\" \
133         -DSYSTEM_SLEEP_PATH=\"$(systemsleepdir)\" \
134         -DSYSTEMD_KBD_MODEL_MAP=\"$(pkgdatadir)/kbd-model-map\" \
135         -DX_SERVER=\"$(bindir)/X\" \
136         -DUDEVLIBEXECDIR=\"$(udevlibexecdir)\" \
137         -DPOLKIT_AGENT_BINARY_PATH=\"$(bindir)/pkttyagent\" \
138         -I $(top_srcdir)/src \
139         -I $(top_srcdir)/src/shared \
140         -I $(top_srcdir)/src/login \
141         -I $(top_srcdir)/src/journal \
142         -I $(top_srcdir)/src/systemd \
143         -I $(top_srcdir)/src/core \
144         -I $(top_srcdir)/src/libudev \
145         -I $(top_srcdir)/src/udev
146
147 AM_CFLAGS = $(WARNINGFLAGS)
148 AM_LDFLAGS = $(GCLDFLAGS)
149
150 # ------------------------------------------------------------------------------
151 if TARGET_GENTOO
152 AM_CPPFLAGS += \
153         -DKBD_LOADKEYS=\"/usr/bin/loadkeys\" \
154         -DKBD_SETFONT=\"/usr/bin/setfont\" \
155         -DDEFAULT_FONT=\"LatArCyrHeb-16\"
156 else
157 if TARGET_ARCH
158 AM_CPPFLAGS += \
159         -DKBD_LOADKEYS=\"/usr/bin/loadkeys\" \
160         -DKBD_SETFONT=\"/usr/bin/setfont\" \
161         -DDEFAULT_FONT=\"LatArCyrHeb-16\"
162 else
163 if TARGET_FRUGALWARE
164 AM_CPPFLAGS += \
165         -DKBD_LOADKEYS=\"/usr/bin/loadkeys\" \
166         -DKBD_SETFONT=\"/usr/bin/setfont\" \
167         -DDEFAULT_FONT=\"LatArCyrHeb-16\"
168 else
169 if TARGET_MANDRIVA
170 AM_CPPFLAGS += \
171         -DKBD_LOADKEYS=\"/bin/loadkeys\" \
172         -DKBD_SETFONT=\"/bin/setfont\" \
173         -DDEFAULT_FONT=\"LatArCyrHeb-16\"
174 else
175 if TARGET_MEEGO
176 AM_CPPFLAGS += \
177         -DKBD_LOADKEYS=\"/bin/loadkeys\" \
178         -DKBD_SETFONT=\"/bin/setfont\" \
179         -DDEFAULT_FONT=\"LatArCyrHeb-16\"
180 else
181 if TARGET_ANGSTROM
182 AM_CPPFLAGS += \
183         -DKBD_LOADKEYS=\"/usr/bin/loadkeys\" \
184         -DKBD_SETFONT=\"/usr/bin/setfont\" \
185         -DDEFAULT_FONT=\"LatArCyrHeb-16\"
186 else
187 if TARGET_MAGEIA
188 AM_CPPFLAGS += \
189         -DKBD_LOADKEYS=\"/bin/loadkeys\" \
190         -DKBD_SETFONT=\"/bin/setfont\" \
191         -DDEFAULT_FONT=\"LatArCyrHeb-16\"
192 else
193 AM_CPPFLAGS += \
194         -DKBD_LOADKEYS=\"/bin/loadkeys\" \
195         -DKBD_SETFONT=\"/bin/setfont\" \
196         -DDEFAULT_FONT=\"latarcyrheb-sun16\"
197 endif
198 endif
199 endif
200 endif
201 endif
202 endif
203 endif
204
205 # ------------------------------------------------------------------------------
206 rootbin_PROGRAMS = \
207         systemctl \
208         systemd-notify \
209         systemd-ask-password \
210         systemd-tty-ask-password-agent \
211         systemd-tmpfiles \
212         systemd-machine-id-setup
213
214 bin_PROGRAMS = \
215         systemd-cgls \
216         systemd-cgtop \
217         systemd-stdio-bridge \
218         systemd-nspawn \
219         systemd-detect-virt \
220         systemd-delta
221
222 dist_bin_SCRIPTS = \
223         src/analyze/systemd-analyze
224
225 rootlibexec_PROGRAMS = \
226         systemd \
227         systemd-cgroups-agent \
228         systemd-initctl \
229         systemd-update-utmp \
230         systemd-shutdownd \
231         systemd-shutdown \
232         systemd-modules-load \
233         systemd-remount-fs \
234         systemd-reply-password \
235         systemd-fsck \
236         systemd-timestamp \
237         systemd-ac-power \
238         systemd-sysctl \
239         systemd-sleep
240
241 systemgenerator_PROGRAMS = \
242         systemd-getty-generator \
243         systemd-fstab-generator \
244         systemd-system-update-generator
245
246 dist_bashcompletion_DATA = \
247         bash-completion/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/nss-user-lookup.target \
276         units/mail-transfer-agent.target \
277         units/hibernate.target \
278         units/http-daemon.target \
279         units/poweroff.target \
280         units/reboot.target \
281         units/rescue.target \
282         units/rpcbind.target \
283         units/time-sync.target \
284         units/shutdown.target \
285         units/final.target \
286         units/umount.target \
287         units/sigpwr.target \
288         units/sleep.target \
289         units/sockets.target \
290         units/suspend.target \
291         units/swap.target \
292         units/systemd-initctl.socket \
293         units/systemd-shutdownd.socket \
294         units/syslog.socket \
295         units/dev-hugepages.mount \
296         units/dev-mqueue.mount \
297         units/sys-kernel-config.mount \
298         units/sys-kernel-debug.mount \
299         units/sys-fs-fuse-connections.mount \
300         units/tmp.mount \
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         units/systemd-udev-control.socket \
311         units/systemd-udev-kernel.socket \
312         units/systemd-timedated-ntp.target  \
313         units/system-update.target
314
315 nodist_systemunit_DATA = \
316         units/getty@.service \
317         units/serial-getty@.service \
318         units/console-shell.service \
319         units/console-getty.service \
320         units/systemd-initctl.service \
321         units/systemd-shutdownd.service \
322         units/systemd-modules-load.service \
323         units/systemd-remount-fs.service \
324         units/systemd-update-utmp-runlevel.service \
325         units/systemd-update-utmp-shutdown.service \
326         units/systemd-tmpfiles-setup.service \
327         units/systemd-tmpfiles-clean.service \
328         units/systemd-ask-password-wall.service \
329         units/systemd-ask-password-console.service \
330         units/systemd-sysctl.service \
331         units/halt.service \
332         units/emergency.service \
333         units/hibernate.service \
334         units/poweroff.service \
335         units/reboot.service \
336         units/kexec.service \
337         units/fsck@.service \
338         units/fsck-root.service \
339         units/rescue.service \
340         units/suspend.service \
341         units/user@.service \
342         units/systemd-udev.service \
343         units/systemd-udev-trigger.service \
344         units/systemd-udev-settle.service \
345         units/systemd-debug-shell.service
346
347 dist_userunit_DATA = \
348         units/user/default.target \
349         units/user/exit.target
350
351 nodist_userunit_DATA = \
352         units/user/exit.service
353
354 EXTRA_DIST += \
355         units/getty@.service.m4 \
356         units/serial-getty@.service.m4 \
357         units/console-shell.service.m4.in \
358         units/console-getty.service.m4.in \
359         units/rescue.service.m4.in \
360         units/systemd-initctl.service.in \
361         units/systemd-shutdownd.service.in \
362         units/systemd-modules-load.service.in \
363         units/systemd-remount-fs.service.in \
364         units/systemd-update-utmp-runlevel.service.in \
365         units/systemd-update-utmp-shutdown.service.in \
366         units/systemd-tmpfiles-setup.service.in \
367         units/systemd-tmpfiles-clean.service.in \
368         units/systemd-ask-password-wall.service.in \
369         units/systemd-ask-password-console.service.in \
370         units/systemd-sysctl.service.in \
371         units/emergency.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/user@.service.in \
380         units/systemd-udev.service \
381         units/systemd-udev-trigger.service \
382         units/systemd-udev-settle.service \
383         units/systemd-debug-shell.service.in \
384         units/hibernate.service.in \
385         units/suspend.service.in \
386         introspect.awk \
387         man/custom-html.xsl
388
389 if TARGET_FEDORA
390 dist_systemunit_DATA += \
391         units/fedora/prefdm.service \
392         units/fedora/rc-local.service \
393         units/fedora/halt-local.service
394 systemgenerator_PROGRAMS += \
395         systemd-rc-local-generator
396 endif
397
398 if TARGET_MANDRIVA
399 dist_systemunit_DATA += \
400         units/mandriva/prefdm.service \
401         units/fedora/rc-local.service \
402         units/fedora/halt-local.service
403 systemgenerator_PROGRAMS += \
404         systemd-rc-local-generator
405 endif
406
407 if TARGET_FRUGALWARE
408 dist_systemunit_DATA += \
409         units/frugalware/display-manager.service
410 endif
411
412 if TARGET_SUSE
413 dist_systemunit_DATA += \
414         units/suse/rc-local.service \
415         units/suse/halt-local.service
416 systemgenerator_PROGRAMS += \
417         systemd-rc-local-generator
418 endif
419
420 if TARGET_MAGEIA
421 dist_systemunit_DATA += \
422         units/mageia/prefdm.service \
423         units/fedora/rc-local.service \
424         units/fedora/halt-local.service
425 systemgenerator_PROGRAMS += \
426         systemd-rc-local-generator
427 endif
428
429 dist_doc_DATA = \
430         README \
431         NEWS \
432         LICENSE.LGPL2.1 \
433         LICENSE.GPL2 \
434         LICENSE.MIT \
435         DISTRO_PORTING
436
437 @INTLTOOL_POLICY_RULE@
438
439 # ------------------------------------------------------------------------------
440 MANPAGES = \
441         man/systemd.1 \
442         man/systemctl.1 \
443         man/systemd-cgls.1 \
444         man/systemd-delta.1 \
445         man/systemd-cgtop.1 \
446         man/systemd-nspawn.1 \
447         man/systemd-tmpfiles.8 \
448         man/systemd-notify.1 \
449         man/systemd.unit.5 \
450         man/systemd.service.5 \
451         man/systemd.socket.5 \
452         man/systemd.mount.5 \
453         man/systemd.automount.5 \
454         man/systemd.swap.5 \
455         man/systemd.timer.5 \
456         man/systemd.path.5 \
457         man/systemd.target.5 \
458         man/systemd.device.5 \
459         man/systemd.snapshot.5 \
460         man/systemd.exec.5 \
461         man/systemd.special.7 \
462         man/systemd.journal-fields.7 \
463         man/kernel-command-line.7 \
464         man/daemon.7 \
465         man/bootup.7 \
466         man/runlevel.8 \
467         man/telinit.8 \
468         man/halt.8 \
469         man/shutdown.8 \
470         man/pam_systemd.8 \
471         man/systemd.conf.5 \
472         man/tmpfiles.d.5 \
473         man/hostname.5 \
474         man/timezone.5 \
475         man/machine-id.5 \
476         man/locale.conf.5 \
477         man/os-release.5 \
478         man/machine-info.5 \
479         man/modules-load.d.5 \
480         man/systemd-modules-load.service.8 \
481         man/sysctl.d.5 \
482         man/systemd-sysctl.service.8 \
483         man/systemd-ask-password.1 \
484         man/systemd-cat.1 \
485         man/systemd-machine-id-setup.1 \
486         man/systemd-detect-virt.1 \
487         man/journald.conf.5 \
488         man/systemd-journald.service.8 \
489         man/journalctl.1 \
490         man/systemd-inhibit.1
491
492 MANPAGES_ALIAS = \
493         man/reboot.8 \
494         man/poweroff.8 \
495         man/init.1 \
496         man/systemd-modules-load.8 \
497         man/systemd-sysctl.8 \
498         man/systemd-journald.8
499
500 man/reboot.8: man/halt.8
501 man/poweroff.8: man/halt.8
502 man/init.1: man/systemd.1
503 man/systemd-modules-load.8: man/systemd-modules-load.service.8
504 man/systemd-sysctl.8: man/systemd-sysctl.service.8
505 man/systemd-journald.8: man/systemd-journald.service.8
506
507 XML_FILES = \
508         ${patsubst %.1,%.xml,${patsubst %.3,%.xml,${patsubst %.5,%.xml,${patsubst %.7,%.xml,${patsubst %.8,%.xml,$(MANPAGES)}}}}}
509
510 if ENABLE_MANPAGES
511 man_MANS = \
512         $(MANPAGES) \
513         $(MANPAGES_ALIAS)
514
515 noinst_DATA = \
516         ${XML_FILES:.xml=.html}
517 endif
518
519 EXTRA_DIST += \
520         $(XML_FILES) \
521         ${XML_FILES:.xml=.html} \
522         $(MANPAGES) \
523         $(MANPAGES_ALIAS)
524
525 # ------------------------------------------------------------------------------
526 noinst_LTLIBRARIES += \
527         libsystemd-shared.la
528
529 libsystemd_shared_la_SOURCES = \
530         src/shared/linux/auto_dev-ioctl.h \
531         src/shared/linux/fanotify.h \
532         src/shared/missing.h \
533         src/shared/list.h \
534         src/shared/macro.h \
535         src/shared/def.h \
536         src/shared/util.c \
537         src/shared/util.h \
538         src/shared/virt.c \
539         src/shared/virt.h \
540         src/shared/path-util.c \
541         src/shared/path-util.h \
542         src/shared/hashmap.c \
543         src/shared/hashmap.h \
544         src/shared/set.c \
545         src/shared/set.h \
546         src/shared/strv.c \
547         src/shared/strv.h \
548         src/shared/conf-parser.c \
549         src/shared/conf-parser.h \
550         src/shared/log.c \
551         src/shared/log.h \
552         src/shared/ratelimit.h \
553         src/shared/ratelimit.c \
554         src/shared/exit-status.c \
555         src/shared/exit-status.h \
556         src/shared/utf8.c \
557         src/shared/utf8.h \
558         src/shared/pager.c \
559         src/shared/pager.h \
560         src/shared/ioprio.h \
561         src/shared/socket-util.c \
562         src/shared/socket-util.h \
563         src/shared/conf-files.c \
564         src/shared/conf-files.h \
565         src/shared/cgroup-util.c \
566         src/shared/cgroup-util.h \
567         src/shared/cgroup-show.c \
568         src/shared/cgroup-show.h \
569         src/shared/unit-name.c \
570         src/shared/unit-name.h \
571         src/shared/utmp-wtmp.c \
572         src/shared/utmp-wtmp.h \
573         src/shared/watchdog.c \
574         src/shared/watchdog.h \
575         src/shared/spawn-ask-password-agent.c \
576         src/shared/spawn-ask-password-agent.h \
577         src/shared/specifier.c \
578         src/shared/specifier.h \
579         src/shared/spawn-polkit-agent.c \
580         src/shared/spawn-polkit-agent.h \
581         src/shared/hwclock.c \
582         src/shared/hwclock.h
583
584 #-------------------------------------------------------------------------------
585 noinst_LTLIBRARIES += \
586         libsystemd-dbus.la
587
588 libsystemd_dbus_la_SOURCES = \
589         src/shared/dbus-common.c \
590         src/shared/dbus-common.h \
591         src/shared/dbus-loop.c \
592         src/shared/dbus-loop.h \
593         src/shared/polkit.c \
594         src/shared/polkit.h
595
596 libsystemd_dbus_la_CFLAGS = \
597         $(AM_CFLAGS) \
598         $(DBUS_CFLAGS)
599
600 libsystemd_dbus_la_LIBADD = \
601         $(DBUS_LIBS)
602
603 # ------------------------------------------------------------------------------
604 noinst_LTLIBRARIES += \
605         libsystemd-units.la
606
607 libsystemd_units_la_SOURCES = \
608         src/shared/install.c \
609         src/shared/install.h \
610         src/shared/path-lookup.c \
611         src/shared/path-lookup.h
612
613 libsystemd_units_la_CFLAGS = \
614         $(AM_CFLAGS) \
615         $(DBUS_CFLAGS)
616
617 # ------------------------------------------------------------------------------
618 noinst_LTLIBRARIES += \
619         libsystemd-label.la
620
621 libsystemd_label_la_SOURCES = \
622         src/shared/cgroup-label.c \
623         src/shared/socket-label.c \
624         src/shared/label.c \
625         src/shared/label.h \
626         src/shared/mkdir.c \
627         src/shared/mkdir.h \
628         src/shared/ask-password-api.c \
629         src/shared/ask-password-api.h \
630         src/shared/dev-setup.c \
631         src/shared/dev-setup.h
632
633 libsystemd_label_la_CFLAGS = \
634         $(AM_CFLAGS) \
635         $(SELINUX_CFLAGS)
636
637 libsystemd_label_la_LIBADD = \
638         $(SELINUX_LIBS)
639
640 # ------------------------------------------------------------------------------
641 noinst_LTLIBRARIES += \
642         libsystemd-logs.la
643
644 libsystemd_logs_la_SOURCES = \
645         src/shared/logs-show.c \
646         src/shared/logs-show.h
647
648 libsystemd_logs_la_CFLAGS = \
649         $(AM_CFLAGS)
650
651 libsystemd_logs_la_LIBADD = \
652         libsystemd-journal.la \
653         libsystemd-id128.la
654
655 # ------------------------------------------------------------------------------
656 noinst_LTLIBRARIES += \
657         libsystemd-capability.la
658
659 libsystemd_capability_la_SOURCES = \
660         src/shared/capability.c \
661         src/shared/capability.h
662
663 libsystemd_capability_la_CFLAGS = \
664         $(AM_CFLAGS) \
665         $(CAP_CFLAGS)
666
667 libsystemd_capability_la_LIBADD = \
668         $(CAP_LIBS)
669
670 # ------------------------------------------------------------------------------
671 noinst_LTLIBRARIES += \
672         libsystemd-audit.la
673
674 libsystemd_audit_la_SOURCES = \
675         src/shared/audit.c \
676         src/shared/audit.h
677
678 libsystemd_audit_la_LIBADD = \
679         libsystemd-capability.la
680
681 # ------------------------------------------------------------------------------
682 if HAVE_ACL
683 noinst_LTLIBRARIES += \
684         libsystemd-acl.la
685
686 libsystemd_acl_la_SOURCES = \
687         src/shared/acl-util.c \
688         src/shared/acl-util.h
689
690 libsystemd_acl_la_CFLAGS = \
691         $(AM_CFLAGS) \
692         $(ACL_CFLAGS)
693
694 libsystemd_acl_la_LIBADD = \
695         $(ACL_LIBS)
696 endif
697
698 # ------------------------------------------------------------------------------
699 noinst_LTLIBRARIES += \
700         libsystemd-core.la
701
702 libsystemd_core_la_SOURCES = \
703         src/core/unit.c \
704         src/core/unit.h \
705         src/core/job.c \
706         src/core/job.h \
707         src/core/manager.c \
708         src/core/manager.h \
709         src/core/transaction.c \
710         src/core/transaction.h \
711         src/core/load-fragment.c \
712         src/core/load-fragment.h \
713         src/core/service.c \
714         src/core/service.h \
715         src/core/automount.c \
716         src/core/automount.h \
717         src/core/mount.c \
718         src/core/mount.h \
719         src/core/swap.c \
720         src/core/swap.h \
721         src/core/device.c \
722         src/core/device.h \
723         src/core/target.c \
724         src/core/target.h \
725         src/core/snapshot.c \
726         src/core/snapshot.h \
727         src/core/socket.c \
728         src/core/socket.h \
729         src/core/timer.c \
730         src/core/timer.h \
731         src/core/path.c \
732         src/core/path.h \
733         src/core/load-dropin.c \
734         src/core/load-dropin.h \
735         src/core/execute.c \
736         src/core/execute.h \
737         src/core/dbus.c \
738         src/core/dbus.h \
739         src/core/dbus-manager.c \
740         src/core/dbus-manager.h \
741         src/core/dbus-unit.c \
742         src/core/dbus-unit.h \
743         src/core/dbus-job.c \
744         src/core/dbus-job.h \
745         src/core/dbus-service.c \
746         src/core/dbus-service.h \
747         src/core/dbus-socket.c \
748         src/core/dbus-socket.h \
749         src/core/dbus-timer.c \
750         src/core/dbus-timer.h \
751         src/core/dbus-target.c \
752         src/core/dbus-target.h \
753         src/core/dbus-mount.c \
754         src/core/dbus-mount.h \
755         src/core/dbus-automount.c \
756         src/core/dbus-automount.h \
757         src/core/dbus-swap.c \
758         src/core/dbus-swap.h \
759         src/core/dbus-snapshot.c \
760         src/core/dbus-snapshot.h \
761         src/core/dbus-device.c \
762         src/core/dbus-device.h \
763         src/core/dbus-execute.c \
764         src/core/dbus-execute.h \
765         src/core/dbus-path.c \
766         src/core/dbus-path.h \
767         src/core/cgroup.c \
768         src/core/cgroup.h \
769         src/core/selinux-setup.c \
770         src/core/selinux-setup.h \
771         src/core/ima-setup.c \
772         src/core/ima-setup.h \
773         src/core/kmod-setup.c \
774         src/core/kmod-setup.h \
775         src/core/locale-setup.h \
776         src/core/locale-setup.c \
777         src/core/hostname-setup.c \
778         src/core/hostname-setup.h \
779         src/core/machine-id-setup.c \
780         src/core/machine-id-setup.h \
781         src/core/mount-setup.c \
782         src/core/mount-setup.h \
783         src/core/loopback-setup.h \
784         src/core/loopback-setup.c \
785         src/core/fdset.c \
786         src/core/fdset.h \
787         src/core/condition.c \
788         src/core/condition.h \
789         src/core/namespace.c \
790         src/core/namespace.h \
791         src/core/tcpwrap.c \
792         src/core/tcpwrap.h \
793         src/core/cgroup-attr.c \
794         src/core/cgroup-attr.h \
795         src/core/securebits.h \
796         src/core/initreq.h \
797         src/core/special.h \
798         src/core/bus-errors.h \
799         src/core/build.h \
800         src/core/sysfs-show.h \
801         src/core/switch-root.h \
802         src/core/switch-root.c
803
804 nodist_libsystemd_core_la_SOURCES = \
805         src/core/load-fragment-gperf.c \
806         src/core/load-fragment-gperf-nulstr.c
807
808 libsystemd_core_la_CFLAGS = \
809         $(AM_CFLAGS) \
810         $(DBUS_CFLAGS) \
811         $(LIBWRAP_CFLAGS) \
812         $(PAM_CFLAGS) \
813         $(AUDIT_CFLAGS) \
814         $(KMOD_CFLAGS)
815
816 libsystemd_core_la_LIBADD = \
817         libsystemd-capability.la \
818         libsystemd-units.la \
819         libsystemd-label.la \
820         libsystemd-shared.la \
821         libsystemd-dbus.la \
822         libudev.la \
823         $(LIBWRAP_LIBS) \
824         $(PAM_LIBS) \
825         $(AUDIT_LIBS) \
826         $(CAP_LIBS) \
827         $(KMOD_LIBS)
828
829 src/core/load-fragment-gperf-nulstr.c: src/core/load-fragment-gperf.gperf
830         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
831         $(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 $@
832
833 EXTRA_DIST += \
834         src/core/load-fragment-gperf.gperf.m4
835
836 CLEANFILES += \
837         src/core/load-fragment-gperf.gperf \
838         src/core/load-fragment-gperf.c \
839         src/core/load-fragment-gperf-nulstr.c
840
841 # ------------------------------------------------------------------------------
842 systemd_SOURCES = \
843         src/core/main.c
844
845 systemd_CFLAGS = \
846         $(AM_CFLAGS) \
847         $(DBUS_CFLAGS)
848
849 systemd_LDADD = \
850         libsystemd-core.la \
851         libsystemd-daemon.la \
852         libsystemd-id128.la \
853         libsystemd-dbus.la
854
855 dist_pkgsysconf_DATA += \
856         src/core/system.conf \
857         src/core/user.conf
858
859 dist_dbuspolicy_DATA += \
860         src/core/org.freedesktop.systemd1.conf
861
862 dist_dbussystemservice_DATA += \
863         src/core/org.freedesktop.systemd1.service
864
865 dbusinterface_DATA += \
866         org.freedesktop.systemd1.Manager.xml \
867         org.freedesktop.systemd1.Job.xml \
868         org.freedesktop.systemd1.Unit.xml \
869         org.freedesktop.systemd1.Service.xml \
870         org.freedesktop.systemd1.Socket.xml \
871         org.freedesktop.systemd1.Timer.xml \
872         org.freedesktop.systemd1.Target.xml \
873         org.freedesktop.systemd1.Device.xml \
874         org.freedesktop.systemd1.Mount.xml \
875         org.freedesktop.systemd1.Automount.xml \
876         org.freedesktop.systemd1.Snapshot.xml \
877         org.freedesktop.systemd1.Swap.xml \
878         org.freedesktop.systemd1.Path.xml
879
880 polkitpolicy_in_in_files = \
881         src/core/org.freedesktop.systemd1.policy.in.in
882
883 org.freedesktop.systemd1.%.xml: systemd
884         $(AM_V_GEN)$(LIBTOOL) --mode=execute $(OBJCOPY) -O binary -j introspect.$* $< $@.tmp && \
885                 $(STRINGS) $@.tmp | $(AWK) -f $(srcdir)/introspect.awk | \
886                 $(DBUS_PREPROCESS) -o $@ - && rm $@.tmp
887
888 pkgconfigdata_DATA = \
889         src/core/systemd.pc
890
891 nodist_rpmmacros_DATA = \
892         src/core/macros.systemd
893
894 EXTRA_DIST += \
895         src/core/systemd.pc.in \
896         src/core/macros.systemd.in
897
898 # ------------------------------------------------------------------------------
899 noinst_PROGRAMS += \
900         test-engine \
901         test-job-type \
902         test-ns \
903         test-loopback \
904         test-hostname \
905         test-daemon \
906         test-cgroup \
907         test-env-replace \
908         test-strv \
909         test-install \
910         test-watchdog \
911         test-unit-name
912
913 TESTS += \
914         test-job-type \
915         test-env-replace \
916         test-strv
917
918 test_engine_SOURCES = \
919         src/test/test-engine.c
920
921 test_engine_CFLAGS = \
922         $(AM_CFLAGS) \
923         $(DBUS_CFLAGS)
924
925 test_engine_LDADD = \
926         libsystemd-core.la \
927         libsystemd-daemon.la \
928         libsystemd-dbus.la
929
930 test_job_type_SOURCES = \
931         src/test/test-job-type.c
932
933 test_job_type_CFLAGS = \
934         $(AM_CFLAGS) \
935         $(DBUS_CFLAGS)
936
937 test_job_type_LDADD = \
938         libsystemd-core.la \
939         libsystemd-daemon.la
940
941 test_ns_SOURCES = \
942         src/test/test-ns.c
943
944 test_ns_LDADD = \
945         libsystemd-core.la
946
947 test_loopback_SOURCES = \
948         src/test/test-loopback.c
949
950 test_loopback_LDADD = \
951         libsystemd-shared.la \
952         libsystemd-core.la
953
954 test_hostname_SOURCES = \
955         src/test/test-hostname.c
956
957 test_hostname_LDADD = \
958         libsystemd-core.la
959
960 test_unit_name_SOURCES = \
961         src/test/test-unit-name.c
962
963 test_unit_name_LDADD = \
964         libsystemd-core.la
965
966 test_daemon_SOURCES = \
967         src/test/test-daemon.c
968
969 test_daemon_LDADD = \
970         libsystemd-shared.la \
971         libsystemd-daemon.la
972
973 test_cgroup_SOURCES = \
974         src/test/test-cgroup.c
975
976 test_cgroup_LDADD = \
977         libsystemd-label.la \
978         libsystemd-shared.la
979
980 test_env_replace_SOURCES = \
981         src/test/test-env-replace.c
982
983 test_env_replace_LDADD = \
984         libsystemd-shared.la
985
986 test_strv_SOURCES = \
987         src/test/test-strv.c
988
989 test_strv_LDADD = \
990         libsystemd-shared.la
991
992 test_install_SOURCES = \
993         src/test/test-install.c
994
995 test_install_CFLAGS = \
996         $(AM_CFLAGS) \
997         $(DBUS_CFLAGS)
998
999 test_install_LDADD = \
1000         libsystemd-units.la \
1001         libsystemd-label.la \
1002         libsystemd-shared.la
1003
1004 test_watchdog_SOURCES = \
1005         src/test/test-watchdog.c
1006
1007 test_watchdog_LDADD = \
1008         libsystemd-shared.la
1009
1010 # ------------------------------------------------------------------------------
1011 systemd_initctl_SOURCES = \
1012         src/initctl/initctl.c
1013
1014 systemd_initctl_CFLAGS = \
1015         $(AM_CFLAGS) \
1016         $(DBUS_CFLAGS)
1017
1018 systemd_initctl_LDADD = \
1019         libsystemd-shared.la \
1020         libsystemd-daemon.la \
1021         libsystemd-dbus.la
1022
1023 # ------------------------------------------------------------------------------
1024 systemd_update_utmp_SOURCES = \
1025         src/update-utmp/update-utmp.c
1026
1027 systemd_update_utmp_CFLAGS = \
1028         $(AM_CFLAGS) \
1029         $(DBUS_CFLAGS) \
1030         $(AUDIT_CFLAGS)
1031
1032 systemd_update_utmp_LDADD = \
1033         libsystemd-shared.la \
1034         libsystemd-dbus.la \
1035         $(AUDIT_LIBS)
1036
1037 # ------------------------------------------------------------------------------
1038 systemd_shutdownd_SOURCES = \
1039         src/shutdownd/shutdownd.c
1040
1041 systemd_shutdownd_LDADD = \
1042         libsystemd-label.la \
1043         libsystemd-shared.la \
1044         libsystemd-daemon.la
1045
1046 pkginclude_HEADERS += \
1047         src/systemd/sd-shutdown.h
1048
1049 # ------------------------------------------------------------------------------
1050 systemd_shutdown_SOURCES = \
1051         src/core/umount.c \
1052         src/core/umount.h \
1053         src/core/shutdown.c \
1054         src/core/mount-setup.c \
1055         src/core/mount-setup.h
1056
1057 systemd_shutdown_LDADD = \
1058         libsystemd-label.la \
1059         libsystemd-shared.la \
1060         libudev.la
1061
1062 # ------------------------------------------------------------------------------
1063 systemd_modules_load_SOURCES = \
1064         src/modules-load/modules-load.c
1065
1066 systemd_modules_load_CFLAGS = \
1067         $(AM_CFLAGS) \
1068         $(KMOD_CFLAGS)
1069
1070 systemd_modules_load_LDADD = \
1071         libsystemd-shared.la \
1072         $(KMOD_LIBS)
1073
1074 # ------------------------------------------------------------------------------
1075 systemd_tmpfiles_SOURCES = \
1076         src/tmpfiles/tmpfiles.c
1077
1078 systemd_tmpfiles_LDADD = \
1079         libsystemd-label.la \
1080         libsystemd-shared.la
1081
1082 # ------------------------------------------------------------------------------
1083 systemd_machine_id_setup_SOURCES = \
1084         src/machine-id-setup/machine-id-setup-main.c \
1085         src/core/machine-id-setup.c \
1086         src/core/machine-id-setup.h
1087
1088 systemd_machine_id_setup_LDADD = \
1089         libsystemd-label.la \
1090         libsystemd-shared.la \
1091         libsystemd-id128.la
1092
1093 # ------------------------------------------------------------------------------
1094 systemd_sysctl_SOURCES = \
1095         src/sysctl/sysctl.c
1096
1097 systemd_sysctl_LDADD = \
1098         libsystemd-shared.la
1099
1100 # ------------------------------------------------------------------------------
1101 systemd_sleep_SOURCES = \
1102         src/sleep/sleep.c
1103
1104 systemd_sleep_LDADD = \
1105         libsystemd-shared.la
1106
1107 # ------------------------------------------------------------------------------
1108 systemd_fsck_SOURCES = \
1109         src/fsck/fsck.c
1110
1111 systemd_fsck_CFLAGS = \
1112         $(AM_CFLAGS) \
1113         $(DBUS_CFLAGS)
1114
1115 systemd_fsck_LDADD = \
1116         libsystemd-shared.la \
1117         libsystemd-dbus.la \
1118         libudev.la
1119
1120 # ------------------------------------------------------------------------------
1121 systemd_timestamp_SOURCES = \
1122         src/timestamp/timestamp.c
1123
1124 systemd_timestamp_LDADD = \
1125         libsystemd-shared.la
1126
1127 # ------------------------------------------------------------------------------
1128 systemd_ac_power_SOURCES = \
1129         src/ac-power/ac-power.c
1130
1131 systemd_ac_power_LDADD = \
1132         libsystemd-shared.la \
1133         libudev.la
1134
1135 # ------------------------------------------------------------------------------
1136 systemd_detect_virt_SOURCES = \
1137         src/detect-virt/detect-virt.c
1138
1139 systemd_detect_virt_LDADD = \
1140         libsystemd-shared.la
1141
1142 # ------------------------------------------------------------------------------
1143 systemd_delta_SOURCES = \
1144         src/delta/delta.c
1145
1146 systemd_delta_LDADD = \
1147         libsystemd-shared.la
1148
1149 # ------------------------------------------------------------------------------
1150 systemd_getty_generator_SOURCES = \
1151         src/getty-generator/getty-generator.c
1152
1153 systemd_getty_generator_LDADD = \
1154         libsystemd-label.la \
1155         libsystemd-shared.la
1156
1157 # ------------------------------------------------------------------------------
1158 systemd_fstab_generator_SOURCES = \
1159         src/fstab-generator/fstab-generator.c \
1160         src/core/mount-setup.c
1161
1162 systemd_fstab_generator_LDADD = \
1163         libsystemd-label.la \
1164         libsystemd-shared.la
1165
1166 # ------------------------------------------------------------------------------
1167 systemd_system_update_generator_SOURCES = \
1168         src/system-update-generator/system-update-generator.c
1169
1170 systemd_system_update_generator_LDADD = \
1171         libsystemd-label.la \
1172         libsystemd-shared.la
1173
1174 # ------------------------------------------------------------------------------
1175 systemd_rc_local_generator_SOURCES = \
1176         src/rc-local-generator/rc-local-generator.c
1177
1178 systemd_rc_local_generator_LDADD = \
1179         libsystemd-label.la \
1180         libsystemd-shared.la
1181
1182 # ------------------------------------------------------------------------------
1183 systemd_remount_fs_SOURCES = \
1184         src/remount-fs/remount-fs.c \
1185         src/core/mount-setup.c \
1186         src/core/mount-setup.h
1187
1188 systemd_remount_fs_LDADD = \
1189         libsystemd-shared.la
1190
1191 # ------------------------------------------------------------------------------
1192 systemd_cgroups_agent_SOURCES = \
1193         src/cgroups-agent/cgroups-agent.c
1194
1195 systemd_cgroups_agent_CFLAGS = \
1196         $(AM_CFLAGS) \
1197         $(DBUS_CFLAGS)
1198
1199 systemd_cgroups_agent_LDADD = \
1200         libsystemd-shared.la \
1201         libsystemd-dbus.la
1202
1203 # ------------------------------------------------------------------------------
1204 systemctl_SOURCES = \
1205         src/systemctl/systemctl.c
1206
1207 systemctl_CFLAGS = \
1208         $(AM_CFLAGS) \
1209         $(DBUS_CFLAGS)
1210
1211 systemctl_LDADD = \
1212         libsystemd-units.la \
1213         libsystemd-label.la \
1214         libsystemd-shared.la \
1215         libsystemd-daemon.la \
1216         libsystemd-journal.la \
1217         libsystemd-id128.la \
1218         libsystemd-dbus.la \
1219         libsystemd-logs.la
1220
1221 # ------------------------------------------------------------------------------
1222 systemd_notify_SOURCES = \
1223         src/notify/notify.c \
1224         src/readahead/sd-readahead.c
1225
1226 systemd_notify_LDADD = \
1227         libsystemd-shared.la \
1228         libsystemd-daemon.la
1229
1230 # ------------------------------------------------------------------------------
1231 systemd_ask_password_SOURCES = \
1232         src/ask-password/ask-password.c
1233
1234 systemd_ask_password_LDADD = \
1235         libsystemd-label.la \
1236         libsystemd-shared.la
1237
1238 # ------------------------------------------------------------------------------
1239 systemd_reply_password_SOURCES = \
1240         src/reply-password/reply-password.c
1241
1242 systemd_reply_password_LDADD = \
1243         libsystemd-shared.la
1244
1245 # ------------------------------------------------------------------------------
1246 systemd_cgls_SOURCES = \
1247         src/cgls/cgls.c
1248
1249 systemd_cgls_LDADD = \
1250         libsystemd-shared.la
1251
1252 # ------------------------------------------------------------------------------
1253 systemd_cgtop_SOURCES = \
1254         src/cgtop/cgtop.c
1255
1256 systemd_cgtop_LDADD = \
1257         libsystemd-shared.la
1258
1259 # ------------------------------------------------------------------------------
1260 systemd_nspawn_SOURCES = \
1261         src/nspawn/nspawn.c \
1262         src/core/mount-setup.c \
1263         src/core/mount-setup.h \
1264         src/core/loopback-setup.c \
1265         src/core/loopback-setup.h
1266
1267 systemd_nspawn_LDADD = \
1268         libsystemd-label.la \
1269         libsystemd-capability.la \
1270         libsystemd-shared.la \
1271         libsystemd-daemon.la
1272
1273 # ------------------------------------------------------------------------------
1274 systemd_stdio_bridge_SOURCES = \
1275         src/stdio-bridge/stdio-bridge.c
1276
1277 systemd_stdio_bridge_LDADD = \
1278         libsystemd-shared.la
1279
1280 # ------------------------------------------------------------------------------
1281 systemd_tty_ask_password_agent_SOURCES = \
1282         src/tty-ask-password-agent/tty-ask-password-agent.c
1283
1284 systemd_tty_ask_password_agent_LDADD = \
1285         libsystemd-label.la \
1286         libsystemd-shared.la
1287
1288 # ------------------------------------------------------------------------------
1289 libsystemd_daemon_la_SOURCES = \
1290         src/libsystemd-daemon/sd-daemon.c
1291
1292 libsystemd_daemon_la_CFLAGS = \
1293         $(AM_CFLAGS) \
1294         -fvisibility=hidden \
1295         -DSD_EXPORT_SYMBOLS
1296
1297 libsystemd_daemon_la_LDFLAGS = \
1298         $(AM_LDFLAGS) \
1299         -shared \
1300         -version-info $(LIBSYSTEMD_DAEMON_CURRENT):$(LIBSYSTEMD_DAEMON_REVISION):$(LIBSYSTEMD_DAEMON_AGE) \
1301         -Wl,--version-script=$(top_srcdir)/src/libsystemd-daemon/libsystemd-daemon.sym
1302
1303 pkginclude_HEADERS += \
1304         src/systemd/sd-daemon.h
1305
1306 # move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
1307 libsystemd-daemon-install-hook:
1308         if test "$(libdir)" != "$(rootlibdir)"; then \
1309                 mkdir -p $(DESTDIR)$(rootlibdir) && \
1310                 so_img_name=$$(readlink $(DESTDIR)$(libdir)/libsystemd-daemon.so) && \
1311                 so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
1312                 ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libsystemd-daemon.so && \
1313                 mv $(DESTDIR)$(libdir)/libsystemd-daemon.so.* $(DESTDIR)$(rootlibdir); \
1314         fi
1315
1316 INSTALL_EXEC_HOOKS += \
1317         libsystemd-daemon-install-hook
1318
1319 libsystemd-daemon-uninstall-hook:
1320         rm -f $(DESTDIR)$(rootlibdir)/libsystemd-daemon.so*
1321
1322 UNINSTALL_EXEC_HOOKS += \
1323         libsystemd-daemon-uninstall-hook
1324
1325 lib_LTLIBRARIES += \
1326         libsystemd-daemon.la
1327
1328 pkgconfiglib_DATA += \
1329         src/libsystemd-daemon/libsystemd-daemon.pc
1330
1331 MANPAGES += \
1332         man/sd-daemon.7 \
1333         man/sd_notify.3 \
1334         man/sd_listen_fds.3 \
1335         man/sd_is_fifo.3 \
1336         man/sd_booted.3
1337
1338 MANPAGES_ALIAS += \
1339         man/sd_is_socket.3 \
1340         man/sd_is_socket_unix.3 \
1341         man/sd_is_socket_inet.3 \
1342         man/sd_is_mq.3 \
1343         man/sd_notifyf.3
1344
1345 man/sd_is_socket.3: man/sd_is_fifo.3
1346 man/sd_is_socket_unix.3: man/sd_is_fifo.3
1347 man/sd_is_socket_inet.3: man/sd_is_fifo.3
1348 man/sd_is_mq.3: man/sd_is_fifo.3
1349 man/sd_notifyf.3: man/sd_notify.3
1350
1351 EXTRA_DIST += \
1352         src/libsystemd-daemon/libsystemd-daemon.pc.in \
1353         src/libsystemd-daemon/libsystemd-daemon.sym
1354
1355 # ------------------------------------------------------------------------------
1356 if ENABLE_GTK_DOC
1357 SUBDIRS += \
1358         docs/libudev
1359 endif
1360
1361 include_HEADERS += \
1362         src/libudev/libudev.h
1363
1364 lib_LTLIBRARIES += \
1365         libudev.la
1366
1367 libudev_la_SOURCES =\
1368         src/libudev/libudev-private.h \
1369         src/libudev/libudev.c \
1370         src/libudev/libudev-list.c \
1371         src/libudev/libudev-util.c \
1372         src/libudev/libudev-device.c \
1373         src/libudev/libudev-enumerate.c \
1374         src/libudev/libudev-monitor.c \
1375         src/libudev/libudev-queue.c
1376
1377 libudev_la_CFLAGS = \
1378         $(AM_CFLAGS) \
1379         -fvisibility=hidden
1380
1381 libudev_la_LDFLAGS = \
1382         $(AM_LDFLAGS) \
1383         -version-info $(LIBUDEV_CURRENT):$(LIBUDEV_REVISION):$(LIBUDEV_AGE) \
1384         -Wl,--version-script=$(top_srcdir)/src/libudev/libudev.sym
1385
1386 libudev_la_LIBADD = \
1387         libsystemd-shared.la
1388
1389 pkgconfiglib_DATA += \
1390         src/libudev/libudev.pc
1391
1392 EXTRA_DIST += \
1393         src/libudev/libudev.pc.in \
1394         src/libudev/libudev.sym
1395
1396 CLEANFILES += \
1397         src/libudev/libudev.pc
1398
1399 # move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
1400 libudev-install-move-hook:
1401         if test "$(libdir)" != "$(rootlibdir)"; then \
1402                 mkdir -p $(DESTDIR)$(rootlibdir) && \
1403                 so_img_name=$$(readlink $(DESTDIR)$(libdir)/libudev.so) && \
1404                 so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
1405                 ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libudev.so && \
1406                 mv $(DESTDIR)$(libdir)/libudev.so.* $(DESTDIR)$(rootlibdir); \
1407         fi
1408
1409 libudev-uninstall-move-hook:
1410         rm -f $(DESTDIR)$(rootlibdir)/libudev.so*
1411
1412 INSTALL_EXEC_HOOKS += libudev-install-move-hook
1413 UNINSTALL_EXEC_HOOKS += libudev-uninstall-move-hook
1414
1415 # ------------------------------------------------------------------------------
1416 noinst_LTLIBRARIES += \
1417         libudev-private.la
1418
1419 libudev_private_la_SOURCES =\
1420         $(libudev_la_SOURCES) \
1421         src/libudev/libudev-device-private.c \
1422         src/libudev/libudev-queue-private.c
1423
1424 libudev_private_la_CFLAGS = \
1425         $(AM_CFLAGS) \
1426         -fvisibility=default
1427
1428 libudev_private_la_LIBADD = \
1429         libsystemd-shared.la
1430
1431 # ------------------------------------------------------------------------------
1432 MANPAGES += \
1433         man/udev.7 \
1434         man/udevadm.8 \
1435         man/systemd-udevd.service.8
1436
1437 MANPAGES_ALIAS += \
1438         man/systemd-udevd.8
1439
1440 udev-confdirs:
1441         -mkdir -p $(DESTDIR)$(sysconfdir)/udev/rules.d
1442
1443 INSTALL_DATA_HOOKS += udev-confdirs
1444
1445 dist_udevrules_DATA += \
1446         rules/99-systemd.rules \
1447         rules/42-usb-hid-pm.rules \
1448         rules/50-udev-default.rules \
1449         rules/60-persistent-storage-tape.rules \
1450         rules/60-persistent-serial.rules \
1451         rules/60-persistent-input.rules \
1452         rules/60-persistent-alsa.rules \
1453         rules/60-persistent-storage.rules \
1454         rules/75-net-description.rules \
1455         rules/75-tty-description.rules \
1456         rules/78-sound-card.rules \
1457         rules/80-drivers.rules \
1458         rules/95-udev-late.rules
1459
1460 udevconfdir = $(sysconfdir)/udev
1461 dist_udevconf_DATA = \
1462         src/udev/udev.conf
1463
1464 sharepkgconfigdir = $(datadir)/pkgconfig
1465 sharepkgconfig_DATA = \
1466         src/udev/udev.pc
1467
1468 EXTRA_DIST += \
1469         rules/99-systemd.rules.in \
1470         src/udev/udev.pc.in
1471
1472 CLEANFILES += \
1473         rules/99-systemd.rules \
1474         src/udev/udev.pc
1475
1476 EXTRA_DIST += \
1477         units/systemd-udev.service.in \
1478         units/systemd-udev-trigger.service.in \
1479         units/systemd-udev-settle.service.in
1480
1481 CLEANFILES += \
1482         units/systemd-udev.service \
1483         units/systemd-udev-trigger.service \
1484         units/systemd-udev-settle.service
1485
1486 systemd-install-hook:
1487         mkdir -p $(DESTDIR)$(systemunitdir)/sockets.target.wants
1488         ln -sf ../systemd-udev-control.socket $(DESTDIR)$(systemunitdir)/sockets.target.wants/systemd-udev-control.socket
1489         ln -sf ../systemd-udev-kernel.socket $(DESTDIR)$(systemunitdir)/sockets.target.wants/systemd-udev-kernel.socket
1490         mkdir -p $(DESTDIR)$(systemunitdir)/sysinit.target.wants
1491         ln -sf ../systemd-udev.service $(DESTDIR)$(systemunitdir)/sysinit.target.wants/systemd-udev.service
1492         ln -sf ../systemd-udev-trigger.service $(DESTDIR)$(systemunitdir)/sysinit.target.wants/systemd-udev-trigger.service
1493
1494 INSTALL_DATA_HOOKS += systemd-install-hook
1495
1496 bin_PROGRAMS += \
1497         udevadm
1498
1499 rootlibexec_PROGRAMS += \
1500         systemd-udevd
1501
1502 noinst_LTLIBRARIES += \
1503         libudev-core.la
1504
1505 libudev_core_la_SOURCES = \
1506         src/udev/udev.h \
1507         src/udev/udev-event.c \
1508         src/udev/udev-watch.c \
1509         src/udev/udev-node.c \
1510         src/udev/udev-rules.c \
1511         src/udev/udev-ctrl.c \
1512         src/udev/udev-builtin.c \
1513         src/udev/udev-builtin-blkid.c \
1514         src/udev/udev-builtin-firmware.c \
1515         src/udev/udev-builtin-hwdb.c \
1516         src/udev/udev-builtin-input_id.c \
1517         src/udev/udev-builtin-kmod.c \
1518         src/udev/udev-builtin-path_id.c \
1519         src/udev/udev-builtin-usb_id.c \
1520         src/libsystemd-daemon/sd-daemon.c
1521
1522 libudev_core_la_CFLAGS = \
1523         $(AM_CFLAGS) \
1524         $(BLKID_CFLAGS) \
1525         $(KMOD_CFLAGS)
1526
1527 libudev_core_la_LIBADD = \
1528         libudev-private.la \
1529         libsystemd-label.la \
1530         libsystemd-shared.la \
1531         $(BLKID_LIBS) \
1532         $(KMOD_LIBS)
1533
1534 libudev_core_la_CPPFLAGS = \
1535         $(AM_CPPFLAGS) \
1536         -DFIRMWARE_PATH="$(FIRMWARE_PATH)" \
1537         -DUSB_DATABASE=\"$(USB_DATABASE)\" -DPCI_DATABASE=\"$(PCI_DATABASE)\"
1538
1539 if HAVE_ACL
1540 libudev_core_la_SOURCES += \
1541         src/udev/udev-builtin-uaccess.c \
1542         src/login/logind-acl.c \
1543         src/login/sd-login.c
1544
1545 libudev_core_la_LIBADD += \
1546         libsystemd-acl.la
1547 endif
1548
1549 systemd_udevd_SOURCES = \
1550         src/udev/udevd.c
1551
1552 systemd_udevd_LDADD = \
1553         libudev-core.la
1554
1555 udevadm_SOURCES = \
1556         src/udev/udevadm.c \
1557         src/udev/udevadm-info.c \
1558         src/udev/udevadm-control.c \
1559         src/udev/udevadm-monitor.c \
1560         src/udev/udevadm-settle.c \
1561         src/udev/udevadm-trigger.c \
1562         src/udev/udevadm-test.c \
1563         src/udev/udevadm-test-builtin.c
1564
1565 udevadm_LDADD = \
1566         libudev-core.la \
1567         libsystemd-shared.la
1568
1569 # ------------------------------------------------------------------------------
1570 TESTS += \
1571         test/udev-test.pl \
1572         test/rules-test.sh
1573
1574 noinst_PROGRAMS += \
1575         test-libudev \
1576         test-udev
1577
1578 test_libudev_SOURCES = \
1579         src/test/test-libudev.c
1580
1581 test_libudev_LDADD = \
1582         libsystemd-label.la \
1583         libsystemd-shared.la \
1584         libudev.la
1585
1586 test_udev_SOURCES = \
1587         src/test/test-udev.c \
1588         $(libudev_core_la_SOURCES) \
1589         $(libudev_private_la_SOURCES)
1590
1591 # The test-udev program needs everything compiled with relative path
1592 # names for /sys, /dev, /run prefixed, pointing to our test/ directory.
1593 test_udev_CFLAGS = \
1594         -DTEST_PREFIX=\"test\" \
1595         $(libudev_core_la_CFLAGS) \
1596         $(libudev_private_la_CFLAGS)
1597
1598 test_udev_CPPFLAGS =\
1599         $(libudev_core_la_CPPFLAGS)
1600
1601 test_udev_LDADD = \
1602         libsystemd-label.la \
1603         libsystemd-shared.la \
1604         $(BLKID_LIBS) \
1605         $(KMOD_LIBS) \
1606         $(SELINUX_LIBS)
1607
1608 if HAVE_ACL
1609 test_udev_LDADD += \
1610         libsystemd-acl.la
1611 endif
1612
1613 check_DATA += \
1614         test/sys
1615
1616 # packed sysfs test tree
1617 test/sys:
1618         $(AM_V_GEN)mkdir -p test && tar -C test/ -xJf $(top_srcdir)/test/sys.tar.xz
1619
1620 test-sys-distclean:
1621         -rm -rf test/sys
1622 DISTCLEAN_LOCAL_HOOKS += test-sys-distclean
1623
1624 EXTRA_DIST += \
1625         test/sys.tar.xz \
1626         test/udev-test.pl \
1627         test/rules-test.sh \
1628         test/rule-syntax-check.py
1629
1630 # ------------------------------------------------------------------------------
1631 ata_id_SOURCES = \
1632         src/udev/ata_id/ata_id.c
1633
1634 ata_id_LDADD = \
1635         libudev-private.la \
1636         libsystemd-shared.la
1637
1638 udevlibexec_PROGRAMS += \
1639         ata_id
1640
1641 # ------------------------------------------------------------------------------
1642 cdrom_id_SOURCES = \
1643         src/udev/cdrom_id/cdrom_id.c
1644
1645 cdrom_id_LDADD = \
1646         libudev.la \
1647         libsystemd-shared.la
1648
1649 udevlibexec_PROGRAMS += \
1650         cdrom_id
1651
1652 dist_udevrules_DATA += \
1653         rules/60-cdrom_id.rules
1654
1655 # ------------------------------------------------------------------------------
1656 collect_SOURCES = \
1657         src/udev/collect/collect.c
1658
1659 collect_LDADD = \
1660         libudev-private.la
1661
1662 udevlibexec_PROGRAMS += \
1663         collect
1664
1665 # ------------------------------------------------------------------------------
1666 scsi_id_SOURCES =\
1667         src/udev/scsi_id/scsi_id.c \
1668         src/udev/scsi_id/scsi_serial.c \
1669         src/udev/scsi_id/scsi.h \
1670         src/udev/scsi_id/scsi_id.h
1671
1672 scsi_id_LDADD = \
1673         libudev-private.la \
1674         libsystemd-shared.la
1675
1676 udevlibexec_PROGRAMS += \
1677         scsi_id
1678
1679 EXTRA_DIST += \
1680         src/udev/scsi_id/README
1681
1682 # ------------------------------------------------------------------------------
1683 v4l_id_SOURCES = \
1684         src/udev/v4l_id/v4l_id.c
1685
1686 v4l_id_LDADD = \
1687         libudev.la
1688
1689 udevlibexec_PROGRAMS += \
1690         v4l_id
1691
1692 dist_udevrules_DATA += \
1693         rules/60-persistent-v4l.rules
1694
1695 # ------------------------------------------------------------------------------
1696 accelerometer_SOURCES = \
1697         src/udev/accelerometer/accelerometer.c
1698
1699 accelerometer_LDADD = \
1700         libudev.la -lm \
1701         libsystemd-shared.la
1702
1703 udevlibexec_PROGRAMS += \
1704         accelerometer
1705
1706 dist_udevrules_DATA += \
1707         rules/61-accelerometer.rules
1708
1709 # ------------------------------------------------------------------------------
1710 if ENABLE_GUDEV
1711 if ENABLE_GTK_DOC
1712 SUBDIRS += \
1713         docs/gudev
1714 endif
1715
1716 libgudev_includedir = \
1717         $(includedir)/gudev-1.0/gudev
1718
1719 libgudev_include_HEADERS = \
1720         src/gudev/gudev.h \
1721         src/gudev/gudevenums.h \
1722         src/gudev/gudevenumtypes.h \
1723         src/gudev/gudevtypes.h \
1724         src/gudev/gudevclient.h \
1725         src/gudev/gudevdevice.h \
1726         src/gudev/gudevenumerator.h
1727
1728 lib_LTLIBRARIES += libgudev-1.0.la
1729
1730 pkgconfiglib_DATA += \
1731         src/gudev/gudev-1.0.pc
1732
1733 EXTRA_DIST += \
1734         src/gudev/gudev-1.0.pc.in
1735
1736 CLEANFILES += \
1737         src/gudev/gudev-1.0.pc
1738
1739 libgudev_1_0_la_SOURCES = \
1740         src/gudev/gudevenums.h \
1741         src/gudev/gudevenumtypes.h \
1742         src/gudev/gudevenumtypes.h\
1743         src/gudev/gudevtypes.h \
1744         src/gudev/gudevclient.h \
1745         src/gudev/gudevclient.c \
1746         src/gudev/gudevdevice.h \
1747         src/gudev/gudevdevice.c \
1748         src/gudev/gudevenumerator.h \
1749         src/gudev/gudevenumerator.c \
1750         src/gudev/gudevprivate.h
1751
1752 nodist_libgudev_1_0_la_SOURCES = \
1753         src/gudev/gudevmarshal.h \
1754         src/gudev/gudevmarshal.c \
1755         src/gudev/gudevenumtypes.h \
1756         src/gudev/gudevenumtypes.c
1757
1758 BUILT_SOURCES += \
1759         $(nodist_libgudev_1_0_la_SOURCES)
1760
1761 libgudev_1_0_la_CPPFLAGS = \
1762         $(AM_CPPFLAGS) \
1763         -I$(top_builddir)/src\
1764         -I$(top_srcdir)/src\
1765         -I$(top_builddir)/src/gudev \
1766         -I$(top_srcdir)/src/gudev \
1767         -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT \
1768         -D_GUDEV_COMPILATION \
1769         -DG_LOG_DOMAIN=\"GUdev\"
1770
1771 libgudev_1_0_la_CFLAGS = \
1772         $(AM_CFLAGS) \
1773         -fvisibility=default \
1774         $(GLIB_CFLAGS)
1775
1776 libgudev_1_0_la_LIBADD = \
1777         libudev.la \
1778         $(GLIB_LIBS)
1779
1780 libgudev_1_0_la_LDFLAGS = \
1781         $(AM_LDFLAGS) \
1782         -version-info $(LIBGUDEV_CURRENT):$(LIBGUDEV_REVISION):$(LIBGUDEV_AGE) \
1783         -export-dynamic -no-undefined \
1784         -export-symbols-regex '^g_udev_.*'
1785
1786 EXTRA_DIST += \
1787         src/gudev/gudevmarshal.list \
1788         src/gudev/gudevenumtypes.h.template \
1789         src/gudev/gudevenumtypes.c.template \
1790         src/gudev/gjs-example.js \
1791         src/gudev/seed-example-enum.js \
1792         src/gudev/seed-example.js
1793
1794 CLEANFILES += \
1795         $(nodist_libgudev_1_0_la_SOURCES)
1796
1797 src/gudev/gudevmarshal.h: src/gudev/gudevmarshal.list
1798         $(AM_V_GEN)glib-genmarshal $< --prefix=g_udev_marshal --header > $@
1799
1800 src/gudev/gudevmarshal.c: src/gudev/gudevmarshal.list
1801         $(AM_V_GEN)echo "#include \"gudevmarshal.h\"" > $@ && \
1802         glib-genmarshal $< --prefix=g_udev_marshal --body >> $@
1803
1804 src/gudev/gudevenumtypes.h: src/gudev/gudevenumtypes.h.template src/gudev/gudevenums.h
1805         $(AM_V_GEN)glib-mkenums --template $^ > \
1806             $@.tmp && mv $@.tmp $@
1807
1808 src/gudev/gudevenumtypes.c: src/gudev/gudevenumtypes.c.template src/gudev/gudevenums.h
1809         $(AM_V_GEN)glib-mkenums --template $^ > \
1810             $@.tmp && mv $@.tmp $@
1811
1812 if HAVE_INTROSPECTION
1813 -include $(INTROSPECTION_MAKEFILE)
1814
1815 src/gudev/GUdev-1.0.gir: libgudev-1.0.la
1816
1817 src_gudev_GUdev_1_0_gir_INCLUDES = GObject-2.0
1818
1819 src_gudev_GUdev_1_0_gir_CFLAGS = \
1820         $(INCLUDES) \
1821         -D_GUDEV_COMPILATION \
1822         -D_GUDEV_WORK_AROUND_DEV_T_BUG \
1823         -I$(top_srcdir)/src \
1824         -I$(top_builddir)/src \
1825         -I$(top_srcdir)/src/gdev \
1826         -I$(top_builddir)/src/gdev
1827
1828 src_gudev_GUdev_1_0_gir_LIBS = libgudev-1.0.la
1829
1830 src_gudev_GUdev_1_0_gir_SCANNERFLAGS = \
1831         --pkg-export=gudev-1.0 \
1832         --warn-all
1833
1834 src_gudev_GUdev_1_0_gir_FILES = \
1835         $(top_srcdir)/src/gudev/gudev.h \
1836         $(top_srcdir)/src/gudev/gudevtypes.h \
1837         $(top_srcdir)/src/gudev/gudevenums.h \
1838         $(or $(wildcard $(top_builddir)/src/gudev/gudevenumtypes.h),$(top_srcdir)/src/gudev/gudevenumtypes.h) \
1839         $(top_srcdir)/src/gudev/gudevclient.h \
1840         $(top_srcdir)/src/gudev/gudevdevice.h \
1841         $(top_srcdir)/src/gudev/gudevenumerator.h \
1842         $(top_srcdir)/src/gudev/gudevclient.c \
1843         $(top_srcdir)/src/gudev/gudevdevice.c \
1844         $(top_srcdir)/src/gudev/gudevenumerator.c
1845
1846 INTROSPECTION_GIRS = src/gudev/GUdev-1.0.gir
1847 INTROSPECTION_SCANNER_ARGS = --c-include=gudev/gudev.h
1848
1849 girdir = $(datadir)/gir-1.0
1850 gir_DATA = \
1851         src/gudev/GUdev-1.0.gir
1852
1853 typelibsdir = $(libdir)/girepository-1.0
1854 typelibs_DATA = \
1855         src/gudev/GUdev-1.0.typelib
1856
1857 CLEANFILES += $(gir_DATA) $(typelibs_DATA)
1858 endif # HAVE_INTROSPECTION
1859
1860 # move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
1861 libgudev-install-move-hook:
1862         if test "$(libdir)" != "$(rootlibdir)"; then \
1863                 mkdir -p $(DESTDIR)$(rootlibdir) && \
1864                 so_img_name=$$(readlink $(DESTDIR)$(libdir)/libgudev-1.0.so) && \
1865                 so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
1866                 ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libgudev-1.0.so && \
1867                 mv $(DESTDIR)$(libdir)/libgudev-1.0.so.* $(DESTDIR)$(rootlibdir); \
1868         fi
1869
1870 libgudev-uninstall-move-hook:
1871         rm -f $(DESTDIR)$(rootlibdir)/libgudev-1.0.so*
1872
1873 INSTALL_EXEC_HOOKS += libgudev-install-move-hook
1874 UNINSTALL_EXEC_HOOKS += libgudev-uninstall-move-hook
1875 endif
1876
1877 # ------------------------------------------------------------------------------
1878 if ENABLE_KEYMAP
1879 keymap_SOURCES = \
1880         src/udev/keymap/keymap.c
1881
1882 keymap_CPPFLAGS = \
1883         $(AM_CPPFLAGS) -I src/udev/keymap
1884
1885 keymap_LDADD = \
1886         libsystemd-shared.la
1887
1888 nodist_keymap_SOURCES = \
1889         src/udev/keymap/keys-from-name.h \
1890         src/udev/keymap/keys-to-name.h
1891
1892 BUILT_SOURCES += \
1893         $(nodist_keymap_SOURCES)
1894
1895 udevlibexec_PROGRAMS += \
1896         keymap
1897
1898 dist_doc_DATA += \
1899         src/udev/keymap/README.keymap.txt
1900
1901 dist_udevrules_DATA += \
1902         src/udev/keymap/95-keymap.rules \
1903         src/udev/keymap/95-keyboard-force-release.rules
1904
1905 dist_udevhome_SCRIPTS = \
1906         src/udev/keymap/findkeyboards \
1907         src/udev/keymap/keyboard-force-release.sh
1908
1909 TESTS += \
1910         src/udev/keymap/check-keymaps.sh
1911
1912 EXTRA_DIST += \
1913         src/udev/keymap/check-keymaps.sh \
1914         src/udev/keymap/keyboard-force-release.sh.in
1915
1916 CLEANFILES += \
1917         $(nodist_keymap_SOURCES) \
1918         src/udev/keymap/keys.txt \
1919         src/udev/keymap/keys-from-name.gperf \
1920         src/udev/keymap/keyboard-force-release.sh
1921
1922 udevkeymapdir = $(udevlibexecdir)/keymaps
1923 dist_udevkeymap_DATA = \
1924         keymaps/acer \
1925         keymaps/acer-aspire_5720 \
1926         keymaps/acer-aspire_8930 \
1927         keymaps/acer-aspire_5920g \
1928         keymaps/acer-aspire_6920 \
1929         keymaps/acer-travelmate_c300 \
1930         keymaps/asus \
1931         keymaps/compaq-e_evo \
1932         keymaps/dell \
1933         keymaps/dell-latitude-xt2 \
1934         keymaps/everex-xt5000 \
1935         keymaps/fujitsu-amilo_li_2732 \
1936         keymaps/fujitsu-amilo_pa_2548 \
1937         keymaps/fujitsu-amilo_pro_edition_v3505 \
1938         keymaps/fujitsu-amilo_pro_v3205 \
1939         keymaps/fujitsu-amilo_si_1520 \
1940         keymaps/fujitsu-esprimo_mobile_v5 \
1941         keymaps/fujitsu-esprimo_mobile_v6 \
1942         keymaps/genius-slimstar-320 \
1943         keymaps/hewlett-packard \
1944         keymaps/hewlett-packard-2510p_2530p \
1945         keymaps/hewlett-packard-compaq_elitebook \
1946         keymaps/hewlett-packard-pavilion \
1947         keymaps/hewlett-packard-presario-2100 \
1948         keymaps/hewlett-packard-tablet \
1949         keymaps/hewlett-packard-tx2 \
1950         keymaps/ibm-thinkpad-usb-keyboard-trackpoint \
1951         keymaps/inventec-symphony_6.0_7.0 \
1952         keymaps/lenovo-3000 \
1953         keymaps/lenovo-ideapad \
1954         keymaps/lenovo-thinkpad-usb-keyboard-trackpoint \
1955         keymaps/lenovo-thinkpad_x6_tablet \
1956         keymaps/lenovo-thinkpad_x200_tablet \
1957         keymaps/lg-x110 \
1958         keymaps/logitech-wave \
1959         keymaps/logitech-wave-cordless \
1960         keymaps/logitech-wave-pro-cordless \
1961         keymaps/maxdata-pro_7000 \
1962         keymaps/medion-fid2060 \
1963         keymaps/medionnb-a555 \
1964         keymaps/micro-star \
1965         keymaps/module-asus-w3j \
1966         keymaps/module-ibm \
1967         keymaps/module-lenovo \
1968         keymaps/module-sony \
1969         keymaps/module-sony-old \
1970         keymaps/module-sony-vgn \
1971         keymaps/olpc-xo \
1972         keymaps/onkyo \
1973         keymaps/oqo-model2 \
1974         keymaps/samsung-other \
1975         keymaps/samsung-90x3a \
1976         keymaps/samsung-sq1us \
1977         keymaps/samsung-sx20s \
1978         keymaps/toshiba-satellite_a100 \
1979         keymaps/toshiba-satellite_a110 \
1980         keymaps/toshiba-satellite_m30x \
1981         keymaps/zepto-znote
1982
1983 udevkeymapforcereldir = $(udevlibexecdir)/keymaps/force-release
1984 dist_udevkeymapforcerel_DATA = \
1985         keymaps-force-release/dell-touchpad \
1986         keymaps-force-release/dell-xps \
1987         keymaps-force-release/hp-other \
1988         keymaps-force-release/samsung-other \
1989         keymaps-force-release/samsung-90x3a \
1990         keymaps-force-release/common-volume-keys
1991
1992 src/udev/keymap/keys.txt: $(INCLUDE_PREFIX)/linux/input.h
1993         $(AM_V_at)mkdir -p src/udev/keymap
1994         $(AM_V_GEN)$(AWK) '/^#define.*KEY_[^ ]+[ \t]+[0-9]/ { if ($$2 != "KEY_MAX") { print $$2 } }' < $< | sed 's/^KEY_COFFEE$$/KEY_SCREENLOCK/' > $@
1995
1996 src/udev/keymap/keys-from-name.gperf: src/udev/keymap/keys.txt
1997         $(AM_V_GEN)$(AWK) 'BEGIN{ print "struct key { const char* name; unsigned short id; };"; print "%null-strings"; print "%%";} { print $$1 ", " $$1 }' < $< > $@
1998
1999 src/udev/keymap/keys-from-name.h: src/udev/keymap/keys-from-name.gperf Makefile
2000         $(AM_V_GEN)$(GPERF) -L ANSI-C -t --ignore-case -N lookup_key -H hash_key_name -p -C < $< > $@
2001
2002 src/udev/keymap/keys-to-name.h: src/udev/keymap/keys.txt Makefile
2003         $(AM_V_GEN)$(AWK) 'BEGIN{ print "const char* const key_names[KEY_CNT] = { "} { print "[" $$1 "] = \"" $$1 "\"," } END{print "};"}' < $< > $@
2004 endif
2005
2006 # ------------------------------------------------------------------------------
2007 mtd_probe_SOURCES =  \
2008         src/udev/mtd_probe/mtd_probe.c \
2009         src/udev/mtd_probe/mtd_probe.h \
2010         src/udev/mtd_probe/probe_smartmedia.c
2011
2012 mtd_probe_CPPFLAGS = \
2013         $(AM_CPPFLAGS)
2014
2015 dist_udevrules_DATA += \
2016         rules/75-probe_mtd.rules
2017
2018 udevlibexec_PROGRAMS += \
2019         mtd_probe
2020
2021 # ------------------------------------------------------------------------------
2022 libsystemd_id128_la_SOURCES = \
2023         src/libsystemd-id128/sd-id128.c
2024
2025 libsystemd_id128_la_CFLAGS = \
2026         $(AM_CFLAGS) \
2027         -fvisibility=hidden
2028
2029 libsystemd_id128_la_LDFLAGS = \
2030         $(AM_LDFLAGS) \
2031         -shared \
2032         -version-info $(LIBSYSTEMD_ID128_CURRENT):$(LIBSYSTEMD_ID128_REVISION):$(LIBSYSTEMD_ID128_AGE) \
2033         -Wl,--version-script=$(top_srcdir)/src/libsystemd-id128/libsystemd-id128.sym
2034
2035 libsystemd_id128_la_LIBADD = \
2036         libsystemd-shared.la
2037
2038 test_id128_SOURCES = \
2039         src/test/test-id128.c
2040
2041 test_id128_LDADD = \
2042         libsystemd-shared.la \
2043         libsystemd-id128.la
2044
2045 noinst_PROGRAMS += \
2046         test-id128
2047
2048 TESTS += \
2049         test-id128
2050
2051 pkginclude_HEADERS += \
2052         src/systemd/sd-id128.h
2053
2054 lib_LTLIBRARIES += \
2055         libsystemd-id128.la
2056
2057 pkgconfiglib_DATA += \
2058         src/libsystemd-id128/libsystemd-id128.pc
2059
2060 # move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
2061 libsystemd-id128-install-hook:
2062         if test "$(libdir)" != "$(rootlibdir)"; then \
2063                 mkdir -p $(DESTDIR)$(rootlibdir) && \
2064                 so_img_name=$$(readlink $(DESTDIR)$(libdir)/libsystemd-id128.so) && \
2065                 so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
2066                 ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libsystemd-id128.so && \
2067                 mv $(DESTDIR)$(libdir)/libsystemd-id128.so.* $(DESTDIR)$(rootlibdir); \
2068         fi
2069
2070 INSTALL_EXEC_HOOKS += \
2071         libsystemd-id128-install-hook
2072
2073 libsystemd-id128-uninstall-hook:
2074         rm -f $(DESTDIR)$(rootlibdir)/libsystemd-id128.so*
2075
2076 UNINSTALL_EXEC_HOOKS += \
2077         libsystemd-id128-uninstall-hook
2078
2079 EXTRA_DIST += \
2080         src/libsystemd-id128/libsystemd-id128.pc.in \
2081         src/libsystemd-id128/libsystemd-id128.sym
2082
2083 # ------------------------------------------------------------------------------
2084 systemd_journald_SOURCES = \
2085         src/journal/journald.c \
2086         src/journal/journald.h \
2087         src/journal/sd-journal.c \
2088         src/journal/journal-file.c \
2089         src/journal/journal-file.h \
2090         src/journal/lookup3.c \
2091         src/journal/lookup3.h \
2092         src/journal/journal-rate-limit.c \
2093         src/journal/journal-rate-limit.h \
2094         src/journal/sparse-endian.h \
2095         src/journal/journal-def.h \
2096         src/journal/journal-internal.h \
2097         src/journal/compress.h
2098
2099 nodist_systemd_journald_SOURCES = \
2100         src/journal/journald-gperf.c
2101
2102 systemd_journald_CFLAGS =
2103
2104 systemd_journald_LDADD = \
2105         libsystemd-label.la \
2106         libsystemd-shared.la \
2107         libsystemd-audit.la \
2108         libsystemd-daemon.la \
2109         libsystemd-id128.la
2110
2111 if ENABLE_LOGIND
2112 systemd_journald_LDADD += \
2113         libsystemd-login.la
2114 endif
2115
2116 if HAVE_ACL
2117 systemd_journald_LDADD += \
2118         libsystemd-acl.la
2119 endif
2120
2121 if HAVE_XZ
2122 systemd_journald_SOURCES += \
2123         src/journal/compress.c
2124
2125 systemd_journald_CFLAGS += \
2126         $(AM_CFLAGS) \
2127         $(XZ_CFLAGS)
2128
2129 systemd_journald_LDADD += \
2130         $(XZ_LIBS)
2131 endif
2132
2133 systemd_cat_SOURCES = \
2134         src/journal/cat.c
2135
2136 systemd_cat_LDADD = \
2137         libsystemd-shared.la \
2138         libsystemd-journal.la
2139
2140 journalctl_SOURCES = \
2141         src/journal/journalctl.c
2142
2143 journalctl_LDADD = \
2144         libsystemd-shared.la \
2145         libsystemd-journal.la \
2146         libsystemd-id128.la \
2147         libsystemd-logs.la
2148
2149 test_journal_SOURCES = \
2150         src/journal/test-journal.c \
2151         src/journal/sd-journal.c \
2152         src/journal/journal-file.c \
2153         src/journal/lookup3.c \
2154         src/journal/journal-send.c
2155
2156 test_journal_LDADD = \
2157         libsystemd-label.la \
2158         libsystemd-shared.la \
2159         libsystemd-id128.la
2160
2161 if HAVE_XZ
2162 test_journal_SOURCES += \
2163         src/journal/compress.c
2164
2165 test_journal_CFLAGS = \
2166         $(AM_CFLAGS) \
2167         $(XZ_CFLAGS)
2168
2169 test_journal_LDADD += \
2170         $(XZ_LIBS)
2171 endif
2172
2173 test_journal_send_SOURCES = \
2174         src/journal/test-journal-send.c
2175
2176 test_journal_send_LDADD = \
2177         libsystemd-shared.la \
2178         libsystemd-journal.la
2179
2180 libsystemd_journal_la_SOURCES = \
2181         src/journal/sd-journal.c \
2182         src/journal/journal-file.c \
2183         src/journal/lookup3.c \
2184         src/journal/journal-send.c
2185
2186 libsystemd_journal_la_CFLAGS = \
2187         $(AM_CFLAGS) \
2188         -fvisibility=hidden
2189
2190 libsystemd_journal_la_LDFLAGS = \
2191         $(AM_LDFLAGS) \
2192         -shared \
2193         -version-info $(LIBSYSTEMD_JOURNAL_CURRENT):$(LIBSYSTEMD_JOURNAL_REVISION):$(LIBSYSTEMD_JOURNAL_AGE) \
2194         -Wl,--version-script=$(top_srcdir)/src/journal/libsystemd-journal.sym
2195
2196 libsystemd_journal_la_LIBADD = \
2197         libsystemd-shared.la \
2198         libsystemd-id128.la
2199
2200 if HAVE_XZ
2201 libsystemd_journal_la_SOURCES += \
2202         src/journal/compress.c
2203
2204 libsystemd_journal_la_CFLAGS += \
2205         $(AM_CFLAGS) \
2206         $(XZ_CFLAGS)
2207
2208 libsystemd_journal_la_LIBADD += \
2209         $(XZ_LIBS)
2210 endif
2211
2212 # move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
2213 libsystemd-journal-install-hook:
2214         if test "$(libdir)" != "$(rootlibdir)"; then \
2215                 mkdir -p $(DESTDIR)$(rootlibdir) && \
2216                 so_img_name=$$(readlink $(DESTDIR)$(libdir)/libsystemd-journal.so) && \
2217                 so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
2218                 ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libsystemd-journal.so && \
2219                 mv $(DESTDIR)$(libdir)/libsystemd-journal.so.* $(DESTDIR)$(rootlibdir); \
2220         fi
2221
2222 INSTALL_EXEC_HOOKS += \
2223         libsystemd-journal-install-hook
2224
2225 libsystemd-journal-uninstall-hook:
2226         rm -f $(DESTDIR)$(rootlibdir)/libsystemd-journal.so*
2227
2228 UNINSTALL_EXEC_HOOKS += \
2229         libsystemd-journal-uninstall-hook
2230
2231 noinst_PROGRAMS += \
2232         test-journal \
2233         test-journal-send
2234
2235 pkginclude_HEADERS += \
2236         src/systemd/sd-journal.h \
2237         src/systemd/sd-messages.h
2238
2239 lib_LTLIBRARIES += \
2240         libsystemd-journal.la
2241
2242 rootlibexec_PROGRAMS += \
2243         systemd-journald
2244
2245 rootbin_PROGRAMS += \
2246         journalctl
2247
2248 bin_PROGRAMS += \
2249         systemd-cat
2250
2251 dist_systemunit_DATA += \
2252         units/systemd-journald.socket
2253
2254 nodist_systemunit_DATA += \
2255         units/systemd-journald.service
2256
2257 dist_pkgsysconf_DATA += \
2258         src/journal/journald.conf
2259
2260 pkgconfiglib_DATA += \
2261         src/journal/libsystemd-journal.pc
2262
2263 journal-install-data-hook:
2264         $(MKDIR_P) -m 0755 \
2265                 $(DESTDIR)$(systemunitdir)/sockets.target.wants \
2266                 $(DESTDIR)$(systemunitdir)/sysinit.target.wants
2267         ( cd $(DESTDIR)$(systemunitdir)/sockets.target.wants && \
2268                 rm -f systemd-journald.socket && \
2269                 $(LN_S) ../systemd-journald.socket )
2270         ( cd $(DESTDIR)$(systemunitdir)/sysinit.target.wants && \
2271                 rm -f systemd-journald.service && \
2272                 $(LN_S) ../systemd-journald.service )
2273
2274 INSTALL_DATA_HOOKS += \
2275         journal-install-data-hook
2276
2277 EXTRA_DIST += \
2278         src/journal/libsystemd-journal.pc.in \
2279         src/journal/libsystemd-journal.sym \
2280         units/systemd-journald.service.in \
2281         src/journal/journald-gperf.gperf
2282
2283 CLEANFILES += \
2284         src/journal/journald-gperf.c
2285
2286 # ------------------------------------------------------------------------------
2287 if ENABLE_COREDUMP
2288 systemd_coredump_SOURCES = \
2289         src/journal/coredump.c
2290
2291 systemd_coredump_LDADD = \
2292         libsystemd-journal.la \
2293         libsystemd-label.la \
2294         libsystemd-shared.la
2295
2296 if ENABLE_LOGIND
2297 systemd_coredump_LDADD += \
2298         libsystemd-login.la
2299 endif
2300
2301 rootlibexec_PROGRAMS += \
2302         systemd-coredump
2303
2304 sysctl_DATA = \
2305         sysctl.d/coredump.conf
2306
2307 EXTRA_DIST += \
2308         sysctl.d/coredump.conf.in
2309
2310 CLEANFILES += \
2311         sysctl.d/coredump.conf
2312 endif
2313
2314 # ------------------------------------------------------------------------------
2315 if ENABLE_BINFMT
2316 systemd_binfmt_SOURCES = \
2317         src/binfmt/binfmt.c
2318
2319 systemd_binfmt_LDADD = \
2320         libsystemd-shared.la
2321
2322 rootlibexec_PROGRAMS += \
2323         systemd-binfmt
2324
2325 dist_systemunit_DATA += \
2326         units/proc-sys-fs-binfmt_misc.automount \
2327         units/proc-sys-fs-binfmt_misc.mount
2328
2329 nodist_systemunit_DATA += \
2330         units/systemd-binfmt.service
2331
2332 binfmt-install-data-hook:
2333         $(MKDIR_P) -m 0755 \
2334                 $(DESTDIR)$(prefix)/lib/binfmt.d \
2335                 $(DESTDIR)$(sysconfdir)/binfmt.d \
2336                 $(DESTDIR)$(systemunitdir)/sysinit.target.wants
2337         ( cd $(DESTDIR)$(systemunitdir)/sysinit.target.wants && \
2338                 rm -f systemd-binfmt.service \
2339                         proc-sys-fs-binfmt_misc.automount && \
2340                 $(LN_S) ../systemd-binfmt.service systemd-binfmt.service && \
2341                 $(LN_S) ../proc-sys-fs-binfmt_misc.automount proc-sys-fs-binfmt_misc.automount )
2342
2343 INSTALL_DATA_HOOKS += \
2344         binfmt-install-data-hook
2345
2346 MANPAGES += \
2347         man/binfmt.d.5 \
2348         man/systemd-binfmt.service.8
2349
2350 MANPAGES_ALIAS +=  \
2351         man/systemd-binfmt.8
2352
2353 man/systemd-binfmt.8: man/systemd-binfmt.service.8
2354
2355 EXTRA_DIST += \
2356         units/systemd-binfmt.service.in
2357 endif
2358
2359 # ------------------------------------------------------------------------------
2360 if ENABLE_VCONSOLE
2361 systemd_vconsole_setup_SOURCES = \
2362         src/vconsole/vconsole-setup.c
2363
2364 systemd_vconsole_setup_LDADD = \
2365         libsystemd-shared.la
2366
2367 rootlibexec_PROGRAMS += \
2368         systemd-vconsole-setup
2369
2370 nodist_systemunit_DATA += \
2371         units/systemd-vconsole-setup.service
2372
2373 vconsole-install-data-hook:
2374         $(MKDIR_P) -m 0755 \
2375                 $(DESTDIR)$(systemunitdir)/sysinit.target.wants
2376         ( cd $(DESTDIR)$(systemunitdir)/sysinit.target.wants && \
2377                 rm -f systemd-vconsole-setup.service && \
2378                 $(LN_S) ../systemd-vconsole-setup.service systemd-vconsole-setup.service )
2379
2380 INSTALL_DATA_HOOKS += \
2381         vconsole-install-data-hook
2382
2383 MANPAGES += \
2384         man/vconsole.conf.5 \
2385         man/systemd-vconsole-setup.service.8
2386
2387 MANPAGES_ALIAS += \
2388         man/systemd-vconsole-setup.8
2389
2390 man/systemd-vconsole-setup.8: man/systemd-vconsole-setup.service.8
2391
2392 EXTRA_DIST += \
2393         units/systemd-vconsole-setup.service.in
2394 endif
2395
2396 # ------------------------------------------------------------------------------
2397 if ENABLE_READAHEAD
2398 systemd_readahead_SOURCES = \
2399         src/readahead/readahead.c \
2400         src/readahead/readahead-collect.c \
2401         src/readahead/readahead-replay.c \
2402         src/readahead/readahead-analyze.c \
2403         src/readahead/readahead-common.c \
2404         src/readahead/readahead-common.h
2405
2406 systemd_readahead_LDADD = \
2407         libsystemd-shared.la \
2408         libsystemd-daemon.la \
2409         libudev.la
2410
2411 pkginclude_HEADERS += \
2412         src/systemd/sd-readahead.h
2413
2414 rootlibexec_PROGRAMS += \
2415         systemd-readahead
2416
2417 dist_systemunit_DATA += \
2418         units/systemd-readahead-drop.service \
2419         units/systemd-readahead-done.timer
2420
2421 nodist_systemunit_DATA += \
2422         units/systemd-readahead-collect.service \
2423         units/systemd-readahead-replay.service \
2424         units/systemd-readahead-done.service
2425
2426 EXTRA_DIST += \
2427         units/systemd-readahead-collect.service.in \
2428         units/systemd-readahead-replay.service.in \
2429         units/systemd-readahead-done.service.in
2430
2431 MANPAGES += \
2432         man/sd_readahead.3 \
2433         man/sd-readahead.7
2434 endif
2435
2436 # ------------------------------------------------------------------------------
2437 if ENABLE_QUOTACHECK
2438 rootlibexec_PROGRAMS += \
2439         systemd-quotacheck
2440
2441 nodist_systemunit_DATA += \
2442         units/quotacheck.service
2443
2444 EXTRA_DIST += \
2445         units/quotacheck.service.in
2446
2447 systemd_quotacheck_SOURCES = \
2448         src/quotacheck/quotacheck.c
2449
2450 systemd_quotacheck_LDADD = \
2451         libsystemd-shared.la
2452 endif
2453
2454 # ------------------------------------------------------------------------------
2455 if ENABLE_RANDOMSEED
2456 rootlibexec_PROGRAMS += \
2457         systemd-random-seed
2458
2459 nodist_systemunit_DATA += \
2460         units/systemd-random-seed-save.service \
2461         units/systemd-random-seed-load.service
2462
2463 EXTRA_DIST += \
2464         units/systemd-random-seed-save.service.in \
2465         units/systemd-random-seed-load.service.in
2466
2467 systemd_random_seed_SOURCES = \
2468         src/random-seed/random-seed.c
2469
2470 systemd_random_seed_LDADD = \
2471         libsystemd-label.la \
2472         libsystemd-shared.la
2473
2474 randomseed-install-data-hook:
2475         $(MKDIR_P) -m 0755 \
2476                 $(DESTDIR)$(systemunitdir)/shutdown.target.wants \
2477                 $(DESTDIR)$(systemunitdir)/sysinit.target.wants
2478         ( cd $(DESTDIR)$(systemunitdir)/shutdown.target.wants && \
2479                 rm -f systemd-random-seed-save.service && \
2480                 $(LN_S) ../systemd-random-seed-save.service systemd-random-seed-save.service )
2481         ( cd $(DESTDIR)$(systemunitdir)/sysinit.target.wants && \
2482                 rm -f systemd-random-seed-load.service && \
2483                 $(LN_S) ../systemd-random-seed-load.service systemd-random-seed-load.service )
2484
2485 INSTALL_DATA_HOOKS += \
2486         randomseed-install-data-hook
2487
2488 MANPAGES += \
2489         man/systemd-random-seed-load.service.8
2490
2491 MANPAGES_ALIAS +=  \
2492         man/systemd-random-seed-save.service.8 \
2493         man/systemd-random-seed.8
2494
2495 man/systemd-random-seed-save.service.8: man/systemd-random-seed-load.service.8
2496 man/systemd-random-seed.8: man/systemd-random-seed-load.service.8
2497
2498 endif
2499
2500 # ------------------------------------------------------------------------------
2501 if HAVE_LIBCRYPTSETUP
2502 rootlibexec_PROGRAMS += \
2503         systemd-cryptsetup
2504
2505 systemgenerator_PROGRAMS += \
2506         systemd-cryptsetup-generator
2507
2508 dist_systemunit_DATA += \
2509         units/cryptsetup.target
2510
2511 systemd_cryptsetup_SOURCES = \
2512         src/cryptsetup/cryptsetup.c
2513
2514 systemd_cryptsetup_CFLAGS = \
2515         $(AM_CFLAGS) \
2516         $(LIBCRYPTSETUP_CFLAGS)
2517
2518 systemd_cryptsetup_LDADD = \
2519         libsystemd-label.la \
2520         libsystemd-shared.la \
2521         libudev.la \
2522         $(LIBCRYPTSETUP_LIBS)
2523
2524 systemd_cryptsetup_generator_SOURCES = \
2525         src/cryptsetup/cryptsetup-generator.c
2526
2527 systemd_cryptsetup_generator_LDADD = \
2528         libsystemd-label.la \
2529         libsystemd-shared.la
2530
2531 cryptsetup-install-data-hook:
2532         $(MKDIR_P) -m 0755 \
2533                 $(DESTDIR)$(systemunitdir)/sysinit.target.wants
2534         ( cd $(DESTDIR)$(systemunitdir)/sysinit.target.wants && \
2535                 rm -f cryptsetup.target && \
2536                 $(LN_S) ../cryptsetup.target cryptsetup.target )
2537
2538 INSTALL_DATA_HOOKS += \
2539         cryptsetup-install-data-hook
2540 endif
2541
2542 # ------------------------------------------------------------------------------
2543 if ENABLE_HOSTNAMED
2544 systemd_hostnamed_SOURCES = \
2545         src/hostname/hostnamed.c
2546
2547 systemd_hostnamed_CFLAGS = \
2548         $(AM_CFLAGS) \
2549         $(DBUS_CFLAGS)
2550
2551 systemd_hostnamed_LDADD = \
2552         libsystemd-shared.la \
2553         libsystemd-daemon.la \
2554         libsystemd-dbus.la
2555
2556 rootlibexec_PROGRAMS += \
2557         systemd-hostnamed
2558
2559 nodist_systemunit_DATA += \
2560         units/systemd-hostnamed.service
2561
2562 dist_dbuspolicy_DATA += \
2563         src/hostname/org.freedesktop.hostname1.conf
2564
2565 dist_dbussystemservice_DATA += \
2566         src/hostname/org.freedesktop.hostname1.service
2567
2568 polkitpolicy_in_files += \
2569         src/hostname/org.freedesktop.hostname1.policy.in
2570
2571 dbusinterface_DATA += \
2572         org.freedesktop.hostname1.xml
2573
2574 org.freedesktop.hostname1.xml: systemd-hostnamed
2575         $(AM_V_GEN)$(LIBTOOL) --mode=execute $(OBJCOPY) -O binary -j introspect.hostname1 $< $@.tmp && \
2576                 $(STRINGS) $@.tmp | $(AWK) -f $(srcdir)/introspect.awk | \
2577                 $(DBUS_PREPROCESS) -o $@ - && rm $@.tmp
2578
2579 hostnamed-install-data-hook:
2580         ( cd $(DESTDIR)$(systemunitdir) && \
2581                 rm -f dbus-org.freedesktop.hostname1.service && \
2582                 $(LN_S) systemd-hostnamed.service dbus-org.freedesktop.hostname1.service )
2583
2584 INSTALL_DATA_HOOKS += \
2585         hostnamed-install-data-hook
2586
2587 EXTRA_DIST += \
2588         units/systemd-hostnamed.service.in
2589 endif
2590
2591 # ------------------------------------------------------------------------------
2592 if ENABLE_LOCALED
2593 systemd_localed_SOURCES = \
2594         src/locale/localed.c
2595
2596 systemd_localed_CFLAGS = \
2597         $(AM_CFLAGS) \
2598         $(DBUS_CFLAGS)
2599
2600 systemd_localed_LDADD = \
2601         libsystemd-label.la \
2602         libsystemd-shared.la \
2603         libsystemd-daemon.la \
2604         libsystemd-dbus.la
2605
2606 nodist_systemunit_DATA += \
2607         units/systemd-localed.service
2608
2609 rootlibexec_PROGRAMS += \
2610         systemd-localed
2611
2612 dist_dbuspolicy_DATA += \
2613         src/locale/org.freedesktop.locale1.conf
2614
2615 dist_dbussystemservice_DATA += \
2616         src/locale/org.freedesktop.locale1.service
2617
2618 polkitpolicy_in_files += \
2619         src/locale/org.freedesktop.locale1.policy.in
2620
2621 dbusinterface_DATA += \
2622         org.freedesktop.locale1.xml
2623
2624 org.freedesktop.locale1.xml: systemd-localed
2625         $(AM_V_GEN)$(LIBTOOL) --mode=execute $(OBJCOPY) -O binary -j introspect.locale1 $< $@.tmp && \
2626                 $(STRINGS) $@.tmp | $(AWK) -f $(srcdir)/introspect.awk | \
2627                 $(DBUS_PREPROCESS) -o $@ - && rm $@.tmp
2628
2629 localed-install-data-hook:
2630         ( cd $(DESTDIR)$(systemunitdir) && \
2631                 rm -f dbus-org.freedesktop.locale1.service && \
2632                 $(LN_S) systemd-localed.service dbus-org.freedesktop.locale1.service )
2633
2634 INSTALL_DATA_HOOKS += \
2635         localed-install-data-hook
2636
2637 EXTRA_DIST += \
2638         units/systemd-localed.service.in
2639
2640 dist_pkgdata_DATA = \
2641         src/locale/kbd-model-map
2642
2643 dist_noinst_SCRIPT = \
2644         src/locale/generate-kbd-model-map
2645
2646 update-kbd-model-map:
2647         src/locale/generate-kbd-model-map > src/locale/kbd-model-map
2648
2649 endif
2650
2651 # ------------------------------------------------------------------------------
2652 if ENABLE_TIMEDATED
2653 systemd_timedated_SOURCES = \
2654         src/timedate/timedated.c
2655
2656 systemd_timedated_CFLAGS = \
2657         $(AM_CFLAGS) \
2658         $(DBUS_CFLAGS)
2659
2660 systemd_timedated_LDADD = \
2661         libsystemd-shared.la \
2662         libsystemd-daemon.la \
2663         libsystemd-dbus.la
2664
2665 rootlibexec_PROGRAMS += \
2666         systemd-timedated
2667
2668 dist_dbussystemservice_DATA += \
2669         src/timedate/org.freedesktop.timedate1.service
2670
2671 dist_dbuspolicy_DATA += \
2672         src/timedate/org.freedesktop.timedate1.conf
2673
2674 nodist_systemunit_DATA += \
2675         units/systemd-timedated.service
2676
2677 polkitpolicy_in_files += \
2678         src/timedate/org.freedesktop.timedate1.policy.in
2679
2680 org.freedesktop.timedate1.xml: systemd-timedated
2681         $(AM_V_GEN)$(LIBTOOL) --mode=execute $(OBJCOPY) -O binary -j introspect.timedate1 $< $@.tmp && \
2682                 $(STRINGS) $@.tmp | $(AWK) -f $(srcdir)/introspect.awk | \
2683                 $(DBUS_PREPROCESS) -o $@ - && rm $@.tmp
2684
2685 dbusinterface_DATA += \
2686         org.freedesktop.timedate1.xml
2687
2688 timedated-install-data-hook:
2689         ( cd $(DESTDIR)$(systemunitdir) && \
2690                 rm -f dbus-org.freedesktop.timedate1.service  && \
2691                 $(LN_S) systemd-timedated.service dbus-org.freedesktop.timedate1.service )
2692
2693 INSTALL_DATA_HOOKS += \
2694         timedated-install-data-hook
2695
2696 EXTRA_DIST += \
2697         units/systemd-timedated.service.in
2698 endif
2699
2700 # ------------------------------------------------------------------------------
2701 if ENABLE_LOGIND
2702 systemd_logind_SOURCES = \
2703         src/login/logind.c \
2704         src/login/logind.h \
2705         src/login/logind-dbus.c \
2706         src/login/logind-device.c \
2707         src/login/logind-device.h \
2708         src/login/logind-button.c \
2709         src/login/logind-button.h \
2710         src/login/logind-seat.c \
2711         src/login/logind-seat.h \
2712         src/login/logind-session.c \
2713         src/login/logind-session.h \
2714         src/login/logind-user.c \
2715         src/login/logind-user.h \
2716         src/login/logind-inhibit.c \
2717         src/login/logind-inhibit.h \
2718         src/login/logind-session-dbus.c \
2719         src/login/logind-seat-dbus.c \
2720         src/login/logind-user-dbus.c \
2721         src/login/logind-acl.h
2722
2723 nodist_systemd_logind_SOURCES = \
2724         src/login/logind-gperf.c
2725
2726 systemd_logind_CFLAGS = \
2727         $(AM_CFLAGS) \
2728         $(DBUS_CFLAGS)
2729
2730 systemd_logind_LDADD = \
2731         libsystemd-label.la \
2732         libsystemd-shared.la \
2733         libsystemd-audit.la \
2734         libsystemd-daemon.la \
2735         libsystemd-dbus.la \
2736         libudev.la
2737
2738 if HAVE_ACL
2739 systemd_logind_SOURCES += \
2740         src/login/logind-acl.c
2741
2742 systemd_logind_LDADD += \
2743         libsystemd-acl.la
2744 endif
2745
2746 systemd_user_sessions_SOURCES = \
2747         src/login/user-sessions.c
2748
2749 systemd_user_sessions_LDADD = \
2750         libsystemd-shared.la
2751
2752 rootlibexec_PROGRAMS += \
2753         systemd-logind \
2754         systemd-user-sessions
2755
2756 loginctl_SOURCES = \
2757         src/login/loginctl.c \
2758         src/login/sysfs-show.c
2759
2760 loginctl_CFLAGS = \
2761         $(AM_CFLAGS) \
2762         $(DBUS_CFLAGS)
2763
2764 loginctl_LDADD = \
2765         libsystemd-shared.la \
2766         libsystemd-dbus.la \
2767         libudev.la
2768
2769 rootbin_PROGRAMS += \
2770         loginctl
2771
2772 systemd_inhibit_SOURCES = \
2773         src/login/inhibit.c
2774
2775 systemd_inhibit_CFLAGS = \
2776         $(AM_CFLAGS) \
2777         $(DBUS_CFLAGS)
2778
2779 systemd_inhibit_LDADD = \
2780         libsystemd-shared.la \
2781         libsystemd-dbus.la
2782
2783 rootbin_PROGRAMS += \
2784         systemd-inhibit
2785
2786 test_login_SOURCES = \
2787         src/login/test-login.c
2788
2789 test_login_LDADD = \
2790         libsystemd-login.la \
2791         libsystemd-shared.la
2792
2793 test_inhibit_SOURCES = \
2794         src/login/test-inhibit.c
2795
2796 test_inhibit_LDADD = \
2797         libsystemd-shared.la \
2798         libsystemd-dbus.la
2799
2800 test_inhibit_CFLAGS = \
2801         $(AM_CFLAGS) \
2802         $(DBUS_CFLAGS)
2803
2804 noinst_PROGRAMS += \
2805         test-login \
2806         test-inhibit
2807
2808 libsystemd_login_la_SOURCES = \
2809         src/login/sd-login.c
2810
2811 libsystemd_login_la_CFLAGS = \
2812         $(AM_CFLAGS) \
2813         -fvisibility=hidden
2814
2815 libsystemd_login_la_LDFLAGS = \
2816         $(AM_LDFLAGS) \
2817         -shared \
2818         -version-info $(LIBSYSTEMD_LOGIN_CURRENT):$(LIBSYSTEMD_LOGIN_REVISION):$(LIBSYSTEMD_LOGIN_AGE) \
2819         -Wl,--version-script=$(top_srcdir)/src/login/libsystemd-login.sym
2820
2821 libsystemd_login_la_LIBADD = \
2822         libsystemd-shared.la
2823
2824 if HAVE_PAM
2825 pam_systemd_la_SOURCES = \
2826         src/login/pam-module.c
2827
2828 pam_systemd_la_CFLAGS = \
2829         $(AM_CFLAGS) \
2830         $(PAM_CFLAGS) \
2831         $(DBUS_CFLAGS) \
2832         -fvisibility=hidden
2833
2834 pam_systemd_la_LDFLAGS = \
2835         $(AM_LDFLAGS) \
2836         -module \
2837         -export-dynamic \
2838         -avoid-version \
2839         -shared \
2840         -export-symbols-regex '^pam_sm_.*'
2841
2842 pam_systemd_la_LIBADD = \
2843         libsystemd-daemon.la \
2844         libsystemd-audit.la \
2845         libsystemd-dbus.la \
2846         libsystemd-shared.la \
2847         $(PAM_LIBS)
2848
2849 pamlib_LTLIBRARIES = \
2850         pam_systemd.la
2851 endif
2852
2853 # move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
2854 libsystemd-login-install-hook:
2855         if test "$(libdir)" != "$(rootlibdir)"; then \
2856                 mkdir -p $(DESTDIR)$(rootlibdir) && \
2857                 so_img_name=$$(readlink $(DESTDIR)$(libdir)/libsystemd-login.so) && \
2858                 so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
2859                 ln -sf $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/libsystemd-login.so && \
2860                 mv $(DESTDIR)$(libdir)/libsystemd-login.so.* $(DESTDIR)$(rootlibdir); \
2861         fi
2862
2863 INSTALL_EXEC_HOOKS += \
2864         libsystemd-login-install-hook
2865
2866 libsystemd-login-uninstall-hook:
2867         rm -f $(DESTDIR)$(rootlibdir)/libsystemd-login.so*
2868
2869 UNINSTALL_EXEC_HOOKS += \
2870         libsystemd-login-uninstall-hook
2871
2872 nodist_systemunit_DATA += \
2873         units/systemd-logind.service \
2874         units/systemd-user-sessions.service
2875
2876 dist_dbussystemservice_DATA += \
2877         src/login/org.freedesktop.login1.service
2878
2879 dist_dbuspolicy_DATA += \
2880         src/login/org.freedesktop.login1.conf
2881
2882 dist_pkgsysconf_DATA += \
2883         src/login/logind.conf
2884
2885 pkginclude_HEADERS += \
2886         src/systemd/sd-login.h
2887
2888 lib_LTLIBRARIES += \
2889         libsystemd-login.la
2890
2891 pkgconfiglib_DATA += \
2892         src/login/libsystemd-login.pc
2893
2894 polkitpolicy_in_files += \
2895         src/login/org.freedesktop.login1.policy.in
2896
2897 logind-install-data-hook:
2898         $(MKDIR_P) -m 0755 \
2899                 $(DESTDIR)$(systemunitdir)/multi-user.target.wants \
2900                 $(DESTDIR)$(localstatedir)/lib/systemd
2901         ( cd $(DESTDIR)$(systemunitdir) && \
2902                 rm -f dbus-org.freedesktop.login1.service && \
2903                 $(LN_S) systemd-logind.service dbus-org.freedesktop.login1.service)
2904         ( cd $(DESTDIR)$(systemunitdir)/multi-user.target.wants && \
2905                 rm -f systemd-logind.service systemd-user-sessions.service && \
2906                 $(LN_S) ../systemd-logind.service systemd-logind.service && \
2907                 $(LN_S) ../systemd-user-sessions.service systemd-user-sessions.service )
2908
2909 INSTALL_DATA_HOOKS += \
2910         logind-install-data-hook
2911
2912 systemd_multi_seat_x_SOURCES = \
2913         src/login/multi-seat-x.c
2914
2915 systemd_multi_seat_x_LDADD = \
2916         libsystemd-label.la \
2917         libsystemd-shared.la \
2918         libudev.la
2919
2920 rootlibexec_PROGRAMS += \
2921         systemd-multi-seat-x
2922
2923 dist_udevrules_DATA += \
2924         src/login/70-uaccess.rules \
2925         src/login/70-power-switch.rules
2926
2927 nodist_udevrules_DATA += \
2928         src/login/71-seat.rules \
2929         src/login/73-seat-late.rules
2930
2931 MANPAGES += \
2932         man/systemd-logind.service.8 \
2933         man/logind.conf.5 \
2934         man/sd-login.7 \
2935         man/loginctl.1 \
2936         man/sd_login_monitor_new.3 \
2937         man/sd_pid_get_session.3 \
2938         man/sd_uid_get_state.3 \
2939         man/sd_session_is_active.3 \
2940         man/sd_seat_get_active.3 \
2941         man/sd_get_seats.3
2942
2943 MANPAGES_ALIAS += \
2944         man/systemd-logind.8 \
2945         man/sd_login_monitor_unref.3 \
2946         man/sd_login_monitor_flush.3 \
2947         man/sd_login_monitor_get_fd.3 \
2948         man/sd_session_get_uid.3 \
2949         man/sd_session_get_seat.3 \
2950         man/sd_session_get_service.3 \
2951         man/sd_session_get_type.3 \
2952         man/sd_session_get_class.3 \
2953         man/sd_session_get_display.3 \
2954         man/sd_pid_get_owner_uid.3 \
2955         man/sd_pid_get_unit.3 \
2956         man/sd_uid_is_on_seat.3 \
2957         man/sd_uid_get_sessions.3 \
2958         man/sd_uid_get_seats.3 \
2959         man/sd_seat_get_sessions.3 \
2960         man/sd_seat_can_multi_session.3 \
2961         man/sd_get_sessions.3 \
2962         man/sd_get_uids.3
2963
2964 man/systemd-logind.8: man/systemd-logind.service.8
2965 man/sd_login_monitor_unref.3: man/sd_login_monitor_new.3
2966 man/sd_login_monitor_flush.3: man/sd_login_monitor_new.3
2967 man/sd_login_monitor_get_fd.3: man/sd_login_monitor_new.3
2968 man/sd_session_get_uid.3: man/sd_session_is_active.3
2969 man/sd_session_get_seat.3: man/sd_session_is_active.3
2970 man/sd_session_get_service.3: man/sd_session_is_active.3
2971 man/sd_session_get_type.3: man/sd_session_is_active.3
2972 man/sd_session_get_class.3: man/sd_session_is_active.3
2973 man/sd_session_get_display.3: man/sd_session_is_active.3
2974 man/sd_pid_get_owner_uid.3: man/sd_pid_get_session.3
2975 man/sd_pid_get_unit.3: man/sd_pid_get_session.3
2976 man/sd_uid_is_on_seat.3: man/sd_uid_get_state.3
2977 man/sd_uid_get_sessions.3: man/sd_uid_get_state.3
2978 man/sd_uid_get_seats.3: man/sd_uid_get_state.3
2979 man/sd_seat_get_sessions.3: man/sd_seat_get_active.3
2980 man/sd_seat_can_multi_session.3: man/sd_seat_get_active.3
2981 man/sd_get_sessions.3: man/sd_get_seats.3
2982 man/sd_get_uids.3: man/sd_get_seats.3
2983
2984 EXTRA_DIST += \
2985         src/login/logind-gperf.gperf \
2986         src/login/libsystemd-login.pc.in \
2987         src/login/libsystemd-login.sym \
2988         src/login/71-seat.rules.in \
2989         src/login/73-seat-late.rules.in \
2990         units/systemd-logind.service.in \
2991         units/systemd-user-sessions.service.in
2992
2993 CLEANFILES += \
2994         src/login/logind-gperf.c \
2995         src/login/71-seat.rules \
2996         src/login/73-seat-late.rules
2997 endif
2998 # ------------------------------------------------------------------------------
2999
3000 SED_PROCESS = \
3001         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
3002         $(SED)  -e 's,@rootlibexecdir\@,$(rootlibexecdir),g' \
3003                 -e 's,@rootbindir\@,$(rootbindir),g' \
3004                 -e 's,@bindir\@,$(bindir),g' \
3005                 -e 's,@SYSTEMCTL\@,$(rootbindir)/systemctl,g' \
3006                 -e 's,@SYSTEMD_NOTIFY\@,$(rootbindir)/systemd-notify,g' \
3007                 -e 's,@pkgsysconfdir\@,$(pkgsysconfdir),g' \
3008                 -e 's,@pkgdatadir\@,$(pkgdatadir),g' \
3009                 -e 's,@systemunitdir\@,$(systemunitdir),g' \
3010                 -e 's,@userunitdir\@,$(userunitdir),g' \
3011                 -e 's,@PACKAGE_VERSION\@,$(PACKAGE_VERSION),g' \
3012                 -e 's,@PACKAGE_NAME\@,$(PACKAGE_NAME),g' \
3013                 -e 's,@PACKAGE_URL\@,$(PACKAGE_URL),g' \
3014                 -e 's,@RANDOM_SEED\@,$(localstatedir)/lib/random-seed,g' \
3015                 -e 's,@prefix\@,$(prefix),g' \
3016                 -e 's,@exec_prefix\@,$(exec_prefix),g' \
3017                 -e 's,@libdir\@,$(libdir),g' \
3018                 -e 's,@includedir\@,$(includedir),g' \
3019                 -e 's,@VERSION\@,$(VERSION),g' \
3020                 -e 's,@rootprefix\@,$(rootprefix),g' \
3021                 -e 's,@udevlibexecdir\@,$(udevlibexecdir),g' \
3022                 -e 's,@sushell\@,$(sushell),g' \
3023                 < $< > $@ || rm $@
3024
3025 units/%: units/%.in Makefile
3026         $(SED_PROCESS)
3027
3028 man/%: man/%.in Makefile
3029         $(SED_PROCESS)
3030
3031 sysctl.d/%: sysctl.d/%.in Makefile
3032         $(SED_PROCESS)
3033
3034 %.pc: %.pc.in Makefile
3035         $(SED_PROCESS)
3036
3037 src/core/macros.%: src/core/macros.%.in Makefile
3038         $(SED_PROCESS)
3039
3040 src/%.policy.in: src/%.policy.in.in Makefile
3041         $(SED_PROCESS)
3042
3043 %.rules: %.rules.in Makefile
3044         $(SED_PROCESS)
3045
3046 %.sh: %.sh.in Makefile
3047         $(SED_PROCESS)
3048         $(AM_V_GEN)chmod +x $@
3049
3050 src/%.c: src/%.gperf
3051         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
3052         $(GPERF) < $< > $@
3053
3054 src/%: src/%.m4
3055         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
3056         $(M4) -P $(M4_DEFINES) < $< > $@ || rm $@
3057
3058 M4_PROCESS_SYSTEM = \
3059         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
3060         $(M4) -P $(M4_DEFINES) -DFOR_SYSTEM=1 < $< > $@ || rm $@
3061
3062 M4_PROCESS_USER = \
3063         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
3064         $(M4) -P $(M4_DEFINES) -DFOR_USER=1 < $< > $@ || rm $@
3065
3066 units/%: units/%.m4 Makefile
3067         $(M4_PROCESS_SYSTEM)
3068
3069 units/user/%: units/%.m4 Makefile
3070         $(M4_PROCESS_USER)
3071
3072 nodist_polkitpolicy_DATA = \
3073         $(polkitpolicy_in_files:.policy.in=.policy) \
3074         $(polkitpolicy_in_in_files:.policy.in.in=.policy)
3075
3076 EXTRA_DIST += \
3077         $(polkitpolicy_in_files) \
3078         $(polkitpolicy_in_in_files)
3079
3080 CLEANFILES += \
3081         $(nodist_systemunit_DATA) \
3082         $(nodist_userunit_DATA) \
3083         $(nodist_man_MANS) \
3084         $(pkgconfigdata_DATA) \
3085         $(pkgconfiglib_DATA) \
3086         $(nodist_polkitpolicy_DATA)
3087
3088 if HAVE_XSLTPROC
3089 XSLTPROC_FLAGS = \
3090         --nonet \
3091         --stringparam man.output.quietly 1 \
3092         --stringparam funcsynopsis.style ansi
3093
3094 XSLTPROC_PROCESS_MAN = \
3095         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
3096         $(XSLTPROC) -o $@ $(XSLTPROC_FLAGS) http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $<
3097
3098 XSLTPROC_PROCESS_HTML = \
3099         $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
3100         $(XSLTPROC) -o $@ $(XSLTPROC_FLAGS) $(srcdir)/man/custom-html.xsl $<
3101
3102 man/%.1: man/%.xml
3103         $(XSLTPROC_PROCESS_MAN)
3104
3105 man/%.3: man/%.xml
3106         $(XSLTPROC_PROCESS_MAN)
3107
3108 man/%.5: man/%.xml
3109         $(XSLTPROC_PROCESS_MAN)
3110
3111 man/%.7: man/%.xml
3112         $(XSLTPROC_PROCESS_MAN)
3113
3114 man/%.8: man/%.xml
3115         $(XSLTPROC_PROCESS_MAN)
3116
3117 man/%.html: man/%.xml
3118         $(XSLTPROC_PROCESS_HTML)
3119
3120 CLEANFILES += \
3121         $(dist_man_MANS) \
3122         ${XML_FILES:.xml=.html}
3123 endif
3124
3125 DBUS_PREPROCESS = $(CPP) -P $(DBUS_CFLAGS) -imacros dbus/dbus-protocol.h
3126
3127 CLEANFILES += \
3128         $(dbusinterface_DATA)
3129
3130 systemd-install-data-hook:
3131         $(MKDIR_P) -m 0755 \
3132                 $(DESTDIR)$(tmpfilesdir) \
3133                 $(DESTDIR)$(sysconfdir)/tmpfiles.d \
3134                 $(DESTDIR)$(prefix)/lib/modules-load.d \
3135                 $(DESTDIR)$(sysconfdir)/modules-load.d \
3136                 $(DESTDIR)$(prefix)/lib/sysctl.d \
3137                 $(DESTDIR)$(sysconfdir)/sysctl.d \
3138                 $(DESTDIR)$(systemshutdowndir) \
3139                 $(DESTDIR)$(systemsleepdir) \
3140                 $(DESTDIR)$(systemgeneratordir) \
3141                 $(DESTDIR)$(usergeneratordir)
3142         $(MKDIR_P) -m 0755 \
3143                 $(DESTDIR)$(systemunitdir) \
3144                 $(DESTDIR)$(userunitdir) \
3145                 $(DESTDIR)$(systemunitdir)/sysinit.target.wants \
3146                 $(DESTDIR)$(systemunitdir)/sockets.target.wants \
3147                 $(DESTDIR)$(systemunitdir)/basic.target.wants \
3148                 $(DESTDIR)$(systemunitdir)/shutdown.target.wants \
3149                 $(DESTDIR)$(systemunitdir)/local-fs.target.wants \
3150                 $(DESTDIR)$(systemunitdir)/runlevel1.target.wants \
3151                 $(DESTDIR)$(systemunitdir)/runlevel2.target.wants \
3152                 $(DESTDIR)$(systemunitdir)/runlevel3.target.wants \
3153                 $(DESTDIR)$(systemunitdir)/runlevel4.target.wants \
3154                 $(DESTDIR)$(systemunitdir)/runlevel5.target.wants \
3155                 $(DESTDIR)$(systemunitdir)/multi-user.target.wants \
3156                 $(DESTDIR)$(systemunitdir)/graphical.target.wants \
3157                 $(DESTDIR)$(pkgsysconfdir)/system \
3158                 $(DESTDIR)$(pkgsysconfdir)/system/sysinit.target.wants \
3159                 $(DESTDIR)$(pkgsysconfdir)/system/local-fs.target.wants \
3160                 $(DESTDIR)$(pkgsysconfdir)/system/multi-user.target.wants \
3161                 $(DESTDIR)$(pkgsysconfdir)/system/getty.target.wants \
3162                 $(DESTDIR)$(pkgsysconfdir)/user \
3163                 $(DESTDIR)$(dbussessionservicedir) \
3164                 $(DESTDIR)$(sysconfdir)/xdg/systemd
3165         ( cd $(DESTDIR)$(sysconfdir)/xdg/systemd/ && \
3166                 rm -f user && \
3167                 $(LN_S) $(pkgsysconfdir)/user user )
3168         ( cd $(DESTDIR)$(systemunitdir)/sockets.target.wants && \
3169                 rm -f systemd-initctl.socket systemd-shutdownd.socket && \
3170                 $(LN_S) ../systemd-initctl.socket systemd-initctl.socket && \
3171                 $(LN_S) ../systemd-shutdownd.socket systemd-shutdownd.socket )
3172         ( cd $(DESTDIR)$(systemunitdir)/runlevel1.target.wants && \
3173                 rm -f systemd-update-utmp-runlevel.service && \
3174                 $(LN_S) ../systemd-update-utmp-runlevel.service systemd-update-utmp-runlevel.service )
3175         ( cd $(DESTDIR)$(systemunitdir)/runlevel2.target.wants && \
3176                 rm -f systemd-update-utmp-runlevel.service && \
3177                 $(LN_S) ../systemd-update-utmp-runlevel.service systemd-update-utmp-runlevel.service )
3178         ( cd $(DESTDIR)$(systemunitdir)/runlevel3.target.wants && \
3179                 rm -f systemd-update-utmp-runlevel.service && \
3180                 $(LN_S) ../systemd-update-utmp-runlevel.service systemd-update-utmp-runlevel.service )
3181         ( cd $(DESTDIR)$(systemunitdir)/runlevel4.target.wants && \
3182                 rm -f systemd-update-utmp-runlevel.service && \
3183                 $(LN_S) ../systemd-update-utmp-runlevel.service systemd-update-utmp-runlevel.service )
3184         ( cd $(DESTDIR)$(systemunitdir)/runlevel5.target.wants && \
3185                 rm -f systemd-update-utmp-runlevel.service && \
3186                 $(LN_S) ../systemd-update-utmp-runlevel.service systemd-update-utmp-runlevel.service )
3187         ( cd $(DESTDIR)$(systemunitdir)/shutdown.target.wants && \
3188                 rm -f systemd-update-utmp-shutdown.service && \
3189                 $(LN_S) ../systemd-update-utmp-shutdown.service systemd-update-utmp-shutdown.service )
3190         ( cd $(DESTDIR)$(systemunitdir)/local-fs.target.wants && \
3191                 rm -f systemd-remount-fs.service \
3192                         fsck-root.service \
3193                         tmp.mount && \
3194                 $(LN_S) ../systemd-remount-fs.service systemd-remount-fs.service && \
3195                 $(LN_S) ../fsck-root.service fsck-root.service && \
3196                 $(LN_S) ../tmp.mount tmp.mount )
3197         ( cd $(DESTDIR)$(userunitdir) && \
3198                 rm -f shutdown.target sockets.target bluetooth.target printer.target sound.target && \
3199                 $(LN_S) $(systemunitdir)/shutdown.target shutdown.target && \
3200                 $(LN_S) $(systemunitdir)/sockets.target sockets.target && \
3201                 $(LN_S) $(systemunitdir)/bluetooth.target bluetooth.target && \
3202                 $(LN_S) $(systemunitdir)/printer.target printer.target && \
3203                 $(LN_S) $(systemunitdir)/sound.target sound.target )
3204         ( cd $(DESTDIR)$(systemunitdir) && \
3205                 rm -f runlevel0.target runlevel1.target runlevel2.target runlevel3.target runlevel4.target runlevel5.target runlevel6.target && \
3206                 $(LN_S) poweroff.target runlevel0.target && \
3207                 $(LN_S) rescue.target runlevel1.target && \
3208                 $(LN_S) multi-user.target runlevel2.target && \
3209                 $(LN_S) multi-user.target runlevel3.target && \
3210                 $(LN_S) multi-user.target runlevel4.target && \
3211                 $(LN_S) graphical.target runlevel5.target && \
3212                 $(LN_S) reboot.target runlevel6.target )
3213         ( cd $(DESTDIR)$(systemunitdir) && \
3214                 rm -f default.target ctrl-alt-del.target autovt@.service && \
3215                 $(LN_S) graphical.target default.target && \
3216                 $(LN_S) reboot.target ctrl-alt-del.target && \
3217                 $(LN_S) getty@.service autovt@.service )
3218         ( cd $(DESTDIR)$(systemunitdir)/multi-user.target.wants && \
3219                 rm -f getty.target systemd-ask-password-wall.path && \
3220                 $(LN_S) ../getty.target getty.target && \
3221                 $(LN_S) ../systemd-ask-password-wall.path systemd-ask-password-wall.path)
3222         ( cd $(DESTDIR)$(pkgsysconfdir)/system/getty.target.wants && \
3223                 rm -f getty@tty1.service && \
3224                 $(LN_S) $(systemunitdir)/getty@.service getty@tty1.service )
3225         ( cd $(DESTDIR)$(pkgsysconfdir)/system/multi-user.target.wants && \
3226                 rm -f remote-fs.target && \
3227                 $(LN_S) $(systemunitdir)/remote-fs.target remote-fs.target )
3228         ( cd $(DESTDIR)$(systemunitdir)/sysinit.target.wants && \
3229                 rm -f dev-hugepages.mount \
3230                         dev-mqueue.mount \
3231                         sys-kernel-config.mount \
3232                         sys-kernel-debug.mount \
3233                         sys-fs-fuse-connections.mount \
3234                         systemd-modules-load.service \
3235                         systemd-tmpfiles-setup.service \
3236                         systemd-sysctl.service \
3237                         systemd-ask-password-console.path && \
3238                 $(LN_S) ../dev-hugepages.mount dev-hugepages.mount && \
3239                 $(LN_S) ../dev-mqueue.mount dev-mqueue.mount && \
3240                 $(LN_S) ../sys-kernel-config.mount sys-kernel-config.mount && \
3241                 $(LN_S) ../sys-kernel-debug.mount sys-kernel-debug.mount && \
3242                 $(LN_S) ../sys-fs-fuse-connections.mount sys-fs-fuse-connections.mount && \
3243                 $(LN_S) ../systemd-modules-load.service systemd-modules-load.service && \
3244                 $(LN_S) ../systemd-tmpfiles-setup.service systemd-tmpfiles-setup.service && \
3245                 $(LN_S) ../systemd-sysctl.service systemd-sysctl.service && \
3246                 $(LN_S) ../systemd-ask-password-console.path systemd-ask-password-console.path )
3247         ( cd $(DESTDIR)$(systemunitdir)/basic.target.wants && \
3248                 rm -f systemd-tmpfiles-clean.timer && \
3249                 $(LN_S) ../systemd-tmpfiles-clean.timer systemd-tmpfiles-clean.timer )
3250         ( cd $(DESTDIR)$(dbussessionservicedir) && \
3251                 rm -f org.freedesktop.systemd1.service && \
3252                 $(LN_S) ../system-services/org.freedesktop.systemd1.service org.freedesktop.systemd1.service )
3253 if TARGET_MEEGO
3254         $(MKDIR_P) -m 0755 $(DESTDIR)$(systemunitdir)/final.target.wants
3255         ( cd $(DESTDIR)$(systemunitdir)/multi-user.target.wants && \
3256                 rm -f network.target && \
3257                 $(LN_S) $(systemunitdir)/network.target network.target )
3258         ( cd $(DESTDIR)$(pkgsysconfdir)/system/sysinit.target.wants && \
3259                 rm -f * )
3260         ( cd $(DESTDIR)$(pkgsysconfdir)/system/local-fs.target.wants && \
3261                 rm -f * )
3262         ( cd $(DESTDIR)$(pkgsysconfdir)/system/multi-user.target.wants && \
3263                 rm -f * )
3264         ( cd $(DESTDIR)$(pkgsysconfdir)/system/getty.target.wants && \
3265                 rm -f * )
3266 endif
3267
3268 if TARGET_FEDORA
3269         ( cd $(DESTDIR)$(systemunitdir) && \
3270                 rm -f display-manager.service single.service && \
3271                 $(LN_S) prefdm.service display-manager.service && \
3272                 $(LN_S) rescue.service single.service )
3273         ( cd $(DESTDIR)$(systemunitdir)/graphical.target.wants && \
3274                 rm -f display-manager.service && \
3275                 $(LN_S) $(systemunitdir)/display-manager.service display-manager.service )
3276 endif
3277
3278 if TARGET_MANDRIVA
3279         ( cd $(DESTDIR)$(systemunitdir) && \
3280                 rm -f display-manager.service dm.service single.service && \
3281                 $(LN_S) prefdm.service display-manager.service && \
3282                 $(LN_S) prefdm.service dm.service && \
3283                 $(LN_S) rescue.service single.service )
3284         ( cd $(DESTDIR)$(systemunitdir)/graphical.target.wants && \
3285                 rm -f display-manager.service && \
3286                 $(LN_S) $(systemunitdir)/display-manager.service display-manager.service )
3287 endif
3288
3289 if TARGET_DEBIAN_OR_UBUNTU
3290         ( cd $(DESTDIR)$(systemunitdir) && \
3291                 rm -f runlevel5.target && \
3292                 $(LN_S) multi-user.target runlevel5.target )
3293 endif
3294
3295 if TARGET_SUSE
3296         ( cd $(DESTDIR)$(systemunitdir) && \
3297                 rm -f local.service && \
3298                 $(LN_S) rc-local.service local.service )
3299 endif
3300
3301 if TARGET_MAGEIA
3302         ( cd $(DESTDIR)$(systemunitdir) && \
3303                 rm -f display-manager.service && \
3304                 $(LN_S) prefdm.service display-manager.service && \
3305                 $(LN_S) prefdm.service dm.service )
3306         ( cd $(DESTDIR)$(systemunitdir)/graphical.target.wants && \
3307                 rm -f display-manager.service && \
3308                 $(LN_S) $(systemunitdir)/display-manager.service display-manager.service )
3309 endif
3310
3311 install-exec-hook: $(INSTALL_EXEC_HOOKS)
3312
3313 uninstall-hook: $(UNINSTALL_EXEC_HOOKS)
3314
3315 install-data-hook: systemd-install-data-hook $(INSTALL_DATA_HOOKS)
3316
3317 distclean-local: $(DISTCLEAN_LOCAL_HOOKS)
3318
3319 clean-local:
3320         rm -rf $(abs_srcdir)/install-tree
3321
3322 DISTCHECK_CONFIGURE_FLAGS = \
3323         --with-dbuspolicydir=$$dc_install_base/$(dbuspolicydir) \
3324         --with-dbussessionservicedir=$$dc_install_base/$(dbussessionservicedir) \
3325         --with-dbussystemservicedir=$$dc_install_base/$(dbussystemservicedir) \
3326         --with-dbusinterfacedir=$$dc_install_base/$(dbusinterfacedir) \
3327         --with-pamlibdir=$$dc_install_base/$(pamlibdir) \
3328         --with-rootprefix=$$dc_install_base \
3329         --disable-split-usr
3330
3331 if ENABLE_GTK_DOC
3332 DISTCHECK_CONFIGURE_FLAGS += \
3333         --enable-gtk-doc
3334 endif
3335
3336 upload: all distcheck
3337         cp -v systemd-$(VERSION).tar.xz /home/lennart/git.fedora/systemd/
3338         scp systemd-$(VERSION).tar.xz fdo:/srv/www.freedesktop.org/www/software/systemd/
3339         scp man/*.html tango:public/systemd-man/
3340
3341 doc-sync: all
3342         gtkdoc-rebase --html-dir=docs/libudev/html --online
3343         rsync -av --delete docs/libudev/html/ --omit-dir-times www.freedesktop.org:/srv/www.freedesktop.org/www/software/systemd/libudev/
3344         gtkdoc-rebase --html-dir=docs/gudev/html --online
3345         rsync -av --delete docs/gudev/html/ --omit-dir-times www.freedesktop.org:/srv/www.freedesktop.org/www/software/systemd/gudev/
3346         rsync -av --delete-excluded --include="*.html" --exclude="*" --omit-dir-times man/ www.freedesktop.org:/srv/www.freedesktop.org/www/software/systemd/man/
3347
3348 git-tag:
3349         git tag "v$(VERSION)" -m "systemd $(VERSION)"
3350
3351 install-tree: all
3352         rm -rf $(abs_srcdir)/install-tree
3353         make install DESTDIR=$(abs_srcdir)/install-tree
3354         tree $(abs_srcdir)/install-tree