diff options
| author | Thomas Vanbesien <tvanbesi@proton.me> | 2026-02-17 23:58:08 +0100 |
|---|---|---|
| committer | Thomas Vanbesien <tvanbesi@proton.me> | 2026-02-17 23:58:08 +0100 |
| commit | 343169dff6b062074fd3c4a5e240b449ffc4a449 (patch) | |
| tree | a2ef1edc8dd1b1c1dbac757192fa681d8ec76717 /CMakeLists.txt | |
| download | BobinkQtOpcUa-343169dff6b062074fd3c4a5e240b449ffc4a449.tar.gz BobinkQtOpcUa-343169dff6b062074fd3c4a5e240b449ffc4a449.zip | |
Initial Bobink library: BobinkAuth, BobinkClient, and demo app
Implements the core OPC UA wrapper library with:
- Build system with automatic dep building (open62541, QtOpcUa)
- BobinkAuth: QML auth component (anonymous/userpass/certificate)
- BobinkClient: QML singleton managing connection, LDS discovery,
PKI configuration, endpoint selection, and certificate trust flow
- Demo app for manual testing of the full connection flow
Diffstat (limited to 'CMakeLists.txt')
| -rw-r--r-- | CMakeLists.txt | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..73ab94d --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,26 @@ +cmake_minimum_required(VERSION 3.16) +project(Bobink LANGUAGES CXX) + +set(CMAKE_CXX_STANDARD 17) +set(CMAKE_CXX_STANDARD_REQUIRED ON) +set(CMAKE_EXPORT_COMPILE_COMMANDS ON) + +# Build external dependencies (open62541, qtopcua) if not already built +include(cmake/BuildDeps.cmake) + +# Local QtOpcUa must come before system Qt so find_package picks up our +# build instead of any system-installed QtOpcUa. +list(PREPEND CMAKE_PREFIX_PATH "${QTOPCUA_BUILD_DIR}") +list(PREPEND CMAKE_PREFIX_PATH "${OPEN62541_INSTALL_DIR}") + +find_package(Qt6 6.10.2 REQUIRED COMPONENTS Core Qml Quick OpcUa) +qt_standard_project_setup(REQUIRES 6.10.2) + +# Ensure the local QtOpcUa and open62541 libs are findable at runtime +# (needed because the Qt plugin loader dlopen's the open62541 backend). +set(CMAKE_BUILD_RPATH + "${QTOPCUA_BUILD_DIR}/lib" + "${OPEN62541_INSTALL_DIR}/lib") + +add_subdirectory(src) +add_subdirectory(demo) |
