Files
fantemp/.vscode/settings.json
BlackMark d6673db131 deps: the pins advance, and this repository gets a committed gate
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>
2026-09-03 03:53:43 +02:00

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"
}
}