@@ -32,43 +32,34 @@ endforeach()
3232file (GLOB_RECURSE SRC_CPP ${CMAKE_CURRENT_LIST_DIR} /src/*.cpp )
3333file (GLOB_RECURSE SRC_H ${CMAKE_CURRENT_LIST_DIR} /src/*.h )
3434
35- macro (SET_QT_VERSION )
36- if (${QT_VERSION_MAJOR} EQUAL 6)
37- # Qt6 环境
38- find_package (PkgConfig REQUIRED )
39- find_package (Qt6 COMPONENTS Core DBus Network Sql REQUIRED )
40- find_package (PolkitQt6-1 REQUIRED )
41- find_package (deepin-qdbus-service REQUIRED )
42- find_package (Dtk6 COMPONENTS
43- Widget
44- Core
45- REQUIRED
46- )
47- elseif (${QT_VERSION_MAJOR} EQUAL 5)
48- # Qt5 环境
49- find_package (PkgConfig REQUIRED )
50- find_package (Qt5 COMPONENTS Core DBus Network Sql REQUIRED )
51- find_package (DtkCore REQUIRED )
52- find_package (PolkitQt5-1 REQUIRED )
53- find_package (deepin-qdbus-service REQUIRED )
54- else ()
55- message (FATAL_ERROR "Unsupported QT_VERSION: ${QT_VERSION} " )
56- endif ()
57- endmacro ()
58-
59- # 调用宏
60- SET_QT_VERSION ()
35+ # Find Qt package with detected version
36+ find_package (PkgConfig REQUIRED )
37+ find_package (Qt${QT_VERSION_MAJOR} COMPONENTS Core DBus Network Sql REQUIRED )
38+
39+ # Find Dtk package with mapped version
40+ find_package (Dtk${DTK_VERSION_MAJOR} COMPONENTS
41+ Widget
42+ Core
43+ REQUIRED
44+ )
6145
46+ # Define external dependency package names based on Qt version
6247if (${QT_VERSION_MAJOR} EQUAL 6)
63- find_package (QApt-qt6 REQUIRED )
64- include_directories (${QApt-qt6_INCLUDE_DIRS} )
65- set (QAPT_LIB QApt-qt6)
48+ set (POLKITQT_NAME "PolkitQt6-1" )
49+ set (QAPT_NAME "QApt-qt6" )
6650elseif (${QT_VERSION_MAJOR} EQUAL 5)
67- find_package (QApt REQUIRED )
68- include_directories (${QApt_INCLUDE_DIRS} )
69- set (QAPT_LIB QApt)
51+ set (POLKITQT_NAME "PolkitQt5-1" )
52+ set (QAPT_NAME "QApt" )
53+ else ()
54+ message (FATAL_ERROR "Unsupported QT_VERSION_MAJOR: ${QT_VERSION_MAJOR} " )
7055endif ()
7156
57+ # Find external dependencies
58+ find_package (${POLKITQT_NAME} REQUIRED )
59+ find_package (deepin-qdbus-service REQUIRED )
60+ find_package (${QAPT_NAME} REQUIRED )
61+ include_directories (${${QAPT_NAME}_INCLUDE_DIRS} )
62+
7263if (NOT DISABLE_DRIVER)
7364 PKG_SEARCH_MODULE (kmod REQUIRED libkmod IMPORTED_TARGET )
7465endif ()
@@ -82,58 +73,57 @@ include_directories("/usr/include/cups/")
8273
8374add_definitions (-DSERVICE_CONFIG_DIR= "${CMAKE_INSTALL_PREFIX} /share/deepin-service-manager/" )
8475
76+ # Include directories with dynamic Qt/DTK versions
8577if (${QT_VERSION_MAJOR} EQUAL 6)
86- # Qt6 environment
8778 target_include_directories (${BIN_NAME} PUBLIC
88- Dtk6 ::Core
89- Dtk6 ::Widget
90- Qt6 ::Core
91- Qt6 ::DBus
92- Qt6 ::Network
93- Qt6 ::Sql
94- Qt6 ::Gui
95- ${deepin-qdbus-service_INCLUDE_DIR}
96- ${QAPT_LIB }
97- )
98-
99- target_link_libraries (${BIN_NAME} PRIVATE
100- Qt6 ::Core
101- Qt6 ::DBus
102- Qt6 ::Network
103- Qt6 ::Sql
104- PolkitQt6-1 ::Agent
105- Dtk6 ::Core
106- Dtk6 ::Widget
107- ${deepin-qdbus-service_LIBRARIES}
108- ${QAPT_LIB }
109- cups
79+ Dtk${DTK_VERSION_MAJOR} ::Core
80+ Dtk${DTK_VERSION_MAJOR} ::Widget
81+ Qt${QT_VERSION_MAJOR} ::Core
82+ Qt${QT_VERSION_MAJOR} ::DBus
83+ Qt${QT_VERSION_MAJOR} ::Network
84+ Qt${QT_VERSION_MAJOR} ::Sql
85+ Qt${QT_VERSION_MAJOR} ::Gui
86+ ${deepin-qdbus-service_INCLUDE_DIR}
87+ ${QAPT_NAME }
88+ )
89+
90+ target_link_libraries (${BIN_NAME} PRIVATE
91+ Qt${QT_VERSION_MAJOR} ::Core
92+ Qt${QT_VERSION_MAJOR} ::DBus
93+ Qt${QT_VERSION_MAJOR} ::Network
94+ Qt${QT_VERSION_MAJOR} ::Sql
95+ ${POLKITQT_NAME} ::Agent
96+ Dtk${DTK_VERSION_MAJOR} ::Core
97+ Dtk${DTK_VERSION_MAJOR} ::Widget
98+ ${deepin-qdbus-service_LIBRARIES}
99+ ${QAPT_NAME }
100+ cups
110101 )
111102elseif (${QT_VERSION_MAJOR} EQUAL 5)
112- # Qt5 environment
113103 target_include_directories (${BIN_NAME} PUBLIC
114- Qt5 ::Core
115- Qt5 ::DBus
116- Qt5 ::Network
117- Qt5 ::Sql
118- ${deepin-qdbus-service_INCLUDE_DIR}
119- )
120-
121- target_link_libraries (${BIN_NAME} PRIVATE
122- Qt5 ::Core
123- Qt5 ::DBus
124- Qt5 ::Network
125- Qt5 ::Sql
126- PolkitQt5-1 ::Agent
127- ${DtkCore_LIBRARIES}
128- ${deepin-qdbus-service_LIBRARIES}
129- cups
130- )
104+ Qt${QT_VERSION_MAJOR} ::Core
105+ Qt${QT_VERSION_MAJOR} ::DBus
106+ Qt${QT_VERSION_MAJOR} ::Network
107+ Qt${QT_VERSION_MAJOR} ::Sql
108+ ${deepin-qdbus-service_INCLUDE_DIR}
109+ )
110+
111+ target_link_libraries (${BIN_NAME} PRIVATE
112+ Qt${QT_VERSION_MAJOR} ::Core
113+ Qt${QT_VERSION_MAJOR} ::DBus
114+ Qt${QT_VERSION_MAJOR} ::Network
115+ Qt${QT_VERSION_MAJOR} ::Sql
116+ ${POLKITQT_NAME} ::Agent
117+ ${DtkCore_LIBRARIES}
118+ ${deepin-qdbus-service_LIBRARIES}
119+ cups
120+ )
131121endif ()
132122
133123if (NOT DISABLE_DRIVER)
134124 target_link_libraries (${BIN_NAME} PRIVATE
135125 kmod
136- ${QAPT_LIB }
126+ ${QAPT_NAME }
137127 )
138128endif ()
139129
0 commit comments