Stefan Reinauer | 6559f43 | 2010-12-17 00:13:54 +0000 | [diff] [blame] | 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 | ## |
Stefan Reinauer | 6540ae5 | 2007-07-12 16:35:42 +0000 | [diff] [blame] | 20 | |
Stefan Reinauer | a67aab7 | 2008-09-27 10:08:28 +0000 | [diff] [blame] | 21 | PROGRAM = nvramtool |
Stefan Reinauer | 6540ae5 | 2007-07-12 16:35:42 +0000 | [diff] [blame] | 22 | |
Stefan Reinauer | a67aab7 | 2008-09-27 10:08:28 +0000 | [diff] [blame] | 23 | CC = gcc |
| 24 | STRIP = strip |
| 25 | INSTALL = /usr/bin/install |
| 26 | PREFIX = /usr/local |
Patrick Georgi | c6d2b09 | 2011-01-28 07:47:10 +0000 | [diff] [blame] | 27 | CFLAGS = -O2 -g -Wall -W -I. |
Stefan Reinauer | a67aab7 | 2008-09-27 10:08:28 +0000 | [diff] [blame] | 28 | #CFLAGS = -Os -Wall |
Stefan Reinauer | 6540ae5 | 2007-07-12 16:35:42 +0000 | [diff] [blame] | 29 | |
Patrick Georgi | c6d2b09 | 2011-01-28 07:47:10 +0000 | [diff] [blame] | 30 | CLI_OBJS = cli/nvramtool.o cli/opts.o |
| 31 | |
Stefan Reinauer | a67aab7 | 2008-09-27 10:08:28 +0000 | [diff] [blame] | 32 | OBJS = cmos_lowlevel.o cmos_ops.o common.o compute_ip_checksum.o \ |
Patrick Georgi | 36ade67 | 2011-01-28 07:56:39 +0000 | [diff] [blame^] | 33 | hexdump.o input_file.o layout.o accessors/layout-text.o accessors/layout-bin.o lbtable.o \ |
Patrick Georgi | 1e916e0 | 2011-01-28 07:54:11 +0000 | [diff] [blame] | 34 | reg_expr.o cbfs.o accessors/cmos-hw-unix.o accessors/cmos-mem.o |
Patrick Georgi | c6d2b09 | 2011-01-28 07:47:10 +0000 | [diff] [blame] | 35 | |
| 36 | OBJS += $(CLI_OBJS) |
Stefan Reinauer | 6540ae5 | 2007-07-12 16:35:42 +0000 | [diff] [blame] | 37 | |
Stefan Reinauer | 4db6cbd | 2009-09-01 09:54:21 +0000 | [diff] [blame] | 38 | OS_ARCH = $(shell uname) |
| 39 | ifeq ($(OS_ARCH), Darwin) |
| 40 | LDFLAGS = -framework DirectIO |
| 41 | endif |
| 42 | |
Stefan Reinauer | a67aab7 | 2008-09-27 10:08:28 +0000 | [diff] [blame] | 43 | all: dep $(PROGRAM) |
Stefan Reinauer | 6540ae5 | 2007-07-12 16:35:42 +0000 | [diff] [blame] | 44 | |
Stefan Reinauer | a67aab7 | 2008-09-27 10:08:28 +0000 | [diff] [blame] | 45 | $(PROGRAM): $(OBJS) |
Rudolf Marek | 6e29665 | 2011-01-24 21:05:53 +0000 | [diff] [blame] | 46 | $(CC) -o $(PROGRAM) $(OBJS) $(LDFLAGS) $(CFLAGS) |
Stefan Reinauer | a67aab7 | 2008-09-27 10:08:28 +0000 | [diff] [blame] | 47 | $(STRIP) $(STRIP_ARGS) $(PROGRAM) |
Stefan Reinauer | 6540ae5 | 2007-07-12 16:35:42 +0000 | [diff] [blame] | 48 | |
| 49 | clean: |
Patrick Georgi | c6d2b09 | 2011-01-28 07:47:10 +0000 | [diff] [blame] | 50 | rm -f $(PROGRAM) $(OBJS) |
Stefan Reinauer | 6540ae5 | 2007-07-12 16:35:42 +0000 | [diff] [blame] | 51 | |
Stefan Reinauer | a67aab7 | 2008-09-27 10:08:28 +0000 | [diff] [blame] | 52 | distclean: clean |
| 53 | rm -f .dependencies |
| 54 | |
| 55 | dep: |
| 56 | @$(CC) -MM *.c > .dependencies |
| 57 | |
| 58 | install: $(PROGRAM) |
Stefan Reinauer | 4db6cbd | 2009-09-01 09:54:21 +0000 | [diff] [blame] | 59 | mkdir -p $(DESTDIR)$(PREFIX)/sbin |
| 60 | $(INSTALL) $(PROGRAM) $(DESTDIR)$(PREFIX)/sbin |
| 61 | mkdir -p $(DESTDIR)$(PREFIX)/share/man/man8 |
Patrick Georgi | c6d2b09 | 2011-01-28 07:47:10 +0000 | [diff] [blame] | 62 | $(INSTALL) cli/$(PROGRAM).8 $(DESTDIR)$(PREFIX)/share/man/man8 |
Stefan Reinauer | a67aab7 | 2008-09-27 10:08:28 +0000 | [diff] [blame] | 63 | |
| 64 | .PHONY: all clean distclean dep |
| 65 | |
| 66 | -include .dependencies |