Add qemu 2.4.0
[kvmfornfv.git] / qemu / roms / ipxe / src / arch / i386 / Makefile.pcbios
1 # -*- makefile -*- : Force emacs to use Makefile mode
2
3 # The i386 linker script
4 #
5 LDSCRIPT        = arch/i386/scripts/i386.lds
6
7 # Stop ld from complaining about our customised linker script
8 #
9 LDFLAGS         += -N --no-check-sections
10
11 # pcbios specific drivers
12 SRCDIRS         += arch/i386/drivers
13 SRCDIRS         += arch/i386/drivers/net
14
15 # Media types.
16 #
17 MEDIA           += rom
18 MEDIA           += mrom
19 MEDIA           += pcirom
20 MEDIA           += isarom
21 MEDIA           += pxe
22 MEDIA           += kpxe
23 MEDIA           += kkpxe
24 MEDIA           += kkkpxe
25 MEDIA           += lkrn
26 MEDIA           += dsk
27 MEDIA           += nbi
28 MEDIA           += hd
29 MEDIA           += raw
30 MEDIA           += exe
31
32 # Padding rules
33 #
34 PAD_rom         = $(PERL) $(PADIMG) --blksize=512 --byte=0xff
35 PAD_mrom        = $(PAD_rom)
36 PAD_pcirom      = $(PAD_rom)
37 PAD_isarom      = $(PAD_rom)
38 PAD_dsk         = $(PERL) $(PADIMG) --blksize=512
39 PAD_hd          = $(PERL) $(PADIMG) --blksize=32768
40 PAD_exe         = $(PERL) $(PADIMG) --blksize=512
41
42 # Finalisation rules
43 #
44 FINALISE_rom    = $(PERL) $(FIXROM)
45 FINALISE_mrom   = $(FINALISE_rom)
46 FINALISE_pcirom = $(FINALISE_rom)
47 FINALISE_isarom = $(FINALISE_rom)
48
49 # Use $(ROMS) rather than $(DRIVERS) for "allroms", "allmroms", etc.
50 #
51 LIST_NAME_rom := ROMS
52 LIST_NAME_mrom := ROMS
53 LIST_NAME_pcirom := ROMS
54 LIST_NAME_isarom := ROMS
55
56 # rule to make a non-emulation ISO boot image
57 NON_AUTO_MEDIA  += iso
58 %iso:   %lkrn util/geniso
59         $(QM)$(ECHO) "  [GENISO] $@"
60         $(Q)ISOLINUX_BIN=$(ISOLINUX_BIN) VERSION="$(VERSION)" bash util/geniso -o $@ $<
61
62 # rule to make a floppy emulation ISO boot image
63 NON_AUTO_MEDIA  += liso
64 %liso:  %lkrn util/geniso
65         $(QM)$(ECHO) "  [GENISO] $@"
66         $(Q)VERSION="$(VERSION)" bash util/geniso -l -o $@ $<
67
68 # rule to make a syslinux floppy image (mountable, bootable)
69 NON_AUTO_MEDIA  += sdsk
70 %sdsk:  %lkrn util/gensdsk
71         $(QM)$(ECHO) "  [GENSDSK] $@"
72         $(Q)bash util/gensdsk $@ $<
73
74 # rule to write disk images to /dev/fd0
75 NON_AUTO_MEDIA  += fd0
76 %fd0 : %dsk
77         $(QM)$(ECHO) "  [DD] $@"
78         $(Q)dd if=$< bs=512 conv=sync of=/dev/fd0
79         $(Q)sync
80
81 # Special target for building Master Boot Record binary
82 $(BIN)/mbr.bin : $(BIN)/mbr.o
83         $(QM)$(ECHO) "  [OBJCOPY] $@"
84         $(Q)$(OBJCOPY) -O binary $< $@
85
86 # rule to make a USB disk image
87 $(BIN)/usbdisk.bin : $(BIN)/usbdisk.o
88         $(QM)$(ECHO) "  [OBJCOPY] $@"
89         $(Q)$(OBJCOPY) -O binary $< $@
90
91 NON_AUTO_MEDIA  += usb
92 %usb: $(BIN)/usbdisk.bin %hd
93         $(QM)$(ECHO) "  [FINISH] $@"
94         $(Q)cat $^ > $@
95
96 # Padded floppy image (e.g. for iLO)
97 NON_AUTO_MEDIA += pdsk
98 %pdsk : %dsk
99         $(Q)cp $< $@
100         $(Q)$(PADIMG) --blksize=1474560 $@