瀏覽代碼

Find QML modules the proper way

Malte Veerman 6 年之前
父節點
當前提交
f05ff7a4f4
共有 3 個文件被更改,包括 11 次插入12 次删除
  1. 9 10
      CMakeLists.txt
  2. 1 1
      helper/CMakeLists.txt
  3. 1 1
      import/qml/FanItem.qml

+ 9 - 10
CMakeLists.txt

@@ -27,12 +27,11 @@ endif(BUILD_KCM AND NO_SYSTEMD)
 
 
 #Silence warnings
-cmake_policy(SET CMP0037 OLD)
 cmake_policy(SET CMP0063 NEW)
 
 
 #Find ECM
-find_package(ECM REQUIRED)
+find_package(ECM 5.38 REQUIRED)
 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
 
 #includes
@@ -41,21 +40,21 @@ include(KDECMakeSettings)
 include(KDECompilerSettings)
 include(FeatureSummary)
 include(FindPkgConfig)
+include(ECMQMLModules)
+include(ECMGenerateQmlTypes)
 
 #Find Qt5
 find_package(Qt5Core REQUIRED)
-find_package(Qt5 5.8 COMPONENTS Quick QuickControls2)
-set_package_properties(Qt5Quick PROPERTIES TYPE RUNTIME PURPOSE "Needed by the QML parts")
-set_package_properties(Qt5QuickControls2 PROPERTIES TYPE RUNTIME PURPOSE "Needed by the QML parts")
 
 #Find KF5
 find_package(KF5 COMPONENTS I18n REQUIRED)
-find_package(KF5 5.37 COMPONENTS Kirigami2)
-set_package_properties(KF5Kirigami2 PROPERTIES TYPE RUNTIME PURPOSE "Needed by the QML parts")
 
-if(${KF5_VERSION} VERSION_GREATER_EQUAL 5.33.0)
-    include(ECMGenerateQmlTypes)
-endif(${KF5_VERSION} VERSION_GREATER_EQUAL 5.33.0)
+#Find QML modules
+ecm_find_qmlmodule(QtQuick 2.6)
+ecm_find_qmlmodule(QtQuick.Controls 2.1)
+ecm_find_qmlmodule(QtQuick.Layouts 1.2)
+ecm_find_qmlmodule(QtQuick.Dialogs 1.2)
+ecm_find_qmlmodule(org.kde.kirigami 2.3)
 
 include_directories (${CMAKE_SOURCE_DIR})
 

+ 1 - 1
helper/CMakeLists.txt

@@ -6,7 +6,7 @@ if(NOT NO_SYSTEMD)
 
     set(LIBRARIES ${LIBRARIES}
                   Qt5::DBus)
-                  
+
     find_package(Qt5DBus REQUIRED)
     include_directories(${Qt5DBus_INCLUDE_DIRS})
 

+ 1 - 1
import/qml/FanItem.qml

@@ -21,7 +21,7 @@
 import QtQuick 2.6
 import QtQuick.Controls 2.1
 import QtQuick.Layouts 1.2
-import org.kde.kirigami 2.2 as Kirigami
+import org.kde.kirigami 2.3 as Kirigami
 import Fancontrol.Qml 1.0 as Fancontrol
 import "math.js" as MoreMath
 import "units.js" as Units