e0054cde34e1be07ac2337c9904e57f710a5349b
[coreboot.git] / util / nvramtool / Makefile
1 ##
2 ## Makefile for nvram utility
3 ##
4 ## (C) 2005-2008 coresystems GmbH
5 ## written by Stefan Reinauer <stepan@coresystems.de>
6 ##
7 ## This program is free software; you can redistribute it and/or modify
8 ## it under the terms of the GNU General Public License as published by
9 ## the Free Software Foundation; version 2 of the License.
10 ##
11 ## This program is distributed in the hope that it will be useful,
12 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
13 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 ## GNU General Public License for more details.
15 ##
16 ## You should have received a copy of the GNU General Public License
17 ## along with this program; if not, write to the Free Software
18 ## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
19 ##
20
21 PROGRAM = nvramtool
22
23 CC      = gcc
24 STRIP   = strip
25 INSTALL = /usr/bin/install
26 PREFIX  = /usr/local
27 CFLAGS  = -O2 -g -Wall -W -I.
28 #CFLAGS  = -Os -Wall
29
30 CLI_OBJS = cli/nvramtool.o cli/opts.o
31
32 OBJS =  cmos_lowlevel.o cmos_ops.o common.o compute_ip_checksum.o \
33         hexdump.o input_file.o layout.o accessors/layout-text.o accessors/layout-bin.o lbtable.o   \
34         reg_expr.o cbfs.o accessors/cmos-hw-unix.o accessors/cmos-mem.o
35
36 OBJS += $(CLI_OBJS)
37
38 OS_ARCH        = $(shell uname)
39 ifeq ($(OS_ARCH), Darwin)
40 LDFLAGS = -framework DirectIO
41 endif
42 ifeq ($(OS_ARCH), NetBSD)
43 LDFLAGS = -l$(shell uname -p)
44 endif
45
46 all: dep $(PROGRAM)
47
48 $(PROGRAM): $(OBJS)
49         $(CC) -o $(PROGRAM) $(OBJS) $(LDFLAGS) $(CFLAGS)
50         $(STRIP) $(STRIP_ARGS) $(PROGRAM)
51
52 clean:
53         rm -f $(PROGRAM) $(OBJS)
54
55 distclean: clean
56         rm -f .dependencies
57
58 dep:
59         @$(CC) -MM *.c > .dependencies
60
61 install: $(PROGRAM)
62         mkdir -p $(DESTDIR)$(PREFIX)/sbin
63         $(INSTALL) $(PROGRAM) $(DESTDIR)$(PREFIX)/sbin
64         mkdir -p $(DESTDIR)$(PREFIX)/share/man/man8
65         $(INSTALL) cli/$(PROGRAM).8 $(DESTDIR)$(PREFIX)/share/man/man8
66
67 .PHONY: all clean distclean dep
68
69 -include .dependencies