1## -----------------------------------------------------------------------
2##
3##   Copyright 2001-2008 H. Peter Anvin - All Rights Reserved
4##   Copyright 2010 Intel Corporation; author: H. Peter Anvin
5##
6##   This program is free software; you can redistribute it and/or modify
7##   it under the terms of the GNU General Public License as published by
8##   the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
9##   Boston MA 02110-1301, USA; either version 2 of the License, or
10##   (at your option) any later version; incorporated herein by reference.
11##
12## -----------------------------------------------------------------------
13
14##
15## Simple menu system
16##
17
18VPATH = $(SRC)
19include $(MAKEDIR)/elf.mk
20-include $(topdir)/version.mk
21
22LIBS	   = $(objdir)/com32/libupload/libcom32upload.a
23LNXLIBS	   = $(objdir)/com32/libutil/libutil_lnx.a
24
25CFLAGS += -I$(com32) -I$(topdir)
26
27MODULES	  = sysdump.c32
28TESTFILES =
29
30SRCS = $(wildcard $(SRC)/*.c)
31OBJS = $(subst $(SRC)/,,$(patsubst %.c,%.o,$(SRCS)))
32
33# The DATE is set on the make command line when building binaries for
34# official release.  Otherwise, substitute a hex string that is pretty much
35# guaranteed to be unique to be unique from build to build.
36ifndef HEXDATE
37HEXDATE := $(shell $(PERL) $(topdir)/now.pl $(SRCS) $(wildcard *.h))
38endif
39ifndef DATE
40DATE    := $(shell sh $(topdir)/gen-id.sh $(VERSION) $(HEXDATE))
41endif
42
43CFLAGS    += -DDATE='"$(DATE)"'
44
45all: $(MODULES) $(TESTFILES)
46
47sysdump.elf : $(OBJS) $(LIBS) $(C_LIBS)
48	$(LD) $(LDFLAGS) -o $@ $^
49
50tidy dist:
51	rm -f *.o *.lo *.a *.lst .*.d *.tmp
52
53clean: tidy
54	rm -f *.lnx
55
56spotless: clean
57	rm -f *.lss *.c32 *.com
58	rm -f *~ \#*
59
60install:
61
62-include .*.d
63