[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [VGABIOS PATCH 06/11] Makefile cleanup
From: |
Gerd Hoffmann |
Subject: |
[Qemu-devel] [VGABIOS PATCH 06/11] Makefile cleanup |
Date: |
Tue, 21 Sep 2010 19:08:00 +0200 |
Use a single rule for building bios binaries.
Use target specific variables to set compile flags.
This makes it more obvious what the differences between the versions
are. It also makes it easier to add new bios binaries with slightly
different settings.
Signed-off-by: Gerd Hoffmann <address@hidden>
---
Makefile | 76 +++++++++++++++++++++++++++----------------------------------
1 files changed, 34 insertions(+), 42 deletions(-)
diff --git a/Makefile b/Makefile
index 00e8c66..c3c744c 100644
--- a/Makefile
+++ b/Makefile
@@ -16,8 +16,7 @@ VGABIOS_DATE = "-DVGABIOS_DATE=\"$(RELDATE)\""
all: bios cirrus-bios
-
-bios: biossums vgabios.bin vgabios.debug.bin
+bios: vgabios.bin vgabios.debug.bin
cirrus-bios: vgabios-cirrus.bin vgabios-cirrus.debug.bin
@@ -27,6 +26,39 @@ clean:
dist-clean: clean
+# source files
+VGA_FILES := vgabios.c vgabios.h vgafonts.h vgatables.h
+VBE_FILES := vbe.h vbe.c vbetables.h
+
+# build flags
+vgabios.bin : VGAFLAGS := -DVBE
+vgabios.debug.bin : VGAFLAGS := -DVBE -DDEBUG
+vgabios-cirrus.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS
+vgabios-cirrus.debug.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS -DCIRRUS_DEBUG
+
+# dist names
+vgabios.bin : DISTNAME := VGABIOS-lgpl-latest.bin
+vgabios.debug.bin : DISTNAME := VGABIOS-lgpl-latest.debug.bin
+vgabios-cirrus.bin : DISTNAME := VGABIOS-lgpl-latest.cirrus.bin
+vgabios-cirrus.debug.bin : DISTNAME := VGABIOS-lgpl-latest.cirrus.debug.bin
+
+# dependencies
+vgabios.bin : $(VGA_FILES) $(VBE_FILES) biossums
+vgabios.debug.bin : $(VGA_FILES) $(VBE_FILES) biossums
+vgabios-cirrus.bin : $(VGA_FILES) clext.c biossums
+vgabios-cirrus.debug.bin : $(VGA_FILES) clext.c biossums
+
+# build rule
+%.bin:
+ $(GCC) -E -P vgabios.c $(VGABIOS_VERS) $(VGAFLAGS) $(VGABIOS_DATE) >
_$*_.c
+ $(BCC) -o $*.s -C-c -D__i86__ -S -0 _$*_.c
+ sed -e 's/^\.text//' -e 's/^\.data//' $*.s > _$*_.s
+ $(AS86) _$*_.s -b $*.bin -u -w- -g -0 -j -O -l $*.txt
+ rm -f _$*_.s _$*_.c $*.s
+ mv $*.bin $(DISTNAME)
+ ./biossums $(DISTNAME)
+ ls -l $(DISTNAME)
+
release:
VGABIOS_VERS=\"-DVGABIOS_VERS=\\\"$(RELVERS)\\\"\" make bios cirrus-bios
/bin/rm -f *.o *.s *.ld86 \
@@ -37,46 +69,6 @@ release:
cp VGABIOS-lgpl-latest.cirrus.debug.bin ../$(RELEASE).cirrus.debug.bin
tar czvf ../$(RELEASE).tgz --exclude CVS -C .. $(RELEASE)/
-vgabios.bin: vgabios.c vgabios.h vgafonts.h vgatables.h vbe.h vbe.c vbetables.h
- $(GCC) -E -P vgabios.c $(VGABIOS_VERS) -DVBE $(VGABIOS_DATE) >
_vgabios_.c
- $(BCC) -o vgabios.s -C-c -D__i86__ -S -0 _vgabios_.c
- sed -e 's/^\.text//' -e 's/^\.data//' vgabios.s > _vgabios_.s
- $(AS86) _vgabios_.s -b vgabios.bin -u -w- -g -0 -j -O -l vgabios.txt
- rm -f _vgabios_.s _vgabios_.c vgabios.s
- mv vgabios.bin VGABIOS-lgpl-latest.bin
- ./biossums VGABIOS-lgpl-latest.bin
- ls -l VGABIOS-lgpl-latest.bin
-
-vgabios.debug.bin: vgabios.c vgabios.h vgafonts.h vgatables.h vbe.h vbe.c
vbetables.h
- $(GCC) -E -P vgabios.c $(VGABIOS_VERS) -DVBE -DDEBUG $(VGABIOS_DATE) >
_vgabios-debug_.c
- $(BCC) -o vgabios-debug.s -C-c -D__i86__ -S -0 _vgabios-debug_.c
- sed -e 's/^\.text//' -e 's/^\.data//' vgabios-debug.s >
_vgabios-debug_.s
- $(AS86) _vgabios-debug_.s -b vgabios.debug.bin -u -w- -g -0 -j -O -l
vgabios.debug.txt
- rm -f _vgabios-debug_.s _vgabios-debug_.c vgabios-debug.s
- mv vgabios.debug.bin VGABIOS-lgpl-latest.debug.bin
- ./biossums VGABIOS-lgpl-latest.debug.bin
- ls -l VGABIOS-lgpl-latest.debug.bin
-
-vgabios-cirrus.bin: vgabios.c vgabios.h vgafonts.h vgatables.h clext.c
- $(GCC) -E -P vgabios.c $(VGABIOS_VERS) -DCIRRUS -DPCIBIOS
$(VGABIOS_DATE) > _vgabios-cirrus_.c
- $(BCC) -o vgabios-cirrus.s -C-c -D__i86__ -S -0 _vgabios-cirrus_.c
- sed -e 's/^\.text//' -e 's/^\.data//' vgabios-cirrus.s >
_vgabios-cirrus_.s
- $(AS86) _vgabios-cirrus_.s -b vgabios-cirrus.bin -u -w- -g -0 -j -O -l
vgabios.cirrus.txt
- rm -f _vgabios-cirrus_.s _vgabios-cirrus_.c vgabios-cirrus.s
- mv vgabios-cirrus.bin VGABIOS-lgpl-latest.cirrus.bin
- ./biossums VGABIOS-lgpl-latest.cirrus.bin
- ls -l VGABIOS-lgpl-latest.cirrus.bin
-
-vgabios-cirrus.debug.bin: vgabios.c vgabios.h vgafonts.h vgatables.h clext.c
- $(GCC) -E -P vgabios.c $(VGABIOS_VERS) -DCIRRUS -DCIRRUS_DEBUG
-DPCIBIOS $(VGABIOS_DATE) > _vgabios-cirrus-debug_.c
- $(BCC) -o vgabios-cirrus-debug.s -C-c -D__i86__ -S -0
_vgabios-cirrus-debug_.c
- sed -e 's/^\.text//' -e 's/^\.data//' vgabios-cirrus-debug.s >
_vgabios-cirrus-debug_.s
- $(AS86) _vgabios-cirrus-debug_.s -b vgabios.cirrus.debug.bin -u -w- -g
-0 -j -O -l vgabios.cirrus.debug.txt
- rm -f _vgabios-cirrus-debug_.s _vgabios-cirrus-debug_.c
vgabios-cirrus-debug.s
- mv vgabios.cirrus.debug.bin VGABIOS-lgpl-latest.cirrus.debug.bin
- ./biossums VGABIOS-lgpl-latest.cirrus.debug.bin
- ls -l VGABIOS-lgpl-latest.cirrus.debug.bin
-
biossums: biossums.c
$(CC) -o biossums biossums.c
--
1.7.1
- [Qemu-devel] [VGABIOS PATCH 00/11] vgabios update, Gerd Hoffmann, 2010/09/21
- [Qemu-devel] [VGABIOS PATCH 05/11] - updates for release 0.6c, Gerd Hoffmann, 2010/09/21
- [Qemu-devel] [VGABIOS PATCH 06/11] Makefile cleanup,
Gerd Hoffmann <=
- [Qemu-devel] [VGABIOS PATCH 03/11] - preparing for release 0.6c, Gerd Hoffmann, 2010/09/21
- [Qemu-devel] [VGABIOS PATCH 02/11] - added support for a lot more non-standard VBE modes (e.g. widescreen modes) - requires latest Bochs VBE code (16 MB video memory, VBE_DISPI_ID5, VRAM size in 64k pages stored in VBE register) - check if VBE mode is supported with current VRAM size, Gerd Hoffmann, 2010/09/21
- [Qemu-devel] [VGABIOS PATCH 04/11] - biosfn_write_teletype: fixed attribute when scrolling in text mode, Gerd Hoffmann, 2010/09/21
- [Qemu-devel] [VGABIOS PATCH 08/11] Add qemu stdvga pci bios, Gerd Hoffmann, 2010/09/21
- [Qemu-devel] [VGABIOS PATCH 09/11] update pci_get_lfb_addr for vmware vga, Gerd Hoffmann, 2010/09/21
- [Qemu-devel] [VGABIOS PATCH 07/11] Add defines for PCI IDs., Gerd Hoffmann, 2010/09/21
- [Qemu-devel] [VGABIOS PATCH 11/11] Add qemu qxl vga pci bios, Gerd Hoffmann, 2010/09/21
- [Qemu-devel] [VGABIOS PATCH 01/11] - use VBE LFB address from PCI base address if present (rewrite of the cirrus specific function in main vgabios code) - removed unnecessary spaces, Gerd Hoffmann, 2010/09/21
- [Qemu-devel] [VGABIOS PATCH 10/11] Add qemu vmware vga pci bios, Gerd Hoffmann, 2010/09/21