android-app-docker/Makefile

42 lines
1.1 KiB
Makefile

# 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 $@