removed aio since kvm made it optional so we can get rid of it
[kvm-coreboot.git] / packages / kvm / kvm.mk
blob91ce50312a89c4986bc3b8da1b52ed5c977057bb
1 KVM_URL=http://heanet.dl.sourceforge.net/sourceforge/kvm
2 KVM_VERSION=74
3 KVM_SOURCE=kvm-$(KVM_VERSION).tar.gz
4 KVM_DIR=$(BUILD_DIR)/kvm
5 KVM_SRC_DIR=$(KVM_DIR)/kvm-$(KVM_VERSION)
6 KVM_STAMP_DIR=$(KVM_DIR)/stamps
8 KVM_PATCHES=$(PACKAGE_DIR)/kvm/patches
10 CC_IPREFIX:=$(shell $(CC) --print-file-name=include)
11 LIMITS_CFLAGS = -I$(dir $(CC_IPREFIX))/include-fixed -I$(CC_IPREFIX)
13 $(SOURCE_DIR)/$(KVM_SOURCE):
14 mkdir -p $(SOURCE_DIR)
15 @ wget $(WGET_Q) -P $(SOURCE_DIR) $(KVM_URL)/$(KVM_SOURCE)
17 $(KVM_STAMP_DIR)/.unpacked: $(SOURCE_DIR)/$(KVM_SOURCE)
18 tar -C $(KVM_DIR) -zxf $(SOURCE_DIR)/$(KVM_SOURCE)
19 touch $@
21 $(KVM_STAMP_DIR)/.patched: $(KVM_STAMP_DIR)/.unpacked
22 @ echo "Patching kvm..."
23 @ $(BIN_DIR)/doquilt.sh $(KVM_SRC_DIR) $(KVM_PATCHES)
24 @ echo "all:" > $(KVM_SRC_DIR)/kernel/Makefile
25 @ echo "all:" > $(KVM_SRC_DIR)/user/Makefile
26 @ touch $@
29 $(KVM_STAMP_DIR)/.configured: $(KVM_STAMP_DIR)/.patched
30 @ echo "Configuring kvm..."
31 @ ( cd $(KVM_SRC_DIR); ./configure \
32 --arch=i386 \
33 --disable-sdl \
34 --disable-gfx-check \
35 --disable-vnc-tls \
36 --disable-aio \
37 --disable-libfdt \
38 --disable-nptl \
39 --prefix=/usr )
40 @ touch $@
41 # we may add --disable-vde
43 $(KVM_SRC_DIR)/.built: $(KVM_STAMP_DIR)/.configured
44 @ echo "Building kvm..."
45 @ echo "LDFLAGS: $(LDFLAGS);"
46 @ echo "LIBS: $(LIBS);"
47 @ echo "LDFLAGS_orig: $(LDFLAGS_orig);"
48 @ echo "CFLAGS: $(CFLAGS);"
49 @ $(MAKE) -C $(KVM_SRC_DIR) VERBOSE=y \
50 kcmd='#' prefix='/usr' LDFLAGS="$(LDFLAGS)" \
51 LIBS="$(LIBS) -L$(KVM_SRC_DIR)/libkvm \
52 -lrt -lz -lm -lutil -lpthread -lkvm -lgcc" \
53 CFLAGS="-nostdlib $(CFLAGS) $(LIMITS_CFLAGS) -Wall \
54 -I$(KVM_SRC_DIR)/libkvm -I$(KVM_SRC_DIR)/kernel/include \
55 $(call cc-option,-muclibc,) \
56 -D__USE_EXTERN_INLINES -DCONFIG_X86" all
57 @ touch $@
59 $(INITRD_DIR)/bin/kvm: $(KVM_SRC_DIR)/.built
60 @ echo "Installing kvm..."
61 @ strip -s $(KVM_SRC_DIR)/qemu/qemu-img
62 @ strip -s $(KVM_SRC_DIR)/qemu/x86_64-softmmu/kvm
63 @ $(MAKE) DESTDIR=$(INITRD_DIR) kcmd='#' prefix='/usr' \
64 -C $(KVM_SRC_DIR) install
65 @ rm -f $(INITRD_DIR)/usr/bin/qemu-nbd
66 @ rm -rf $(INITRD_DIR)/usr/include
67 @ rm -f $(INITRD_DIR)/usr/share/qemu/openbios-sparc*
68 @ rm -f $(INITRD_DIR)/usr/share/qemu/ppc_rom.bin
69 @ rm -f $(INITRD_DIR)/usr/share/qemu/pxe-*.bin
71 $(KVM_STAMP_DIR):
72 mkdir -p $@
74 kvm: $(KVM_STAMP_DIR) $(INITRD_DIR)/bin/kvm
76 kvm-clean:
77 @ rm -f $(KVM_STAMP_DIR)/.configured
78 ifneq ($(wildcard $(KVM_SRC_DIR)/Makefile),)
79 $(MAKE) -C $(KVM_SRC_DIR) clean
80 endif
81 kvm-distclean:
82 rm -rf $(KVM_DIR)/*