いくつかのファイルを生成するカスタムビルドステップをCMakeに追加しようとしています。私はそれがどのように動作するかの説明を見つけていない。CMakeのカスタムビルドステップを追加します。
ソースファイル、ヘッダー&の実装ファイルをODB for C++で生成する必要があるプロジェクトがあります。 ODBはクラスヘッダーを引数として取り、自分のプロジェクトで使用したいソースファイルを生成します。
今、私は私のCMakeLists.txtに次のコマンドを持っている:ODBはperson-odb.hxx
、person-odb.cxx
、person-odb.ixx
を生成する必要がありますが、I''veが使用cmakeのコマンドは何も生成しないファイルperson.hpp
については
add_custom_command(TARGET ${PROJECT_NAME}
PRE_BUILD
COMMAND odb -o /home/david/dev/ --std c++11 -I/home/david/dev/ -d sqlite --generate- query --generate-schema ${PROMOTER_LIB_PREFIX}/entities/person.hpp
DEPENDS ${PROJECT_NAME}
VERBATIM
)
を。端末では、このコマンドは正常に動作します。
私は間違っていますか?
EDIT:問題は、次の行追加することによって解決することができます。私にとって
set(FAKE_TARGET fakeTarget)
add_custom_target(fakeTarget
odb -o /home/david/dev/ --std c++11 -I/home/david/dev/ -d sqlite --generate-query --generate-schema ${PROMOTER_LIB_PREFIX}/entities/person.hpp
)
add_dependencies(${PROJECT_NAME} ${FAKE_TARGET})
「DEPENDS」と「VERBATIM」を削除してもまだ動作しません。 –
@DavidBulczakは私の編集を見ます。私は仕事でVSを使用するので、それが私のために働いています。 –
ありがとう。私はgcc/makeやその他のGNUツールを使用しています。 CMakeでカスタムのビルドステップを追加する方法はありますか? –