]>
Commit | Line | Data |
---|---|---|
0e56dacd ME |
1 | # Makefile for powerpc selftests |
2 | ||
3 | # ARCH can be overridden by the user for cross compiling | |
4 | ARCH ?= $(shell uname -m) | |
5 | ARCH := $(shell echo $(ARCH) | sed -e s/ppc.*/powerpc/) | |
6 | ||
7 | ifeq ($(ARCH),powerpc) | |
8 | ||
9 | GIT_VERSION = $(shell git describe --always --long --dirty || echo "unknown") | |
10 | ||
15ec3997 | 11 | CFLAGS := -std=gnu99 -Wall -O2 -Wall -Werror -DGIT_VERSION='"$(GIT_VERSION)"' -I$(CURDIR)/include $(CFLAGS) |
0e56dacd | 12 | |
84f887bf | 13 | export CFLAGS |
0e56dacd | 14 | |
43750880 CS |
15 | SUB_DIRS = alignment \ |
16 | benchmarks \ | |
b8b6ff01 | 17 | cache_shape \ |
65b6ba63 | 18 | copyloops \ |
438517ec | 19 | context_switch \ |
65b6ba63 ME |
20 | dscr \ |
21 | mm \ | |
22 | pmu \ | |
ef186331 | 23 | signal \ |
65b6ba63 ME |
24 | primitives \ |
25 | stringloops \ | |
26 | switch_endian \ | |
27 | syscalls \ | |
28 | tm \ | |
01127f1e | 29 | vphn \ |
f666ad41 AK |
30 | math \ |
31 | ptrace | |
0e56dacd ME |
32 | |
33 | endif | |
34 | ||
a908f5de | 35 | all: $(SUB_DIRS) |
cbfd7dab | 36 | |
a908f5de | 37 | $(SUB_DIRS): |
a8ba798b | 38 | BUILD_TARGET=$$OUTPUT/$@; mkdir -p $$BUILD_TARGET; $(MAKE) OUTPUT=$$BUILD_TARGET -k -C $@ all |
0e56dacd | 39 | |
6faeeea4 ME |
40 | include ../lib.mk |
41 | ||
42 | override define RUN_TESTS | |
a908f5de | 43 | @for TARGET in $(SUB_DIRS); do \ |
a8ba798b | 44 | BUILD_TARGET=$$OUTPUT/$$TARGET; \ |
45 | $(MAKE) OUTPUT=$$BUILD_TARGET -C $$TARGET run_tests;\ | |
0e56dacd | 46 | done; |
6faeeea4 ME |
47 | endef |
48 | ||
49 | override define INSTALL_RULE | |
d19d5efd | 50 | @for TARGET in $(SUB_DIRS); do \ |
a8ba798b | 51 | BUILD_TARGET=$$OUTPUT/$$TARGET; \ |
52 | $(MAKE) OUTPUT=$$BUILD_TARGET -C $$TARGET install;\ | |
6faeeea4 ME |
53 | done; |
54 | endef | |
55 | ||
56 | override define EMIT_TESTS | |
d19d5efd | 57 | @for TARGET in $(SUB_DIRS); do \ |
a8ba798b | 58 | BUILD_TARGET=$$OUTPUT/$$TARGET; \ |
59 | $(MAKE) OUTPUT=$$BUILD_TARGET -s -C $$TARGET emit_tests;\ | |
6faeeea4 ME |
60 | done; |
61 | endef | |
0e56dacd ME |
62 | |
63 | clean: | |
a908f5de | 64 | @for TARGET in $(SUB_DIRS); do \ |
a8ba798b | 65 | BUILD_TARGET=$$OUTPUT/$$TARGET; \ |
2e8ec87d ME |
66 | $(MAKE) OUTPUT=$$BUILD_TARGET -C $$TARGET clean; \ |
67 | done; | |
0e56dacd ME |
68 | rm -f tags |
69 | ||
70 | tags: | |
71 | find . -name '*.c' -o -name '*.h' | xargs ctags | |
72 | ||
d19d5efd | 73 | .PHONY: tags $(SUB_DIRS) |