0001
0002 uname_M := $(shell uname -m 2>/dev/null || echo not)
0003 ARCH ?= $(shell echo $(uname_M) | sed -e s/x86_64/x86/)
0004
0005 ifneq ($(ARCH),sparc64)
0006 nothing:
0007 .PHONY: all clean run_tests install
0008 .SILENT:
0009 else
0010
0011 SUBDIRS := drivers
0012
0013 TEST_PROGS := run.sh
0014
0015
0016 .PHONY: all clean
0017
0018 include ../lib.mk
0019
0020 all:
0021 @for DIR in $(SUBDIRS); do \
0022 BUILD_TARGET=$(OUTPUT)/$$DIR; \
0023 mkdir $$BUILD_TARGET -p; \
0024 make OUTPUT=$$BUILD_TARGET -C $$DIR $@;\
0025
0026 TEST=$$DIR"_test.sh"; \
0027 if [ -e $$DIR/$$TEST ]; then \
0028 rsync -a $$DIR/$$TEST $$BUILD_TARGET/; \
0029 fi \
0030 done
0031
0032 override define INSTALL_RULE
0033 mkdir -p $(INSTALL_PATH)
0034 install -t $(INSTALL_PATH) $(TEST_PROGS) $(TEST_PROGS_EXTENDED) $(TEST_FILES)
0035
0036 @for SUBDIR in $(SUBDIRS); do \
0037 BUILD_TARGET=$(OUTPUT)/$$SUBDIR; \
0038 mkdir $$BUILD_TARGET -p; \
0039 $(MAKE) OUTPUT=$$BUILD_TARGET -C $$SUBDIR INSTALL_PATH=$(INSTALL_PATH)/$$SUBDIR install; \
0040 done;
0041 endef
0042
0043 override define CLEAN
0044 @for DIR in $(SUBDIRS); do \
0045 BUILD_TARGET=$(OUTPUT)/$$DIR; \
0046 mkdir $$BUILD_TARGET -p; \
0047 make OUTPUT=$$BUILD_TARGET -C $$DIR $@;\
0048 done
0049 endef
0050 endif