diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..1783aa6 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,36 @@ +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(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() + +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) + +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) \ No newline at end of file diff --git a/Cargo.toml b/Cargo.toml index f3962eb..99a7d12 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -3,6 +3,9 @@ name = "Sukai" version = "0.1.0" edition = "2021" +[lib] +crate-type = ["staticlib"] + [build-dependencies] cxx-qt-build = { git = "https://github.com/redstrate/cxx-qt", branch = "work/josh/add-qdatetime-from-string"} diff --git a/cpp/main.cpp b/cpp/main.cpp new file mode 100644 index 0000000..30014d9 --- /dev/null +++ b/cpp/main.cpp @@ -0,0 +1,3 @@ +int main(int argc, char *argv[]) { + return 0; +} \ No newline at end of file diff --git a/src/lib.rs b/src/lib.rs new file mode 100644 index 0000000..e69de29