[Pcsclite-cvs-commit] r1843 - trunk/PCSC
Ludovic Rousseau
rousseau at costa.debian.org
Mon Jan 30 14:06:21 UTC 2006
Author: rousseau
Date: 2006-01-30 14:06:18 +0000 (Mon, 30 Jan 2006)
New Revision: 1843
Modified:
trunk/PCSC/configure.in
Log:
reuse libusb detection code from my CCID driver
Modified: trunk/PCSC/configure.in
===================================================================
--- trunk/PCSC/configure.in 2006-01-30 10:40:49 UTC (rev 1842)
+++ trunk/PCSC/configure.in 2006-01-30 14:06:18 UTC (rev 1843)
@@ -135,43 +135,55 @@
# See if socket() is found from libsocket
AC_CHECK_LIB(socket, socket, [LIBS="$LIBS -lsocket"])
-AC_SUBST(LIBUSB)
-# --enable-libusb=DIR
+# --enable-libusb
AC_ARG_ENABLE(libusb,
- AC_HELP_STRING([--enable-libusb=PATH],[enable USB hotplug using libusb]),
- [
- case ${enableval} in
- "" | "yes" | "YES")
- ;;
- "no" | "NO")
- use_libusb=false
- ;;
- *)
- use_libusb=false
- libusb_prefix=${enableval}
- AC_CHECK_LIB(usb, usb_init, [LIBUSB="$LIBUSB -lusb" use_libusb=true ], [ use_libusb=false ], "-L${libusb_prefix}/lib")
- AC_CHECK_HEADERS(${libusb_prefix}/include/usb.h, [ use_libusb=true ], [ use_libusb=false ])
- if test x$use_libusb = xtrue; then
- CPPFLAGS="$CPPFLAGS -I${libusb_prefix}/include"
- LDFLAGS="$LDFLAGS -L${libusb_prefix}/lib"
- fi
- ;;
- esac
- ]
-)
+ AC_HELP_STRING([--enable-libusb],[use libusb (default=yes)]),
+ [ use_libusb=no ], [ use_libusb=yes ] )
-# if use_libusb is not yet defined
-if test x$use_libusb = x; then
- # check if libusb is available
- AC_CHECK_HEADERS(usb.h, [ use_libusb=true ], [ use_libusb=false ])
- AC_CHECK_LIB(usb, usb_init, [LIBUSB="$LIBUSB -lusb" use_libusb=true ], [ use_libusb=false ])
+# check if libusb is used
+if test "x$use_libusb" != xno ; then
+ PKG_CHECK_MODULES(LIBUSB, libusb, [],
+ [
+ AC_MSG_RESULT([no])
+ AC_CHECK_PROG([LIBUSBCONFIG], [libusb-config], [yes])
+
+ if test "$LIBUSBCONFIG" = "yes" ; then
+ LIBUSB_CFLAGS="$LIBUSB_CFLAGS `libusb-config --cflags`"
+ LIBUSB_LIBS="$LIBUSB_LIBS `libusb-config --libs`"
+ else
+ AC_MSG_WARN([libusb-config not found.])
+ fi
+ ])
+
+ saved_CPPFLAGS="$CPPFLAGS"
+ saved_LIBS="$LIBS"
+
+ CPPFLAGS="$CPPFLAGS $LIBUSB_CFLAGS"
+ LIBS="$LDFLAGS $LIBUSB_LIBS"
+
+ AC_CHECK_HEADERS(usb.h, [],
+ [ AC_MSG_ERROR([usb.h not found, use ./configure LIBUSB_CFLAGS=...]) ])
+
+ LIBS="$LIBS $COREFOUNDATION $IOKIT"
+
+ AC_MSG_CHECKING([for usb_init])
+ AC_TRY_LINK_FUNC(usb_init, [ AC_MSG_RESULT([yes]) ],
+ [ AC_MSG_ERROR([libusb not found, use ./configure LIBUSB_LIBS=...]) ])
+
+ AC_MSG_CHECKING([for usb_get_string_simple])
+ AC_TRY_LINK_FUNC(usb_get_string_simple, [ AC_MSG_RESULT([yes]) ],
+ [ AC_MSG_ERROR([your libusb is too old. install version 0.1.7 or above]) ])
+
+ CPPFLAGS="$saved_CPPFLAGS"
+ LIBS="$saved_LIBS"
fi
+AC_SUBST(LIBUSB_CFLAGS)
+AC_SUBST(LIBUSB_LIBS)
-AC_MSG_RESULT([enable libusb support : $use_libusb])
-
if test x$use_libusb = xtrue; then
AC_DEFINE(HAVE_LIBUSB,1, [Libusb is available])
fi
+AC_MSG_RESULT([enable libusb support : $use_libusb])
# --enable-usbdropdir=DIR
AC_ARG_ENABLE(usbdropdir,
More information about the Pcsclite-cvs-commit
mailing list