是否有可能只为多个输入运行一次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为我做这项工作会很好。
奥西
答案 0 :(得分: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。
有没有办法解决这个问题,还是让我自己陷入困境?
奥西