1# SPDX-License-Identifier: GPL-2.0 2include ../../../scripts/Makefile.arch 3 4TEST_GEN_PROGS := vdso_test_gettimeofday 5TEST_GEN_PROGS += vdso_test_getcpu 6TEST_GEN_PROGS += vdso_test_abi 7TEST_GEN_PROGS += vdso_test_clock_getres 8ifeq ($(ARCH),$(filter $(ARCH),x86 x86_64)) 9TEST_GEN_PROGS += vdso_standalone_test_x86 10endif 11TEST_GEN_PROGS += vdso_test_correctness 12ifeq ($(ARCH)$(CONFIG_X86_32),$(filter $(ARCH)$(CONFIG_X86_32),x86 x86_64 loongarch arm64 powerpc s390)) 13TEST_GEN_PROGS += vdso_test_getrandom 14TEST_GEN_PROGS += vdso_test_chacha 15endif 16 17CFLAGS := -std=gnu99 -O2 18 19ifeq ($(CONFIG_X86_32),y) 20LDLIBS += -lgcc_s 21endif 22 23include ../lib.mk 24$(OUTPUT)/vdso_test_gettimeofday: parse_vdso.c vdso_test_gettimeofday.c 25$(OUTPUT)/vdso_test_getcpu: parse_vdso.c vdso_test_getcpu.c 26$(OUTPUT)/vdso_test_abi: parse_vdso.c vdso_test_abi.c 27$(OUTPUT)/vdso_test_clock_getres: vdso_test_clock_getres.c 28 29$(OUTPUT)/vdso_standalone_test_x86: vdso_standalone_test_x86.c parse_vdso.c 30$(OUTPUT)/vdso_standalone_test_x86: CFLAGS +=-nostdlib -fno-asynchronous-unwind-tables -fno-stack-protector 31 32$(OUTPUT)/vdso_test_correctness: vdso_test_correctness.c 33$(OUTPUT)/vdso_test_correctness: LDFLAGS += -ldl 34 35$(OUTPUT)/vdso_test_getrandom: parse_vdso.c 36$(OUTPUT)/vdso_test_getrandom: CFLAGS += -isystem $(top_srcdir)/tools/include \ 37 $(KHDR_INCLUDES) \ 38 -isystem $(top_srcdir)/include/uapi 39 40$(OUTPUT)/vdso_test_chacha: $(top_srcdir)/tools/arch/$(SRCARCH)/vdso/vgetrandom-chacha.S 41$(OUTPUT)/vdso_test_chacha: CFLAGS += -idirafter $(top_srcdir)/tools/include \ 42 -idirafter $(top_srcdir)/tools/include/generated \ 43 -idirafter $(top_srcdir)/arch/$(SRCARCH)/include \ 44 -idirafter $(top_srcdir)/include \ 45 -D__ASSEMBLY__ -Wa,--noexecstack 46