Makefile 802 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. # Makefile for powerpc selftests
  2. # ARCH can be overridden by the user for cross compiling
  3. ARCH ?= $(shell uname -m)
  4. ARCH := $(shell echo $(ARCH) | sed -e s/ppc.*/powerpc/)
  5. ifeq ($(ARCH),powerpc)
  6. GIT_VERSION = $(shell git describe --always --long --dirty || echo "unknown")
  7. CC := $(CROSS_COMPILE)$(CC)
  8. CFLAGS := -Wall -O2 -flto -Wall -Werror -DGIT_VERSION='"$(GIT_VERSION)"' -I$(CURDIR) $(CFLAGS)
  9. export CC CFLAGS
  10. TARGETS = pmu copyloops mm tm primitives
  11. endif
  12. all: $(TARGETS)
  13. $(TARGETS):
  14. $(MAKE) -k -C $@ all
  15. run_tests: all
  16. @for TARGET in $(TARGETS); do \
  17. $(MAKE) -C $$TARGET run_tests; \
  18. done;
  19. clean:
  20. @for TARGET in $(TARGETS); do \
  21. $(MAKE) -C $$TARGET clean; \
  22. done;
  23. rm -f tags
  24. tags:
  25. find . -name '*.c' -o -name '*.h' | xargs ctags
  26. .PHONY: all run_tests clean tags $(TARGETS)