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>
8 # Redistribution and use in source and binary forms, with or without
9 # modification, are permitted provided that the following conditions
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.
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
39 MKFILE_PATH
:= $(abspath
$(lastword
$(MAKEFILE_LIST
)))
40 SRCDIR
= $(dir $(MKFILE_PATH
))
44 include $(SRCDIR
)/Make.defaults
46 SUBDIRS
= lib gnuefi inc apps
49 all: check_gcc
$(SUBDIRS
)
54 @echo ARCH3264
=$(ARCH3264
)
56 @echo ASFLAGS
=$(ASFLAGS
)
58 @echo CFLAGS
=$(CFLAGS
)
59 @echo CPPFLAGS
=$(CPPFLAGS
)
60 @echo GCCMINOR
=$(GCCMINOR
)
61 @echo GCCNEWENOUGH
=$(GCCNEWENOUGH
)
62 @echo GCCVERSION
=$(GCCVERSION
)
63 @echo HOSTARCH
=$(HOSTARCH
)
64 @echo INCDIR
=$(INCDIR
)
65 @echo INSTALL
=$(INSTALL
)
66 @echo INSTALLROOT
=$(INSTALLROOT
)
68 @echo LDFLAGS
=$(LDFLAGS
)
69 @echo LIBDIR
=$(LIBDIR
)
70 @echo OBJCOPY
=$(OBJCOPY
)
72 @echo
prefix=$(prefix)
73 @echo PREFIX
=$(PREFIX
)
74 @echo RANLIB
=$(RANLIB
)
75 @echo SRCDIR
=$(SRCDIR
)
76 @echo TOPDIR
=$(TOPDIR
)
80 $(MAKE
) -C
$(OBJDIR
)/$@
-f
$(SRCDIR
)/$@
/Makefile SRCDIR
=$(SRCDIR
)/$@ ARCH
=$(ARCH
)
84 @for d in
$(SUBDIRS
); do \
85 if
[ -d
$(OBJDIR
)/$$d ]; then \
86 $(MAKE
) -C
$(OBJDIR
)/$$d -f
$(SRCDIR
)/$$d/Makefile SRCDIR
=$(SRCDIR
)/$$d clean; \
91 @for d in
$(SUBDIRS
); do \
92 mkdir
-p
$(OBJDIR
)/$$d; \
93 $(MAKE
) -C
$(OBJDIR
)/$$d -f
$(SRCDIR
)/$$d/Makefile SRCDIR
=$(SRCDIR
)/$$d install; done
95 .PHONY
: $(SUBDIRS
) clean depend
98 # on both platforms you must use gcc 3.0 or higher
101 ifeq ($(GCC_VERSION
),2)
102 @echo
"you need to use a version of gcc >= 3.0, you are using `$(CC) --version`"
106 include $(SRCDIR
)/Make.rules
109 @
rm -rf
/tmp
/gnu-efi-
$(VERSION
) /tmp
/gnu-efi-
$(VERSION
)-tmp
110 @mkdir
-p
/tmp
/gnu-efi-
$(VERSION
)-tmp
111 @git archive
--format
=tar $(shell git branch | awk
'/^*/ { print $$2 }') |
( cd
/tmp
/gnu-efi-
$(VERSION
)-tmp
/ ; tar x
)
112 @git diff |
( cd
/tmp
/gnu-efi-
$(VERSION
)-tmp
/ ; patch
-s
-p1
-b
-z .gitdiff
)
113 @mv
/tmp
/gnu-efi-
$(VERSION
)-tmp
/ /tmp
/gnu-efi-
$(VERSION
)/
114 @
dir=$$PWD; cd
/tmp
; tar -c
--bzip2
-f
$$dir/gnu-efi-
$(VERSION
).
tar.bz2 gnu-efi-
$(VERSION
)
115 @
rm -rf
/tmp
/gnu-efi-
$(VERSION
)
116 @echo
"The archive is in gnu-efi-$(VERSION).tar.bz2"
119 git tag
$(VERSION
) refs
/heads
/master
122 @
rm -rf
/tmp
/gnu-efi-
$(VERSION
) /tmp
/gnu-efi-
$(VERSION
)-tmp
123 @mkdir
-p
/tmp
/gnu-efi-
$(VERSION
)-tmp
124 @git archive
--format
=tar $(VERSION
) |
( cd
/tmp
/gnu-efi-
$(VERSION
)-tmp
/ ; tar x
)
125 @mv
/tmp
/gnu-efi-
$(VERSION
)-tmp
/ /tmp
/gnu-efi-
$(VERSION
)/
126 @
dir=$$PWD; cd
/tmp
; tar -c
--bzip2
-f
$$dir/gnu-efi-
$(VERSION
).
tar.bz2 gnu-efi-
$(VERSION
)
127 @
rm -rf
/tmp
/gnu-efi-
$(VERSION
)
128 @echo
"The archive is in gnu-efi-$(VERSION).tar.bz2"