guix/gnu/packages/patches/flashrom-use-libftdi1.patch
Mark H Weaver 42dc3af5bf gnu: Add flashrom.
* gnu/packages/patches/flashrom-use-libftdi1.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/admin.scm (flashrom): New variable.
2014-08-05 20:00:29 -04:00

71 lines
2.9 KiB
Diff

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.
Patch by Kyösti Mälkki <kyosti.malkki@gmail.com>.
See <http://patchwork.coreboot.org/patch/3904/>.
--- flashrom/Makefile.orig 2013-08-13 18:00:00.000000000 -0400
+++ flashrom/Makefile 2014-08-05 03:10:40.217145375 -0400
@@ -492,19 +492,21 @@
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_USB here because that would transform libftdi auto-enabling
@@ -781,6 +783,7 @@
endif
define FTDI_TEST
+#include <stddef.h>
#include <ftdi.h>
struct ftdi_context *ftdic = NULL;
int main(int argc, char **argv)
@@ -793,6 +796,7 @@
export FTDI_TEST
define FTDI_232H_TEST
+#include <stddef.h>
#include <ftdi.h>
enum ftdi_chip_type type = TYPE_232H;
endef
@@ -826,15 +830,15 @@
features: compiler
@echo "FEATURES := yes" > .features.tmp
-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