libavr moves to its USI I2C rate accounting, the two override surfaces the fan-controller port filed - a PWM solve that can be pinned, a capture edge that is a value - and the shared preset loop's own fix. pureboot moves with it. This firmware names none of them and no image moved. `tools/check.sh` is new, and its absence was the defect: there was no committed gate at all, so "run the suite" was a snippet somebody remembered - and the order in a snippet is the one thing nobody re-derives. Every preset built before any is tested is subtle and load-bearing, because the mode-identity check reads the sibling mode's tree and a build-then-test-per-preset run holds a fresh image against a stale sibling. The loop is libavr's `tools/check-presets.sh`. Two defaults stop being the editing machine's. `.vscode/settings.json` named `D:/dev/libavr/local/toolchain/avr-gcc-16.1.0-mingw`, which is a path true of one machine (libavr guidance rule 50) and, since the in-repo toolchain copies went, true of none - `local/machine.cmake` is where a checkout says that and it already did. And `.gitattributes` gains `* text=auto eol=lf`: naming the source extensions left Markdown, Python, shell and CMake to whatever wrote them, which on the Windows side is CRLF, and a rewrite there buries the change it made. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
34 lines
1.1 KiB
JSON
34 lines
1.1 KiB
JSON
{
|
|
// clangd is the language server; the cpptools engine would parse every file
|
|
// a second time and disagree, since nothing tells it about a cross
|
|
// compiler. Which database to read is in .clangd.
|
|
"C_Cpp.intelliSenseEngine": "disabled",
|
|
|
|
// --query-driver lets clangd ask the cross compiler for its own system
|
|
// includes and target; without it every standard header is missing.
|
|
"clangd.arguments": [
|
|
"--query-driver=**avr-g++*",
|
|
"--header-insertion=never"
|
|
],
|
|
|
|
// 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.configureOnOpen": true,
|
|
"cmake.options.statusBarVisibility": "compact",
|
|
|
|
"files.watcherExclude": {
|
|
"**/build/**": true,
|
|
"**/libavr/**": true
|
|
},
|
|
|
|
"files.associations": {
|
|
".clangd": "yaml",
|
|
".clang-format": "yaml"
|
|
}
|
|
}
|