Imported Upstream version 3.2.2
[debian/gnuradio] / config / usrp_fusb_tech.m4
index c4de53b5bdf088879a4caa17154358ab0765c581..db857249b0d0f126b74f367afb795551bd0631e5 100644 (file)
@@ -1,5 +1,5 @@
 dnl
-dnl Copyright 2003 Free Software Foundation, Inc.
+dnl Copyright 2003,2008 Free Software Foundation, Inc.
 dnl 
 dnl This file is part of GNU Radio
 dnl 
@@ -19,45 +19,56 @@ dnl the Free Software Foundation, Inc., 51 Franklin Street,
 dnl Boston, MA 02110-1301, USA.
 dnl 
 
-AC_DEFUN([USRP_SET_FUSB_TECHNIQUE],[
-  AC_ARG_WITH(fusb-tech,
-       [  --with-fusb-tech=OS     set fast usb technique (auto)],
-               [cf_with_fusb_tech="$withval"],
-               [cf_with_fusb_tech="$host_os"])
-       
-
-  AC_CHECK_HEADER([linux/usbdevice_fs.h],
-       [x_have_usbdevice_fs_h=yes],
-       [x_have_usbdevice_fs_h=no])
-
-  AC_MSG_CHECKING([for fast usb technique to use])
-  case "$cf_with_fusb_tech" in
-    linux*)    if test x${x_have_usbdevice_fs_h} = xyes;
-               then
-                 FUSB_TECH=linux
-                else
-                 FUSB_TECH=generic
-               fi                      ;;
+# $1 is $enable_usrp:
+#   yes : do these tests
+#   no  : do not do these tests
+#   ""  : do these tests
 
-    darwin*)   FUSB_TECH=darwin        ;;
-    cygwin*|win*|mingw*)       FUSB_TECH=win32         ;;
-    *bsd*)
-               AC_MSG_CHECKING([for RA/WB])
-               AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <dev/usb/usb.h>]],
-                                                  [[struct usb_bulk_ra_wb_opt o;
-                                                    ioctl(0, USB_SET_BULK_RA, &o);]])],
-                                 [FUSB_TECH=ra_wb],
-                                 [FUSB_TECH=generic])          ;;
-    *)         FUSB_TECH=generic       ;;
-  esac 
+AC_DEFUN([USRP_SET_FUSB_TECHNIQUE],[
+  AC_ARG_WITH([fusb-tech],
+              AC_HELP_STRING([--with-fusb-tech=OS],
+                            [Set fast USB technique (default=auto)]),
+             [cf_with_fusb_tech="$withval"],
+             [cf_with_fusb_tech="$host_os"])
+  if test [x]$1 != xno; then
+      case "$cf_with_fusb_tech" in
+        linux*)
+          AC_CHECK_HEADER([linux/usbdevice_fs.h],
+                         [x_have_usbdevice_fs_h=yes],
+                          [x_have_usbdevice_fs_h=no])
+          if test x${x_have_usbdevice_fs_h} = xyes; then
+              FUSB_TECH=linux
+          else
+              FUSB_TECH=generic
+          fi
+          ;;
+        darwin*)
+          FUSB_TECH=darwin
+          ;;
+        cygwin*|win*|mingw*)
+          FUSB_TECH=win32
+          ;;
+        *bsd*)
+          AC_MSG_CHECKING([for RA/WB])
+          AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <dev/usb/usb.h>]],
+                                            [[struct usb_bulk_ra_wb_opt o;
+                                              ioctl(0, USB_SET_BULK_RA, &o);]])],
+                           [FUSB_TECH=ra_wb],
+                           [FUSB_TECH=generic])
+          ;;
+        *)
+          FUSB_TECH=generic
+          ;;
+      esac
 
-  AC_MSG_RESULT($FUSB_TECH)
-  AC_SUBST(FUSB_TECH)
+      AC_MSG_CHECKING([for fast usb technique to use])
+      AC_MSG_RESULT($FUSB_TECH)
+      AC_SUBST(FUSB_TECH)
+  fi
 
-  AM_CONDITIONAL(FUSB_TECH_darwin,   test $FUSB_TECH = darwin)
-  AM_CONDITIONAL(FUSB_TECH_win32,    test $FUSB_TECH = win32)
-  AM_CONDITIONAL(FUSB_TECH_generic,  test $FUSB_TECH = generic)
-  AM_CONDITIONAL(FUSB_TECH_linux,    test $FUSB_TECH = linux)
-  AM_CONDITIONAL(FUSB_TECH_ra_wb,    test $FUSB_TECH = ra_wb)
+  AM_CONDITIONAL(FUSB_TECH_darwin,   test x$FUSB_TECH = xdarwin)
+  AM_CONDITIONAL(FUSB_TECH_win32,    test x$FUSB_TECH = xwin32)
+  AM_CONDITIONAL(FUSB_TECH_generic,  test x$FUSB_TECH = xgeneric)
+  AM_CONDITIONAL(FUSB_TECH_linux,    test x$FUSB_TECH = xlinux)
+  AM_CONDITIONAL(FUSB_TECH_ra_wb,    test x$FUSB_TECH = xra_wb)
 ])
-