Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
[efi] Allow building with non-system libbfd
On Mac OS X, it is necessary to build binutils manually; the system
does not provide bfd.h or the libbfd or libiberty libraries.

Originally-fixed-by: Joshua Oreman <oremanj@rwcr.net>
  • Loading branch information
Michael Brown committed Mar 31, 2009
1 parent 7266ace commit 3dd7ce1
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 4 deletions.
2 changes: 2 additions & 0 deletions src/Makefile
Expand Up @@ -42,6 +42,8 @@ ELF2EFI64 := ./util/elf2efi64
EFIROM := ./util/efirom
ICCFIX := ./util/iccfix
DOXYGEN := doxygen
BINUTILS_DIR := /usr
BFD_DIR := $(BINUTILS_DIR)

###############################################################################
#
Expand Down
10 changes: 6 additions & 4 deletions src/Makefile.housekeeping
Expand Up @@ -793,16 +793,18 @@ CLEANUP += $(ZBIN)
#
# The EFI image converter
#
ELF2EFI_CFLAGS := -I$(BINUTILS_DIR)/include -I$(BFD_DIR)/include \
-idirafter include -L$(BINUTILS_DIR)/lib -L$(BFD_DIR)/lib \
-lbfd -liberty -lz

$(ELF2EFI32) : util/elf2efi.c $(MAKEDEPS)
$(QM)$(ECHO) " [HOSTCC] $@"
$(Q)$(HOST_CC) -DMDE_CPU_IA32 -idirafter include -O2 \
-o $@ $< -lbfd -liberty
$(Q)$(HOST_CC) $(ELF2EFI_CFLAGS) -DMDE_CPU_IA32 -O2 -o $@ $<
CLEANUP += $(ELF2EFI32)

$(ELF2EFI64) : util/elf2efi.c $(MAKEDEPS)
$(QM)$(ECHO) " [HOSTCC] $@"
$(Q)$(HOST_CC) -DMDE_CPU_X64 -idirafter include -O2 \
-o $@ $< -lbfd -liberty
$(Q)$(HOST_CC) $(ELF2EFI_CFLAGS) -DMDE_CPU_X64 -O2 -o $@ $<
CLEANUP += $(ELF2EFI64)

$(EFIROM) : util/efirom.c $(MAKEDEPS)
Expand Down

0 comments on commit 3dd7ce1

Please sign in to comment.