From be62d3fc07194ec13f091aa06beff0a032f1a418 Mon Sep 17 00:00:00 2001 From: Stefan Tauner Date: Sat, 10 Jan 2015 09:32:44 +0000 Subject: Allow to easily set a global path prefix for libraries and include files Gets rid of a few DOS-specific Makefile hacks. Corresponding to flashrom svn r1863. Signed-off-by: Stefan Tauner Acked-by: Stefan Tauner --- Makefile | 18 +++++++----------- README | 4 ++-- 2 files changed, 9 insertions(+), 13 deletions(-) diff --git a/Makefile b/Makefile index 1bbc4e633..7d3da083e 100644 --- a/Makefile +++ b/Makefile @@ -39,7 +39,8 @@ CFLAGS ?= -Os -Wall -Wshadow EXPORTDIR ?= . AR ?= ar RANLIB ?= ranlib -DOSLIBS_BASE ?= .. +LIBS_BASE ?= .. + # The following parameter changes the default programmer that will be used if there is no -p/--programmer # argument given when running flashrom. The predefined setting does not enable any default so that every # user has to declare the programmer he wants to use on every run. The rationale for this to be not set @@ -66,6 +67,9 @@ ifeq ($(WARNERROR), yes) CFLAGS += -Werror endif +CPPFLAGS += -I$(LIBS_BASE)/include +LDFLAGS += -L$(LIBS_BASE)/lib + ############################################################################### # General OS-specific settings. # 1. Prepare for later by gathering information about host and target OS @@ -115,12 +119,9 @@ endif ifeq ($(TARGET_OS), DOS) EXEC_SUFFIX := .exe -CPPFLAGS += -I$(DOSLIBS_BASE)/libgetopt # DJGPP has odd uint*_t definitions which cause lots of format string warnings. CFLAGS += -Wno-format -# FIXME Check if we can achieve the same effect with -L../libgetopt -lgetopt LIBS += -lgetopt -LDFLAGS += -L$(DOSLIBS_BASE)/libgetopt/ # Bus Pirate, Serprog and PonyProg are not supported under DOS (missing serial support). ifeq ($(CONFIG_BUSPIRATE_SPI), yes) UNSUPPORTED_FEATURES += CONFIG_BUSPIRATE_SPI=yes @@ -710,12 +711,9 @@ PCILIBS += -lpciutils -lpci # For (i386|x86_64)_iopl(2). PCILIBS += -l$(shell uname -p) else -ifeq ($(TARGET_OS), DOS) -CPPFLAGS += -I$(DOSLIBS_BASE)/libpci/include -LDFLAGS += -L$(DOSLIBS_BASE)/libpci/lib/ -PCILIBS += -lpci -else + PCILIBS += -lpci + ifeq ($(TARGET_OS), OpenBSD) # For (i386|amd64)_iopl(2). PCILIBS += -l$(shell uname -m) @@ -723,8 +721,6 @@ else ifeq ($(TARGET_OS), Darwin) # DirectHW framework can be found in the DirectHW library. PCILIBS += -framework IOKit -framework DirectHW -else -endif endif endif endif diff --git a/README b/README index b3e50a65e..b8dec83f5 100644 --- a/README +++ b/README @@ -106,9 +106,9 @@ To cross-compile on Linux for DOS: You will need the following library source trees containing their compiled static libraries either in the parent directory of the flashrom source or - specify the base folder on compile time with the DOSLIBS_BASE parameter. + specify the base folder on compile time with the LIBS_BASE parameter. The default as described above is equal to calling - 'make djgpp-dos DOSLIBS_BASE=..' + 'make djgpp-dos LIBS_BASE=..' To get and build said libraries... Download pciutils 3.1.5 and apply http://flashrom.org/File:Pciutils.patch.gz -- cgit v1.2.3