создание / упаковка / установка man-страницы с помощью cmake - PullRequest
11 голосов
/ 31 июля 2010

Я ищу несколько хороших примеров / руководств по созданию, упаковке и установке справочных страниц в проектах с использованием CMake.

Спасибо.

Ответы [ 2 ]

3 голосов
/ 11 апреля 2014

В cmake 2.8.12 под Linux у меня работает следующее:

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.Я хотел бы увидеть решение с меньшим заиканием.

0 голосов
/ 23 февраля 2011

Вы можете вникнуть в дерево исходных текстов самого CMake, чтобы увидеть, как он устанавливает свои собственные справочные страницы.

Это обязательно будет комбинация:

  • с использованием CMake add_custom_command
  • вызов инструментов для создания / генерации документации в этих пользовательских командах
  • установка результатов в правильное местоположение

Дополнительную информацию смотрите в документации к командам CMake add_custom_command и install:

...