diff options
Diffstat (limited to 'docker/scripts/build-app.sh')
| -rwxr-xr-x | docker/scripts/build-app.sh | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/docker/scripts/build-app.sh b/docker/scripts/build-app.sh index 74dd042..1a7d59a 100755 --- a/docker/scripts/build-app.sh +++ b/docker/scripts/build-app.sh @@ -1,20 +1,21 @@ #!/usr/bin/env bash # Author: cirakg & claude ai -# Summary: Compile the watch app for one device: debug, release or unit-test build. +# Summary: Compile the watch app for one device: debug, release, unit-test or UI-test build. # -# Usage: build-app.sh debug|release|test DEVICE +# Usage: build-app.sh debug|release|test|uitest DEVICE # Output: build/<mode>/<DEVICE>.prg, and the compiler log next to it. # # Policy (README section 17.7): strict type checking (-l 3), and any compiler -# warning fails the build. Test builds add test.jungle, so test code never +# warning fails the build. UI-test builds add uitest.jungle (fixed clock, +# fake entries; see source/util/TestMode.mc). Test builds add test.jungle, so test code never # reaches debug or release builds; release builds (-r) also drop every # (:debug) declaration, such as the diagnostics in source/util/Diag.mc. set -euo pipefail # shellcheck source=ciq-env.sh source "$(dirname "${BASH_SOURCE[0]}")/ciq-env.sh" -mode="${1:?usage: build-app.sh debug|release|test DEVICE}" -device="${2:?usage: build-app.sh debug|release|test DEVICE}" +mode="${1:?usage: build-app.sh debug|release|test|uitest DEVICE}" +device="${2:?usage: build-app.sh debug|release|test|uitest DEVICE}" ciq_require_sdk ciq_require_key @@ -27,11 +28,12 @@ args=(-d "${device}" -y "${DEV_KEY}" -l 3 -w) case "${mode}" in debug) ;; release) args+=(-r) ;; + uitest) jungles="${jungles};/work/uitest.jungle" ;; test) jungles="${jungles};/work/test.jungle" args+=(-t) ;; - *) die "unknown build mode '${mode}' (use debug, release or test)" ;; + *) die "unknown build mode '${mode}' (use debug, release, test or uitest)" ;; esac out_dir="${BUILD_DIR}/${mode}" |
