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)