> On 12 Aug 2014, at 16:25, Adam Strzelecki <[email protected]> wrote:
> 
> Okay, Phase II.
> 
> (1) Introduce "bundle_frameworks" CONFIG option, and set it default for 
> "rpath" shared builds on iOS & OS X
> 
> (2) Introduce "bundle" make target, when "bundle_frameworks" CONFIG is set, 
> it is added to "all"
> 
> (3) Make's "bundle" will copy (update if not there) all used Qt frameworks to 
> app's bundle Frameworks and used plugins to Plugins (currently implemented as 
> separate macdeployqt)
> 
> NOTES:
> 
> * Since qmake knows which Qt libraries and plugins are used "bundle" target 
> it will generate following Makefile entries
> 
>       all: Sample.app bundle
> 
>       bundle: Sample.app/Frameworks/QtCore.framework
>         mkdir -p Sample.app/Frameworks && cp -r 
> $$[QT_INSTALL_LIBS]/QtCore.framework Sample.app/Frameworks
>         ...
> 
> Of course this example is simplification, since we don't need to copy headers 
> and we need to take debug versions or release. So there will be more commands 
> in practice.
> 
> * One can disable "bundle_frameworks" via CONFIG -= bundle_frameworks, so 
> existing workflow where executable is given rpath pointing to Qt libraries
> 
> * If disabled, one can still do "make bundle" that is equivalent to current 
> "macdeployqt" and "bundle" target will also add "install_name_tool" -rpath 
> replacement steps

A few quick comments:

The target name: Should that be “deploy”? “make deploy" would then perform 
platform-specific deployment.

Options: currently macdeployqt has options, and I can see more being added. We 
would need to find a way to provide them via the build system.

Default behavior: I’m on favor of keeping it opt-in, either via "CONFIG += 
bundle_frameworks" or “make bundle”

Morten



_______________________________________________
Development mailing list
[email protected]
http://lists.qt-project.org/mailman/listinfo/development

Reply via email to