CMake:如何在安装过程中使用某些访问权限创建目录?

时间:2012-09-13 09:32:38

标签: permissions installation cmake access-rights

我有一个安装在/ opt中的应用程序(这是在这里完成的方式)。 除了必须可由任何人写入的 logs 目录之外,所有属于root的文件和文件夹都可以。

要创建日志目录,我

INSTALL(CODE "FILE(MAKE_DIRECTORY \${ENV}\${CMAKE_INSTALL_PREFIX}/logs)")

我怎么能chmod目录?

1 个答案:

答案 0 :(得分:5)

请考虑使用CODE变体,而不是使用INSTALL命令的DIRECTORY变体。这个允许您指定文件系统权限,即:

install (DIRECTORY "Logs" DESTINATION "." DIRECTORY_PERMISSIONS 
    OWNER_WRITE OWNER_READ OWNER_EXECUTE
    GROUP_WRITE GROUP_READ GROUP_EXECUTE
    WORLD_WRITE WORLD_READ WORLD_EXECUTE)

要使install命令成功,源文件夹中必须存在空目录Logs