1 # SPDX-License-Identifier: GPL-2.0 2 # Makefile for powerpc selftests 3 4 # ARCH can be overridden by the user for cross compiling 5 ARCH ?= $(shell uname -m) 6 ARCH := $(shell echo $(ARCH) | sed -e s/ppc.*/powerpc/) 7 8 ifeq ($(ARCH),powerpc) 9 10 SUB_DIRS = alignment \ 11 benchmarks \ 12 cache_shape \ 13 copyloops \ 14 dexcr \ 15 dscr \ 16 mm \ 17 nx-gzip \ 18 pmu \ 19 signal \ 20 primitives \ 21 stringloops \ 22 switch_endian \ 23 syscalls \ 24 tm \ 25 eeh \ 26 vphn \ 27 math \ 28 papr_attributes \ 29 papr_vpd \ 30 papr_sysparm \ 31 ptrace \ 32 security \ 33 mce 34 35 endif 36 37 all: $(SUB_DIRS) 38 39 $(SUB_DIRS): 40 BUILD_TARGET=$(OUTPUT)/$@; mkdir -p $$BUILD_TARGET; $(MAKE) OUTPUT=$$BUILD_TARGET -k -C $@ all 41 42 include ../lib.mk 43 include ./flags.mk 44 45 override define RUN_TESTS 46 +@for TARGET in $(SUB_DIRS); do \ 47 BUILD_TARGET=$(OUTPUT)/$$TARGET; \ 48 $(MAKE) OUTPUT=$$BUILD_TARGET -C $$TARGET run_tests;\ 49 done; 50 endef 51 52 override define INSTALL_RULE 53 +@for TARGET in $(SUB_DIRS); do \ 54 BUILD_TARGET=$(OUTPUT)/$$TARGET; \ 55 $(MAKE) OUTPUT=$$BUILD_TARGET INSTALL_PATH=$$INSTALL_PATH/$$TARGET -C $$TARGET install;\ 56 done; 57 endef 58 59 emit_tests: 60 +@for TARGET in $(SUB_DIRS); do \ 61 BUILD_TARGET=$(OUTPUT)/$$TARGET; \ 62 $(MAKE) OUTPUT=$$BUILD_TARGET COLLECTION=$(COLLECTION)/$$TARGET -s -C $$TARGET $@;\ 63 done; 64 65 override define CLEAN 66 +@for TARGET in $(SUB_DIRS); do \ 67 BUILD_TARGET=$(OUTPUT)/$$TARGET; \ 68 $(MAKE) OUTPUT=$$BUILD_TARGET -C $$TARGET clean; \ 69 done; 70 rm -f tags 71 endef 72 73 tags: 74 find . -name '*.c' -o -name '*.h' | xargs ctags 75 76 .PHONY: tags $(SUB_DIRS) emit_tests
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.