lez-explorer-ui/CMakeLists.txt

32 lines
1.2 KiB
CMake

cmake_minimum_required(VERSION 3.14)
project(LezExplorerUiPlugin LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
# Logos Module CMake helper. For nix builds this is provided via
# LOGOS_MODULE_BUILDER_ROOT.
if(DEFINED ENV{LOGOS_MODULE_BUILDER_ROOT})
include($ENV{LOGOS_MODULE_BUILDER_ROOT}/cmake/LogosModule.cmake)
elseif(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/cmake/LogosModule.cmake")
include(cmake/LogosModule.cmake)
else()
message(FATAL_ERROR "LogosModule.cmake not found. Set LOGOS_MODULE_BUILDER_ROOT.")
endif()
# Universal ui_qml module: we author only the .rep view contract + the *Backend
# class. REP_FILE runs repc; the generated *Plugin / *Interface glue in
# generated_code/ (Q_PLUGIN_METADATA, initLogos wiring, QtRO registration) is
# compiled automatically. The QML view (src/qml/) is delivered by the host
# alongside the plugin — no Qt Widgets, no .qrc. The logos SDK/protocol (incl.
# the typed lez_indexer_module wrappers) is linked by the builder.
logos_module(
NAME lez_explorer_ui
REP_FILE src/lez_explorer_ui.rep
SOURCES
src/lez_explorer_ui_backend.h
src/lez_explorer_ui_backend.cpp
INCLUDE_DIRS
src
)