web-dev-qa-db-ja.com

コマンドラインオプションをCMakeに追加する

CMakeを使用して大きなライブラリを構築していますが、ユーザーがビルドプロセスの特定の部分を選択的に有効/無効にできるようにしたいと考えています。

CMakeビルドにコマンドラインオプションを追加するにはどうすればよいですか?ユーザーがcmake --build-partone --nobuild-parttwo --dothis=true --dothat=false ..のようなものを入力できるように?

どうやらOPTIONキーワードはCMake GUIから設定できる変数を作成しますが、コマンドラインからこれを行う方法がわかりません。

101
rcv

ええ、optionコマンドを使用する必要があります。次の方法でコマンドラインからオプションを設定できます。

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

//Command line
cmake -DMyOption=ON MyProjectFolder

-DMyOptionはパスの前に来る必要があることに注意してください。

147
beduin

ちょっとした修正:

渡す他の変数がある場合は、これらのタイプを示すことをお勧めします。

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

//Command line
cmake -DMyOption:BOOL=ON MyProjectFolder -D...
9
guilloptero