11.1Sjakllsch# 21.1Sjakllsch# Copyright (C) 1999-2007 Hewlett-Packard Co. 31.1Sjakllsch# Contributed by David Mosberger <davidm@hpl.hp.com> 41.1Sjakllsch# Contributed by Stephane Eranian <eranian@hpl.hp.com> 51.1Sjakllsch# 61.1Sjakllsch# All rights reserved. 71.1Sjakllsch# 81.1Sjakllsch# Redistribution and use in source and binary forms, with or without 91.1Sjakllsch# modification, are permitted provided that the following conditions 101.1Sjakllsch# are met: 111.1Sjakllsch# 121.1Sjakllsch# * Redistributions of source code must retain the above copyright 131.1Sjakllsch# notice, this list of conditions and the following disclaimer. 141.1Sjakllsch# * Redistributions in binary form must reproduce the above 151.1Sjakllsch# copyright notice, this list of conditions and the following 161.1Sjakllsch# disclaimer in the documentation and/or other materials 171.1Sjakllsch# provided with the distribution. 181.1Sjakllsch# * Neither the name of Hewlett-Packard Co. nor the names of its 191.1Sjakllsch# contributors may be used to endorse or promote products derived 201.1Sjakllsch# from this software without specific prior written permission. 211.1Sjakllsch# 221.1Sjakllsch# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND 231.1Sjakllsch# CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, 241.1Sjakllsch# INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 251.1Sjakllsch# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 261.1Sjakllsch# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS 271.1Sjakllsch# BE LIABLE FOR ANYDIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, 281.1Sjakllsch# OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 291.1Sjakllsch# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 301.1Sjakllsch# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 311.1Sjakllsch# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR 321.1Sjakllsch# TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF 331.1Sjakllsch# THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 341.1Sjakllsch# SUCH DAMAGE. 351.1Sjakllsch# 361.1Sjakllsch 371.1.1.3SjmcneillVERSION = 3.0.14 381.1.1.2Sjmcneill 391.1.1.2SjmcneillMKFILE_PATH := $(abspath $(lastword $(MAKEFILE_LIST))) 401.1.1.2SjmcneillSRCDIR = $(dir $(MKFILE_PATH)) 411.1Sjakllsch 421.1SjakllschVPATH = $(SRCDIR) 431.1Sjakllsch 441.1Sjakllschinclude $(SRCDIR)/Make.defaults 451.1Sjakllsch 461.1SjakllschSUBDIRS = lib gnuefi inc apps 471.1Sjakllschgnuefi: lib 481.1Sjakllsch 491.1Sjakllschall: check_gcc $(SUBDIRS) 501.1Sjakllsch 511.1Sjakllschmkvars: 521.1Sjakllsch @echo AR=$(AR) 531.1Sjakllsch @echo ARCH=$(ARCH) 541.1Sjakllsch @echo ARCH3264=$(ARCH3264) 551.1Sjakllsch @echo AS=$(AS) 561.1Sjakllsch @echo ASFLAGS=$(ASFLAGS) 571.1Sjakllsch @echo CC=$(CC) 581.1Sjakllsch @echo CFLAGS=$(CFLAGS) 591.1Sjakllsch @echo CPPFLAGS=$(CPPFLAGS) 601.1Sjakllsch @echo GCCMINOR=$(GCCMINOR) 611.1Sjakllsch @echo GCCNEWENOUGH=$(GCCNEWENOUGH) 621.1Sjakllsch @echo GCCVERSION=$(GCCVERSION) 631.1Sjakllsch @echo HOSTARCH=$(HOSTARCH) 641.1Sjakllsch @echo INCDIR=$(INCDIR) 651.1Sjakllsch @echo INSTALL=$(INSTALL) 661.1Sjakllsch @echo INSTALLROOT=$(INSTALLROOT) 671.1Sjakllsch @echo LD=$(LD) 681.1Sjakllsch @echo LDFLAGS=$(LDFLAGS) 691.1Sjakllsch @echo LIBDIR=$(LIBDIR) 701.1Sjakllsch @echo OBJCOPY=$(OBJCOPY) 711.1Sjakllsch @echo OS=$(OS) 721.1Sjakllsch @echo prefix=$(prefix) 731.1Sjakllsch @echo PREFIX=$(PREFIX) 741.1Sjakllsch @echo RANLIB=$(RANLIB) 751.1.1.2Sjmcneill @echo SRCDIR=$(SRCDIR) 761.1Sjakllsch @echo TOPDIR=$(TOPDIR) 771.1Sjakllsch 781.1Sjakllsch$(SUBDIRS): 791.1.1.2Sjmcneill mkdir -p $(OBJDIR)/$@ 801.1.1.2Sjmcneill $(MAKE) -C $(OBJDIR)/$@ -f $(SRCDIR)/$@/Makefile SRCDIR=$(SRCDIR)/$@ ARCH=$(ARCH) 811.1Sjakllsch 821.1Sjakllschclean: 831.1Sjakllsch rm -f *~ 841.1.1.2Sjmcneill @for d in $(SUBDIRS); do \ 851.1.1.2Sjmcneill if [ -d $(OBJDIR)/$$d ]; then \ 861.1.1.2Sjmcneill $(MAKE) -C $(OBJDIR)/$$d -f $(SRCDIR)/$$d/Makefile SRCDIR=$(SRCDIR)/$$d clean; \ 871.1.1.2Sjmcneill fi; \ 881.1.1.2Sjmcneill done 891.1Sjakllsch 901.1Sjakllschinstall: 911.1.1.2Sjmcneill @for d in $(SUBDIRS); do \ 921.1.1.2Sjmcneill mkdir -p $(OBJDIR)/$$d; \ 931.1.1.2Sjmcneill $(MAKE) -C $(OBJDIR)/$$d -f $(SRCDIR)/$$d/Makefile SRCDIR=$(SRCDIR)/$$d install; done 941.1Sjakllsch 951.1Sjakllsch.PHONY: $(SUBDIRS) clean depend 961.1Sjakllsch 971.1Sjakllsch# 981.1Sjakllsch# on both platforms you must use gcc 3.0 or higher 991.1Sjakllsch# 1001.1Sjakllschcheck_gcc: 1011.1Sjakllschifeq ($(GCC_VERSION),2) 1021.1Sjakllsch @echo "you need to use a version of gcc >= 3.0, you are using `$(CC) --version`" 1031.1Sjakllsch @exit 1 1041.1Sjakllschendif 1051.1Sjakllsch 1061.1Sjakllschinclude $(SRCDIR)/Make.rules 1071.1.1.2Sjmcneill 1081.1.1.2Sjmcneilltest-archive: 1091.1.1.2Sjmcneill @rm -rf /tmp/gnu-efi-$(VERSION) /tmp/gnu-efi-$(VERSION)-tmp 1101.1.1.2Sjmcneill @mkdir -p /tmp/gnu-efi-$(VERSION)-tmp 1111.1.1.2Sjmcneill @git archive --format=tar $(shell git branch | awk '/^*/ { print $$2 }') | ( cd /tmp/gnu-efi-$(VERSION)-tmp/ ; tar x ) 1121.1.1.2Sjmcneill @git diff | ( cd /tmp/gnu-efi-$(VERSION)-tmp/ ; patch -s -p1 -b -z .gitdiff ) 1131.1.1.2Sjmcneill @mv /tmp/gnu-efi-$(VERSION)-tmp/ /tmp/gnu-efi-$(VERSION)/ 1141.1.1.2Sjmcneill @dir=$$PWD; cd /tmp; tar -c --bzip2 -f $$dir/gnu-efi-$(VERSION).tar.bz2 gnu-efi-$(VERSION) 1151.1.1.2Sjmcneill @rm -rf /tmp/gnu-efi-$(VERSION) 1161.1.1.2Sjmcneill @echo "The archive is in gnu-efi-$(VERSION).tar.bz2" 1171.1.1.2Sjmcneill 1181.1.1.2Sjmcneilltag: 1191.1.1.2Sjmcneill git tag $(VERSION) refs/heads/master 1201.1.1.2Sjmcneill 1211.1.1.2Sjmcneillarchive: tag 1221.1.1.2Sjmcneill @rm -rf /tmp/gnu-efi-$(VERSION) /tmp/gnu-efi-$(VERSION)-tmp 1231.1.1.2Sjmcneill @mkdir -p /tmp/gnu-efi-$(VERSION)-tmp 1241.1.1.2Sjmcneill @git archive --format=tar $(VERSION) | ( cd /tmp/gnu-efi-$(VERSION)-tmp/ ; tar x ) 1251.1.1.2Sjmcneill @mv /tmp/gnu-efi-$(VERSION)-tmp/ /tmp/gnu-efi-$(VERSION)/ 1261.1.1.2Sjmcneill @dir=$$PWD; cd /tmp; tar -c --bzip2 -f $$dir/gnu-efi-$(VERSION).tar.bz2 gnu-efi-$(VERSION) 1271.1.1.2Sjmcneill @rm -rf /tmp/gnu-efi-$(VERSION) 1281.1.1.2Sjmcneill @echo "The archive is in gnu-efi-$(VERSION).tar.bz2" 1291.1.1.2Sjmcneill 130