Makefile 920 字节
Newer Older
1 2 3 4 5 6 7 8
SUBDIRS := ion

TEST_PROGS := run.sh

.PHONY: all clean

include ../lib.mk

9
all: khdr
10 11 12 13
	@for DIR in $(SUBDIRS); do		\
		BUILD_TARGET=$(OUTPUT)/$$DIR;	\
		mkdir $$BUILD_TARGET  -p;	\
		make OUTPUT=$$BUILD_TARGET -C $$DIR $@;\
14
		#SUBDIR test prog name should be in the form: SUBDIR_test.sh \
15
		TEST=$$DIR"_test.sh"; \
16 17 18
		if [ -e $$DIR/$$TEST ]; then \
			rsync -a $$DIR/$$TEST $$BUILD_TARGET/; \
		fi \
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
	done

override define INSTALL_RULE
	mkdir -p $(INSTALL_PATH)
	install -t $(INSTALL_PATH) $(TEST_PROGS) $(TEST_PROGS_EXTENDED) $(TEST_FILES)

	@for SUBDIR in $(SUBDIRS); do \
		BUILD_TARGET=$(OUTPUT)/$$SUBDIR;	\
		mkdir $$BUILD_TARGET  -p;	\
		$(MAKE) OUTPUT=$$BUILD_TARGET -C $$SUBDIR INSTALL_PATH=$(INSTALL_PATH)/$$SUBDIR install; \
	done;
endef

override define CLEAN
	@for DIR in $(SUBDIRS); do		\
		BUILD_TARGET=$(OUTPUT)/$$DIR;	\
		mkdir $$BUILD_TARGET  -p;	\
		make OUTPUT=$$BUILD_TARGET -C $$DIR $@;\
	done
endef