selftests: Add infrastructure for powerpc selftests

This commit adds a powerpc subdirectory to tools/testing/selftests,
for tests that are powerpc specific.

On other architectures nothing is built. The makefile supports cross
compilation if the user sets ARCH and CROSS_COMPILE.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
This commit is contained in:
Michael Ellerman 2013-08-06 17:42:35 +10:00 committed by Benjamin Herrenschmidt
parent 39fd40274d
commit 0e56dacdda
2 changed files with 40 additions and 0 deletions

View File

@ -8,6 +8,7 @@ TARGETS += net
TARGETS += ptrace
TARGETS += timers
TARGETS += vm
TARGETS += powerpc
all:
for TARGET in $(TARGETS); do \

View File

@ -0,0 +1,39 @@
# 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)
GIT_VERSION = $(shell git describe --always --long --dirty || echo "unknown")
CC := $(CROSS_COMPILE)$(CC)
CFLAGS := -Wall -O2 -flto -Wall -Werror -DGIT_VERSION='"$(GIT_VERSION)"' -I$(CURDIR) $(CFLAGS)
export CC CFLAGS
TARGETS =
endif
all:
@for TARGET in $(TARGETS); do \
$(MAKE) -C $$TARGET all; \
done;
run_tests: all
@for TARGET in $(TARGETS); do \
$(MAKE) -C $$TARGET run_tests; \
done;
clean:
@for TARGET in $(TARGETS); do \
$(MAKE) -C $$TARGET clean; \
done;
rm -f tags
tags:
find . -name '*.c' -o -name '*.h' | xargs ctags
.PHONY: all run_tests clean tags