1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
|
Description: Build QEMU BIOS images
Author: Guillem Jover <guillem@debian.org>
---
bios/Makefile.in | 30 +++++++++++++++++++++++++++---
1 file changed, 27 insertions(+), 3 deletions(-)
--- a/bios/Makefile.in
+++ b/bios/Makefile.in
@@ -58,19 +58,22 @@
$(CXX) -c $(BX_INCDIRS) $(CPPFLAGS) $(CXXFLAGS) $(LOCAL_CXXFLAGS) @CXXFP@$< @OFP@$@
-bios: biossums BIOS-bochs-latest BIOS-bochs-legacy
+bios: biossums BIOS-bochs-latest BIOS-bochs-legacy BIOS-qemu-latest
clean:
@RMCOMMAND@ *.o *.a *.s _rombios*_.c rombios*.txt rombios*.sym
@RMCOMMAND@ acpt-dsdt.aml
- @RMCOMMAND@ usage biossums rombios16.bin
+ @RMCOMMAND@ usage biossums
+ @RMCOMMAND@ rombios16.bin rombios16-qemu.bin
@RMCOMMAND@ rombios32.bin rombios32.out
+ @RMCOMMAND@ rombios32-qemu.bin rombios32-qemu.out
dist-clean: clean
@RMCOMMAND@ Makefile
bios-clean:
@RMCOMMAND@ BIOS-bochs-*
+ @RMCOMMAND@ BIOS-qemu-*
BIOS-bochs-legacy: rombios.c apmbios.S biossums rombios.h
$(GCC32) $(BIOS_BUILD_DATE) -DLEGACY -E -P $< > _rombiosl_.c
@@ -82,6 +85,15 @@
./biossums $@
@RMCOMMAND@ _rombiosl_.s
+rombios16-qemu.bin: rombios.c apmbios.S biossums rombios.h
+ $(GCC32) $(BIOS_BUILD_DATE) -DBX_QEMU -E -P $< > _rombiosq_.c
+ $(BCC) -o rombiosq.s -C-c -D__i86__ -0 -S _rombiosq_.c
+ sed -e 's/^\.text//' -e 's/^\.data//' rombiosq.s > _rombiosq_.s
+ $(AS86) _rombiosq_.s -b $@.tmp.bin -u- -w- -g -0 -j -O -l rombiosq.txt
+ -perl ${srcdir}/makesym.perl < rombiosq.txt > rombiosq.sym
+ mv $@.tmp.bin $@
+ ./biossums $@
+ @RMCOMMAND@ _rombiosq_.s
rombios16.bin: rombios.c apmbios.S biossums rombios.h
$(GCC32) $(BIOS_BUILD_DATE) -E -P $< > _rombios_.c
@@ -97,12 +109,22 @@
$(OBJCOPY32) -O binary $< $@
./biossums -pad $@
+rombios32-qemu.bin: rombios32-qemu.out rombios.h
+ $(OBJCOPY32) -O binary $< $@
+ ./biossums -pad $@
+
rombios32.out: rombios32start.o rombios32.o rombios32.ld
$(LD32) -o $@ -T $(srcdir)/rombios32.ld rombios32start.o rombios32.o
+rombios32-qemu.out: rombios32start.o rombios32-qemu.o rombios32.ld
+ $(LD32) -o $@ -T $(srcdir)/rombios32.ld rombios32start.o rombios32-qemu.o
+
rombios32.o: rombios32.c acpi-dsdt.hex rombios.h
$(GCC32) -O2 -Wall -c -o $@ $<
+rombios32-qemu.o: rombios32.c acpi-dsdt.hex rombios.h
+ $(GCC32) -DBX_QEMU -O2 -Wall -c -o $@ $<
+
ifneq ($(IASL), not_found)
acpi-dsdt.hex: acpi-dsdt.dsl
cpp -P $< $<.i
@@ -117,4 +139,7 @@
BIOS-bochs-latest: rombios16.bin rombios32.bin
cat rombios32.bin rombios16.bin > $@
+BIOS-qemu-latest: rombios16-qemu.bin rombios32-qemu.bin
+ cat rombios32-qemu.bin rombios16-qemu.bin > $@
+
biossums: biossums.o
|