1 Star 0 Fork 0

xinghuo/clockwidget

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
CMakeLists.txt 4.46 KB
一键复制 编辑 原始数据 按行查看 历史
SONG yeyi 提交于 2024-05-17 17:53 . 版本:1.5
cmake_minimum_required(VERSION 3.15.1)
project(com.gitee.xinghuo.clock LANGUAGES C CXX VERSION 1.5)
# 构建 spark-build-skeleton 的配置流程
include(cmake/SparkEnvConfig.cmake) # 设置一些有关QT构建的开关
include(cmake/SparkMacrosConfig.cmake) # 声明了一些 spark_ 开头的 macro 宏
# include(cmake/SparkFindQt5Config.cmake) # 提供了 target_link_qt5 用于目标链接 qt5 的库
include(cmake/SparkFindQt6Config.cmake) # 提供了 target_link_qt6 用于目标链接 qt6 的库
# include(cmake/SparkFindDtkConfig.cmake) # 提供了 target_link_dtk 用于目标链接 dtk 的库
# include(cmake/SparkFindLibraries.cmake) # 提供了基于 spark_ 宏生成的 target_link_<lib> 用于目标链接 <lib> 的库
include(cmake/SparkMacrosExtendConfig.cmake) # 声明了一些 spark_ 开头的 macro 宏的扩展宏
include(cmake/SparkTranslatorConfig.cmake) # 提供了 qt5 ts转qm 的操作,最终生成 SPARK_QM_TRANSLATIONS 变量用于构建可执行文件时参与编译
# set(QRC_SOURCES "")
## 构建 spark-build-skeleton 可执行文件 (用于显式展开 SparkBuild.cmake 内容,如果使用 SparkBuild.cmake 此处将需要注释)
# spark_add_executable_path(${PROJECT_NAME} src ${SPARK_SOURCES} ${SPARK_QM_TRANSLATIONS})
# target_link_qt5(${PROJECT_NAME}) # 构建的目标需要使用 qt5 库
# target_link_dtk(${PROJECT_NAME}) # 构建的目标需要使用 dtk 库
# target_link_notify(${PROJECT_NAME}) # 构建的目标需要使用 notify 库
## 子构建 spark-build-children
# add_subdirectory(src/spark-build-children) # 传统构建方式,但已经可使用 spark_ 宏构建目标
# spark_add_executable_path(spark-build-children # 约定目标及、源代码目录路径
# src/spark-build-children)
# target_link_qt5(spark-build-children) # 构建的目标需要使用 qt5 库
##
# 1. 构建一个动态库目标
# spark_add_shared_library(hello
# src/libs/hello/hello.c
# )
# 或基于指定目录
# spark_add_shared_library_path(hello
# src/libs/hello
# )
# 2. 构建一个(静态库)默认目标
# spark_add_shared_library(say
# src/libs/say/say.c
# )
# 或基于指定目录
# spark_add_shared_library_path(say
# src/libs/say
# )
# 3. 构建一个可执行目标,并链接使用
# spark_add_executable(main
# src/main.c
# )
# target_link_hello(main)
# target_link_say(main)
##
# spark_add_library_realpaths
# 基于传入的项进行构建
# 可接受的值为: 路径列表
# 可接受的值为: 路径列表+依赖库A+依赖库B
# spark_add_library_realpaths(
# src/libs/say
# src/libs/hello
# )
# spark_add_executable_realpaths
# 基于传入的项进行构建
# 可接受的值为: 可执行目标:路径列表
# 可接受的值为: 可执行目标:路径列表+依赖库A+依赖库B
# spark_add_executable_realpaths(
# main:src+say+hello
# )
## 一行一目标概念:集成(一行一库 + 一行一可执行目标)
# spark_add_target_realpaths <tag> [realpaths]
# realpaths:
# s: static (t:src/libs/hello)
# d: shared (t:src/libs/say)
# t: target (t:<target>:src+hello+say)
# 参考
# spark_add_executable_realpaths
# spark_add_shared_library_realpaths
# spark_add_library_realpaths
spark_add_target_realpaths(ALL
# s:src/libs/hello
# d:src/libs/say
t:clock:clock
)
#target_compile_definitions(note PRIVATE ICONDIR="/opt/apps/${PROJECT_NAME}/icon/")
##
# [Desktop Entry] For Linux
include(cmake/SparkDesktopMacros.cmake)
# 内容默认应用名称: Name= 应与项目名称相同
spark_desktop_macros(
# 应用名称: Name=
"clock"
# 应用名称: Name[zh_CN]=
"时钟大师"
# 应用说明: Comment=
"时钟大师"
# 应用类型: Type=
"Application"
# 执行程序: Exec=
"/opt/apps/${PROJECT_NAME}/bin/clock"
# 图标路径: Icon=
"/opt/apps/${PROJECT_NAME}/icon/clock.png"
# 应用分类: Categories=
"Application"
# MIME类型: MimeType=
)
install(FILES ${SPARK_DESKTOP_FILE}
DESTINATION /usr/share/applications
)
install(FILES clock/clock.png
DESTINATION /opt/apps/${PROJECT_NAME}/icon
)
install(TARGETS clock
DESTINATION /opt/apps/${PROJECT_NAME}/bin
)
##
# [Graphviz] At 'builddeps', need 'dot' command
# include(cmake/SparkBuildGraphviz.cmake)
##
# [deb] For Linux(with dpkg)
# 注释行(使用方式)
find_package(SparkDebPackage PATHS ${CMAKE_SOURCE_DIR})
add_package_descript(cmake/spark-deb-package.descript)
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/xinghuowangluo/clockwidget.git
git@gitee.com:xinghuowangluo/clockwidget.git
xinghuowangluo
clockwidget
clockwidget
master

搜索帮助

344bd9b3 5694891 D2dac590 5694891