qt4x11.bbclass forces to add qt4-x11-free dependency to any recipe that inherits it. I think this is ugly and unnecessasry. If any recipe needs that depedency, the recipe needs to contain that. This will, also, cause to compile Qt4 free with Qt4 commercial, which was my case. And that makes difficult to debug. The patches removes that line and add the qt4-x11-free dependency to recipes that needed.
Created attachment 539 [details] Patch to fix that dependency
*** Bug 2504 has been marked as a duplicate of this bug. ***
Rather than forcing every recipe to be changed I'd prefer to do something like this in the qt4-x11-free recipe: PROVIDES += "qt4-x11" You can do the same in your qt4-commercial recipe; then qt4x11.bbclass can add a DEPENDS on qt4-x11 rather than qt4-x11-free. You'd also want to set PREFERRED_PROVIDER_qt4-x11 = "qt4-commercial" in your local or distro configuration. Does that sound reasonable?
Yes, it's better approach than changing every recipe. But qt4.inc still configuring Qt for opensource license. Perhaps we could add a QT_LICENSE variable, if it exists, then do something like this: echo yes | QT_LICENSE_FILE=${QT_LICENSE} ./configure -v \ ... What do you think?
I've finally got a chance to look into this today, sorry for the delay. I'm happy to add the above; I've also added a way to specify the license option (-opensource / -commercial). Patch will be sent out soon.
I've just sent the following patch to OE-Core: http://patchwork.openembedded.org/patch/33323/ Note that with this change applied, a commercial Qt4 (for X11) recipe should do the following: PROVIDES += "qt4-x11" QT_LICENSE_FILE = "license_filename" QT_LICENSE_FLAGS = "-commercial"
Fix merged in revision 72730329c804bd474655d2f4ab5aed02345fd1e3.
I sent an email to the bug owner in order to set this to verified. Waiting for feedback.
I didn't test but I checked the commit and it seems it's fixed. Thank you
As per the above comment I am setting this to Verified. Please feel free to reopen if necessary.