# SPDX-License-Identifier: GPL-2.0

TEST_GEN_PROGS := btitest nobtitest

PROGS := $(patsubst %,gen/%,$(TEST_GEN_PROGS))

# These tests are built as freestanding binaries since otherwise BTI
# support in ld.so is required which is not currently widespread; when
# it is available it will still be useful to test this separately as the
# cases for statically linked and dynamically lined binaries are
# slightly different.

CFLAGS_NOBTI = -DBTI=0
CFLAGS_BTI = -mbranch-protection=standard -DBTI=1

CFLAGS_COMMON = -ffreestanding -Wall -Wextra $(CFLAGS)

BTI_CC_COMMAND = $(CC) $(CFLAGS_BTI) $(CFLAGS_COMMON) -c -o $@ $<
NOBTI_CC_COMMAND = $(CC) $(CFLAGS_NOBTI) $(CFLAGS_COMMON) -c -o $@ $<

%-bti.o: %.c
	$(BTI_CC_COMMAND)

%-bti.o: %.S
	$(BTI_CC_COMMAND)

%-nobti.o: %.c
	$(NOBTI_CC_COMMAND)

%-nobti.o: %.S
	$(NOBTI_CC_COMMAND)

BTI_OBJS =                                      \
	test-bti.o                           \
	signal-bti.o                            \
	start-bti.o                             \
	syscall-bti.o                           \
	system-bti.o                            \
	teststubs-bti.o                         \
	trampoline-bti.o
gen/btitest: $(BTI_OBJS)
	$(CC) $(CFLAGS_BTI) $(CFLAGS_COMMON) -nostdlib -o $@ $^

NOBTI_OBJS =                                    \
	test-nobti.o                         \
	signal-nobti.o                          \
	start-nobti.o                           \
	syscall-nobti.o                         \
	system-nobti.o                          \
	teststubs-nobti.o                       \
	trampoline-nobti.o
gen/nobtitest: $(NOBTI_OBJS)
	$(CC) $(CFLAGS_BTI) $(CFLAGS_COMMON) -nostdlib -o $@ $^

# Including KSFT lib.mk here will also mangle the TEST_GEN_PROGS list
# to account for any OUTPUT target-dirs optionally provided by
# the toplevel makefile
include ../../lib.mk

$(TEST_GEN_PROGS): $(PROGS)
	cp $(PROGS) $(OUTPUT)/
