2012-09-13 14 views
5

Tengo una aplicación que está instalada en/opt (esta es la forma en que se hace aquí). Está bien tener todos los archivos y carpetas que pertenecen a la raíz aparte del directorio logs que cualquier persona debe poder escribir.CMake: ¿cómo crear un directorio durante la instalación con ciertos derechos de acceso?

Para crear el directorio de registros que hago

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

¿Cómo puedo entonces el directorio chmod?

Respuesta

4

En lugar de usar la variante CODE del comando INSTALL, considere usar la variante DIRECTORY en su lugar. Éste le permite especificar los permisos del sistema de archivos, es decir .:

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

Para el comando install para tener éxito, un directorio vacío Logs debe existir en la carpeta de origen.

+4

para crear los registros de directorio vacíos que hago: ARCHIVO (registros de MAKE_DIRECTORY) Gracias por su ayuda – Barth

Cuestiones relacionadas