File: build-qemu-bios.patch

package info (click to toggle)
bochs 3.0%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 25,244 kB
  • sloc: cpp: 270,331; ansic: 25,334; sh: 8,371; makefile: 5,512; yacc: 1,485; asm: 395; perl: 359; lex: 318; csh: 3
file content (81 lines) | stat: -rw-r--r-- 2,592 bytes parent folder | download
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