From ee0ee9813043cf2a1138dc835575d5a8cd8ff043 Mon Sep 17 00:00:00 2001 From: Stanislav N Mikhailov Date: Fri, 17 Apr 2026 14:50:05 +0300 Subject: [PATCH] Refine EngineDemo board build presets --- Examples/EngineDemo/.vscode/launch.json | 4 +- Examples/EngineDemo/CMakeLists.txt | 9 ++- Examples/EngineDemo/CMakePresets.json | 96 +++++++++++++++++++------ 3 files changed, 85 insertions(+), 24 deletions(-) diff --git a/Examples/EngineDemo/.vscode/launch.json b/Examples/EngineDemo/.vscode/launch.json index 807d7ad..4853c89 100644 --- a/Examples/EngineDemo/.vscode/launch.json +++ b/Examples/EngineDemo/.vscode/launch.json @@ -5,7 +5,7 @@ "name": "Pico RP2040 Debug", "type": "cortex-debug", "cwd": "${workspaceFolder}", - "executable": "${workspaceFolder}/build-rp2040/engine_demo_example.elf", + "executable": "${workspaceFolder}/build-pico-Debug/engine_demo_example.elf", "request": "launch", "servertype": "external", @@ -23,7 +23,7 @@ "name": "Pico 2 RP2350 Debug", "type": "cortex-debug", "cwd": "${workspaceFolder}", - "executable": "${workspaceFolder}/build-rp2350/engine_demo_example.elf", + "executable": "${workspaceFolder}/build-pico2-Debug/engine_demo_example.elf", "request": "launch", "servertype": "external", diff --git a/Examples/EngineDemo/CMakeLists.txt b/Examples/EngineDemo/CMakeLists.txt index 16905d0..fa572a9 100644 --- a/Examples/EngineDemo/CMakeLists.txt +++ b/Examples/EngineDemo/CMakeLists.txt @@ -1,7 +1,12 @@ cmake_minimum_required(VERSION 3.18.4) -if(NOT DEFINED PICO_BOARD) - set(PICO_BOARD pico2 CACHE STRING "Target board") +set(TARGET_BOARD "pico2_RP2350" CACHE STRING "Target board") +set_property(CACHE TARGET_BOARD PROPERTY STRINGS pico_RP2040 pico2_RP2350) + +if(TARGET_BOARD STREQUAL "pico_RP2040") + set(PICO_BOARD pico CACHE STRING "Pico SDK target board" FORCE) +elseif(TARGET_BOARD STREQUAL "pico2_RP2350") + set(PICO_BOARD pico2 CACHE STRING "Pico SDK target board" FORCE) endif() include($ENV{PICO_SDK_PATH}/external/pico_sdk_import.cmake) diff --git a/Examples/EngineDemo/CMakePresets.json b/Examples/EngineDemo/CMakePresets.json index e88c353..a25d9ba 100644 --- a/Examples/EngineDemo/CMakePresets.json +++ b/Examples/EngineDemo/CMakePresets.json @@ -2,40 +2,96 @@ "version": 3, "configurePresets": [ { - "name": "rp2040", - "displayName": "RP2040 / Pico", + "name": "base", + "hidden": true, "generator": "Unix Makefiles", - "binaryDir": "${sourceDir}/build-rp2040", "cacheVariables": { - "PICO_BOARD": "pico", "CMAKE_EXPORT_COMPILE_COMMANDS": "ON" } }, { - "name": "rp2350", - "displayName": "RP2350 / Pico 2", - "generator": "Unix Makefiles", - "binaryDir": "${sourceDir}/build-rp2350", + "name": "rp2040", + "hidden": true, "cacheVariables": { - "PICO_BOARD": "pico2", - "CMAKE_EXPORT_COMPILE_COMMANDS": "ON" + "TARGET_BOARD": "pico_RP2040" + } + }, + { + "name": "rp2350", + "hidden": true, + "cacheVariables": { + "TARGET_BOARD": "pico2_RP2350" + } + }, + { + "name": "pico-debug", + "displayName": "Pico RP2040 Debug", + "inherits": [ + "base", + "rp2040" + ], + "binaryDir": "${sourceDir}/build-pico-Debug", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Debug" + } + }, + { + "name": "pico-release", + "displayName": "Pico RP2040 Release", + "inherits": [ + "base", + "rp2040" + ], + "binaryDir": "${sourceDir}/build-pico-Release", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Release" + } + }, + { + "name": "pico2-debug", + "displayName": "Pico 2 RP2350 Debug", + "inherits": [ + "base", + "rp2350" + ], + "binaryDir": "${sourceDir}/build-pico2-Debug", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Debug" + } + }, + { + "name": "pico2-release", + "displayName": "Pico 2 RP2350 Release", + "inherits": [ + "base", + "rp2350" + ], + "binaryDir": "${sourceDir}/build-pico2-Release", + "cacheVariables": { + "CMAKE_BUILD_TYPE": "Release" } } ], "buildPresets": [ { - "name": "rp2040", - "configurePreset": "rp2040", - "targets": [ - "engine_demo_example" - ] + "name": "pico-debug", + "displayName": "Build Pico RP2040 Debug", + "configurePreset": "pico-debug" }, { - "name": "rp2350", - "configurePreset": "rp2350", - "targets": [ - "engine_demo_example" - ] + "name": "pico-release", + "displayName": "Build Pico RP2040 Release", + "configurePreset": "pico-release" + }, + { + "name": "pico2-debug", + "displayName": "Build Pico 2 RP2350 Debug", + "configurePreset": "pico2-debug" + }, + { + "name": "pico2-release", + "displayName": "Build Pico 2 RP2350 Release", + "configurePreset": "pico2-release" } ] }