1# Makefile for powerpc selftests 2 3# ARCH can be overridden by the user for cross compiling 4ARCH ?= $(shell uname -m) 5ARCH := $(shell echo $(ARCH) | sed -e s/ppc.*/powerpc/) 6 7ifeq ($(ARCH),powerpc) 8 9GIT_VERSION = $(shell git describe --always --long --dirty || echo "unknown") 10 11CFLAGS := -Wall -O2 -Wall -Werror -DGIT_VERSION='"$(GIT_VERSION)"' -I$(CURDIR) $(CFLAGS) 12 13export CFLAGS 14 15SUB_DIRS = benchmarks \ 16 copyloops \ 17 dscr \ 18 mm \ 19 pmu \ 20 primitives \ 21 stringloops \ 22 switch_endian \ 23 syscalls \ 24 tm \ 25 vphn \ 26 math 27 28endif 29 30all: $(SUB_DIRS) 31 32$(SUB_DIRS): 33 $(MAKE) -k -C $@ all 34 35include ../lib.mk 36 37override define RUN_TESTS 38 @for TARGET in $(SUB_DIRS); do \ 39 $(MAKE) -C $$TARGET run_tests; \ 40 done; 41endef 42 43override define INSTALL_RULE 44 @for TARGET in $(SUB_DIRS); do \ 45 $(MAKE) -C $$TARGET install; \ 46 done; 47endef 48 49override define EMIT_TESTS 50 @for TARGET in $(SUB_DIRS); do \ 51 $(MAKE) -s -C $$TARGET emit_tests; \ 52 done; 53endef 54 55clean: 56 @for TARGET in $(SUB_DIRS); do \ 57 $(MAKE) -C $$TARGET clean; \ 58 done; 59 rm -f tags 60 61tags: 62 find . -name '*.c' -o -name '*.h' | xargs ctags 63 64.PHONY: tags $(SUB_DIRS) 65