Relicensed C++ wrapper under GPLv2 + linking exception
[libftdi] / configure.in
CommitLineData
6686948c
TH
1AC_INIT(libftdi, 0.15)
2AM_INIT_AUTOMAKE
a3da1d95
GE
3AM_CONFIG_HEADER(config.h)
4
9b254687
GE
5AC_LANG_C
6AC_PROG_CC
7AM_PROG_LIBTOOL
6686948c 8AC_PROG_CXX
ed475f55
TJ
9
10dnl check for libusb-config
11AC_PATH_PROG(HAVELIBUSB, libusb-config, $PATH)
12
13if test ! -z "$HAVELIBUSB"; then
2251855f 14 LIBUSB_CFLAGS=`$HAVELIBUSB --cflags`
ed475f55
TJ
15 LIBUSB_LIBS=`$HAVELIBUSB --libs`
16
17 CFLAGS="$CFLAGS $LIBUSB_CFLAGS"
18 LIBS="$LIBS $LIBUSB_LIBS"
19else
20 AC_MSG_ERROR([*** libusb-config not found. You need a working libusb installation.])
21fi
22
23dnl check for version of libusb
24AC_MSG_CHECKING([if libusb version is >= 0.1.7])
25libusb_version_needed="1007"
26libusb_version=`$HAVELIBUSB --version | sed -e "s/libusb //" | awk 'BEGIN { FS = "."; } { printf "%d", ($''1 * 1000 + $''2) * 1000 + $''3;}'`
27
28if test $libusb_version -lt $libusb_version_needed; then
29 AC_MSG_RESULT(no)
30 AC_MSG_ERROR([*** libusb is too old ($libusb_version). You need a libusb installation newer or equal to 0.1.7.])
31else
32 AC_MSG_RESULT(yes)
33fi
34
22592e17 35ENABLE_ASYNC_MODE=0
f01d7ca6
TJ
36AC_ARG_WITH(async-mode,
37[ --with-async-mode enable experimental async mode. Linux only.],
38[
39 AC_MSG_CHECKING(for experimental linux async mode)
40 if test "$withval" != "no"; then
22592e17 41 ENABLE_ASYNC_MODE=1
f01d7ca6
TJ
42 CFLAGS="$CFLAGS -DLIBFTDI_LINUX_ASYNC_MODE"
43 AC_MSG_RESULT(yes)
44 else
45 AC_MSG_RESULT(no)
46 fi
47])
22592e17 48AC_SUBST(ENABLE_ASYNC_MODE)
f01d7ca6 49
b1e8fa64
TJ
50LIBFTDI_MODULES=
51LIBFTDI_MODULES_PKGCONFIG=
52
53dnl libftdi C++ wrapper. Needs boost.
54AX_BOOST_BASE([1.33])
55ENABLE_LIBFTDIPP=0
56AC_MSG_CHECKING(if we can build the C++ wrapper)
57AC_ARG_ENABLE(libftdipp,
58 AS_HELP_STRING([--enable-libftdipp],
59 [enable libftdi C++ wrapper. Needs boost (default: auto)]),
60[
61 if test "$enableval" != "no"; then
62 if test "x$HAVE_BOOST" != "xyes"; then
63 AC_MSG_ERROR(Sorry, we need the boost library for the C++ wrapper)
64 fi
65 ENABLE_LIBFTDIPP=1
66 fi
67],
68[
69 dnl Build the wrapper if we got the boost library
70 if test "x$HAVE_BOOST" = "xyes"; then
71 ENABLE_LIBFTDIPP=1
72 fi
73])
74if test "x$ENABLE_LIBFTDIPP" = "x1"; then
75 LIBFTDI_MODULES="$LIBFTDI_MODULES ftdipp"
76 LIBFTDI_MODULES_PKGCONFIG="$LIBFTDI_MODULES_PKGCONFIG libftdipp.pc"
77 AC_MSG_RESULT(yes)
78else
79 AC_MSG_RESULT(no)
80fi
b0c551aa 81AM_CONDITIONAL(HAVE_LIBFTDIPP, [test "x$ENABLE_LIBFTDIPP" = "x1"])
b1e8fa64 82
1941414d 83dnl check for doxygen
29bb689c 84AC_PATH_PROG(DOXYGEN, doxygen)
0969b19b 85AM_CONDITIONAL(HAVE_DOXYGEN, test -n $DOXYGEN)
1941414d 86
b1e8fa64
TJ
87AC_SUBST(LIBFTDI_MODULES)
88AC_SUBST(LIBFTDI_MODULES_PKGCONFIG)
89
5efa6083 90AC_OUTPUT([libftdi-config],[chmod a+x libftdi-config])
b1e8fa64
TJ
91AC_OUTPUT(Makefile src/Makefile examples/Makefile doc/Doxyfile doc/Makefile libftdi.pc libftdi.spec)
92
93if test "x$ENABLE_LIBFTDIPP" = "x1"; then
94 AC_OUTPUT(ftdipp/Makefile libftdipp.pc)
95fi