# this includes explicit rules include Makefile.apps Makefile.apps: Makefile apps @(\ cd apps;\ for APP in */;\ do \ test -d "$$APP" || continue;\ APP="$${APP%/}";\ MFA="\ apps/$$APP/app.apk: docker-compose-build.log\n\ docker compose run --rm compile $$APP\n\ build-$$APP: apps/$$APP/app.apk\n\ true\n\ apps/$$APP/app.apk.install-log: apps/$$APP/app.apk\n\ adb install -r $$< > \$$@ || rm \$$@ \n\ install-$$APP: apps/$$APP/app.apk.install-log\n\ true\n\ run-$$APP: apps/$$APP/app.apk.install-log\n\ adb shell am start -n app.example/.ExampleApp\n\ ";\ done;\ printf "$$MFA" \ ) > "$@" apps: mkdir "$@" install: $(shell for APP in apps/*/; do test -d "$$APP" || continue; echo "$$APP""app.apk.install-log"; done) force-install reinstall: for APP in apps/*/; do rm -f "$$APP""app.apk.install-log" 2>/dev/null; done; $(MAKE) install run: $(shell cd apps/; for APP in */; do test -d "$$APP" || continue; echo "run-$${APP%/}"; done) docker-compose-build.log: Dockerfile compose.yml docker-compose down --remove-orphans --rmi all BUILDKIT_PROGRESS=plain docker-compose build | tee docker-compose-build.log some thing: echo was $@