在KDE中,我调整了一个宏来编译和安装Python文件,但我遇到了保留文件权限的问题。
更清楚的是,宏中的违规行是
install(FILES ${SOURCE_FILE} DESTINATION ${DESTINATION_DIR})
适用于99%的案例。
在一个案例中,虽然我在源目录中有一个标记为可执行文件的Python文件(+ x,我在这里谈论Linux),然后将其符号链接到安装的二进制目录。由于install()不保留权限,因此会从中删除执行位,这会导致以后出现各种问题。
是否可以保留文件的权限,或者读取它们并相应地设置它们?我讨厌使用手动chmod
命令,因为它不可移植。
编辑:我不想让这个宏可执行文件安装所有文件,因为这样做毫无意义。
答案 0 :(得分:20)
您可以使用
安装+x
权限的文件
install(PROGRAMS ...
命令。
或者,您可以安装整个目录保留文件权限:
install(DIRECTORIES ... USE_SOURCE_PERMISSIONS)
See documentation用于安装命令以获取更多信息。