Tengo dos preguntas relativas a CMakeCMake: ¿Cómo obtener el nombre de todos los subdirectorios de un directorio?
1) Supongamos que tenemos una variable ${MY_CURRENT_DIR}
que contiene la ruta de un directorio que contiene varios subdirectorios: mydir1, mydir2 y mydir3. Quiero detectar estos subdirectorios y poner sus nombres en ${SUBDIRS}
(no la ruta completa de estos directorios, solo su nombre). ¿Cómo hacer eso automáticamente?
2) Suponga que ${SUBDIRS}
contiene "mydir1 mydir2 mydir3". Cómo reemplazar
ADD_SUBDIRECTORY(mydir1)
ADD_SUBDIRECTORY(mydir2)
ADD_SUBDIRECTORY(mydir3)
por un bucle sobre ${SUBDIRS}
?
Muchas gracias.
para la mejora del rendimiento, especialmente si 'dirlist' es largo, el uso 'LIST (APPEND dirlist $ {child})' en lugar de 'SET (dirlist $ {dirlist} $ {child})' [ver aquí] (http://www.cmake.org/Wiki/C Make_Performance_Tips # Use_LIST.28APPEND _.... 29) – ParokshaX
Nota importante: esto no funcionará con 'GLOB_RECURSE', solamente con' GLOB' – Synxis
GLOB_RECURSE tiene LIST_DIRECTORIES defecto falsas mientras MUNDIALIZA tiene LIST_DIRECTORIES defecto cierto. Si usa recurse, deberá configurarlo en true – Jaco