]> git.proxmox.com Git - mirror_ubuntu-kernels.git/blame - tools/testing/selftests/kvm/Makefile
Merge branches 'for-5.1/upstream-fixes', 'for-5.2/core', 'for-5.2/ish', 'for-5.2...
[mirror_ubuntu-kernels.git] / tools / testing / selftests / kvm / Makefile
CommitLineData
783e9e51
PB
1all:
2
cc68765d 3top_srcdir = ../../../..
211929fd 4KSFT_KHDR_INSTALL := 1
783e9e51
PB
5UNAME_M := $(shell uname -m)
6
14c47b75 7LIBKVM = lib/assert.c lib/elf.c lib/io.c lib/kvm_util.c lib/ucall.c lib/sparsebit.c
cc68765d 8LIBKVM_x86_64 = lib/x86_64/processor.c lib/x86_64/vmx.c
fff8dcd7 9LIBKVM_aarch64 = lib/aarch64/processor.c
783e9e51 10
cc68765d
AJ
11TEST_GEN_PROGS_x86_64 = x86_64/platform_info_test
12TEST_GEN_PROGS_x86_64 += x86_64/set_sregs_test
13TEST_GEN_PROGS_x86_64 += x86_64/sync_regs_test
14TEST_GEN_PROGS_x86_64 += x86_64/vmx_tsc_adjust_test
15TEST_GEN_PROGS_x86_64 += x86_64/cr4_cpuid_sync_test
16TEST_GEN_PROGS_x86_64 += x86_64/state_test
18178ff8 17TEST_GEN_PROGS_x86_64 += x86_64/evmcs_test
7edcb734 18TEST_GEN_PROGS_x86_64 += x86_64/hyperv_cpuid
65ab26e3 19TEST_GEN_PROGS_x86_64 += x86_64/vmx_close_while_nested_test
fff8dcd7 20TEST_GEN_PROGS_x86_64 += dirty_log_test
2a31b9db 21TEST_GEN_PROGS_x86_64 += clear_dirty_log_test
fff8dcd7
AJ
22
23TEST_GEN_PROGS_aarch64 += dirty_log_test
2a31b9db 24TEST_GEN_PROGS_aarch64 += clear_dirty_log_test
783e9e51
PB
25
26TEST_GEN_PROGS += $(TEST_GEN_PROGS_$(UNAME_M))
27LIBKVM += $(LIBKVM_$(UNAME_M))
28
29INSTALL_HDR_PATH = $(top_srcdir)/usr
30LINUX_HDR_PATH = $(INSTALL_HDR_PATH)/include/
cc68765d 31LINUX_TOOL_INCLUDE = $(top_srcdir)/tools/include
ffac839d
SC
32CFLAGS += -O2 -g -std=gnu99 -fno-stack-protector -fno-PIE -I$(LINUX_TOOL_INCLUDE) -I$(LINUX_HDR_PATH) -Iinclude -I$(<D) -Iinclude/$(UNAME_M) -I..
33LDFLAGS += -pthread -no-pie
783e9e51
PB
34
35# After inclusion, $(OUTPUT) is defined and
36# $(TEST_GEN_PROGS) starts with $(OUTPUT)/
37include ../lib.mk
38
39STATIC_LIBS := $(OUTPUT)/libkvm.a
40LIBKVM_OBJ := $(patsubst %.c, $(OUTPUT)/%.o, $(LIBKVM))
eea192bf 41EXTRA_CLEAN += $(LIBKVM_OBJ) $(STATIC_LIBS) cscope.*
783e9e51
PB
42
43x := $(shell mkdir -p $(sort $(dir $(LIBKVM_OBJ))))
44$(LIBKVM_OBJ): $(OUTPUT)/%.o: %.c
45 $(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c $< -o $@
46
47$(OUTPUT)/libkvm.a: $(LIBKVM_OBJ)
48 $(AR) crs $@ $^
49
b2d35fa5 50all: $(STATIC_LIBS)
783e9e51 51$(TEST_GEN_PROGS): $(STATIC_LIBS)
eea192bf
AJ
52
53cscope: include_paths = $(LINUX_TOOL_INCLUDE) $(LINUX_HDR_PATH) include lib ..
54cscope:
55 $(RM) cscope.*
56 (find $(include_paths) -name '*.h' \
57 -exec realpath --relative-base=$(PWD) {} \;; \
58 find . -name '*.c' \
59 -exec realpath --relative-base=$(PWD) {} \;) | sort -u > cscope.files
60 cscope -b