Makefile 1.7 KB

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