Skip to content

Commit 4f2083a

Browse files
a4lgcmuellner
authored andcommitted
regression: Smart construction/configuration of TARGETS
It makes: 1. Default target list is easier to read and to reconfigure by splitting target bases and code models. 2. TARGETS is now configurable through external environment variable (not just as a make argument), which makes TARGETS consistent with RUNTESTFLAGS. Because `TARGETS = ...` is used inside the Makefile, we could configure targets to perform regression tests with `make report TARGETS='...'` but not `TARGETS='...' make report`. This semantics is inconsistent with e.g. RUNTESTFLAGS as shown in README.md. This commit now uses `?=` to respect environment variable TARGETS given from outside, making `TARGETS='...' make report` usable. Also, this commit changes how default target list is constructed. It splits target bases and code models and each is reconfigurable through make arguments (like `make report TARGET_CODE_MODELS=medlow`). Note that TARGET_BASES and TARGET_CODE_MODELS are chosen so that no submodules use those Make variables and are ignored when the variable `TARGETS` is explicitly configured.
1 parent b8ca156 commit 4f2083a

File tree

1 file changed

+16
-27
lines changed

1 file changed

+16
-27
lines changed

regression/Makefile

Lines changed: 16 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -2,33 +2,22 @@
22
report:
33

44
# The list of target tuples that we want to test.
5-
TARGETS =
6-
TARGETS += newlib-rv32i-ilp32-medlow
7-
TARGETS += newlib-rv32im-ilp32-medlow
8-
TARGETS += newlib-rv32iac-ilp32-medlow
9-
TARGETS += newlib-rv32imac-ilp32-medlow
10-
TARGETS += newlib-rv32imafc-ilp32f-medlow
11-
TARGETS += newlib-rv64imac-lp64-medlow
12-
TARGETS += newlib-rv64imafdc-lp64d-medlow
13-
TARGETS += linux-rv32imac-ilp32-medlow
14-
TARGETS += linux-rv32imafdc-ilp32-medlow
15-
TARGETS += linux-rv32imafdc-ilp32d-medlow
16-
TARGETS += linux-rv64imac-lp64-medlow
17-
TARGETS += linux-rv64imafdc-lp64-medlow
18-
TARGETS += linux-rv64imafdc-lp64d-medlow
19-
TARGETS += newlib-rv32i-ilp32-medany
20-
TARGETS += newlib-rv32im-ilp32-medany
21-
TARGETS += newlib-rv32iac-ilp32-medany
22-
TARGETS += newlib-rv32imac-ilp32-medany
23-
TARGETS += newlib-rv32imafc-ilp32f-medany
24-
TARGETS += newlib-rv64imac-lp64-medany
25-
TARGETS += newlib-rv64imafdc-lp64d-medany
26-
TARGETS += linux-rv32imac-ilp32-medany
27-
TARGETS += linux-rv32imafdc-ilp32-medany
28-
TARGETS += linux-rv32imafdc-ilp32d-medany
29-
TARGETS += linux-rv64imac-lp64-medany
30-
TARGETS += linux-rv64imafdc-lp64-medany
31-
TARGETS += linux-rv64imafdc-lp64d-medany
5+
TARGET_BASES = \
6+
newlib-rv32i-ilp32 \
7+
newlib-rv32im-ilp32 \
8+
newlib-rv32iac-ilp32 \
9+
newlib-rv32imac-ilp32 \
10+
newlib-rv32imafc-ilp32f \
11+
newlib-rv64imac-lp64 \
12+
newlib-rv64imafdc-lp64d \
13+
linux-rv32imac-ilp32 \
14+
linux-rv32imafdc-ilp32 \
15+
linux-rv32imafdc-ilp32d \
16+
linux-rv64imac-lp64 \
17+
linux-rv64imafdc-lp64 \
18+
linux-rv64imafdc-lp64d
19+
TARGET_CODE_MODELS = medlow medany
20+
TARGETS ?= $(foreach CODE_MODEL,$(TARGET_CODE_MODELS), $(addsuffix -$(CODE_MODEL),$(TARGET_BASES)))
3221

3322
# This is the link between the report targets and the actual testsuite
3423
# build/test runs. It's setup with a level of indirection here to make sure

0 commit comments

Comments
 (0)