Comments
Patch
===================================================================
@@ -136,8 +136,8 @@
NEED_PCI := yes
endif
+ifeq ($(CONFIG_FT2232SPI), yes)
FTDILIBS := $(shell pkg-config --libs libftdi 2>/dev/null || printf "%s" "-lftdi -lusb")
-ifeq ($(CONFIG_FT2232SPI), yes)
# This is a totally ugly hack.
FEATURE_CFLAGS += $(shell LC_ALL=C grep -q "FTDISUPPORT := yes" .features && printf "%s" "-D'FT2232_SPI_SUPPORT=1'")
FEATURE_LIBS += $(shell LC_ALL=C grep -q "FTDISUPPORT := yes" .features && printf "%s" "$(FTDILIBS)")
@@ -280,7 +280,8 @@
@rm -f .featuretest.c .featuretest
else
features: compiler
- @echo "FEATURES := yes" > .features
+ @echo "FEATURES := yes" > .features.tmp
+ @$(DIFF) -q .features.tmp .features >/dev/null 2>&1 && rm .features.tmp || mv .features.tmp .features
endif
install: $(PROGRAM)
Fix Makefile dependencies if FT2232SPI is not selected. .features was always regenerated in that case, triggering whole-project recompiles even if nothing changed. If you want to test, run make distclean make CONFIG_INTERNAL=no CONFIG_SERPROG=no CONFIG_SATASII=no CONFIG_DRKAISER=no CONFIG_NIC3COM=no CONFIG_BUSPIRATESPI=no CONFIG_FT2232SPI=no CONFIG_DUMMY=yes make CONFIG_INTERNAL=no CONFIG_SERPROG=no CONFIG_SATASII=no CONFIG_DRKAISER=no CONFIG_NIC3COM=no CONFIG_BUSPIRATESPI=no CONFIG_FT2232SPI=no CONFIG_DUMMY=yes Without the patch, you get a full recompile on the second make call. With the patch, make notices that nothing changed and thus does nothing. Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>