我正在寻找一些关于如何在使用CMake的项目中生成,打包和安装手册页的好例子/教程。谢谢
hec6srdp1#
在Linux下使用cmake 2.8.12,下面的代码对我有用:
ADD_CUSTOM_TARGET(man ALL) ADD_CUSTOM_COMMAND( TARGET man SOURCE ${CMAKE_CURRENT_SOURCE_DIR}/myprog.pod COMMAND pod2man ARGS -s 1 -c "myprog manual" ${CMAKE_CURRENT_SOURCE_DIR}/myprog.pod ${CMAKE_CURRENT_BINARY_DIR}/myprog.1 OUTPUTS ${CMAKE_CURRENT_BINARY_DIR}/myprog.1 ) ADD_CUSTOM_COMMAND( TARGET man SOURCE man DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/myprog.1 ) INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/myprog.1 DESTINATION ${CMAKE_INSTALL_PREFIX}/man/man1)
即使按照CMake的标准,它看起来也不优雅。我希望看到一个解决方案,少口吃。
ni65a41a2#
也许你会对下面的解决方案感兴趣,它允许生成和安装手册页,用Markdown或AsciiDoc编写:https://github.com/rnpgp/cmake-modules/要生成和安装用Markdown编写的手册页,只需在CMakeLists.txt中添加两行即可:
CMakeLists.txt
include(PandocMan) add_pandoc_man("${CMAKE_CURRENT_SOURCE_DIR}/utility.1.md")
与AsciiDoc和AsciiDoctor相同:
include(AdocMan) add_adoc_man("${CMAKE_CURRENT_SOURCE_DIR}/utility.1.adoc")
kognpnkq3#
您可以深入研究CMake本身的源代码树,了解它如何安装自己的手册页。它肯定是以下各项的组合:
有关详细信息,请参阅CMake的add_custom_command和install命令的文档:
3条答案
按热度按时间hec6srdp1#
在Linux下使用cmake 2.8.12,下面的代码对我有用:
即使按照CMake的标准,它看起来也不优雅。我希望看到一个解决方案,少口吃。
ni65a41a2#
也许你会对下面的解决方案感兴趣,它允许生成和安装手册页,用Markdown或AsciiDoc编写:
https://github.com/rnpgp/cmake-modules/
要生成和安装用Markdown编写的手册页,只需在
CMakeLists.txt
中添加两行即可:与AsciiDoc和AsciiDoctor相同:
kognpnkq3#
您可以深入研究CMake本身的源代码树,了解它如何安装自己的手册页。
它肯定是以下各项的组合:
有关详细信息,请参阅CMake的add_custom_command和install命令的文档: