xref: /kvm-unit-tests/x86/Makefile.x86_64 (revision 03dca0b5151b24cb7eea20ff63df1b8d3fd3b0c9)
1cstart.o = $(TEST_DIR)/cstart64.o
2bits = 64
3ldarch = elf64-x86-64
4ifeq ($(CONFIG_EFI),y)
5exe = efi
6bin = so
7FORMAT = efi-app-x86_64
8cstart.o = $(TEST_DIR)/efi/efistart64.o
9arch_LDFLAGS = ''
10else
11exe = flat
12bin = elf
13arch_LDFLAGS = -m elf_x86_64
14endif
15
16fcf_protection_full := $(call cc-option, -fcf-protection=full,)
17COMMON_CFLAGS += -mno-red-zone -mno-sse -mno-sse2 $(fcf_protection_full)
18
19cflatobjs += lib/x86/setjmp64.o
20cflatobjs += lib/x86/intel-iommu.o
21cflatobjs += lib/x86/usermode.o
22
23tests = $(TEST_DIR)/apic.$(exe) \
24	  $(TEST_DIR)/idt_test.$(exe) \
25	  $(TEST_DIR)/xsave.$(exe) $(TEST_DIR)/rmap_chain.$(exe) \
26	  $(TEST_DIR)/pcid.$(exe) $(TEST_DIR)/debug.$(exe) \
27	  $(TEST_DIR)/ioapic.$(exe) $(TEST_DIR)/memory.$(exe) \
28	  $(TEST_DIR)/pku.$(exe) $(TEST_DIR)/hyperv_clock.$(exe)
29tests += $(TEST_DIR)/syscall.$(exe)
30tests += $(TEST_DIR)/tscdeadline_latency.$(exe)
31tests += $(TEST_DIR)/intel-iommu.$(exe)
32tests += $(TEST_DIR)/vmware_backdoors.$(exe)
33tests += $(TEST_DIR)/rdpru.$(exe)
34tests += $(TEST_DIR)/pks.$(exe)
35tests += $(TEST_DIR)/pmu_lbr.$(exe)
36tests += $(TEST_DIR)/pmu_pebs.$(exe)
37
38ifeq ($(CONFIG_EFI),y)
39tests += $(TEST_DIR)/amd_sev.$(exe)
40endif
41
42# The following test cases are disabled when building EFI tests because they
43# use absolute addresses in their inline assembly code, which cannot compile
44# with the '-fPIC' flag
45ifneq ($(CONFIG_EFI),y)
46tests += $(TEST_DIR)/access_test.$(exe)
47tests += $(TEST_DIR)/svm.$(exe)
48tests += $(TEST_DIR)/svm_npt.$(exe)
49tests += $(TEST_DIR)/vmx.$(exe)
50endif
51
52ifneq ($(fcf_protection_full),)
53tests += $(TEST_DIR)/cet.$(exe)
54endif
55
56include $(SRCDIR)/$(TEST_DIR)/Makefile.common
57
58$(TEST_DIR)/hyperv_clock.$(bin): $(TEST_DIR)/hyperv_clock.o
59
60$(TEST_DIR)/vmx.$(bin): $(TEST_DIR)/vmx_tests.o
61$(TEST_DIR)/svm.$(bin): $(TEST_DIR)/svm_tests.o
62$(TEST_DIR)/svm_npt.$(bin): $(TEST_DIR)/svm_npt.o
63