[QBS] qbs 1.4.0

Jake Petroules jake.petroules at petroules.com
Sat May 2 04:57:03 CEST 2015


> I've noticed that as well, and in addition to that I've found one more issue - DynamicLibrary 'accidently' started to produce frameworks instead of libraries and that won't be really issue if not two factors:

The Application and DynamicLibrary templates product bundles for OS X and iOS targets by default because that is what is normally expected on that platform. To disable it you can set the bundle.isBundle property to false (documented here: http://doc.qt.io/qbs/bundle-module.html#isbundle <http://doc.qt.io/qbs/bundle-module.html#isbundle>).

> 1. qbs.install installs only library binary to install-root instead of copying directory structure of framework

Known limitation -- we're working on better bundle support. For now you can manually install the components of the bundle in the appropriate locations. Here is a sample: https://codereview.qt-project.org/#/c/111614/ <https://codereview.qt-project.org/#/c/111614/>
> 2. qbs links dependent products to this library as to framework with directory structure in mind
>  
> So after building dependent products tries to find smth like Library.framework/Versions/Current/Library, but only Library (even not Library.dylib) exists

See above.

>> I'm not sure, but there was a bug somewhere between 1.3 and 1.4 - qbs.install for application bundle on Mac didn't copy binary to the .app/Contents/MacOs folder. Is it fixed?

This happened because the "applicationbundle" tag no longer exists - bundle support in Qbs was rewritten to support more bundle types than just applications and frameworks, and be significantly more flexible and extensible. Therefore, that tag doesn't match anything anymore because nothing uses it.

Nowadays it would just be "bundle", however that's not the right thing to use either (see https://codereview.qt-project.org/#/c/111509/ <https://codereview.qt-project.org/#/c/111509/>).

The right thing to do (for now) is to manually install the individual components of the bundle (again, sample: https://codereview.qt-project.org/#/c/111614/ <https://codereview.qt-project.org/#/c/111614/>). I know this is a non-ideal based on the large amount of code required but it's the best solution available with the current state of Qbs and you can use templates to avoid repeating it throughout your project.
-- 
Jake Petroules - jake.petroules at petroules.com

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/qbs/attachments/20150501/07f86f91/attachment.html>


More information about the Qbs mailing list