From 35309337aacac2eac7d7215e526bddcf7647b8cf Mon Sep 17 00:00:00 2001 From: Thomas Vanbesien Date: Wed, 11 Mar 2026 11:02:24 +0100 Subject: Initial project setup: Qt 6.10.2 TCP client library for Alchemie XPL2 protocol - Static library (src/) with QML singleton Xpl2Client for TCP communication - Qt Quick demo app (demo/) with connection UI, command input, and response log --- CMakeLists.txt | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 CMakeLists.txt (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..bcb1f62 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,30 @@ +cmake_minimum_required(VERSION 3.16) +project(QtXpl2 LANGUAGES CXX) + +set(CMAKE_CXX_STANDARD 17) +set(CMAKE_CXX_STANDARD_REQUIRED ON) +set(CMAKE_EXPORT_COMPILE_COMMANDS ON) + +find_package(Qt6 6.10.2 REQUIRED COMPONENTS Core Network Qml Quick) +qt_standard_project_setup() +qt_policy(SET QTP0001 NEW) + +# QML import path so Qt Creator / qmlls can resolve modules. +list(APPEND QML_IMPORT_PATH "${PROJECT_BINARY_DIR}/qml") +set(QML_IMPORT_PATH + "${QML_IMPORT_PATH}" + CACHE STRING "" FORCE) + +# Generate .qmlls.ini for QML language server +set(QT_QML_GENERATE_QMLLS_INI + ON + CACHE BOOL "") + +# Let the demo executable find the library at run time. +set(CMAKE_BUILD_RPATH "${PROJECT_BINARY_DIR}/qml/Xpl2") + +add_subdirectory(src) + +if(PROJECT_IS_TOP_LEVEL) + add_subdirectory(demo) +endif() -- cgit v1.2.3