1#
2# Nios2 system tests
3#
4# Copyright Linaro Ltd 2022
5# SPDX-License-Identifier: GPL-2.0-or-later
6#
7
8NIOS2_SYSTEM_SRC = $(SRC_PATH)/tests/tcg/nios2
9VPATH += $(NIOS2_SYSTEM_SRC)
10
11# These objects provide the basic boot code and helper functions for all tests
12CRT_OBJS = boot.o intr.o $(MINILIB_OBJS)
13LINK_SCRIPT = $(NIOS2_SYSTEM_SRC)/10m50-ghrd.ld
14
15CFLAGS  += -nostdlib -g -O0 $(MINILIB_INC)
16LDFLAGS += -Wl,-T$(LINK_SCRIPT) -static -nostdlib $(CRT_OBJS) -lgcc
17
18%.o: %.S
19	$(call quiet-command, $(CC) $(CFLAGS) $(EXTRA_CFLAGS) -x assembler-with-cpp -c $< -o $@, AS, $@)
20
21%.o: %.c
22	$(call quiet-command, $(CC) $(CFLAGS) $(EXTRA_CFLAGS) -c $< -o $@, CC, $@)
23
24# Build and link the tests
25%: %.o $(LINK_SCRIPT) $(CRT_OBJS)
26	$(call quiet-command, $(CC) $(CFLAGS) $(EXTRA_CFLAGS) $< -o $@ $(LDFLAGS), LD, $@)
27
28QEMU_OPTS = -M 10m50-ghrd,vic=on -semihosting-config enable=on,target=native,chardev=output -kernel
29
30memory: CFLAGS+=-DCHECK_UNALIGNED=0
31TESTS += $(MULTIARCH_TESTS)
32TESTS += test-shadow-1
33