2017-08-02 14:29:32 -07:00
|
|
|
project (RMail)
|
|
|
|
|
|
|
|
cmake_minimum_required(VERSION 2.8.12 FATAL_ERROR)
|
|
|
|
cmake_policy(SET CMP0046 NEW)
|
|
|
|
cmake_policy(SET CMP0063 NEW)
|
|
|
|
set(QT_MIN_VERSION "5.3.0")
|
|
|
|
set(KF5_MIN_VERSION "5.2.0")
|
|
|
|
|
|
|
|
find_package(ECM 1.0.0 REQUIRED NO_MODULE)
|
|
|
|
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
|
|
|
|
|
|
|
|
include(ExternalProject)
|
|
|
|
include(KDEInstallDirs)
|
|
|
|
include(KDECMakeSettings)
|
|
|
|
include(KDECompilerSettings)
|
|
|
|
include(FeatureSummary)
|
|
|
|
|
2017-08-04 04:21:11 -07:00
|
|
|
#add_custom_target(rust
|
|
|
|
# OUTPUT "${CMAKE_SOURCE_DIR}/target/debug/librust.a"
|
|
|
|
# COMMAND cargo build
|
|
|
|
# COMMAND cargo build --release
|
|
|
|
# DEPENDS
|
|
|
|
|
2017-08-02 14:29:32 -07:00
|
|
|
set_directory_properties(PROPERTIES EP_PREFIX ${CMAKE_BINARY_DIR}/Rust)
|
|
|
|
|
|
|
|
ExternalProject_Add(
|
|
|
|
rust
|
|
|
|
DOWNLOAD_COMMAND ""
|
|
|
|
CONFIGURE_COMMAND ""
|
|
|
|
BUILD_COMMAND cargo build
|
|
|
|
COMMAND cargo build --release
|
|
|
|
BINARY_DIR "${CMAKE_SOURCE_DIR}/common-rust"
|
|
|
|
INSTALL_COMMAND ""
|
|
|
|
LOG_BUILD ON)
|
|
|
|
|
|
|
|
# Find Qt modules
|
|
|
|
find_package(Qt5 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS
|
|
|
|
Core # QCommandLineParser, QStringLiteral
|
2017-08-10 11:47:46 -07:00
|
|
|
Quick
|
2017-08-02 14:29:32 -07:00
|
|
|
Widgets # QApplication
|
|
|
|
)
|
|
|
|
|
|
|
|
# Find KDE modules
|
|
|
|
find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS
|
|
|
|
CoreAddons # KAboutData
|
|
|
|
I18n # KLocalizedString
|
|
|
|
WidgetsAddons # KMessageBox
|
|
|
|
)
|
|
|
|
|
|
|
|
feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES)
|
2017-08-06 06:57:51 -07:00
|
|
|
|
|
|
|
add_subdirectory(rust_qt_binding_generator)
|
|
|
|
|
2017-08-02 14:29:32 -07:00
|
|
|
|
2017-08-06 06:57:51 -07:00
|
|
|
set(RMail_SRCS src/main.cpp src/RMailObject.cpp src/tmp.cpp)
|
2017-08-02 14:29:32 -07:00
|
|
|
|
|
|
|
add_executable(RMail ${RMail_SRCS})
|
|
|
|
|
|
|
|
add_dependencies(RMail rust)
|
|
|
|
|
|
|
|
target_link_libraries(RMail
|
2017-08-10 11:47:46 -07:00
|
|
|
Qt5::Quick
|
2017-08-02 14:29:32 -07:00
|
|
|
Qt5::Widgets
|
|
|
|
KF5::CoreAddons
|
|
|
|
KF5::I18n
|
|
|
|
KF5::WidgetsAddons
|
|
|
|
debug "${CMAKE_SOURCE_DIR}/common-rust/target/debug/librust.a"
|
|
|
|
optimized "${CMAKE_SOURCE_DIR}/common-rust/target/release/librust.a"
|
|
|
|
)
|
|
|
|
|
|
|
|
set_target_properties(RMail PROPERTIES
|
|
|
|
CXX_STANDARD 11
|
|
|
|
CXX_STANDARD_REQUIRED ON
|
|
|
|
)
|
|
|
|
|
|
|
|
install(TARGETS RMail ${INSTALL_TARGETS_DEFAULT_ARGS})
|