Digamos que hay siguiente estructura de directorios:cmake: añadir la dependencia no en el subdirectorio
root
|
+--projects
| |
| +-test
| |
| +-CMakeFiles.txt
|
+--libs
|
+-testlib
|
+-CMakeFiles.txt
prueba contiene CMakeFiles.txt y TestLib también contiene CMakeFiles.txt. "prueba" produce ejecutable y "testlib" produce biblioteca estática.
Quiero que "prueba" se vincule con "testlib" sin usar enlaces simbólicos y sin mover la biblioteca "testlib" dentro del subdirectorio dentro de "prueba".
Porque "TestLib" no es un subdirectorio de "prueba", no puedo hacer
add_subdirectory("../../libs/testlib")
En CMakeFiles.txt de prueba - cmake se quejará de "TestLib" no estar en el subdirectorio "prueba" .
Además, como el sistema tiene varios compiladores diferentes, no puedo simplemente instalar bibliotecas "testlib" en algún tipo de directorio central, así que quiero que compile copia local de testlib y enlace (es decir, como si testlib fuera un subdirectorio). También quiero que el proyecto de "prueba" reconstruya automáticamente "testlib" si se ha cambiado.
Entonces, ¿cómo puedo manejarlo? cmake 2.8.4, winxp sp3.
Gracias - eso es exactamente lo que necesitaba. – SigTerm
@Fraser - ¿Es posible especificar el directorio binario en el archivo CakeFile de testlib_build? – tower120
@ tower120 - No, necesitaría especificarlo en la llamada 'add_subdirectory'. – Fraser