]> git.ipfire.org Git - thirdparty/systemd.git/blame - Makefile.am
mount: add automatic start ordering dependencies for mounts
[thirdparty/systemd.git] / Makefile.am
CommitLineData
47be870b
LP
1# This file is part of systemd.
2#
3# Copyright 2010 Lennart Poettering
4#
5# systemd is free software; you can redistribute it and/or modify it
6# under the terms of the GNU General Public License as published by
7# the Free Software Foundation; either version 2 of the License, or
8# (at your option) any later version.
9#
10# systemd is distributed in the hope that it will be useful, but
11# WITHOUT ANY WARRANTY; without even the implied warranty of
12# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13# General Public License for more details.
14#
15# You should have received a copy of the GNU General Public License
16# along with systemd; If not, see <http://www.gnu.org/licenses/>.
17
18ACLOCAL_AMFLAGS = -I m4
19
8c4a3079 20# Dirs of external packages
d122948d
LP
21dbuspolicydir=@dbuspolicydir@
22dbussessionservicedir=@dbussessionservicedir@
23dbussystemservicedir=@dbussystemservicedir@
24dbusinterfacedir=@dbusinterfacedir@
d1ab0ca0 25udevrulesdir=@udevrulesdir@
8c6db833
LP
26pamlibdir=@pamlibdir@
27pkgconfigdatadir=$(datadir)/pkgconfig
036643a2 28
8c4a3079 29# Our own, non-special dirs
d1ab0ca0 30pkgsysconfdir=$(sysconfdir)/systemd
d1ab0ca0 31sessionunitdir=$(pkgdatadir)/session
8c4a3079
LP
32
33# And these are the special ones for /
34rootdir=@rootdir@
8c4a3079
LP
35rootbindir=$(rootdir)/bin
36rootlibexecdir=$(rootdir)/lib/systemd
37systemunitdir=$(rootdir)/lib/systemd/system
70fcff31 38
47be870b
LP
39AM_CPPFLAGS = \
40 -include $(top_builddir)/config.h \
487393e9 41 -DSYSTEM_CONFIG_FILE=\"$(pkgsysconfdir)/system.conf\" \
036643a2 42 -DSYSTEM_CONFIG_UNIT_PATH=\"$(pkgsysconfdir)/system\" \
70fcff31 43 -DSYSTEM_DATA_UNIT_PATH=\"$(systemunitdir)\" \
0571e011 44 -DSYSTEM_SYSVINIT_PATH=\"$(SYSTEM_SYSVINIT_PATH)\" \
061978fa 45 -DSYSTEM_SYSVRCND_PATH=\"$(SYSTEM_SYSVRCND_PATH)\" \
487393e9 46 -DSESSION_CONFIG_FILE=\"$(pkgsysconfdir)/session.conf\" \
036643a2 47 -DSESSION_CONFIG_UNIT_PATH=\"$(pkgsysconfdir)/session\" \
70fcff31 48 -DSESSION_DATA_UNIT_PATH=\"$(sessionunitdir)\" \
8c4a3079 49 -DCGROUP_AGENT_PATH=\"$(rootlibexecdir)/systemd-cgroups-agent\" \
f401faf5 50 -DSYSTEMD_BINARY_PATH=\"$(rootbindir)/systemd\" \
2cb1a60d 51 -DSYSTEMCTL_BINARY_PATH=\"$(rootbindir)/systemctl\" \
8c6db833 52 -DRUNTIME_DIR=\"$(localstatedir)/run\" \
e99e38bb 53 -I $(top_srcdir)/src
47be870b 54
8c4a3079 55rootbin_PROGRAMS = \
134dc482 56 systemd \
4a2a8b5a
LP
57 systemctl \
58 systemd-notify
a9b5b032 59
8c4a3079 60bin_PROGRAMS = \
fa776d8e
LP
61 systemd-install \
62 systemd-cgls
10e87ee7
LP
63
64if HAVE_GTK
65bin_PROGRAMS += \
8e274523 66 systemadm
a9b5b032 67endif
8e274523 68
8c4a3079 69rootlibexec_PROGRAMS = \
8e274523 70 systemd-logger \
0b7964b8
LP
71 systemd-cgroups-agent \
72 systemd-initctl
47be870b
LP
73
74noinst_PROGRAMS = \
75 test-engine \
15ae422b 76 test-job-type \
af5bc85d 77 test-ns \
8c47c732 78 test-loopback \
8c6db833
LP
79 test-daemon \
80 test-cgroup
81
82if HAVE_PAM
83pamlib_LTLIBRARIES = \
84 pam_systemd.la
85endif
47be870b 86
487393e9
LP
87dist_pkgsysconf_DATA = \
88 src/system.conf
89
d1ab0ca0 90dist_dbuspolicy_DATA = \
dfac97b2 91 src/org.freedesktop.systemd1.conf
e24067c3 92
d122948d
LP
93dist_dbussystemservice_DATA = \
94 src/org.freedesktop.systemd1.service
95
d1ab0ca0 96dist_udevrules_DATA = \
dfac97b2 97 src/99-systemd.rules
5cc5d790 98
d122948d 99dbusinterface_DATA = \
4288f619
LP
100 org.freedesktop.systemd1.Manager.xml \
101 org.freedesktop.systemd1.Job.xml \
102 org.freedesktop.systemd1.Unit.xml \
103 org.freedesktop.systemd1.Service.xml \
104 org.freedesktop.systemd1.Socket.xml \
871d7de4 105 org.freedesktop.systemd1.Timer.xml \
4288f619
LP
106 org.freedesktop.systemd1.Target.xml \
107 org.freedesktop.systemd1.Device.xml \
108 org.freedesktop.systemd1.Mount.xml \
109 org.freedesktop.systemd1.Automount.xml \
110 org.freedesktop.systemd1.Snapshot.xml \
01f78473
LP
111 org.freedesktop.systemd1.Swap.xml \
112 org.freedesktop.systemd1.Path.xml
4288f619 113
d1ab0ca0 114dist_systemunit_DATA = \
70fcff31 115 units/emergency.service \
f92a18f5 116 units/basic.target \
5e6afdd3
LP
117 units/getty.target \
118 units/halt.target \
70449379
LP
119 units/local-fs.target \
120 units/network.target \
121 units/nss-lookup.target \
683f468c 122 units/mail-transfer-agent.target \
5e6afdd3
LP
123 units/poweroff.target \
124 units/reboot.target \
5e6afdd3 125 units/rescue.target \
f0b02ca2 126 units/rpcbind.target \
70449379
LP
127 units/rtc-set.target \
128 units/shutdown.target \
4e67ddd6 129 units/umount.target \
70449379
LP
130 units/sigpwr.target \
131 units/sockets.target \
132 units/swap.target \
83bda358 133 units/dbus.target \
70fcff31 134 units/systemd-initctl.socket \
670802d4
LP
135 units/systemd-logger.socket \
136 units/dev-hugepages.automount \
137 units/dev-hugepages.mount \
138 units/dev-mqueue.automount \
139 units/dev-mqueue.mount \
140 units/proc-sys-fs-binfmt_misc.automount \
141 units/proc-sys-fs-binfmt_misc.mount \
142 units/sys-kernel-debug.automount \
143 units/sys-kernel-debug.mount \
6d526de2
LP
144 units/sys-kernel-security.automount \
145 units/sys-kernel-security.mount \
146 units/var-lock.mount \
670802d4 147 units/var-run.mount
70fcff31 148
6f6083dc 149nodist_systemunit_DATA = \
f92a18f5 150 units/sysinit.target \
5e6afdd3
LP
151 units/getty@.service \
152 units/graphical.target \
6f6083dc 153 units/remote-fs.target \
5e6afdd3 154 units/multi-user.target \
dfac97b2 155 units/systemd-initctl.service \
a7b6f8e5 156 units/systemd-logger.service \
83bda358 157 units/syslog.target
d1ab0ca0 158
0d26c910
LP
159dist_sessionunit_DATA = \
160 units/session/default.target
161
6f6083dc 162nodist_sessionunit_DATA = \
a1b256b0
LP
163 units/session/remote-fs.target \
164 units/session/exit.service
fb1bd35a 165
e24067c3 166EXTRA_DIST = \
f92a18f5 167 units/sysinit.target.m4 \
5e6afdd3
LP
168 units/getty@.service.m4 \
169 units/graphical.target.m4 \
170 units/multi-user.target.m4 \
705dbf3a 171 units/remote-fs.target.m4 \
70fcff31 172 units/systemd-initctl.service.in \
70fcff31 173 units/systemd-logger.service.in \
a7b6f8e5 174 units/syslog.target.in \
a1b256b0 175 units/session/exit.service.in \
64ca679e 176 systemd.pc.in
e24067c3 177
5e6afdd3
LP
178if TARGET_FEDORA
179dist_systemunit_DATA += \
180 units/fedora/halt.service \
181 units/fedora/killall.service \
182 units/fedora/poweroff.service \
183 units/fedora/prefdm.service \
184 units/fedora/rc-local.service \
185 units/fedora/reboot.service \
186 units/fedora/sysinit.service
187endif
188
65b0095b
KS
189if TARGET_SUSE
190dist_systemunit_DATA += \
191 units/suse/halt.service \
192 units/suse/poweroff.service \
193 units/suse/reboot.service
194endif
195
ea2d9ed4
MAP
196if TARGET_GENTOO
197dist_systemunit_DATA += \
198 units/gentoo/halt.service \
199 units/gentoo/killall.service \
200 units/gentoo/poweroff.service \
201 units/gentoo/reboot.service \
202 units/gentoo/xdm.service
203endif
204
1ebdf2d8
TG
205if TARGET_ARCH
206dist_systemunit_DATA += \
207 units/arch/sysinit.service \
208 units/arch/rc-local.service \
209 units/arch/halt.service \
210 units/arch/poweroff.service \
211 units/arch/reboot.service
212endif
213
240a3a85
LP
214dist_doc_DATA = \
215 README \
795750ca
LP
216 LICENSE \
217 DISTRO_PORTING \
240a3a85
LP
218 src/sd-daemon.h \
219 src/sd-daemon.c
220
8c6db833
LP
221pkgconfigdata_DATA = \
222 systemd.pc
223
139be57d
LP
224noinst_LTLIBRARIES = \
225 libsystemd-basic.la \
226 libsystemd-core.la
227
139be57d 228libsystemd_basic_la_SOURCES = \
e99e38bb
LP
229 src/util.c \
230 src/hashmap.c \
231 src/set.c \
232 src/strv.c \
233 src/conf-parser.c \
234 src/socket-util.c \
235 src/log.c \
236 src/ratelimit.c
47be870b 237
139be57d 238libsystemd_core_la_SOURCES = \
e99e38bb
LP
239 src/unit.c \
240 src/job.c \
241 src/manager.c \
84e3543e 242 src/path-lookup.c \
e99e38bb
LP
243 src/load-fragment.c \
244 src/service.c \
245 src/automount.c \
246 src/mount.c \
247 src/swap.c \
248 src/device.c \
249 src/target.c \
250 src/snapshot.c \
251 src/socket.c \
252 src/timer.c \
01f78473 253 src/path.c \
e99e38bb
LP
254 src/load-dropin.c \
255 src/execute.c \
256 src/dbus.c \
257 src/dbus-manager.c \
258 src/dbus-unit.c \
259 src/dbus-job.c \
260 src/dbus-service.c \
261 src/dbus-socket.c \
871d7de4 262 src/dbus-timer.c \
e99e38bb
LP
263 src/dbus-target.c \
264 src/dbus-mount.c \
265 src/dbus-automount.c \
266 src/dbus-swap.c \
267 src/dbus-snapshot.c \
268 src/dbus-device.c \
269 src/dbus-execute.c \
01f78473 270 src/dbus-path.c \
e99e38bb
LP
271 src/cgroup.c \
272 src/mount-setup.c \
273 src/hostname-setup.c \
274 src/loopback-setup.c \
11c3a4ee 275 src/kmod-setup.c \
fa0f4d8a 276 src/modprobe-setup.c \
e99e38bb
LP
277 src/utmp-wtmp.c \
278 src/specifier.c \
279 src/unit-name.c \
280 src/fdset.c \
0213c3f8 281 src/namespace.c \
8c6db833
LP
282 src/tcpwrap.c \
283 src/cgroup-util.c
47be870b 284
139be57d
LP
285libsystemd_core_la_CFLAGS = \
286 $(AM_CFLAGS) \
287 $(DBUS_CFLAGS) \
35d2e7ec 288 $(UDEV_CFLAGS)
139be57d
LP
289
290libsystemd_core_la_LIBADD = \
291 libsystemd-basic.la \
292 $(DBUS_LIBS) \
293 $(UDEV_LIBS) \
139be57d
LP
294 $(LIBWRAP_LIBS) \
295 $(PAM_LIBS)
296
9a1ac7b9
LP
297# This is needed because automake is buggy in how it generates the
298# rules for C programs, but not Vala programs. We therefore can't
299# list the .h files as dependencies if we want make dist to work.
300
462b33e9 301EXTRA_DIST += \
139be57d
LP
302 ${libsystemd_basic_la_SOURCES:.c=.h} \
303 ${libsystemd_core_la_SOURCES:.c=.h} \
e99e38bb
LP
304 src/macro.h \
305 src/ioprio.h \
306 src/missing.h \
307 src/list.h \
308 src/securebits.h \
309 src/linux/auto_dev-ioctl.h \
310 src/initreq.h \
514f4ef5 311 src/sd-daemon.h \
9a1ac7b9 312 src/special.h \
398ef8ba 313 src/dbus-common.h \
ab35fb1b
LP
314 src/bus-errors.h \
315 src/cgroup-show.h
6f6083dc
LP
316
317MANPAGES = \
160cd5c9 318 man/systemd.1 \
6f6083dc
LP
319 man/systemctl.1 \
320 man/systemadm.1 \
321 man/systemd-install.1 \
fa776d8e 322 man/systemd-cgls.1 \
c5abba08 323 man/systemd-notify.1 \
f9378423
LP
324 man/sd_notify.3 \
325 man/sd_booted.3 \
326 man/sd_listen_fds.3 \
327 man/sd_is_fifo.3 \
6f6083dc
LP
328 man/systemd.unit.5 \
329 man/systemd.service.5 \
1f812fea 330 man/systemd.socket.5 \
cdb788e4 331 man/systemd.mount.5 \
65232ea7 332 man/systemd.automount.5 \
e0cabd4b 333 man/systemd.swap.5 \
11fcc3ab 334 man/systemd.timer.5 \
b36b082c 335 man/systemd.path.5 \
da49e9ab 336 man/systemd.target.5 \
eec575d8 337 man/systemd.device.5 \
b2c20dd9 338 man/systemd.snapshot.5 \
dd1eb43b 339 man/systemd.exec.5 \
6f6083dc 340 man/daemon.7 \
359957ee
LP
341 man/sd-daemon.7 \
342 man/runlevel.8 \
160cd5c9
LP
343 man/telinit.8 \
344 man/halt.8 \
345 man/shutdown.8 \
f3e219a2
LP
346 man/pam_systemd.8 \
347 man/systemd.conf.5
6f6083dc
LP
348
349MANPAGES_ALIAS = \
350 man/reboot.8 \
351 man/poweroff.8 \
352 man/sd_is_socket.3 \
353 man/sd_is_socket_unix.3 \
354 man/sd_is_socket_inet.3 \
355 man/sd_notifyf.3 \
356 man/init.1
357
358man/reboot.8: man/halt.8
359man/poweroff.8: man/halt.8
360man/sd_is_socket.3: man/sd_is_fifo.3
361man/sd_is_socket_unix.3: man/sd_is_fifo.3
362man/sd_is_socket_inet.3: man/sd_is_fifo.3
363man/sd_notifyf.3: man/sd_notify.3
364man/init.1: man/systemd.1
365
366dist_man_MANS = \
367 $(MANPAGES) \
368 $(MANPAGES_ALIAS)
9f2c5942
LP
369
370nodist_man_MANS = \
9f235308 371 man/systemd.special.7
d1ab0ca0 372
6f6083dc
LP
373XML_FILES = \
374 ${patsubst %.1,%.xml,${patsubst %.3,%.xml,${patsubst %.5,%.xml,${patsubst %.7,%.xml,${patsubst %.8,%.xml,$(MANPAGES)}}}}}
375
376XML_IN_FILES = \
377 ${patsubst %.1,%.xml.in,${patsubst %.3,%.xml.in,${patsubst %.5,%.xml.in,${patsubst %.7,%.xml.in,${patsubst %.8,%.xml.in,$(nodist_man_MANS)}}}}}
378
9f2c5942 379dist_noinst_DATA = \
6f6083dc 380 ${XML_FILES:.xml=.html}
d1ab0ca0 381
9f2c5942 382nodist_noinst_DATA = \
6f6083dc 383 ${XML_IN_FILES:.xml.in=.html}
d1ab0ca0
LP
384
385EXTRA_DIST += \
6f6083dc
LP
386 $(XML_FILES) \
387 $(XML_IN_FILES) \
388 ${nodist_man_MANS:=.in} \
389 ${XML_IN_FILES:.xml.in=.html.in}
d1ab0ca0 390
47be870b 391systemd_SOURCES = \
e99e38bb 392 src/main.c
47be870b 393
10e87ee7
LP
394systemd_CFLAGS = \
395 $(AM_CFLAGS) \
47be870b 396 $(DBUS_CFLAGS) \
35d2e7ec 397 $(UDEV_CFLAGS)
47be870b
LP
398
399systemd_LDADD = \
139be57d 400 libsystemd-core.la
47be870b
LP
401
402test_engine_SOURCES = \
e99e38bb 403 src/test-engine.c
47be870b 404
10e87ee7 405test_engine_CFLAGS = $(systemd_CFLAGS)
47be870b
LP
406test_engine_LDADD = $(systemd_LDADD)
407
408test_job_type_SOURCES = \
e1d680ad 409 src/test-job-type.c
47be870b 410
10e87ee7 411test_job_type_CFLAGS = $(systemd_CFLAGS)
47be870b
LP
412test_job_type_LDADD = $(systemd_LDADD)
413
15ae422b 414test_ns_SOURCES = \
139be57d 415 src/test-ns.c
15ae422b 416
10e87ee7 417test_ns_CFLAGS = $(systemd_CFLAGS)
15ae422b
LP
418test_ns_LDADD = $(systemd_LDADD)
419
af5bc85d 420test_loopback_SOURCES = \
e99e38bb
LP
421 src/test-loopback.c \
422 src/loopback-setup.c
af5bc85d 423
139be57d
LP
424test_loopback_LDADD = \
425 libsystemd-basic.la
426
8c47c732 427test_daemon_SOURCES = \
8c47c732
LP
428 src/test-daemon.c \
429 src/sd-daemon.c
af5bc85d 430
139be57d
LP
431test_daemon_LDADD = \
432 libsystemd-basic.la
433
8c6db833
LP
434test_cgroup_SOURCES = \
435 src/test-cgroup.c \
436 src/cgroup-util.c
437
438test_cgroup_CFLAGS = \
35d2e7ec 439 $(AM_CFLAGS)
8c6db833
LP
440
441test_cgroup_LDADD = \
35d2e7ec 442 libsystemd-basic.la
8c6db833 443
47be870b 444systemd_logger_SOURCES = \
e99e38bb 445 src/logger.c \
0213c3f8
LP
446 src/sd-daemon.c \
447 src/tcpwrap.c
448
449systemd_logger_LDADD = \
139be57d 450 libsystemd-basic.la \
0213c3f8 451 $(LIBWRAP_LIBS)
47be870b 452
0b7964b8 453systemd_initctl_SOURCES = \
e99e38bb 454 src/initctl.c \
a822056b
LP
455 src/sd-daemon.c \
456 src/dbus-common.c
0b7964b8 457
10e87ee7
LP
458systemd_initctl_CFLAGS = \
459 $(AM_CFLAGS) \
0b7964b8
LP
460 $(DBUS_CFLAGS)
461
462systemd_initctl_LDADD = \
139be57d 463 libsystemd-basic.la \
0b7964b8
LP
464 $(DBUS_LIBS)
465
8e274523 466systemd_cgroups_agent_SOURCES = \
e99e38bb 467 src/cgroups-agent.c
8e274523 468
10e87ee7
LP
469systemd_cgroups_agent_CFLAGS = \
470 $(AM_CFLAGS) \
8e274523
LP
471 $(DBUS_CFLAGS)
472
473systemd_cgroups_agent_LDADD = \
139be57d 474 libsystemd-basic.la \
8e274523
LP
475 $(DBUS_LIBS)
476
7e4249b9
LP
477systemctl_SOURCES = \
478 src/systemctl.c \
9a1ac7b9 479 src/utmp-wtmp.c \
ab35fb1b 480 src/dbus-common.c \
c6c18be3
LP
481 src/cgroup-show.c \
482 src/cgroup-util.c
139be57d
LP
483
484systemctl_CFLAGS = \
485 $(AM_CFLAGS) \
35d2e7ec 486 $(DBUS_CFLAGS)
7e4249b9 487
139be57d
LP
488systemctl_LDADD = \
489 libsystemd-basic.la \
35d2e7ec 490 $(DBUS_LIBS)
7e4249b9 491
4a2a8b5a
LP
492systemd_notify_SOURCES = \
493 src/notify.c \
139be57d
LP
494 src/sd-daemon.c
495
496systemd_notify_LDADD = \
497 libsystemd-basic.la
4a2a8b5a 498
10e87ee7
LP
499systemd_install_SOURCES = \
500 src/install.c \
9a1ac7b9 501 src/path-lookup.c \
b4f10a5e
LP
502 src/dbus-common.c \
503 src/sd-daemon.c
139be57d
LP
504
505systemd_install_LDADD = \
9a1ac7b9
LP
506 libsystemd-basic.la \
507 $(DBUS_LIBS)
e99e38bb 508
139be57d
LP
509systemd_install_CFLAGS = \
510 $(AM_CFLAGS) \
511 $(DBUS_CFLAGS)
47be870b 512
fa776d8e
LP
513systemd_cgls_SOURCES = \
514 src/systemd-cgls.c \
c6c18be3
LP
515 src/cgroup-show.c \
516 src/cgroup-util.c
fa776d8e
LP
517
518systemd_cgls_CFLAGS = \
35d2e7ec 519 $(AM_CFLAGS)
c6c18be3
LP
520
521systemd_cgls_LDADD = \
35d2e7ec 522 libsystemd-basic.la
fa776d8e 523
47be870b 524systemadm_SOURCES = \
e99e38bb
LP
525 src/systemadm.vala \
526 src/systemd-interfaces.vala
47be870b 527
10e87ee7
LP
528systemadm_CFLAGS = \
529 $(AM_CFLAGS) \
530 $(DBUSGLIB_CFLAGS) \
531 $(GTK_CFLAGS) \
532 -Wno-unused-variable \
533 -Wno-unused-function \
534 -Wno-shadow \
535 -Wno-format-nonliteral
536
537systemadm_VALAFLAGS = \
538 --pkg=dbus-glib-1 \
539 --pkg=posix \
540 --pkg=gtk+-2.0 \
541 -g
542
139be57d
LP
543systemadm_LDADD = \
544 $(DBUSGLIB_LIBS) \
545 $(GTK_LIBS)
c1e1601e 546
8c6db833
LP
547pam_systemd_la_SOURCES = \
548 src/pam-module.c \
549 src/cgroup-util.c \
550 src/sd-daemon.c
551
552pam_systemd_la_CFLAGS = \
35d2e7ec 553 $(AM_CFLAGS)
8c6db833
LP
554 -fvisibility=hidden
555
556pam_systemd_la_LDFLAGS = \
557 -module \
558 -export-dynamic \
559 -avoid-version \
560 -shared \
561 -export-symbols-regex '^pam_sm_.*'
562
563pam_systemd_la_LIBADD = \
564 libsystemd-basic.la \
35d2e7ec 565 $(PAM_LIBS)
8c6db833 566
5e6afdd3 567SED_PROCESS = \
a00e4879 568 $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
1136a371 569 $(SED) -e 's,@rootlibexecdir\@,$(rootlibexecdir),g' \
5e6afdd3 570 -e 's,@SPECIAL_SYSLOG_SERVICE\@,$(SPECIAL_SYSLOG_SERVICE),g' \
1136a371 571 -e 's,@SYSTEMCTL\@,$(rootbindir)/systemctl,g' \
8c6db833
LP
572 -e 's,@pkgsysconfdir\@,$(pkgsysconfdir),g' \
573 -e 's,@pkgdatadir\@,$(pkgdatadir),g' \
574 -e 's,@systemunitdir\@,$(systemunitdir),g' \
575 -e 's,@PACKAGE_VERSION\@,$(PACKAGE_VERSION),g' \
576 -e 's,@PACKAGE_NAME\@,$(PACKAGE_NAME),g' \
577 -e 's,@PACKAGE_URL\@,$(PACKAGE_URL),g' \
578 -e 's,@prefix\@,$(prefix),g' \
2d02719c 579 < $< > $@
70fcff31 580
9f2c5942 581units/%: units/%.in Makefile
5e6afdd3
LP
582 $(SED_PROCESS)
583
2a3d6294 584man/%: man/%.in Makefile
5e6afdd3
LP
585 $(SED_PROCESS)
586
8c6db833
LP
587%.pc: %.pc.in Makefile
588 $(SED_PROCESS)
589
fb1bd35a 590M4_PROCESS_SYSTEM = \
a00e4879 591 $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
9f2c5942 592 $(M4) -P $(M4_DISTRO_FLAG) -DFOR_SYSTEM=1 < $< > $@
fb1bd35a
LP
593
594M4_PROCESS_SESSION = \
a00e4879 595 $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
9f2c5942 596 $(M4) -P $(M4_DISTRO_FLAG) -DFOR_SESSION=1 < $< > $@
5e6afdd3 597
9f2c5942 598units/%: units/%.m4 Makefile
fb1bd35a 599 $(M4_PROCESS_SYSTEM)
5e6afdd3 600
9f2c5942 601units/session/%: units/%.m4 Makefile
fb1bd35a 602 $(M4_PROCESS_SESSION)
a7b6f8e5 603
c1e1601e 604CLEANFILES = \
6f6083dc
LP
605 $(nodist_systemunit_DATA) \
606 $(nodist_sessionunit_DATA) \
607 $(nodist_man_MANS) \
608 ${XML_IN_FILES:.xml.in=.html} \
609 $(pkgconfigdata_DATA)
4697132b 610
42e39f0b
LP
611if HAVE_VALAC
612CLEANFILES += \
6f6083dc 613 ${systemadm_SOURCES:.vala=.c}
42e39f0b
LP
614endif
615
c3bd7322 616if HAVE_XSLTPROC
c6365917
LP
617XSLTPROC_FLAGS = \
618 --nonet \
619 --param funcsynopsis.style "'ansi'"
620
9f2c5942 621XSLTPROC_PROCESS_MAN = \
a00e4879 622 $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
c6365917 623 $(XSLTPROC) -o $@ $(XSLTPROC_FLAGS) http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $<
d1ab0ca0 624
9f2c5942 625XSLTPROC_PROCESS_MAN_IN = \
a00e4879 626 $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
c6365917 627 $(XSLTPROC) -o ${@:.in=} $(XSLTPROC_FLAGS) http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $< && \
9f2c5942
LP
628 mv ${@:.in=} $@
629
630XSLTPROC_PROCESS_HTML = \
a00e4879 631 $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
c6365917 632 $(XSLTPROC) -o $@ $(XSLTPROC_FLAGS) http://docbook.sourceforge.net/release/xsl/current/xhtml-1_1/docbook.xsl $<
d1ab0ca0 633
9f2c5942 634XSLTPROC_PROCESS_HTML_IN = \
a00e4879 635 $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
c6365917 636 $(XSLTPROC) -o ${@:.in=} $(XSLTPROC_FLAGS) http://docbook.sourceforge.net/release/xsl/current/xhtml-1_1/docbook.xsl $< && \
9f2c5942
LP
637 mv ${@:.in=} $@
638
6f6083dc 639man/%.1: man/%.xml
f9378423
LP
640 $(XSLTPROC_PROCESS_MAN)
641
6f6083dc 642man/%.1.in: man/%.xml.in
f9378423
LP
643 $(XSLTPROC_PROCESS_MAN)
644
6f6083dc 645man/%.3: man/%.xml
359957ee
LP
646 $(XSLTPROC_PROCESS_MAN)
647
6f6083dc 648man/%.3.in: man/%.xml.in
359957ee
LP
649 $(XSLTPROC_PROCESS_MAN)
650
9f2c5942
LP
651man/%.5: man/%.xml
652 $(XSLTPROC_PROCESS_MAN)
653
654man/%.5.in: man/%.xml.in
655 $(XSLTPROC_PROCESS_MAN)
656
657man/%.7: man/%.xml
658 $(XSLTPROC_PROCESS_MAN)
659
660man/%.7.in: man/%.xml.in
661 $(XSLTPROC_PROCESS_MAN_IN)
662
f9378423
LP
663man/%.8: man/%.xml
664 $(XSLTPROC_PROCESS_MAN)
665
666man/%.8.in: man/%.xml.in
667 $(XSLTPROC_PROCESS_MAN_IN)
668
9f2c5942
LP
669man/%.html: man/%.xml
670 $(XSLTPROC_PROCESS_HTML)
671
672man/%.html.in: man/%.xml.in
673 $(XSLTPROC_PROCESS_HTML_IN)
674
d1ab0ca0
LP
675CLEANFILES += \
676 $(dist_man_MANS) \
6f6083dc
LP
677 ${nodist_man_MANS:=.in} \
678 ${XML_FILES:.xml=.html} \
679 ${XML_IN_FILES:.xml.in=.html.in}
c3bd7322 680endif
d1ab0ca0 681
4288f619 682org.freedesktop.systemd1.%.xml: systemd
4627d396 683 $(AM_V_GEN)SYSTEMD_SKIP_API_MOUNTS=1 ./systemd --introspect=${@:.xml=} > $@
4288f619 684
6f6083dc
LP
685CLEANFILES += \
686 $(dbusinterface_DATA)
4288f619 687
4697132b 688install-data-hook:
64c1b5bf 689 $(MKDIR_P) -m 0755 \
43aa226d
LP
690 $(DESTDIR)$(systemunitdir) \
691 $(DESTDIR)$(sessionunitdir) \
5e6afdd3 692 $(DESTDIR)$(systemunitdir)/sockets.target.wants \
f92a18f5 693 $(DESTDIR)$(systemunitdir)/sysinit.target.wants \
64c1b5bf 694 $(DESTDIR)$(pkgsysconfdir)/system \
5e6afdd3
LP
695 $(DESTDIR)$(pkgsysconfdir)/system/getty.target.wants \
696 $(DESTDIR)$(pkgsysconfdir)/system/multi-user.target.wants \
697 $(DESTDIR)$(pkgsysconfdir)/system/graphical.target.wants \
64c1b5bf 698 $(DESTDIR)$(pkgsysconfdir)/session \
e82e442b 699 $(DESTDIR)$(sysconfdir)/xdg/systemd
a3723b97
LP
700 $(MKDIR_P) -m 0755 $(DESTDIR)/cgroup || \
701 echo "Don't forget to create /cgroup! Couldn't create it for you, continuing anyway."
e9da3678
LP
702 ( cd $(DESTDIR)$(sysconfdir)/xdg/systemd/ && \
703 rm -f session && \
5e6afdd3
LP
704 $(LN_S) $(pkgsysconfdir)/session session )
705 ( cd $(DESTDIR)$(systemunitdir)/sockets.target.wants && \
70449379 706 rm -f systemd-initctl.socket systemd-logger.socket && \
5e6afdd3
LP
707 $(LN_S) ../systemd-logger.socket systemd-logger.socket && \
708 $(LN_S) ../systemd-initctl.socket systemd-initctl.socket )
70449379 709 ( cd $(DESTDIR)$(sessionunitdir) && \
fb1bd35a 710 rm -f shutdown.target sockets.target local-fs.target swap.target && \
8c4a3079
LP
711 $(LN_S) $(systemunitdir)/shutdown.target shutdown.target && \
712 $(LN_S) $(systemunitdir)/sockets.target sockets.target && \
713 $(LN_S) $(systemunitdir)/local-fs.target local-fs.target && \
714 $(LN_S) $(systemunitdir)/swap.target swap.target )
5e6afdd3
LP
715 ( cd $(DESTDIR)$(systemunitdir) && \
716 rm -f runlevel0.target runlevel1.target runlevel6.target && \
717 $(LN_S) poweroff.target runlevel0.target && \
718 $(LN_S) rescue.target runlevel1.target && \
719 $(LN_S) reboot.target runlevel6.target )
720 ( cd $(DESTDIR)$(pkgsysconfdir)/system && \
721 rm -f default.target ctrl-alt-del.target kbrequest.target && \
722 $(LN_S) $(systemunitdir)/graphical.target default.target && \
723 $(LN_S) $(systemunitdir)/reboot.target ctrl-alt-del.target && \
724 $(LN_S) $(systemunitdir)/rescue.target kbrequest.target && \
725 rm -f runlevel2.target runlevel3.target runlevel4.target runlevel5.target && \
726 $(LN_S) $(systemunitdir)/multi-user.target runlevel2.target && \
727 $(LN_S) $(systemunitdir)/multi-user.target runlevel3.target && \
728 $(LN_S) $(systemunitdir)/multi-user.target runlevel4.target && \
729 $(LN_S) $(systemunitdir)/graphical.target runlevel5.target )
730 ( cd $(DESTDIR)$(pkgsysconfdir)/system/getty.target.wants && \
731 rm -f getty@tty1.service getty@tty2.service getty@tty3.service getty@tty4.service getty@tty5.service getty@tty6.service && \
732 $(LN_S) $(systemunitdir)/getty@.service getty@tty1.service && \
733 $(LN_S) $(systemunitdir)/getty@.service getty@tty2.service && \
734 $(LN_S) $(systemunitdir)/getty@.service getty@tty3.service && \
735 $(LN_S) $(systemunitdir)/getty@.service getty@tty4.service && \
736 $(LN_S) $(systemunitdir)/getty@.service getty@tty5.service && \
737 $(LN_S) $(systemunitdir)/getty@.service getty@tty6.service )
738 ( cd $(DESTDIR)$(pkgsysconfdir)/system/multi-user.target.wants && \
f92a18f5
LP
739 rm -f getty.target remote-fs.target && \
740 $(LN_S) $(systemunitdir)/getty.target getty.target && \
741 $(LN_S) $(systemunitdir)/remote-fs.target remote-fs.target )
742 ( cd $(DESTDIR)$(systemunitdir)/sysinit.target.wants && \
6d526de2
LP
743 rm -f dev-hugepages.automount \
744 dev-mqueue.automount \
745 proc-sys-fs-binfmt_misc.automount \
746 sys-kernel-debug.automount \
6d526de2 747 sys-kernel-security.automount && \
670802d4
LP
748 $(LN_S) ../dev-hugepages.automount dev-hugepages.automount && \
749 $(LN_S) ../dev-mqueue.automount dev-mqueue.automount && \
750 $(LN_S) ../proc-sys-fs-binfmt_misc.automount proc-sys-fs-binfmt_misc.automount && \
6d526de2 751 $(LN_S) ../sys-kernel-debug.automount sys-kernel-debug.automount && \
8c4a3079 752 $(LN_S) ../sys-kernel-security.automount sys-kernel-security.automount )
d122948d
LP
753 ( cd $(DESTDIR)$(dbussessionservicedir) && \
754 rm -f org.freedesktop.systemd1.service && \
755 $(LN_S) ../system-services/org.freedesktop.systemd1.service org.freedesktop.systemd1.service )
5e6afdd3 756if TARGET_FEDORA
a3723b97
LP
757 $(MKDIR_P) -m 0755 \
758 $(DESTDIR)$(SYSTEM_SYSVINIT_PATH)
1e287fe3
LP
759 ( cd $(DESTDIR)$(pkgsysconfdir)/system && \
760 rm -f display-manager.service && \
761 $(LN_S) $(systemunitdir)/prefdm.service display-manager.service )
5e6afdd3 762 ( cd $(DESTDIR)$(pkgsysconfdir)/system/graphical.target.wants && \
af65a091 763 rm -f prefdm.service && \
83698d60 764 $(LN_S) $(systemunitdir)/prefdm.service prefdm.service )
5e6afdd3
LP
765 ( cd $(DESTDIR)$(pkgsysconfdir)/system/multi-user.target.wants && \
766 rm -f rc-local.service && \
767 $(LN_S) $(systemunitdir)/rc-local.service rc-local.service )
768 ( cd $(DESTDIR)$(systemunitdir) && \
769 rm -f local.service && \
770 $(LN_S) rc-local.service local.service )
a3723b97 771 ( cd $(DESTDIR)$(SYSTEM_SYSVINIT_PATH) && \
1afaf573 772 $(LN_S) halt reboot > /dev/null 2>&1 || true )
5e6afdd3 773endif
f306f4c4
MAP
774if TARGET_GENTOO
775 ( cd $(DESTDIR)$(pkgsysconfdir)/system && \
776 rm -f display-manager.service && \
777 $(LN_S) $(systemunitdir)/xdm.service display-manager.service )
778 ( cd $(DESTDIR)$(pkgsysconfdir)/system/graphical.target.wants && \
83698d60
LP
779 rm -f xdm.service && \
780 $(LN_S) $(systemunitdir)/xdm.service xdm.service )
f306f4c4 781endif
5e6afdd3 782
d1ab0ca0 783DISTCHECK_CONFIGURE_FLAGS = \
d2d12cd1
LP
784 --with-dbuspolicydir=$$dc_install_base/$(dbuspolicydir) \
785 --with-dbussessionservicedir=$$dc_install_base/$(dbussessionservicedir) \
786 --with-dbussystemservicedir=$$dc_install_base/$(dbussystemservicedir) \
787 --with-dbusinterfacedir=$$dc_install_base/$(dbusinterfacedir) \
8c4a3079 788 --with-udevrulesdir=$$dc_install_base/$(udevrulesdir) \
8c6db833 789 --with-pamlibdir=$$dc_install_base/$(pamlibdir) \
8c4a3079 790 --with-rootdir=$$dc_install_base/$(rootdir)
a45f61d7
LP
791
792upload: all distcheck
793 cp -v systemd-$(VERSION).tar.bz2 /home/lennart/cvs.fedora/systemd/devel/
794 scp systemd-$(VERSION).tar.bz2 fdo:/srv/www.freedesktop.org/www/software/systemd/
795 scp man/*.html tango:public/systemd-man/
796
797git-tag:
798 git tag "v$(VERSION)" -m "systemd $(VERSION)"