diff --git a/.vscode/settings.json b/.vscode/settings.json index ee9ab88..d598a4e 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -14,14 +14,13 @@ "--header-insertion=never" ], - // The presets are the build interface; the toolchain file inside the - // libavr submodule is the one place the compiler is chosen. The submodule - // carries no local/toolchain for it to discover, so the prefix is named - // here, for the window that opens this folder. + // The presets are the build interface, and the toolchain file inside the + // libavr submodule is the one place the compiler is chosen. **No prefix is + // named here**: a committed file may not name a path that is true of one + // machine (libavr guidance rule 50), so the gitignored local/machine.cmake + // at this repository's root is where a checkout says where its toolchain + // is - one file, and it answers for both hosts. "cmake.useCMakePresets": "always", - "cmake.environment": { - "LIBAVR_TOOLCHAIN": "D:/dev/libavr/local/toolchain/avr-gcc-16.1.0-mingw" - }, "cmake.configureOnOpen": true, "cmake.options.statusBarVisibility": "compact", diff --git a/libavr b/libavr index 8521f48..00d669b 160000 --- a/libavr +++ b/libavr @@ -1 +1 @@ -Subproject commit 8521f48a3361100c5f3e3c5004a5ff415e2d1484 +Subproject commit 00d669b4510579d202bac059f46246448d5cac3b diff --git a/tools/check.sh b/tools/check.sh new file mode 100755 index 0000000..40de33e --- /dev/null +++ b/tools/check.sh @@ -0,0 +1,11 @@ +#!/usr/bin/env bash +# The task gate: every configure preset built, and only then every one tested. +# +# The loop itself is libavr's (tools/check-presets.sh) because the order in it +# is subtle and was got wrong by hand more than once - the mode-identity checks +# read the sibling mode's tree, so a build-then-test-per-preset run compares a +# fresh image against a stale sibling. Anything this repository needs beyond +# the presets is written after the call, where every tree is built and tested. +set -euo pipefail +cd "$(dirname "${BASH_SOURCE[0]}")/.." +"${LIBAVR_ROOT:-libavr}/tools/check-presets.sh" "$@"