Makefile (1155B)
1# SPDX-License-Identifier: GPL-2.0 2uname_M := $(shell uname -m 2>/dev/null || echo not) 3ARCH ?= $(shell echo $(uname_M) | sed -e s/x86_64/x86/) 4 5ifneq ($(ARCH),sparc64) 6nothing: 7.PHONY: all clean run_tests install 8.SILENT: 9else 10 11SUBDIRS := drivers 12 13TEST_PROGS := run.sh 14 15 16.PHONY: all clean 17 18include ../lib.mk 19 20all: 21 @for DIR in $(SUBDIRS); do \ 22 BUILD_TARGET=$(OUTPUT)/$$DIR; \ 23 mkdir $$BUILD_TARGET -p; \ 24 make OUTPUT=$$BUILD_TARGET -C $$DIR $@;\ 25 #SUBDIR test prog name should be in the form: SUBDIR_test.sh \ 26 TEST=$$DIR"_test.sh"; \ 27 if [ -e $$DIR/$$TEST ]; then \ 28 rsync -a $$DIR/$$TEST $$BUILD_TARGET/; \ 29 fi \ 30 done 31 32override define INSTALL_RULE 33 mkdir -p $(INSTALL_PATH) 34 install -t $(INSTALL_PATH) $(TEST_PROGS) $(TEST_PROGS_EXTENDED) $(TEST_FILES) 35 36 @for SUBDIR in $(SUBDIRS); do \ 37 BUILD_TARGET=$(OUTPUT)/$$SUBDIR; \ 38 mkdir $$BUILD_TARGET -p; \ 39 $(MAKE) OUTPUT=$$BUILD_TARGET -C $$SUBDIR INSTALL_PATH=$(INSTALL_PATH)/$$SUBDIR install; \ 40 done; 41endef 42 43override define CLEAN 44 @for DIR in $(SUBDIRS); do \ 45 BUILD_TARGET=$(OUTPUT)/$$DIR; \ 46 mkdir $$BUILD_TARGET -p; \ 47 make OUTPUT=$$BUILD_TARGET -C $$DIR $@;\ 48 done 49endef 50endif