Re: [PATCH] Allow disabling the build of all of systemd, leaving just udev

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Bryan Kadzban wrote:
> Unless you mean the directories that are getting created, as in the 
> previous message -- but I don't see a way to stop automake from doing
> that.

Digging a bit (the initial attempt at setting directories to "" resulted
in several warnings from automake about conditionally changing pkg*dir
variables), recent versions of automake no longer create empty
directories.  Upgrading my system to 1.12.1 (most recent) and rerunning
"autoreconf --force" removed almost all of the requirements to set these
directories to the empty string.

I still need to set "pkgincludedir= pkgsysconfdir=", and that looks like
a too-simple check for no files (it doesn't work if there's only
whitespace).  But I don't think it's a huge deal either.

> (One thing I need to do today is fix this so that "make distdir"
> works even with --disable-systemd.)

This is now done, just without the directory changes, since a newer
automake fixes that.  v2 patch (including header) attached.

Still wondering which bits of systemd got installed in your setup
though.  :-)
Add a new ./configure arg (--disable-systemd) that causes the build
system to build, test, and install only udev.

Allows udev to be built on a system with many fewer of the build-time
dependencies present.

v2: Handle EXTRA_DIST correctly; always distribute everything.  This
also fixes several cases where using e.g. --disable-gudev on the
distributor's system causes "make dist" to not distribute some of the
gudev source files.  Also handle polkitpolicy* files: always include
the filenames in the $(*_files) variables, since EXTRA_DIST is built
from those variables, but skip the installation rules unless
ENABLE_SYSTEMD is on.

Signed-Off-By: Bryan Kadzban <bryan@xxxxxxxxxxxxxxxxxxxxx>

diff --git a/Makefile.am b/Makefile.am
index 597711e..12baedd 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -202,6 +202,13 @@ endif
 endif
 
 # ------------------------------------------------------------------------------
+if !ENABLE_SYSTEMD
+# stubs
+bin_PROGRAMS =
+rootlibexec_PROGRAMS =
+endif
+
+if ENABLE_SYSTEMD
 rootbin_PROGRAMS = \
 	systemctl \
 	systemd-notify \
@@ -349,6 +356,8 @@ dist_userunit_DATA = \
 nodist_userunit_DATA = \
 	units/user/exit.service
 
+endif # ENABLE_SYSTEMD
+
 EXTRA_DIST += \
 	units/getty@.service.m4 \
 	units/serial-getty@.service.m4 \
@@ -383,6 +392,8 @@ EXTRA_DIST += \
 	introspect.awk \
 	man/custom-html.xsl
 
+if ENABLE_SYSTEMD
+
 if TARGET_FEDORA
 dist_systemunit_DATA += \
 	units/fedora/prefdm.service \
@@ -437,10 +448,12 @@ dist_systemunit_DATA += \
 
 nodist_systemunit_DATA += \
 	units/systemd-ask-password-plymouth.service
+
+endif
+endif # ENABLE_SYSTEMD
 
 EXTRA_DIST += \
 	units/systemd-ask-password-plymouth.service.in
-endif
 
 dist_doc_DATA = \
 	README \
@@ -453,6 +466,7 @@ dist_doc_DATA = \
 @INTLTOOL_POLICY_RULE@
 
 # ------------------------------------------------------------------------------
+if ENABLE_SYSTEMD
 MANPAGES = \
 	man/systemd.1 \
 	man/systemctl.1 \
@@ -510,13 +524,19 @@ MANPAGES_ALIAS = \
 	man/systemd-modules-load.8 \
 	man/systemd-sysctl.8 \
 	man/systemd-journald.8
+else
+MANPAGES =
+MANPAGES_ALIAS =
+endif
 
+if ENABLE_SYSTEMD
 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.8: man/systemd-journald.service.8
+endif
 
 XML_FILES = \
 	${patsubst %.1,%.xml,${patsubst %.3,%.xml,${patsubst %.5,%.xml,${patsubst %.7,%.xml,${patsubst %.8,%.xml,$(MANPAGES)}}}}}
@@ -595,6 +615,7 @@ libsystemd_shared_la_SOURCES = \
 	src/shared/hwclock.c \
 	src/shared/hwclock.h
 
+if ENABLE_SYSTEMD
 #-------------------------------------------------------------------------------
 noinst_LTLIBRARIES += \
 	libsystemd-dbus.la
@@ -627,6 +648,7 @@ libsystemd_units_la_SOURCES = \
 libsystemd_units_la_CFLAGS = \
 	$(AM_CFLAGS) \
 	$(DBUS_CFLAGS)
+endif
 
 # ------------------------------------------------------------------------------
 noinst_LTLIBRARIES += \
@@ -651,6 +673,7 @@ libsystemd_label_la_CFLAGS = \
 libsystemd_label_la_LIBADD = \
 	$(SELINUX_LIBS)
 
+if ENABLE_SYSTEMD
 # ------------------------------------------------------------------------------
 noinst_LTLIBRARIES += \
 	libsystemd-logs.la
@@ -692,6 +715,8 @@ libsystemd_audit_la_SOURCES = \
 libsystemd_audit_la_LIBADD = \
 	libsystemd-capability.la
 
+endif # ENABLE_SYSTEMD
+
 # ------------------------------------------------------------------------------
 if HAVE_ACL
 noinst_LTLIBRARIES += \
@@ -709,6 +734,7 @@ libsystemd_acl_la_LIBADD = \
 	$(ACL_LIBS)
 endif
 
+if ENABLE_SYSTEMD
 # ------------------------------------------------------------------------------
 noinst_LTLIBRARIES += \
 	libsystemd-core.la
@@ -844,9 +870,13 @@ src/core/load-fragment-gperf-nulstr.c: src/core/load-fragment-gperf.gperf
 	$(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
 	$(AWK) 'BEGIN{ keywords=0 ; FS="," ; print "extern const char load_fragment_gperf_nulstr[];" ; print "const char load_fragment_gperf_nulstr[] ="} ; keyword==1 { print "\"" $$1 "\\0\"" } ; /%%/ { keyword=1} ; END { print ";" }' < $< > $@ || rm $@
 
+endif # ENABLE_SYSTEMD
+
 EXTRA_DIST += \
 	src/core/load-fragment-gperf.gperf.m4
 
+if ENABLE_SYSTEMD
+
 CLEANFILES += \
 	src/core/load-fragment-gperf.gperf \
 	src/core/load-fragment-gperf.c \
@@ -891,9 +921,6 @@ dbusinterface_DATA += \
 	org.freedesktop.systemd1.Swap.xml \
 	org.freedesktop.systemd1.Path.xml
 
-polkitpolicy_in_in_files = \
-	src/core/org.freedesktop.systemd1.policy.in.in
-
 org.freedesktop.systemd1.%.xml: systemd
 	$(AM_V_GEN)$(LIBTOOL) --mode=execute $(OBJCOPY) -O binary -j introspect.$* $< $@.tmp && \
 		$(STRINGS) $@.tmp | $(AWK) -f $(srcdir)/introspect.awk | \
@@ -902,9 +929,16 @@ org.freedesktop.systemd1.%.xml: systemd
 pkgconfigdata_DATA = \
 	src/core/systemd.pc
 
+endif # ENABLE_SYSTEMD
+
+polkitpolicy_in_in_files = \
+	src/core/org.freedesktop.systemd1.policy.in.in
+
 EXTRA_DIST += \
 	src/core/systemd.pc.in
 
+if ENABLE_SYSTEMD
+
 # ------------------------------------------------------------------------------
 noinst_PROGRAMS += \
 	test-engine \
@@ -1351,6 +1385,8 @@ man/sd_is_socket_inet.3: man/sd_is_fifo.3
 man/sd_is_mq.3: man/sd_is_fifo.3
 man/sd_notifyf.3: man/sd_notify.3
 
+endif # ENABLE_SYSTEMD
+
 EXTRA_DIST += \
 	src/libsystemd-daemon/libsystemd-daemon.pc.in \
 	src/libsystemd-daemon/libsystemd-daemon.sym
@@ -1443,8 +1479,12 @@ udev-confdirs:
 
 INSTALL_DATA_HOOKS += udev-confdirs
 
+if ENABLE_SYSTEMD
+SYSTEMD_UDEV_RULES = rules/99-systemd.rules
+endif
+
 dist_udevrules_DATA += \
-	rules/99-systemd.rules \
+	$(SYSTEMD_UDEV_RULES) \
 	rules/42-usb-hid-pm.rules \
 	rules/50-udev-default.rules \
 	rules/60-persistent-storage-tape.rules \
@@ -1471,7 +1511,7 @@ EXTRA_DIST += \
 	src/udev/udev.pc.in
 
 CLEANFILES += \
-	rules/99-systemd.rules \
+	$(SYSTEMD_UDEV_RULES) \
 	src/udev/udev.pc
 
 EXTRA_DIST += \
@@ -1479,6 +1519,7 @@ EXTRA_DIST += \
 	units/systemd-udev-trigger.service.in \
 	units/systemd-udev-settle.service.in
 
+if ENABLE_SYSTEMD
 CLEANFILES += \
 	units/systemd-udev.service \
 	units/systemd-udev-trigger.service \
@@ -1493,6 +1534,7 @@ systemd-install-hook:
 	ln -sf ../systemd-udev-trigger.service $(DESTDIR)$(systemunitdir)/sysinit.target.wants/systemd-udev-trigger.service
 
 INSTALL_DATA_HOOKS += systemd-install-hook
+endif
 
 bin_PROGRAMS += \
 	udevadm
@@ -1731,9 +1773,12 @@ lib_LTLIBRARIES += libgudev-1.0.la
 pkgconfiglib_DATA += \
 	src/gudev/gudev-1.0.pc
 
+endif
+
 EXTRA_DIST += \
 	src/gudev/gudev-1.0.pc.in
 
+if ENABLE_GUDEV
 CLEANFILES += \
 	src/gudev/gudev-1.0.pc
 
@@ -1784,6 +1829,8 @@ libgudev_1_0_la_LDFLAGS = \
 	-export-dynamic -no-undefined \
 	-export-symbols-regex '^g_udev_.*'
 
+endif
+
 EXTRA_DIST += \
 	src/gudev/gudevmarshal.list \
 	src/gudev/gudevenumtypes.h.template \
@@ -1792,6 +1839,7 @@ EXTRA_DIST += \
 	src/gudev/seed-example-enum.js \
 	src/gudev/seed-example.js
 
+if ENABLE_GUDEV
 CLEANFILES += \
 	$(nodist_libgudev_1_0_la_SOURCES)
 
@@ -1910,10 +1958,14 @@ dist_udevhome_SCRIPTS = \
 TESTS += \
 	src/udev/keymap/check-keymaps.sh
 
+endif
+
 EXTRA_DIST += \
 	src/udev/keymap/check-keymaps.sh \
 	src/udev/keymap/keyboard-force-release.sh.in
 
+if ENABLE_KEYMAP
+
 CLEANFILES += \
 	$(nodist_keymap_SOURCES) \
 	src/udev/keymap/keys.txt \
@@ -2019,6 +2071,7 @@ dist_udevrules_DATA += \
 udevlibexec_PROGRAMS += \
 	mtd_probe
 
+if ENABLE_SYSTEMD
 # ------------------------------------------------------------------------------
 libsystemd_id128_la_SOURCES = \
 	src/libsystemd-id128/sd-id128.c
@@ -2077,10 +2130,14 @@ libsystemd-id128-uninstall-hook:
 UNINSTALL_EXEC_HOOKS += \
 	libsystemd-id128-uninstall-hook
 
+endif
+
 EXTRA_DIST += \
 	src/libsystemd-id128/libsystemd-id128.pc.in \
 	src/libsystemd-id128/libsystemd-id128.sym
 
+if ENABLE_SYSTEMD
+
 # ------------------------------------------------------------------------------
 systemd_journald_SOURCES = \
 	src/journal/journald.c \
@@ -2275,12 +2332,16 @@ journal-install-data-hook:
 INSTALL_DATA_HOOKS += \
 	journal-install-data-hook
 
+endif
+
 EXTRA_DIST += \
 	src/journal/libsystemd-journal.pc.in \
 	src/journal/libsystemd-journal.sym \
 	units/systemd-journald.service.in \
 	src/journal/journald-gperf.gperf
 
+if ENABLE_SYSTEMD
+
 CLEANFILES += \
 	src/journal/journald-gperf.c
 
@@ -2305,9 +2366,15 @@ rootlibexec_PROGRAMS += \
 sysctl_DATA = \
 	sysctl.d/coredump.conf
 
+endif # ENABLE_COREDUMP
+endif # ENABLE_SYSTEMD
+
 EXTRA_DIST += \
 	sysctl.d/coredump.conf.in
 
+if ENABLE_SYSTEMD
+if ENABLE_COREDUMP
+
 CLEANFILES += \
 	sysctl.d/coredump.conf
 endif
@@ -2353,9 +2420,13 @@ MANPAGES_ALIAS +=  \
 
 man/systemd-binfmt.8: man/systemd-binfmt.service.8
 
+endif
+endif # ENABLE_SYSTEMD
+
 EXTRA_DIST += \
 	units/systemd-binfmt.service.in
-endif
+
+if ENABLE_SYSTEMD
 
 # ------------------------------------------------------------------------------
 if ENABLE_VCONSOLE
@@ -2384,9 +2455,13 @@ INSTALL_DATA_HOOKS += \
 MANPAGES += \
 	man/vconsole.conf.5
 
+endif
+endif # ENABLE_SYSTEMD
+
 EXTRA_DIST += \
 	units/systemd-vconsole-setup.service.in
-endif
+
+if ENABLE_SYSTEMD
 
 # ------------------------------------------------------------------------------
 if ENABLE_READAHEAD
@@ -2425,15 +2500,19 @@ nodist_systemunit_DATA += \
 	units/systemd-readahead-replay.service \
 	units/systemd-readahead-done.service
 
+MANPAGES += \
+	man/sd_readahead.3 \
+	man/sd-readahead.7
+
+endif
+endif # ENABLE_SYSTEMD
+
 EXTRA_DIST += \
 	units/systemd-readahead-collect.service.in \
 	units/systemd-readahead-replay.service.in \
 	units/systemd-readahead-done.service.in
 
-MANPAGES += \
-	man/sd_readahead.3 \
-	man/sd-readahead.7
-endif
+if ENABLE_SYSTEMD
 
 # ------------------------------------------------------------------------------
 if ENABLE_QUOTACHECK
@@ -2443,15 +2522,19 @@ rootlibexec_PROGRAMS += \
 nodist_systemunit_DATA += \
 	units/quotacheck.service
 
-EXTRA_DIST += \
-	units/quotacheck.service.in
-
 systemd_quotacheck_SOURCES = \
 	src/quotacheck/quotacheck.c
 
 systemd_quotacheck_LDADD = \
 	libsystemd-shared.la
+
 endif
+endif # ENABLE_SYSTEMD
+
+EXTRA_DIST += \
+	units/quotacheck.service.in
+
+if ENABLE_SYSTEMD
 
 # ------------------------------------------------------------------------------
 if ENABLE_RANDOMSEED
@@ -2462,10 +2545,6 @@ nodist_systemunit_DATA += \
 	units/systemd-random-seed-save.service \
 	units/systemd-random-seed-load.service
 
-EXTRA_DIST += \
-	units/systemd-random-seed-save.service.in \
-	units/systemd-random-seed-load.service.in
-
 systemd_random_seed_SOURCES = \
 	src/random-seed/random-seed.c
 
@@ -2486,7 +2565,15 @@ randomseed-install-data-hook:
 
 INSTALL_DATA_HOOKS += \
 	randomseed-install-data-hook
+
 endif
+endif # ENABLE_SYSTEMD
+
+EXTRA_DIST += \
+	units/systemd-random-seed-save.service.in \
+	units/systemd-random-seed-load.service.in
+
+if ENABLE_SYSTEMD
 
 # ------------------------------------------------------------------------------
 if HAVE_LIBCRYPTSETUP
@@ -2556,9 +2643,6 @@ dist_dbuspolicy_DATA += \
 dist_dbussystemservice_DATA += \
 	src/hostname/org.freedesktop.hostname1.service
 
-polkitpolicy_in_files += \
-	src/hostname/org.freedesktop.hostname1.policy.in
-
 dbusinterface_DATA += \
 	org.freedesktop.hostname1.xml
 
@@ -2575,9 +2659,16 @@ hostnamed-install-data-hook:
 INSTALL_DATA_HOOKS += \
 	hostnamed-install-data-hook
 
+endif
+endif # ENABLE_SYSTEMD
+
+polkitpolicy_in_files += \
+	src/hostname/org.freedesktop.hostname1.policy.in
+
 EXTRA_DIST += \
 	units/systemd-hostnamed.service.in
-endif
+
+if ENABLE_SYSTEMD
 
 # ------------------------------------------------------------------------------
 if ENABLE_LOCALED
@@ -2606,9 +2697,6 @@ dist_dbuspolicy_DATA += \
 dist_dbussystemservice_DATA += \
 	src/locale/org.freedesktop.locale1.service
 
-polkitpolicy_in_files += \
-	src/locale/org.freedesktop.locale1.policy.in
-
 dbusinterface_DATA += \
 	org.freedesktop.locale1.xml
 
@@ -2625,9 +2713,6 @@ localed-install-data-hook:
 INSTALL_DATA_HOOKS += \
 	localed-install-data-hook
 
-EXTRA_DIST += \
-	units/systemd-localed.service.in
-
 dist_pkgdata_DATA = \
 	src/locale/kbd-model-map
 
@@ -2638,6 +2723,15 @@ update-kbd-model-map:
 	src/locale/generate-kbd-model-map > src/locale/kbd-model-map
 
 endif
+endif # ENABLE_SYSTEMD
+
+polkitpolicy_in_files += \
+	src/locale/org.freedesktop.locale1.policy.in
+
+EXTRA_DIST += \
+	units/systemd-localed.service.in
+
+if ENABLE_SYSTEMD
 
 # ------------------------------------------------------------------------------
 if ENABLE_TIMEDATED
@@ -2665,9 +2759,6 @@ dist_dbuspolicy_DATA += \
 nodist_systemunit_DATA += \
 	units/systemd-timedated.service
 
-polkitpolicy_in_files += \
-	src/timedate/org.freedesktop.timedate1.policy.in
-
 org.freedesktop.timedate1.xml: systemd-timedated
 	$(AM_V_GEN)$(LIBTOOL) --mode=execute $(OBJCOPY) -O binary -j introspect.timedate1 $< $@.tmp && \
 		$(STRINGS) $@.tmp | $(AWK) -f $(srcdir)/introspect.awk | \
@@ -2684,9 +2775,16 @@ timedated-install-data-hook:
 INSTALL_DATA_HOOKS += \
 	timedated-install-data-hook
 
+endif
+endif # ENABLE_SYSTEMD
+
+polkitpolicy_in_files += \
+	src/timedate/org.freedesktop.timedate1.policy.in
+
 EXTRA_DIST += \
 	units/systemd-timedated.service.in
-endif
+
+if ENABLE_SYSTEMD
 
 # ------------------------------------------------------------------------------
 if ENABLE_LOGIND
@@ -2882,9 +2980,6 @@ lib_LTLIBRARIES += \
 pkgconfiglib_DATA += \
 	src/login/libsystemd-login.pc
 
-polkitpolicy_in_files += \
-	src/login/org.freedesktop.login1.policy.in
-
 logind-install-data-hook:
 	$(MKDIR_P) -m 0755 \
 		$(DESTDIR)$(systemunitdir)/multi-user.target.wants \
@@ -2972,6 +3067,17 @@ man/sd_seat_can_multi_session.3: man/sd_seat_get_active.3
 man/sd_get_sessions.3: man/sd_get_seats.3
 man/sd_get_uids.3: man/sd_get_seats.3
 
+CLEANFILES += \
+	src/login/logind-gperf.c \
+	src/login/71-seat.rules \
+	src/login/73-seat-late.rules
+
+endif
+endif # ENABLE_SYSTEMD
+
+polkitpolicy_in_files += \
+	src/login/org.freedesktop.login1.policy.in
+
 EXTRA_DIST += \
 	src/login/logind-gperf.gperf \
 	src/login/libsystemd-login.pc.in \
@@ -2981,11 +3087,6 @@ EXTRA_DIST += \
 	units/systemd-logind.service.in \
 	units/systemd-user-sessions.service.in
 
-CLEANFILES += \
-	src/login/logind-gperf.c \
-	src/login/71-seat.rules \
-	src/login/73-seat-late.rules
-endif
 # ------------------------------------------------------------------------------
 
 SED_PROCESS = \
@@ -3057,9 +3158,13 @@ units/%: units/%.m4 Makefile
 units/user/%: units/%.m4 Makefile
 	$(M4_PROCESS_USER)
 
+if ENABLE_SYSTEMD
 nodist_polkitpolicy_DATA = \
 	$(polkitpolicy_in_files:.policy.in=.policy) \
 	$(polkitpolicy_in_in_files:.policy.in.in=.policy)
+else
+nodist_polkitpolicy_DATA =
+endif
 
 EXTRA_DIST += \
 	$(polkitpolicy_in_files) \
@@ -3115,6 +3220,8 @@ DBUS_PREPROCESS = $(CPP) -P $(DBUS_CFLAGS) -imacros dbus/dbus-protocol.h
 CLEANFILES += \
 	$(dbusinterface_DATA)
 
+if ENABLE_SYSTEMD
+
 systemd-install-data-hook:
 	$(MKDIR_P) -m 0755 \
 		$(DESTDIR)$(tmpfilesdir) \
@@ -3323,11 +3430,17 @@ if TARGET_MAGEIA
 		$(LN_S) $(systemunitdir)/display-manager.service display-manager.service )
 endif
 
+endif # ENABLE_SYSTEMD
+
 install-exec-hook: $(INSTALL_EXEC_HOOKS)
 
 uninstall-hook: $(UNINSTALL_EXEC_HOOKS)
 
-install-data-hook: systemd-install-data-hook $(INSTALL_DATA_HOOKS)
+if ENABLE_SYSTEMD
+SYSTEMD_INSTALL_DATA_HOOK = systemd-install-data-hook
+endif
+
+install-data-hook: $(SYSTEMD_INSTALL_DATA_HOOK) $(INSTALL_DATA_HOOKS)
 
 distclean-local: $(DISTCLEAN_LOCAL_HOOKS)
 
diff --git a/configure.ac b/configure.ac
index a4f9fea..bf825bd 100644
--- a/configure.ac
+++ b/configure.ac
@@ -44,8 +44,23 @@ AS_IF([test "x$host_cpu" = "xmips" || test "x$host_cpu" = "xmipsel" ||
 LT_PREREQ(2.2)
 LT_INIT
 
+dnl Figure out if we want a udev-only build early.  Inverted logic to match
+dnl autoconf expectations (passing --enable-foo should only ever turn something
+dnl on, never turn something off).
+AC_ARG_ENABLE([systemd],
+              [AS_HELP_STRING([--disable-systemd],
+                              [build udevd only, not systemd @<:@default: systemd enabled@:>@])],
+              [enable_systemd=$enableval], [enable_systemd=yes])
+
+dnl Anything other than --disable-systemd means "yes, build systemd as well"
+AS_IF([test "x$enable_systemd" != "xno"], [enable_systemd=yes])
+
+AM_CONDITIONAL([ENABLE_SYSTEMD], [test "x$enable_systemd" = "xyes"])
+
 # i18n stuff for the PolicyKit policy files
+AS_IF([test "x$enable_systemd" = "xyes"], [
 IT_PROG_INTLTOOL([0.40.0])
+])
 
 GETTEXT_PACKAGE=systemd
 AC_SUBST(GETTEXT_PACKAGE)
@@ -61,7 +76,9 @@ AC_PROG_CC_C99
 AM_PROG_CC_C_O
 AC_PROG_GCC_TRADITIONAL
 
+AS_IF([test "x$enable_systemd" = "xyes"], [
 AC_PATH_PROG([M4], [m4])
+])
 
 # gtkdocize greps for '^GTK_DOC_CHECK', so it needs to be on its own line
 m4_ifdef([GTK_DOC_CHECK], [
@@ -75,7 +92,7 @@ GOBJECT_INTROSPECTION_CHECK([1.31.1])
 AC_CHECK_TOOL(OBJCOPY, objcopy)
 AC_CHECK_TOOL(STRINGS, strings)
 AC_CHECK_TOOL(GPERF, gperf)
-if test -z "$GPERF" ; then
+if test -z "$GPERF" && test "x$enable_systemd" = "xyes" ; then
         AC_MSG_ERROR([*** gperf not found])
 fi
 
@@ -132,6 +149,7 @@ AC_SUBST([GCLDFLAGS], $with_ldflags)
 AC_SEARCH_LIBS([clock_gettime], [rt], [], [AC_MSG_ERROR([*** POSIX RT library not found])])
 AC_SEARCH_LIBS([dlsym], [dl], [], [AC_MSG_ERROR([*** Dynamic linking loader library not found])])
 
+AS_IF([test "x$enable_systemd" = "xyes"], [
 save_LIBS="$LIBS"
 LIBS=
 AC_SEARCH_LIBS([cap_init], [cap], [], [AC_MSG_ERROR([*** POSIX caps library not found])])
@@ -139,11 +157,14 @@ AC_CHECK_HEADERS([sys/capability.h], [], [AC_MSG_ERROR([*** POSIX caps headers n
 CAP_LIBS="$LIBS"
 LIBS="$save_LIBS"
 AC_SUBST(CAP_LIBS)
+])
 
 # This makes sure pkg.m4 is available.
 m4_pattern_forbid([^_?PKG_[A-Z_]+$],[*** pkg.m4 missing, please install pkg-config])
 
+AS_IF([test "x$enable_systemd" = "xyes"], [
 PKG_CHECK_MODULES(DBUS, [dbus-1 >= 1.3.2])
+])
 PKG_CHECK_MODULES(KMOD, [libkmod >= 5])
 PKG_CHECK_MODULES(BLKID,[blkid >= 2.20])
 
@@ -655,22 +676,22 @@ AM_CONDITIONAL(HAVE_SYSV_COMPAT, test "$SYSTEM_SYSV_COMPAT" = "yes")
 AC_ARG_WITH([dbuspolicydir],
         AS_HELP_STRING([--with-dbuspolicydir=DIR], [D-Bus policy directory]),
         [],
-        [with_dbuspolicydir=`pkg-config --variable=sysconfdir dbus-1`/dbus-1/system.d])
+        [AS_IF([test "x$enable_systemd" = "xyes"], [with_dbuspolicydir=`pkg-config --variable=sysconfdir dbus-1`/dbus-1/system.d])])
 
 AC_ARG_WITH([dbussessionservicedir],
         AS_HELP_STRING([--with-dbussessionservicedir=DIR], [D-Bus session service directory]),
         [],
-        [with_dbussessionservicedir=`pkg-config --variable=session_bus_services_dir dbus-1`])
+        [AS_IF([test "x$enable_systemd" = "xyes"], [with_dbussessionservicedir=`pkg-config --variable=session_bus_services_dir dbus-1`])])
 
 AC_ARG_WITH([dbussystemservicedir],
         AS_HELP_STRING([--with-dbussystemservicedir=DIR], [D-Bus system service directory]),
         [],
-        [with_dbussystemservicedir=`pkg-config --variable=session_bus_services_dir dbus-1`/../system-services])
+        [AS_IF([test "x$enable_systemd" = "xyes"], [with_dbussystemservicedir=`pkg-config --variable=session_bus_services_dir dbus-1`/../system-services])])
 
 AC_ARG_WITH([dbusinterfacedir],
         AS_HELP_STRING([--with-dbusinterfacedir=DIR], [D-Bus interface directory]),
         [],
-        [with_dbusinterfacedir=`pkg-config --variable=session_bus_services_dir dbus-1`/../interfaces])
+        [AS_IF([test "x$enable_systemd" = "xyes"], [with_dbusinterfacedir=`pkg-config --variable=session_bus_services_dir dbus-1`/../interfaces])])
 
 AC_ARG_WITH([rootprefix],
         AS_HELP_STRING([--with-rootprefix=DIR], [rootfs directory prefix for config files and kernel modules]),
@@ -684,7 +705,7 @@ AC_ARG_WITH([rootlibdir],
 AC_ARG_WITH([pamlibdir],
         AS_HELP_STRING([--with-pamlibdir=DIR], [Directory for PAM modules]),
         [],
-        [with_pamlibdir=${with_rootlibdir}/security])
+        [AS_IF([test "x$enable_systemd" = "xyes"], [with_pamlibdir=${with_rootlibdir}/security])])
 
 AC_ARG_ENABLE([split-usr],
         AS_HELP_STRING([--enable-split-usr], [Assume that /bin, /sbin aren\'t symlinks into /usr]),

[Index of Archives]     [Linux Kernel]     [Linux DVB]     [Asterisk Internet PBX]     [DCCP]     [Netdev]     [X.org]     [Util Linux NG]     [Fedora Women]     [ALSA Devel]     [Linux USB]

  Powered by Linux