Merge branch 'patches/dward' of git@gnuradio.org:jcorgan
[debian/gnuradio] / config / usrp_libusb.m4
index 107144e338842d8807e70e0c1759d238df4069a7..0c271e0f33e3d0600710d84cf9ec838e8bc92ed9 100644 (file)
@@ -1,4 +1,4 @@
-dnl Copyright 2003,2008 Free Software Foundation, Inc.
+dnl Copyright 2003,2008,2009 Free Software Foundation, Inc.
 dnl 
 dnl This file is part of GNU Radio
 dnl 
@@ -18,9 +18,9 @@ dnl the Free Software Foundation, Inc., 51 Franklin Street,
 dnl Boston, MA 02110-1301, USA.
 
 # $1 is $req_libusb1:
-#   yes : check libusb-1.0 
-#   no  : check libusb-0.12 
-#   ""  : check libusb-0.12 
+#   yes : check libusb-1.0
+#   no  : check libusb-0.12
+#   ""  : check libusb-0.12
 
 
 AC_DEFUN([USRP_LIBUSB], [
@@ -29,22 +29,17 @@ AC_DEFUN([USRP_LIBUSB], [
   if test [x]$1 = xyes; then
     PKG_CHECK_MODULES(USB, libusb-1.0, [have_libusb1=yes], [
       AC_LANG_PUSH(C)
-
       AC_CHECK_HEADERS([libusb-1.0/libusb.h], [have_libusb1=yes],
                        [libusbok=no; AC_MSG_RESULT([USRP requires libusb-1.0. libusb.h not found. See http://www.libusb.org])])
-
-      AC_SEARCH_LIBS(libusb_bulk_transfer, [usb], [USB_LIBS="$LIBS"],
+      AC_SEARCH_LIBS(libusb_bulk_transfer, [usb-1.0], [USB_LIBS="$LIBS"],
                      [libusbok=no; AC_MSG_RESULT([USRP requires libusb-1.0. libusb_bulk_transfer not found. See http://www.libusb.org])])
-
       AC_LANG_POP
     ])
   else
     PKG_CHECK_MODULES(USB, libusb, [], [
       AC_LANG_PUSH(C)
-
       AC_CHECK_HEADERS([usb.h], [],
                        [libusbok=no; AC_MSG_RESULT([USRP requires libusb. usb.h not found. See http://www.libusb.org])])
-
       save_LIBS="$LIBS"
       case "$host_os" in
         darwin*)
@@ -55,84 +50,19 @@ AC_DEFUN([USRP_LIBUSB], [
 
       AC_SEARCH_LIBS(usb_bulk_write, [usb], [USB_LIBS="$LIBS"],
                      [libusbok=no; AC_MSG_RESULT([USRP requires libusb. usb_bulk_write not found. See http://www.libusb.org])])
-
       LIBS="$save_LIBS"
-
       AC_LANG_POP
     ])
   fi
 
   if test x$libusbok = xyes; then
-    if test x$have_libusb1 = xyes; then
-      AC_DEFINE(HAVE_LIBUSB_1, [1], [Define if libusb-1.0 found])
+    if test x$USB_INCLUDEDIR != x; then
+      USB_INCLUDES="-I$USB_INCLUDEDIR"
+      AC_SUBST(USB_INCLUDES)
     fi
-    AC_OUTPUT_COMMANDS([
-      case "$CONFIG_OTHER" in
-      usrp*)
-        outfile=usrp/host/include/usrp/$CONFIG_OTHER
-        tmpfile=${outfile}T
-        dirname="sed s,^.*/,,g"
-
-        echo creating $outfile
-        cat > $tmpfile << _EOF_
-/*  -*- Mode: C++ -*-
-* --------------------------------------------------------------------
-* DO NOT EDIT THIS FILE!  It has been automatically generated
-* from:    configure.in and `echo $outfile|$dirname`.in
-* on host: `(hostname || uname -n) 2>/dev/null | sed 1q`
-* --------------------------------------------------------------------
-*/
-
-_EOF_
-        echo "#ifndef _`echo $outfile | $dirname | tr a-z. A-Z_`_" >> $tmpfile
-        echo "#define _`echo $outfile | $dirname | tr a-z. A-Z_`_" >> $tmpfile
-        echo >> $tmpfile
-
-        case "$CONFIG_OTHER" in
-        usrp_prims*)
-          echo '#include <usrp/usrp_slots.h>' >> $tmpfile
-          echo '#include <string>' >> $tmpfile
-          echo >> $tmpfile
-          ;;
-        usrp_basic*)
-          echo '#include <usrp/db_base.h>' >> $tmpfile
-          echo '#include <usrp/usrp_slots.h>' >> $tmpfile
-          echo '#include <string>' >> $tmpfile
-          echo '#include <vector>' >> $tmpfile
-          echo '#include <boost/utility.hpp>' >> $tmpfile
-          echo '#include <usrp/usrp_subdev_spec.h>' >> $tmpfile
-          echo >> $tmpfile
-          ;;
-        esac
-
-        if test x$have_libusb1 = xno; then
-          echo 'struct usb_device;'>> $tmpfile
-          echo 'struct usb_dev_handle;'>> $tmpfile
-          echo 'typedef struct usb_device libusb_device;' >> $tmpfile
-          echo 'typedef struct usb_dev_handle libusb_device_handle;' >> $tmpfile
-          echo >> $tmpfile
-        fi
-
-        if test x$have_libusb1 = xyes; then
-          echo 'struct libusb_device;' >> $tmpfile
-          echo 'struct libusb_device_handle;' >> $tmpfile
-          echo >> $tmpfile
-        fi
-
-        # The ugly but portable cpp stuff comes from here
-        infile=usrp/host/include/usrp/`echo $outfile | sed 's,.*/,,g;s,\..*$,,g'`.h.in
-        sed '/^##.*$/d' $infile >> $tmpfile 
-        mv ${tmpfile} ${outfile}
-        ;;
-      esac
-
-      ],[
-      have_libusb1=$have_libusb1
-    ])
-
-      AC_SUBST(USB_LIBS)
-      ifelse([$1], , :, [$1])
+    AC_SUBST(USB_LIBS)
+    ifelse([$2], , :, [$2])
   else
-      ifelse([$2], , :, [$2])
+    ifelse([$3], , :, [$3])
   fi
 ])