Makefile 867 B

1234567891011121314151617181920212223242526272829303132333435
  1. # SPDX-License-Identifier: GPL-2.0
  2. SUBDIRS := functional
  3. TEST_PROGS := run.sh
  4. include ../lib.mk
  5. all:
  6. @for DIR in $(SUBDIRS); do \
  7. BUILD_TARGET=$(OUTPUT)/$$DIR; \
  8. mkdir $$BUILD_TARGET -p; \
  9. $(MAKE) OUTPUT=$$BUILD_TARGET -C $$DIR $@;\
  10. if [ -e $$DIR/$(TEST_PROGS) ]; then \
  11. rsync -a $$DIR/$(TEST_PROGS) $$BUILD_TARGET/; \
  12. fi \
  13. done
  14. override define INSTALL_RULE
  15. mkdir -p $(INSTALL_PATH)
  16. install -t $(INSTALL_PATH) $(TEST_PROGS) $(TEST_PROGS_EXTENDED) $(TEST_FILES)
  17. @for SUBDIR in $(SUBDIRS); do \
  18. BUILD_TARGET=$(OUTPUT)/$$SUBDIR; \
  19. mkdir $$BUILD_TARGET -p; \
  20. $(MAKE) OUTPUT=$$BUILD_TARGET -C $$SUBDIR INSTALL_PATH=$(INSTALL_PATH)/$$SUBDIR install; \
  21. done;
  22. endef
  23. override define CLEAN
  24. @for DIR in $(SUBDIRS); do \
  25. BUILD_TARGET=$(OUTPUT)/$$DIR; \
  26. mkdir $$BUILD_TARGET -p; \
  27. $(MAKE) OUTPUT=$$BUILD_TARGET -C $$DIR $@;\
  28. done
  29. endef