2012-01-03 27 views
2

gccでコンパイルされ、cmake 2.8+を使用してコンパイルされたC/C++プロジェクトがあります。私はcmakeいくつかのOPTION(XXX "Description..." ON/OFF)タグをサポートしています知っている。私はgccに渡された-DXXXコンパイル時の引数にこれらのビルドオプションの結果が何とかして欲しいと思います。どのように最も優雅にそれを行うには?-DXXXコンパイラ引数へのCMAKEオプション

答えて

5

だけ-Dコンパイラフラグを追加する気にならば、あなたが望むのコマンドは、あなたがその関連オプション(でオンにする場合は()ブロックで)ラップすることができ

add_definitions()

次のとおりです。

option(MY_FUNCTIONALITY "Cool functionality" ON) 

if(MY_FUNCTIONALITY) 
    add_definitions(-DENABLE_MY_FUNCTIONALITY) 
endif() 
+0

「endif(MY_FUNCTIONALITY)」にする必要はありませんか? –

+0

これは必須の構文であったものですが、現在はオプションです。私は何が好まれているかわかりません。 – alanxz

+0

クローズコマンドを空にしておくと(答えがそうであるように)、現代のCMakeでは確かに好まれるスタイルです。ドライとそのすべて。 – Angew

関連する問題