我有一個只有標題的庫。我的CMakeLists.txt被用來編譯一些例子。要做到這一點,在文件的CMakeLists.txt,我有CMake:安裝時不解決依賴關係
ADD_SUBDIRECTORY(examples)
我想使用
INSTALL(DIRECTORY ${PROJECT_SOURCE_DIR}/HeadersOnlyDirectory DESTINATION include)
提供的安裝目標,但是這最終讓所有的可執行文件作爲依賴關係。我怎樣才能解決這個問題?
我有一個只有標題的庫。我的CMakeLists.txt被用來編譯一些例子。要做到這一點,在文件的CMakeLists.txt,我有CMake:安裝時不解決依賴關係
ADD_SUBDIRECTORY(examples)
我想使用
INSTALL(DIRECTORY ${PROJECT_SOURCE_DIR}/HeadersOnlyDirectory DESTINATION include)
提供的安裝目標,但是這最終讓所有的可執行文件作爲依賴關係。我怎樣才能解決這個問題?
爲什麼不安裝頭的文件,而不是:此行爲可以通過添加誘導?對我來說看起來更清潔。
您可以通過使用一個全局正則表達式容易獲得他們的列表:
file(GLOB header_files ${PROJECT_SOURCE_DIR}/HeadersOnlyDirectory/*.h)
install(FILES ${header_files} DESTINATION include)
想通了。
set(CMAKE_SKIP_INSTALL_ALL_DEPENDENCY true)
是否安裝它們作爲文件中刪除了「所有」的依賴? – parsiad
@par沒關係,因爲你只會安裝標題而沒有別的。 – dreamzor