有没有办法让cmake复制它在安装阶段最新时通常省略的符号链接?
基本上,即使新构建的符号链接相同,我也希望在每次构建时更新时间戳。
我目前生成的所有.cmake文件都是类似的:
IF(EXISTS "${file}" AND
NOT IS_SYMLINK "${file}")
FILE(RPATH_CHECK
FILE "${file}"
RPATH "")
CmakeLists.txt的相关部分:
INSTALL(TARGETS mylib EXPORT mylib-export
LIBRARY DESTINATION ${LIB_INSTALL_DIR}
RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}/bin
ARCHIVE DESTINATION ${LIB_INSTALL_DIR}
FRAMEWORK DESTINATION ${FRAMEWORK_INSTALL_DIR}
PUBLIC_HEADER DESTINATION ${INCLUDE_INSTALL_DIR}/mylib
)
我能找到的与符号链接相关的唯一两个选项是NAMELINK_ONLY
或NAMELINK_SKIP
。也不做我想要的。
答案 0 :(得分:0)
我最终为它编写了一个自定义命令。
set ( mylink ${LIB_INSTALL_DIR}/mylib.so)
add_custom_command (TARGET mylib
POST_BUILD
COMMAND touch -h ${mylink}
COMMENT "Updating date on symbolic link" )
它有效,但它不是很优雅。
我宁愿找一些东西来改变cmake对安装行为的更新。