Right now we wind up trying to build gnuefi/.o from a source file that's

an empty string.  This is caused by the macros trying to generate
install rules, but there's no real reason to have all that anyway.  So
just have some static install rules that are simpler and don't generate
stuff on the fly.

Signed-off-by: Peter Jones <pjones@redhat.com>
Signed-off-by: Nigel Croxon <nigel.croxon@hp.com>
This commit is contained in:
Nigel Croxon 2014-11-24 14:27:14 -05:00
parent 65e28a90a7
commit 56eb64d3c0
2 changed files with 23 additions and 47 deletions

View File

@ -52,19 +52,6 @@ reloc_aarch64.o: CFLAGS += -fno-jump-tables
TARGETS = crt0-efi-$(ARCH).o libgnuefi.a
INSTALLTARGETS = $(TARGETS)
ifneq (,$(findstring FreeBSD,$(OS)))
ifeq ($(ARCH),x86_64)
INSTALLTARGETS += elf_$(ARCH)_fbsd_efi.lds
else
INSTALLTARGETS += elf_$(ARCH)_efi.lds
endif
else
INSTALLTARGETS += elf_$(ARCH)_efi.lds
endif
LIBDIRINSTALL = $(INSTALLROOT)/$(LIBDIR)
all: $(TARGETS)
libgnuefi.a: $(patsubst %,libgnuefi.a(%),$(OBJS))
@ -72,14 +59,17 @@ libgnuefi.a: $(patsubst %,libgnuefi.a(%),$(OBJS))
clean:
rm -f $(TARGETS) *~ *.o $(OBJS)
$(LIBDIRINSTALL):
mkdir -p $@
.SECONDEXPANSION:
$(LIBDIRINSTALL)/%: % | $$(dir $$@)
$(INSTALL) -m 644 $< $(dir $@)
install: $(addprefix $(LIBDIRINSTALL)/,$(INSTALLTARGETS))
install:
mkdir -p $(INSTALLROOT)/$(LIBDIR)
$(INSTALL) -m 644 $(TARGETS) $(INSTALLROOT)/$(LIBDIR)
ifneq (,$(findstring FreeBSD,$(OS)))
ifeq ($(ARCH),x86_64)
$(INSTALL) -m 644 elf_$(ARCH)_fbsd_efi.lds $(INSTALLROOT)/$(LIBDIR)
else
$(INSTALL) -m 644 elf_$(ARCH)_efi.lds $(INSTALLROOT)/$(LIBDIR)
endif
else
$(INSTALL) -m 644 elf_$(ARCH)_efi.lds $(INSTALLROOT)/$(LIBDIR)
endif
include $(SRCDIR)/../Make.rules

View File

@ -8,34 +8,20 @@ TOPDIR = $(SRCDIR)/..
CDIR=$(TOPDIR)/..
INCDIRINSTALL = $(INSTALLROOT)$(PREFIX)/include/efi
SRCHEADERS = $(wildcard $(SRCDIR)/*.h) \
$(wildcard $(SRCDIR)/protocol/*.h) \
$(wildcard $(SRCDIR)/$(ARCH)/*.h)
ifeq ($(ARCH),ia64)
SRCHEADERS += $(wildcard $(SRCDIR)/protocol/$(ARCH)/*.h)
endif
HEADERS = $(patsubst $(SRCDIR)/%,%,$(SRCHEADERS))
all:
clean:
rm -f *~
$(INCDIRINSTALL) \
$(INCDIRINSTALL)/protocol \
$(INCDIRINSTALL)/$(ARCH) \
$(INCDIRINSTALL)/protocol/$(ARCH):
mkdir -p $@
.SECONDEXPANSION:
$(INCDIRINSTALL)/%.h: %.h | $$(dir $$@)
$(INSTALL) -m 644 $< $(dir $@)
install: $(addprefix $(INCDIRINSTALL)/,$(HEADERS))
install:
mkdir -p $(INSTALLROOT)$(PREFIX)/include/efi
mkdir -p $(INSTALLROOT)$(PREFIX)/include/efi/protocol
mkdir -p $(INSTALLROOT)$(PREFIX)/include/efi/$(ARCH)
$(INSTALL) -m 644 *.h $(INSTALLROOT)$(PREFIX)/include/efi
$(INSTALL) -m 644 protocol/*.h $(INSTALLROOT)$(PREFIX)/include/efi/protocol
$(INSTALL) -m 644 $(ARCH)/*.h $(INSTALLROOT)$(PREFIX)/include/efi/$(ARCH)
ifeq ($(ARCH),ia64)
mkdir -p $(INSTALLROOT)$(PREFIX)/include/efi/protocol/ia64
$(INSTALL) -m 644 protocol/ia64/*.h $(INSTALLROOT)$(PREFIX)/include/efi/protocol/ia64
endif
include $(SRCDIR)/../Make.rules