On Wed, 2014-04-16 at 14:48 +0200, Idwer Vollering wrote:
2014-04-16 9:14 GMT+02:00 Roger Pau Monne roger.pau@citrix.com:
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
Acked-by: Idwer Vollering vidwer@gmail.com
With the note that one needs to use ld from ports' binutils, not the shipped ld:
Which according to your debug output supports -melf_i386, so why this patch in that case?
$ /usr/bin/ld -V && /usr/local/bin/ld -V GNU ld 2.17.50 [FreeBSD] 2007-07-03 Supported emulations: elf_x86_64_fbsd elf_i386_fbsd GNU ld (GNU Binutils) 2.24 Supported emulations: elf_x86_64_fbsd elf_i386_fbsd elf_x86_64 elf_i386 elf_l1om elf_l1om_fbsd elf_k1om elf_k1om_fbsd
Cc: Ian Campbell ian.campbell@citrix.com
Changes in v2:
- Rebase on top of master
Makefile | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/Makefile b/Makefile index e567ba1..4338f94 100644 --- a/Makefile +++ b/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
-- 1.7.7.5 (Apple Git-26)
SeaBIOS mailing list SeaBIOS@seabios.org http://www.seabios.org/mailman/listinfo/seabios
On Wed, Apr 16, 2014 at 01:50:29PM +0100, Ian Campbell wrote:
On Wed, 2014-04-16 at 14:48 +0200, Idwer Vollering wrote:
2014-04-16 9:14 GMT+02:00 Roger Pau Monne roger.pau@citrix.com:
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
Acked-by: Idwer Vollering vidwer@gmail.com
With the note that one needs to use ld from ports' binutils, not the shipped ld:
Which according to your debug output supports -melf_i386, so why this patch in that case?
FYI, I didn't see a response on this question, so I've held off on applying this patch.
-Kevin
On 25/04/14 02:46, Kevin O'Connor wrote:
On Wed, Apr 16, 2014 at 01:50:29PM +0100, Ian Campbell wrote:
On Wed, 2014-04-16 at 14:48 +0200, Idwer Vollering wrote:
2014-04-16 9:14 GMT+02:00 Roger Pau Monne roger.pau@citrix.com:
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
Acked-by: Idwer Vollering vidwer@gmail.com
With the note that one needs to use ld from ports' binutils, not the shipped ld:
Which according to your debug output supports -melf_i386, so why this patch in that case?
FYI, I didn't see a response on this question, so I've held off on applying this patch.
If using ld from FreeBSD base you have to pass LD32BIT_FLAG=-melf_i386_fbsd. On the other hand, if using ld from ports, you can either pass the same value, or use the default one (-melf_i386). This is also needed for Illumos support:
http://marc.info/?l=xen-devel&m=139758558530393
So I don't see a reason for holding it off.
Roger.
On Fri, 2014-04-25 at 09:19 +0200, Roger Pau Monné wrote:
On 25/04/14 02:46, Kevin O'Connor wrote:
On Wed, Apr 16, 2014 at 01:50:29PM +0100, Ian Campbell wrote:
On Wed, 2014-04-16 at 14:48 +0200, Idwer Vollering wrote:
2014-04-16 9:14 GMT+02:00 Roger Pau Monne roger.pau@citrix.com:
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
Acked-by: Idwer Vollering vidwer@gmail.com
With the note that one needs to use ld from ports' binutils, not the shipped ld:
Which according to your debug output supports -melf_i386, so why this patch in that case?
FYI, I didn't see a response on this question, so I've held off on applying this patch.
If using ld from FreeBSD base you have to pass LD32BIT_FLAG=-melf_i386_fbsd. On the other hand, if using ld from ports, you can either pass the same value, or use the default one (-melf_i386).
This is what confused me. Idwer qualified his ack with "note that one needs to use ld from ports' binutils, not the shipped ld" and seems to be saying that the base ld doesn't work for him.
Ian.
This is also needed for Illumos support:
http://marc.info/?l=xen-devel&m=139758558530393
So I don't see a reason for holding it off.
Roger.
2014-04-25 9:19 GMT+02:00 Roger Pau Monné roger.pau@citrix.com:
On 25/04/14 02:46, Kevin O'Connor wrote:
On Wed, Apr 16, 2014 at 01:50:29PM +0100, Ian Campbell wrote:
On Wed, 2014-04-16 at 14:48 +0200, Idwer Vollering wrote:
2014-04-16 9:14 GMT+02:00 Roger Pau Monne roger.pau@citrix.com:
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
Acked-by: Idwer Vollering vidwer@gmail.com
With the note that one needs to use ld from ports' binutils, not the shipped ld:
Which according to your debug output supports -melf_i386, so why this patch in that case?
FYI, I didn't see a response on this question, so I've held off on applying this patch.
If using ld from FreeBSD base you have to pass LD32BIT_FLAG=-melf_i386_fbsd. On the other hand, if using ld from ports, you can either pass the same value, or use the default one (-melf_i386).
Exactly. My apologies for the confusion.
This is also needed for Illumos support:
http://marc.info/?l=xen-devel&m=139758558530393
So I don't see a reason for holding it off.
Roger.