-if test "$use_blkid" = 1; then
- AC_CHECK_LIB(blkid, blkid_get_cache, [LIBBLKID="-lblkid"], AC_MSG_ERROR([libblkid needed]))
- AC_CHECK_HEADER(blkid/blkid.h, , AC_MSG_ERROR([Cannot file libblkid header file blkid/blkid.h]))
+
+if test "$choose_blkid" != no; then
+ AC_CHECK_LIB(blkid, blkid_get_library_version, [LIBBLKID="-lblkid"], AC_MSG_ERROR([libblkid needed]))
+ AC_CHECK_HEADER(blkid/blkid.h, , AC_MSG_ERROR([Cannot find libblkid header file blkid/blkid.h]))
+ AC_BLKID_VERS
+ if test $choose_blkid = yes; then
+ use_blkid=1
+ test $libblkid_is_recent = no && AC_MSG_WARN([libblkid is old and may cause mountd to leak memory])
+ else
+ if test $libblkid_is_recent = yes
+ then use_blkid=1
+ else use_blkid=0
+ AC_MSG_WARN([uuid support disabled as libblkid is too old])
+ fi
+ fi
+ AC_DEFINE_UNQUOTED(USE_BLKID, $use_blkid, [Define if you want to use blkid to find uuid of filesystems])