[QBS] RFC: Deployment support for qbs
Mathieu Bouchard
mbouchar at gmail.com
Thu Feb 23 03:20:12 CET 2012
Yes, something like QMAKE_EXTRA_TARGETS. I am calling system(git describe
--tags) and I get the output and pass it to makensis in a custom target:
SCM_VERSION = $$system(git describe --tags)
!isEmpty(QMAKE_SH) {
# qmake in a unix shell requires escaping on the parenthesis
VI_VERSION = $$system(python -c
'print\\(\\"$${SCM_VERSION}\\".split\\(\\"-\\"\\)[0]\\)')
} else {
VI_VERSION = $$system(python -c
'print(\\"$${SCM_VERSION}\\".split(\\"-\\")[0])')
}
win32 {
createinstaller.target = installer
createinstaller.commands = $${QMAKE_COPY} \"$${TARGET_FILENAME}\"
\"$${DESTDIR_WIN}\" &&
createinstaller.commands += cd \"$$PWD/win32\" && makensis
-DVIVERSION=$${VI_VERSION} -DVERSION=$${SCM_VERSION} installer.nsi
createinstaller.depends = first
QMAKE_EXTRA_TARGETS += createinstaller
}
How do we tell qbs to only make one of those?
On Wed, Feb 22, 2012 at 5:28 AM, Joerg Bornemann
<joerg.bornemann at nokia.com>wrote:
> On 22/02/2012 06:54, ext Mathieu Bouchard wrote:
>
> You could also probably cover more platforms by adding custom targets
>> support. For example, I currently use some "undocumented" qmake
>> functions to add custom targets to the build process. They are used to
>> provide a "make installer" target on Windows that calls makensis to
>> create an installer file. On OSX, this is used to call macqtdeploy.
>>
>
> If I understand you correctly, you want something like QMAKE_EXTRA_TARGETS
> or QMAKE_EXTRA_COMPILERS.
>
> There is support for adding custom artifacts and transformers.
> See tests/manual/transformers for an example.
>
>
> BR,
>
> Jörg
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/qbs/attachments/20120222/6a036d8e/attachment.html>
More information about the Qbs
mailing list