]> git.ipfire.org Git - thirdparty/systemd.git/blame_incremental - Makefile.am
udev: link-config - let udevd set the ifname
[thirdparty/systemd.git] / Makefile.am
... / ...
CommitLineData
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# Copyright 2013 Zbigniew Jędrzejewski-Szmek
8# Copyright 2013 David Strauss
9#
10# systemd is free software; you can redistribute it and/or modify it
11# under the terms of the GNU Lesser General Public License as published by
12# the Free Software Foundation; either version 2.1 of the License, or
13# (at your option) any later version.
14#
15# systemd is distributed in the hope that it will be useful, but
16# WITHOUT ANY WARRANTY; without even the implied warranty of
17# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18# Lesser General Public License for more details.
19#
20# You should have received a copy of the GNU Lesser General Public License
21# along with systemd; If not, see <http://www.gnu.org/licenses/>.
22
23ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
24AM_MAKEFLAGS = --no-print-directory
25AUTOMAKE_OPTIONS = color-tests parallel-tests
26
27SUBDIRS = . po
28
29# remove targets if the command fails
30.DELETE_ON_ERROR:
31
32# keep intermediate files
33.SECONDARY:
34
35# Keep the test-suite.log
36.PRECIOUS: $(TEST_SUITE_LOG) Makefile
37
38LIBUDEV_CURRENT=5
39LIBUDEV_REVISION=0
40LIBUDEV_AGE=4
41
42LIBGUDEV_CURRENT=1
43LIBGUDEV_REVISION=3
44LIBGUDEV_AGE=1
45
46LIBSYSTEMD_LOGIN_CURRENT=9
47LIBSYSTEMD_LOGIN_REVISION=1
48LIBSYSTEMD_LOGIN_AGE=9
49
50LIBSYSTEMD_DAEMON_CURRENT=0
51LIBSYSTEMD_DAEMON_REVISION=10
52LIBSYSTEMD_DAEMON_AGE=0
53
54LIBSYSTEMD_ID128_CURRENT=0
55LIBSYSTEMD_ID128_REVISION=26
56LIBSYSTEMD_ID128_AGE=0
57
58LIBSYSTEMD_JOURNAL_CURRENT=11
59LIBSYSTEMD_JOURNAL_REVISION=3
60LIBSYSTEMD_JOURNAL_AGE=11
61
62# Dirs of external packages
63dbuspolicydir=@dbuspolicydir@
64dbussessionservicedir=@dbussessionservicedir@
65dbussystemservicedir=@dbussystemservicedir@
66pamlibdir=@pamlibdir@
67pamconfdir=@pamconfdir@
68pkgconfigdatadir=$(datadir)/pkgconfig
69pkgconfiglibdir=$(libdir)/pkgconfig
70polkitpolicydir=$(datadir)/polkit-1/actions
71bashcompletiondir=@bashcompletiondir@
72zshcompletiondir=@zshcompletiondir@
73rpmmacrosdir=$(prefix)/lib/rpm/macros.d
74sysvinitdir=$(SYSTEM_SYSVINIT_PATH)
75sysvrcnddir=$(SYSTEM_SYSVRCND_PATH)
76varlogdir=$(localstatedir)/log
77systemdstatedir=$(localstatedir)/lib/systemd
78catalogstatedir=$(systemdstatedir)/catalog
79
80# Our own, non-special dirs
81pkgsysconfdir=$(sysconfdir)/systemd
82userunitdir=$(prefix)/lib/systemd/user
83userpresetdir=$(prefix)/lib/systemd/user-preset
84tmpfilesdir=$(prefix)/lib/tmpfiles.d
85sysctldir=$(prefix)/lib/sysctl.d
86networkdir=$(prefix)/lib/systemd/network
87pkgincludedir=$(includedir)/systemd
88systemgeneratordir=$(rootlibexecdir)/system-generators
89usergeneratordir=$(prefix)/lib/systemd/user-generators
90systemshutdowndir=$(rootlibexecdir)/system-shutdown
91systemsleepdir=$(rootlibexecdir)/system-sleep
92systemunitdir=$(rootprefix)/lib/systemd/system
93systempresetdir=$(rootprefix)/lib/systemd/system-preset
94udevlibexecdir=$(rootprefix)/lib/udev
95udevhomedir=$(udevlibexecdir)
96udevrulesdir=$(udevlibexecdir)/rules.d
97udevhwdbdir=$(udevlibexecdir)/hwdb.d
98catalogdir=$(prefix)/lib/systemd/catalog
99kernelinstalldir = $(prefix)/lib/kernel/install.d
100
101# And these are the special ones for /
102rootprefix=@rootprefix@
103rootbindir=$(rootprefix)/bin
104rootlibexecdir=$(rootprefix)/lib/systemd
105
106CLEANFILES = $(BUILT_SOURCES)
107DISTCLEANFILES =
108EXTRA_DIST =
109BUILT_SOURCES =
110INSTALL_EXEC_HOOKS =
111UNINSTALL_EXEC_HOOKS =
112INSTALL_DATA_HOOKS =
113UNINSTALL_DATA_HOOKS =
114DISTCLEAN_LOCAL_HOOKS =
115CLEAN_LOCAL_HOOKS =
116pkginclude_HEADERS =
117noinst_LTLIBRARIES =
118lib_LTLIBRARIES =
119include_HEADERS =
120noinst_DATA =
121pkgconfiglib_DATA =
122polkitpolicy_in_in_files =
123polkitpolicy_in_files =
124polkitpolicy_files =
125dist_udevrules_DATA =
126nodist_udevrules_DATA =
127dist_pkgsysconf_DATA =
128dist_pkgdata_DATA =
129dist_dbuspolicy_DATA =
130dist_dbussystemservice_DATA =
131check_PROGRAMS =
132check_DATA =
133tests=
134manual_tests =
135if ENABLE_TESTS
136noinst_PROGRAMS = $(manual_tests) $(tests)
137TESTS = $(tests)
138else
139noinst_PROGRAMS =
140TESTS =
141endif
142udevlibexec_PROGRAMS =
143
144AM_CPPFLAGS = \
145 -include $(top_builddir)/config.h \
146 -DPKGSYSCONFDIR=\"$(pkgsysconfdir)\" \
147 -DSYSTEM_CONFIG_UNIT_PATH=\"$(pkgsysconfdir)/system\" \
148 -DSYSTEM_DATA_UNIT_PATH=\"$(systemunitdir)\" \
149 -DSYSTEM_SYSVINIT_PATH=\"$(SYSTEM_SYSVINIT_PATH)\" \
150 -DSYSTEM_SYSVRCND_PATH=\"$(SYSTEM_SYSVRCND_PATH)\" \
151 -DUSER_CONFIG_UNIT_PATH=\"$(pkgsysconfdir)/user\" \
152 -DUSER_DATA_UNIT_PATH=\"$(userunitdir)\" \
153 -DCATALOG_DATABASE=\"$(catalogstatedir)/database\" \
154 -DSYSTEMD_CGROUP_AGENT_PATH=\"$(rootlibexecdir)/systemd-cgroups-agent\" \
155 -DSYSTEMD_BINARY_PATH=\"$(rootlibexecdir)/systemd\" \
156 -DSYSTEMD_SHUTDOWN_BINARY_PATH=\"$(rootlibexecdir)/systemd-shutdown\" \
157 -DSYSTEMD_SLEEP_BINARY_PATH=\"$(rootlibexecdir)/systemd-sleep\" \
158 -DSYSTEMCTL_BINARY_PATH=\"$(rootbindir)/systemctl\" \
159 -DSYSTEMD_TTY_ASK_PASSWORD_AGENT_BINARY_PATH=\"$(rootbindir)/systemd-tty-ask-password-agent\" \
160 -DSYSTEMD_STDIO_BRIDGE_BINARY_PATH=\"$(bindir)/systemd-stdio-bridge\" \
161 -DROOTPREFIX=\"$(rootprefix)\" \
162 -DRANDOM_SEED=\"$(localstatedir)/lib/systemd/random-seed\" \
163 -DSYSTEMD_CRYPTSETUP_PATH=\"$(rootlibexecdir)/systemd-cryptsetup\" \
164 -DSYSTEM_GENERATOR_PATH=\"$(systemgeneratordir)\" \
165 -DUSER_GENERATOR_PATH=\"$(usergeneratordir)\" \
166 -DSYSTEM_SHUTDOWN_PATH=\"$(systemshutdowndir)\" \
167 -DSYSTEM_SLEEP_PATH=\"$(systemsleepdir)\" \
168 -DSYSTEMD_KBD_MODEL_MAP=\"$(pkgdatadir)/kbd-model-map\" \
169 -DX_SERVER=\"$(bindir)/X\" \
170 -DUDEVLIBEXECDIR=\"$(udevlibexecdir)\" \
171 -DPOLKIT_AGENT_BINARY_PATH=\"$(bindir)/pkttyagent\" \
172 -DQUOTACHECK=\"$(QUOTACHECK)\" \
173 -DKEXEC=\"$(KEXEC)\" \
174 -I $(top_srcdir)/src \
175 -I $(top_srcdir)/src/shared \
176 -I $(top_srcdir)/src/login \
177 -I $(top_srcdir)/src/journal \
178 -I $(top_srcdir)/src/systemd \
179 -I $(top_builddir)/src/core \
180 -I $(top_srcdir)/src/core \
181 -I $(top_srcdir)/src/libudev \
182 -I $(top_srcdir)/src/udev \
183 -I $(top_srcdir)/src/udev/net \
184 -I $(top_builddir)/src/udev \
185 -I $(top_srcdir)/src/libsystemd-bus \
186 -I $(top_srcdir)/src/libsystemd-rtnl \
187 $(OUR_CPPFLAGS)
188
189AM_CFLAGS = $(OUR_CFLAGS)
190AM_LDFLAGS = $(OUR_LDFLAGS)
191
192# ------------------------------------------------------------------------------
193define move-to-rootlibdir
194 if test "$(libdir)" != "$(rootlibdir)"; then \
195 $(MKDIR_P) $(DESTDIR)$(rootlibdir) && \
196 so_img_name=$$(readlink $(DESTDIR)$(libdir)/$$libname) && \
197 so_img_rel_target_prefix=$$(echo $(libdir) | sed 's,\(^/\|\)[^/][^/]*,..,g') && \
198 $(LN_S) -f $$so_img_rel_target_prefix$(rootlibdir)/$$so_img_name $(DESTDIR)$(libdir)/$$libname && \
199 mv $(DESTDIR)$(libdir)/$$libname.* $(DESTDIR)$(rootlibdir); \
200 fi
201endef
202
203INSTALL_DIRS =
204
205RUNLEVEL1_TARGET_WANTS =
206RUNLEVEL2_TARGET_WANTS =
207RUNLEVEL3_TARGET_WANTS =
208RUNLEVEL4_TARGET_WANTS =
209RUNLEVEL5_TARGET_WANTS =
210SHUTDOWN_TARGET_WANTS =
211LOCAL_FS_TARGET_WANTS =
212MULTI_USER_TARGET_WANTS =
213SYSINIT_TARGET_WANTS =
214SOCKETS_TARGET_WANTS =
215TIMERS_TARGET_WANTS =
216
217SYSTEM_UNIT_ALIASES =
218USER_UNIT_ALIASES =
219
220GENERAL_ALIASES =
221
222install-target-wants-hook:
223 what="$(RUNLEVEL1_TARGET_WANTS)" && wants=runlevel1.target && $(add-wants)
224 what="$(RUNLEVEL2_TARGET_WANTS)" && wants=runlevel2.target && $(add-wants)
225 what="$(RUNLEVEL3_TARGET_WANTS)" && wants=runlevel3.target && $(add-wants)
226 what="$(RUNLEVEL4_TARGET_WANTS)" && wants=runlevel4.target && $(add-wants)
227 what="$(RUNLEVEL5_TARGET_WANTS)" && wants=runlevel5.target && $(add-wants)
228 what="$(SHUTDOWN_TARGET_WANTS)" && wants=shutdown.target && $(add-wants)
229 what="$(LOCAL_FS_TARGET_WANTS)" && wants=local-fs.target && $(add-wants)
230 what="$(MULTI_USER_TARGET_WANTS)" && wants=multi-user.target && $(add-wants)
231 what="$(SYSINIT_TARGET_WANTS)" && wants=sysinit.target && $(add-wants)
232 what="$(SOCKETS_TARGET_WANTS)" && wants=sockets.target && $(add-wants)
233 what="$(TIMERS_TARGET_WANTS)" && wants=timers.target && $(add-wants)
234 what="$(SLICES_TARGET_WANTS)" && wants=slices.target && $(add-wants)
235
236define add-wants
237 [ -z "$$what" ] || ( \
238 dir=$(DESTDIR)$(systemunitdir)/$$wants.wants && \
239 $(MKDIR_P) -m 0755 $$dir && \
240 cd $$dir && \
241 rm -f $$what && \
242 for i in $$what; do $(LN_S) ../$$i . || exit $$? ; done )
243endef
244
245install-directories-hook:
246 $(MKDIR_P) $(addprefix $(DESTDIR),$(INSTALL_DIRS))
247
248install-aliases-hook:
249 set -- $(SYSTEM_UNIT_ALIASES) && \
250 dir=$(systemunitdir) && $(install-aliases)
251 set -- $(USER_UNIT_ALIASES) && \
252 dir=$(userunitdir) && $(install-aliases)
253 set -- $(GENERAL_ALIASES) && \
254 dir= && $(install-aliases)
255
256define install-aliases
257 while [ -n "$$1" ]; do \
258 $(MKDIR_P) `dirname $(DESTDIR)$$dir/$$2` && \
259 rm -f $(DESTDIR)$$dir/$$2 && \
260 $(LN_S) $$1 $(DESTDIR)$$dir/$$2 && \
261 shift 2 || exit $$?; \
262 done
263endef
264
265INSTALL_EXEC_HOOKS += \
266 install-target-wants-hook \
267 install-directories-hook \
268 install-aliases-hook
269
270# ------------------------------------------------------------------------------
271AM_V_M4 = $(AM_V_M4_$(V))
272AM_V_M4_ = $(AM_V_M4_$(AM_DEFAULT_VERBOSITY))
273AM_V_M4_0 = @echo " M4 " $@;
274
275AM_V_XSLT = $(AM_V_XSLT_$(V))
276AM_V_XSLT_ = $(AM_V_XSLT_$(AM_DEFAULT_VERBOSITY))
277AM_V_XSLT_0 = @echo " XSLT " $@;
278
279AM_V_GPERF = $(AM_V_GPERF_$(V))
280AM_V_GPERF_ = $(AM_V_GPERF_$(AM_DEFAULT_VERBOSITY))
281AM_V_GPERF_0 = @echo " GPERF " $@;
282
283AM_V_LN = $(AM_V_LN_$(V))
284AM_V_LN_ = $(AM_V_LN_$(AM_DEFAULT_VERBOSITY))
285AM_V_LN_0 = @echo " LN " $@;
286
287# ------------------------------------------------------------------------------
288rootbin_PROGRAMS = \
289 systemctl \
290 systemd-notify \
291 systemd-ask-password \
292 systemd-tty-ask-password-agent \
293 systemd-machine-id-setup
294
295bin_PROGRAMS = \
296 systemd-cgls \
297 systemd-cgtop \
298 systemd-stdio-bridge \
299 systemd-nspawn \
300 systemd-detect-virt \
301 systemd-delta \
302 systemd-analyze \
303 systemd-run
304
305dist_bin_SCRIPTS = \
306 src/kernel-install/kernel-install
307
308dist_kernelinstall_SCRIPTS = \
309 src/kernel-install/50-depmod.install \
310 src/kernel-install/90-loaderentry.install
311
312rootlibexec_PROGRAMS = \
313 systemd \
314 systemd-cgroups-agent \
315 systemd-initctl \
316 systemd-update-utmp \
317 systemd-shutdownd \
318 systemd-shutdown \
319 systemd-remount-fs \
320 systemd-reply-password \
321 systemd-fsck \
322 systemd-ac-power \
323 systemd-sysctl \
324 systemd-sleep \
325 systemd-socket-proxyd
326
327systemgenerator_PROGRAMS = \
328 systemd-getty-generator \
329 systemd-fstab-generator \
330 systemd-system-update-generator
331
332dist_bashcompletion_DATA = \
333 shell-completion/bash/journalctl \
334 shell-completion/bash/systemctl \
335 shell-completion/bash/systemd-analyze \
336 shell-completion/bash/systemd-run \
337 shell-completion/bash/udevadm \
338 shell-completion/bash/kernel-install
339
340dist_zshcompletion_DATA = \
341 shell-completion/zsh/_systemctl \
342 shell-completion/zsh/_journalctl \
343 shell-completion/zsh/_udevadm \
344 shell-completion/zsh/_kernel-install \
345 shell-completion/zsh/_systemd-nspawn \
346 shell-completion/zsh/_systemd-analyze \
347 shell-completion/zsh/_sd_hosts_or_user_at_host \
348 shell-completion/zsh/_systemd-delta \
349 shell-completion/zsh/_systemd
350
351dist_sysctl_DATA = \
352 sysctl.d/50-default.conf
353
354dist_systemunit_DATA = \
355 units/graphical.target \
356 units/multi-user.target \
357 units/emergency.service \
358 units/emergency.target \
359 units/sysinit.target \
360 units/basic.target \
361 units/getty.target \
362 units/halt.target \
363 units/kexec.target \
364 units/local-fs.target \
365 units/local-fs-pre.target \
366 units/initrd.target \
367 units/initrd-fs.target \
368 units/initrd-root-fs.target \
369 units/remote-fs.target \
370 units/remote-fs-pre.target \
371 units/network.target \
372 units/network-online.target \
373 units/nss-lookup.target \
374 units/nss-user-lookup.target \
375 units/hibernate.target \
376 units/hybrid-sleep.target \
377 units/poweroff.target \
378 units/reboot.target \
379 units/rescue.target \
380 units/rpcbind.target \
381 units/time-sync.target \
382 units/shutdown.target \
383 units/final.target \
384 units/umount.target \
385 units/sigpwr.target \
386 units/sleep.target \
387 units/sockets.target \
388 units/timers.target \
389 units/paths.target \
390 units/suspend.target \
391 units/swap.target \
392 units/slices.target \
393 units/system.slice \
394 units/x-.slice \
395 units/systemd-initctl.socket \
396 units/systemd-shutdownd.socket \
397 units/syslog.socket \
398 units/dev-hugepages.mount \
399 units/dev-mqueue.mount \
400 units/sys-kernel-config.mount \
401 units/sys-kernel-debug.mount \
402 units/sys-fs-fuse-connections.mount \
403 units/tmp.mount \
404 units/printer.target \
405 units/sound.target \
406 units/bluetooth.target \
407 units/smartcard.target \
408 units/systemd-ask-password-wall.path \
409 units/systemd-ask-password-console.path \
410 units/systemd-udevd-control.socket \
411 units/systemd-udevd-kernel.socket \
412 units/system-update.target \
413 units/initrd-switch-root.target
414
415nodist_systemunit_DATA = \
416 units/getty@.service \
417 units/serial-getty@.service \
418 units/console-shell.service \
419 units/console-getty.service \
420 units/systemd-initctl.service \
421 units/systemd-shutdownd.service \
422 units/systemd-remount-fs.service \
423 units/systemd-update-utmp.service \
424 units/systemd-update-utmp-runlevel.service \
425 units/systemd-ask-password-wall.service \
426 units/systemd-ask-password-console.service \
427 units/systemd-sysctl.service \
428 units/emergency.service \
429 units/rescue.service \
430 units/user@.service \
431 units/systemd-hibernate.service \
432 units/systemd-hybrid-sleep.service \
433 units/systemd-suspend.service \
434 units/systemd-halt.service \
435 units/systemd-poweroff.service \
436 units/systemd-reboot.service \
437 units/systemd-kexec.service \
438 units/systemd-fsck@.service \
439 units/systemd-fsck-root.service \
440 units/systemd-udevd.service \
441 units/systemd-udev-trigger.service \
442 units/systemd-udev-settle.service \
443 units/debug-shell.service \
444 units/initrd-parse-etc.service \
445 units/initrd-cleanup.service \
446 units/initrd-udevadm-cleanup-db.service \
447 units/initrd-switch-root.service \
448 units/systemd-nspawn@.service
449
450dist_userunit_DATA = \
451 units/user/default.target \
452 units/user/exit.target
453
454nodist_userunit_DATA = \
455 units/user/systemd-exit.service
456
457EXTRA_DIST += \
458 units/getty@.service.m4 \
459 units/serial-getty@.service.m4 \
460 units/console-shell.service.m4.in \
461 units/console-getty.service.m4.in \
462 units/rescue.service.m4.in \
463 units/systemd-initctl.service.in \
464 units/systemd-shutdownd.service.in \
465 units/systemd-remount-fs.service.in \
466 units/systemd-update-utmp.service.in \
467 units/systemd-update-utmp-runlevel.service.in \
468 units/systemd-ask-password-wall.service.in \
469 units/systemd-ask-password-console.service.in \
470 units/systemd-sysctl.service.in \
471 units/emergency.service.in \
472 units/systemd-halt.service.in \
473 units/systemd-poweroff.service.in \
474 units/systemd-reboot.service.in \
475 units/systemd-kexec.service.in \
476 units/user/systemd-exit.service.in \
477 units/systemd-fsck@.service.in \
478 units/systemd-fsck-root.service.in \
479 units/user@.service.in \
480 units/systemd-udevd.service \
481 units/systemd-udev-trigger.service \
482 units/systemd-udev-settle.service \
483 units/debug-shell.service.in \
484 units/systemd-hibernate.service.in \
485 units/systemd-hybrid-sleep.service.in \
486 units/systemd-suspend.service.in \
487 units/quotaon.service.in \
488 units/initrd-parse-etc.service.in \
489 units/initrd-cleanup.service.in \
490 units/initrd-udevadm-cleanup-db.service.in \
491 units/initrd-switch-root.service.in \
492 units/systemd-nspawn@.service.in
493
494CLEANFILES += \
495 units/console-shell.service.m4 \
496 units/console-getty.service.m4 \
497 units/rescue.service.m4
498
499if HAVE_SYSV_COMPAT
500nodist_systemunit_DATA += \
501 units/rc-local.service \
502 units/halt-local.service
503
504systemgenerator_PROGRAMS += \
505 systemd-rc-local-generator
506endif
507
508EXTRA_DIST += \
509 units/rc-local.service.in \
510 units/halt-local.service.in
511
512# automake is broken and can't handle files with a dash in front
513# http://debbugs.gnu.org/cgi/bugreport.cgi?bug=14728#8
514units-install-hook:
515 mv $(DESTDIR)$(systemunitdir)/x-.slice $(DESTDIR)/$(systemunitdir)/-.slice
516
517units-uninstall-hook:
518 rm -f $(DESTDIR)/$(systemunitdir)/-.slice
519
520INSTALL_DATA_HOOKS += units-install-hook
521UNINSTALL_DATA_HOOKS += units-uninstall-hook
522
523dist_doc_DATA = \
524 README \
525 NEWS \
526 LICENSE.LGPL2.1 \
527 LICENSE.GPL2 \
528 LICENSE.MIT \
529 DISTRO_PORTING
530
531@INTLTOOL_POLICY_RULE@
532
533# ------------------------------------------------------------------------------
534
535MANPAGES =
536MANPAGES_ALIAS =
537
538include Makefile-man.am
539
540.PHONY: man
541man: $(MANPAGES) $(MANPAGES_ALIAS) $(HTML_FILES) $(HTML_ALIAS)
542
543XML_FILES = \
544 ${patsubst %.1,%.xml,${patsubst %.3,%.xml,${patsubst %.5,%.xml,${patsubst %.7,%.xml,${patsubst %.8,%.xml,$(MANPAGES)}}}}}
545HTML_FILES = \
546 ${XML_FILES:.xml=.html}
547HTML_ALIAS = \
548 ${patsubst %.1,%.html,${patsubst %.3,%.html,${patsubst %.5,%.html,${patsubst %.7,%.html,${patsubst %.8,%.html,$(MANPAGES_ALIAS)}}}}}
549
550if ENABLE_MANPAGES
551man_MANS = \
552 $(MANPAGES) \
553 $(MANPAGES_ALIAS)
554
555noinst_DATA += \
556 $(HTML_FILES) \
557 $(HTML_ALIAS)
558
559CLEANFILES += \
560 $(man_MANS) \
561 $(HTML_FILES) \
562 $(HTML_ALIAS)
563
564docs/html/man:
565 $(AM_V_at)$(MKDIR_P) $(dir $@)
566 $(AM_V_LN)$(LN_S) -f ../../man $@
567
568noinst_DATA += \
569 docs/html/man
570
571CLEANFILES += \
572 docs/html/man
573
574if HAVE_PYTHON
575man/index.html: man/systemd.index.html
576 $(AM_V_LN)$(LN_S) -f systemd.index.html $@
577
578noinst_DATA += \
579 man/index.html
580
581CLEANFILES += \
582 man/index.html
583
584XML_GLOB = $(wildcard $(top_srcdir)/man/*.xml $(top_builddir)/man/*.xml)
585NON_INDEX_XML_FILES = $(filter-out man/systemd.index.xml,$(XML_FILES))
586SOURCE_XML_FILES = $(filter-out man/systemd.directives.xml,$(NON_INDEX_XML_FILES))
587
588update-man-list: make-man-rules.py $(XML_GLOB)
589 $(AM_V_GEN)$(PYTHON) $^ > $(top_srcdir)/Makefile-man.tmp
590 $(AM_V_at)mv $(top_srcdir)/Makefile-man.tmp $(top_srcdir)/Makefile-man.am
591 @echo "Makefile-man.am has been regenerated"
592
593man/systemd.index.xml: make-man-index.py $(NON_INDEX_XML_FILES)
594 $(AM_V_at)$(MKDIR_P) $(dir $@)
595 $(AM_V_GEN)$(PYTHON) $< $@ $(filter-out $<,$^)
596
597man/systemd.directives.xml: make-directive-index.py $(SOURCE_XML_FILES)
598 $(AM_V_at)$(MKDIR_P) $(dir $@)
599 $(AM_V_GEN)$(PYTHON) $< $@ $(filter-out $<,$^)
600
601EXTRA_DIST += \
602 man/systemd.index.xml \
603 man/index.html \
604 man/systemd.directives.xml
605
606CLEANFILES += \
607 man/systemd.index.xml \
608 man/systemd.directives.xml
609
610endif
611
612endif
613
614EXTRA_DIST += \
615 $(XML_FILES) \
616 $(HTML_FILES) \
617 $(HTML_ALIAS) \
618 $(man_MANS) \
619 make-man-index.py \
620 make-directive-index.py \
621 xml_helper.py
622
623# ------------------------------------------------------------------------------
624noinst_LTLIBRARIES += \
625 libsystemd-rtnl.la
626
627libsystemd_rtnl_la_SOURCES = \
628 src/systemd/sd-rtnl.h \
629 src/libsystemd-rtnl/sd-rtnl.c \
630 src/libsystemd-rtnl/rtnl-internal.h \
631 src/libsystemd-rtnl/rtnl-message.c \
632 src/libsystemd-rtnl/rtnl-util.h \
633 src/libsystemd-rtnl/rtnl-util.c
634
635test_rtnl_SOURCES = \
636 src/libsystemd-rtnl/test-rtnl.c
637
638test_rtnl_LDADD = \
639 libsystemd-shared.la \
640 libsystemd-rtnl.la
641
642tests += test-rtnl
643
644# ------------------------------------------------------------------------------
645noinst_LTLIBRARIES += \
646 libsystemd-shared.la
647
648libsystemd_shared_la_SOURCES = \
649 src/shared/linux/auto_dev-ioctl.h \
650 src/shared/linux/fanotify.h \
651 src/shared/linux/seccomp.h \
652 src/shared/linux/seccomp-bpf.h \
653 src/shared/missing.h \
654 src/shared/list.h \
655 src/shared/macro.h \
656 src/shared/def.h \
657 src/shared/device-nodes.c \
658 src/shared/device-nodes.h \
659 src/shared/sparse-endian.h \
660 src/shared/util.c \
661 src/shared/util.h \
662 src/shared/udev-util.h \
663 src/shared/virt.c \
664 src/shared/virt.h \
665 src/shared/efivars.c \
666 src/shared/efivars.h \
667 src/shared/path-util.c \
668 src/shared/path-util.h \
669 src/shared/time-util.c \
670 src/shared/time-util.h \
671 src/shared/hashmap.c \
672 src/shared/hashmap.h \
673 src/shared/set.c \
674 src/shared/set.h \
675 src/shared/fdset.c \
676 src/shared/fdset.h \
677 src/shared/prioq.c \
678 src/shared/prioq.h \
679 src/shared/sleep-config.c \
680 src/shared/sleep-config.h \
681 src/shared/strv.c \
682 src/shared/strv.h \
683 src/shared/env-util.c \
684 src/shared/env-util.h \
685 src/shared/strbuf.c \
686 src/shared/strbuf.h \
687 src/shared/strxcpyx.c \
688 src/shared/strxcpyx.h \
689 src/shared/conf-parser.c \
690 src/shared/conf-parser.h \
691 src/shared/log.c \
692 src/shared/log.h \
693 src/shared/ratelimit.h \
694 src/shared/ratelimit.c \
695 src/shared/exit-status.c \
696 src/shared/exit-status.h \
697 src/shared/utf8.c \
698 src/shared/utf8.h \
699 src/shared/gunicode.c \
700 src/shared/gunicode.h \
701 src/shared/pager.c \
702 src/shared/pager.h \
703 src/shared/ioprio.h \
704 src/shared/socket-util.c \
705 src/shared/socket-util.h \
706 src/shared/conf-files.c \
707 src/shared/conf-files.h \
708 src/shared/cgroup-util.c \
709 src/shared/cgroup-util.h \
710 src/shared/cgroup-show.c \
711 src/shared/cgroup-show.h \
712 src/shared/unit-name.c \
713 src/shared/unit-name.h \
714 src/shared/utmp-wtmp.c \
715 src/shared/utmp-wtmp.h \
716 src/shared/watchdog.c \
717 src/shared/watchdog.h \
718 src/shared/spawn-ask-password-agent.c \
719 src/shared/spawn-ask-password-agent.h \
720 src/shared/replace-var.c \
721 src/shared/replace-var.h \
722 src/shared/spawn-polkit-agent.c \
723 src/shared/spawn-polkit-agent.h \
724 src/shared/hwclock.c \
725 src/shared/hwclock.h \
726 src/shared/time-dst.c \
727 src/shared/time-dst.h \
728 src/shared/calendarspec.c \
729 src/shared/calendarspec.h \
730 src/shared/fileio.c \
731 src/shared/fileio.h \
732 src/shared/output-mode.h \
733 src/shared/MurmurHash3.c \
734 src/shared/MurmurHash3.h \
735 src/shared/acpi-fpdt.h \
736 src/shared/acpi-fpdt.c \
737 src/shared/boot-timestamps.h \
738 src/shared/boot-timestamps.c \
739 src/shared/refcnt.h \
740 src/shared/mkdir.c \
741 src/shared/mkdir.h \
742 src/shared/smack-util.c \
743 src/shared/smack-util.h \
744 src/shared/apparmor-util.c \
745 src/shared/apparmor-util.h \
746 src/shared/ima-util.c \
747 src/shared/ima-util.h
748
749#-------------------------------------------------------------------------------
750noinst_LTLIBRARIES += \
751 libsystemd-dbus.la
752
753libsystemd_dbus_la_SOURCES = \
754 src/shared/dbus-common.c \
755 src/shared/dbus-common.h \
756 src/shared/dbus-loop.c \
757 src/shared/dbus-loop.h \
758 src/shared/polkit.c \
759 src/shared/polkit.h
760
761libsystemd_dbus_la_CFLAGS = \
762 $(AM_CFLAGS) \
763 $(DBUS_CFLAGS)
764
765libsystemd_dbus_la_LIBADD = \
766 $(DBUS_LIBS)
767
768# ------------------------------------------------------------------------------
769noinst_LTLIBRARIES += \
770 libsystemd-units.la
771
772libsystemd_units_la_SOURCES = \
773 src/shared/install.c \
774 src/shared/install.h \
775 src/shared/install-printf.c \
776 src/shared/install-printf.h \
777 src/shared/path-lookup.c \
778 src/shared/path-lookup.h \
779 src/shared/specifier.c \
780 src/shared/specifier.h
781
782libsystemd_units_la_CFLAGS = \
783 $(AM_CFLAGS) \
784 $(DBUS_CFLAGS)
785
786# ------------------------------------------------------------------------------
787noinst_LTLIBRARIES += \
788 libsystemd-label.la
789
790libsystemd_label_la_SOURCES = \
791 src/shared/socket-label.c \
792 src/shared/label.c \
793 src/shared/label.h \
794 src/shared/selinux-util.c \
795 src/shared/selinux-util.h \
796 src/shared/mkdir-label.c \
797 src/shared/ask-password-api.c \
798 src/shared/ask-password-api.h \
799 src/shared/fileio-label.c \
800 src/shared/fileio-label.h \
801 src/shared/dev-setup.c \
802 src/shared/dev-setup.h
803
804libsystemd_label_la_CFLAGS = \
805 $(AM_CFLAGS) \
806 $(SELINUX_CFLAGS)
807
808libsystemd_label_la_LIBADD = \
809 $(SELINUX_LIBS)
810
811# ------------------------------------------------------------------------------
812noinst_LTLIBRARIES += \
813 libsystemd-logs.la
814
815libsystemd_logs_la_SOURCES = \
816 src/shared/logs-show.c \
817 src/shared/logs-show.h
818
819libsystemd_logs_la_LIBADD = \
820 libsystemd-journal-internal.la \
821 libsystemd-id128-internal.la \
822 libsystemd-shared.la
823
824# ------------------------------------------------------------------------------
825noinst_LTLIBRARIES += \
826 libsystemd-capability.la
827
828libsystemd_capability_la_SOURCES = \
829 src/shared/capability.c \
830 src/shared/capability.h
831
832libsystemd_capability_la_CFLAGS = \
833 $(AM_CFLAGS) \
834 $(CAP_CFLAGS)
835
836libsystemd_capability_la_LIBADD = \
837 $(CAP_LIBS)
838
839# ------------------------------------------------------------------------------
840noinst_LTLIBRARIES += \
841 libsystemd-audit.la
842
843libsystemd_audit_la_SOURCES = \
844 src/shared/audit.c \
845 src/shared/audit.h
846
847libsystemd_audit_la_LIBADD = \
848 libsystemd-capability.la
849
850# ------------------------------------------------------------------------------
851if HAVE_ACL
852noinst_LTLIBRARIES += \
853 libsystemd-acl.la
854
855libsystemd_acl_la_SOURCES = \
856 src/shared/acl-util.c \
857 src/shared/acl-util.h
858
859libsystemd_acl_la_CFLAGS = \
860 $(AM_CFLAGS) \
861 $(ACL_CFLAGS)
862
863libsystemd_acl_la_LIBADD = \
864 $(ACL_LIBS) \
865 libsystemd-shared.la
866endif
867
868# ------------------------------------------------------------------------------
869noinst_LTLIBRARIES += \
870 libsystemd-core.la
871
872libsystemd_core_la_SOURCES = \
873 src/core/unit.c \
874 src/core/unit.h \
875 src/core/unit-printf.c \
876 src/core/unit-printf.h \
877 src/core/job.c \
878 src/core/job.h \
879 src/core/manager.c \
880 src/core/manager.h \
881 src/core/transaction.c \
882 src/core/transaction.h \
883 src/core/load-fragment.c \
884 src/core/load-fragment.h \
885 src/core/service.c \
886 src/core/service.h \
887 src/core/automount.c \
888 src/core/automount.h \
889 src/core/mount.c \
890 src/core/mount.h \
891 src/core/swap.c \
892 src/core/swap.h \
893 src/core/device.c \
894 src/core/device.h \
895 src/core/target.c \
896 src/core/target.h \
897 src/core/snapshot.c \
898 src/core/snapshot.h \
899 src/core/socket.c \
900 src/core/socket.h \
901 src/core/timer.c \
902 src/core/timer.h \
903 src/core/path.c \
904 src/core/path.h \
905 src/core/slice.c \
906 src/core/slice.h \
907 src/core/scope.c \
908 src/core/scope.h \
909 src/core/load-dropin.c \
910 src/core/load-dropin.h \
911 src/core/execute.c \
912 src/core/execute.h \
913 src/core/kill.c \
914 src/core/kill.h \
915 src/core/dbus.c \
916 src/core/dbus.h \
917 src/core/dbus-manager.c \
918 src/core/dbus-manager.h \
919 src/core/dbus-unit.c \
920 src/core/dbus-unit.h \
921 src/core/dbus-job.c \
922 src/core/dbus-job.h \
923 src/core/dbus-service.c \
924 src/core/dbus-service.h \
925 src/core/dbus-socket.c \
926 src/core/dbus-socket.h \
927 src/core/dbus-timer.c \
928 src/core/dbus-timer.h \
929 src/core/dbus-target.c \
930 src/core/dbus-target.h \
931 src/core/dbus-mount.c \
932 src/core/dbus-mount.h \
933 src/core/dbus-automount.c \
934 src/core/dbus-automount.h \
935 src/core/dbus-swap.c \
936 src/core/dbus-swap.h \
937 src/core/dbus-snapshot.c \
938 src/core/dbus-snapshot.h \
939 src/core/dbus-device.c \
940 src/core/dbus-device.h \
941 src/core/dbus-path.c \
942 src/core/dbus-path.h \
943 src/core/dbus-slice.c \
944 src/core/dbus-slice.h \
945 src/core/dbus-scope.c \
946 src/core/dbus-scope.h \
947 src/core/dbus-execute.c \
948 src/core/dbus-execute.h \
949 src/core/dbus-kill.c \
950 src/core/dbus-kill.h \
951 src/core/dbus-cgroup.c \
952 src/core/dbus-cgroup.h \
953 src/core/cgroup.c \
954 src/core/cgroup.h \
955 src/core/selinux-access.c \
956 src/core/selinux-access.h \
957 src/core/selinux-setup.c \
958 src/core/selinux-setup.h \
959 src/core/smack-setup.c \
960 src/core/smack-setup.h \
961 src/core/ima-setup.c \
962 src/core/ima-setup.h \
963 src/core/locale-setup.h \
964 src/core/locale-setup.c \
965 src/core/hostname-setup.c \
966 src/core/hostname-setup.h \
967 src/core/machine-id-setup.c \
968 src/core/machine-id-setup.h \
969 src/core/mount-setup.c \
970 src/core/mount-setup.h \
971 src/core/loopback-setup.h \
972 src/core/loopback-setup.c \
973 src/core/condition.c \
974 src/core/condition.h \
975 src/core/namespace.c \
976 src/core/namespace.h \
977 src/core/tcpwrap.c \
978 src/core/tcpwrap.h \
979 src/core/securebits.h \
980 src/core/initreq.h \
981 src/core/special.h \
982 src/core/bus-errors.h \
983 src/core/build.h \
984 src/core/sysfs-show.h \
985 src/core/switch-root.h \
986 src/core/switch-root.c \
987 src/core/killall.h \
988 src/core/killall.c \
989 src/core/syscall-list.c \
990 src/core/syscall-list.h \
991 src/core/audit-fd.c \
992 src/core/audit-fd.h \
993 src/core/async.c \
994 src/core/async.h
995
996if HAVE_KMOD
997libsystemd_core_la_SOURCES += \
998 src/core/kmod-setup.c \
999 src/core/kmod-setup.h
1000endif
1001
1002nodist_libsystemd_core_la_SOURCES = \
1003 src/core/load-fragment-gperf.c \
1004 src/core/load-fragment-gperf-nulstr.c \
1005 src/core/syscall-from-name.h \
1006 src/core/syscall-to-name.h
1007
1008libsystemd_core_la_CFLAGS = \
1009 $(AM_CFLAGS) \
1010 $(DBUS_CFLAGS) \
1011 $(LIBWRAP_CFLAGS) \
1012 $(PAM_CFLAGS) \
1013 $(AUDIT_CFLAGS) \
1014 $(KMOD_CFLAGS) \
1015 -pthread
1016
1017libsystemd_core_la_LIBADD = \
1018 libsystemd-capability.la \
1019 libsystemd-units.la \
1020 libsystemd-label.la \
1021 libsystemd-shared.la \
1022 libsystemd-dbus.la \
1023 libsystemd-audit.la \
1024 libsystemd-id128-internal.la \
1025 libsystemd-daemon.la \
1026 libudev.la \
1027 $(LIBWRAP_LIBS) \
1028 $(PAM_LIBS) \
1029 $(AUDIT_LIBS) \
1030 $(CAP_LIBS) \
1031 $(KMOD_LIBS)
1032
1033src/core/load-fragment-gperf-nulstr.c: src/core/load-fragment-gperf.gperf
1034 $(AM_V_at)$(MKDIR_P) $(dir $@)
1035 $(AM_V_GEN)$(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 ";" }' < $< > $@
1036
1037EXTRA_DIST += \
1038 src/core/load-fragment-gperf.gperf.m4
1039
1040CLEANFILES += \
1041 src/core/load-fragment-gperf.gperf \
1042 src/core/load-fragment-gperf.c \
1043 src/core/load-fragment-gperf-nulstr.c \
1044 src/core/syscall-list.txt \
1045 src/core/syscall-from-name.gperf
1046
1047BUILT_SOURCES += \
1048 src/core/syscall-from-name.h \
1049 src/core/syscall-to-name.h
1050
1051src/core/syscall-list.txt: Makefile
1052 $(AM_V_at)$(MKDIR_P) $(dir $@)
1053 $(AM_V_GEN)$(CPP) $(CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) -dM -include sys/syscall.h - < /dev/null | $(AWK) '/^#define[ \t]+__NR_[^ ]+[ \t]+[0-9(]/ { sub(/__NR_/, "", $$2); if ($$2 !~ /SYSCALL_BASE/) print $$2; }' > $@
1054
1055src/core/syscall-from-name.gperf: src/core/syscall-list.txt Makefile
1056 $(AM_V_at)$(MKDIR_P) $(dir $@)
1057 $(AM_V_GEN)$(AWK) 'BEGIN{ print "struct syscall_name { const char* name; int id; };"; print "%null-strings"; print "%%";} { printf "%s, __NR_%s\n", $$1, $$1 }' < $< > $@
1058
1059src/core/syscall-from-name.h: src/core/syscall-from-name.gperf Makefile
1060 $(AM_V_at)$(MKDIR_P) $(dir $@)
1061 $(AM_V_GPERF)$(GPERF) -L ANSI-C -t --ignore-case -N lookup_syscall -H hash_syscall_name -p -C < $< > $@
1062
1063src/core/syscall-to-name.h: src/core/syscall-list.txt Makefile
1064 $(AM_V_at)$(MKDIR_P) $(dir $@)
1065 $(AM_V_GEN)$(AWK) 'BEGIN{ print "const char* const syscall_names[] = { "} { printf "[SYSCALL_TO_INDEX(__NR_%s)] = \"%s\",\n", $$1, $$1 } END{print "};"}' < $< > $@
1066
1067# ------------------------------------------------------------------------------
1068systemd_SOURCES = \
1069 src/core/main.c
1070
1071systemd_CFLAGS = \
1072 $(AM_CFLAGS) \
1073 $(DBUS_CFLAGS)
1074
1075systemd_LDADD = \
1076 libsystemd-core.la \
1077 libsystemd-daemon.la \
1078 libsystemd-id128-internal.la \
1079 libsystemd-dbus.la
1080
1081dist_pkgsysconf_DATA += \
1082 src/core/system.conf \
1083 src/core/user.conf
1084
1085dist_dbuspolicy_DATA += \
1086 src/core/org.freedesktop.systemd1.conf
1087
1088dist_dbussystemservice_DATA += \
1089 src/core/org.freedesktop.systemd1.service
1090
1091polkitpolicy_in_in_files += \
1092 src/core/org.freedesktop.systemd1.policy.in.in
1093
1094pkgconfigdata_DATA = \
1095 src/core/systemd.pc
1096
1097nodist_rpmmacros_DATA = \
1098 src/core/macros.systemd
1099
1100EXTRA_DIST += \
1101 src/core/systemd.pc.in \
1102 src/core/macros.systemd.in
1103
1104CLEANFILES += \
1105 src/core/macros.systemd \
1106 src/core/org.freedesktop.systemd1.policy.in
1107
1108# ------------------------------------------------------------------------------
1109manual_tests += \
1110 test-engine \
1111 test-ns \
1112 test-loopback \
1113 test-hostname \
1114 test-daemon \
1115 test-cgroup \
1116 test-install \
1117 test-watchdog \
1118 test-log
1119
1120tests += \
1121 test-job-type \
1122 test-env-replace \
1123 test-strbuf \
1124 test-strv \
1125 test-path-util \
1126 test-strxcpyx \
1127 test-unit-name \
1128 test-unit-file \
1129 test-utf8 \
1130 test-ellipsize \
1131 test-util \
1132 test-namespace \
1133 test-date \
1134 test-sleep \
1135 test-replace-var \
1136 test-sched-prio \
1137 test-calendarspec \
1138 test-strip-tab-ansi \
1139 test-cgroup-util \
1140 test-prioq \
1141 test-fileio \
1142 test-time \
1143 test-hashmap \
1144 test-list \
1145 test-tables \
1146 test-device-nodes
1147
1148EXTRA_DIST += \
1149 test/sched_idle_bad.service \
1150 test/sched_idle_ok.service \
1151 test/sched_rr_bad.service \
1152 test/sched_rr_ok.service \
1153 test/sched_rr_change.service
1154
1155EXTRA_DIST += \
1156 src/test/test-helper.h
1157
1158test_device_nodes_SOURCES = \
1159 src/test/test-device-nodes.c
1160
1161test_device_nodes_LDADD = \
1162 libsystemd-shared.la
1163
1164test_engine_SOURCES = \
1165 src/test/test-engine.c
1166
1167test_engine_CFLAGS = \
1168 $(AM_CFLAGS) \
1169 $(DBUS_CFLAGS)
1170
1171test_engine_LDADD = \
1172 libsystemd-core.la \
1173 libsystemd-daemon.la \
1174 libsystemd-dbus.la
1175
1176test_job_type_SOURCES = \
1177 src/test/test-job-type.c
1178
1179test_job_type_CFLAGS = \
1180 $(AM_CFLAGS) \
1181 $(DBUS_CFLAGS)
1182
1183test_job_type_LDADD = \
1184 libsystemd-core.la \
1185 libsystemd-daemon.la
1186
1187test_ns_SOURCES = \
1188 src/test/test-ns.c
1189
1190test_ns_LDADD = \
1191 libsystemd-core.la
1192
1193test_ns_CFLAGS = \
1194 $(AM_CFLAGS) \
1195 $(DBUS_CFLAGS)
1196
1197test_loopback_SOURCES = \
1198 src/test/test-loopback.c
1199
1200test_loopback_LDADD = \
1201 libsystemd-shared.la \
1202 libsystemd-core.la
1203
1204test_hostname_SOURCES = \
1205 src/test/test-hostname.c
1206
1207test_hostname_LDADD = \
1208 libsystemd-core.la
1209
1210if ENABLE_EFI
1211manual_tests += \
1212 test-boot-timestamp
1213
1214test_boot_timestamp_SOURCES = \
1215 src/test/test-boot-timestamps.c
1216
1217test_boot_timestamp_LDADD = \
1218 libsystemd-shared.la
1219endif
1220
1221test_unit_name_SOURCES = \
1222 src/test/test-unit-name.c
1223
1224test_unit_name_CFLAGS = \
1225 $(AM_CFLAGS) \
1226 $(DBUS_CFLAGS)
1227
1228test_unit_name_LDADD = \
1229 libsystemd-core.la
1230
1231test_unit_file_SOURCES = \
1232 src/test/test-unit-file.c
1233
1234test_unit_file_CFLAGS = \
1235 $(AM_CFLAGS) \
1236 $(DBUS_CFLAGS)
1237
1238test_unit_file_LDADD = \
1239 libsystemd-core.la
1240
1241test_utf8_SOURCES = \
1242 src/test/test-utf8.c
1243
1244test_utf8_LDADD = \
1245 libsystemd-shared.la
1246
1247test_util_SOURCES = \
1248 src/test/test-util.c
1249
1250test_util_LDADD = \
1251 libsystemd-core.la
1252
1253test_namespace_SOURCES = \
1254 src/test/test-namespace.c
1255
1256test_namespace_LDADD = \
1257 libsystemd-core.la
1258
1259test_hashmap_SOURCES = \
1260 src/test/test-hashmap.c
1261
1262test_hashmap_LDADD = \
1263 libsystemd-core.la
1264
1265test_list_SOURCES = \
1266 src/test/test-list.c
1267
1268test_list_LDADD = \
1269 libsystemd-core.la
1270
1271test_tables_SOURCES = \
1272 src/test/test-tables.c \
1273 src/shared/test-tables.h
1274
1275test_tables_CFLAGS = \
1276 $(AM_CFLAGS) \
1277 $(DBUS_CFLAGS)
1278
1279test_tables_LDADD = \
1280 libsystemd-core.la \
1281 libsystemd-logs.la
1282
1283test_prioq_SOURCES = \
1284 src/test/test-prioq.c
1285
1286test_prioq_LDADD = \
1287 libsystemd-core.la
1288
1289test_fileio_SOURCES = \
1290 src/test/test-fileio.c
1291
1292test_fileio_LDADD = \
1293 libsystemd-core.la
1294
1295test_time_SOURCES = \
1296 src/test/test-time.c
1297
1298test_time_LDADD = \
1299 libsystemd-core.la
1300
1301test_log_SOURCES = \
1302 src/test/test-log.c
1303
1304test_log_LDADD = \
1305 libsystemd-core.la
1306
1307test_ellipsize_SOURCES = \
1308 src/test/test-ellipsize.c
1309
1310test_ellipsize_LDADD = \
1311 libsystemd-core.la
1312
1313test_date_SOURCES = \
1314 src/test/test-date.c
1315
1316test_date_LDADD = \
1317 libsystemd-core.la
1318
1319test_sleep_SOURCES = \
1320 src/test/test-sleep.c
1321
1322test_sleep_LDADD = \
1323 libsystemd-core.la
1324
1325test_replace_var_SOURCES = \
1326 src/test/test-replace-var.c
1327
1328test_replace_var_LDADD = \
1329 libsystemd-shared.la
1330
1331test_calendarspec_SOURCES = \
1332 src/test/test-calendarspec.c
1333
1334test_calendarspec_LDADD = \
1335 libsystemd-shared.la
1336
1337test_strip_tab_ansi_SOURCES = \
1338 src/test/test-strip-tab-ansi.c
1339
1340test_strip_tab_ansi_LDADD = \
1341 libsystemd-shared.la
1342
1343test_daemon_SOURCES = \
1344 src/test/test-daemon.c
1345
1346test_daemon_LDADD = \
1347 libsystemd-shared.la \
1348 libsystemd-daemon.la
1349
1350test_cgroup_SOURCES = \
1351 src/test/test-cgroup.c
1352
1353test_cgroup_LDADD = \
1354 libsystemd-label.la \
1355 libsystemd-shared.la
1356
1357test_cgroup_util_SOURCES = \
1358 src/test/test-cgroup-util.c
1359
1360test_cgroup_util_LDADD = \
1361 libsystemd-label.la \
1362 libsystemd-shared.la \
1363 libsystemd-daemon.la
1364
1365test_env_replace_SOURCES = \
1366 src/test/test-env-replace.c
1367
1368test_env_replace_LDADD = \
1369 libsystemd-shared.la
1370
1371test_strbuf_SOURCES = \
1372 src/test/test-strbuf.c
1373
1374test_strbuf_LDADD = \
1375 libsystemd-shared.la
1376
1377test_strv_SOURCES = \
1378 src/test/test-strv.c
1379
1380test_strv_LDADD = \
1381 libsystemd-shared.la \
1382 libsystemd-units.la \
1383 libsystemd-id128-internal.la
1384
1385test_path_util_SOURCES = \
1386 src/test/test-path-util.c
1387
1388test_path_util_LDADD = \
1389 libsystemd-shared.la
1390
1391test_strxcpyx_SOURCES = \
1392 src/test/test-strxcpyx.c
1393
1394test_strxcpyx_LDADD = \
1395 libsystemd-shared.la
1396
1397test_install_SOURCES = \
1398 src/test/test-install.c
1399
1400test_install_CFLAGS = \
1401 $(AM_CFLAGS) \
1402 $(DBUS_CFLAGS)
1403
1404test_install_LDADD = \
1405 libsystemd-units.la \
1406 libsystemd-label.la \
1407 libsystemd-shared.la \
1408 libsystemd-id128-internal.la
1409
1410test_watchdog_SOURCES = \
1411 src/test/test-watchdog.c
1412
1413test_watchdog_LDADD = \
1414 libsystemd-shared.la
1415
1416test_sched_prio_SOURCES = \
1417 src/test/test-sched-prio.c
1418
1419test_sched_prio_CFLAGS = \
1420 $(AM_CFLAGS) \
1421 $(DBUS_CFLAGS) \
1422 -D"STR(s)=\#s" -D"TEST_DIR=STR($(abs_top_srcdir)/test/)"
1423
1424test_sched_prio_LDADD = \
1425 libsystemd-core.la \
1426 libsystemd-daemon.la
1427
1428# ------------------------------------------------------------------------------
1429## .PHONY so it always rebuilds it
1430.PHONY: coverage lcov-run lcov-report
1431
1432# run lcov from scratch, always
1433coverage:
1434 $(MAKE) lcov-run
1435 $(MAKE) lcov-report
1436
1437coverage_dir = coverage
1438coverage_opts = --base-directory $(srcdir) --directory $(builddir) --rc 'geninfo_adjust_src_path=$(abspath $(srcdir))=>$(abspath $(builddir))'
1439
1440if ENABLE_COVERAGE
1441# reset run coverage tests
1442lcov-run:
1443 @rm -rf $(coverage_dir)
1444 lcov $(coverage_opts) --zerocounters
1445 -$(MAKE) check
1446
1447# generate report based on current coverage data
1448lcov-report:
1449 $(MKDIR_P) $(coverage_dir)
1450 lcov $(coverage_opts) --compat-libtool --capture --no-external \
1451 | sed 's|$(abspath $(builddir))|$(abspath $(srcdir))|' > $(coverage_dir)/.lcov.info
1452 genhtml -t "systemd test coverage" -o $(coverage_dir) $(coverage_dir)/.lcov.info
1453 @echo "Coverage report generated in $(abs_builddir)/$(coverage_dir)/index.html"
1454
1455# lcov doesn't work properly with vpath builds, make sure that bad
1456# output is not uploaded by mistake.
1457coverage-sync: coverage
1458 test "$(builddir)" = "$(srcdir)"
1459 rsync -rlv --delete --omit-dir-times coverage/ $(www_target)/coverage
1460
1461else
1462lcov-run lcov-report:
1463 echo "Need to reconfigure with --enable-coverage"
1464endif
1465
1466# ------------------------------------------------------------------------------
1467systemd_analyze_SOURCES = \
1468 src/analyze/analyze.c
1469
1470systemd_analyze_CFLAGS = \
1471 $(AM_CFLAGS) \
1472 $(DBUS_CFLAGS)
1473
1474systemd_analyze_LDADD = \
1475 libsystemd-shared.la \
1476 libsystemd-bus.la
1477
1478# ------------------------------------------------------------------------------
1479systemd_initctl_SOURCES = \
1480 src/initctl/initctl.c
1481
1482systemd_initctl_CFLAGS = \
1483 $(AM_CFLAGS) \
1484 $(DBUS_CFLAGS)
1485
1486systemd_initctl_LDADD = \
1487 libsystemd-shared.la \
1488 libsystemd-daemon.la \
1489 libsystemd-bus.la
1490
1491# ------------------------------------------------------------------------------
1492systemd_update_utmp_SOURCES = \
1493 src/update-utmp/update-utmp.c
1494
1495systemd_update_utmp_CFLAGS = \
1496 $(AM_CFLAGS) \
1497 $(DBUS_CFLAGS) \
1498 $(AUDIT_CFLAGS)
1499
1500systemd_update_utmp_LDADD = \
1501 libsystemd-shared.la \
1502 libsystemd-bus.la \
1503 $(AUDIT_LIBS)
1504
1505# ------------------------------------------------------------------------------
1506systemd_shutdownd_SOURCES = \
1507 src/shutdownd/shutdownd.c
1508
1509systemd_shutdownd_LDADD = \
1510 libsystemd-label.la \
1511 libsystemd-shared.la \
1512 libsystemd-daemon.la
1513
1514pkginclude_HEADERS += \
1515 src/systemd/sd-shutdown.h
1516
1517# ------------------------------------------------------------------------------
1518systemd_shutdown_SOURCES = \
1519 src/core/umount.c \
1520 src/core/umount.h \
1521 src/core/shutdown.c \
1522 src/core/mount-setup.c \
1523 src/core/mount-setup.h \
1524 src/core/killall.h \
1525 src/core/killall.c
1526
1527systemd_shutdown_LDADD = \
1528 libsystemd-label.la \
1529 libsystemd-shared.la \
1530 libudev.la
1531
1532# ------------------------------------------------------------------------------
1533if HAVE_KMOD
1534systemd_modules_load_SOURCES = \
1535 src/modules-load/modules-load.c
1536
1537systemd_modules_load_CFLAGS = \
1538 $(AM_CFLAGS) \
1539 $(KMOD_CFLAGS)
1540
1541systemd_modules_load_LDADD = \
1542 libsystemd-shared.la \
1543 $(KMOD_LIBS)
1544
1545rootlibexec_PROGRAMS += \
1546 systemd-modules-load
1547
1548nodist_systemunit_DATA += \
1549 units/systemd-modules-load.service
1550
1551SYSINIT_TARGET_WANTS += \
1552 systemd-modules-load.service
1553
1554if ENABLE_TMPFILES
1555nodist_systemunit_DATA += \
1556 units/kmod-static-nodes.service
1557
1558SYSINIT_TARGET_WANTS += \
1559 kmod-static-nodes.service
1560endif
1561endif
1562
1563EXTRA_DIST += \
1564 units/systemd-modules-load.service.in \
1565 units/kmod-static-nodes.service.in
1566
1567# ------------------------------------------------------------------------------
1568if ENABLE_TMPFILES
1569systemd_tmpfiles_SOURCES = \
1570 src/tmpfiles/tmpfiles.c \
1571 src/shared/specifier.c \
1572 src/shared/specifier.h
1573
1574systemd_tmpfiles_LDADD = \
1575 libsystemd-label.la \
1576 libsystemd-shared.la \
1577 libsystemd-capability.la \
1578 libsystemd-id128-internal.la
1579
1580rootbin_PROGRAMS += \
1581 systemd-tmpfiles
1582
1583dist_systemunit_DATA += \
1584 units/systemd-tmpfiles-clean.timer
1585
1586nodist_systemunit_DATA += \
1587 units/systemd-tmpfiles-setup-dev.service \
1588 units/systemd-tmpfiles-setup.service \
1589 units/systemd-tmpfiles-clean.service
1590
1591dist_tmpfiles_DATA = \
1592 tmpfiles.d/systemd.conf \
1593 tmpfiles.d/tmp.conf \
1594 tmpfiles.d/x11.conf
1595
1596if HAVE_SYSV_COMPAT
1597dist_tmpfiles_DATA += \
1598 tmpfiles.d/legacy.conf
1599endif
1600
1601SYSINIT_TARGET_WANTS += \
1602 systemd-tmpfiles-setup-dev.service \
1603 systemd-tmpfiles-setup.service
1604
1605dist_zshcompletion_DATA += \
1606 shell-completion/zsh/_systemd-tmpfiles
1607
1608TIMERS_TARGET_WANTS += \
1609 systemd-tmpfiles-clean.timer
1610
1611INSTALL_DIRS += \
1612 $(tmpfilesdir) \
1613 $(sysconfdir)/tmpfiles.d
1614endif
1615
1616EXTRA_DIST += \
1617 units/systemd-tmpfiles-setup-dev.service.in \
1618 units/systemd-tmpfiles-setup.service.in \
1619 units/systemd-tmpfiles-clean.service.in
1620
1621# ------------------------------------------------------------------------------
1622systemd_machine_id_setup_SOURCES = \
1623 src/machine-id-setup/machine-id-setup-main.c \
1624 src/core/machine-id-setup.c \
1625 src/core/machine-id-setup.h
1626
1627systemd_machine_id_setup_LDADD = \
1628 libsystemd-label.la \
1629 libsystemd-shared.la \
1630 libsystemd-id128-internal.la
1631
1632# ------------------------------------------------------------------------------
1633systemd_sysctl_SOURCES = \
1634 src/sysctl/sysctl.c
1635
1636systemd_sysctl_LDADD = \
1637 libsystemd-shared.la
1638
1639# ------------------------------------------------------------------------------
1640systemd_sleep_SOURCES = \
1641 src/sleep/sleep.c
1642
1643systemd_sleep_LDADD = \
1644 libsystemd-shared.la
1645
1646# ------------------------------------------------------------------------------
1647systemd_fsck_SOURCES = \
1648 src/fsck/fsck.c
1649
1650systemd_fsck_CFLAGS = \
1651 $(AM_CFLAGS) \
1652 $(DBUS_CFLAGS)
1653
1654systemd_fsck_LDADD = \
1655 libsystemd-shared.la \
1656 libsystemd-bus.la \
1657 libudev.la
1658
1659# ------------------------------------------------------------------------------
1660systemd_ac_power_SOURCES = \
1661 src/ac-power/ac-power.c
1662
1663systemd_ac_power_LDADD = \
1664 libsystemd-shared.la \
1665 libudev.la
1666
1667# ------------------------------------------------------------------------------
1668systemd_detect_virt_SOURCES = \
1669 src/detect-virt/detect-virt.c
1670
1671systemd_detect_virt_LDADD = \
1672 libsystemd-shared.la
1673
1674systemd-detect-virt-install-hook:
1675 -$(SETCAP) cap_dac_override,cap_sys_ptrace=ep $(DESTDIR)$(bindir)/systemd-detect-virt
1676
1677INSTALL_EXEC_HOOKS += \
1678 systemd-detect-virt-install-hook
1679
1680# ------------------------------------------------------------------------------
1681systemd_delta_SOURCES = \
1682 src/delta/delta.c
1683
1684systemd_delta_LDADD = \
1685 libsystemd-shared.la
1686
1687# ------------------------------------------------------------------------------
1688systemd_getty_generator_SOURCES = \
1689 src/getty-generator/getty-generator.c
1690
1691systemd_getty_generator_LDADD = \
1692 libsystemd-label.la \
1693 libsystemd-shared.la
1694
1695# ------------------------------------------------------------------------------
1696systemd_fstab_generator_SOURCES = \
1697 src/fstab-generator/fstab-generator.c \
1698 src/core/mount-setup.c
1699
1700systemd_fstab_generator_LDADD = \
1701 libsystemd-label.la \
1702 libsystemd-shared.la
1703
1704# ------------------------------------------------------------------------------
1705systemd_system_update_generator_SOURCES = \
1706 src/system-update-generator/system-update-generator.c
1707
1708systemd_system_update_generator_LDADD = \
1709 libsystemd-label.la \
1710 libsystemd-shared.la
1711
1712if ENABLE_EFI
1713# ------------------------------------------------------------------------------
1714systemgenerator_PROGRAMS += \
1715 systemd-efi-boot-generator
1716
1717systemd_efi_boot_generator_SOURCES = \
1718 src/efi-boot-generator/efi-boot-generator.c
1719
1720systemd_efi_boot_generator_LDADD = \
1721 libsystemd-label.la \
1722 libsystemd-shared.la
1723
1724# ------------------------------------------------------------------------------
1725bootctl_SOURCES = \
1726 src/boot/boot.h \
1727 src/boot/boot-loader.h \
1728 src/boot/bootctl.c \
1729 src/boot/boot-loader.c \
1730 src/boot/boot-efi.c
1731
1732bootctl_LDADD = \
1733 libsystemd-shared.la \
1734 libsystemd-id128.la \
1735 libsystemd-daemon.la
1736
1737bin_PROGRAMS += \
1738 bootctl
1739endif
1740
1741# ------------------------------------------------------------------------------
1742if HAVE_BLKID
1743systemgenerator_PROGRAMS += \
1744 systemd-gpt-auto-generator
1745
1746systemd_gpt_auto_generator_SOURCES = \
1747 src/gpt-auto-generator/gpt-auto-generator.c
1748
1749systemd_gpt_auto_generator_LDADD = \
1750 libsystemd-label.la \
1751 libsystemd-shared.la \
1752 libsystemd-id128-internal.la \
1753 libudev-private.la \
1754 $(BLKID_LIBS)
1755
1756systemd_gpt_auto_generator_CFLAGS = \
1757 $(AM_CFLAGS) \
1758 $(BLKID_CFLAGS)
1759endif
1760
1761# ------------------------------------------------------------------------------
1762systemd_rc_local_generator_SOURCES = \
1763 src/rc-local-generator/rc-local-generator.c
1764
1765systemd_rc_local_generator_LDADD = \
1766 libsystemd-label.la \
1767 libsystemd-shared.la
1768
1769# ------------------------------------------------------------------------------
1770systemd_remount_fs_SOURCES = \
1771 src/remount-fs/remount-fs.c \
1772 src/core/mount-setup.c \
1773 src/core/mount-setup.h
1774
1775systemd_remount_fs_LDADD = \
1776 libsystemd-label.la \
1777 libsystemd-shared.la
1778
1779# ------------------------------------------------------------------------------
1780systemd_cgroups_agent_SOURCES = \
1781 src/cgroups-agent/cgroups-agent.c
1782
1783systemd_cgroups_agent_LDADD = \
1784 libsystemd-shared.la \
1785 libsystemd-bus.la
1786
1787# ------------------------------------------------------------------------------
1788systemctl_SOURCES = \
1789 src/systemctl/systemctl.c
1790
1791systemctl_CFLAGS = \
1792 $(AM_CFLAGS) \
1793 $(DBUS_CFLAGS)
1794
1795systemctl_LDADD = \
1796 libsystemd-units.la \
1797 libsystemd-label.la \
1798 libsystemd-shared.la \
1799 libsystemd-daemon.la \
1800 libsystemd-dbus.la \
1801 libsystemd-logs.la
1802
1803# ------------------------------------------------------------------------------
1804systemd_notify_SOURCES = \
1805 src/notify/notify.c \
1806 src/readahead/sd-readahead.c
1807
1808systemd_notify_LDADD = \
1809 libsystemd-shared.la \
1810 libsystemd-daemon.la
1811
1812# ------------------------------------------------------------------------------
1813systemd_ask_password_SOURCES = \
1814 src/ask-password/ask-password.c
1815
1816systemd_ask_password_LDADD = \
1817 libsystemd-label.la \
1818 libsystemd-shared.la
1819
1820# ------------------------------------------------------------------------------
1821systemd_reply_password_SOURCES = \
1822 src/reply-password/reply-password.c
1823
1824systemd_reply_password_LDADD = \
1825 libsystemd-shared.la
1826
1827# ------------------------------------------------------------------------------
1828systemd_cgls_SOURCES = \
1829 src/cgls/cgls.c
1830
1831systemd_cgls_LDADD = \
1832 libsystemd-shared.la
1833
1834# ------------------------------------------------------------------------------
1835systemd_cgtop_SOURCES = \
1836 src/cgtop/cgtop.c
1837
1838systemd_cgtop_LDADD = \
1839 libsystemd-shared.la
1840
1841# ------------------------------------------------------------------------------
1842systemd_nspawn_SOURCES = \
1843 src/nspawn/nspawn.c \
1844 src/core/mount-setup.c \
1845 src/core/mount-setup.h \
1846 src/core/loopback-setup.c \
1847 src/core/loopback-setup.h
1848
1849systemd_nspawn_LDADD = \
1850 libsystemd-label.la \
1851 libsystemd-capability.la \
1852 libsystemd-shared.la \
1853 libsystemd-daemon.la \
1854 libsystemd-id128-internal.la \
1855 libsystemd-bus.la
1856
1857# ------------------------------------------------------------------------------
1858systemd_run_SOURCES = \
1859 src/run/run.c
1860
1861systemd_run_LDADD = \
1862 libsystemd-label.la \
1863 libsystemd-capability.la \
1864 libsystemd-shared.la \
1865 libsystemd-daemon.la \
1866 libsystemd-id128-internal.la \
1867 libsystemd-bus.la
1868
1869# ------------------------------------------------------------------------------
1870systemd_stdio_bridge_SOURCES = \
1871 src/stdio-bridge/stdio-bridge.c
1872
1873systemd_stdio_bridge_LDADD = \
1874 libsystemd-shared.la \
1875 libsystemd-bus.la \
1876 libsystemd-daemon.la
1877
1878# ------------------------------------------------------------------------------
1879systemd_tty_ask_password_agent_SOURCES = \
1880 src/tty-ask-password-agent/tty-ask-password-agent.c
1881
1882systemd_tty_ask_password_agent_LDADD = \
1883 libsystemd-label.la \
1884 libsystemd-shared.la
1885
1886# ------------------------------------------------------------------------------
1887libsystemd_daemon_la_SOURCES = \
1888 src/libsystemd-daemon/sd-daemon.c
1889
1890libsystemd_daemon_internal_la_SOURCES = \
1891 $(libsystemd_daemon_la_SOURCES)
1892
1893libsystemd_daemon_la_CFLAGS = \
1894 $(AM_CFLAGS) \
1895 -fvisibility=hidden \
1896 -DSD_EXPORT_SYMBOLS
1897
1898libsystemd_daemon_la_LDFLAGS = \
1899 $(AM_LDFLAGS) \
1900 -version-info $(LIBSYSTEMD_DAEMON_CURRENT):$(LIBSYSTEMD_DAEMON_REVISION):$(LIBSYSTEMD_DAEMON_AGE) \
1901 -Wl,--version-script=$(top_srcdir)/src/libsystemd-daemon/libsystemd-daemon.sym
1902
1903libsystemd_daemon_la_LIBADD = \
1904 $(RT_LIBS)
1905
1906pkginclude_HEADERS += \
1907 src/systemd/sd-daemon.h
1908
1909# move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
1910libsystemd-daemon-install-hook:
1911 libname=libsystemd-daemon.so && $(move-to-rootlibdir)
1912
1913libsystemd-daemon-uninstall-hook:
1914 rm -f $(DESTDIR)$(rootlibdir)/libsystemd-daemon.so*
1915
1916INSTALL_EXEC_HOOKS += libsystemd-daemon-install-hook
1917UNINSTALL_EXEC_HOOKS += libsystemd-daemon-uninstall-hook
1918
1919lib_LTLIBRARIES += \
1920 libsystemd-daemon.la
1921
1922noinst_LTLIBRARIES += \
1923 libsystemd-daemon-internal.la
1924
1925pkgconfiglib_DATA += \
1926 src/libsystemd-daemon/libsystemd-daemon.pc
1927
1928EXTRA_DIST += \
1929 src/libsystemd-daemon/libsystemd-daemon.pc.in \
1930 src/libsystemd-daemon/libsystemd-daemon.sym
1931
1932# ------------------------------------------------------------------------------
1933libsystemd_bus_la_SOURCES = \
1934 src/systemd/sd-bus.h \
1935 src/systemd/sd-bus-protocol.h \
1936 src/systemd/sd-bus-vtable.h \
1937 src/systemd/sd-memfd.h \
1938 src/systemd/sd-event.h \
1939 src/libsystemd-bus/sd-bus.c \
1940 src/libsystemd-bus/bus-control.c \
1941 src/libsystemd-bus/bus-control.h \
1942 src/libsystemd-bus/bus-error.c \
1943 src/libsystemd-bus/bus-error.h \
1944 src/libsystemd-bus/bus-internal.c \
1945 src/libsystemd-bus/bus-internal.h \
1946 src/libsystemd-bus/bus-socket.c \
1947 src/libsystemd-bus/bus-socket.h \
1948 src/libsystemd-bus/bus-kernel.c \
1949 src/libsystemd-bus/bus-kernel.h \
1950 src/libsystemd-bus/bus-message.c \
1951 src/libsystemd-bus/bus-message.h \
1952 src/libsystemd-bus/bus-signature.c \
1953 src/libsystemd-bus/bus-signature.h \
1954 src/libsystemd-bus/bus-type.c \
1955 src/libsystemd-bus/bus-type.h \
1956 src/libsystemd-bus/bus-match.c \
1957 src/libsystemd-bus/bus-match.h \
1958 src/libsystemd-bus/bus-bloom.c \
1959 src/libsystemd-bus/bus-bloom.h \
1960 src/libsystemd-bus/bus-introspect.c \
1961 src/libsystemd-bus/bus-introspect.h \
1962 src/libsystemd-bus/bus-objects.c \
1963 src/libsystemd-bus/bus-objects.h \
1964 src/libsystemd-bus/bus-convenience.c \
1965 src/libsystemd-bus/kdbus.h \
1966 src/libsystemd-bus/sd-memfd.c \
1967 src/libsystemd-bus/sd-event.c \
1968 src/libsystemd-bus/bus-util.c \
1969 src/libsystemd-bus/bus-util.h \
1970 src/libsystemd-bus/event-util.h
1971
1972libsystemd_bus_la_LIBADD = \
1973 libsystemd-id128-internal.la \
1974 libsystemd-shared.la \
1975 libsystemd-daemon.la
1976
1977libsystemd_bus_la_CFLAGS = \
1978 $(AM_CFLAGS) \
1979 -pthread
1980
1981noinst_LTLIBRARIES += \
1982 libsystemd-bus.la
1983
1984tests += \
1985 test-bus-marshal \
1986 test-bus-signature \
1987 test-bus-chat \
1988 test-bus-server \
1989 test-bus-match \
1990 test-bus-kernel \
1991 test-bus-kernel-bloom \
1992 test-bus-kernel-benchmark \
1993 test-bus-memfd \
1994 test-bus-zero-copy \
1995 test-bus-introspect \
1996 test-bus-objects \
1997 test-event
1998
1999noinst_PROGRAMS += \
2000 busctl
2001
2002test_bus_marshal_SOURCES = \
2003 src/libsystemd-bus/test-bus-marshal.c
2004
2005test_bus_marshal_LDADD = \
2006 libsystemd-shared.la \
2007 libsystemd-bus.la \
2008 $(GLIB_LIBS) \
2009 $(DBUS_LIBS)
2010
2011test_bus_marshal_CFLAGS = \
2012 $(AM_CFLAGS) \
2013 $(GLIB_CFLAGS) \
2014 $(DBUS_CFLAGS)
2015
2016test_bus_signature_SOURCES = \
2017 src/libsystemd-bus/test-bus-signature.c
2018
2019test_bus_signature_LDADD = \
2020 libsystemd-shared.la \
2021 libsystemd-bus.la
2022
2023test_bus_chat_SOURCES = \
2024 src/libsystemd-bus/test-bus-chat.c
2025
2026test_bus_chat_CFLAGS = \
2027 $(AM_CFLAGS) \
2028 -pthread
2029
2030test_bus_chat_LDADD = \
2031 libsystemd-shared.la \
2032 libsystemd-bus.la \
2033 libsystemd-id128-internal.la
2034
2035test_bus_server_SOURCES = \
2036 src/libsystemd-bus/test-bus-server.c
2037
2038test_bus_server_CFLAGS = \
2039 $(AM_CFLAGS) \
2040 -pthread
2041
2042test_bus_server_LDADD = \
2043 libsystemd-shared.la \
2044 libsystemd-bus.la \
2045 libsystemd-id128-internal.la
2046
2047test_bus_objects_SOURCES = \
2048 src/libsystemd-bus/test-bus-objects.c
2049
2050test_bus_objects_CFLAGS = \
2051 $(AM_CFLAGS) \
2052 -pthread
2053
2054test_bus_objects_LDADD = \
2055 libsystemd-shared.la \
2056 libsystemd-bus.la \
2057 libsystemd-id128-internal.la
2058
2059test_bus_match_SOURCES = \
2060 src/libsystemd-bus/test-bus-match.c
2061
2062test_bus_match_LDADD = \
2063 libsystemd-shared.la \
2064 libsystemd-bus.la \
2065 libsystemd-id128-internal.la
2066
2067test_bus_kernel_SOURCES = \
2068 src/libsystemd-bus/test-bus-kernel.c
2069
2070test_bus_kernel_LDADD = \
2071 libsystemd-shared.la \
2072 libsystemd-bus.la \
2073 libsystemd-id128-internal.la
2074
2075test_bus_kernel_bloom_SOURCES = \
2076 src/libsystemd-bus/test-bus-kernel-bloom.c
2077
2078test_bus_kernel_bloom_LDADD = \
2079 libsystemd-shared.la \
2080 libsystemd-bus.la \
2081 libsystemd-id128-internal.la
2082
2083test_bus_kernel_benchmark_SOURCES = \
2084 src/libsystemd-bus/test-bus-kernel-benchmark.c
2085
2086test_bus_kernel_benchmark_LDADD = \
2087 libsystemd-shared.la \
2088 libsystemd-bus.la \
2089 libsystemd-id128-internal.la
2090
2091test_bus_memfd_SOURCES = \
2092 src/libsystemd-bus/test-bus-memfd.c
2093
2094test_bus_memfd_LDADD = \
2095 libsystemd-shared.la \
2096 libsystemd-bus.la
2097
2098test_bus_zero_copy_SOURCES = \
2099 src/libsystemd-bus/test-bus-zero-copy.c
2100
2101test_bus_zero_copy_LDADD = \
2102 libsystemd-shared.la \
2103 libsystemd-bus.la
2104
2105test_bus_introspect_SOURCES = \
2106 src/libsystemd-bus/test-bus-introspect.c
2107
2108test_bus_introspect_LDADD = \
2109 libsystemd-shared.la \
2110 libsystemd-bus.la
2111
2112test_event_SOURCES = \
2113 src/libsystemd-bus/test-event.c
2114
2115test_event_LDADD = \
2116 libsystemd-shared.la \
2117 libsystemd-bus.la \
2118 libsystemd-id128-internal.la
2119
2120busctl_SOURCES = \
2121 src/libsystemd-bus/busctl.c
2122
2123busctl_LDADD = \
2124 libsystemd-shared.la \
2125 libsystemd-bus.la
2126
2127# ------------------------------------------------------------------------------
2128if ENABLE_GTK_DOC
2129SUBDIRS += \
2130 docs/libudev
2131
2132noinst_DATA += \
2133 docs/html/libudev \
2134 docs/html/gudev
2135endif
2136
2137include_HEADERS += \
2138 src/libudev/libudev.h
2139
2140lib_LTLIBRARIES += \
2141 libudev.la
2142
2143libudev_la_SOURCES =\
2144 src/libudev/libudev-private.h \
2145 src/libudev/libudev.c \
2146 src/libudev/libudev-list.c \
2147 src/libudev/libudev-util.c \
2148 src/libudev/libudev-device.c \
2149 src/libudev/libudev-enumerate.c \
2150 src/libudev/libudev-monitor.c \
2151 src/libudev/libudev-queue.c \
2152 src/libudev/libudev-hwdb-def.h \
2153 src/libudev/libudev-hwdb.c
2154
2155libudev_la_CFLAGS = \
2156 $(AM_CFLAGS) \
2157 -fvisibility=hidden
2158
2159libudev_la_LDFLAGS = \
2160 $(AM_LDFLAGS) \
2161 -version-info $(LIBUDEV_CURRENT):$(LIBUDEV_REVISION):$(LIBUDEV_AGE) \
2162 -Wl,--version-script=$(top_srcdir)/src/libudev/libudev.sym
2163
2164libudev_la_LIBADD = \
2165 libsystemd-shared.la \
2166 libsystemd-daemon-internal.la \
2167 libsystemd-id128-internal.la
2168
2169pkgconfiglib_DATA += \
2170 src/libudev/libudev.pc
2171
2172EXTRA_DIST += \
2173 src/libudev/libudev.pc.in \
2174 src/libudev/libudev.sym
2175
2176CLEANFILES += \
2177 src/libudev/libudev.pc \
2178 docs/html/libudev \
2179 docs/html/gudev
2180
2181docs/html/libudev:
2182 $(AM_V_at)$(MKDIR_P) $(dir $@)
2183 $(AM_V_LN)$(LN_S) -f ../libudev/html $@
2184
2185docs/html/gudev:
2186 $(AM_V_at)$(MKDIR_P) $(dir $@)
2187 $(AM_V_LN)$(LN_S) -f ../gudev/html $@
2188
2189# move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
2190libudev-install-hook:
2191 libname=libudev.so && $(move-to-rootlibdir)
2192
2193libudev-uninstall-hook:
2194 rm -f $(DESTDIR)$(rootlibdir)/libudev.so*
2195
2196INSTALL_EXEC_HOOKS += libudev-install-hook
2197UNINSTALL_EXEC_HOOKS += libudev-uninstall-hook
2198
2199# ------------------------------------------------------------------------------
2200noinst_LTLIBRARIES += \
2201 libudev-private.la
2202
2203libudev_private_la_SOURCES =\
2204 $(libudev_la_SOURCES) \
2205 src/libudev/libudev-device-private.c \
2206 src/libudev/libudev-queue-private.c
2207
2208libudev_private_la_CFLAGS = \
2209 $(AM_CFLAGS) \
2210 -fvisibility=default
2211
2212libudev_private_la_LIBADD = \
2213 libsystemd-shared.la
2214
2215# ------------------------------------------------------------------------------
2216INSTALL_DIRS += \
2217 $(sysconfdir)/udev/rules.d \
2218 $(sysconfdir)/udev/hwdb.d
2219
2220dist_network_DATA = \
2221 network/99-default.link
2222
2223dist_udevrules_DATA += \
2224 rules/99-systemd.rules \
2225 rules/42-usb-hid-pm.rules \
2226 rules/50-udev-default.rules \
2227 rules/60-keyboard.rules \
2228 rules/60-persistent-storage-tape.rules \
2229 rules/60-persistent-serial.rules \
2230 rules/60-persistent-input.rules \
2231 rules/60-persistent-alsa.rules \
2232 rules/60-persistent-storage.rules \
2233 rules/64-btrfs.rules \
2234 rules/75-net-description.rules \
2235 rules/75-tty-description.rules \
2236 rules/78-sound-card.rules \
2237 rules/80-net-setup-link.rules \
2238 rules/95-udev-late.rules
2239
2240dist_udevhwdb_DATA = \
2241 hwdb/20-pci-vendor-model.hwdb \
2242 hwdb/20-pci-classes.hwdb \
2243 hwdb/20-usb-vendor-model.hwdb \
2244 hwdb/20-usb-classes.hwdb \
2245 hwdb/20-bluetooth-vendor-product.hwdb \
2246 hwdb/20-acpi-vendor.hwdb \
2247 hwdb/20-OUI.hwdb \
2248 hwdb/60-keyboard.hwdb
2249
2250udevconfdir = $(sysconfdir)/udev
2251dist_udevconf_DATA = \
2252 src/udev/udev.conf
2253
2254sharepkgconfigdir = $(datadir)/pkgconfig
2255sharepkgconfig_DATA = \
2256 src/udev/udev.pc
2257
2258EXTRA_DIST += \
2259 rules/99-systemd.rules.in \
2260 src/udev/udev.pc.in
2261
2262CLEANFILES += \
2263 rules/99-systemd.rules \
2264 src/udev/udev.pc
2265
2266EXTRA_DIST += \
2267 units/systemd-udevd.service.in \
2268 units/systemd-udev-trigger.service.in \
2269 units/systemd-udev-settle.service.in
2270
2271CLEANFILES += \
2272 units/systemd-udevd.service \
2273 units/systemd-udev-trigger.service \
2274 units/systemd-udev-settle.service
2275
2276SOCKETS_TARGET_WANTS += \
2277 systemd-udevd-control.socket \
2278 systemd-udevd-kernel.socket
2279SYSINIT_TARGET_WANTS += \
2280 systemd-udevd.service \
2281 systemd-udev-trigger.service
2282
2283rootbin_PROGRAMS += \
2284 udevadm
2285
2286rootlibexec_PROGRAMS += \
2287 systemd-udevd
2288
2289noinst_LTLIBRARIES += \
2290 libudev-core.la
2291
2292src/udev/keyboard-keys.txt: Makefile
2293 $(AM_V_at)$(MKDIR_P) $(dir $@)
2294 $(AM_V_GEN)$(CPP) $(CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) -dM -include linux/input.h - < /dev/null | $(AWK) '/^#define[ \t]+KEY_[^ ]+[ \t]+[0-9]/ { if ($$2 != "KEY_MAX") { print $$2 } }' | sed 's/^KEY_COFFEE$$/KEY_SCREENLOCK/' > $@
2295
2296src/udev/keyboard-keys-from-name.gperf: src/udev/keyboard-keys.txt Makefile
2297 $(AM_V_GEN)$(AWK) 'BEGIN{ print "struct key { const char* name; unsigned short id; };"; print "%null-strings"; print "%%";} { print tolower(substr($$1 ,5)) ", " $$1 }' < $< > $@
2298
2299src/udev/keyboard-keys-from-name.h: src/udev/keyboard-keys-from-name.gperf Makefile
2300 $(AM_V_GPERF)$(GPERF) -L ANSI-C -t -N keyboard_lookup_key -H hash_key_name -p -C < $< > $@
2301
2302src/udev/keyboard-keys-to-name.h: src/udev/keyboard-keys.txt Makefile
2303 $(AM_V_GEN)$(AWK) 'BEGIN{ print "const char* const key_names[KEY_CNT] = { "} { print "[" $$1 "] = \"" $$1 "\"," } END{print "};"}' < $< > $@
2304
2305libudev_core_la_SOURCES = \
2306 src/udev/udev.h \
2307 src/udev/udev-event.c \
2308 src/udev/udev-watch.c \
2309 src/udev/udev-node.c \
2310 src/udev/udev-rules.c \
2311 src/udev/udev-ctrl.c \
2312 src/udev/udev-builtin.c \
2313 src/udev/udev-builtin-btrfs.c \
2314 src/udev/udev-builtin-hwdb.c \
2315 src/udev/udev-builtin-input_id.c \
2316 src/udev/udev-builtin-keyboard.c \
2317 src/udev/udev-builtin-net_id.c \
2318 src/udev/udev-builtin-net_setup_link.c \
2319 src/udev/udev-builtin-path_id.c \
2320 src/udev/udev-builtin-usb_id.c \
2321 src/udev/net/link-config.h \
2322 src/udev/net/link-config.c \
2323 src/udev/net/link-config-parse.c \
2324 src/udev/net/ethtool-util.h \
2325 src/udev/net/ethtool-util.c
2326
2327nodist_libudev_core_la_SOURCES = \
2328 src/udev/keyboard-keys-from-name.h \
2329 src/udev/keyboard-keys-to-name.h \
2330 src/udev/net/link-config-gperf.c
2331
2332BUILT_SOURCES += \
2333 $(nodist_libudev_core_la_SOURCES)
2334
2335CLEANFILES += \
2336 src/udev/keyboard-keys-from-name.gperf \
2337 src/udev/keyboard-keys.txt \
2338 src/udev/net/link-config-gperf.c
2339
2340EXTRA_DIST += \
2341 src/udev/net/link-config-gperf.gperf
2342
2343libudev_core_la_CFLAGS = \
2344 $(AM_CFLAGS) \
2345 $(BLKID_CFLAGS) \
2346 $(KMOD_CFLAGS)
2347
2348libudev_core_la_LIBADD = \
2349 libudev-private.la \
2350 libsystemd-label.la \
2351 libsystemd-daemon-internal.la \
2352 libsystemd-shared.la \
2353 libsystemd-rtnl.la \
2354 libsystemd-id128-internal.la \
2355 $(BLKID_LIBS) \
2356 $(KMOD_LIBS)
2357
2358libudev_core_la_CPPFLAGS = \
2359 $(AM_CPPFLAGS) \
2360 -DFIRMWARE_PATH="$(FIRMWARE_PATH)"
2361
2362if ENABLE_FIRMWARE
2363libudev_core_la_SOURCES += \
2364 src/udev/udev-builtin-firmware.c
2365
2366dist_udevrules_DATA += \
2367 rules/50-firmware.rules
2368endif
2369
2370if HAVE_KMOD
2371libudev_core_la_SOURCES += \
2372 src/udev/udev-builtin-kmod.c
2373
2374dist_udevrules_DATA += \
2375 rules/80-drivers.rules
2376endif
2377
2378if HAVE_BLKID
2379libudev_core_la_SOURCES += \
2380 src/udev/udev-builtin-blkid.c
2381endif
2382
2383if HAVE_ACL
2384libudev_core_la_SOURCES += \
2385 src/udev/udev-builtin-uaccess.c \
2386 src/login/logind-acl.c \
2387 src/login/sd-login.c \
2388 src/systemd/sd-login.h \
2389 src/login/login-shared.c \
2390 src/login/login-shared.h
2391
2392libudev_core_la_LIBADD += \
2393 libsystemd-acl.la
2394endif
2395
2396systemd_udevd_SOURCES = \
2397 src/udev/udevd.c
2398
2399systemd_udevd_LDADD = \
2400 libudev-core.la
2401
2402udevadm_SOURCES = \
2403 src/udev/udevadm.c \
2404 src/udev/udevadm-info.c \
2405 src/udev/udevadm-control.c \
2406 src/udev/udevadm-monitor.c \
2407 src/udev/udevadm-hwdb.c \
2408 src/udev/udevadm-settle.c \
2409 src/udev/udevadm-trigger.c \
2410 src/udev/udevadm-test.c \
2411 src/udev/udevadm-test-builtin.c
2412
2413udevadm_LDADD = \
2414 libudev-core.la \
2415 libsystemd-label.la \
2416 libsystemd-shared.la
2417
2418# Update hwdb on installation. Do not bother if installing
2419# in DESTDIR, since this is likely for packaging purposes.
2420hwdb-update-hook:
2421 -test -n "$(DESTDIR)" || $(rootbindir)/udevadm hwdb --update
2422
2423INSTALL_DATA_HOOKS += \
2424 hwdb-update-hook
2425
2426hwdb-remove-hook:
2427 -test -n "$(DESTDIR)" || rm -f /etc/udev/hwdb.bin
2428
2429# ------------------------------------------------------------------------------
2430TESTS += \
2431 test/udev-test.pl \
2432 test/rules-test.sh
2433
2434manual_tests += \
2435 test-libudev \
2436 test-udev
2437
2438test_libudev_SOURCES = \
2439 src/test/test-libudev.c
2440
2441test_libudev_LDADD = \
2442 libsystemd-label.la \
2443 libsystemd-shared.la \
2444 libudev.la
2445
2446test_udev_SOURCES = \
2447 src/test/test-udev.c
2448
2449test_udev_LDADD = \
2450 libudev-core.la \
2451 libsystemd-shared.la \
2452 $(BLKID_LIBS) \
2453 $(KMOD_LIBS) \
2454 $(SELINUX_LIBS)
2455
2456if HAVE_ACL
2457test_udev_LDADD += \
2458 libsystemd-acl.la
2459endif
2460
2461check_DATA += \
2462 test/sys
2463
2464# packed sysfs test tree
2465test/sys:
2466 $(AM_V_at)$(MKDIR_P) $(dir $@)
2467 $(AM_V_GEN)tar -C test/ -xJf $(top_srcdir)/test/sys.tar.xz
2468
2469test-sys-distclean:
2470 -rm -rf test/sys
2471DISTCLEAN_LOCAL_HOOKS += test-sys-distclean
2472
2473EXTRA_DIST += \
2474 test/sys.tar.xz \
2475 test/udev-test.pl \
2476 test/rules-test.sh \
2477 test/rule-syntax-check.py
2478
2479# ------------------------------------------------------------------------------
2480ata_id_SOURCES = \
2481 src/udev/ata_id/ata_id.c
2482
2483ata_id_LDADD = \
2484 libudev-private.la \
2485 libsystemd-shared.la
2486
2487udevlibexec_PROGRAMS += \
2488 ata_id
2489
2490# ------------------------------------------------------------------------------
2491cdrom_id_SOURCES = \
2492 src/udev/cdrom_id/cdrom_id.c
2493
2494cdrom_id_LDADD = \
2495 libudev.la \
2496 libsystemd-shared.la
2497
2498udevlibexec_PROGRAMS += \
2499 cdrom_id
2500
2501dist_udevrules_DATA += \
2502 rules/60-cdrom_id.rules
2503
2504# ------------------------------------------------------------------------------
2505collect_SOURCES = \
2506 src/udev/collect/collect.c
2507
2508collect_LDADD = \
2509 libudev-private.la
2510
2511udevlibexec_PROGRAMS += \
2512 collect
2513
2514# ------------------------------------------------------------------------------
2515scsi_id_SOURCES =\
2516 src/udev/scsi_id/scsi_id.c \
2517 src/udev/scsi_id/scsi_serial.c \
2518 src/udev/scsi_id/scsi.h \
2519 src/udev/scsi_id/scsi_id.h
2520
2521scsi_id_LDADD = \
2522 libudev-private.la \
2523 libsystemd-shared.la
2524
2525udevlibexec_PROGRAMS += \
2526 scsi_id
2527
2528EXTRA_DIST += \
2529 src/udev/scsi_id/README
2530
2531# ------------------------------------------------------------------------------
2532v4l_id_SOURCES = \
2533 src/udev/v4l_id/v4l_id.c
2534
2535v4l_id_LDADD = \
2536 libudev.la
2537
2538udevlibexec_PROGRAMS += \
2539 v4l_id
2540
2541dist_udevrules_DATA += \
2542 rules/60-persistent-v4l.rules
2543
2544# ------------------------------------------------------------------------------
2545accelerometer_SOURCES = \
2546 src/udev/accelerometer/accelerometer.c
2547
2548accelerometer_LDADD = \
2549 libudev.la -lm \
2550 libsystemd-shared.la
2551
2552udevlibexec_PROGRAMS += \
2553 accelerometer
2554
2555dist_udevrules_DATA += \
2556 rules/61-accelerometer.rules
2557
2558# ------------------------------------------------------------------------------
2559if ENABLE_GUDEV
2560if ENABLE_GTK_DOC
2561SUBDIRS += \
2562 docs/gudev
2563endif
2564
2565libgudev_includedir = \
2566 $(includedir)/gudev-1.0/gudev
2567
2568libgudev_include_HEADERS = \
2569 src/gudev/gudev.h \
2570 src/gudev/gudevenums.h \
2571 src/gudev/gudevenumtypes.h \
2572 src/gudev/gudevtypes.h \
2573 src/gudev/gudevclient.h \
2574 src/gudev/gudevdevice.h \
2575 src/gudev/gudevenumerator.h
2576
2577lib_LTLIBRARIES += libgudev-1.0.la
2578
2579pkgconfiglib_DATA += \
2580 src/gudev/gudev-1.0.pc
2581
2582CLEANFILES += \
2583 src/gudev/gudev-1.0.pc
2584
2585libgudev_1_0_la_SOURCES = \
2586 src/gudev/gudevenums.h \
2587 src/gudev/gudevenumtypes.h \
2588 src/gudev/gudevenumtypes.h\
2589 src/gudev/gudevtypes.h \
2590 src/gudev/gudevclient.h \
2591 src/gudev/gudevclient.c \
2592 src/gudev/gudevdevice.h \
2593 src/gudev/gudevdevice.c \
2594 src/gudev/gudevenumerator.h \
2595 src/gudev/gudevenumerator.c \
2596 src/gudev/gudevprivate.h
2597
2598nodist_libgudev_1_0_la_SOURCES = \
2599 src/gudev/gudevmarshal.h \
2600 src/gudev/gudevmarshal.c \
2601 src/gudev/gudevenumtypes.h \
2602 src/gudev/gudevenumtypes.c
2603
2604BUILT_SOURCES += \
2605 $(nodist_libgudev_1_0_la_SOURCES)
2606
2607libgudev_1_0_la_CPPFLAGS = \
2608 $(AM_CPPFLAGS) \
2609 -I$(top_builddir)/src\
2610 -I$(top_srcdir)/src\
2611 -I$(top_builddir)/src/gudev \
2612 -I$(top_srcdir)/src/gudev \
2613 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT \
2614 -D_GUDEV_COMPILATION \
2615 -DG_LOG_DOMAIN=\"GUdev\"
2616
2617libgudev_1_0_la_CFLAGS = \
2618 $(AM_CFLAGS) \
2619 -fvisibility=default \
2620 $(GLIB_CFLAGS)
2621
2622libgudev_1_0_la_LIBADD = \
2623 libudev.la \
2624 $(GLIB_LIBS)
2625
2626libgudev_1_0_la_LDFLAGS = \
2627 $(AM_LDFLAGS) \
2628 -version-info $(LIBGUDEV_CURRENT):$(LIBGUDEV_REVISION):$(LIBGUDEV_AGE) \
2629 -export-dynamic -no-undefined \
2630 -export-symbols-regex '^g_udev_.*'
2631
2632src/gudev/gudevmarshal.h: src/gudev/gudevmarshal.list
2633 $(AM_V_at)$(MKDIR_P) $(dir $@)
2634 $(AM_V_GEN)glib-genmarshal $< --prefix=g_udev_marshal --header > $@
2635
2636src/gudev/gudevmarshal.c: src/gudev/gudevmarshal.list
2637 $(AM_V_at)$(MKDIR_P) $(dir $@)
2638 $(AM_V_GEN)echo '#include "gudevmarshal.h"' > $@ && \
2639 glib-genmarshal $< --prefix=g_udev_marshal --body >> $@
2640
2641src/gudev/gudevenumtypes.%: src/gudev/gudevenumtypes.%.template src/gudev/gudevenums.h
2642 $(AM_V_at)$(MKDIR_P) $(dir $@)
2643 $(AM_V_GEN)glib-mkenums --template $^ > $@
2644
2645if HAVE_INTROSPECTION
2646-include $(INTROSPECTION_MAKEFILE)
2647
2648src/gudev/GUdev-1.0.gir: libgudev-1.0.la
2649
2650src_gudev_GUdev_1_0_gir_INCLUDES = GObject-2.0
2651
2652src_gudev_GUdev_1_0_gir_CFLAGS = \
2653 $(AM_CFLAGS) \
2654 $(INCLUDES) \
2655 -D_GUDEV_COMPILATION \
2656 -D_GUDEV_WORK_AROUND_DEV_T_BUG \
2657 -I$(top_srcdir)/src \
2658 -I$(top_builddir)/src \
2659 -I$(top_srcdir)/src/gudev \
2660 -I$(top_builddir)/src/gudev
2661
2662src_gudev_GUdev_1_0_gir_LIBS = libgudev-1.0.la
2663
2664src_gudev_GUdev_1_0_gir_SCANNERFLAGS = \
2665 --pkg-export=gudev-1.0 \
2666 --warn-all
2667
2668src_gudev_GUdev_1_0_gir_FILES = \
2669 src/gudev/gudev.h \
2670 src/gudev/gudevtypes.h \
2671 src/gudev/gudevenums.h \
2672 src/gudev/gudevenumtypes.h \
2673 src/gudev/gudevclient.h \
2674 src/gudev/gudevdevice.h \
2675 src/gudev/gudevenumerator.h \
2676 src/gudev/gudevclient.c \
2677 src/gudev/gudevdevice.c \
2678 src/gudev/gudevenumerator.c
2679
2680INTROSPECTION_GIRS = src/gudev/GUdev-1.0.gir
2681INTROSPECTION_SCANNER_ARGS = --c-include=gudev/gudev.h
2682
2683girdir = $(datadir)/gir-1.0
2684gir_DATA = \
2685 src/gudev/GUdev-1.0.gir
2686
2687typelibsdir = $(libdir)/girepository-1.0
2688typelibs_DATA = \
2689 src/gudev/GUdev-1.0.typelib
2690
2691CLEANFILES += $(gir_DATA) $(typelibs_DATA)
2692endif # HAVE_INTROSPECTION
2693
2694# move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
2695libgudev-install-hook:
2696 libname=libgudev-1.0.so && $(move-to-rootlibdir)
2697
2698libgudev-uninstall-hook:
2699 rm -f $(DESTDIR)$(rootlibdir)/libgudev-1.0.so*
2700
2701INSTALL_EXEC_HOOKS += libgudev-install-hook
2702UNINSTALL_EXEC_HOOKS += libgudev-uninstall-hook
2703endif
2704
2705EXTRA_DIST += \
2706 src/gudev/gudev-1.0.pc.in \
2707 src/gudev/gudevmarshal.list \
2708 src/gudev/gudevenumtypes.h.template \
2709 src/gudev/gudevenumtypes.c.template \
2710 src/gudev/gjs-example.js \
2711 src/gudev/seed-example-enum.js \
2712 src/gudev/seed-example.js
2713
2714# ------------------------------------------------------------------------------
2715mtd_probe_SOURCES = \
2716 src/udev/mtd_probe/mtd_probe.c \
2717 src/udev/mtd_probe/mtd_probe.h \
2718 src/udev/mtd_probe/probe_smartmedia.c
2719
2720mtd_probe_CPPFLAGS = \
2721 $(AM_CPPFLAGS)
2722
2723dist_udevrules_DATA += \
2724 rules/75-probe_mtd.rules
2725
2726udevlibexec_PROGRAMS += \
2727 mtd_probe
2728
2729# ------------------------------------------------------------------------------
2730libsystemd_id128_la_SOURCES = \
2731 src/libsystemd-id128/sd-id128.c
2732
2733libsystemd_id128_la_CFLAGS = \
2734 $(AM_CFLAGS) \
2735 -fvisibility=hidden
2736
2737libsystemd_id128_la_LDFLAGS = \
2738 $(AM_LDFLAGS) \
2739 -version-info $(LIBSYSTEMD_ID128_CURRENT):$(LIBSYSTEMD_ID128_REVISION):$(LIBSYSTEMD_ID128_AGE) \
2740 -Wl,--version-script=$(top_srcdir)/src/libsystemd-id128/libsystemd-id128.sym
2741
2742libsystemd_id128_la_LIBADD = \
2743 libsystemd-shared.la
2744
2745libsystemd_id128_internal_la_SOURCES = \
2746 $(libsystemd_id128_la_SOURCES)
2747
2748test_id128_SOURCES = \
2749 src/test/test-id128.c
2750
2751test_id128_LDADD = \
2752 libsystemd-shared.la \
2753 libsystemd-id128-internal.la \
2754 libsystemd-daemon.la
2755
2756tests += \
2757 test-id128
2758
2759pkginclude_HEADERS += \
2760 src/systemd/sd-id128.h
2761
2762lib_LTLIBRARIES += \
2763 libsystemd-id128.la
2764
2765noinst_LTLIBRARIES += \
2766 libsystemd-id128-internal.la
2767
2768pkgconfiglib_DATA += \
2769 src/libsystemd-id128/libsystemd-id128.pc
2770
2771# move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
2772libsystemd-id128-install-hook:
2773 libname=libsystemd-id128.so && $(move-to-rootlibdir)
2774
2775libsystemd-id128-uninstall-hook:
2776 rm -f $(DESTDIR)$(rootlibdir)/libsystemd-id128.so*
2777
2778INSTALL_EXEC_HOOKS += libsystemd-id128-install-hook
2779UNINSTALL_EXEC_HOOKS += libsystemd-id128-uninstall-hook
2780
2781EXTRA_DIST += \
2782 src/libsystemd-id128/libsystemd-id128.pc.in \
2783 src/libsystemd-id128/libsystemd-id128.sym
2784
2785# ------------------------------------------------------------------------------
2786
2787rootlibexec_PROGRAMS += \
2788 systemd-activate
2789
2790systemd_activate_SOURCES = \
2791 src/activate/activate.c
2792
2793systemd_activate_LDADD = \
2794 libsystemd-shared.la \
2795 libsystemd-daemon.la
2796
2797# ------------------------------------------------------------------------------
2798systemd_journald_SOURCES = \
2799 src/journal/journald.c \
2800 src/journal/journald-server.h
2801
2802systemd_journald_LDADD = \
2803 libsystemd-journal-internal.la \
2804 libsystemd-shared.la \
2805 libsystemd-id128-internal.la
2806
2807systemd_cat_SOURCES = \
2808 src/journal/cat.c
2809
2810systemd_cat_LDADD = \
2811 libsystemd-shared.la \
2812 libsystemd-journal-internal.la
2813
2814# using _CFLAGS = in the conditional below would suppress AM_CFLAGS
2815journalctl_CFLAGS = \
2816 $(AM_CFLAGS)
2817
2818journalctl_SOURCES = \
2819 src/journal/journalctl.c
2820
2821journalctl_LDADD = \
2822 libsystemd-shared.la \
2823 libsystemd-journal-internal.la \
2824 libsystemd-id128-internal.la \
2825 libsystemd-logs.la
2826
2827if HAVE_ACL
2828journalctl_LDADD += \
2829 libsystemd-acl.la
2830endif
2831
2832if HAVE_QRENCODE
2833journalctl_SOURCES += \
2834 src/journal/journal-qrcode.c \
2835 src/journal/journal-qrcode.h
2836
2837journalctl_CFLAGS += \
2838 $(QRENCODE_CFLAGS)
2839
2840journalctl_LDADD += \
2841 $(QRENCODE_LIBS)
2842endif
2843
2844test_journal_SOURCES = \
2845 src/journal/test-journal.c
2846
2847test_journal_LDADD = \
2848 libsystemd-shared.la \
2849 libsystemd-journal-internal.la \
2850 libsystemd-id128-internal.la
2851
2852test_journal_send_SOURCES = \
2853 src/journal/test-journal-send.c
2854
2855test_journal_send_LDADD = \
2856 libsystemd-shared.la \
2857 libsystemd-journal-internal.la \
2858 libsystemd-id128-internal.la
2859
2860test_journal_syslog_SOURCES = \
2861 src/journal/test-journal-syslog.c
2862
2863test_journal_syslog_LDADD = \
2864 libsystemd-journal-internal.la \
2865 libsystemd-shared.la \
2866 libsystemd-id128-internal.la
2867
2868test_journal_match_SOURCES = \
2869 src/journal/test-journal-match.c
2870
2871test_journal_match_LDADD = \
2872 libsystemd-shared.la \
2873 libsystemd-journal-internal.la \
2874 libsystemd-id128-internal.la
2875
2876test_journal_enum_SOURCES = \
2877 src/journal/test-journal-enum.c
2878
2879test_journal_enum_LDADD = \
2880 libsystemd-shared.la \
2881 libsystemd-journal-internal.la \
2882 libsystemd-id128-internal.la
2883
2884test_journal_stream_SOURCES = \
2885 src/journal/test-journal-stream.c
2886
2887test_journal_stream_LDADD = \
2888 libsystemd-shared.la \
2889 libsystemd-journal-internal.la \
2890 libsystemd-id128-internal.la
2891
2892test_journal_init_SOURCES = \
2893 src/journal/test-journal-init.c
2894
2895test_journal_init_LDADD = \
2896 libsystemd-shared.la \
2897 libsystemd-daemon-internal.la \
2898 $(RT_LIBS) \
2899 libsystemd-journal.la
2900
2901test_journal_verify_SOURCES = \
2902 src/journal/test-journal-verify.c
2903
2904test_journal_verify_LDADD = \
2905 libsystemd-shared.la \
2906 libsystemd-journal-internal.la \
2907 libsystemd-id128-internal.la
2908
2909test_journal_interleaving_SOURCES = \
2910 src/journal/test-journal-interleaving.c
2911
2912test_journal_interleaving_LDADD = \
2913 libsystemd-shared.la \
2914 libsystemd-journal-internal.la \
2915 libsystemd-id128-internal.la
2916
2917test_mmap_cache_SOURCES = \
2918 src/journal/test-mmap-cache.c
2919
2920test_mmap_cache_LDADD = \
2921 libsystemd-shared.la \
2922 libsystemd-journal-internal.la
2923
2924test_catalog_SOURCES = \
2925 src/journal/test-catalog.c
2926
2927test_catalog_CFLAGS = \
2928 $(AM_CFLAGS) \
2929 -DCATALOG_DIR=\"$(abs_top_srcdir)/catalog\"
2930
2931test_catalog_LDADD = \
2932 libsystemd-shared.la \
2933 libsystemd-label.la \
2934 libsystemd-journal-internal.la \
2935 libsystemd-id128-internal.la
2936
2937libsystemd_journal_la_SOURCES = \
2938 src/journal/sd-journal.c \
2939 src/systemd/sd-journal.h \
2940 src/systemd/_sd-common.h \
2941 src/journal/journal-file.c \
2942 src/journal/journal-file.h \
2943 src/journal/journal-vacuum.c \
2944 src/journal/journal-vacuum.h \
2945 src/journal/journal-verify.c \
2946 src/journal/journal-verify.h \
2947 src/journal/lookup3.c \
2948 src/journal/lookup3.h \
2949 src/journal/journal-send.c \
2950 src/journal/journal-def.h \
2951 src/journal/compress.h \
2952 src/journal/catalog.c \
2953 src/journal/catalog.h \
2954 src/journal/mmap-cache.c \
2955 src/journal/mmap-cache.h
2956
2957libsystemd_journal_la_CFLAGS = \
2958 $(AM_CFLAGS) \
2959 -fvisibility=hidden
2960
2961libsystemd_journal_la_LDFLAGS = \
2962 $(AM_LDFLAGS) \
2963 -version-info $(LIBSYSTEMD_JOURNAL_CURRENT):$(LIBSYSTEMD_JOURNAL_REVISION):$(LIBSYSTEMD_JOURNAL_AGE) \
2964 -Wl,--version-script=$(top_srcdir)/src/journal/libsystemd-journal.sym
2965
2966libsystemd_journal_la_LIBADD = \
2967 libsystemd-shared.la \
2968 libsystemd-label.la \
2969 libsystemd-daemon-internal.la \
2970 $(RT_LIBS) \
2971 libsystemd-id128-internal.la
2972
2973libsystemd_journal_internal_la_SOURCES = \
2974 $(libsystemd_journal_la_SOURCES) \
2975 src/journal/journald-kmsg.c \
2976 src/journal/journald-kmsg.h \
2977 src/journal/journald-syslog.c \
2978 src/journal/journald-syslog.h \
2979 src/journal/journald-stream.c \
2980 src/journal/journald-stream.h \
2981 src/journal/journald-server.c \
2982 src/journal/journald-server.h \
2983 src/journal/journald-console.c \
2984 src/journal/journald-console.h \
2985 src/journal/journald-native.c \
2986 src/journal/journald-native.h \
2987 src/journal/journald-rate-limit.c \
2988 src/journal/journald-rate-limit.h \
2989 src/journal/journal-internal.h
2990
2991# using _CFLAGS = in the conditional below would suppress AM_CFLAGS
2992libsystemd_journal_internal_la_CFLAGS = \
2993 $(AM_CFLAGS)
2994
2995libsystemd_journal_internal_la_LIBADD = \
2996 libsystemd-audit.la \
2997 libsystemd-daemon.la \
2998 libudev.la \
2999 libsystemd-shared.la \
3000 libsystemd-label.la
3001
3002nodist_libsystemd_journal_internal_la_SOURCES = \
3003 src/journal/journald-gperf.c
3004
3005if ENABLE_LOGIND
3006libsystemd_journal_internal_la_LIBADD += \
3007 libsystemd-login-internal.la
3008endif
3009
3010if HAVE_ACL
3011libsystemd_journal_internal_la_LIBADD += \
3012 libsystemd-acl.la
3013endif
3014
3015if HAVE_XZ
3016libsystemd_journal_la_SOURCES += \
3017 src/journal/compress.c
3018
3019libsystemd_journal_la_CFLAGS += \
3020 $(XZ_CFLAGS)
3021
3022libsystemd_journal_la_LIBADD += \
3023 $(XZ_LIBS)
3024
3025libsystemd_journal_internal_la_CFLAGS += \
3026 $(XZ_CFLAGS)
3027
3028libsystemd_journal_internal_la_LIBADD += \
3029 $(XZ_LIBS)
3030
3031endif
3032
3033if HAVE_GCRYPT
3034libsystemd_journal_la_SOURCES += \
3035 src/journal/journal-authenticate.c \
3036 src/journal/journal-authenticate.h \
3037 src/journal/fsprg.c \
3038 src/journal/fsprg.h
3039
3040libsystemd_journal_la_CFLAGS += \
3041 $(GCRYPT_CFLAGS) \
3042 -Wno-pointer-arith
3043
3044libsystemd_journal_la_LIBADD += \
3045 $(GCRYPT_LIBS)
3046
3047libsystemd_journal_internal_la_CFLAGS += \
3048 $(GCRYPT_CFLAGS) \
3049 -Wno-pointer-arith
3050
3051libsystemd_journal_internal_la_LIBADD += \
3052 $(GCRYPT_LIBS)
3053endif
3054
3055# move lib from $(libdir) to $(rootlibdir) and update devel link, if
3056# needed. Also, grant read access to new journal files to members of
3057# "adm" and "wheel".
3058libsystemd-journal-install-hook:
3059 libname=libsystemd-journal.so && $(move-to-rootlibdir)
3060 -$(MKDIR_P) $(DESTDIR)/var/log/journal
3061 -chown 0:0 $(DESTDIR)/var/log/journal
3062 -chmod 755 $(DESTDIR)/var/log/journal
3063 -setfacl -nm g:adm:rx,d:g:adm:rx $(DESTDIR)/var/log/journal/
3064 -setfacl -nm g:wheel:rx,d:g:wheel:rx $(DESTDIR)/var/log/journal/
3065
3066libsystemd-journal-uninstall-hook:
3067 rm -f $(DESTDIR)$(rootlibdir)/libsystemd-journal.so*
3068
3069INSTALL_EXEC_HOOKS += libsystemd-journal-install-hook
3070UNINSTALL_EXEC_HOOKS += libsystemd-journal-uninstall-hook
3071
3072# ------------------------------------------------------------------------------
3073
3074# Update catalog on installation. Do not bother if installing
3075# in DESTDIR, since this is likely for packaging purposes.
3076catalog-update-hook:
3077 -test -n "$(DESTDIR)" || $(rootbindir)/journalctl --update-catalog
3078
3079INSTALL_DATA_HOOKS += \
3080 catalog-update-hook
3081
3082catalog-remove-hook:
3083 -test -n "$(DESTDIR)" || rm -f $(catalogstatedir)/database
3084
3085UNINSTALL_DATA_HOOKS += \
3086 catalog-remove-hook
3087
3088manual_tests += \
3089 test-journal-enum
3090
3091tests += \
3092 test-journal \
3093 test-journal-send \
3094 test-journal-syslog \
3095 test-journal-match \
3096 test-journal-stream \
3097 test-journal-init \
3098 test-journal-verify \
3099 test-journal-interleaving \
3100 test-mmap-cache \
3101 test-catalog
3102
3103pkginclude_HEADERS += \
3104 src/systemd/sd-journal.h \
3105 src/systemd/sd-messages.h \
3106 src/systemd/_sd-common.h
3107
3108lib_LTLIBRARIES += \
3109 libsystemd-journal.la
3110
3111noinst_LTLIBRARIES += \
3112 libsystemd-journal-internal.la
3113
3114rootlibexec_PROGRAMS += \
3115 systemd-journald
3116
3117rootbin_PROGRAMS += \
3118 journalctl
3119
3120bin_PROGRAMS += \
3121 systemd-cat
3122
3123dist_systemunit_DATA += \
3124 units/systemd-journald.socket
3125
3126nodist_systemunit_DATA += \
3127 units/systemd-journald.service \
3128 units/systemd-journal-flush.service
3129
3130dist_pkgsysconf_DATA += \
3131 src/journal/journald.conf
3132
3133pkgconfiglib_DATA += \
3134 src/journal/libsystemd-journal.pc
3135
3136dist_catalog_DATA = \
3137 catalog/systemd.catalog
3138
3139SOCKETS_TARGET_WANTS += \
3140 systemd-journald.socket
3141SYSINIT_TARGET_WANTS += \
3142 systemd-journald.service \
3143 systemd-journal-flush.service
3144
3145EXTRA_DIST += \
3146 src/journal/libsystemd-journal.pc.in \
3147 src/journal/libsystemd-journal.sym \
3148 units/systemd-journald.service.in \
3149 units/systemd-journal-flush.service.in \
3150 src/journal/journald-gperf.gperf
3151
3152CLEANFILES += \
3153 src/journal/journald-gperf.c
3154
3155# ------------------------------------------------------------------------------
3156if HAVE_MICROHTTPD
3157gatewayddocumentrootdir=$(pkgdatadir)/gatewayd
3158
3159rootlibexec_PROGRAMS += \
3160 systemd-journal-gatewayd
3161
3162systemd_journal_gatewayd_SOURCES = \
3163 src/journal/journal-gatewayd.c \
3164 src/journal/microhttpd-util.h \
3165 src/journal/microhttpd-util.c
3166
3167systemd_journal_gatewayd_LDADD = \
3168 libsystemd-shared.la \
3169 libsystemd-logs.la \
3170 libsystemd-journal-internal.la \
3171 libsystemd-id128-internal.la \
3172 libsystemd-daemon.la \
3173 libsystemd-bus.la \
3174 $(MICROHTTPD_LIBS)
3175
3176systemd_journal_gatewayd_CFLAGS = \
3177 $(AM_CFLAGS) \
3178 -DDOCUMENT_ROOT=\"$(gatewayddocumentrootdir)\" \
3179 $(MICROHTTPD_CFLAGS)
3180
3181dist_systemunit_DATA += \
3182 units/systemd-journal-gatewayd.socket
3183
3184nodist_systemunit_DATA += \
3185 units/systemd-journal-gatewayd.service
3186
3187dist_gatewayddocumentroot_DATA = \
3188 src/journal/browse.html
3189
3190endif
3191
3192EXTRA_DIST += \
3193 units/systemd-journal-gatewayd.service.in
3194
3195# ------------------------------------------------------------------------------
3196
3197systemd_socket_proxyd_SOURCES = \
3198 src/socket-proxy/socket-proxyd.c
3199
3200systemd_socket_proxyd_LDADD = \
3201 libsystemd-shared.la \
3202 libsystemd-logs.la \
3203 libsystemd-journal-internal.la \
3204 libsystemd-id128-internal.la \
3205 libsystemd-daemon.la \
3206 libsystemd-bus.la
3207
3208# ------------------------------------------------------------------------------
3209if ENABLE_COREDUMP
3210systemd_coredump_SOURCES = \
3211 src/journal/coredump.c
3212
3213systemd_coredump_LDADD = \
3214 libsystemd-journal-internal.la \
3215 libsystemd-label.la \
3216 libsystemd-shared.la
3217
3218if ENABLE_LOGIND
3219systemd_coredump_LDADD += \
3220 libsystemd-login-internal.la
3221endif
3222
3223rootlibexec_PROGRAMS += \
3224 systemd-coredump
3225
3226systemd_coredumpctl_SOURCES = \
3227 src/journal/coredumpctl.c
3228
3229systemd_coredumpctl_LDADD = \
3230 libsystemd-shared.la \
3231 libsystemd-journal.la \
3232 libsystemd-journal-internal.la \
3233 libsystemd-id128-internal.la
3234
3235bin_PROGRAMS += \
3236 systemd-coredumpctl
3237
3238dist_bashcompletion_DATA += \
3239 shell-completion/bash/systemd-coredumpctl
3240
3241dist_zshcompletion_DATA += \
3242 shell-completion/zsh/_systemd-coredumpctl
3243
3244sysctl_DATA = \
3245 sysctl.d/50-coredump.conf
3246
3247CLEANFILES += \
3248 sysctl.d/50-coredump.conf
3249endif
3250
3251EXTRA_DIST += \
3252 sysctl.d/50-coredump.conf.in
3253
3254# ------------------------------------------------------------------------------
3255if ENABLE_BINFMT
3256systemd_binfmt_SOURCES = \
3257 src/binfmt/binfmt.c
3258
3259systemd_binfmt_LDADD = \
3260 libsystemd-shared.la
3261
3262rootlibexec_PROGRAMS += \
3263 systemd-binfmt
3264
3265dist_systemunit_DATA += \
3266 units/proc-sys-fs-binfmt_misc.automount \
3267 units/proc-sys-fs-binfmt_misc.mount
3268
3269nodist_systemunit_DATA += \
3270 units/systemd-binfmt.service
3271
3272INSTALL_DIRS += \
3273 $(prefix)/lib/binfmt.d \
3274 $(sysconfdir)/binfmt.d
3275
3276SYSINIT_TARGET_WANTS += \
3277 systemd-binfmt.service \
3278 proc-sys-fs-binfmt_misc.automount
3279
3280endif
3281
3282EXTRA_DIST += \
3283 units/systemd-binfmt.service.in
3284
3285# ------------------------------------------------------------------------------
3286if ENABLE_VCONSOLE
3287systemd_vconsole_setup_SOURCES = \
3288 src/vconsole/vconsole-setup.c
3289
3290systemd_vconsole_setup_LDADD = \
3291 libsystemd-shared.la
3292
3293rootlibexec_PROGRAMS += \
3294 systemd-vconsole-setup
3295
3296nodist_systemunit_DATA += \
3297 units/systemd-vconsole-setup.service
3298
3299SYSINIT_TARGET_WANTS += \
3300 systemd-vconsole-setup.service
3301endif
3302
3303EXTRA_DIST += \
3304 units/systemd-vconsole-setup.service.in
3305
3306# ------------------------------------------------------------------------------
3307if ENABLE_READAHEAD
3308systemd_readahead_SOURCES = \
3309 src/readahead/readahead.c \
3310 src/readahead/readahead-collect.c \
3311 src/readahead/readahead-replay.c \
3312 src/readahead/readahead-analyze.c \
3313 src/readahead/readahead-common.c \
3314 src/readahead/readahead-common.h
3315
3316systemd_readahead_LDADD = \
3317 libsystemd-shared.la \
3318 libsystemd-daemon.la \
3319 libudev.la
3320
3321dist_doc_DATA += \
3322 src/readahead/sd-readahead.c \
3323 src/systemd/sd-readahead.h
3324
3325rootlibexec_PROGRAMS += \
3326 systemd-readahead
3327
3328dist_systemunit_DATA += \
3329 units/systemd-readahead-drop.service \
3330 units/systemd-readahead-done.timer
3331
3332nodist_systemunit_DATA += \
3333 units/systemd-readahead-collect.service \
3334 units/systemd-readahead-replay.service \
3335 units/systemd-readahead-done.service
3336
3337endif
3338
3339EXTRA_DIST += \
3340 units/systemd-readahead-collect.service.in \
3341 units/systemd-readahead-replay.service.in \
3342 units/systemd-readahead-done.service.in
3343
3344# ------------------------------------------------------------------------------
3345if ENABLE_BOOTCHART
3346systemd_bootchart_SOURCES = \
3347 src/bootchart/bootchart.c \
3348 src/bootchart/bootchart.h \
3349 src/bootchart/store.c \
3350 src/bootchart/store.h \
3351 src/bootchart/svg.c \
3352 src/bootchart/svg.h
3353
3354systemd_bootchart_LDADD = \
3355 libsystemd-shared.la \
3356 libsystemd-journal.la
3357
3358rootlibexec_PROGRAMS += \
3359 systemd-bootchart
3360
3361dist_pkgsysconf_DATA += \
3362 src/bootchart/bootchart.conf
3363endif
3364
3365# ------------------------------------------------------------------------------
3366if ENABLE_QUOTACHECK
3367rootlibexec_PROGRAMS += \
3368 systemd-quotacheck
3369
3370nodist_systemunit_DATA += \
3371 units/systemd-quotacheck.service
3372
3373systemd_quotacheck_SOURCES = \
3374 src/quotacheck/quotacheck.c
3375
3376systemd_quotacheck_LDADD = \
3377 libsystemd-shared.la
3378endif
3379
3380EXTRA_DIST += \
3381 units/systemd-quotacheck.service.in
3382
3383nodist_systemunit_DATA += \
3384 units/quotaon.service
3385
3386# ------------------------------------------------------------------------------
3387if ENABLE_RANDOMSEED
3388rootlibexec_PROGRAMS += \
3389 systemd-random-seed
3390
3391nodist_systemunit_DATA += \
3392 units/systemd-random-seed.service
3393
3394systemd_random_seed_SOURCES = \
3395 src/random-seed/random-seed.c
3396
3397systemd_random_seed_LDADD = \
3398 libsystemd-label.la \
3399 libsystemd-shared.la
3400
3401SYSINIT_TARGET_WANTS += \
3402 systemd-random-seed.service
3403
3404endif
3405
3406EXTRA_DIST += \
3407 units/systemd-random-seed.service.in
3408
3409# ------------------------------------------------------------------------------
3410if ENABLE_BACKLIGHT
3411rootlibexec_PROGRAMS += \
3412 systemd-backlight
3413
3414nodist_systemunit_DATA += \
3415 units/systemd-backlight@.service
3416
3417systemd_backlight_SOURCES = \
3418 src/backlight/backlight.c
3419
3420systemd_backlight_LDADD = \
3421 libsystemd-label.la \
3422 libsystemd-shared.la \
3423 libudev-private.la
3424endif
3425
3426EXTRA_DIST += \
3427 units/systemd-backlight@.service.in
3428
3429# ------------------------------------------------------------------------------
3430if ENABLE_RFKILL
3431rootlibexec_PROGRAMS += \
3432 systemd-rfkill
3433
3434nodist_systemunit_DATA += \
3435 units/systemd-rfkill@.service
3436
3437systemd_rfkill_SOURCES = \
3438 src/rfkill/rfkill.c
3439
3440systemd_rfkill_LDADD = \
3441 libsystemd-label.la \
3442 libsystemd-shared.la \
3443 libudev-private.la
3444endif
3445
3446EXTRA_DIST += \
3447 units/systemd-rfkill@.service.in
3448
3449# ------------------------------------------------------------------------------
3450if HAVE_LIBCRYPTSETUP
3451rootlibexec_PROGRAMS += \
3452 systemd-cryptsetup
3453
3454systemgenerator_PROGRAMS += \
3455 systemd-cryptsetup-generator
3456
3457dist_systemunit_DATA += \
3458 units/cryptsetup.target
3459
3460systemd_cryptsetup_SOURCES = \
3461 src/cryptsetup/cryptsetup.c
3462
3463systemd_cryptsetup_CFLAGS = \
3464 $(AM_CFLAGS) \
3465 $(LIBCRYPTSETUP_CFLAGS)
3466
3467systemd_cryptsetup_LDADD = \
3468 libsystemd-label.la \
3469 libsystemd-shared.la \
3470 libudev.la \
3471 $(LIBCRYPTSETUP_LIBS)
3472
3473systemd_cryptsetup_generator_SOURCES = \
3474 src/cryptsetup/cryptsetup-generator.c
3475
3476systemd_cryptsetup_generator_LDADD = \
3477 libsystemd-label.la \
3478 libsystemd-shared.la
3479
3480SYSINIT_TARGET_WANTS += \
3481 cryptsetup.target
3482
3483endif
3484
3485# ------------------------------------------------------------------------------
3486if ENABLE_HOSTNAMED
3487systemd_hostnamed_SOURCES = \
3488 src/hostname/hostnamed.c
3489
3490systemd_hostnamed_LDADD = \
3491 libsystemd-label.la \
3492 libsystemd-shared.la \
3493 libsystemd-daemon.la \
3494 libsystemd-bus.la
3495
3496rootlibexec_PROGRAMS += \
3497 systemd-hostnamed
3498
3499nodist_systemunit_DATA += \
3500 units/systemd-hostnamed.service
3501
3502dist_dbuspolicy_DATA += \
3503 src/hostname/org.freedesktop.hostname1.conf
3504
3505dist_dbussystemservice_DATA += \
3506 src/hostname/org.freedesktop.hostname1.service
3507
3508polkitpolicy_files += \
3509 src/hostname/org.freedesktop.hostname1.policy
3510
3511SYSTEM_UNIT_ALIASES += \
3512 systemd-hostnamed.service dbus-org.freedesktop.hostname1.service
3513
3514hostnamectl_SOURCES = \
3515 src/hostname/hostnamectl.c
3516
3517hostnamectl_CFLAGS = \
3518 $(AM_CFLAGS) \
3519 $(DBUS_CFLAGS)
3520
3521hostnamectl_LDADD = \
3522 libsystemd-shared.la \
3523 libsystemd-dbus.la \
3524 libsystemd-id128-internal.la
3525
3526bin_PROGRAMS += \
3527 hostnamectl
3528
3529dist_bashcompletion_DATA += \
3530 shell-completion/bash/hostnamectl
3531
3532dist_zshcompletion_DATA += \
3533 shell-completion/zsh/_hostnamectl
3534
3535endif
3536
3537polkitpolicy_in_files += \
3538 src/hostname/org.freedesktop.hostname1.policy.in
3539
3540EXTRA_DIST += \
3541 units/systemd-hostnamed.service.in
3542
3543# ------------------------------------------------------------------------------
3544if ENABLE_LOCALED
3545systemd_localed_SOURCES = \
3546 src/locale/localed.c
3547
3548systemd_localed_LDADD = \
3549 libsystemd-label.la \
3550 libsystemd-shared.la \
3551 libsystemd-daemon.la \
3552 libsystemd-bus.la
3553
3554nodist_systemunit_DATA += \
3555 units/systemd-localed.service
3556
3557rootlibexec_PROGRAMS += \
3558 systemd-localed
3559
3560dist_dbuspolicy_DATA += \
3561 src/locale/org.freedesktop.locale1.conf
3562
3563dist_dbussystemservice_DATA += \
3564 src/locale/org.freedesktop.locale1.service
3565
3566polkitpolicy_files += \
3567 src/locale/org.freedesktop.locale1.policy
3568
3569SYSTEM_UNIT_ALIASES += \
3570 systemd-localed.service dbus-org.freedesktop.locale1.service
3571
3572dist_pkgdata_DATA += \
3573 src/locale/kbd-model-map
3574
3575dist_noinst_SCRIPT = \
3576 src/locale/generate-kbd-model-map
3577
3578update-kbd-model-map: src/locale/generate-kbd-model-map
3579 $PYTHON $< > src/locale/kbd-model-map
3580
3581localectl_SOURCES = \
3582 src/locale/localectl.c
3583
3584localectl_CFLAGS = \
3585 $(AM_CFLAGS) \
3586 $(DBUS_CFLAGS)
3587
3588localectl_LDADD = \
3589 libsystemd-shared.la \
3590 libsystemd-dbus.la \
3591 libsystemd-id128-internal.la
3592
3593bin_PROGRAMS += \
3594 localectl
3595
3596dist_bashcompletion_DATA += \
3597 shell-completion/bash/localectl
3598
3599dist_zshcompletion_DATA += \
3600 shell-completion/zsh/_localectl
3601
3602endif
3603
3604polkitpolicy_in_files += \
3605 src/locale/org.freedesktop.locale1.policy.in
3606
3607EXTRA_DIST += \
3608 units/systemd-localed.service.in
3609
3610# ------------------------------------------------------------------------------
3611if ENABLE_TIMEDATED
3612systemd_timedated_SOURCES = \
3613 src/timedate/timedated.c
3614
3615systemd_timedated_LDADD = \
3616 libsystemd-label.la \
3617 libsystemd-shared.la \
3618 libsystemd-daemon.la \
3619 libsystemd-bus.la
3620
3621rootlibexec_PROGRAMS += \
3622 systemd-timedated
3623
3624dist_dbussystemservice_DATA += \
3625 src/timedate/org.freedesktop.timedate1.service
3626
3627dist_dbuspolicy_DATA += \
3628 src/timedate/org.freedesktop.timedate1.conf
3629
3630nodist_systemunit_DATA += \
3631 units/systemd-timedated.service
3632
3633polkitpolicy_files += \
3634 src/timedate/org.freedesktop.timedate1.policy
3635
3636INSTALL_DIRS += \
3637 $(prefix)/lib/systemd/ntp-units.d \
3638 $(sysconfdir)/systemd/ntp-units.d
3639
3640SYSTEM_UNIT_ALIASES += \
3641 systemd-timedated.service dbus-org.freedesktop.timedate1.service
3642
3643timedatectl_SOURCES = \
3644 src/timedate/timedatectl.c
3645
3646timedatectl_CFLAGS = \
3647 $(AM_CFLAGS) \
3648 $(DBUS_CFLAGS)
3649
3650timedatectl_LDADD = \
3651 libsystemd-shared.la \
3652 libsystemd-dbus.la
3653
3654bin_PROGRAMS += \
3655 timedatectl
3656
3657dist_bashcompletion_DATA += \
3658 shell-completion/bash/timedatectl
3659
3660dist_zshcompletion_DATA += \
3661 shell-completion/zsh/_timedatectl
3662endif
3663
3664polkitpolicy_in_files += \
3665 src/timedate/org.freedesktop.timedate1.policy.in
3666
3667EXTRA_DIST += \
3668 units/systemd-timedated.service.in
3669
3670# ------------------------------------------------------------------------------
3671if HAVE_MYHOSTNAME
3672libnss_myhostname_la_SOURCES = \
3673 src/nss-myhostname/nss-myhostname.c \
3674 src/nss-myhostname/ifconf.h \
3675 src/nss-myhostname/netlink.c
3676
3677libnss_myhostname_la_LDFLAGS = \
3678 $(AM_LDFLAGS) \
3679 -module \
3680 -export-dynamic \
3681 -avoid-version \
3682 -shared \
3683 -shrext .so.2
3684
3685lib_LTLIBRARIES += \
3686 libnss_myhostname.la
3687endif
3688
3689# ------------------------------------------------------------------------------
3690if ENABLE_MACHINED
3691systemd_machined_SOURCES = \
3692 src/machine/machined.c \
3693 src/machine/machined.h
3694
3695systemd_machined_LDADD = \
3696 libsystemd-machine-core.la \
3697 $(libsystemd_machine_core_la_LIBADD)
3698
3699rootlibexec_PROGRAMS += \
3700 systemd-machined
3701
3702libsystemd_machine_core_la_SOURCES = \
3703 src/machine/machined-dbus.c \
3704 src/machine/machine.c \
3705 src/machine/machine.h \
3706 src/machine/machine-dbus.c
3707
3708libsystemd_machine_core_la_LIBADD = \
3709 libsystemd-label.la \
3710 libsystemd-audit.la \
3711 libsystemd-shared.la \
3712 libsystemd-daemon.la \
3713 libsystemd-bus.la \
3714 libsystemd-id128-internal.la \
3715 libudev.la
3716
3717noinst_LTLIBRARIES += \
3718 libsystemd-machine-core.la
3719
3720machinectl_SOURCES = \
3721 src/machine/machinectl.c
3722
3723machinectl_CFLAGS = \
3724 $(AM_CFLAGS) \
3725 $(DBUS_CFLAGS)
3726
3727machinectl_LDADD = \
3728 libsystemd-shared.la \
3729 libsystemd-bus.la
3730
3731rootbin_PROGRAMS += \
3732 machinectl
3733
3734test_machine_tables_SOURCES = \
3735 src/machine/test-machine-tables.c
3736
3737test_machine_tables_LDADD = \
3738 libsystemd-machine-core.la
3739
3740tests += \
3741 test-machine-tables
3742
3743nodist_systemunit_DATA += \
3744 units/systemd-machined.service
3745
3746dist_systemunit_DATA += \
3747 units/machine.slice
3748
3749dist_dbussystemservice_DATA += \
3750 src/machine/org.freedesktop.machine1.service
3751
3752dist_dbuspolicy_DATA += \
3753 src/machine/org.freedesktop.machine1.conf
3754
3755dist_zshcompletion_DATA += \
3756 shell-completion/zsh/_machinectl
3757
3758SYSTEM_UNIT_ALIASES += \
3759 systemd-machined.service dbus-org.freedesktop.machine1.service
3760
3761EXTRA_DIST += \
3762 units/systemd-machined.service.in
3763
3764endif
3765
3766# ------------------------------------------------------------------------------
3767if ENABLE_LOGIND
3768systemd_logind_SOURCES = \
3769 src/login/logind.c \
3770 src/login/logind.h
3771
3772nodist_systemd_logind_SOURCES = \
3773 src/login/logind-gperf.c
3774
3775systemd_logind_CFLAGS = \
3776 $(libsystemd_logind_core_la_CFLAGS)
3777
3778systemd_logind_LDADD = \
3779 libsystemd-logind-core.la \
3780 $(libsystemd_logind_core_la_LIBADD)
3781
3782libsystemd_logind_core_la_SOURCES = \
3783 src/login/logind-core.c \
3784 src/login/logind-dbus.c \
3785 src/login/logind-device.c \
3786 src/login/logind-device.h \
3787 src/login/logind-button.c \
3788 src/login/logind-button.h \
3789 src/login/logind-action.c \
3790 src/login/logind-action.h \
3791 src/login/logind-seat.c \
3792 src/login/logind-seat.h \
3793 src/login/logind-session.c \
3794 src/login/logind-session.h \
3795 src/login/logind-session-device.c \
3796 src/login/logind-session-device.h \
3797 src/login/logind-user.c \
3798 src/login/logind-user.h \
3799 src/login/logind-inhibit.c \
3800 src/login/logind-inhibit.h \
3801 src/login/logind-session-dbus.c \
3802 src/login/logind-seat-dbus.c \
3803 src/login/logind-user-dbus.c \
3804 src/login/logind-acl.h \
3805 src/login/login-shared.c \
3806 src/login/login-shared.h
3807
3808libsystemd_logind_core_la_CFLAGS = \
3809 $(AM_CFLAGS) \
3810 $(DBUS_CFLAGS)
3811
3812libsystemd_logind_core_la_LIBADD = \
3813 libsystemd-label.la \
3814 libsystemd-audit.la \
3815 libsystemd-shared.la \
3816 libsystemd-daemon.la \
3817 libsystemd-dbus.la \
3818 libsystemd-id128-internal.la \
3819 libudev.la
3820
3821if HAVE_ACL
3822libsystemd_logind_core_la_SOURCES += \
3823 src/login/logind-acl.c
3824
3825libsystemd_logind_core_la_LIBADD += \
3826 libsystemd-acl.la
3827endif
3828
3829noinst_LTLIBRARIES += \
3830 libsystemd-logind-core.la
3831
3832systemd_user_sessions_SOURCES = \
3833 src/login/user-sessions.c
3834
3835systemd_user_sessions_LDADD = \
3836 libsystemd-shared.la
3837
3838rootlibexec_PROGRAMS += \
3839 systemd-logind \
3840 systemd-user-sessions
3841
3842loginctl_SOURCES = \
3843 src/login/loginctl.c \
3844 src/login/sysfs-show.c
3845
3846loginctl_CFLAGS = \
3847 $(AM_CFLAGS) \
3848 $(DBUS_CFLAGS)
3849
3850loginctl_LDADD = \
3851 libsystemd-shared.la \
3852 libsystemd-dbus.la \
3853 libudev.la
3854
3855rootbin_PROGRAMS += \
3856 loginctl
3857
3858dist_bashcompletion_DATA += \
3859 shell-completion/bash/loginctl
3860
3861dist_zshcompletion_DATA += \
3862 shell-completion/zsh/_loginctl \
3863 shell-completion/zsh/_systemd-inhibit
3864
3865systemd_inhibit_SOURCES = \
3866 src/login/inhibit.c
3867
3868systemd_inhibit_CFLAGS = \
3869 $(AM_CFLAGS) \
3870 $(DBUS_CFLAGS)
3871
3872systemd_inhibit_LDADD = \
3873 libsystemd-shared.la \
3874 libsystemd-bus.la
3875
3876rootbin_PROGRAMS += \
3877 systemd-inhibit
3878
3879test_login_SOURCES = \
3880 src/login/test-login.c
3881
3882test_login_LDADD = \
3883 libsystemd-login-internal.la \
3884 libsystemd-shared.la
3885
3886test_login_shared_SOURCES = \
3887 src/login/test-login-shared.c
3888
3889test_login_shared_LDADD = \
3890 libsystemd-login-internal.la \
3891 libsystemd-shared.la
3892
3893test_inhibit_SOURCES = \
3894 src/login/test-inhibit.c
3895
3896test_inhibit_LDADD = \
3897 libsystemd-shared.la \
3898 libsystemd-dbus.la
3899
3900test_inhibit_CFLAGS = \
3901 $(AM_CFLAGS) \
3902 $(DBUS_CFLAGS)
3903
3904test_login_tables_SOURCES = \
3905 src/login/test-login-tables.c
3906
3907test_login_tables_CFLAGS = \
3908 $(AM_CFLAGS) \
3909 $(DBUS_CFLAGS)
3910
3911test_login_tables_LDADD = \
3912 libsystemd-logind-core.la
3913
3914manual_tests += \
3915 test-login \
3916 test-inhibit
3917
3918tests += \
3919 test-login-tables \
3920 test-login-shared
3921
3922libsystemd_login_la_SOURCES = \
3923 src/login/sd-login.c \
3924 src/systemd/sd-login.h \
3925 src/login/login-shared.c \
3926 src/login/login-shared.h
3927
3928libsystemd_login_la_CFLAGS = \
3929 $(AM_CFLAGS) \
3930 -fvisibility=hidden
3931
3932libsystemd_login_la_LDFLAGS = \
3933 $(AM_LDFLAGS) \
3934 -version-info $(LIBSYSTEMD_LOGIN_CURRENT):$(LIBSYSTEMD_LOGIN_REVISION):$(LIBSYSTEMD_LOGIN_AGE) \
3935 -Wl,--version-script=$(top_srcdir)/src/login/libsystemd-login.sym
3936
3937libsystemd_login_la_LIBADD = \
3938 libsystemd-shared.la \
3939 libsystemd-daemon-internal.la \
3940 $(RT_LIBS)
3941
3942libsystemd_login_internal_la_SOURCES = \
3943 $(libsystemd_login_la_SOURCES)
3944
3945if HAVE_PAM
3946pam_systemd_la_SOURCES = \
3947 src/login/pam-module.c
3948
3949pam_systemd_la_CFLAGS = \
3950 $(AM_CFLAGS) \
3951 $(PAM_CFLAGS) \
3952 $(DBUS_CFLAGS) \
3953 -fvisibility=hidden
3954
3955pam_systemd_la_LDFLAGS = \
3956 $(AM_LDFLAGS) \
3957 -module \
3958 -export-dynamic \
3959 -avoid-version \
3960 -shared \
3961 -export-symbols-regex '^pam_sm_.*'
3962
3963pam_systemd_la_LIBADD = \
3964 libsystemd-audit.la \
3965 libsystemd-dbus.la \
3966 libsystemd-shared.la \
3967 libsystemd-daemon-internal.la \
3968 $(RT_LIBS) \
3969 $(PAM_LIBS)
3970
3971pamlib_LTLIBRARIES = \
3972 pam_systemd.la
3973
3974dist_pamconf_DATA = \
3975 src/login/systemd-user
3976endif
3977
3978# move lib from $(libdir) to $(rootlibdir) and update devel link, if needed
3979libsystemd-login-install-hook:
3980 libname=libsystemd-login.so && $(move-to-rootlibdir)
3981
3982libsystemd-login-uninstall-hook:
3983 rm -f $(DESTDIR)$(rootlibdir)/libsystemd-login.so*
3984
3985INSTALL_EXEC_HOOKS += libsystemd-login-install-hook
3986UNINSTALL_EXEC_HOOKS += libsystemd-login-uninstall-hook
3987
3988nodist_systemunit_DATA += \
3989 units/systemd-logind.service \
3990 units/systemd-user-sessions.service
3991
3992dist_systemunit_DATA += \
3993 units/user.slice
3994
3995dist_dbussystemservice_DATA += \
3996 src/login/org.freedesktop.login1.service
3997
3998dist_dbuspolicy_DATA += \
3999 src/login/org.freedesktop.login1.conf
4000
4001dist_pkgsysconf_DATA += \
4002 src/login/logind.conf
4003
4004pkginclude_HEADERS += \
4005 src/systemd/sd-login.h
4006
4007lib_LTLIBRARIES += \
4008 libsystemd-login.la
4009
4010noinst_LTLIBRARIES += \
4011 libsystemd-login-internal.la
4012
4013pkgconfiglib_DATA += \
4014 src/login/libsystemd-login.pc
4015
4016polkitpolicy_files += \
4017 src/login/org.freedesktop.login1.policy
4018
4019INSTALL_DIRS += \
4020 $(systemdstatedir)
4021
4022MULTI_USER_TARGET_WANTS += \
4023 systemd-logind.service \
4024 systemd-user-sessions.service
4025
4026SYSTEM_UNIT_ALIASES += \
4027 systemd-logind.service dbus-org.freedesktop.login1.service
4028
4029systemd_multi_seat_x_SOURCES = \
4030 src/login/multi-seat-x.c
4031
4032systemd_multi_seat_x_LDADD = \
4033 libsystemd-label.la \
4034 libsystemd-shared.la
4035
4036rootlibexec_PROGRAMS += \
4037 systemd-multi-seat-x
4038
4039dist_udevrules_DATA += \
4040 src/login/70-uaccess.rules \
4041 src/login/70-power-switch.rules
4042
4043nodist_udevrules_DATA += \
4044 src/login/71-seat.rules \
4045 src/login/73-seat-late.rules
4046
4047CLEANFILES += \
4048 src/login/logind-gperf.c \
4049 src/login/71-seat.rules \
4050 src/login/73-seat-late.rules
4051endif
4052
4053polkitpolicy_in_files += \
4054 src/login/org.freedesktop.login1.policy.in
4055
4056EXTRA_DIST += \
4057 src/login/logind-gperf.gperf \
4058 src/login/libsystemd-login.pc.in \
4059 src/login/libsystemd-login.sym \
4060 src/login/71-seat.rules.in \
4061 src/login/73-seat-late.rules.in \
4062 units/systemd-logind.service.in \
4063 units/systemd-user-sessions.service.in
4064
4065# ------------------------------------------------------------------------------
4066if HAVE_PYTHON_DEVEL
4067pkgpyexec_LTLIBRARIES = \
4068 _journal.la \
4069 id128.la \
4070 _daemon.la \
4071 _reader.la \
4072 login.la
4073
4074_journal_la_SOURCES = \
4075 src/python-systemd/_journal.c
4076
4077_journal_la_CFLAGS = \
4078 $(AM_CFLAGS) \
4079 -fvisibility=default \
4080 $(PYTHON_DEVEL_CFLAGS)
4081
4082_journal_la_LDFLAGS = \
4083 $(AM_LDFLAGS) \
4084 -shared \
4085 -module \
4086 -avoid-version
4087
4088_journal_la_LIBADD = \
4089 $(PYTHON_DEVEL_LIBS) \
4090 libsystemd-journal.la
4091
4092id128_la_SOURCES = \
4093 src/python-systemd/id128.c \
4094 src/python-systemd/id128-constants.h \
4095 src/python-systemd/pyutil.c \
4096 src/python-systemd/pyutil.h
4097
4098id128_la_CFLAGS = \
4099 $(AM_CFLAGS) \
4100 -fvisibility=default \
4101 $(PYTHON_DEVEL_CFLAGS) \
4102 -I$(top_builddir)/src/python-systemd
4103
4104id128_la_LDFLAGS = \
4105 $(AM_LDFLAGS) \
4106 -shared \
4107 -module \
4108 -avoid-version
4109
4110id128_la_LIBADD = \
4111 $(PYTHON_DEVEL_LIBS) \
4112 libsystemd-id128.la
4113
4114_daemon_la_SOURCES = \
4115 src/python-systemd/_daemon.c \
4116 src/python-systemd/pyutil.c \
4117 src/python-systemd/pyutil.h
4118
4119_daemon_la_CFLAGS = \
4120 $(AM_CFLAGS) \
4121 -fvisibility=default \
4122 $(PYTHON_DEVEL_CFLAGS) \
4123 -I$(top_builddir)/src/python-systemd
4124
4125_daemon_la_LDFLAGS = \
4126 $(AM_LDFLAGS) \
4127 -shared \
4128 -module \
4129 -avoid-version
4130
4131_daemon_la_LIBADD = \
4132 $(PYTHON_DEVEL_LIBS) \
4133 libsystemd-daemon.la
4134
4135_reader_la_SOURCES = \
4136 src/python-systemd/_reader.c \
4137 src/python-systemd/pyutil.c \
4138 src/python-systemd/pyutil.h
4139
4140_reader_la_CFLAGS = \
4141 $(AM_CFLAGS) \
4142 -fvisibility=default \
4143 $(PYTHON_DEVEL_CFLAGS)
4144
4145_reader_la_LDFLAGS = \
4146 $(AM_LDFLAGS) \
4147 -shared \
4148 -module \
4149 -avoid-version
4150
4151_reader_la_LIBADD = \
4152 $(PYTHON_DEVEL_LIBS) \
4153 libsystemd-journal.la \
4154 libsystemd-id128.la \
4155 libsystemd-shared.la \
4156 libsystemd-daemon-internal.la \
4157 $(RT_LIBS)
4158
4159login_la_SOURCES = \
4160 src/python-systemd/login.c \
4161 src/python-systemd/pyutil.c \
4162 src/python-systemd/pyutil.h
4163
4164login_la_CFLAGS = \
4165 $(AM_CFLAGS) \
4166 -fvisibility=default \
4167 $(PYTHON_DEVEL_CFLAGS)
4168
4169login_la_LDFLAGS = \
4170 $(AM_LDFLAGS) \
4171 -shared \
4172 -module \
4173 -avoid-version
4174
4175login_la_LIBADD = \
4176 $(PYTHON_DEVEL_LIBS) \
4177 libsystemd-journal.la \
4178 libsystemd-login.la \
4179 libsystemd-shared.la \
4180 libsystemd-daemon-internal.la \
4181 $(RT_LIBS)
4182
4183dist_pkgpyexec_PYTHON = \
4184 src/python-systemd/journal.py \
4185 src/python-systemd/daemon.py \
4186 src/python-systemd/__init__.py
4187
4188src/python-systemd/id128-constants.h: src/systemd/sd-messages.h Makefile
4189 $(AM_V_at)$(MKDIR_P) $(dir $@)
4190 $(AM_V_GEN)$(SED) -n -r 's/,//g; s/#define (SD_MESSAGE_[A-Z0-9_]+)\s.*/add_id(m, "\1", \1) JOINER/p' <$< >$@
4191
4192BUILT_SOURCES += \
4193 src/python-systemd/id128-constants.h
4194
4195SPHINXOPTS = -D version=$(VERSION) -D release=$(VERSION)
4196sphinx-%:
4197 $(AM_V_at)test -n "$(SPHINX_BUILD)" || { echo " *** sphinx-build is not available"; exit 1; }
4198 $(AM_V_GEN)PYTHONPATH=$(DESTDIR)$(pyexecdir) LD_LIBRARY_PATH=$(DESTDIR)$(libdir) $(SPHINX_BUILD) -b $* $(SPHINXOPTS) $(top_srcdir)/src/python-systemd/docs $(top_builddir)/docs/html/python-systemd/
4199 $(AM_V_at)echo Output has been generated in $(abs_top_builddir)/docs/html/python-systemd/
4200
4201python-shell:
4202 $(AM_V_at)echo "Starting python with $(DESTDIR)$(pyexecdir)"
4203 $(AM_V_at)PYTHONPATH=$(DESTDIR)$(pyexecdir) LD_LIBRARY_PATH=$(DESTDIR)$(libdir) $(PYTHON)
4204
4205destdir-sphinx: all
4206 dir="$$(mktemp -d /tmp/systemd-install.XXXXXX)" && \
4207 $(MAKE) DESTDIR="$$dir" install && \
4208 $(MAKE) DESTDIR="$$dir" sphinx-html && \
4209 rm -rf "$$dir"
4210
4211endif
4212
4213CLEAN_LOCAL_HOOKS += clean-sphinx
4214
4215clean-sphinx:
4216 -rm -rf docs/html/python-systemd/
4217
4218# Remove Python stuff, e.g. to force rebuilding for a different Python version.
4219clean-python:
4220 -rm -rf src/python-systemd/.libs src/python-systemd/*.l[ao]
4221 -rm -f _daemon.la id128.la _journal.la login.la _reader.la
4222
4223# ------------------------------------------------------------------------------
4224substitutions = \
4225 '|rootlibexecdir=$(rootlibexecdir)|' \
4226 '|rootbindir=$(rootbindir)|' \
4227 '|bindir=$(bindir)|' \
4228 '|SYSTEMCTL=$(rootbindir)/systemctl|' \
4229 '|SYSTEMD_NOTIFY=$(rootbindir)/systemd-notify|' \
4230 '|pkgsysconfdir=$(pkgsysconfdir)|' \
4231 '|SYSTEM_CONFIG_UNIT_PATH=$(pkgsysconfdir)/system|' \
4232 '|USER_CONFIG_UNIT_PATH=$(pkgsysconfdir)/user|' \
4233 '|pkgdatadir=$(pkgdatadir)|' \
4234 '|systemunitdir=$(systemunitdir)|' \
4235 '|userunitdir=$(userunitdir)|' \
4236 '|systempresetdir=$(systempresetdir)|' \
4237 '|userpresetdir=$(userpresetdir)|' \
4238 '|udevhwdbdir=$(udevhwdbdir)|' \
4239 '|udevrulesdir=$(udevrulesdir)|' \
4240 '|catalogdir=$(catalogdir)|' \
4241 '|tmpfilesdir=$(tmpfilesdir)|' \
4242 '|sysctldir=$(sysctldir)|' \
4243 '|systemgeneratordir=$(systemgeneratordir)|' \
4244 '|usergeneratordir=$(usergeneratordir)|' \
4245 '|PACKAGE_VERSION=$(PACKAGE_VERSION)|' \
4246 '|PACKAGE_NAME=$(PACKAGE_NAME)|' \
4247 '|PACKAGE_URL=$(PACKAGE_URL)|' \
4248 '|RANDOM_SEED=$(localstatedir)/lib/systemd/random-seed|' \
4249 '|prefix=$(prefix)|' \
4250 '|exec_prefix=$(exec_prefix)|' \
4251 '|libdir=$(libdir)|' \
4252 '|includedir=$(includedir)|' \
4253 '|VERSION=$(VERSION)|' \
4254 '|rootprefix=$(rootprefix)|' \
4255 '|udevlibexecdir=$(udevlibexecdir)|' \
4256 '|SUSHELL=$(SUSHELL)|' \
4257 '|DEBUGTTY=$(DEBUGTTY)|' \
4258 '|KILL=$(KILL)|' \
4259 '|KMOD=$(KMOD)|' \
4260 '|MKDIR_P=$(MKDIR_P)|' \
4261 '|QUOTAON=$(QUOTAON)|' \
4262 '|QUOTACHECK=$(QUOTACHECK)|' \
4263 '|SYSTEM_SYSVINIT_PATH=$(sysvinitdir)|' \
4264 '|VARLOGDIR=$(varlogdir)|' \
4265 '|RC_LOCAL_SCRIPT_PATH_START=$(RC_LOCAL_SCRIPT_PATH_START)|' \
4266 '|RC_LOCAL_SCRIPT_PATH_STOP=$(RC_LOCAL_SCRIPT_PATH_STOP)|' \
4267 '|PYTHON=$(PYTHON)|' \
4268 '|PYTHON_BINARY=$(PYTHON_BINARY)|'
4269
4270SED_PROCESS = \
4271 $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
4272 $(SED) $(subst '|,-e 's|@,$(subst =,\@|,$(subst |',|g',$(substitutions)))) \
4273 < $< > $@
4274
4275units/%: units/%.in Makefile
4276 $(SED_PROCESS)
4277
4278man/%: man/%.in Makefile
4279 $(SED_PROCESS)
4280
4281sysctl.d/%: sysctl.d/%.in Makefile
4282 $(SED_PROCESS)
4283
4284%.pc: %.pc.in Makefile
4285 $(SED_PROCESS)
4286
4287src/core/macros.%: src/core/macros.%.in Makefile
4288 $(SED_PROCESS)
4289
4290src/%.policy.in: src/%.policy.in.in Makefile
4291 $(SED_PROCESS)
4292
4293%.rules: %.rules.in Makefile
4294 $(SED_PROCESS)
4295
4296%.sh: %.sh.in Makefile
4297 $(SED_PROCESS)
4298 $(AM_V_GEN)chmod +x $@
4299
4300src/%.c: src/%.gperf
4301 $(AM_V_at)$(MKDIR_P) $(dir $@)
4302 $(AM_V_GPERF)$(GPERF) < $< > $@
4303
4304src/%: src/%.m4
4305 $(AM_V_at)$(MKDIR_P) $(dir $@)
4306 $(AM_V_M4)$(M4) -P $(M4_DEFINES) < $< > $@
4307
4308units/%: units/%.m4 Makefile
4309 $(AM_V_M4)$(MKDIR_P) $(dir $@)
4310 $(AM_V_M4)$(M4) -P $(M4_DEFINES) -DFOR_SYSTEM=1 < $< > $@
4311
4312units/user/%: units/%.m4 Makefile
4313 $(AM_V_M4)$(MKDIR_P) $(dir $@)
4314 $(AM_V_M4)$(M4) -P $(M4_DEFINES) -DFOR_USER=1 < $< > $@
4315
4316if ENABLE_POLKIT
4317nodist_polkitpolicy_DATA = \
4318 $(polkitpolicy_files) \
4319 $(polkitpolicy_in_in_files:.policy.in.in=.policy)
4320endif
4321
4322EXTRA_DIST += \
4323 $(polkitpolicy_in_files) \
4324 $(polkitpolicy_in_in_files)
4325
4326CLEANFILES += \
4327 $(nodist_systemunit_DATA) \
4328 $(nodist_userunit_DATA) \
4329 $(pkgconfigdata_DATA) \
4330 $(pkgconfiglib_DATA) \
4331 $(nodist_polkitpolicy_DATA)
4332
4333# ------------------------------------------------------------------------------
4334if ENABLE_MANPAGES
4335man/custom-entities.ent: Makefile
4336 $(AM_V_GEN)$(MKDIR_P) $(dir $@)
4337 $(AM_V_GEN)(echo '<?xml version="1.0" encoding="utf-8" ?>' && \
4338 echo '$(subst '|,<!ENTITY ,$(subst =, ",$(subst |',">,$(substitutions))))') \
4339 > $@ # '
4340
4341DISTCLEANFILES += \
4342 man/custom-entities.ent
4343
4344XSLTPROC_FLAGS = \
4345 --nonet \
4346 --stringparam man.output.quietly 1 \
4347 --stringparam funcsynopsis.style ansi \
4348 --stringparam man.authors.section.enabled 0 \
4349 --stringparam man.copyright.section.enabled 0 \
4350 --stringparam systemd.version $(VERSION) \
4351 --path '$(builddir)/man:$(srcdir)/man'
4352
4353XSLTPROC_PROCESS_MAN = \
4354 $(AM_V_XSLT)$(XSLTPROC) -o $@ $(XSLTPROC_FLAGS) $(srcdir)/man/custom-man.xsl $<
4355
4356XSLTPROC_PROCESS_HTML = \
4357 $(AM_V_XSLT)$(XSLTPROC) -o $@ $(XSLTPROC_FLAGS) $(srcdir)/man/custom-html.xsl $<
4358
4359man/%.1: man/%.xml man/custom-man.xsl man/custom-entities.ent
4360 $(XSLTPROC_PROCESS_MAN)
4361
4362man/%.3: man/%.xml man/custom-man.xsl man/custom-entities.ent
4363 $(XSLTPROC_PROCESS_MAN)
4364
4365man/%.5: man/%.xml man/custom-man.xsl man/custom-entities.ent
4366 $(XSLTPROC_PROCESS_MAN)
4367
4368man/%.7: man/%.xml man/custom-man.xsl man/custom-entities.ent
4369 $(XSLTPROC_PROCESS_MAN)
4370
4371man/%.8: man/%.xml man/custom-man.xsl man/custom-entities.ent
4372 $(XSLTPROC_PROCESS_MAN)
4373
4374man/%.html: man/%.xml man/custom-html.xsl man/custom-entities.ent
4375 $(XSLTPROC_PROCESS_HTML)
4376
4377define html-alias
4378 $(AM_V_LN)$(LN_S) -f $(notdir $<) $@
4379endef
4380
4381endif
4382
4383EXTRA_DIST += \
4384 man/custom-html.xsl \
4385 man/custom-man.xsl
4386
4387# ------------------------------------------------------------------------------
4388if HAVE_SYSV_COMPAT
4389sysvinit_DATA = \
4390 docs/sysvinit/README
4391
4392varlog_DATA = \
4393 docs/var-log/README
4394
4395docs/sysvinit/README: docs/sysvinit/README.in
4396 $(SED_PROCESS)
4397
4398docs/var-log/README: docs/var-log/README.in
4399 $(SED_PROCESS)
4400
4401CLEANFILES += \
4402 docs/sysvinit/README \
4403 docs/var-log/README
4404endif
4405
4406EXTRA_DIST += \
4407 docs/sysvinit/README.in \
4408 docs/var-log/README.in
4409
4410SOCKETS_TARGET_WANTS += \
4411 systemd-initctl.socket \
4412 systemd-shutdownd.socket
4413
4414if HAVE_SYSV_COMPAT
4415RUNLEVEL1_TARGET_WANTS += \
4416 systemd-update-utmp-runlevel.service
4417RUNLEVEL2_TARGET_WANTS += \
4418 systemd-update-utmp-runlevel.service
4419RUNLEVEL3_TARGET_WANTS += \
4420 systemd-update-utmp-runlevel.service
4421RUNLEVEL4_TARGET_WANTS += \
4422 systemd-update-utmp-runlevel.service
4423RUNLEVEL5_TARGET_WANTS += \
4424 systemd-update-utmp-runlevel.service
4425endif
4426SYSINIT_TARGET_WANTS += \
4427 systemd-update-utmp.service
4428LOCAL_FS_TARGET_WANTS += \
4429 systemd-remount-fs.service \
4430 tmp.mount
4431MULTI_USER_TARGET_WANTS += \
4432 getty.target \
4433 systemd-ask-password-wall.path
4434SYSINIT_TARGET_WANTS += \
4435 dev-hugepages.mount \
4436 dev-mqueue.mount \
4437 sys-kernel-config.mount \
4438 sys-kernel-debug.mount \
4439 sys-fs-fuse-connections.mount \
4440 systemd-sysctl.service \
4441 systemd-ask-password-console.path
4442
4443if HAVE_SYSV_COMPAT
4444SYSTEM_UNIT_ALIASES += \
4445 poweroff.target runlevel0.target \
4446 rescue.target runlevel1.target \
4447 multi-user.target runlevel2.target \
4448 multi-user.target runlevel3.target \
4449 multi-user.target runlevel4.target \
4450 graphical.target runlevel5.target \
4451 reboot.target runlevel6.target
4452endif
4453
4454SYSTEM_UNIT_ALIASES += \
4455 graphical.target default.target \
4456 reboot.target ctrl-alt-del.target \
4457 getty@.service autovt@.service
4458
4459USER_UNIT_ALIASES += \
4460 $(systemunitdir)/shutdown.target shutdown.target \
4461 $(systemunitdir)/sockets.target sockets.target \
4462 $(systemunitdir)/timers.target timers.target \
4463 $(systemunitdir)/paths.target paths.target \
4464 $(systemunitdir)/bluetooth.target bluetooth.target \
4465 $(systemunitdir)/printer.target printer.target \
4466 $(systemunitdir)/sound.target sound.target \
4467 $(systemunitdir)/smartcard.target smartcard.target
4468
4469GENERAL_ALIASES += \
4470 $(systemunitdir)/remote-fs.target $(pkgsysconfdir)/system/multi-user.target.wants/remote-fs.target \
4471 $(systemunitdir)/getty@.service $(pkgsysconfdir)/system/getty.target.wants/getty@tty1.service \
4472 $(pkgsysconfdir)/user $(sysconfdir)/xdg/systemd/user \
4473 ../system-services/org.freedesktop.systemd1.service $(dbussessionservicedir)/org.freedesktop.systemd1.service
4474
4475if HAVE_SYSV_COMPAT
4476INSTALL_DIRS += \
4477 $(systemunitdir)/runlevel1.target.wants \
4478 $(systemunitdir)/runlevel2.target.wants \
4479 $(systemunitdir)/runlevel3.target.wants \
4480 $(systemunitdir)/runlevel4.target.wants \
4481 $(systemunitdir)/runlevel5.target.wants
4482endif
4483
4484INSTALL_DIRS += \
4485 $(prefix)/lib/modules-load.d \
4486 $(sysconfdir)/modules-load.d \
4487 $(prefix)/lib/systemd/network \
4488 $(sysconfdir)/systemd/network \
4489 $(prefix)/lib/sysctl.d \
4490 $(sysconfdir)/sysctl.d \
4491 $(prefix)/lib/kernel/install.d \
4492 $(sysconfdir)/kernel/install.d \
4493 $(systemshutdowndir) \
4494 $(systemsleepdir) \
4495 $(systemgeneratordir) \
4496 $(usergeneratordir) \
4497 \
4498 $(userunitdir) \
4499 $(pkgsysconfdir)/system \
4500 $(pkgsysconfdir)/system/multi-user.target.wants \
4501 $(pkgsysconfdir)/system/getty.target.wants \
4502 $(pkgsysconfdir)/user \
4503 $(dbussessionservicedir) \
4504 $(sysconfdir)/xdg/systemd
4505
4506install-exec-hook: $(INSTALL_EXEC_HOOKS)
4507
4508uninstall-hook: $(UNINSTALL_DATA_HOOKS) $(UNINSTALL_EXEC_HOOKS)
4509
4510install-data-hook: $(INSTALL_DATA_HOOKS)
4511
4512distclean-local: $(DISTCLEAN_LOCAL_HOOKS)
4513
4514clean-local: $(CLEAN_LOCAL_HOOKS)
4515 rm -rf $(abs_srcdir)/install-tree
4516 rm -f $(abs_srcdir)/hwdb/usb.ids $(abs_srcdir)/hwdb/pci.ids $(abs_srcdir)/hwdb/oui.txt \
4517 $(abs_srcdir)/hwdb/iab.txt
4518
4519DISTCHECK_CONFIGURE_FLAGS = \
4520 --with-dbuspolicydir=$$dc_install_base/$(dbuspolicydir) \
4521 --with-dbussessionservicedir=$$dc_install_base/$(dbussessionservicedir) \
4522 --with-dbussystemservicedir=$$dc_install_base/$(dbussystemservicedir) \
4523 --with-bashcompletiondir=$$dc_install_base/$(bashcompletiondir) \
4524 --with-zshcompletiondir=$$dc_install_base/$(zshcompletiondir) \
4525 --with-pamlibdir=$$dc_install_base/$(pamlibdir) \
4526 --with-pamconfdir=$$dc_install_base/$(pamconfdir) \
4527 --with-rootprefix=$$dc_install_base \
4528 --disable-split-usr
4529
4530if HAVE_SYSV_COMPAT
4531DISTCHECK_CONFIGURE_FLAGS += \
4532 --with-sysvinit-path=$$dc_install_base/$(sysvinitdir) \
4533 --with-sysvrcnd-path=$$dc_install_base/$(sysvrcnddir)
4534else
4535DISTCHECK_CONFIGURE_FLAGS += \
4536 --with-sysvinit-path= \
4537 --with-sysvrcnd-path=
4538endif
4539
4540if ENABLE_GTK_DOC
4541DISTCHECK_CONFIGURE_FLAGS += \
4542 --enable-gtk-doc
4543endif
4544
4545hwdb-update:
4546 ( cd $(top_srcdir)/hwdb && \
4547 wget -N http://www.linux-usb.org/usb.ids \
4548 http://pci-ids.ucw.cz/v2.2/pci.ids \
4549 http://standards.ieee.org/develop/regauth/oui/oui.txt \
4550 http://standards.ieee.org/develop/regauth/iab/iab.txt && \
4551 ./ids-update.pl )
4552
4553kdbus-update:
4554 ( cd $(top_srcdir)/src/libsystemd-bus/ && \
4555 wget -N https://d-bus.googlecode.com/git/kdbus.h )
4556
4557upload: all distcheck
4558 cp -v systemd-$(VERSION).tar.xz /home/lennart/git.fedora/systemd/
4559 scp systemd-$(VERSION).tar.xz fdo:/srv/www.freedesktop.org/www/software/systemd/
4560 scp man/*.html tango:public/systemd-man/
4561
4562www_target = www.freedesktop.org:/srv/www.freedesktop.org/www/software/systemd
4563doc-sync: all destdir-sphinx
4564 gtkdoc-rebase --html-dir=docs/libudev/html --online
4565 rsync -rlv --delete docs/libudev/html/ --omit-dir-times $(www_target)/libudev/
4566 gtkdoc-rebase --html-dir=docs/gudev/html --online
4567 rsync -rlv --delete docs/gudev/html/ --omit-dir-times $(www_target)/gudev/
4568 rsync -rlv --delete-excluded --include="*.html" --exclude="*" --omit-dir-times man/ $(www_target)/man/
4569 rsync -rlv --delete --omit-dir-times docs/html/python-systemd/ $(www_target)/python-systemd/
4570
4571git-tag:
4572 git tag "v$(VERSION)" -m "systemd $(VERSION)"
4573
4574install-tree: all
4575 rm -rf $(abs_srcdir)/install-tree
4576 $(MAKE) install DESTDIR=$(abs_srcdir)/install-tree
4577 tree $(abs_srcdir)/install-tree
4578
4579# Let's run all tests of the test suite, but under valgrind. Let's
4580# exclude the one perl script we have in there
4581valgrind-tests: $(TESTS)
4582 for f in $(TESTS) ; do [ "$$f" == "$${f/.pl/}" ] && libtool --mode=execute valgrind --leak-check=full --error-exitcode=55 $(builddir)/$$f ; done