From 52c3b6ca7f165b580432be05ae2aafef565bc035 Mon Sep 17 00:00:00 2001 From: BlackMark Date: Tue, 21 Jul 2026 23:42:57 +0200 Subject: [PATCH] build: generated presets and a check entry point MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit tools/make_presets.py emits the uniform pipeline the hand-grown file had drifted from — generated configure/build/test presets and workflows for all 37 chips, reflect configure/build for libavr's 12-chip spot set — and tools/check.sh runs every chip's workflow (--full adds the reflect spot) as the port's gate. Co-Authored-By: Claude Fable 5 --- CMakePresets.json | 2556 +++++++++++++++++++---------------------- tools/check.sh | 37 + tools/make_presets.py | 90 ++ 3 files changed, 1326 insertions(+), 1357 deletions(-) create mode 100755 tools/check.sh create mode 100755 tools/make_presets.py diff --git a/CMakePresets.json b/CMakePresets.json index 9114944..2ef0e5e 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -14,19 +14,35 @@ } }, { - "name": "atmega328p-generated", + "name": "attiny13-generated", "inherits": "base", "cacheVariables": { - "LIBAVR_MCU": "atmega328p", + "LIBAVR_MCU": "attiny13", "LIBAVR_REFLECT": "OFF" } }, { - "name": "atmega328p-reflect", + "name": "attiny13a-generated", "inherits": "base", "cacheVariables": { - "LIBAVR_MCU": "atmega328p", - "LIBAVR_REFLECT": "ON" + "LIBAVR_MCU": "attiny13a", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "attiny25-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "attiny25", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "attiny45-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "attiny45", + "LIBAVR_REFLECT": "OFF" } }, { @@ -38,18 +54,258 @@ } }, { - "name": "attiny85-reflect", + "name": "atmega8-generated", "inherits": "base", "cacheVariables": { - "LIBAVR_MCU": "attiny85", - "LIBAVR_REFLECT": "ON" + "LIBAVR_MCU": "atmega8", + "LIBAVR_REFLECT": "OFF" } }, { - "name": "attiny13a-generated", + "name": "atmega8a-generated", "inherits": "base", "cacheVariables": { - "LIBAVR_MCU": "attiny13a", + "LIBAVR_MCU": "atmega8a", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega16-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega16", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega16a-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega16a", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega32-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega32", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega32a-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega32a", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega48-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega48", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega48a-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega48a", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega48p-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega48p", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega48pa-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega48pa", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega88-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega88", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega88a-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega88a", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega88p-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega88p", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega88pa-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega88pa", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega168-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega168", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega168a-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega168a", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega168p-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega168p", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega168pa-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega168pa", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega328-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega328", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega328p-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega328p", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega164a-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega164a", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega164p-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega164p", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega164pa-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega164pa", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega324a-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega324a", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega324p-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega324p", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega324pa-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega324pa", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega644-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega644", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega644a-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega644a", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega644p-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega644p", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega644pa-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega644pa", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega1284-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega1284", + "LIBAVR_REFLECT": "OFF" + } + }, + { + "name": "atmega1284p-generated", + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": "atmega1284p", "LIBAVR_REFLECT": "OFF" } }, @@ -62,11 +318,11 @@ } }, { - "name": "atmega8-generated", + "name": "attiny85-reflect", "inherits": "base", "cacheVariables": { - "LIBAVR_MCU": "atmega8", - "LIBAVR_REFLECT": "OFF" + "LIBAVR_MCU": "attiny85", + "LIBAVR_REFLECT": "ON" } }, { @@ -78,61 +334,13 @@ } }, { - "name": "atmega8a-generated", + "name": "atmega16a-reflect", "inherits": "base", "cacheVariables": { - "LIBAVR_MCU": "atmega8a", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega8a-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega8a", + "LIBAVR_MCU": "atmega16a", "LIBAVR_REFLECT": "ON" } }, - { - "name": "atmega16-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega16", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega16-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega16", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "atmega32-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega32", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega32-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega32", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "atmega32a-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega32a", - "LIBAVR_REFLECT": "OFF" - } - }, { "name": "atmega32a-reflect", "inherits": "base", @@ -141,158 +349,6 @@ "LIBAVR_REFLECT": "ON" } }, - { - "name": "atmega168a-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega168a", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega168a-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega168a", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "atmega1284p-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega1284p", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega1284p-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega1284p", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "attiny13-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "attiny13", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "attiny13-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "attiny13", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "attiny25-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "attiny25", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "attiny25-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "attiny25", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "attiny45-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "attiny45", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "attiny45-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "attiny45", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "atmega16a-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega16a", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega16a-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega16a", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "atmega48-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega48", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega48-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega48", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "atmega48a-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega48a", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega48a-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega48a", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "atmega48p-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega48p", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega48p-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega48p", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "atmega48pa-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega48pa", - "LIBAVR_REFLECT": "OFF" - } - }, { "name": "atmega48pa-reflect", "inherits": "base", @@ -301,14 +357,6 @@ "LIBAVR_REFLECT": "ON" } }, - { - "name": "atmega88-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega88", - "LIBAVR_REFLECT": "OFF" - } - }, { "name": "atmega88-reflect", "inherits": "base", @@ -317,94 +365,6 @@ "LIBAVR_REFLECT": "ON" } }, - { - "name": "atmega88a-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega88a", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega88a-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega88a", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "atmega88p-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega88p", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega88p-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega88p", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "atmega88pa-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega88pa", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega88pa-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega88pa", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "atmega168-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega168", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega168-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega168", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "atmega168p-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega168p", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega168p-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega168p", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "atmega168pa-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega168pa", - "LIBAVR_REFLECT": "OFF" - } - }, { "name": "atmega168pa-reflect", "inherits": "base", @@ -414,29 +374,13 @@ } }, { - "name": "atmega328-generated", + "name": "atmega328p-reflect", "inherits": "base", "cacheVariables": { - "LIBAVR_MCU": "atmega328", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega328-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega328", + "LIBAVR_MCU": "atmega328p", "LIBAVR_REFLECT": "ON" } }, - { - "name": "atmega164a-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega164a", - "LIBAVR_REFLECT": "OFF" - } - }, { "name": "atmega164a-reflect", "inherits": "base", @@ -445,126 +389,6 @@ "LIBAVR_REFLECT": "ON" } }, - { - "name": "atmega164p-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega164p", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega164p-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega164p", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "atmega164pa-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega164pa", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega164pa-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega164pa", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "atmega324a-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega324a", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega324a-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega324a", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "atmega324p-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega324p", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega324p-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega324p", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "atmega324pa-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega324pa", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega324pa-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega324pa", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "atmega644-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega644", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega644-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega644", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "atmega644a-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega644a", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega644a-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega644a", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "atmega644p-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega644p", - "LIBAVR_REFLECT": "OFF" - } - }, { "name": "atmega644p-reflect", "inherits": "base", @@ -573,30 +397,6 @@ "LIBAVR_REFLECT": "ON" } }, - { - "name": "atmega644pa-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega644pa", - "LIBAVR_REFLECT": "OFF" - } - }, - { - "name": "atmega644pa-reflect", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega644pa", - "LIBAVR_REFLECT": "ON" - } - }, - { - "name": "atmega1284-generated", - "inherits": "base", - "cacheVariables": { - "LIBAVR_MCU": "atmega1284", - "LIBAVR_REFLECT": "OFF" - } - }, { "name": "atmega1284-reflect", "inherits": "base", @@ -608,1007 +408,206 @@ ], "buildPresets": [ { - "name": "atmega328p-generated", - "configurePreset": "atmega328p-generated" - }, - { - "name": "atmega328p-reflect", - "configurePreset": "atmega328p-reflect" - }, - { - "name": "attiny85-generated", - "configurePreset": "attiny85-generated" - }, - { - "name": "attiny85-reflect", - "configurePreset": "attiny85-reflect" + "name": "attiny13-generated", + "configurePreset": "attiny13-generated" }, { "name": "attiny13a-generated", "configurePreset": "attiny13a-generated" }, - { - "name": "attiny13a-reflect", - "configurePreset": "attiny13a-reflect" - }, - { - "name": "atmega8-generated", - "configurePreset": "atmega8-generated" - }, - { - "name": "atmega8-reflect", - "configurePreset": "atmega8-reflect" - }, - { - "name": "atmega8a-generated", - "configurePreset": "atmega8a-generated" - }, - { - "name": "atmega8a-reflect", - "configurePreset": "atmega8a-reflect" - }, - { - "name": "atmega16-generated", - "configurePreset": "atmega16-generated" - }, - { - "name": "atmega16-reflect", - "configurePreset": "atmega16-reflect" - }, - { - "name": "atmega32-generated", - "configurePreset": "atmega32-generated" - }, - { - "name": "atmega32-reflect", - "configurePreset": "atmega32-reflect" - }, - { - "name": "atmega32a-generated", - "configurePreset": "atmega32a-generated" - }, - { - "name": "atmega32a-reflect", - "configurePreset": "atmega32a-reflect" - }, - { - "name": "atmega168a-generated", - "configurePreset": "atmega168a-generated" - }, - { - "name": "atmega168a-reflect", - "configurePreset": "atmega168a-reflect" - }, - { - "name": "atmega1284p-generated", - "configurePreset": "atmega1284p-generated" - }, - { - "name": "atmega1284p-reflect", - "configurePreset": "atmega1284p-reflect" - }, - { - "name": "attiny13-generated", - "configurePreset": "attiny13-generated" - }, - { - "name": "attiny13-reflect", - "configurePreset": "attiny13-reflect" - }, { "name": "attiny25-generated", "configurePreset": "attiny25-generated" }, - { - "name": "attiny25-reflect", - "configurePreset": "attiny25-reflect" - }, { "name": "attiny45-generated", "configurePreset": "attiny45-generated" }, { - "name": "attiny45-reflect", - "configurePreset": "attiny45-reflect" + "name": "attiny85-generated", + "configurePreset": "attiny85-generated" + }, + { + "name": "atmega8-generated", + "configurePreset": "atmega8-generated" + }, + { + "name": "atmega8a-generated", + "configurePreset": "atmega8a-generated" + }, + { + "name": "atmega16-generated", + "configurePreset": "atmega16-generated" }, { "name": "atmega16a-generated", "configurePreset": "atmega16a-generated" }, { - "name": "atmega16a-reflect", - "configurePreset": "atmega16a-reflect" + "name": "atmega32-generated", + "configurePreset": "atmega32-generated" + }, + { + "name": "atmega32a-generated", + "configurePreset": "atmega32a-generated" }, { "name": "atmega48-generated", "configurePreset": "atmega48-generated" }, - { - "name": "atmega48-reflect", - "configurePreset": "atmega48-reflect" - }, { "name": "atmega48a-generated", "configurePreset": "atmega48a-generated" }, - { - "name": "atmega48a-reflect", - "configurePreset": "atmega48a-reflect" - }, { "name": "atmega48p-generated", "configurePreset": "atmega48p-generated" }, - { - "name": "atmega48p-reflect", - "configurePreset": "atmega48p-reflect" - }, { "name": "atmega48pa-generated", "configurePreset": "atmega48pa-generated" }, - { - "name": "atmega48pa-reflect", - "configurePreset": "atmega48pa-reflect" - }, { "name": "atmega88-generated", "configurePreset": "atmega88-generated" }, - { - "name": "atmega88-reflect", - "configurePreset": "atmega88-reflect" - }, { "name": "atmega88a-generated", "configurePreset": "atmega88a-generated" }, - { - "name": "atmega88a-reflect", - "configurePreset": "atmega88a-reflect" - }, { "name": "atmega88p-generated", "configurePreset": "atmega88p-generated" }, - { - "name": "atmega88p-reflect", - "configurePreset": "atmega88p-reflect" - }, { "name": "atmega88pa-generated", "configurePreset": "atmega88pa-generated" }, - { - "name": "atmega88pa-reflect", - "configurePreset": "atmega88pa-reflect" - }, { "name": "atmega168-generated", "configurePreset": "atmega168-generated" }, { - "name": "atmega168-reflect", - "configurePreset": "atmega168-reflect" + "name": "atmega168a-generated", + "configurePreset": "atmega168a-generated" }, { "name": "atmega168p-generated", "configurePreset": "atmega168p-generated" }, - { - "name": "atmega168p-reflect", - "configurePreset": "atmega168p-reflect" - }, { "name": "atmega168pa-generated", "configurePreset": "atmega168pa-generated" }, - { - "name": "atmega168pa-reflect", - "configurePreset": "atmega168pa-reflect" - }, { "name": "atmega328-generated", "configurePreset": "atmega328-generated" }, { - "name": "atmega328-reflect", - "configurePreset": "atmega328-reflect" + "name": "atmega328p-generated", + "configurePreset": "atmega328p-generated" }, { "name": "atmega164a-generated", "configurePreset": "atmega164a-generated" }, - { - "name": "atmega164a-reflect", - "configurePreset": "atmega164a-reflect" - }, { "name": "atmega164p-generated", "configurePreset": "atmega164p-generated" }, - { - "name": "atmega164p-reflect", - "configurePreset": "atmega164p-reflect" - }, { "name": "atmega164pa-generated", "configurePreset": "atmega164pa-generated" }, - { - "name": "atmega164pa-reflect", - "configurePreset": "atmega164pa-reflect" - }, { "name": "atmega324a-generated", "configurePreset": "atmega324a-generated" }, - { - "name": "atmega324a-reflect", - "configurePreset": "atmega324a-reflect" - }, { "name": "atmega324p-generated", "configurePreset": "atmega324p-generated" }, - { - "name": "atmega324p-reflect", - "configurePreset": "atmega324p-reflect" - }, { "name": "atmega324pa-generated", "configurePreset": "atmega324pa-generated" }, - { - "name": "atmega324pa-reflect", - "configurePreset": "atmega324pa-reflect" - }, { "name": "atmega644-generated", "configurePreset": "atmega644-generated" }, - { - "name": "atmega644-reflect", - "configurePreset": "atmega644-reflect" - }, { "name": "atmega644a-generated", "configurePreset": "atmega644a-generated" }, - { - "name": "atmega644a-reflect", - "configurePreset": "atmega644a-reflect" - }, { "name": "atmega644p-generated", "configurePreset": "atmega644p-generated" }, - { - "name": "atmega644p-reflect", - "configurePreset": "atmega644p-reflect" - }, { "name": "atmega644pa-generated", "configurePreset": "atmega644pa-generated" }, - { - "name": "atmega644pa-reflect", - "configurePreset": "atmega644pa-reflect" - }, { "name": "atmega1284-generated", "configurePreset": "atmega1284-generated" }, + { + "name": "atmega1284p-generated", + "configurePreset": "atmega1284p-generated" + }, + { + "name": "attiny13a-reflect", + "configurePreset": "attiny13a-reflect" + }, + { + "name": "attiny85-reflect", + "configurePreset": "attiny85-reflect" + }, + { + "name": "atmega8-reflect", + "configurePreset": "atmega8-reflect" + }, + { + "name": "atmega16a-reflect", + "configurePreset": "atmega16a-reflect" + }, + { + "name": "atmega32a-reflect", + "configurePreset": "atmega32a-reflect" + }, + { + "name": "atmega48pa-reflect", + "configurePreset": "atmega48pa-reflect" + }, + { + "name": "atmega88-reflect", + "configurePreset": "atmega88-reflect" + }, + { + "name": "atmega168pa-reflect", + "configurePreset": "atmega168pa-reflect" + }, + { + "name": "atmega328p-reflect", + "configurePreset": "atmega328p-reflect" + }, + { + "name": "atmega164a-reflect", + "configurePreset": "atmega164a-reflect" + }, + { + "name": "atmega644p-reflect", + "configurePreset": "atmega644p-reflect" + }, { "name": "atmega1284-reflect", "configurePreset": "atmega1284-reflect" } ], - "workflowPresets": [ - { - "name": "atmega328p-generated", - "steps": [ - { - "type": "configure", - "name": "atmega328p-generated" - }, - { - "type": "build", - "name": "atmega328p-generated" - }, - { - "type": "test", - "name": "atmega328p-generated" - } - ] - }, - { - "name": "attiny85-generated", - "steps": [ - { - "type": "configure", - "name": "attiny85-generated" - }, - { - "type": "build", - "name": "attiny85-generated" - }, - { - "type": "test", - "name": "attiny85-generated" - } - ] - }, - { - "name": "attiny13a-generated", - "steps": [ - { - "type": "configure", - "name": "attiny13a-generated" - }, - { - "type": "build", - "name": "attiny13a-generated" - }, - { - "type": "test", - "name": "attiny13a-generated" - } - ] - }, - { - "name": "atmega8-generated", - "steps": [ - { - "type": "configure", - "name": "atmega8-generated" - }, - { - "type": "build", - "name": "atmega8-generated" - } - ] - }, - { - "name": "atmega8-reflect", - "steps": [ - { - "type": "configure", - "name": "atmega8-reflect" - }, - { - "type": "build", - "name": "atmega8-reflect" - } - ] - }, - { - "name": "atmega8a-generated", - "steps": [ - { - "type": "configure", - "name": "atmega8a-generated" - }, - { - "type": "build", - "name": "atmega8a-generated" - } - ] - }, - { - "name": "atmega8a-reflect", - "steps": [ - { - "type": "configure", - "name": "atmega8a-reflect" - }, - { - "type": "build", - "name": "atmega8a-reflect" - } - ] - }, - { - "name": "atmega16-generated", - "steps": [ - { - "type": "configure", - "name": "atmega16-generated" - }, - { - "type": "build", - "name": "atmega16-generated" - } - ] - }, - { - "name": "atmega16-reflect", - "steps": [ - { - "type": "configure", - "name": "atmega16-reflect" - }, - { - "type": "build", - "name": "atmega16-reflect" - } - ] - }, - { - "name": "atmega32-generated", - "steps": [ - { - "type": "configure", - "name": "atmega32-generated" - }, - { - "type": "build", - "name": "atmega32-generated" - } - ] - }, - { - "name": "atmega32-reflect", - "steps": [ - { - "type": "configure", - "name": "atmega32-reflect" - }, - { - "type": "build", - "name": "atmega32-reflect" - } - ] - }, - { - "name": "atmega32a-generated", - "steps": [ - { - "type": "configure", - "name": "atmega32a-generated" - }, - { - "type": "build", - "name": "atmega32a-generated" - } - ] - }, - { - "name": "atmega32a-reflect", - "steps": [ - { - "type": "configure", - "name": "atmega32a-reflect" - }, - { - "type": "build", - "name": "atmega32a-reflect" - } - ] - }, - { - "name": "atmega168a-generated", - "steps": [ - { - "type": "configure", - "name": "atmega168a-generated" - }, - { - "type": "build", - "name": "atmega168a-generated" - } - ] - }, - { - "name": "atmega168a-reflect", - "steps": [ - { - "type": "configure", - "name": "atmega168a-reflect" - }, - { - "type": "build", - "name": "atmega168a-reflect" - } - ] - }, - { - "name": "atmega1284p-generated", - "steps": [ - { - "type": "configure", - "name": "atmega1284p-generated" - }, - { - "type": "build", - "name": "atmega1284p-generated" - } - ] - }, - { - "name": "atmega1284p-reflect", - "steps": [ - { - "type": "configure", - "name": "atmega1284p-reflect" - }, - { - "type": "build", - "name": "atmega1284p-reflect" - } - ] - }, - { - "name": "attiny13-generated", - "steps": [ - { - "type": "configure", - "name": "attiny13-generated" - }, - { - "type": "build", - "name": "attiny13-generated" - }, - { - "type": "test", - "name": "attiny13-generated" - } - ] - }, - { - "name": "attiny25-generated", - "steps": [ - { - "type": "configure", - "name": "attiny25-generated" - }, - { - "type": "build", - "name": "attiny25-generated" - }, - { - "type": "test", - "name": "attiny25-generated" - } - ] - }, - { - "name": "attiny45-generated", - "steps": [ - { - "type": "configure", - "name": "attiny45-generated" - }, - { - "type": "build", - "name": "attiny45-generated" - }, - { - "type": "test", - "name": "attiny45-generated" - } - ] - }, - { - "name": "atmega16a-generated", - "steps": [ - { - "type": "configure", - "name": "atmega16a-generated" - }, - { - "type": "build", - "name": "atmega16a-generated" - }, - { - "type": "test", - "name": "atmega16a-generated" - } - ] - }, - { - "name": "atmega48-generated", - "steps": [ - { - "type": "configure", - "name": "atmega48-generated" - }, - { - "type": "build", - "name": "atmega48-generated" - }, - { - "type": "test", - "name": "atmega48-generated" - } - ] - }, - { - "name": "atmega48a-generated", - "steps": [ - { - "type": "configure", - "name": "atmega48a-generated" - }, - { - "type": "build", - "name": "atmega48a-generated" - }, - { - "type": "test", - "name": "atmega48a-generated" - } - ] - }, - { - "name": "atmega48p-generated", - "steps": [ - { - "type": "configure", - "name": "atmega48p-generated" - }, - { - "type": "build", - "name": "atmega48p-generated" - }, - { - "type": "test", - "name": "atmega48p-generated" - } - ] - }, - { - "name": "atmega48pa-generated", - "steps": [ - { - "type": "configure", - "name": "atmega48pa-generated" - }, - { - "type": "build", - "name": "atmega48pa-generated" - }, - { - "type": "test", - "name": "atmega48pa-generated" - } - ] - }, - { - "name": "atmega88-generated", - "steps": [ - { - "type": "configure", - "name": "atmega88-generated" - }, - { - "type": "build", - "name": "atmega88-generated" - }, - { - "type": "test", - "name": "atmega88-generated" - } - ] - }, - { - "name": "atmega88a-generated", - "steps": [ - { - "type": "configure", - "name": "atmega88a-generated" - }, - { - "type": "build", - "name": "atmega88a-generated" - }, - { - "type": "test", - "name": "atmega88a-generated" - } - ] - }, - { - "name": "atmega88p-generated", - "steps": [ - { - "type": "configure", - "name": "atmega88p-generated" - }, - { - "type": "build", - "name": "atmega88p-generated" - }, - { - "type": "test", - "name": "atmega88p-generated" - } - ] - }, - { - "name": "atmega88pa-generated", - "steps": [ - { - "type": "configure", - "name": "atmega88pa-generated" - }, - { - "type": "build", - "name": "atmega88pa-generated" - }, - { - "type": "test", - "name": "atmega88pa-generated" - } - ] - }, - { - "name": "atmega168-generated", - "steps": [ - { - "type": "configure", - "name": "atmega168-generated" - }, - { - "type": "build", - "name": "atmega168-generated" - }, - { - "type": "test", - "name": "atmega168-generated" - } - ] - }, - { - "name": "atmega168p-generated", - "steps": [ - { - "type": "configure", - "name": "atmega168p-generated" - }, - { - "type": "build", - "name": "atmega168p-generated" - }, - { - "type": "test", - "name": "atmega168p-generated" - } - ] - }, - { - "name": "atmega168pa-generated", - "steps": [ - { - "type": "configure", - "name": "atmega168pa-generated" - }, - { - "type": "build", - "name": "atmega168pa-generated" - }, - { - "type": "test", - "name": "atmega168pa-generated" - } - ] - }, - { - "name": "atmega328-generated", - "steps": [ - { - "type": "configure", - "name": "atmega328-generated" - }, - { - "type": "build", - "name": "atmega328-generated" - }, - { - "type": "test", - "name": "atmega328-generated" - } - ] - }, - { - "name": "atmega164a-generated", - "steps": [ - { - "type": "configure", - "name": "atmega164a-generated" - }, - { - "type": "build", - "name": "atmega164a-generated" - }, - { - "type": "test", - "name": "atmega164a-generated" - } - ] - }, - { - "name": "atmega164p-generated", - "steps": [ - { - "type": "configure", - "name": "atmega164p-generated" - }, - { - "type": "build", - "name": "atmega164p-generated" - }, - { - "type": "test", - "name": "atmega164p-generated" - } - ] - }, - { - "name": "atmega164pa-generated", - "steps": [ - { - "type": "configure", - "name": "atmega164pa-generated" - }, - { - "type": "build", - "name": "atmega164pa-generated" - }, - { - "type": "test", - "name": "atmega164pa-generated" - } - ] - }, - { - "name": "atmega324a-generated", - "steps": [ - { - "type": "configure", - "name": "atmega324a-generated" - }, - { - "type": "build", - "name": "atmega324a-generated" - }, - { - "type": "test", - "name": "atmega324a-generated" - } - ] - }, - { - "name": "atmega324p-generated", - "steps": [ - { - "type": "configure", - "name": "atmega324p-generated" - }, - { - "type": "build", - "name": "atmega324p-generated" - }, - { - "type": "test", - "name": "atmega324p-generated" - } - ] - }, - { - "name": "atmega324pa-generated", - "steps": [ - { - "type": "configure", - "name": "atmega324pa-generated" - }, - { - "type": "build", - "name": "atmega324pa-generated" - }, - { - "type": "test", - "name": "atmega324pa-generated" - } - ] - }, - { - "name": "atmega644-generated", - "steps": [ - { - "type": "configure", - "name": "atmega644-generated" - }, - { - "type": "build", - "name": "atmega644-generated" - }, - { - "type": "test", - "name": "atmega644-generated" - } - ] - }, - { - "name": "atmega644a-generated", - "steps": [ - { - "type": "configure", - "name": "atmega644a-generated" - }, - { - "type": "build", - "name": "atmega644a-generated" - }, - { - "type": "test", - "name": "atmega644a-generated" - } - ] - }, - { - "name": "atmega644p-generated", - "steps": [ - { - "type": "configure", - "name": "atmega644p-generated" - }, - { - "type": "build", - "name": "atmega644p-generated" - }, - { - "type": "test", - "name": "atmega644p-generated" - } - ] - }, - { - "name": "atmega644pa-generated", - "steps": [ - { - "type": "configure", - "name": "atmega644pa-generated" - }, - { - "type": "build", - "name": "atmega644pa-generated" - }, - { - "type": "test", - "name": "atmega644pa-generated" - } - ] - }, - { - "name": "atmega1284-generated", - "steps": [ - { - "type": "configure", - "name": "atmega1284-generated" - }, - { - "type": "build", - "name": "atmega1284-generated" - }, - { - "type": "test", - "name": "atmega1284-generated" - } - ] - } - ], "testPresets": [ { - "name": "atmega328p-generated", - "configurePreset": "atmega328p-generated", - "output": { - "outputOnFailure": true - } - }, - { - "name": "attiny85-generated", - "configurePreset": "attiny85-generated", + "name": "attiny13-generated", + "configurePreset": "attiny13-generated", "output": { "outputOnFailure": true } @@ -1620,13 +619,6 @@ "outputOnFailure": true } }, - { - "name": "attiny13-generated", - "configurePreset": "attiny13-generated", - "output": { - "outputOnFailure": true - } - }, { "name": "attiny25-generated", "configurePreset": "attiny25-generated", @@ -1641,6 +633,34 @@ "outputOnFailure": true } }, + { + "name": "attiny85-generated", + "configurePreset": "attiny85-generated", + "output": { + "outputOnFailure": true + } + }, + { + "name": "atmega8-generated", + "configurePreset": "atmega8-generated", + "output": { + "outputOnFailure": true + } + }, + { + "name": "atmega8a-generated", + "configurePreset": "atmega8a-generated", + "output": { + "outputOnFailure": true + } + }, + { + "name": "atmega16-generated", + "configurePreset": "atmega16-generated", + "output": { + "outputOnFailure": true + } + }, { "name": "atmega16a-generated", "configurePreset": "atmega16a-generated", @@ -1648,6 +668,20 @@ "outputOnFailure": true } }, + { + "name": "atmega32-generated", + "configurePreset": "atmega32-generated", + "output": { + "outputOnFailure": true + } + }, + { + "name": "atmega32a-generated", + "configurePreset": "atmega32a-generated", + "output": { + "outputOnFailure": true + } + }, { "name": "atmega48-generated", "configurePreset": "atmega48-generated", @@ -1711,6 +745,13 @@ "outputOnFailure": true } }, + { + "name": "atmega168a-generated", + "configurePreset": "atmega168a-generated", + "output": { + "outputOnFailure": true + } + }, { "name": "atmega168p-generated", "configurePreset": "atmega168p-generated", @@ -1732,6 +773,13 @@ "outputOnFailure": true } }, + { + "name": "atmega328p-generated", + "configurePreset": "atmega328p-generated", + "output": { + "outputOnFailure": true + } + }, { "name": "atmega164a-generated", "configurePreset": "atmega164a-generated", @@ -1808,6 +856,800 @@ "output": { "outputOnFailure": true } + }, + { + "name": "atmega1284p-generated", + "configurePreset": "atmega1284p-generated", + "output": { + "outputOnFailure": true + } + } + ], + "workflowPresets": [ + { + "name": "attiny13-generated", + "steps": [ + { + "type": "configure", + "name": "attiny13-generated" + }, + { + "type": "build", + "name": "attiny13-generated" + }, + { + "type": "test", + "name": "attiny13-generated" + } + ] + }, + { + "name": "attiny13a-generated", + "steps": [ + { + "type": "configure", + "name": "attiny13a-generated" + }, + { + "type": "build", + "name": "attiny13a-generated" + }, + { + "type": "test", + "name": "attiny13a-generated" + } + ] + }, + { + "name": "attiny25-generated", + "steps": [ + { + "type": "configure", + "name": "attiny25-generated" + }, + { + "type": "build", + "name": "attiny25-generated" + }, + { + "type": "test", + "name": "attiny25-generated" + } + ] + }, + { + "name": "attiny45-generated", + "steps": [ + { + "type": "configure", + "name": "attiny45-generated" + }, + { + "type": "build", + "name": "attiny45-generated" + }, + { + "type": "test", + "name": "attiny45-generated" + } + ] + }, + { + "name": "attiny85-generated", + "steps": [ + { + "type": "configure", + "name": "attiny85-generated" + }, + { + "type": "build", + "name": "attiny85-generated" + }, + { + "type": "test", + "name": "attiny85-generated" + } + ] + }, + { + "name": "atmega8-generated", + "steps": [ + { + "type": "configure", + "name": "atmega8-generated" + }, + { + "type": "build", + "name": "atmega8-generated" + }, + { + "type": "test", + "name": "atmega8-generated" + } + ] + }, + { + "name": "atmega8a-generated", + "steps": [ + { + "type": "configure", + "name": "atmega8a-generated" + }, + { + "type": "build", + "name": "atmega8a-generated" + }, + { + "type": "test", + "name": "atmega8a-generated" + } + ] + }, + { + "name": "atmega16-generated", + "steps": [ + { + "type": "configure", + "name": "atmega16-generated" + }, + { + "type": "build", + "name": "atmega16-generated" + }, + { + "type": "test", + "name": "atmega16-generated" + } + ] + }, + { + "name": "atmega16a-generated", + "steps": [ + { + "type": "configure", + "name": "atmega16a-generated" + }, + { + "type": "build", + "name": "atmega16a-generated" + }, + { + "type": "test", + "name": "atmega16a-generated" + } + ] + }, + { + "name": "atmega32-generated", + "steps": [ + { + "type": "configure", + "name": "atmega32-generated" + }, + { + "type": "build", + "name": "atmega32-generated" + }, + { + "type": "test", + "name": "atmega32-generated" + } + ] + }, + { + "name": "atmega32a-generated", + "steps": [ + { + "type": "configure", + "name": "atmega32a-generated" + }, + { + "type": "build", + "name": "atmega32a-generated" + }, + { + "type": "test", + "name": "atmega32a-generated" + } + ] + }, + { + "name": "atmega48-generated", + "steps": [ + { + "type": "configure", + "name": "atmega48-generated" + }, + { + "type": "build", + "name": "atmega48-generated" + }, + { + "type": "test", + "name": "atmega48-generated" + } + ] + }, + { + "name": "atmega48a-generated", + "steps": [ + { + "type": "configure", + "name": "atmega48a-generated" + }, + { + "type": "build", + "name": "atmega48a-generated" + }, + { + "type": "test", + "name": "atmega48a-generated" + } + ] + }, + { + "name": "atmega48p-generated", + "steps": [ + { + "type": "configure", + "name": "atmega48p-generated" + }, + { + "type": "build", + "name": "atmega48p-generated" + }, + { + "type": "test", + "name": "atmega48p-generated" + } + ] + }, + { + "name": "atmega48pa-generated", + "steps": [ + { + "type": "configure", + "name": "atmega48pa-generated" + }, + { + "type": "build", + "name": "atmega48pa-generated" + }, + { + "type": "test", + "name": "atmega48pa-generated" + } + ] + }, + { + "name": "atmega88-generated", + "steps": [ + { + "type": "configure", + "name": "atmega88-generated" + }, + { + "type": "build", + "name": "atmega88-generated" + }, + { + "type": "test", + "name": "atmega88-generated" + } + ] + }, + { + "name": "atmega88a-generated", + "steps": [ + { + "type": "configure", + "name": "atmega88a-generated" + }, + { + "type": "build", + "name": "atmega88a-generated" + }, + { + "type": "test", + "name": "atmega88a-generated" + } + ] + }, + { + "name": "atmega88p-generated", + "steps": [ + { + "type": "configure", + "name": "atmega88p-generated" + }, + { + "type": "build", + "name": "atmega88p-generated" + }, + { + "type": "test", + "name": "atmega88p-generated" + } + ] + }, + { + "name": "atmega88pa-generated", + "steps": [ + { + "type": "configure", + "name": "atmega88pa-generated" + }, + { + "type": "build", + "name": "atmega88pa-generated" + }, + { + "type": "test", + "name": "atmega88pa-generated" + } + ] + }, + { + "name": "atmega168-generated", + "steps": [ + { + "type": "configure", + "name": "atmega168-generated" + }, + { + "type": "build", + "name": "atmega168-generated" + }, + { + "type": "test", + "name": "atmega168-generated" + } + ] + }, + { + "name": "atmega168a-generated", + "steps": [ + { + "type": "configure", + "name": "atmega168a-generated" + }, + { + "type": "build", + "name": "atmega168a-generated" + }, + { + "type": "test", + "name": "atmega168a-generated" + } + ] + }, + { + "name": "atmega168p-generated", + "steps": [ + { + "type": "configure", + "name": "atmega168p-generated" + }, + { + "type": "build", + "name": "atmega168p-generated" + }, + { + "type": "test", + "name": "atmega168p-generated" + } + ] + }, + { + "name": "atmega168pa-generated", + "steps": [ + { + "type": "configure", + "name": "atmega168pa-generated" + }, + { + "type": "build", + "name": "atmega168pa-generated" + }, + { + "type": "test", + "name": "atmega168pa-generated" + } + ] + }, + { + "name": "atmega328-generated", + "steps": [ + { + "type": "configure", + "name": "atmega328-generated" + }, + { + "type": "build", + "name": "atmega328-generated" + }, + { + "type": "test", + "name": "atmega328-generated" + } + ] + }, + { + "name": "atmega328p-generated", + "steps": [ + { + "type": "configure", + "name": "atmega328p-generated" + }, + { + "type": "build", + "name": "atmega328p-generated" + }, + { + "type": "test", + "name": "atmega328p-generated" + } + ] + }, + { + "name": "atmega164a-generated", + "steps": [ + { + "type": "configure", + "name": "atmega164a-generated" + }, + { + "type": "build", + "name": "atmega164a-generated" + }, + { + "type": "test", + "name": "atmega164a-generated" + } + ] + }, + { + "name": "atmega164p-generated", + "steps": [ + { + "type": "configure", + "name": "atmega164p-generated" + }, + { + "type": "build", + "name": "atmega164p-generated" + }, + { + "type": "test", + "name": "atmega164p-generated" + } + ] + }, + { + "name": "atmega164pa-generated", + "steps": [ + { + "type": "configure", + "name": "atmega164pa-generated" + }, + { + "type": "build", + "name": "atmega164pa-generated" + }, + { + "type": "test", + "name": "atmega164pa-generated" + } + ] + }, + { + "name": "atmega324a-generated", + "steps": [ + { + "type": "configure", + "name": "atmega324a-generated" + }, + { + "type": "build", + "name": "atmega324a-generated" + }, + { + "type": "test", + "name": "atmega324a-generated" + } + ] + }, + { + "name": "atmega324p-generated", + "steps": [ + { + "type": "configure", + "name": "atmega324p-generated" + }, + { + "type": "build", + "name": "atmega324p-generated" + }, + { + "type": "test", + "name": "atmega324p-generated" + } + ] + }, + { + "name": "atmega324pa-generated", + "steps": [ + { + "type": "configure", + "name": "atmega324pa-generated" + }, + { + "type": "build", + "name": "atmega324pa-generated" + }, + { + "type": "test", + "name": "atmega324pa-generated" + } + ] + }, + { + "name": "atmega644-generated", + "steps": [ + { + "type": "configure", + "name": "atmega644-generated" + }, + { + "type": "build", + "name": "atmega644-generated" + }, + { + "type": "test", + "name": "atmega644-generated" + } + ] + }, + { + "name": "atmega644a-generated", + "steps": [ + { + "type": "configure", + "name": "atmega644a-generated" + }, + { + "type": "build", + "name": "atmega644a-generated" + }, + { + "type": "test", + "name": "atmega644a-generated" + } + ] + }, + { + "name": "atmega644p-generated", + "steps": [ + { + "type": "configure", + "name": "atmega644p-generated" + }, + { + "type": "build", + "name": "atmega644p-generated" + }, + { + "type": "test", + "name": "atmega644p-generated" + } + ] + }, + { + "name": "atmega644pa-generated", + "steps": [ + { + "type": "configure", + "name": "atmega644pa-generated" + }, + { + "type": "build", + "name": "atmega644pa-generated" + }, + { + "type": "test", + "name": "atmega644pa-generated" + } + ] + }, + { + "name": "atmega1284-generated", + "steps": [ + { + "type": "configure", + "name": "atmega1284-generated" + }, + { + "type": "build", + "name": "atmega1284-generated" + }, + { + "type": "test", + "name": "atmega1284-generated" + } + ] + }, + { + "name": "atmega1284p-generated", + "steps": [ + { + "type": "configure", + "name": "atmega1284p-generated" + }, + { + "type": "build", + "name": "atmega1284p-generated" + }, + { + "type": "test", + "name": "atmega1284p-generated" + } + ] + }, + { + "name": "attiny13a-reflect", + "steps": [ + { + "type": "configure", + "name": "attiny13a-reflect" + }, + { + "type": "build", + "name": "attiny13a-reflect" + } + ] + }, + { + "name": "attiny85-reflect", + "steps": [ + { + "type": "configure", + "name": "attiny85-reflect" + }, + { + "type": "build", + "name": "attiny85-reflect" + } + ] + }, + { + "name": "atmega8-reflect", + "steps": [ + { + "type": "configure", + "name": "atmega8-reflect" + }, + { + "type": "build", + "name": "atmega8-reflect" + } + ] + }, + { + "name": "atmega16a-reflect", + "steps": [ + { + "type": "configure", + "name": "atmega16a-reflect" + }, + { + "type": "build", + "name": "atmega16a-reflect" + } + ] + }, + { + "name": "atmega32a-reflect", + "steps": [ + { + "type": "configure", + "name": "atmega32a-reflect" + }, + { + "type": "build", + "name": "atmega32a-reflect" + } + ] + }, + { + "name": "atmega48pa-reflect", + "steps": [ + { + "type": "configure", + "name": "atmega48pa-reflect" + }, + { + "type": "build", + "name": "atmega48pa-reflect" + } + ] + }, + { + "name": "atmega88-reflect", + "steps": [ + { + "type": "configure", + "name": "atmega88-reflect" + }, + { + "type": "build", + "name": "atmega88-reflect" + } + ] + }, + { + "name": "atmega168pa-reflect", + "steps": [ + { + "type": "configure", + "name": "atmega168pa-reflect" + }, + { + "type": "build", + "name": "atmega168pa-reflect" + } + ] + }, + { + "name": "atmega328p-reflect", + "steps": [ + { + "type": "configure", + "name": "atmega328p-reflect" + }, + { + "type": "build", + "name": "atmega328p-reflect" + } + ] + }, + { + "name": "atmega164a-reflect", + "steps": [ + { + "type": "configure", + "name": "atmega164a-reflect" + }, + { + "type": "build", + "name": "atmega164a-reflect" + } + ] + }, + { + "name": "atmega644p-reflect", + "steps": [ + { + "type": "configure", + "name": "atmega644p-reflect" + }, + { + "type": "build", + "name": "atmega644p-reflect" + } + ] + }, + { + "name": "atmega1284-reflect", + "steps": [ + { + "type": "configure", + "name": "atmega1284-reflect" + }, + { + "type": "build", + "name": "atmega1284-reflect" + } + ] } ] } diff --git a/tools/check.sh b/tools/check.sh new file mode 100755 index 0000000..fb1d9c9 --- /dev/null +++ b/tools/check.sh @@ -0,0 +1,37 @@ +#!/bin/bash +# The port's gate: every chip's generated workflow — build, size matrix, and +# the simulator-driven protocol suites. --full adds the reflect-spot builds +# (libavr's rule: reflect compiles are bounded to its spot set, never the +# full matrix). LIBAVR_ROOT must point at the libavr checkout. +set -e +cd "$(dirname "$0")/.." + +full=0 +[[ "$1" == "--full" ]] && { full=1; shift; } + +CHIPS=(attiny13 attiny13a attiny25 attiny45 attiny85 + atmega8 atmega8a atmega16 atmega16a atmega32 atmega32a + atmega48 atmega48a atmega48p atmega48pa + atmega88 atmega88a atmega88p atmega88pa + atmega168 atmega168a atmega168p atmega168pa + atmega328 atmega328p + atmega164a atmega164p atmega164pa + atmega324a atmega324p atmega324pa + atmega644 atmega644a atmega644p atmega644pa + atmega1284 atmega1284p) +REFLECT_SPOT=(attiny13a attiny85 atmega8 atmega16a atmega32a atmega48pa + atmega88 atmega168pa atmega328p atmega164a atmega644p atmega1284) + +for chip in "${CHIPS[@]}"; do + echo "==== $chip ====" + cmake --workflow --preset "$chip-generated" "$@" +done + +if ((full)); then + for chip in "${REFLECT_SPOT[@]}"; do + echo "==== $chip reflect ====" + cmake --workflow --preset "$chip-reflect" "$@" + done +fi + +echo "check: every chip green" diff --git a/tools/make_presets.py b/tools/make_presets.py new file mode 100755 index 0000000..f373a67 --- /dev/null +++ b/tools/make_presets.py @@ -0,0 +1,90 @@ +#!/usr/bin/env python3 +"""Regenerate CMakePresets.json — one uniform pipeline per chip. + +Every chip gets generated-mode configure/build/test presets and a workflow +running all three. Reflect-mode presets (configure + build, no tests — the +port's TUs compile identically; the sims prove nothing new there) exist for +libavr's reflect spot set only, mirroring its rule: the full reflect matrix +is never built, one chip per hardware class and pack vintage is. + +Run from the repo root: tools/make_presets.py +""" + +import json +import os + +CHIPS = [ + "attiny13", "attiny13a", "attiny25", "attiny45", "attiny85", + "atmega8", "atmega8a", "atmega16", "atmega16a", "atmega32", "atmega32a", + "atmega48", "atmega48a", "atmega48p", "atmega48pa", + "atmega88", "atmega88a", "atmega88p", "atmega88pa", + "atmega168", "atmega168a", "atmega168p", "atmega168pa", + "atmega328", "atmega328p", + "atmega164a", "atmega164p", "atmega164pa", + "atmega324a", "atmega324p", "atmega324pa", + "atmega644", "atmega644a", "atmega644p", "atmega644pa", + "atmega1284", "atmega1284p", +] + +# libavr's REFLECT_SPOT (tools/check.sh): one chip per hardware class and +# pack vintage. +REFLECT_SPOT = [ + "attiny13a", "attiny85", "atmega8", "atmega16a", "atmega32a", + "atmega48pa", "atmega88", "atmega168pa", "atmega328p", "atmega164a", + "atmega644p", "atmega1284", +] + + +def main(): + configure = [{ + "name": "base", + "hidden": True, + "generator": "Ninja", + "binaryDir": "${sourceDir}/build/${presetName}", + "toolchainFile": "$env{LIBAVR_ROOT}/cmake/avr-toolchain.cmake", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Release", + "CMAKE_EXPORT_COMPILE_COMMANDS": "ON", + "CMAKE_COLOR_DIAGNOSTICS": "ON", + }, + }] + build, test, workflows = [], [], [] + + def add(chip, mode): + name = f"{chip}-{mode}" + configure.append({ + "name": name, + "inherits": "base", + "cacheVariables": { + "LIBAVR_MCU": chip, + "LIBAVR_REFLECT": "ON" if mode == "reflect" else "OFF", + }, + }) + build.append({"name": name, "configurePreset": name}) + steps = [{"type": "configure", "name": name}, {"type": "build", "name": name}] + if mode == "generated": + test.append({"name": name, "configurePreset": name, "output": {"outputOnFailure": True}}) + steps.append({"type": "test", "name": name}) + workflows.append({"name": name, "steps": steps}) + + for chip in CHIPS: + add(chip, "generated") + for chip in REFLECT_SPOT: + add(chip, "reflect") + + presets = { + "version": 8, + "configurePresets": configure, + "buildPresets": build, + "testPresets": test, + "workflowPresets": workflows, + } + path = os.path.join(os.path.dirname(os.path.abspath(__file__)), "..", "CMakePresets.json") + with open(path, "w") as f: + json.dump(presets, f, indent=1) + f.write("\n") + print(f"{len(CHIPS)} chips, {len(REFLECT_SPOT)} reflect: {os.path.normpath(path)}") + + +if __name__ == "__main__": + main()