diff options
-rw-r--r-- | package/Config.in | 1 | ||||
-rw-r--r-- | package/libftdi/Config.in | 18 | ||||
-rw-r--r-- | package/libftdi/libftdi-0.19-01_pkgconfig_libusb.patch | 47 | ||||
-rw-r--r-- | package/libftdi/libftdi.mk | 23 |
4 files changed, 89 insertions, 0 deletions
diff --git a/package/Config.in b/package/Config.in index f56384de2..d95e7b5e8 100644 --- a/package/Config.in +++ b/package/Config.in @@ -303,6 +303,7 @@ menu "Hardware handling" source "package/libaio/Config.in" source "package/libraw1394/Config.in" source "package/tslib/Config.in" +source "package/libftdi/Config.in" source "package/libhid/Config.in" source "package/libiqrf/Config.in" source "package/libusb/Config.in" diff --git a/package/libftdi/Config.in b/package/libftdi/Config.in new file mode 100644 index 000000000..e334d1427 --- /dev/null +++ b/package/libftdi/Config.in @@ -0,0 +1,18 @@ +config BR2_PACKAGE_LIBFTDI + bool "libftdi" + select BR2_PACKAGE_LIBUSB + select BR2_PACKAGE_LIBUSB_COMPAT + help + Userspace access to FTDI USB interface chips + + http://www.intra2net.com/en/developer/libftdi/index.php + +if BR2_PACKAGE_LIBFTDI + +config BR2_PACKAGE_LIBTFDI_CPP + depends on BR2_INSTALL_LIBSTDCPP + bool "C++ bindings" + help + C++ bindings for libftdi + +endif # BR2_PACKAGE_LIBFTDI diff --git a/package/libftdi/libftdi-0.19-01_pkgconfig_libusb.patch b/package/libftdi/libftdi-0.19-01_pkgconfig_libusb.patch new file mode 100644 index 000000000..389291de0 --- /dev/null +++ b/package/libftdi/libftdi-0.19-01_pkgconfig_libusb.patch @@ -0,0 +1,47 @@ +--- + configure.in | 35 +++++++++++------------------------ + 1 file changed, 11 insertions(+), 24 deletions(-) + +--- a/configure.in ++++ b/configure.in +@@ -8,30 +8,17 @@ + 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;}'` ++dnl check for libusb ++PKG_CHECK_MODULES(LIBUSB, libusb >= 0.1.11) ++CFLAGS="$CFLAGS $LIBUSB_CFLAGS" ++LIBS="$LIBS $LIBUSB_LIBS" + +-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 ++dnl Check for recent pkg-config which supports Requires.private ++case `$PKG_CONFIG --version` in ++0.?|0.1[0-7]) PKGCONFIG_REQUIRES="Requires"; ;; ++*) PKGCONFIG_REQUIRES="Requires.private"; ;; ++esac ++AC_SUBST(PKGCONFIG_REQUIRES) + + ENABLE_ASYNC_MODE=0 + AC_ARG_WITH(async-mode, diff --git a/package/libftdi/libftdi.mk b/package/libftdi/libftdi.mk new file mode 100644 index 000000000..315fe167c --- /dev/null +++ b/package/libftdi/libftdi.mk @@ -0,0 +1,23 @@ +############################################################# +# +# libftdi +# +############################################################# +LIBFTDI_VERSION = 0.19 +LIBFTDI_SOURCE = libftdi-$(LIBFTDI_VERSION).tar.gz +LIBFTDI_SITE = http://www.intra2net.com/en/developer/libftdi/download/ +LIBFTDI_DEPENDENCIES = libusb-compat libusb +LIBFTDI_INSTALL_STAGING = YES + +LIBFTDI_AUTORECONF = YES + +LIBFDTI_CONF_OPT = --without-examples + +# configure detect it automaticaly so we need to force it +ifeq ($(BR2_PACKAGE_LIBTFDI_CPP),y) +LIBFDTI_CONF_OPT += --enable-libftdipp +else +LIBFDTI_CONF_OPT += --disable-libftdipp +endif + +$(eval $(call AUTOTARGETS,package,libftdi)) |