EXAMPLES = $(shell find $(dir $(lastword $(MAKEFILE_LIST))) -mindepth 2 -name Makefile | sed s/Makefile//g)
# Generate some dummy .dummybuild/.dummyrebuild target files
EXAMPLES_BUILD = $(patsubst %,%.dummybuild,$(EXAMPLES))
EXAMPLES_REBUILD = $(patsubst %,%.dummyrebuild,$(EXAMPLES))
EXAMPLES_CLEAN = $(patsubst %,%.dummyclean,$(EXAMPLES))

warning:
	@echo "******************************************************"
	@echo "You may not want this Makefile, even though it's here!"
	@echo "******************************************************"
	@echo ""
	@echo "SUGGESTIONS:"
	@echo "Running 'make' in one of the subdirectories of examples/ will build a single example."
	@echo "Running 'make help' in one of the subdirectories of examples/ will print some help."
	@echo ""
	@echo "OTHERWISE:"
	@echo "This makefile is for building all of the examples at once, as a developer test."
	@echo "To use it, run 'make build-examples' or 'make rebuild-examples'"
	@echo

build-examples: $(EXAMPLES_BUILD)

rebuild-examples: $(EXAMPLES_REBUILD)

clean-examples: $(EXAMPLES_CLEAN)

%.dummybuild:
	$(MAKE) -C $(dir $@)

%.dummyrebuild:
	$(MAKE) -C $(dir $@) rebuild

%.dummyclean:
	$(MAKE) -C $(dir $@) clean

.PHONY: warning rebuild-examples build-examples clean-examples
.NOTPARALLEL:
.ONESHELL: