Add qemu 2.4.0
[kvmfornfv.git] / qemu / roms / vgabios / Makefile
1 SHELL = /bin/sh
2
3 CC      = gcc
4 CFLAGS  = -g -O2 -Wall -Wstrict-prototypes
5 LDFLAGS = 
6
7 GCC = gcc
8 BCC = bcc
9 AS86 = as86
10
11 RELEASE = `pwd | sed "s-.*/--"`
12 RELDATE = `date '+%d %b %Y'`
13 RELVERS = `pwd | sed "s-.*/--" | sed "s/vgabios//" | sed "s/-//"`
14
15 VGABIOS_DATE = "-DVGABIOS_DATE=\"$(RELDATE)\""
16
17 all: bios cirrus-bios stdvga-bios vmware-bios qxl-bios
18
19 bios: vgabios.bin vgabios.debug.bin
20
21 cirrus-bios: vgabios-cirrus.bin vgabios-cirrus.debug.bin
22
23 stdvga-bios: vgabios-stdvga.bin vgabios-stdvga.debug.bin
24
25 vmware-bios: vgabios-vmware.bin vgabios-vmware.debug.bin
26
27 qxl-bios: vgabios-qxl.bin vgabios-qxl.debug.bin
28
29 clean:
30         /bin/rm -f  biossums vbetables-gen vbetables.h *.o *.s *.ld86 \
31           temp.awk.* vgabios*.orig _vgabios_* _vgabios-debug_* core vgabios*.bin vgabios*.txt $(RELEASE).bin *.bak
32
33 dist-clean: clean
34
35 # source files
36 VGA_FILES := vgabios.c vgabios.h vgafonts.h vgatables.h
37 VBE_FILES := vbe.h vbe.c vbetables.h
38
39 # build flags
40 vgabios.bin              : VGAFLAGS := -DVBE -DPCI_VID=0x1234
41 vgabios.debug.bin        : VGAFLAGS := -DVBE -DPCI_VID=0x1234 -DDEBUG
42 vgabios-cirrus.bin       : VGAFLAGS := -DCIRRUS -DPCIBIOS 
43 vgabios-cirrus.debug.bin : VGAFLAGS := -DCIRRUS -DPCIBIOS -DCIRRUS_DEBUG
44 vgabios-stdvga.bin       : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x1234 -DPCI_DID=0x1111
45 vgabios-stdvga.debug.bin : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x1234 -DPCI_DID=0x1111 -DDEBUG
46 vgabios-vmware.bin       : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x15ad -DPCI_DID=0x0405
47 vgabios-vmware.debug.bin : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x15ad -DPCI_DID=0x0405 -DDEBUG
48 vgabios-qxl.bin          : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x1b36 -DPCI_DID=0x0100
49 vgabios-qxl.debug.bin    : VGAFLAGS := -DVBE -DPCIBIOS -DPCI_VID=0x1b36 -DPCI_DID=0x0100 -DDEBUG
50
51 # dist names
52 vgabios.bin              : DISTNAME := VGABIOS-lgpl-latest.bin
53 vgabios.debug.bin        : DISTNAME := VGABIOS-lgpl-latest.debug.bin
54 vgabios-cirrus.bin       : DISTNAME := VGABIOS-lgpl-latest.cirrus.bin
55 vgabios-cirrus.debug.bin : DISTNAME := VGABIOS-lgpl-latest.cirrus.debug.bin
56 vgabios-stdvga.bin       : DISTNAME := VGABIOS-lgpl-latest.stdvga.bin
57 vgabios-stdvga.debug.bin : DISTNAME := VGABIOS-lgpl-latest.stdvga.debug.bin
58 vgabios-vmware.bin       : DISTNAME := VGABIOS-lgpl-latest.vmware.bin
59 vgabios-vmware.debug.bin : DISTNAME := VGABIOS-lgpl-latest.vmware.debug.bin
60 vgabios-qxl.bin          : DISTNAME := VGABIOS-lgpl-latest.qxl.bin
61 vgabios-qxl.debug.bin    : DISTNAME := VGABIOS-lgpl-latest.qxl.debug.bin
62
63 # dependencies
64 vgabios.bin              : $(VGA_FILES) $(VBE_FILES) biossums
65 vgabios.debug.bin        : $(VGA_FILES) $(VBE_FILES) biossums
66 vgabios-cirrus.bin       : $(VGA_FILES) clext.c biossums
67 vgabios-cirrus.debug.bin : $(VGA_FILES) clext.c biossums
68 vgabios-stdvga.bin       : $(VGA_FILES) $(VBE_FILES) biossums
69 vgabios-stdvga.debug.bin : $(VGA_FILES) $(VBE_FILES) biossums
70 vgabios-vmware.bin       : $(VGA_FILES) $(VBE_FILES) biossums
71 vgabios-vmware.debug.bin : $(VGA_FILES) $(VBE_FILES) biossums
72 vgabios-qxl.bin          : $(VGA_FILES) $(VBE_FILES) biossums
73 vgabios-qxl.debug.bin    : $(VGA_FILES) $(VBE_FILES) biossums
74
75 # build rule
76 %.bin:
77         $(GCC) -E -P vgabios.c $(VGABIOS_VERS) $(VGAFLAGS) $(VGABIOS_DATE) > _$*_.c
78         $(BCC) -o $*.s -C-c -D__i86__ -S -0 _$*_.c
79         sed -e 's/^\.text//' -e 's/^\.data//' $*.s > _$*_.s
80         $(AS86) _$*_.s -b $*.bin -u -w- -g -0 -j -O -l $*.txt
81         rm -f _$*_.s _$*_.c $*.s
82         mv $*.bin $(DISTNAME)
83         ./biossums $(DISTNAME)
84         ls -l $(DISTNAME)
85
86 release: 
87         VGABIOS_VERS=\"-DVGABIOS_VERS=\\\"$(RELVERS)\\\"\" make bios cirrus-bios
88         /bin/rm -f  *.o *.s *.ld86 \
89           temp.awk.* vgabios.*.orig _vgabios_.*.c core *.bak .#*
90         cp VGABIOS-lgpl-latest.bin ../$(RELEASE).bin
91         cp VGABIOS-lgpl-latest.debug.bin ../$(RELEASE).debug.bin
92         cp VGABIOS-lgpl-latest.cirrus.bin ../$(RELEASE).cirrus.bin
93         cp VGABIOS-lgpl-latest.cirrus.debug.bin ../$(RELEASE).cirrus.debug.bin
94         tar czvf ../$(RELEASE).tgz --exclude CVS -C .. $(RELEASE)/
95
96 biossums: biossums.c
97         $(CC) -o biossums biossums.c
98
99 vbetables-gen: vbetables-gen.c
100         $(CC) -o vbetables-gen vbetables-gen.c
101
102 vbetables.h: vbetables-gen
103         ./vbetables-gen > $@