From a2937145799999fb482cff2d2faf4925f335005d Mon Sep 17 00:00:00 2001 From: Raymond Danks Date: Fri, 27 Apr 2012 08:46:55 -0600 Subject: [PATCH] nvramtool: Allow build under Cygwin To build under Cygwin, nvramtool depends upon the package ioperm: http://openwince.sourceforge.net/ioperm/ for sys/io.h and sys/perm.h. This change causes the nvramtool make to correctly include and link against these headers and libraries. Change-Id: If6cd9d324de7bc19830e0018844f42761b28ddd3 Signed-off-by: Raymond Danks Reviewed-on: http://review.coreboot.org/940 Tested-by: build bot (Jenkins) Reviewed-by: Ronald G. Minnich --- util/nvramtool/Makefile | 4 ++++ util/nvramtool/Makefile.inc | 9 +++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/util/nvramtool/Makefile b/util/nvramtool/Makefile index 2a143b7b47..063bb1acd6 100644 --- a/util/nvramtool/Makefile +++ b/util/nvramtool/Makefile @@ -42,6 +42,10 @@ endif ifeq ($(OS_ARCH), NetBSD) LDFLAGS = -l$(shell uname -p) endif +ifeq ($(shell uname -o), Cygwin) +LDFLAGS = -lioperm +CFLAGS += -D__GLIBC__ +endif all: dep $(PROGRAM) diff --git a/util/nvramtool/Makefile.inc b/util/nvramtool/Makefile.inc index a70896c93b..b356720e2d 100644 --- a/util/nvramtool/Makefile.inc +++ b/util/nvramtool/Makefile.inc @@ -25,7 +25,12 @@ ifeq ($(OS_ARCH), Darwin) NVRAMTOOLFLAGS += -framework DirectHW endif ifeq ($(OS_ARCH), NetBSD) -NVRAMTOOLFLAGS += -l$(shell uname -p) +NVRAMTOOLLDLFLAGS = -l$(shell uname -p) +endif +ifeq ($(shell uname -o), Cygwin) +NVRAMTOOLFLAGS += -O2 -g -Wall -W -D__GLIBC__ +NVRAMTOOLLDFLAGS = -lioperm +HOSTCFLAGS = endif nvramtoolobj := @@ -43,6 +48,6 @@ $(objutil)/nvramtool/%.o: $(top)/util/nvramtool/%.c $(objutil)/nvramtool/nvramtool: $(objutil)/nvramtool $(objutil)/nvramtool/accessors $(objutil)/nvramtool/cli $(addprefix $(objutil)/nvramtool/,$(nvramtoolobj)) printf " HOSTCC $(subst $(objutil)/,,$(@)) (link)\n" - $(HOSTCC) $(NVRAMTOOLFLAGS) -o $@ $(addprefix $(objutil)/nvramtool/,$(nvramtoolobj)) + $(HOSTCC) $(NVRAMTOOLFLAGS) -o $@ $(addprefix $(objutil)/nvramtool/,$(nvramtoolobj)) $(NVRAMTOOLLDFLAGS)