Archived
1
Fork 0
This repository has been archived on 2025-04-27. You can view files and clone it, but cannot push or open issues or pull requests.
sukai/CMakeLists.txt
2024-12-30 14:22:43 -05:00

41 lines
1.2 KiB
CMake

cmake_minimum_required(VERSION 3.19)
project(Sukai)
set(CMAKE_AUTOMOC ON)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
find_package(ECM ${KF_MIN_VERSION} NO_MODULE REQUIRED)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${CMAKE_SOURCE_DIR}/cmake)
find_package(Qt6 COMPONENTS Core Gui Qml QuickControls2 QuickTest Test Widgets Quick Network REQUIRED)
find_package(KF6CoreAddons REQUIRED)
find_package(OpenSSL REQUIRED)
find_package(CxxQt QUIET)
if(NOT CxxQt_FOUND)
include(FetchContent)
FetchContent_Declare(
CxxQt
GIT_REPOSITORY https://github.com/kdab/cxx-qt-cmake.git
GIT_TAG main
)
FetchContent_MakeAvailable(CxxQt)
endif()
# Needed for Craft Android, otherwise it tries to use native tooling which is wrong
get_target_property(QMAKE_PATH Qt::qmake LOCATION)
cxx_qt_import_crate(
MANIFEST_PATH Cargo.toml
CRATES Sukai
QT_MODULES Qt::Core Qt::Gui Qt::Qml Qt::QuickControls2 Qt::Widgets Qt::Quick Qt::Network
QMAKE ${QMAKE_PATH})
cxx_qt_import_qml_module(sukai_module
URI "com.redstrate.sukai"
SOURCE_CRATE Sukai)
add_executable(sukai cpp/main.cpp)
target_link_libraries(sukai PRIVATE sukai_module OpenSSL::Crypto OpenSSL::SSL)