summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKarel Zak2009-05-11 15:06:06 +0200
committerKarel Zak2009-05-11 15:06:06 +0200
commit7c950efa3438b02097d915497d67248dde709e72 (patch)
treec87b36f6b3a31bc939621023913cae45f74b7399
parentbuild-sys: fix "make -C" bug (diff)
downloadkernel-qcow2-util-linux-7c950efa3438b02097d915497d67248dde709e72.tar.gz
kernel-qcow2-util-linux-7c950efa3438b02097d915497d67248dde709e72.tar.xz
kernel-qcow2-util-linux-7c950efa3438b02097d915497d67248dde709e72.zip
build-sys: fix blkid.h include for old e2fsprogs
When building util-linux-ng-2.15, I get this: ../lib/fsprobe.c:10:19: error: blkid.h: No such file or directory Unfortunately, the blkid.pc uses -I${includedir}/blkidi since e2fsprogs v1.41.2. The old versions use -I${includedir} only. Reported-by: Robert Schwebel <r.schwebel@pengutronix.de> Signed-off-by: Karel Zak <kzak@redhat.com>
-rw-r--r--configure.ac14
-rw-r--r--lib/fsprobe.c4
2 files changed, 17 insertions, 1 deletions
diff --git a/configure.ac b/configure.ac
index 46dc3235a..ec41ae609 100644
--- a/configure.ac
+++ b/configure.ac
@@ -180,7 +180,19 @@ have_volume_id=no
if test "x$with_fsprobe" = xblkid; then
PKG_CHECK_MODULES(BLKID, blkid, [have_blkid=yes], [])
- AC_CHECK_LIB(blkid, blkid_evaluate_tag, [have_blkid_evaluate=yes], [])
+ if test "x$have_blkid" = xyes; then
+ old_CFLAGS="$CFLAGS"
+ old_CPPFLAGS="$CPPFLAGS"
+ old_LDFLAGS="$LDFLAGS"
+ CFLAGS="$CFLAGS $BLKID_CFLAGS"
+ CPPFLAGS="$CPPFLAGS $BLKID_CFLAGS"
+ LDFLAGS="$LDFLAGS $BLKID_LIBS"
+ AC_CHECK_HEADERS([blkid.h blkid/blkid.h], [break], [])
+ AC_CHECK_FUNC(blkid_evaluate_tag, [have_blkid_evaluate=yes], [])
+ CFLAGS="$old_CFLAGS"
+ CPPFLAGS="$old_CPPFLAGS"
+ LDFLAGS="$old_LDFLAGS"
+ fi
elif test "x$with_fsprobe" = xvolume_id; then
PKG_CHECK_MODULES(VOLUME_ID, volume_id, [have_volume_id=yes], [])
elif test "x$with_fsprobe" = xbuiltin; then
diff --git a/lib/fsprobe.c b/lib/fsprobe.c
index cd008cc35..c5fa8c63b 100644
--- a/lib/fsprobe.c
+++ b/lib/fsprobe.c
@@ -7,7 +7,11 @@
#include <sys/types.h>
#include <stdlib.h>
+#ifdef HAVE_BLKID_BLKID_H
+#include <blkid/blkid.h>
+#else
#include <blkid.h>
+#endif
#include "blkdev.h"
#include "canonicalize.h"