2016-06-02 6 views
0

私はcmakeを使った前処理の後にカスタムビルドステップを追加しようとしています。cmakeを使ったプリプロセッサの後のカスタムビルドステップ

C++プリプロセッサのステップの後で、前処理された各ソースファイルに対してpythonスクリプトを呼び出して修正したいと思っています。ここで Makefileの例:cmakeのでこれを達成するためにどのように

all : prog 

#compilation step 
prog: main.i 
    gcc main.i -g -Wall -o prog 

#custom step 
main.i: main.tmp 
    ./my_script.py main.tmp > main.i 

#only preprocessor step 
main.tmp: main.c main.h 
    gcc -E main.c > main.tmp 

?このステップは、プロジェクトの各cまたはcppファイルに適用する必要があります。

+0

ソースファイルリストを繰り返し、 'add_custom_command'で* custom * stepを追加してください。 * preprocessor * stepに関しては、手動で*(add_custom_command'を用いて)実装する必要があります:CMakeには、実行前処理のための事前定義されたコマンドがありません。 *コンパイル*ステップは 'add_executable'で実行できます。 – Tsyvarev

答えて

0

は確かに、これはてmanualy行われなければならなかった: 私は前処理されたファイルを生成するカスタムターゲットを追加:別のカスタムターゲットと

add_custom_target(
    start_preprocessor 
    COMMAND make main.cpp.i 
    .. 
    ) 

を、私はmain.cppにのバックアップを作成し、メイン名前の変更します.cpp.iをmain.cppにコピーします。私は私の前処理プロセスを適用することができます。その後、ソースファイルを復元します。

関連する問題