2011-05-13 16 views
84

Estoy construyendo una biblioteca grande usando CMake y me gustaría que los usuarios puedan habilitar/deshabilitar selectivamente ciertas partes de mi proceso de compilación.Agregando opciones de línea de comando a CMake

¿Cómo puedo agregar opciones de línea de comandos a mi compilación de CMake, p. para que los usuarios puedan escribir algo como cmake --build-partone --nobuild-parttwo --dothis=true --dothat=false ..

Aparentemente la palabra clave OPTION creará variables que se pueden establecer desde la GUI de CMake, pero no puedo encontrar la manera de hacerlo desde la línea de comandos.

Respuesta

122

Sí, debes usar el comando option. Puede configurar las opciones de línea de comandos de esta manera:

//CMakeLists.txt 
option(MyOption "MyOption" OFF) 

//Command line 
cmake -DMyOption=ON MyProjectFolder 

Tenga en cuenta que -DMyOption debe venir antes de la ruta.

+5

... y 'cmake myProjectFolder -DMyOption' no se enciende la opción activada (o desactivada) – mabraham

+0

poner -DMyOption antes de MyProjectFolder y probar? – updogliu

+8

Utilice '-DMyOption = ON' o' -DMyOption = OFF' para encender o apagar. – kvanberendonck

9

Sólo una pequeña corrección:

Si tiene otras variables para pasar, se recomienda indicar el tipo de tesis:

//CMakeLists.txt 
option(MyOption "MyOption" OFF) 

//Command line 
cmake -DMyOption:BOOL=ON MyProjectFolder -D... 
Cuestiones relacionadas