| AC_INIT(libftdi, 0.20) |
| AM_INIT_AUTOMAKE |
| AM_CONFIG_HEADER(config.h) |
| |
| AC_LANG_C |
| AC_PROG_CC |
| AM_PROG_LIBTOOL |
| AC_PROG_CXX |
| |
| dnl check for libusb-config |
| AC_CHECK_TOOL(HAVELIBUSB, libusb-config) |
| |
| if test ! -z "$HAVELIBUSB"; then |
| LIBUSB_CFLAGS=`$HAVELIBUSB --cflags` |
| LIBUSB_LIBS=`$HAVELIBUSB --libs` |
| |
| CFLAGS="$CFLAGS $LIBUSB_CFLAGS" |
| LIBS="$LIBS $LIBUSB_LIBS" |
| else |
| AC_MSG_ERROR([*** libusb-config not found. You need a working libusb installation.]) |
| fi |
| |
| dnl check for version of libusb |
| AC_MSG_CHECKING([if libusb version is >= 0.1.7]) |
| libusb_version_needed="1007" |
| libusb_version=`$HAVELIBUSB --version | sed -e "s/libusb //" | awk 'BEGIN { FS = "."; } { printf "%d", ($''1 * 1000 + $''2) * 1000 + $''3;}'` |
| |
| if test $libusb_version -lt $libusb_version_needed; then |
| AC_MSG_RESULT(no) |
| AC_MSG_ERROR([*** libusb is too old ($libusb_version). You need a libusb installation newer or equal to 0.1.7.]) |
| else |
| AC_MSG_RESULT(yes) |
| fi |
| |
| ENABLE_ASYNC_MODE=0 |
| AC_ARG_WITH(async-mode, |
| [ --with-async-mode enable experimental async mode. Linux only.], |
| [ |
| AC_MSG_CHECKING(for experimental linux async mode) |
| if test "$withval" != "no"; then |
| ENABLE_ASYNC_MODE=1 |
| CFLAGS="$CFLAGS -DLIBFTDI_LINUX_ASYNC_MODE" |
| AC_MSG_RESULT(yes) |
| else |
| AC_MSG_RESULT(no) |
| fi |
| ]) |
| AC_SUBST(ENABLE_ASYNC_MODE) |
| |
| AC_ARG_WITH(examples, |
| AS_HELP_STRING([--without-examples], [disable example programs])) |
| AM_CONDITIONAL(BUILD_EXAMPLES, [test "x$with_examples" != "xno"]) |
| |
| LIBFTDI_MODULES= |
| LIBFTDI_MODULES_PKGCONFIG= |
| |
| dnl libftdi C++ wrapper. Needs boost. |
| AX_BOOST_BASE([1.33]) |
| ENABLE_LIBFTDIPP=0 |
| AC_MSG_CHECKING(if we can build the C++ wrapper) |
| AC_ARG_ENABLE(libftdipp, |
| AS_HELP_STRING([--enable-libftdipp], |
| [enable libftdi C++ wrapper. Needs boost (default: auto)]), |
| [ |
| if test "$enableval" != "no"; then |
| if test "x$HAVE_BOOST" != "xyes"; then |
| AC_MSG_ERROR(Sorry, we need the boost library for the C++ wrapper) |
| fi |
| ENABLE_LIBFTDIPP=1 |
| fi |
| ], |
| [ |
| dnl Build the wrapper if we got the boost library |
| if test "x$HAVE_BOOST" = "xyes"; then |
| ENABLE_LIBFTDIPP=1 |
| fi |
| ]) |
| if test "x$ENABLE_LIBFTDIPP" = "x1"; then |
| LIBFTDI_MODULES="$LIBFTDI_MODULES ftdipp" |
| LIBFTDI_MODULES_PKGCONFIG="$LIBFTDI_MODULES_PKGCONFIG libftdipp.pc" |
| AC_MSG_RESULT(yes) |
| else |
| AC_MSG_RESULT(no) |
| fi |
| AM_CONDITIONAL(HAVE_LIBFTDIPP, [test "x$ENABLE_LIBFTDIPP" = "x1"]) |
| |
| dnl check for doxygen |
| AC_ARG_WITH(docs, |
| AS_HELP_STRING([--without-docs], [disable doxygen usage])) |
| if test "x$with_docs" != "xno"; then |
| AC_PATH_PROG(DOXYGEN, doxygen) |
| else |
| DOXYGEN= |
| fi |
| AM_CONDITIONAL(HAVE_DOXYGEN, test -n $DOXYGEN) |
| |
| dnl ============================ |
| dnl Bindings for other languages |
| dnl == |
| |
| dnl =============== |
| dnl Checks for SWIG |
| dnl =============== |
| AC_PATH_PROG([SWIG], [swig]) |
| AM_CONDITIONAL(HAVE_SWIG, test "$SWIG") |
| |
| dnl ================= |
| dnl Checks for Python |
| dnl ================= |
| AM_PATH_PYTHON([2.0], |
| [], |
| [AC_MSG_WARN([Python not found. Python is required to build presage python binding. Python can be obtained from http://www.pyth |
| on.org])]) |
| if test "$PYTHON" |
| then |
| python_include_path=`$PYTHON -c "import distutils.sysconfig; print distutils.sysconfig.get_python_inc();"` |
| AC_CHECK_HEADERS([${python_include_path}/Python.h], |
| [have_python_header=true], |
| [AC_MSG_WARN([Python.h header file not found. Python development files are required to build presage python binding. Pyt |
| hon can be obtained from http://www.python.org])], |
| []) |
| fi |
| AM_CONDITIONAL(HAVE_PYTHON, test "$PYTHON" -a "x$have_python_header" = "xtrue") |
| |
| AC_ARG_ENABLE([python-binding], |
| AS_HELP_STRING([--enable-python-binding], |
| [build python binding (default=no)]), |
| [ac_enable_python_binding=$enableval], |
| [ac_enable_python_binding=no]) |
| if test "x$ac_enable_python_binding" = "xyes" |
| then |
| if test ! "$SWIG" -o ! "$PYTHON" -o ! "x$have_python_header" = "xtrue" |
| then |
| AC_MSG_WARN([Python binding for libftdi cannot be built. Ensure that SWIG and Python packages are available.]) |
| fi |
| else |
| AC_MSG_NOTICE([Python binding for libftdi will not be built.]) |
| AC_MSG_NOTICE([Enable Python binding module building with --enable-python-binding]) |
| fi |
| AM_CONDITIONAL(ENABLE_PYTHON_BINDING, test "x$ac_enable_python_binding" = "xyes") |
| |
| if test "$SWIG" -a "$PYTHON" -a "x$have_python_header" = "xtrue" -a "x$ac_enable_python_binding" = "xyes" |
| then |
| AC_MSG_NOTICE([Python binding for libftdi will be built.]) |
| build_python_binding="yes" |
| else |
| build_python_binding="no" |
| fi |
| |
| AC_SUBST(LIBFTDI_MODULES) |
| AC_SUBST(LIBFTDI_MODULES_PKGCONFIG) |
| |
| AC_CONFIG_FILES([libftdi-config],[chmod a+x libftdi-config]) |
| AC_CONFIG_FILES(Makefile src/Makefile bindings/Makefile bindings/python/Makefile bindings/python/setup.py examples/Makefile doc/Doxyfile doc/Makefile libftdi.pc libftdi.spec) |
| |
| if test "x$ENABLE_LIBFTDIPP" = "x1"; then |
| AC_CONFIG_FILES(ftdipp/Makefile libftdipp.pc) |
| fi |
| |
| AC_OUTPUT |