c6894c0afd036fa7d34ea6d12a82876b694cfd9c
[coreboot.git] / util / inteltool / Makefile
1 #
2 # Makefile for inteltool utility
3 #
4 # Copyright (C) 2008 by 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; either version 2 of the License, or
10 # (at your option) any later version.
11 #
12 # This program is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 # GNU General Public License for more details.
16 #
17 # You should have received a copy of the GNU General Public License
18 # along with this program; if not, write to the Free Software
19 # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20 #
21
22 PROGRAM = inteltool
23
24 CC      = gcc
25 INSTALL = /usr/bin/install
26 PREFIX  = /usr/local
27 CFLAGS  = -O2 -g -Wall -W
28 LDFLAGS = -lpci -lz
29
30 OBJS = inteltool.o cpu.o gpio.o rootcmplx.o powermgt.o memory.o pcie.o
31
32 OS_ARCH = $(shell uname)
33 ifeq ($(OS_ARCH), Darwin)
34 LDFLAGS = -framework DirectIO -lpci -lz
35 endif
36 ifeq ($(OS_ARCH), FreeBSD)
37 CFLAGS += -I/usr/local/include
38 LDFLAGS += -L/usr/local/lib
39 LIBS = -lz
40 endif
41
42 all: pciutils dep $(PROGRAM)
43
44 $(PROGRAM): $(OBJS)
45         $(CC) -o $(PROGRAM) $(OBJS) $(LDFLAGS)
46
47 clean:
48         rm -f $(PROGRAM) *.o *~
49
50 distclean: clean
51         rm -f .dependencies
52
53 dep:
54         @$(CC) $(CFLAGS) -MM *.c > .dependencies
55
56 pciutils:
57         @printf "\nChecking for pciutils and zlib... "
58         @$(shell ( printf "#include <pci/pci.h>\n";             \
59                    printf "struct pci_access *pacc;\n";         \
60                    printf "int main(int argc, char **argv)\n";  \
61                    printf "{ pacc = pci_alloc(); return 0; }\n"; ) > .test.c )
62         @$(CC) $(CFLAGS) $(LDFLAGS) .test.c -o .test &>/dev/null &&       \
63                 printf "found.\n" || ( printf "not found.\n\n";           \
64                 printf "Please install pciutils-devel and zlib-devel.\n"; \
65                 printf "See README for more information.\n\n";            \
66                 rm -f .test.c .test; exit 1)
67         @rm -rf .test.c .test .test.dSYM
68
69 install: $(PROGRAM)
70         mkdir -p $(DESTDIR)$(PREFIX)/sbin
71         $(INSTALL) $(PROGRAM) $(DESTDIR)$(PREFIX)/sbin
72         mkdir -p $(DESTDIR)$(PREFIX)/share/man/man8
73         $(INSTALL) $(PROGRAM).8 $(DESTDIR)$(PREFIX)/share/man/man8
74
75 .PHONY: all clean distclean dep pciutils
76
77 -include .dependencies
78