2010-07-30 60 views

回答

3

通過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的標準看起來unelegant。我希望看到一個解決問題的方法。

+1

我意識到這個答案是+ 1年前的,但因爲它在Google搜索結果中彈出,所以我不得不分享一下,由於策略CMP0050,此方法在CMake> = 3.2.2上發出警告。 CMake郵件列表提供了一種方法來執行提問者想要的: http://www.cmake.org/pipermail/cmake/2010-September/039781.html – silverclaw 2015-06-22 14:07:20