1# SPDX-License-Identifier: GPL-2.0 2 3CFLAGS += $(KHDR_INCLUDES) 4CFLAGS += -I$(top_srcdir)/tools/include 5 6CFLAGS += -march=rv64gc_zicfilp_zicfiss -fcf-protection=full 7 8# Check for zicfi* extensions needs cross compiler 9# which is not set until lib.mk is included 10ifeq ($(LLVM)$(CC),cc) 11CC := $(CROSS_COMPILE)gcc 12endif 13 14 15ifeq ($(shell $(CC) $(CFLAGS) -nostdlib -xc /dev/null -o /dev/null > /dev/null 2>&1; echo $$?),0) 16TEST_GEN_PROGS := cfitests 17 18$(OUTPUT)/cfitests: cfitests.c shadowstack.c 19 $(CC) -o$@ $(CFLAGS) $(LDFLAGS) $^ 20else 21 22$(shell echo "Toolchain doesn't support CFI, skipping CFI kselftest." >&2) 23endif 24 25include ../../lib.mk 26