diff --git a/cmd/miqt-docker/README.md b/cmd/miqt-docker/README.md index be5b9b02..a57fea0f 100644 --- a/cmd/miqt-docker/README.md +++ b/cmd/miqt-docker/README.md @@ -2,6 +2,8 @@ This is a helper program to quickly run a dockerized MIQT build environment. +It also has some built-in commands that can be run either dockerized or natively. + - Supports all available MIQT docker containers - Use glob matches to automatically pick the highest version container for target - Automatically build new docker containers or reuse existing, based on content hash of the Dockerfile @@ -18,10 +20,19 @@ available embedded dockerfiles: ```bash Usage: miqt-docker ENVIRONMENT COMMAND... -Environment variables: -- DOCKER Override the path to docker +COMMAND may be any shell command (e.g. go build); or /bin/bash to get an +interactive terminal; or one of the following special tasks: -Available container environments (use * for partial match): + -build Run 'go build' with usual MIQT flags + -minify-build Run 'go build' with special minification flags + -windows-build Run 'go build' with special Windows support + -android-build Build an Android APK (using the android-qt5 or android-qt6 + container environments) + +Environment variables: + DOCKER Override the path to docker + +Available container environments: (use - as wildcard character) [...] ``` @@ -29,5 +40,6 @@ Example build commands: ```bash miqt-docker macos go build -ldflags '-s -w' -miqt-docker win64*qt6*dynamic go build -ldflags '-s -w -H windowsgui' +miqt-docker win64-qt6-dynamic go build -ldflags '-s -w -H windowsgui' +miqt-docker android-qt6 -android-build ``` diff --git a/cmd/miqt-docker/main.go b/cmd/miqt-docker/main.go index ea367fce..ffb1a100 100644 --- a/cmd/miqt-docker/main.go +++ b/cmd/miqt-docker/main.go @@ -37,12 +37,23 @@ func shasum(data []byte) string { // usage displays how to use miqt-docker and then exits the process. func usage(dockerfiles []fs.DirEntry) { - fmt.Fprintf(os.Stderr, "Usage: %s ENVIRONMENT COMMAND...\n", filepath.Base(os.Args[0])) - fmt.Fprintln(os.Stderr, "") - fmt.Fprintln(os.Stderr, "Environment variables:") - fmt.Fprintln(os.Stderr, "- DOCKER Override the path to docker") - fmt.Fprintln(os.Stderr, "") - fmt.Fprintln(os.Stderr, "Available container environments (use * for partial match):") + fmt.Fprint(os.Stderr, `Usage: `+filepath.Base(os.Args[0])+` ENVIRONMENT COMMAND... + +COMMAND may be any shell command (e.g. go build); or /bin/bash to get an +interactive terminal; or one of the following special tasks: + + -build Run 'go build' with usual MIQT flags + -minify-build Run 'go build' with special minification flags + -windows-build Run 'go build' with special Windows support + -android-build Build an Android APK (using the android-qt5 or android-qt6 + container environments) + +Environment variables: + DOCKER Override the path to docker + +Available container environments: (use - as wildcard character) +- native (Run natively without docker) +`) for _, ff := range dockerfiles { fmt.Fprintf(os.Stderr, "- %s\n", strings.TrimSuffix(ff.Name(), `.Dockerfile`))