diff --git a/frontends/dbal/qml/CMakeLists.txt b/frontends/dbal/qml/CMakeLists.txt index 03c3b89d5..9675ce814 100644 --- a/frontends/dbal/qml/CMakeLists.txt +++ b/frontends/dbal/qml/CMakeLists.txt @@ -23,6 +23,13 @@ target_link_libraries(dbal-qml PRIVATE Qt6::Core Qt6::Gui Qt6::Quick) qt_finalize_executable(dbal-qml) +if(NOT "${CMAKE_GENERATOR}" STREQUAL "Ninja") + message( + STATUS + "dbal-qml is designed for Ninja; configure with `cmake -G Ninja` so the Conan Ninja toolchain is used." + ) +endif() + install(TARGETS dbal-qml RUNTIME DESTINATION bin ) diff --git a/frontends/dbal/qml/README.md b/frontends/dbal/qml/README.md new file mode 100644 index 000000000..363629184 --- /dev/null +++ b/frontends/dbal/qml/README.md @@ -0,0 +1,25 @@ +# DBAL QML Player + +This small Qt Quick app renders the `FrontPage.qml` guided hero and telemetry tiles. + +## Dependencies + +- We resolve Qt6 and Ninja via `conanfile.txt`. +- `CMakeDeps` + `CMakeToolchain` expose the Ninja toolchain so `cmake -G Ninja` runs the same generator as Conan. + +## Local build + +```bash +cd frontends/dbal/qml +conan install . --output-folder=build --build=missing +cmake -S . -B build -G Ninja +cmake --build build +./build/dbal-qml +``` + +The `cmake` invocation purposely targets the Ninja generator and matches the toolchain that Conan emits. + +## Notes + +- The QML files are exposed via `qt_add_qml_module` and bundled together with the executable. +- If you forget `-G Ninja`, the CMake script prints a reminder so you can reconfigure accordingly.