[flashrom] [PATCH] Allow to compile out serprog completely
Carl-Daniel Hailfinger
c-d.hailfinger.devel.2006 at gmx.net
Wed Aug 12 18:03:13 CEST 2009
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.
Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006 at gmx.net>
Index: flashrom-serprog_compileout/flash.h
===================================================================
--- flashrom-serprog_compileout/flash.h (Revision 680)
+++ flashrom-serprog_compileout/flash.h (Arbeitskopie)
@@ -87,7 +87,9 @@
PROGRAMMER_SATASII,
PROGRAMMER_IT87SPI,
PROGRAMMER_FT2232SPI,
+#if SERPROG_SUPPORT == 1
PROGRAMMER_SERPROG,
+#endif
PROGRAMMER_INVALID /* This must always be the last entry. */
};
Index: flashrom-serprog_compileout/serprog.c
===================================================================
--- flashrom-serprog_compileout/serprog.c (Revision 680)
+++ flashrom-serprog_compileout/serprog.c (Arbeitskopie)
@@ -23,9 +23,6 @@
#include <stdlib.h>
#include <unistd.h>
#include "flash.h"
-
-#if SERPROG_SUPPORT == 1
-
#include <string.h>
#include <ctype.h>
#include <fcntl.h>
@@ -774,42 +771,3 @@
sp_opbuf_usage += 5;
sp_prev_was_write = 0;
}
-
-#else
-
-int serprog_init(void)
-{
- fprintf(stderr, "Serial programmer support was not compiled in\n");
- exit(1);
-}
-
-int serprog_shutdown(void)
-{
- fprintf(stderr, "Serial programmer support was not compiled in\n");
- exit(1);
-}
-
-void serprog_chip_writeb(uint8_t val, chipaddr addr)
-{
- fprintf(stderr, "Serial programmer support was not compiled in\n");
- exit(1);
-}
-
-uint8_t serprog_chip_readb(const chipaddr addr)
-{
- fprintf(stderr, "Serial programmer support was not compiled in\n");
- exit(1);
-}
-
-void serprog_chip_readn(uint8_t *buf, const chipaddr addr, size_t len)
-{
- fprintf(stderr, "Serial programmer support was not compiled in\n");
- exit(1);
-}
-
-void serprog_delay(int delay)
-{
- fprintf(stderr, "Serial programmer support was not compiled in\n");
- exit(1);
-}
-#endif
Index: flashrom-serprog_compileout/Makefile
===================================================================
--- flashrom-serprog_compileout/Makefile (Revision 680)
+++ flashrom-serprog_compileout/Makefile (Arbeitskopie)
@@ -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)"'
-$(PROGRAM): $(OBJS)
- $(CC) $(LDFLAGS) -o $(PROGRAM) $(OBJS) $(LIBS) $(FEATURE_LIBS)
+# Always enable serprog for now. Needs to be disabled on Windows.
+CONFIG_SERPROG = yes
-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.
+ifeq ($(CONFIG_SERPROG), yes)
FEATURE_CFLAGS += -D'SERPROG_SUPPORT=1'
+OBJS += serprog.o
+endif
-FEATURE_LIBS = $(shell LC_ALL=C grep -q "FTDISUPPORT := yes" .features && printf "%s" "-lftdi")
+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)
+
# 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.
Index: flashrom-serprog_compileout/flashrom.c
===================================================================
--- flashrom-serprog_compileout/flashrom.c (Revision 680)
+++ flashrom-serprog_compileout/flashrom.c (Arbeitskopie)
@@ -139,6 +139,7 @@
.delay = internal_delay,
},
+#if SERPROG_SUPPORT == 1
{
.name = "serprog",
.init = serprog_init,
@@ -155,6 +156,7 @@
.chip_writen = fallback_chip_writen,
.delay = serprog_delay,
},
+#endif
{}, /* This entry corresponds to PROGRAMMER_INVALID. */
};
--
http://www.hailfinger.org/
More information about the flashrom
mailing list