2016-04-19 12 views
2

私は条件付きのこれらの条件を実行し、makefileで何らかの判断を行う必要があるため、CMakeLists.txtの条件付きのLinuxをadd_custom_command(...)このように:私はメイクファイルを作るとき CMake:add_custom_command(...)内の条件を使用する方法

if ["a" != "b"]; then echo 1; fi; 

を使用したい場合は

cmake_minimum_required(VERSION 2.8) 
add_custom_target(temp_target ALL) 
add_custom_command(TARGET temp_target 
        PRE_BUILD 
        COMMAND if ["a" != "b"]; then echo 1; fi; 
        VERBATIM) 

私は何をすべきでしょうか? ありがとうございました!コマンド引数として/bin/sh -cを使用して1ラインシェルコードを指定することも

+0

そのように機能しない場合は、関数でこれらを追加してコマンドで関数を呼び出そうとしませんか? – hedgehog

答えて

1

[はbashのの拡張であることを

COMMAND /bin/sh -c "if [ 'a' != 'b' ]; then echo 1; fi;" 

注意を、それが「ダッシュ」のような単純なシェルでは、未知のかもしれません。

+0

お返事ありがとうございますが、あなたの意見は私のコンピュータでは動作しません。 –

+0

あなたの助けをありがとう、それはうまくいった。 –

関連する問題