blob: 1fbbf0ca1f0291d00882920eb2d1efbf99882ec1 [file] [log] [blame] [edit]
# SPDX-License-Identifier: GPL-2.0
# Copyright (C) 2023 ARM Limited
#
# In order to avoid interaction with the toolchain and dynamic linker the
# portions of these tests that interact with the GCS are implemented using
# nolibc.
#
TEST_GEN_PROGS := basic-gcs libc-gcs gcs-locking gcs-stress gcspushm gcsstr
TEST_GEN_PROGS_EXTENDED := gcs-stress-thread
LDLIBS+=-lpthread
include ../../lib.mk
$(OUTPUT)/basic-gcs: basic-gcs.c
$(CC) $(CFLAGS) -fno-asynchronous-unwind-tables -fno-ident -s -nostdlib -nostdinc \
-static -I../../../../include/nolibc -include ../../../../include/nolibc/nolibc.h \
-I../../../../../usr/include \
-std=gnu99 -I../.. -g \
-ffreestanding $^ -o $@ -lgcc
$(OUTPUT)/gcs-stress-thread: gcs-stress-thread.S
$(CC) -nostdlib $^ -o $@
$(OUTPUT)/gcspushm: gcspushm.S
$(CC) -nostdlib $^ -o $@
$(OUTPUT)/gcsstr: gcsstr.S
$(CC) -nostdlib $^ -o $@