Allow to compile out serprog completely

If CONFIG_SERPROG is not set, no stubs and no data of serprog will
remain.

Side benefit: This kills a few dozen lines of code.

r678, r679 and r680 made this possible. Once "Only list available
programers in usage()" is committed, even the usage message will be
adjusted automatically.

Corresponding to flashrom svn r681.

Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Acked-by: Stefan Reinauer <stepan@coresystems.de>
diff --git a/Makefile b/Makefile
index d7fb071..0141bef 100644
--- a/Makefile
+++ b/Makefile
@@ -49,7 +49,7 @@
 	sst49lfxxxc.o sst_fwhub.o layout.o cbtable.o flashchips.o physmap.o \
 	flashrom.o w39v080fa.o sharplhf00l04.o w29ee011.o spi.o it87spi.o \
 	ichspi.o w39v040c.o sb600spi.o wbsio_spi.o m29f002.o internal.o \
-	dummyflasher.o pcidev.o nic3com.o satasii.o ft2232_spi.o serprog.o \
+	dummyflasher.o pcidev.o nic3com.o satasii.o ft2232_spi.o \
 	print.o
 
 all: pciutils features dep $(PROGRAM)
@@ -64,15 +64,21 @@
 
 SVNDEF := -D'FLASHROM_VERSION="$(VERSION)"'
 
+# Always enable serprog for now. Needs to be disabled on Windows.
+CONFIG_SERPROG = yes
+
+ifeq ($(CONFIG_SERPROG), yes)
+FEATURE_CFLAGS += -D'SERPROG_SUPPORT=1'
+OBJS += serprog.o
+endif
+
+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" "-lftdi")
+
 $(PROGRAM): $(OBJS)
 	$(CC) $(LDFLAGS) -o $(PROGRAM) $(OBJS) $(LIBS) $(FEATURE_LIBS)
 
-FEATURE_CFLAGS = $(shell LC_ALL=C grep -q "FTDISUPPORT := yes" .features && printf "%s" "-D'FT2232_SPI_SUPPORT=1'")
-# Always enable serprog for now. Needs to be disabled on Windows.
-FEATURE_CFLAGS += -D'SERPROG_SUPPORT=1'
-
-FEATURE_LIBS = $(shell LC_ALL=C grep -q "FTDISUPPORT := yes" .features && printf "%s" "-lftdi")
-
 # TAROPTIONS reduces information leakage from the packager's system.
 # If other tar programs support command line arguments for setting uid/gid of
 # stored files, they can be handled here as well.