#
# Alpha system tests
#

ALPHA_SYSTEM_SRC=$(SRC_PATH)/tests/tcg/alpha/system
VPATH+=$(ALPHA_SYSTEM_SRC)

# These objects provide the basic boot code and helper functions for all tests
CRT_OBJS=boot.o

ALPHA_TEST_SRCS=$(wildcard $(ALPHA_SYSTEM_SRC)/*.c)
ALPHA_TESTS = $(patsubst $(ALPHA_SYSTEM_SRC)/%.c, %, $(ALPHA_TEST_SRCS))

CRT_PATH=$(ALPHA_SYSTEM_SRC)
LINK_SCRIPT=$(ALPHA_SYSTEM_SRC)/kernel.ld
LDFLAGS=-Wl,-T$(LINK_SCRIPT)
TESTS+=$(ALPHA_TESTS) $(MULTIARCH_TESTS)
CFLAGS+=-nostdlib -g -O1 -mcpu=ev6 $(MINILIB_INC)
LDFLAGS+=-static -nostdlib $(CRT_OBJS) $(MINILIB_OBJS) -lgcc

# building head blobs
.PRECIOUS: $(CRT_OBJS)

%.o: $(CRT_PATH)/%.S
	$(CC) $(CFLAGS) $(EXTRA_CFLAGS) -x assembler-with-cpp -c $< -o $@

# Build and link the tests
%: %.c $(LINK_SCRIPT) $(CRT_OBJS) $(MINILIB_OBJS)
	$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $< -o $@ $(LDFLAGS)

memory: CFLAGS+=-DCHECK_UNALIGNED=0

# Running
QEMU_OPTS+=-serial chardev:output -kernel
