1# SPDX-License-Identifier: GPL-2.0 2 3# A proper top_srcdir is needed by KSFT(lib.mk) 4top_srcdir = $(realpath ../../../../../) 5 6CFLAGS += -I$(top_srcdir)/usr/include/ 7 8TEST_GEN_PROGS := sve-ptrace sve-probe-vls vec-syscfg za-fork za-ptrace 9TEST_GEN_PROGS_EXTENDED := fp-pidbench fpsimd-test \ 10 rdvl-sme rdvl-sve \ 11 sve-test \ 12 ssve-test \ 13 za-test \ 14 vlset 15TEST_PROGS_EXTENDED := fpsimd-stress sve-stress ssve-stress za-stress 16 17EXTRA_CLEAN += $(OUTPUT)/asm-utils.o $(OUTPUT)/rdvl.o $(OUTPUT)/za-fork-asm.o 18 19# Build with nolibc to avoid effects due to libc's clone() support 20fp-pidbench: fp-pidbench.S asm-utils.o 21 $(CC) -nostdlib $^ -o $@ 22fpsimd-test: fpsimd-test.o asm-utils.o 23 $(CC) -nostdlib $^ -o $@ 24rdvl-sme: rdvl-sme.o rdvl.o 25rdvl-sve: rdvl-sve.o rdvl.o 26sve-ptrace: sve-ptrace.o 27sve-probe-vls: sve-probe-vls.o rdvl.o 28sve-test: sve-test.o asm-utils.o 29 $(CC) -nostdlib $^ -o $@ 30ssve-test: sve-test.S asm-utils.o 31 $(CC) -DSSVE -nostdlib $^ -o $@ 32vec-syscfg: vec-syscfg.o rdvl.o 33vlset: vlset.o 34za-fork: za-fork.o za-fork-asm.o 35 $(CC) -nostdlib -static $^ -o $@ -lgcc 36za-fork.o: za-fork.c 37 $(CC) -c -fno-asynchronous-unwind-tables -fno-ident -s -Os -nostdlib \ 38 -include ../../../../include/nolibc/nolibc.h \ 39 -ffreestanding -Wall $^ -o $@ 40za-test: za-test.o asm-utils.o 41 $(CC) -nostdlib $^ -o $@ 42za-ptrace: za-ptrace.o 43 44include ../../lib.mk 45