kvm: extboot: main Makefile support
[qemu-kvm/fedora.git] / kvm / Makefile
blob45c22e6ba9d9eaeb0d37b4f2174ee071c5744d1c
2 include config.mak
4 DESTDIR=
6 rpmrelease = devel
8 .PHONY: kernel user libkvm qemu bios vgabios extboot clean
10 all: $(if $(WANT_MODULE), kernel) user libkvm qemu
12 kcmd = $(if $(WANT_MODULE),,@\#)
14 qemu kernel user libkvm:
15 $(MAKE) -C $@
17 qemu: libkvm extboot
18 user: libkvm
20 bios:
21 $(MAKE) -C $@
22 cp bios/BIOS-bochs-latest qemu/pc-bios/bios.bin
24 vgabios:
25 $(MAKE) -C $@
26 cp vgabios/VGABIOS-lgpl-latest.bin qemu/pc-bios/vgabios.bin
27 cp vgabios/VGABIOS-lgpl-latest.cirrus.bin qemu/pc-bios/vgabios-cirrus.bin
29 extboot:
30 $(MAKE) -C $@
31 if ! [ -f qemu/pc-bios/extboot.bin ] \
32 || ! cmp -s qemu/pc-bios/extboot.bin extboot/extboot.bin; then \
33 cp extboot/extboot.bin qemu/pc-bios/extboot.bin; \
37 bindir = /usr/bin
38 bin = $(bindir)/kvm
39 initdir = /etc/init.d
40 confdir = /etc/kvm
41 utilsdir = /etc/kvm/utils
43 install-rpm:
44 mkdir -p $(DESTDIR)/$(bindir)
45 mkdir -p $(DESTDIR)/$(confdir)
46 mkdir -p $(DESTDIR)/$(initdir)
47 mkdir -p $(DESTDIR)/$(utilsdir)
48 mkdir -p $(DESTDIR)/etc/udev/rules.d
49 make -C qemu DESTDIR=$(DESTDIR)/ install
50 ln -sf /usr/kvm/bin/qemu-system-x86_64 $(DESTDIR)/$(bin)
51 install -m 755 kvm_stat $(DESTDIR)/$(bindir)/kvm_stat
52 cp scripts/kvm $(DESTDIR)/$(initdir)/kvm
53 cp scripts/qemu-ifup $(DESTDIR)/$(confdir)/qemu-ifup
54 install -t $(DESTDIR)/etc/udev/rules.d scripts/*kvm*.rules
56 install:
57 $(kcmd)make -C kernel DESTDIR="$(DESTDIR)" install
58 make -C libkvm DESTDIR="$(DESTDIR)" install
59 make -C qemu DESTDIR="$(DESTDIR)" install
61 tmpspec = .tmp.kvm.spec
62 RPMTOPDIR = $$(pwd)/rpmtop
64 rpm: srpm
65 rm -rf $(RPMTOPDIR)/BUILD
66 mkdir -p $(RPMTOPDIR)/{BUILD,RPMS/$$(uname -i)}
67 rpmbuild --rebuild \
68 --define="_topdir $(RPMTOPDIR)" \
69 $(RPMTOPDIR)/SRPMS/kvm-0.0-$(rpmrelease).src.rpm
71 srpm:
72 mkdir -p $(RPMTOPDIR)/{SOURCES,SRPMS}
73 sed 's/^Release:.*/Release: $(rpmrelease)/' kvm.spec > $(tmpspec)
74 tar czf $(RPMTOPDIR)/SOURCES/kvm.tar.gz qemu
75 tar czf $(RPMTOPDIR)/SOURCES/user.tar.gz user
76 tar czf $(RPMTOPDIR)/SOURCES/libkvm.tar.gz libkvm
77 tar czf $(RPMTOPDIR)/SOURCES/kernel.tar.gz kernel
78 tar czf $(RPMTOPDIR)/SOURCES/scripts.tar.gz scripts
79 cp Makefile configure kvm_stat $(RPMTOPDIR)/SOURCES
80 rpmbuild --define="_topdir $(RPMTOPDIR)" -bs $(tmpspec)
81 $(RM) $(tmpspec)
83 clean:
84 for i in $(if $(WANT_MODULE), kernel) user libkvm qemu; do \
85 make -C $$i clean; \
86 done
87 rm -f config.mak user/config.mak