xref: /openbmc/linux/tools/testing/selftests/riscv/Makefile (revision c900529f3d9161bfde5cca0754f83b4d3c3e0220)
1287dcc2bSEvan Green# SPDX-License-Identifier: GPL-2.0
2287dcc2bSEvan Green# Originally tools/testing/arm64/Makefile
3287dcc2bSEvan Green
4287dcc2bSEvan Green# When ARCH not overridden for crosscompiling, lookup machine
5287dcc2bSEvan GreenARCH ?= $(shell uname -m 2>/dev/null || echo not)
6287dcc2bSEvan Green
7287dcc2bSEvan Greenifneq (,$(filter $(ARCH),riscv))
8*4d0c04eaSCharlie JenkinsRISCV_SUBTARGETS ?= hwprobe vector mm
9287dcc2bSEvan Greenelse
10287dcc2bSEvan GreenRISCV_SUBTARGETS :=
11287dcc2bSEvan Greenendif
12287dcc2bSEvan Green
13287dcc2bSEvan GreenCFLAGS := -Wall -O2 -g
14287dcc2bSEvan Green
15287dcc2bSEvan Green# A proper top_srcdir is needed by KSFT(lib.mk)
16287dcc2bSEvan Greentop_srcdir = $(realpath ../../../../)
17287dcc2bSEvan Green
18287dcc2bSEvan Green# Additional include paths needed by kselftest.h and local headers
19287dcc2bSEvan GreenCFLAGS += -I$(top_srcdir)/tools/testing/selftests/
20287dcc2bSEvan Green
21287dcc2bSEvan GreenCFLAGS += $(KHDR_INCLUDES)
22287dcc2bSEvan Green
23287dcc2bSEvan Greenexport CFLAGS
24287dcc2bSEvan Greenexport top_srcdir
25287dcc2bSEvan Green
26287dcc2bSEvan Greenall:
27287dcc2bSEvan Green	@for DIR in $(RISCV_SUBTARGETS); do				\
28287dcc2bSEvan Green		BUILD_TARGET=$(OUTPUT)/$$DIR;			\
29287dcc2bSEvan Green		mkdir -p $$BUILD_TARGET;			\
30287dcc2bSEvan Green		$(MAKE) OUTPUT=$$BUILD_TARGET -C $$DIR $@;		\
31287dcc2bSEvan Green	done
32287dcc2bSEvan Green
33287dcc2bSEvan Greeninstall: all
34287dcc2bSEvan Green	@for DIR in $(RISCV_SUBTARGETS); do				\
35287dcc2bSEvan Green		BUILD_TARGET=$(OUTPUT)/$$DIR;			\
36287dcc2bSEvan Green		$(MAKE) OUTPUT=$$BUILD_TARGET -C $$DIR $@;		\
37287dcc2bSEvan Green	done
38287dcc2bSEvan Green
39287dcc2bSEvan Greenrun_tests: all
40287dcc2bSEvan Green	@for DIR in $(RISCV_SUBTARGETS); do				\
41287dcc2bSEvan Green		BUILD_TARGET=$(OUTPUT)/$$DIR;			\
42287dcc2bSEvan Green		$(MAKE) OUTPUT=$$BUILD_TARGET -C $$DIR $@;		\
43287dcc2bSEvan Green	done
44287dcc2bSEvan Green
45287dcc2bSEvan Green# Avoid any output on non riscv on emit_tests
46c77896b1SJohn Hubbardemit_tests:
47287dcc2bSEvan Green	@for DIR in $(RISCV_SUBTARGETS); do				\
48287dcc2bSEvan Green		BUILD_TARGET=$(OUTPUT)/$$DIR;			\
49287dcc2bSEvan Green		$(MAKE) OUTPUT=$$BUILD_TARGET -C $$DIR $@;		\
50287dcc2bSEvan Green	done
51287dcc2bSEvan Green
52287dcc2bSEvan Greenclean:
53287dcc2bSEvan Green	@for DIR in $(RISCV_SUBTARGETS); do				\
54287dcc2bSEvan Green		BUILD_TARGET=$(OUTPUT)/$$DIR;			\
55287dcc2bSEvan Green		$(MAKE) OUTPUT=$$BUILD_TARGET -C $$DIR $@;		\
56287dcc2bSEvan Green	done
57287dcc2bSEvan Green
58287dcc2bSEvan Green.PHONY: all clean install run_tests emit_tests
59