Files
JSwitchDisplayApplet/CMakeLists.txt
T
Jokul e771a160ab fix: 修复Intel显卡图标误显示为AMD及插件加载失败
1. CMakeLists.txt 链接 libdde-shell 库 (Dde::Shell),修复 undefined symbol:
   ds::DApplet::staticMetaObject 导致 .so 加载失败、弹框空白的问题

2. parseGpuVendorShort 用正则单词边界匹配厂商名称,修复 indexOf('ati')
   误匹配 'corporation' 中的子串导致 Intel 显卡显示 AMD 图标的问题
2026-07-14 10:01:46 +08:00

75 lines
2.3 KiB
CMake
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# SPDX-FileCopyrightText: 2024 UnionTech Software Technology Co., Ltd.
#
# SPDX-License-Identifier: GPL-3.0-or-later
cmake_minimum_required(VERSION 3.16)
project(dde-graphics-driver-applet VERSION 1.1.0 LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_AUTOMOC ON)
find_package(Qt6 REQUIRED COMPONENTS Core Quick DBus LinguistTools)
find_package(Dtk6 REQUIRED COMPONENTS Core)
find_package(DDEShell REQUIRED)
# 插件 ID
set(PLUGIN_ID "org.deepin.ds.graphics-driver")
# 翻译源文件目录
set(TRANSLATIONS_DIR ${CMAKE_CURRENT_SOURCE_DIR}/translations)
# 翻译文件列表
set(TS_FILES
${TRANSLATIONS_DIR}/${PLUGIN_ID}_zh_CN.ts
${TRANSLATIONS_DIR}/${PLUGIN_ID}_zh_TW.ts
)
# 生成 .qm 编译翻译文件
set(QM_FILES
${CMAKE_CURRENT_BINARY_DIR}/${PLUGIN_ID}_zh_CN.qm
${CMAKE_CURRENT_BINARY_DIR}/${PLUGIN_ID}_zh_TW.qm
)
add_custom_command(
OUTPUT ${QM_FILES}
COMMAND /usr/lib/qt6/bin/lrelease ${TRANSLATIONS_DIR}/${PLUGIN_ID}_zh_CN.ts -qm ${CMAKE_CURRENT_BINARY_DIR}/${PLUGIN_ID}_zh_CN.qm
COMMAND /usr/lib/qt6/bin/lrelease ${TRANSLATIONS_DIR}/${PLUGIN_ID}_zh_TW.ts -qm ${CMAKE_CURRENT_BINARY_DIR}/${PLUGIN_ID}_zh_TW.qm
DEPENDS ${TS_FILES}
COMMENT "Compiling translations to .qm files"
)
# 手动更新翻译源文件(不加入 ALL,仅在需要时手动 make update_translations
add_custom_target(update_translations
COMMAND /usr/lib/qt6/bin/lupdate ${CMAKE_CURRENT_SOURCE_DIR}/package -ts ${TS_FILES}
COMMENT "Updating translation source files"
)
add_library(org.deepin.ds.graphics-driver SHARED
graphicsdriverapplet.h
graphicsdriverapplet.cpp
${QM_FILES}
)
set_target_properties(org.deepin.ds.graphics-driver PROPERTIES PREFIX "")
target_include_directories(org.deepin.ds.graphics-driver PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}
/usr/include/dde-shell
)
target_link_libraries(org.deepin.ds.graphics-driver PRIVATE
Qt6::Core
Qt6::Quick
Qt6::DBus
Dtk6::Core
Dde::Shell
)
# 安装到dde-shell插件目录
install(TARGETS org.deepin.ds.graphics-driver DESTINATION /usr/lib/x86_64-linux-gnu/dde-shell)
install(FILES package/metadata.json DESTINATION /usr/share/dde-shell/${PLUGIN_ID})
install(FILES package/driverview.qml DESTINATION /usr/share/dde-shell/${PLUGIN_ID})
install(FILES ${QM_FILES} DESTINATION /usr/share/dde-shell/${PLUGIN_ID}/translations)