xref: /openbmc/qemu/tests/tcg/s390x/Makefile.softmmu-target (revision e17e57e862faf6e1f372385c18dcf6d3fd31158e)
1503e549eSIlya LeoshkevichS390X_SRC=$(SRC_PATH)/tests/tcg/s390x
2503e549eSIlya LeoshkevichVPATH+=$(S390X_SRC)
33b2899e3SAlex Bennée# EXTFLAGS can be passed by the user, e.g. to override the --accel
43b2899e3SAlex BennéeQEMU_OPTS+=-action panic=exit-failure -nographic -serial chardev:output $(EXTFLAGS) -kernel
5e902126cSIlya LeoshkevichLINK_SCRIPT=$(S390X_SRC)/softmmu.ld
6*9f427883SJared RossiCFLAGS+=-ggdb -O0 -I$(SRC_PATH)/include/hw/s390x/ipl/
7c2485ea4SIlya LeoshkevichLDFLAGS=-nostdlib -static
8503e549eSIlya Leoshkevich
9e902126cSIlya Leoshkevich%.o: %.S
106c180490SRichard Henderson	$(CC) -march=z13 -m64 -Wa,--noexecstack -c $< -o $@
11e902126cSIlya Leoshkevich
12c2485ea4SIlya Leoshkevich%.o: %.c
13c2485ea4SIlya Leoshkevich	$(CC) $(CFLAGS) $(EXTRA_CFLAGS) -march=z13 -m64 -c $< -o $@
14c2485ea4SIlya Leoshkevich
15c2485ea4SIlya Leoshkevich%: %.o
16e902126cSIlya Leoshkevich	$(CC) $< -o $@ $(LDFLAGS)
17503e549eSIlya Leoshkevich
18c2485ea4SIlya LeoshkevichASM_TESTS =                                                                    \
19c2485ea4SIlya Leoshkevich    bal                                                                        \
20f6044c99SIlya Leoshkevich    cksm                                                                       \
21285a672dSIlya Leoshkevich    clm                                                                        \
22c2485ea4SIlya Leoshkevich    exrl-ssm-early                                                             \
23f383b2f7SIlya Leoshkevich    icm                                                                        \
24c2485ea4SIlya Leoshkevich    sam                                                                        \
25c2485ea4SIlya Leoshkevich    lpsw                                                                       \
26c2485ea4SIlya Leoshkevich    lpswe-early                                                                \
27028dc70eSIlya Leoshkevich    lra                                                                        \
28eacfe7cbSIlya Leoshkevich    mc                                                                         \
29fa8718c7SRichard Henderson    per                                                                        \
30c3513ce5SIlya Leoshkevich    precise-smc-softmmu                                                        \
31c2485ea4SIlya Leoshkevich    ssm-early                                                                  \
32c2485ea4SIlya Leoshkevich    stosm-early                                                                \
33e11e2fc6SIlya Leoshkevich    stpq                                                                       \
34c2485ea4SIlya Leoshkevich    unaligned-lowcore
35e902126cSIlya Leoshkevich
36e902126cSIlya Leoshkevichinclude $(S390X_SRC)/pgm-specification.mak
37e902126cSIlya Leoshkevich$(PGM_SPECIFICATION_TESTS): pgm-specification-softmmu.o
38e902126cSIlya Leoshkevich$(PGM_SPECIFICATION_TESTS): LDFLAGS+=pgm-specification-softmmu.o
39c2485ea4SIlya LeoshkevichASM_TESTS += $(PGM_SPECIFICATION_TESTS)
40d044b7c3SAlex Bennée
41c2485ea4SIlya Leoshkevich$(ASM_TESTS): LDFLAGS += -Wl,-T$(LINK_SCRIPT) -Wl,--build-id=none
42c2485ea4SIlya Leoshkevich$(ASM_TESTS): $(LINK_SCRIPT)
43c2485ea4SIlya LeoshkevichTESTS += $(ASM_TESTS)
44c2485ea4SIlya Leoshkevich
45c2485ea4SIlya LeoshkevichS390X_MULTIARCH_RUNTIME_OBJS = head64.o console.o $(MINILIB_OBJS)
46c2485ea4SIlya Leoshkevich$(MULTIARCH_TESTS): $(S390X_MULTIARCH_RUNTIME_OBJS)
47c2485ea4SIlya Leoshkevich$(MULTIARCH_TESTS): LDFLAGS += $(S390X_MULTIARCH_RUNTIME_OBJS)
48c2485ea4SIlya Leoshkevich$(MULTIARCH_TESTS): CFLAGS += $(MINILIB_INC)
49c2485ea4SIlya Leoshkevichmemory: CFLAGS += -DCHECK_UNALIGNED=0
50ecbcc9eaSAlex Bennée
51ecbcc9eaSAlex Bennée# s390x clears the BSS section so we need to account for that
52ecbcc9eaSAlex Bennéerun-plugin-memory-with-libmem.so: 		\
53ecbcc9eaSAlex Bennée	CHECK_PLUGIN_OUTPUT_COMMAND=$(MULTIARCH_SYSTEM_SRC)/validate-memory-counts.py \
54ecbcc9eaSAlex Bennée		--bss-cleared $@.out
55