mirror of
https://github.com/ddeverill/SteamlessController.git
synced 2026-10-19 05:09:47 -05:00
The Visual Studio generator is multi-config, so CMAKE_BUILD_TYPE does nothing and "cmake --build build/release" quietly produces DEBUG. The installer packages build\release\Release\, which then keeps whatever was last built there — and stamps MyAppVersion on the result regardless. That shipped: a 1.21.1 installer carrying the 1.21 executable went to the #95 reporter. Every visible signal agreed it was fine. Setup succeeded, Add/Remove Programs said 1.21.1, and only the app's own startup banner and the missing feature gave it away. Nothing about the failure was loud, so the fix is to make it loud. The script now reads the FileVersion out of the binary it is about to package and aborts the compile when it disagrees with MyAppVersion, naming both versions and the command to run. Verified in both directions: matching compiles, mismatched aborts. The release build preset gains the two helper binaries the installer also packages, so "cmake --build --preset release" — the command the error points at — is actually sufficient to produce an installer. It previously built only SteamlessController, which on a clean tree would have left the other two missing or stale, the same failure by a different route. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
36 lines
778 B
JSON
36 lines
778 B
JSON
{
|
|
"version": 3,
|
|
"configurePresets": [
|
|
{
|
|
"name": "release",
|
|
"displayName": "Release",
|
|
"binaryDir": "${sourceDir}/build/release",
|
|
"cacheVariables": {
|
|
"CMAKE_BUILD_TYPE": "Release"
|
|
}
|
|
},
|
|
{
|
|
"name": "debug",
|
|
"displayName": "Debug",
|
|
"binaryDir": "${sourceDir}/build/debug",
|
|
"cacheVariables": {
|
|
"CMAKE_BUILD_TYPE": "Debug"
|
|
}
|
|
}
|
|
],
|
|
"buildPresets": [
|
|
{
|
|
"name": "release",
|
|
"configurePreset": "release",
|
|
"configuration": "Release",
|
|
"targets": ["SteamlessController", "SteamlessDeviceCycle", "ViGEmBusProbe"]
|
|
},
|
|
{
|
|
"name": "debug",
|
|
"configurePreset": "debug",
|
|
"configuration": "Debug",
|
|
"targets": ["SteamlessController"]
|
|
}
|
|
]
|
|
}
|