[kdstatemachineeditor] Update to 2.3.1 - #53429
Conversation
| "graphviz", | ||
| "qt5compat", | ||
| { | ||
| "name": "graphviz", |
There was a problem hiding this comment.
GPT 5.6 Sol suggests that this is the build failure cause:
Windows ARM64 and ARM64 static-md configuration fail because this PR changes the dependency from
graphviztographviz[tools]. That feature makes a target-architecturedot.exeavailable to CMake, and upstreamFindGraphviz.cmakeselects and executes it during cross-compilation. The x64 build host cannot run the ARM64 executable, so version detection receives no output and fails instring(REPLACE).The
dot -Vdetection is not new in 2.3.1; version 2.0.0 contains materially the same Windows logic. The regression is specifically that enabling thetoolsfeature newly exposes the target executable and triggers this pre-existing cross-compilation defect.
It suggests that:
Making
graphviz[tools]host-only would remove the target Graphviz libraries that KDSME links.A viable fix is:
- target dependency:
graphviz- host dependency:
graphviz[tools]- pass
DOT_TOOL=${CURRENT_HOST_INSTALLED_DIR}/tools/graphviz/dot.exeto CMakeThat lets
FindGraphviz.cmakeinspect target libraries while executing a host-compatibledot.
./vcpkg x-add-version --alland committing the result.