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

因此,只要在 ExtraGen 之前定义了 GENOUTPUT,它就可以很好地工作。这有点痛苦,因为我想在包含的 pri 文件中定义 ExtraGen。

有什么办法可以解决这个问题,还是我让自己陷入困境?

奥西

于 2012-09-14T19:56:02.457 回答