Xiantao Zhang | b693919 | 2008-03-28 14:58:47 +0800 | [diff] [blame] | 1 | #This Make file is to generate asm-offsets.h and build source. |
| 2 | # |
| 3 | |
| 4 | #Generate asm-offsets.h for vmm module build |
| 5 | offsets-file := asm-offsets.h |
| 6 | |
| 7 | always := $(offsets-file) |
| 8 | targets := $(offsets-file) |
| 9 | targets += arch/ia64/kvm/asm-offsets.s |
| 10 | clean-files := $(addprefix $(objtree)/,$(targets) $(obj)/memcpy.S $(obj)/memset.S) |
| 11 | |
| 12 | # Default sed regexp - multiline due to syntax constraints |
| 13 | define sed-y |
| 14 | "/^->/{s:^->\([^ ]*\) [\$$#]*\([^ ]*\) \(.*\):#define \1 \2 /* \3 */:; s:->::; p;}" |
| 15 | endef |
| 16 | |
| 17 | quiet_cmd_offsets = GEN $@ |
| 18 | define cmd_offsets |
| 19 | (set -e; \ |
| 20 | echo "#ifndef __ASM_KVM_OFFSETS_H__"; \ |
| 21 | echo "#define __ASM_KVM_OFFSETS_H__"; \ |
| 22 | echo "/*"; \ |
| 23 | echo " * DO NOT MODIFY."; \ |
| 24 | echo " *"; \ |
| 25 | echo " * This file was generated by Makefile"; \ |
| 26 | echo " *"; \ |
| 27 | echo " */"; \ |
| 28 | echo ""; \ |
| 29 | sed -ne $(sed-y) $<; \ |
| 30 | echo ""; \ |
| 31 | echo "#endif" ) > $@ |
| 32 | endef |
| 33 | # We use internal rules to avoid the "is up to date" message from make |
| 34 | arch/ia64/kvm/asm-offsets.s: arch/ia64/kvm/asm-offsets.c |
| 35 | $(call if_changed_dep,cc_s_c) |
| 36 | |
| 37 | $(obj)/$(offsets-file): arch/ia64/kvm/asm-offsets.s |
| 38 | $(call cmd,offsets) |
| 39 | |
| 40 | # |
| 41 | # Makefile for Kernel-based Virtual Machine module |
| 42 | # |
| 43 | |
| 44 | EXTRA_CFLAGS += -Ivirt/kvm -Iarch/ia64/kvm/ |
Al Viro | ea696f9 | 2008-04-28 06:59:05 +0100 | [diff] [blame] | 45 | EXTRA_AFLAGS += -Ivirt/kvm -Iarch/ia64/kvm/ |
Xiantao Zhang | b693919 | 2008-03-28 14:58:47 +0800 | [diff] [blame] | 46 | |
| 47 | common-objs = $(addprefix ../../../virt/kvm/, kvm_main.o ioapic.o) |
| 48 | |
| 49 | kvm-objs := $(common-objs) kvm-ia64.o kvm_fw.o |
| 50 | obj-$(CONFIG_KVM) += kvm.o |
| 51 | |
| 52 | FORCE : $(obj)/$(offsets-file) |
| 53 | EXTRA_CFLAGS_vcpu.o += -mfixed-range=f2-f5,f12-f127 |
| 54 | kvm-intel-objs = vmm.o vmm_ivt.o trampoline.o vcpu.o optvfault.o mmio.o \ |
| 55 | vtlb.o process.o |
| 56 | #Add link memcpy and memset to avoid possible structure assignment error |
Al Viro | ea696f9 | 2008-04-28 06:59:05 +0100 | [diff] [blame] | 57 | kvm-intel-objs += ../lib/memset.o ../lib/memcpy.o |
Xiantao Zhang | b693919 | 2008-03-28 14:58:47 +0800 | [diff] [blame] | 58 | obj-$(CONFIG_KVM_INTEL) += kvm-intel.o |