Prolog:我错过了文档中的这个,真是个白痴
cmake-2.8.10.2
如何让cmake在安装目录时保留原始文件权限?对于手头的项目,我希望它基本上将一些目录从我的源树复制到安装树。如下:
install(
DIRECTORY config runp
DESTINATION ${CMAKE_INSTALL_PREFIX}
PATTERN ".svn" EXCLUDE
PATTERN ".git" EXCLUDE
PATTERN "start_collection.snl" EXCLUDE
)
所有的工作都符合预期 -- 只是可执行脚本的复制权限出错了。实际上,原始文件权限都没有被保留。全局设置文件权限和目录权限(FILE_PERMISSIONS和DIRECTORY_PERMISSIONS)不是我想要做的事情,在这种情况下,这样做实际上是一种破解方法。
在shell脚本世界中,我会做一些简单的事情,例如:
for i in config runp ; do
tar cf - $i | tar -C $CMAKE_INSTALL_PREFIX -xf -
done