ld: don't hardcode "-melf_i386"
On FreeBSD, the name of the emulation is "-melf_i386_fbsd", so allow SeaBIOS to fetch the emulation to use from the environment variables. This allows SeaBIOS to compile on FreeBSD with gcc. Signed-off-by: Roger Pau Monné <roger.pau@citrix.com> Cc: Ian Campbell <ian.campbell@citrix.com>
This commit is contained in:
parent
6c68e7adfa
commit
6ad7b5b977
5
Makefile
5
Makefile
|
@ -24,6 +24,7 @@ STRIP=$(CROSS_PREFIX)strip
|
|||
PYTHON=python
|
||||
CPP=cpp
|
||||
IASL:=iasl
|
||||
LD32BIT_FLAG:=-melf_i386
|
||||
|
||||
# Source files
|
||||
SRCBOTH=misc.c stacks.c output.c string.c x86.c block.c cdrom.c mouse.c kbd.c \
|
||||
|
@ -154,8 +155,8 @@ $(OUT)romlayout16.lds: $(OUT)ccode32flat.o $(OUT)code32seg.o $(OUT)ccode16.o $(O
|
|||
@echo " Building ld scripts"
|
||||
$(Q)./scripts/buildversion.sh $(OUT)version.c
|
||||
$(Q)$(CC) $(CFLAGS32FLAT) -c $(OUT)version.c -o $(OUT)version.o
|
||||
$(Q)$(LD) -melf_i386 -r $(OUT)ccode32flat.o $(OUT)version.o -o $(OUT)code32flat.o
|
||||
$(Q)$(LD) -melf_i386 -r $(OUT)ccode16.o $(OUT)romlayout.o -o $(OUT)code16.o
|
||||
$(Q)$(LD) $(LD32BIT_FLAG) -r $(OUT)ccode32flat.o $(OUT)version.o -o $(OUT)code32flat.o
|
||||
$(Q)$(LD) $(LD32BIT_FLAG) -r $(OUT)ccode16.o $(OUT)romlayout.o -o $(OUT)code16.o
|
||||
$(Q)$(OBJDUMP) -thr $(OUT)code32flat.o > $(OUT)code32flat.o.objdump
|
||||
$(Q)$(OBJDUMP) -thr $(OUT)code32seg.o > $(OUT)code32seg.o.objdump
|
||||
$(Q)$(OBJDUMP) -thr $(OUT)code16.o > $(OUT)code16.o.objdump
|
||||
|
|
Loading…
Reference in New Issue