fix: CMake Test 依赖改为可选,解决无 Qt6 Test 包环境构建失败
This commit is contained in:
+8
-1
@@ -6,7 +6,10 @@ set(CMAKE_CXX_STANDARD 17)
|
|||||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||||
set(CMAKE_AUTOMOC ON)
|
set(CMAKE_AUTOMOC ON)
|
||||||
|
|
||||||
find_package(Qt6 REQUIRED COMPONENTS Core Quick DBus Network LinguistTools Test)
|
find_package(Qt6 REQUIRED COMPONENTS Core Quick DBus Network LinguistTools)
|
||||||
|
# Test 仅用于单元测试目标,非主插件依赖;将其设为可选,
|
||||||
|
# 避免未安装 Qt6 Test 开发包的环境构建主插件时失败
|
||||||
|
find_package(Qt6 OPTIONAL_COMPONENTS Test)
|
||||||
find_package(Dtk6 REQUIRED COMPONENTS Core)
|
find_package(Dtk6 REQUIRED COMPONENTS Core)
|
||||||
find_package(DDEShell REQUIRED)
|
find_package(DDEShell REQUIRED)
|
||||||
|
|
||||||
@@ -68,6 +71,9 @@ install(DIRECTORY package/components DESTINATION /usr/share/dde-shell/${PLUGIN_I
|
|||||||
install(FILES ${QM_FILES} DESTINATION /usr/share/dde-shell/${PLUGIN_ID}/translations)
|
install(FILES ${QM_FILES} DESTINATION /usr/share/dde-shell/${PLUGIN_ID}/translations)
|
||||||
|
|
||||||
# ---- 单元测试 ----
|
# ---- 单元测试 ----
|
||||||
|
# 仅当 Qt6 Test 组件存在时才构建测试目标
|
||||||
|
# 设计原因:Test 为可选组件,未安装 Qt6 Test 开发包的环境仍应能正常构建主插件
|
||||||
|
if(TARGET Qt6::Test)
|
||||||
# 直接编译源文件到测试可执行文件,避免共享库依赖问题
|
# 直接编译源文件到测试可执行文件,避免共享库依赖问题
|
||||||
enable_testing()
|
enable_testing()
|
||||||
add_executable(tst_networkmonitorapplet
|
add_executable(tst_networkmonitorapplet
|
||||||
@@ -93,3 +99,4 @@ target_compile_definitions(tst_networkmonitorapplet PRIVATE
|
|||||||
TRANSLATIONS_DIR="${CMAKE_CURRENT_SOURCE_DIR}/translations"
|
TRANSLATIONS_DIR="${CMAKE_CURRENT_SOURCE_DIR}/translations"
|
||||||
)
|
)
|
||||||
add_test(NAME tst_networkmonitorapplet COMMAND tst_networkmonitorapplet)
|
add_test(NAME tst_networkmonitorapplet COMMAND tst_networkmonitorapplet)
|
||||||
|
endif()
|
||||||
Reference in New Issue
Block a user