43 lines
1.3 KiB
CMake
43 lines
1.3 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)
|
|
set(QMAKE_PATH "/home/user/CraftRoot/build/libs/qt6/qtbase/image-MinSizeRel-6.8.0/bin/qmake")
|
|
message("Using ${QMAKE_PATH}")
|
|
|
|
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)
|