1 | # |
---|
2 | # Copyright (C) 1999-2007 Hewlett-Packard Co. |
---|
3 | # Contributed by David Mosberger <davidm@hpl.hp.com> |
---|
4 | # Contributed by Stephane Eranian <eranian@hpl.hp.com> |
---|
5 | # |
---|
6 | # All rights reserved. |
---|
7 | # |
---|
8 | # Redistribution and use in source and binary forms, with or without |
---|
9 | # modification, are permitted provided that the following conditions |
---|
10 | # are met: |
---|
11 | # |
---|
12 | # * Redistributions of source code must retain the above copyright |
---|
13 | # notice, this list of conditions and the following disclaimer. |
---|
14 | # * Redistributions in binary form must reproduce the above |
---|
15 | # copyright notice, this list of conditions and the following |
---|
16 | # disclaimer in the documentation and/or other materials |
---|
17 | # provided with the distribution. |
---|
18 | # * Neither the name of Hewlett-Packard Co. nor the names of its |
---|
19 | # contributors may be used to endorse or promote products derived |
---|
20 | # from this software without specific prior written permission. |
---|
21 | # |
---|
22 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND |
---|
23 | # CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, |
---|
24 | # INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF |
---|
25 | # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
---|
26 | # DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS |
---|
27 | # BE LIABLE FOR ANYDIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, |
---|
28 | # OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, |
---|
29 | # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
---|
30 | # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
---|
31 | # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR |
---|
32 | # TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF |
---|
33 | # THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
---|
34 | # SUCH DAMAGE. |
---|
35 | # |
---|
36 | |
---|
37 | SRCDIR = $(shell pwd) |
---|
38 | |
---|
39 | VPATH = $(SRCDIR) |
---|
40 | |
---|
41 | include $(SRCDIR)/Make.defaults |
---|
42 | |
---|
43 | SUBDIRS = lib gnuefi inc apps |
---|
44 | gnuefi: lib |
---|
45 | |
---|
46 | all: check_gcc $(SUBDIRS) |
---|
47 | |
---|
48 | mkvars: |
---|
49 | @echo AR=$(AR) |
---|
50 | @echo ARCH=$(ARCH) |
---|
51 | @echo ARCH3264=$(ARCH3264) |
---|
52 | @echo AS=$(AS) |
---|
53 | @echo ASFLAGS=$(ASFLAGS) |
---|
54 | @echo CC=$(CC) |
---|
55 | @echo CFLAGS=$(CFLAGS) |
---|
56 | @echo CPPFLAGS=$(CPPFLAGS) |
---|
57 | @echo GCCMINOR=$(GCCMINOR) |
---|
58 | @echo GCCNEWENOUGH=$(GCCNEWENOUGH) |
---|
59 | @echo GCCVERSION=$(GCCVERSION) |
---|
60 | @echo HOSTARCH=$(HOSTARCH) |
---|
61 | @echo INCDIR=$(INCDIR) |
---|
62 | @echo INSTALL=$(INSTALL) |
---|
63 | @echo INSTALLROOT=$(INSTALLROOT) |
---|
64 | @echo LD=$(LD) |
---|
65 | @echo LDFLAGS=$(LDFLAGS) |
---|
66 | @echo LIBDIR=$(LIBDIR) |
---|
67 | @echo OBJCOPY=$(OBJCOPY) |
---|
68 | @echo OS=$(OS) |
---|
69 | @echo prefix=$(prefix) |
---|
70 | @echo PREFIX=$(PREFIX) |
---|
71 | @echo RANLIB=$(RANLIB) |
---|
72 | @echo SRCDIR=$(SRCDIR) |
---|
73 | @echo TOPDIR=$(TOPDIR) |
---|
74 | |
---|
75 | $(SUBDIRS): |
---|
76 | mkdir -p $@ |
---|
77 | $(MAKE) -C $@ -f $(SRCDIR)/$@/Makefile SRCDIR=$(SRCDIR)/$@ ARCH=$(ARCH) |
---|
78 | |
---|
79 | clean: |
---|
80 | rm -f *~ |
---|
81 | @for d in $(SUBDIRS); do $(MAKE) -C $$d -f $(SRCDIR)/$$d/Makefile SRCDIR=$(SRCDIR)/$$d clean; done |
---|
82 | |
---|
83 | install: |
---|
84 | @for d in $(SUBDIRS); do \ |
---|
85 | mkdir -p $$d; \ |
---|
86 | $(MAKE) -C $$d -f $(SRCDIR)/$$d/Makefile SRCDIR=$(SRCDIR)/$$d install; done |
---|
87 | |
---|
88 | .PHONY: $(SUBDIRS) clean depend |
---|
89 | |
---|
90 | # |
---|
91 | # on both platforms you must use gcc 3.0 or higher |
---|
92 | # |
---|
93 | check_gcc: |
---|
94 | ifeq ($(GCC_VERSION),2) |
---|
95 | @echo "you need to use a version of gcc >= 3.0, you are using `$(CC) --version`" |
---|
96 | @exit 1 |
---|
97 | endif |
---|
98 | |
---|
99 | include $(SRCDIR)/Make.rules |
---|