fi
])
-AC_DEFUN([AC_PACKAGE_NEED_UUIDCOMPARE],
+AC_DEFUN([AC_PACKAGE_CHECK_LIBUUID],
[ AC_CHECK_FUNCS(uuid_compare)
- if test $ac_cv_func_uuid_compare = no; then
- AC_CHECK_LIB(uuid, uuid_compare, [libuuid=/usr/lib/libuuid.a], [
- echo
- echo 'FATAL ERROR: could not find a valid UUID library.'
- echo 'Install the Universally Unique Identifiers library package.'
- exit 1])
+ if test $ac_cv_func_uuid_compare = yes; then
+ libuuid=""
+ elif test "$enable_shared_uuid" = no; then
+ AC_MSG_CHECKING([for libuuid])
+ OLDLIBS="$LIBS"
+ UUIDLIBS="/usr/lib/libuuid.a /usr/lib64/libuuid.a"
+ for uuidlib in $UUIDLIBS; do
+ LIBS="$OLDLIBS $uuidlib"
+ AC_LINK_IFELSE([AC_LANG_PROGRAM(, [ uuid_compare(); ])],
+ [ libuuid="$uuidlib" ], [ continue ],)
+ AC_MSG_RESULT($libuuid)
+ done
+ if test -z "$libuuid"; then
+ AC_MSG_RESULT(not found)
+ echo
+ echo 'FATAL ERROR: could not find a valid UUID library.'
+ echo 'Install the Universally Unique Identifiers library package.'
+ exit 1
+ fi
+ LIBS="$OLDLIBS"
+ else
+ libuuid="-luuid"
fi
- AC_SUBST(libuuid)
- ])
-
-AC_DEFUN([AC_PACKAGE_CHECK_LIBUUID],
- [ test $pkg_platform = freebsd && libuuid=""
])
AC_DEFUN([AC_PACKAGE_NEED_PTHREAD_H],
AC_PACKAGE_UTILITIES(xfsprogs)
AC_PACKAGE_NEED_UUID_H
-AC_PACKAGE_NEED_UUIDCOMPARE
AC_ARG_ENABLE(shared-uuid,
[ --enable-shared-uuid=[yes/no] Link shared libuuid [default=no].],
- libuuid="/usr/lib/libuuid.a"
- test "$enable_shared_uuid" = yes && libuuid="-luuid",
- libuuid="/usr/lib/libuuid.a")
+ enable_shared_uuid=yes,
+ enable_shared_uuid=no)
AC_PACKAGE_CHECK_LIBUUID
AC_SUBST(libuuid)
fi
])
-AC_DEFUN([AC_PACKAGE_NEED_UUIDCOMPARE],
+AC_DEFUN([AC_PACKAGE_CHECK_LIBUUID],
[ AC_CHECK_FUNCS(uuid_compare)
- if test $ac_cv_func_uuid_compare = no; then
- AC_CHECK_LIB(uuid, uuid_compare, [libuuid=/usr/lib/libuuid.a], [
- echo
- echo 'FATAL ERROR: could not find a valid UUID library.'
- echo 'Install the Universally Unique Identifiers library package.'
- exit 1])
+ if test $ac_cv_func_uuid_compare = yes; then
+ libuuid=""
+ elif test "$enable_shared_uuid" = no; then
+ AC_MSG_CHECKING([for libuuid])
+ OLDLIBS="$LIBS"
+ UUIDLIBS="/usr/lib/libuuid.a /usr/lib64/libuuid.a"
+ for uuidlib in $UUIDLIBS; do
+ LIBS="$OLDLIBS $uuidlib"
+ AC_LINK_IFELSE([AC_LANG_PROGRAM(, [ uuid_compare(); ])],
+ [ libuuid="$uuidlib" ], [ continue ],)
+ AC_MSG_RESULT($libuuid)
+ done
+ if test -z "$libuuid"; then
+ AC_MSG_RESULT(not found)
+ echo
+ echo 'FATAL ERROR: could not find a valid UUID library.'
+ echo 'Install the Universally Unique Identifiers library package.'
+ exit 1
+ fi
+ LIBS="$OLDLIBS"
+ else
+ libuuid="-luuid"
fi
- AC_SUBST(libuuid)
- ])
-
-AC_DEFUN([AC_PACKAGE_CHECK_LIBUUID],
- [ test $pkg_platform = freebsd && libuuid=""
])