1

複数の入力に対して一度だけ実行される QMAKE_EXTRA_COMPILERS ターゲットを持つことは可能ですか? すべてのファイルを一度に生成するレガシー スクリプトがいくつかあります。

次のように言います。

FILE_LIST = __Test1.cpp __Test2.cpp __Test.h

Extra.name = Extra Compilers Tests
Extra.input = FILE_LIST
Extra.output = ${QMAKE_FILE_IN}
Extra.commands += <generate what is in FILE_LIST with a single command>
Extra.CONFIG   += no_link target_predeps ordered
Extra.variable_out = GENERATED_SOURCES

QMAKE_EXTRA_COMPILERS += Extra

スクリプトを書き直すこともできるかもしれませんが、QMAKE_EXTRA_COMPILERS に作業を任せられたらいいのにと思います。

オセ

4

1 に答える 1

1

「結合」オプションを使用して、探しているものを見つけました。

このようなものがあるとしましょう。

ExtraGen.name =  Id Generator
ExtraGen.input = GENINPUT
ExtraGen.output = $$GENOUTPUT
ExtraGen.clean_command = $$ExtraGen.output
ExtraGen.commands = <Process> ${QMAKE_FILE_IN}
ExtraGen.CONFIG = combine
ExtraGen.variable_out = HEADERS
#silent:ExtraGen.commands = @echo Processing ${QMAKE_FILE_IN} && $$ExtraGen.commands
QMAKE_EXTRA_COMPILERS += ExtraGen

したがって、GENOUTPUT が ExtraGen の前に定義されている限り、これはうまく機能します。インクルードされたpriファイルでExtraGenを定義したいので、これはちょっと面倒です。

これを回避する方法はありますか、それとも私は追い詰められましたか?

オセ

于 2012-09-14T19:56:02.457 に答える