Возникли проблемы — я добавил следующие строки в qmake, чтобы заставить его копировать файлы в комплект приложений на Mac.
mac {
QMAKE_POST_LINK = $$PWD/package_mac.sh
}
Файл .sh иногда запускается и, кажется, работает (на данный момент он просто работает touch geese
который создает файл с именем geese
в каталоге сборки (отлично!).
Но он не запускается каждый раз, когда я строю, а только при изменении файлов. На самом деле, я хочу, чтобы qmake скопировал все ресурсы моей игры в правильные места на каждой платформе (поэтому создайте папку в Windows, пакет приложений для Mac и т. Д.) каждый раз я строю.
Есть идеи?
Вы пытались использовать POST_TARGETDEPS
(с QMAKE_EXTRA_TARGETS
)? Недостатком этого подхода является то, что вам придется создать своего рода фиктивный файл (поскольку, насколько мне известно, .PHONY
не поддерживается qmake
), который вы, вероятно, должны также clean
потом.
Принимая ваш пример:
mac {
package-script = $$PWD/package_mac.sh
}
package-target.target = $$PWD/package.tmp
package-target.depends = FORCE
package-target.commands = $$package-script
(Увидеть этот вопрос для аналогичного обсуждения.)
Других решений пока нет …