1## 2## Integration of nvramtool into the coreboot build system 3## 4## (C) 2005-2008 coresystems GmbH 5## written by Stefan Reinauer <[email protected]> 6## (C) 2012 secunet Security Networks AG 7## 8## SPDX-License-Identifier: GPL-2.0-only 9 10OS_ARCH = $(shell uname) 11NVRAMTOOLFLAGS := -I$(top)/util/nvramtool 12ifeq ($(OS_ARCH), NetBSD) 13NVRAMTOOLLDLFLAGS = -l$(shell uname -p) 14endif 15ifeq ($(shell uname -o 2>/dev/null), Cygwin) 16NVRAMTOOLFLAGS += -O2 -g -Wall -W -D__GLIBC__ 17HOSTCFLAGS = 18endif 19 20nvramtoolobj := 21nvramtoolobj += cli/nvramtool.o cli/opts.o 22nvramtoolobj += cmos_lowlevel.o cmos_ops.o common.o compute_ip_checksum.o 23nvramtoolobj += hexdump.o input_file.o layout.o accessors/layout-common.o accessors/layout-text.o accessors/layout-bin.o lbtable.o 24nvramtoolobj += reg_expr.o cbfs.o accessors/cmos-mem.o 25 26ifeq ($(shell uname -s 2>/dev/null | cut -c-7), MINGW32) 27NVRAMTOOLLDFLAGS += -lregex -lwsock32 28nvramtoolobj += win32mmap.o 29endif 30 31additional-dirs += $(objutil)/nvramtool/accessors $(objutil)/nvramtool/cli 32 33$(objutil)/nvramtool/%.o: $(top)/util/nvramtool/%.c 34 printf " HOSTCC $(subst $(objutil)/,,$(@))\n" 35 $(HOSTCC) $(NVRAMTOOLFLAGS) $(HOSTCFLAGS) -c -o $@ $< 36 37$(objutil)/nvramtool/nvramtool: $(objutil)/nvramtool $(objutil)/nvramtool/accessors $(objutil)/nvramtool/cli $(addprefix $(objutil)/nvramtool/,$(nvramtoolobj)) 38 printf " HOSTCC $(subst $(objutil)/,,$(@)) (link)\n" 39 $(HOSTCC) $(NVRAMTOOLFLAGS) -o $@ $(addprefix $(objutil)/nvramtool/,$(nvramtoolobj)) $(NVRAMTOOLLDFLAGS) 40