Home | History | Annotate | Line # | Download | only in lib
      1 #
      2 #  Copyright (C) 1999-2001 Hewlett-Packard Co.
      3 #	Contributed by David Mosberger <davidm (at] hpl.hp.com>
      4 #	Contributed by Stephane Eranian <eranian (at] 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 = .
     38 
     39 VPATH = $(SRCDIR)
     40 
     41 include $(SRCDIR)/../Make.defaults
     42 
     43 TOPDIR = $(SRCDIR)/..
     44 
     45 CDIR = $(TOPDIR)/..
     46 FILES = boxdraw smbios console crc data debug dpath  \
     47         error event exit guid hand hw init lock   \
     48         misc pause print sread str cmdline\
     49 	runtime/rtlock runtime/efirtlib runtime/rtstr runtime/vm runtime/rtdata  \
     50 	$(ARCH)/initplat $(ARCH)/math $(ARCH)/setjmp
     51 
     52 ifeq ($(ARCH),ia64)
     53 FILES += $(ARCH)/salpal $(ARCH)/palproc
     54 endif
     55 
     56 ifeq ($(ARCH),x86_64)
     57 FILES += $(ARCH)/callwrap $(ARCH)/efi_stub
     58 endif
     59 
     60 ifeq ($(ARCH),arm)
     61 FILES += $(ARCH)/uldiv $(ARCH)/ldivmod $(ARCH)/div $(ARCH)/llsl $(ARCH)/llsr \
     62 	 $(ARCH)/mullu
     63 endif
     64 
     65 OBJS  = $(FILES:%=%.o)
     66 
     67 SUBDIRS = ia32 x86_64 ia64 aarch64 arm mips64el riscv64 runtime
     68 
     69 LIBDIRINSTALL = $(INSTALLROOT)$(LIBDIR)
     70 
     71 all: libsubdirs libefi.a
     72 
     73 .PHONY: libsubdirs
     74 libsubdirs:
     75 	for sdir in $(SUBDIRS); do mkdir -p $$sdir; done
     76 
     77 libefi.a: $(OBJS)
     78 	$(AR) $(ARFLAGS) $@ $^
     79 
     80 clean:
     81 	rm -f libefi.a *~ $(OBJS) */*.o
     82 
     83 $(LIBDIRINSTALL):
     84 	mkdir -p $@
     85 
     86 $(LIBDIRINSTALL)/libefi.a: libefi.a | $(LIBDIRINSTALL)
     87 	$(INSTALL) -m 644 $< $(dir $@)
     88 
     89 install: $(LIBDIRINSTALL)/libefi.a
     90 
     91 include $(SRCDIR)/../Make.rules
     92 
     93 .PHONY: libsubdirs
     94