diff options
Diffstat (limited to 'tools/testing/selftests/powerpc/Makefile')
| -rw-r--r-- | tools/testing/selftests/powerpc/Makefile | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/tools/testing/selftests/powerpc/Makefile b/tools/testing/selftests/powerpc/Makefile new file mode 100644 index 000000000000..b175e94e1901 --- /dev/null +++ b/tools/testing/selftests/powerpc/Makefile @@ -0,0 +1,76 @@ +# SPDX-License-Identifier: GPL-2.0 +# Makefile for powerpc selftests + +# ARCH can be overridden by the user for cross compiling +ARCH ?= $(shell uname -m) +ARCH := $(shell echo $(ARCH) | sed -e s/ppc.*/powerpc/) + +ifeq ($(ARCH),powerpc) + +SUB_DIRS = alignment \ + benchmarks \ + cache_shape \ + copyloops \ + dexcr \ + dscr \ + mm \ + nx-gzip \ + pmu \ + signal \ + primitives \ + stringloops \ + switch_endian \ + syscalls \ + tm \ + eeh \ + vphn \ + math \ + papr_attributes \ + papr_vpd \ + papr_sysparm \ + ptrace \ + security \ + mce + +endif + +all: $(SUB_DIRS) + +$(SUB_DIRS): + BUILD_TARGET=$(OUTPUT)/$@; mkdir -p $$BUILD_TARGET; $(MAKE) OUTPUT=$$BUILD_TARGET -k -C $@ all + +include ../lib.mk +include ./flags.mk + +override define RUN_TESTS + +@for TARGET in $(SUB_DIRS); do \ + BUILD_TARGET=$(OUTPUT)/$$TARGET; \ + $(MAKE) OUTPUT=$$BUILD_TARGET -C $$TARGET run_tests;\ + done; +endef + +override define INSTALL_RULE + +@for TARGET in $(SUB_DIRS); do \ + BUILD_TARGET=$(OUTPUT)/$$TARGET; \ + $(MAKE) OUTPUT=$$BUILD_TARGET INSTALL_PATH=$$INSTALL_PATH/$$TARGET -C $$TARGET install;\ + done; +endef + +emit_tests: + +@for TARGET in $(SUB_DIRS); do \ + BUILD_TARGET=$(OUTPUT)/$$TARGET; \ + $(MAKE) OUTPUT=$$BUILD_TARGET COLLECTION=$(COLLECTION)/$$TARGET -s -C $$TARGET $@;\ + done; + +override define CLEAN + +@for TARGET in $(SUB_DIRS); do \ + BUILD_TARGET=$(OUTPUT)/$$TARGET; \ + $(MAKE) OUTPUT=$$BUILD_TARGET -C $$TARGET clean; \ + done; + rm -f tags +endef + +tags: + find . -name '*.c' -o -name '*.h' | xargs ctags + +.PHONY: tags $(SUB_DIRS) emit_tests |
