Ajout d'options de ligne de commande à CMake

Je construis une grande bibliothèque en utilisant CMake, et je voudrais que les utilisateurs puissent activer/désactiver sélectivement certaines parties de mon processus de construction.

Comment puis-je ajouter des options de ligne de commande à ma compilation CMake, par exemple pour que les utilisateurs puissent taper quelque chose comme cmake --build-partone --nobuild-parttwo --dothis=true --dothat=false ..?

Apparemment, le mot-clé OPTION va créer des variables qui peuvent être définies à partir de L'interface graphique CMake, mais je ne peux pas comprendre comment le faire à partir de la ligne de commande.

91
demandé sur Peter Mortensen 2011-05-14 01:56:00

2 réponses

Oui, vous devriez utiliser la commande option. Vous pouvez définir des options à partir de la ligne de commande de cette façon:

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

//Command line
cmake -DMyOption=ON MyProjectFolder

Notez que {[2] } doit venir avant le chemin.

129
répondu beduin 2018-09-10 21:14:29

Juste une petite correction:

Si vous avez d'autres variables à passer, il est recommandé d'indiquer le type de ces:

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

//Command line
cmake -DMyOption:BOOL=ON MyProjectFolder -D...
9
répondu guilloptero 2018-09-10 21:15:01