Some fixes for CMakeLists.txt

Summary:
* bump cmake dep to 3.0, spares one policy (any target group for 2.8?)
* do cmake_minimum_required as first thing
* use ECM things only if ECM_FOUND
* do things covered by KDE{Compiler,CMake}Settings only if !ECM
* install the generator actually :)

Reviewers: vandenoever

Reviewed By: vandenoever

Differential Revision: https://phabricator.kde.org/D9357
master
Friedrich W. H. Kossebau 2017-12-16 12:12:10 +01:00
parent 98779b0d44
commit 3f5c1581c5
2 changed files with 23 additions and 13 deletions

View File

@ -1,23 +1,29 @@
cmake_minimum_required(VERSION 3.0 FATAL_ERROR)
project (rust_qt_binding_generator)
cmake_minimum_required(VERSION 2.8.12 FATAL_ERROR)
cmake_policy(SET CMP0046 NEW)
cmake_policy(SET CMP0063 NEW)
set(QT_MIN_VERSION "5.6.0")
set(KF5_MIN_VERSION "5.2.0")
LIST(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
find_package(ECM 1.0.0 NO_MODULE)
if (ECM_FOUND)
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/cmake)
LIST(APPEND CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
include(KDEInstallDirs)
include(KDECMakeSettings)
include(KDECompilerSettings)
include(KDECompilerSettings NO_POLICY_SCOPE)
include(ECMPoQmTools)
else()
if (POLICY CMP0063)
cmake_policy(SET CMP0063 NEW)
endif()
enable_testing()
set(CMAKE_AUTOMOC ON)
endif()
set(CMAKE_AUTOUIC ON)
include(FeatureSummary)
include(ECMPoQmTools)
find_package(Cargo REQUIRED)
find_package(Rust REQUIRED)
@ -51,8 +57,6 @@ find_package(Qt5 ${QT_MIN_VERSION} CONFIG
)
find_package(Qt5QuickControls2 EXACT ${Qt5Core_VERSION})
find_package(Qt5Charts EXACT ${Qt5Core_VERSION})
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTOUIC ON)
find_package(KF5Kirigami2)
@ -69,13 +73,13 @@ endif()
add_subdirectory(src)
enable_testing()
add_subdirectory(tests)
if(Qt5Widgets_FOUND AND Qt5Svg_FOUND)
add_subdirectory(demo)
endif()
install(FILES org.kde.rust_qt_binding_generator.appdata.xml
DESTINATION ${KDE_INSTALL_METAINFODIR})
if (ECM_FOUND)
install(FILES org.kde.rust_qt_binding_generator.appdata.xml
DESTINATION ${KDE_INSTALL_METAINFODIR})
endif()

View File

@ -14,3 +14,9 @@ set_target_properties(rust_qt_binding_generator PROPERTIES
CXX_STANDARD 11
CXX_STANDARD_REQUIRED ON
)
if (ECM_FOUND)
install(TARGETS rust_qt_binding_generator ${KDE_INSTALL_TARGETS_DEFAULT_ARGS})
else()
install(TARGETS rust_qt_binding_generator RUNTIME DESTINATION bin)
endif()