systemd-update-utmp \
systemd-shutdownd \
systemd-shutdown \
- systemd-modules-load \
systemd-remount-fs \
systemd-reply-password \
systemd-fsck \
systemd-sysctl \
systemd-sleep
+if HAVE_KMOD
+rootlibexec_PROGRAMS += \
+ systemd-modules-load
+endif
+
systemgenerator_PROGRAMS = \
systemd-getty-generator \
systemd-fstab-generator \
units/console-getty.service \
units/systemd-initctl.service \
units/systemd-shutdownd.service \
- units/systemd-modules-load.service \
units/systemd-remount-fs.service \
units/systemd-update-utmp-runlevel.service \
units/systemd-update-utmp-shutdown.service \
units/systemd-udev-settle.service \
units/debug-shell.service
+if HAVE_KMOD
+nodist_systemunit_DATA += \
+ units/systemd-modules-load.service
+endif
+
dist_userunit_DATA = \
units/user/default.target \
units/user/exit.target
units/rescue.service.m4.in \
units/systemd-initctl.service.in \
units/systemd-shutdownd.service.in \
- units/systemd-modules-load.service.in \
units/systemd-remount-fs.service.in \
units/systemd-update-utmp-runlevel.service.in \
units/systemd-update-utmp-shutdown.service.in \
introspect.awk \
man/custom-html.xsl
+if HAVE_KMOD
+EXTRA_DIST += \
+ units/systemd-modules-load.service.in
+endif
+
if TARGET_FEDORA
dist_systemunit_DATA += \
units/fedora/rc-local.service \
man/locale.conf.5 \
man/os-release.5 \
man/machine-info.5 \
- man/modules-load.d.5 \
- man/systemd-modules-load.service.8 \
man/sysctl.d.5 \
man/systemd-sysctl.service.8 \
man/systemd-ask-password.1 \
man/reboot.8 \
man/poweroff.8 \
man/init.1 \
- man/systemd-modules-load.8 \
man/systemd-sysctl.8 \
man/systemd-journald.socket.8 \
man/systemd-journald.8 \
man/sd_journal_restart_unique.3 \
man/SD_JOURNAL_FOREACH_UNIQUE.3
+if HAVE_KMOD
+MANPAGES += \
+ man/modules-load.d.5 \
+ man/systemd-modules-load.service.8
+MANPAGES_ALIAS += \
+ man/systemd-modules-load.8
+man/systemd-modules-load.8: man/systemd-modules-load.service.8
+endif
+
man/reboot.8: man/halt.8
man/poweroff.8: man/halt.8
man/init.1: man/systemd.1
-man/systemd-modules-load.8: man/systemd-modules-load.service.8
man/systemd-sysctl.8: man/systemd-sysctl.service.8
man/systemd-journald.socket.8: man/systemd-journald.service.8
man/systemd-journald.8: man/systemd-journald.service.8
src/core/selinux-setup.h \
src/core/ima-setup.c \
src/core/ima-setup.h \
- src/core/kmod-setup.c \
- src/core/kmod-setup.h \
src/core/locale-setup.h \
src/core/locale-setup.c \
src/core/hostname-setup.c \
src/core/audit-fd.c \
src/core/audit-fd.h
+if HAVE_KMOD
+libsystemd_core_la_SOURCES += \
+ src/core/kmod-setup.c \
+ src/core/kmod-setup.h
+endif
+
nodist_libsystemd_core_la_SOURCES = \
src/core/load-fragment-gperf.c \
src/core/load-fragment-gperf-nulstr.c \
libsystemd-shared.la \
libudev.la
+if HAVE_KMOD
# ------------------------------------------------------------------------------
systemd_modules_load_SOURCES = \
src/modules-load/modules-load.c
systemd_modules_load_LDADD = \
libsystemd-shared.la \
$(KMOD_LIBS)
+endif
# ------------------------------------------------------------------------------
systemd_tmpfiles_SOURCES = \
rules/75-net-description.rules \
rules/75-tty-description.rules \
rules/78-sound-card.rules \
- rules/80-drivers.rules \
rules/95-udev-late.rules
+if HAVE_KMOD
+dist_udevrules_DATA += \
+ rules/80-drivers.rules
+endif
+
dist_udevhwdb_DATA = \
hwdb/20-pci-vendor-product.hwdb \
hwdb/20-pci-classes.hwdb \
src/udev/udev-builtin-firmware.c \
src/udev/udev-builtin-hwdb.c \
src/udev/udev-builtin-input_id.c \
- src/udev/udev-builtin-kmod.c \
src/udev/udev-builtin-net_id.c \
src/udev/udev-builtin-path_id.c \
src/udev/udev-builtin-usb_id.c \
$(AM_CPPFLAGS) \
-DFIRMWARE_PATH="$(FIRMWARE_PATH)"
+if HAVE_KMOD
+libudev_core_la_SOURCES += \
+ src/udev/udev-builtin-kmod.c
+endif
+
if HAVE_BLKID
libudev_core_la_SOURCES += \
src/udev/udev-builtin-blkid.c
sys-kernel-config.mount \
sys-kernel-debug.mount \
sys-fs-fuse-connections.mount \
- systemd-modules-load.service \
systemd-tmpfiles-setup.service \
systemd-sysctl.service \
systemd-ask-password-console.path && \
$(LN_S) ../sys-kernel-config.mount sys-kernel-config.mount && \
$(LN_S) ../sys-kernel-debug.mount sys-kernel-debug.mount && \
$(LN_S) ../sys-fs-fuse-connections.mount sys-fs-fuse-connections.mount && \
- $(LN_S) ../systemd-modules-load.service systemd-modules-load.service && \
$(LN_S) ../systemd-tmpfiles-setup.service systemd-tmpfiles-setup.service && \
$(LN_S) ../systemd-sysctl.service systemd-sysctl.service && \
$(LN_S) ../systemd-ask-password-console.path systemd-ask-password-console.path )
rm -f org.freedesktop.systemd1.service && \
$(LN_S) ../system-services/org.freedesktop.systemd1.service org.freedesktop.systemd1.service )
+if HAVE_KMOD
+ ( cd $(DESTDIR)$(systemunitdir)/sysinit.target.wants && \
+ rm -f systemd-modules-load.service && \
+ $(LN_S) ../systemd-modules-load.service systemd-modules-load.service )
+endif
+
+
if TARGET_FEDORA
( cd $(DESTDIR)$(systemunitdir) && \
rm -f display-manager.service single.service && \
m4_pattern_forbid([^_?PKG_[A-Z_]+$],[*** pkg.m4 missing, please install pkg-config])
PKG_CHECK_MODULES(DBUS, [dbus-1 >= 1.3.2])
-PKG_CHECK_MODULES(KMOD, [libkmod >= 5])
+
+# ------------------------------------------------------------------------------
+have_kmod=no
+AC_ARG_ENABLE(kmod, AS_HELP_STRING([--disable-kmod], [disable loadable modules support]))
+if test "x$enable_kmod" != "xno"; then
+ PKG_CHECK_MODULES(KMOD, [ libkmod >= 5 ],
+ [AC_DEFINE(HAVE_KMOD, 1, [Define if kmod is available]) have_kmod=yes], have_kmod=no)
+ if test "x$have_kmod" = xno -a "x$enable_kmod" = xyes; then
+ AC_MSG_ERROR([*** kmod support requested but libraries not found])
+ fi
+fi
+AM_CONDITIONAL(HAVE_KMOD, [test "$have_kmod" = "yes"])
# ------------------------------------------------------------------------------
have_blkid=no
timedated: ${have_timedated}
localed: ${have_localed}
coredump: ${have_coredump}
+ kmod: ${have_kmod}
blkid: ${have_blkid}
firmware path: ${FIRMWARE_PATH}
gudev: ${enable_gudev}