#define SR_CONFIG_H /* To stop multiple inclusions. */])
AH_BOTTOM([#endif /* SR_CONFIG_H */])
+AC_CANONICAL_HOST
+
# Checks for programs.
AC_PROG_CC
AC_PROG_CXX
# Required for per-target flags or subdir-objects with C sources.
AM_PROG_CC_C_O
+# Get compiler versions.
+SR_PROG_VERSION([$CC], [sr_cc_version])
+SR_PROG_VERSION([$CXX], [sr_cxx_version])
+
# Check for optional make features.
-SR_PROG_MAKE_NO_PRINT_DIRECTORY
SR_PROG_MAKE_ORDER_ONLY
# Initialize libtool.
# FreeBSD comes with an "integrated" libusb-1.0-style USB API.
# This means libusb-1.0 is always available; no need to check for it.
-AS_CASE([$host], [*freebsd*], [sr_have_libusb=yes])
+# On Windows, require the latest version we can get our hands on,
+# until the new generic event handling has seen an official release.
+AS_CASE([$host_os],
+ [freebsd*], [sr_libusb_req='libusb-1.0' sr_have_libusb=yes],
+ [mingw*], [sr_libusb_req='libusb-1.0 >= 1.0.20'],
+ [sr_libusb_req='libusb-1.0 >= 1.0.16'])
SR_ARG_OPT_PKG([libusb], [LIBUSB_1_0], [NEED_USB],
- [libusb-1.0 >= 1.0.16])
+ [$sr_libusb_req])
SR_ARG_OPT_PKG([librevisa], [LIBREVISA], [NEED_VISA],
[librevisa >= 0.0.20130412])
AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <ieee1284.h>]],
[[(void) ieee1284_open(0, 0, 0);]])],
[sr_have_libieee1284=yes], [sr_have_libieee1284=no])
- sr_save_LIBS=$LIBS
+ LIBS=$sr_save_LIBS
])
AS_IF([test "x$sr_have_libieee1284" = xyes],
[SR_PREPEND([SR_EXTRA_LIBS], [-lieee1284])])
SR_DRIVER([GMC MH 1x/2x], [gmc-mh-1x-2x], [libserialport])
SR_DRIVER([Hameg HMO], [hameg-hmo], [libserialport])
SR_DRIVER([Hantek DSO], [hantek-dso], [libusb])
+SR_DRIVER([Hung-Chang DSO-2100], [hung-chang-dso-2100], [libieee1284])
SR_DRIVER([Ikalogic Scanalogic-2], [ikalogic-scanalogic2], [libusb])
SR_DRIVER([Ikalogic Scanaplus], [ikalogic-scanaplus], [libftdi])
SR_DRIVER([Kecheng KC-330B], [kecheng-kc-330b], [libusb])
PKG_CHECK_MODULES([LIBSIGROKCXX], [$SR_PKGLIBS_CXX])
PKG_CHECK_MODULES([PYSIGROK], [$SR_PKGLIBS_PYTHON $SR_PKGLIBS_CXX])
])
+
+# Check for specific libusb features, now that we know the CFLAGS.
+AC_LANG([C])
+sr_save_cflags=$CFLAGS
+CFLAGS="$LIBSIGROK_CFLAGS $CFLAGS"
+AC_CHECK_TYPES([libusb_os_handle],
+ [sr_have_libusb_os_handle=yes], [sr_have_libusb_os_handle=no],
+ [[#include <libusb.h>]])
+CFLAGS=$sr_save_cflags
+AM_COND_IF([NEED_USB], [AS_CASE([$sr_have_libusb_os_handle:$host_os], [no:mingw*],
+ [AC_MSG_ERROR([Windows builds require the event-abstraction branch of libusb])])])
+
sr_glib_version=`$PKG_CONFIG --modversion glib-2.0 2>&AS_MESSAGE_LOG_FD`
sr_libzip_version=`$PKG_CONFIG --modversion libzip 2>&AS_MESSAGE_LOG_FD`
- Prefix.......................... $prefix
- Building on..................... $build
- Building for.................... $host
+
+Compile configuration:
- C compiler...................... $CC
+ - C compiler version.............. $sr_cc_version
- C compiler flags................ $CFLAGS
- Additional C compiler flags..... $SR_EXTRA_CFLAGS
- C compiler warnings............. $SR_WFLAGS
- C++ compiler.................... $CXX
+ - C++ compiler version............ $sr_cxx_version
- C++ compiler flags.............. $CXXFLAGS
- C++ compiler warnings........... $SR_WXXFLAGS