diff options
-rw-r--r-- | configure.ac | 14 | ||||
-rw-r--r-- | rules/Makefile.am | 6 | ||||
-rw-r--r-- | src/udev/Makefile.am | 6 | ||||
-rw-r--r-- | src/udev/udev-builtin.c | 2 | ||||
-rw-r--r-- | src/udev/udev.h | 4 |
5 files changed, 28 insertions, 4 deletions
diff --git a/configure.ac b/configure.ac index 5de88126d2..2f83e0538f 100644 --- a/configure.ac +++ b/configure.ac @@ -41,8 +41,6 @@ if test -z "$GPERF" ; then AC_MSG_ERROR([*** gperf not found]) fi -PKG_CHECK_MODULES(BLKID,[blkid >= 2.20]) - # Checks for header files. AC_CHECK_HEADERS( [arpa/inet.h fcntl.h inttypes.h langinfo.h limits.h locale.h \ @@ -161,6 +159,18 @@ GOBJECT_INTROSPECTION_CHECK([1.31.1]) AM_CONDITIONAL([HAVE_INTROSPECTION], [test "$enable_introspection" = "yes"]) # ------------------------------------------------------------------------------ +have_blkid=no +AC_ARG_ENABLE(blkid, AS_HELP_STRING([--disable-blkid], [Disable optional blkid support])) +if test "x$enable_blkid" != "xno"; then + PKG_CHECK_MODULES([BLKID], [blkid >= 2.20], + [AC_DEFINE(HAVE_BLKID, 1, [Define if blkid is available]) have_blkid=yes], have_blkid=no) + if test "x$have_blkid" = xno -a "x$enable_blkd" = xyes; then + AC_MSG_ERROR([*** blkid support requested but not found]) + fi +fi +AM_CONDITIONAL(HAVE_SELINUX, [test "x$have_blkid" = "xyes"]) + +# ------------------------------------------------------------------------------ have_selinux=no AC_ARG_ENABLE(selinux, AS_HELP_STRING([--disable-selinux], [Disable optional SELINUX support])) if test "x$enable_selinux" != "xno"; then diff --git a/rules/Makefile.am b/rules/Makefile.am index 1741bd2ed8..319b7c59f6 100644 --- a/rules/Makefile.am +++ b/rules/Makefile.am @@ -8,7 +8,6 @@ dist_udevrules_DATA = \ 60-persistent-serial.rules \ 60-persistent-input.rules \ 60-persistent-alsa.rules \ - 60-persistent-storage.rules \ 60-persistent-v4l.rules \ 61-accelerometer.rules \ 64-btrfs.rules \ @@ -19,6 +18,11 @@ dist_udevrules_DATA = \ 80-net-name-slot.rules \ 95-udev-late.rules +if HAVE_BLKID +dist_udevrules_DATA += \ + 60-persistent-storage.rules +endif + if HAVE_MODULES dist_udevrules_DATA += \ 80-drivers.rules diff --git a/src/udev/Makefile.am b/src/udev/Makefile.am index 866d2c2537..038803454f 100644 --- a/src/udev/Makefile.am +++ b/src/udev/Makefile.am @@ -46,7 +46,6 @@ libudev_core_la_SOURCES = \ udev-rules.c \ udev-ctrl.c \ udev-builtin.c \ - udev-builtin-blkid.c \ udev-builtin-btrfs.c \ udev-builtin-firmware.c \ udev-builtin-hwdb.c \ @@ -75,6 +74,11 @@ libudev_core_la_LIBADD = \ $(BLKID_LIBS) \ $(SELINUX_LIBS) +if HAVE_BLKID +libudev_core_la_SOURCES += \ + udev-builtin-blkid.c +endif + if HAVE_MODULES libudev_core_la_SOURCES += \ udev-builtin-kmod.c diff --git a/src/udev/udev-builtin.c b/src/udev/udev-builtin.c index d53663f0a4..b9dbe87dcc 100644 --- a/src/udev/udev-builtin.c +++ b/src/udev/udev-builtin.c @@ -30,7 +30,9 @@ static bool initialized; static const struct udev_builtin *builtins[] = { +#ifdef HAVE_BLKID [UDEV_BUILTIN_BLKID] = &udev_builtin_blkid, +#endif [UDEV_BUILTIN_BTRFS] = &udev_builtin_btrfs, [UDEV_BUILTIN_FIRMWARE] = &udev_builtin_firmware, [UDEV_BUILTIN_HWDB] = &udev_builtin_hwdb, diff --git a/src/udev/udev.h b/src/udev/udev.h index c8ee2feede..682e03721f 100644 --- a/src/udev/udev.h +++ b/src/udev/udev.h @@ -136,7 +136,9 @@ int udev_ctrl_get_set_children_max(struct udev_ctrl_msg *ctrl_msg); /* built-in commands */ enum udev_builtin_cmd { +#ifdef HAVE_BLKID UDEV_BUILTIN_BLKID, +#endif UDEV_BUILTIN_BTRFS, UDEV_BUILTIN_FIRMWARE, UDEV_BUILTIN_HWDB, @@ -158,7 +160,9 @@ struct udev_builtin { bool (*validate)(struct udev *udev); bool run_once; }; +#ifdef HAVE_BLKID extern const struct udev_builtin udev_builtin_blkid; +#endif extern const struct udev_builtin udev_builtin_btrfs; extern const struct udev_builtin udev_builtin_firmware; extern const struct udev_builtin udev_builtin_hwdb; |