[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [vgabios patch v2 06/11] Makefile cleanup
From: |
Gerd Hoffmann |
Subject: |
[Qemu-devel] [vgabios patch v2 06/11] Makefile cleanup |
Date: |
Wed, 3 Nov 2010 12:41:51 +0100 |
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 v2 00/11] vgabios update, Gerd Hoffmann, 2010/11/03
- [Qemu-devel] [vgabios patch v2 03/11] - preparing for release 0.6c, Gerd Hoffmann, 2010/11/03
- [Qemu-devel] [vgabios patch v2 06/11] Makefile cleanup,
Gerd Hoffmann <=
- [Qemu-devel] [vgabios patch v2 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/11/03
- [Qemu-devel] [vgabios patch v2 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/11/03
- [Qemu-devel] [vgabios patch v2 07/11] Add defines for PCI IDs., Gerd Hoffmann, 2010/11/03
- [Qemu-devel] [vgabios patch v2 09/11] update pci_get_lfb_addr for vmware vga, Gerd Hoffmann, 2010/11/03
- [Qemu-devel] [vgabios patch v2 10/11] Add qemu vmware vga pci bios, Gerd Hoffmann, 2010/11/03
- [Qemu-devel] [vgabios patch v2 04/11] - biosfn_write_teletype: fixed attribute when scrolling in text mode, Gerd Hoffmann, 2010/11/03
- [Qemu-devel] [vgabios patch v2 05/11] - updates for release 0.6c, Gerd Hoffmann, 2010/11/03
- [Qemu-devel] [vgabios patch v2 08/11] Add qemu stdvga pci bios, Gerd Hoffmann, 2010/11/03
- [Qemu-devel] [vgabios patch v2 11/11] Add qemu qxl vga pci bios, Gerd Hoffmann, 2010/11/03
- Re: [Qemu-devel] [vgabios patch v2 00/11] vgabios update, Gerd Hoffmann, 2010/11/09