xref: /linux/tools/testing/selftests/riscv/cfi/Makefile (revision cee73b1e840c154f64ace682cb477c1ae2e29cc4)
1*d30c1683SDeepak GuptaCFLAGS += $(KHDR_INCLUDES)
2*d30c1683SDeepak GuptaCFLAGS += -I$(top_srcdir)/tools/include
3*d30c1683SDeepak Gupta
4*d30c1683SDeepak GuptaCFLAGS += -march=rv64gc_zicfilp_zicfiss -fcf-protection=full
5*d30c1683SDeepak Gupta
6*d30c1683SDeepak Gupta# Check for zicfi* extensions needs cross compiler
7*d30c1683SDeepak Gupta# which is not set until lib.mk is included
8*d30c1683SDeepak Guptaifeq ($(LLVM)$(CC),cc)
9*d30c1683SDeepak GuptaCC := $(CROSS_COMPILE)gcc
10*d30c1683SDeepak Guptaendif
11*d30c1683SDeepak Gupta
12*d30c1683SDeepak Gupta
13*d30c1683SDeepak Guptaifeq ($(shell $(CC) $(CFLAGS) -nostdlib -xc /dev/null -o /dev/null > /dev/null 2>&1; echo $$?),0)
14*d30c1683SDeepak GuptaTEST_GEN_PROGS := cfitests
15*d30c1683SDeepak Gupta
16*d30c1683SDeepak Gupta$(OUTPUT)/cfitests: cfitests.c shadowstack.c
17*d30c1683SDeepak Gupta	$(CC) -o$@ $(CFLAGS) $(LDFLAGS) $^
18*d30c1683SDeepak Guptaelse
19*d30c1683SDeepak Gupta
20*d30c1683SDeepak Gupta$(shell echo "Toolchain doesn't support CFI, skipping CFI kselftest." >&2)
21*d30c1683SDeepak Guptaendif
22*d30c1683SDeepak Gupta
23*d30c1683SDeepak Guptainclude ../../lib.mk
24