Home | History | Annotate | Line # | Download | only in dist
Makefile revision 1.1.1.1.34.1
      1           1.1  jakllsch #
      2           1.1  jakllsch #  Copyright (C) 1999-2007 Hewlett-Packard Co.
      3           1.1  jakllsch #	Contributed by David Mosberger <davidm (at] hpl.hp.com>
      4           1.1  jakllsch #	Contributed by Stephane Eranian <eranian (at] hpl.hp.com>
      5           1.1  jakllsch #
      6           1.1  jakllsch #    All rights reserved.
      7           1.1  jakllsch #
      8           1.1  jakllsch #    Redistribution and use in source and binary forms, with or without
      9           1.1  jakllsch #    modification, are permitted provided that the following conditions
     10           1.1  jakllsch #    are met:
     11           1.1  jakllsch #
     12           1.1  jakllsch #    * Redistributions of source code must retain the above copyright
     13           1.1  jakllsch #      notice, this list of conditions and the following disclaimer.
     14           1.1  jakllsch #    * Redistributions in binary form must reproduce the above
     15           1.1  jakllsch #      copyright notice, this list of conditions and the following
     16           1.1  jakllsch #      disclaimer in the documentation and/or other materials
     17           1.1  jakllsch #      provided with the distribution.
     18           1.1  jakllsch #    * Neither the name of Hewlett-Packard Co. nor the names of its
     19           1.1  jakllsch #      contributors may be used to endorse or promote products derived
     20           1.1  jakllsch #      from this software without specific prior written permission.
     21           1.1  jakllsch #
     22           1.1  jakllsch #    THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
     23           1.1  jakllsch #    CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
     24           1.1  jakllsch #    INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
     25           1.1  jakllsch #    MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
     26           1.1  jakllsch #    DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
     27           1.1  jakllsch #    BE LIABLE FOR ANYDIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
     28           1.1  jakllsch #    OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
     29           1.1  jakllsch #    PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
     30           1.1  jakllsch #    PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
     31           1.1  jakllsch #    THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
     32           1.1  jakllsch #    TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
     33           1.1  jakllsch #    THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
     34           1.1  jakllsch #    SUCH DAMAGE.
     35           1.1  jakllsch #
     36           1.1  jakllsch 
     37  1.1.1.1.34.1  pgoyette VERSION = 3.0.8
     38  1.1.1.1.34.1  pgoyette 
     39  1.1.1.1.34.1  pgoyette MKFILE_PATH := $(abspath $(lastword $(MAKEFILE_LIST)))
     40  1.1.1.1.34.1  pgoyette SRCDIR = $(dir $(MKFILE_PATH))
     41           1.1  jakllsch 
     42           1.1  jakllsch VPATH = $(SRCDIR)
     43           1.1  jakllsch 
     44           1.1  jakllsch include $(SRCDIR)/Make.defaults
     45           1.1  jakllsch 
     46           1.1  jakllsch SUBDIRS = lib gnuefi inc apps
     47           1.1  jakllsch gnuefi: lib
     48           1.1  jakllsch 
     49           1.1  jakllsch all:	check_gcc $(SUBDIRS)
     50           1.1  jakllsch 
     51           1.1  jakllsch mkvars:
     52           1.1  jakllsch 	@echo AR=$(AR)
     53           1.1  jakllsch 	@echo ARCH=$(ARCH)
     54           1.1  jakllsch 	@echo ARCH3264=$(ARCH3264)
     55           1.1  jakllsch 	@echo AS=$(AS)
     56           1.1  jakllsch 	@echo ASFLAGS=$(ASFLAGS)
     57           1.1  jakllsch 	@echo CC=$(CC)
     58           1.1  jakllsch 	@echo CFLAGS=$(CFLAGS)
     59           1.1  jakllsch 	@echo CPPFLAGS=$(CPPFLAGS)
     60           1.1  jakllsch 	@echo GCCMINOR=$(GCCMINOR)
     61           1.1  jakllsch 	@echo GCCNEWENOUGH=$(GCCNEWENOUGH)
     62           1.1  jakllsch 	@echo GCCVERSION=$(GCCVERSION)
     63           1.1  jakllsch 	@echo HOSTARCH=$(HOSTARCH)
     64           1.1  jakllsch 	@echo INCDIR=$(INCDIR)
     65           1.1  jakllsch 	@echo INSTALL=$(INSTALL)
     66           1.1  jakllsch 	@echo INSTALLROOT=$(INSTALLROOT)
     67           1.1  jakllsch 	@echo LD=$(LD)
     68           1.1  jakllsch 	@echo LDFLAGS=$(LDFLAGS)
     69           1.1  jakllsch 	@echo LIBDIR=$(LIBDIR)
     70           1.1  jakllsch 	@echo OBJCOPY=$(OBJCOPY)
     71           1.1  jakllsch 	@echo OS=$(OS)
     72           1.1  jakllsch 	@echo prefix=$(prefix)
     73           1.1  jakllsch 	@echo PREFIX=$(PREFIX)
     74           1.1  jakllsch 	@echo RANLIB=$(RANLIB)
     75  1.1.1.1.34.1  pgoyette 	@echo SRCDIR=$(SRCDIR)
     76           1.1  jakllsch 	@echo TOPDIR=$(TOPDIR)
     77           1.1  jakllsch 
     78           1.1  jakllsch $(SUBDIRS):
     79  1.1.1.1.34.1  pgoyette 	mkdir -p $(OBJDIR)/$@
     80  1.1.1.1.34.1  pgoyette 	$(MAKE) -C $(OBJDIR)/$@ -f $(SRCDIR)/$@/Makefile SRCDIR=$(SRCDIR)/$@ ARCH=$(ARCH)
     81           1.1  jakllsch 
     82           1.1  jakllsch clean:
     83           1.1  jakllsch 	rm -f *~
     84  1.1.1.1.34.1  pgoyette 	@for d in $(SUBDIRS); do \
     85  1.1.1.1.34.1  pgoyette 		if [ -d $(OBJDIR)/$$d ]; then \
     86  1.1.1.1.34.1  pgoyette 			$(MAKE) -C $(OBJDIR)/$$d -f $(SRCDIR)/$$d/Makefile SRCDIR=$(SRCDIR)/$$d clean; \
     87  1.1.1.1.34.1  pgoyette 		fi; \
     88  1.1.1.1.34.1  pgoyette 	done
     89           1.1  jakllsch 
     90           1.1  jakllsch install:
     91  1.1.1.1.34.1  pgoyette 	@for d in $(SUBDIRS); do \
     92  1.1.1.1.34.1  pgoyette 		mkdir -p $(OBJDIR)/$$d; \
     93  1.1.1.1.34.1  pgoyette 		$(MAKE) -C $(OBJDIR)/$$d -f $(SRCDIR)/$$d/Makefile SRCDIR=$(SRCDIR)/$$d install; done
     94           1.1  jakllsch 
     95           1.1  jakllsch .PHONY:	$(SUBDIRS) clean depend
     96           1.1  jakllsch 
     97           1.1  jakllsch #
     98           1.1  jakllsch # on both platforms you must use gcc 3.0 or higher 
     99           1.1  jakllsch #
    100           1.1  jakllsch check_gcc:
    101           1.1  jakllsch ifeq ($(GCC_VERSION),2)
    102           1.1  jakllsch 	@echo "you need to use a version of gcc >= 3.0, you are using `$(CC) --version`"
    103           1.1  jakllsch 	@exit 1
    104           1.1  jakllsch endif
    105           1.1  jakllsch 
    106           1.1  jakllsch include $(SRCDIR)/Make.rules
    107  1.1.1.1.34.1  pgoyette 
    108  1.1.1.1.34.1  pgoyette test-archive:
    109  1.1.1.1.34.1  pgoyette 	@rm -rf /tmp/gnu-efi-$(VERSION) /tmp/gnu-efi-$(VERSION)-tmp
    110  1.1.1.1.34.1  pgoyette 	@mkdir -p /tmp/gnu-efi-$(VERSION)-tmp
    111  1.1.1.1.34.1  pgoyette 	@git archive --format=tar $(shell git branch | awk '/^*/ { print $$2 }') | ( cd /tmp/gnu-efi-$(VERSION)-tmp/ ; tar x )
    112  1.1.1.1.34.1  pgoyette 	@git diff | ( cd /tmp/gnu-efi-$(VERSION)-tmp/ ; patch -s -p1 -b -z .gitdiff )
    113  1.1.1.1.34.1  pgoyette 	@mv /tmp/gnu-efi-$(VERSION)-tmp/ /tmp/gnu-efi-$(VERSION)/
    114  1.1.1.1.34.1  pgoyette 	@dir=$$PWD; cd /tmp; tar -c --bzip2 -f $$dir/gnu-efi-$(VERSION).tar.bz2 gnu-efi-$(VERSION)
    115  1.1.1.1.34.1  pgoyette 	@rm -rf /tmp/gnu-efi-$(VERSION)
    116  1.1.1.1.34.1  pgoyette 	@echo "The archive is in gnu-efi-$(VERSION).tar.bz2"
    117  1.1.1.1.34.1  pgoyette 
    118  1.1.1.1.34.1  pgoyette tag:
    119  1.1.1.1.34.1  pgoyette 	git tag $(VERSION) refs/heads/master
    120  1.1.1.1.34.1  pgoyette 
    121  1.1.1.1.34.1  pgoyette archive: tag
    122  1.1.1.1.34.1  pgoyette 	@rm -rf /tmp/gnu-efi-$(VERSION) /tmp/gnu-efi-$(VERSION)-tmp
    123  1.1.1.1.34.1  pgoyette 	@mkdir -p /tmp/gnu-efi-$(VERSION)-tmp
    124  1.1.1.1.34.1  pgoyette 	@git archive --format=tar $(VERSION) | ( cd /tmp/gnu-efi-$(VERSION)-tmp/ ; tar x )
    125  1.1.1.1.34.1  pgoyette 	@mv /tmp/gnu-efi-$(VERSION)-tmp/ /tmp/gnu-efi-$(VERSION)/
    126  1.1.1.1.34.1  pgoyette 	@dir=$$PWD; cd /tmp; tar -c --bzip2 -f $$dir/gnu-efi-$(VERSION).tar.bz2 gnu-efi-$(VERSION)
    127  1.1.1.1.34.1  pgoyette 	@rm -rf /tmp/gnu-efi-$(VERSION)
    128  1.1.1.1.34.1  pgoyette 	@echo "The archive is in gnu-efi-$(VERSION).tar.bz2"
    129  1.1.1.1.34.1  pgoyette 
    130