[flashrom] [PATCH 3/4] FTDI: switch to libftdi-1.0

Kyösti Mälkki kyosti.malkki at gmail.com
Sat Mar 30 19:31:34 CET 2013


Update to libftdi-1.0 is advertised as a drop-in replacement for libftdi,
running on top of libusb-1.0. This also removes indirect dependency to
libusb-0.1.

NOTE: pre-compiled libftdi-1.0 packages may not be available yet
NOTE: package named libftdi1 may install libftdi-0.19 (debian)

Signed-off-by: Kyösti Mälkki <kyosti.malkki at gmail.com>
---
 Makefile | 18 +++++++++++-------
 1 file changed, 11 insertions(+), 7 deletions(-)

diff --git a/Makefile b/Makefile
index 96a7987..561c67c 100644
--- a/Makefile
+++ b/Makefile
@@ -489,19 +489,21 @@ endif
 ifeq ($(CONFIG_FT2232_SPI), yes)
 # This is a totally ugly hack.
 FEATURE_CFLAGS += $(shell LC_ALL=C grep -q "FTDISUPPORT := yes" .features && printf "%s" "-D'CONFIG_FT2232_SPI=1'")
-NEED_FTDI := yes
+NEED_FTDI1 := yes
 PROGRAMMER_OBJS += ft2232_spi.o
 endif
 
 ifeq ($(CONFIG_USBBLASTER_SPI), yes)
 # This is a totally ugly hack.
 FEATURE_CFLAGS += $(shell LC_ALL=C grep -q "FTDISUPPORT := yes" .features && printf "%s" "-D'CONFIG_USBBLASTER_SPI=1'")
-NEED_FTDI := yes
+NEED_LIBUSB1 := yes
+NEED_FTDI1 := yes
 PROGRAMMER_OBJS += usbblaster_spi.o
 endif
 
-ifeq ($(NEED_FTDI), yes)
-FTDILIBS := $(shell pkg-config --libs libftdi 2>/dev/null || printf "%s" "-lftdi -lusb")
+ifeq ($(NEED_FTDI1), yes)
+FTDILIBS := $(shell pkg-config --libs libftdi1 2>/dev/null || printf "%s" "-lftdi1 -lusb-1.0")
+FEATURE_CFLAGS += $(shell pkg-config --cflags libftdi1 2>/dev/null)
 FEATURE_CFLAGS += $(shell LC_ALL=C grep -q "FT232H := yes" .features && printf "%s" "-D'HAVE_FT232H=1'")
 FEATURE_LIBS += $(shell LC_ALL=C grep -q "FTDISUPPORT := yes" .features && printf "%s" "$(FTDILIBS)")
 # We can't set NEED_LIBUSB1 here because that would transform libftdi auto-enabling
@@ -793,6 +795,7 @@ endef
 export LIBUSB1_ERROR_NAME_TEST
 
 define FTDI_TEST
+#include <stddef.h>
 #include <ftdi.h>
 struct ftdi_context *ftdic = NULL;
 int main(int argc, char **argv)
@@ -805,6 +808,7 @@ endef
 export FTDI_TEST
 
 define FTDI_232H_TEST
+#include <stddef.h>
 #include <ftdi.h>
 enum ftdi_chip_type type = TYPE_232H;
 endef
@@ -845,15 +849,15 @@ ifeq ($(CHECK_LIBUSB1), yes)
 		( echo "found."; echo "LIBUSB1_ERROR_NAME := yes" >> .features.tmp ) ||	\
 		( echo "not found." )
 endif
-ifeq ($(NEED_FTDI), yes)
+ifeq ($(NEED_FTDI1), yes)
 	@printf "Checking for FTDI support... "
 	@echo "$$FTDI_TEST" > .featuretest.c
-	@$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) .featuretest.c -o .featuretest$(EXEC_SUFFIX) $(FTDILIBS) $(LIBS) >/dev/null 2>&1 &&	\
+	@$(CC) $(CPPFLAGS) $(CFLAGS) $(FEATURE_CFLAGS) $(LDFLAGS) .featuretest.c -o .featuretest$(EXEC_SUFFIX) $(FTDILIBS) $(LIBS) >/dev/null 2>&1 &&	\
 		( echo "found."; echo "FTDISUPPORT := yes" >> .features.tmp ) ||	\
 		( echo "not found."; echo "FTDISUPPORT := no" >> .features.tmp )
 	@printf "Checking for FT232H support in libftdi... "
 	@echo "$$FTDI_232H_TEST" >> .featuretest.c
-	@$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) .featuretest.c -o .featuretest$(EXEC_SUFFIX) $(FTDILIBS) $(LIBS) >/dev/null 2>&1 &&	\
+	@$(CC) $(CPPFLAGS) $(CFLAGS) $(FEATURE_CFLAGS) $(LDFLAGS) .featuretest.c -o .featuretest$(EXEC_SUFFIX) $(FTDILIBS) $(LIBS) >/dev/null 2>&1 &&	\
 		( echo "found."; echo "FT232H := yes" >> .features.tmp ) ||	\
 		( echo "not found."; echo "FT232H := no" >> .features.tmp )
 endif
-- 
1.8.1.1





More information about the flashrom mailing list