diff options
author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2012-07-31 00:31:00 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-07-31 07:55:55 +0100 |
commit | 2be0058fc4acddab611637656183accd052b40eb (patch) | |
tree | b397d38da763aee75f3703ae1647a06d5182860b | |
parent | 8a71c1a507289d38a0f675584ab206abfa9aad9a (diff) | |
download | openembedded-core-2be0058fc4acddab611637656183accd052b40eb.tar.gz openembedded-core-2be0058fc4acddab611637656183accd052b40eb.tar.bz2 openembedded-core-2be0058fc4acddab611637656183accd052b40eb.zip |
qt4: allow recipes building commercial edition
To enable building the commercial edition of Qt (through additional
recipes that are *not* provided by OE-Core) we need to tweak a few
things:
* Don't make recipes that inherit qt4x11.bbclass depend on qt4-x11-free
- instead add qt4-x11 to DEPENDS and then have qt4-x11-free include
this in its PROVIDES. A commercial equivalent recipe should do the
same.
* Add a QT_LICENSE_FILE variable that can be used to specify the license
file required by the commercial edition.
* Add a QT_LICENSE_FLAGS variable which the recipe can set to select the
license option being used. The default of "-opensource" retains the
current behaviour; a commercial recipe should set it to "-commercial".
Fixes [YOCTO #2505].
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/classes/qt4x11.bbclass | 2 | ||||
-rw-r--r-- | meta/recipes-qt/qt4/qt4-embedded.inc | 2 | ||||
-rw-r--r-- | meta/recipes-qt/qt4/qt4-x11-free.inc | 3 | ||||
-rw-r--r-- | meta/recipes-qt/qt4/qt4.inc | 7 |
4 files changed, 10 insertions, 4 deletions
diff --git a/meta/classes/qt4x11.bbclass b/meta/classes/qt4x11.bbclass index 610397d055..52190f45c1 100644 --- a/meta/classes/qt4x11.bbclass +++ b/meta/classes/qt4x11.bbclass @@ -1,4 +1,4 @@ -DEPENDS_prepend = "${@["qt4-x11-free ", ""][(d.getVar('BPN', True)[:12] == 'qt4-x11-free')]}" +DEPENDS_prepend = "${@base_contains("PROVIDES", "qt4-x11", "", "qt4-x11 ", d)}" inherit qmake2 diff --git a/meta/recipes-qt/qt4/qt4-embedded.inc b/meta/recipes-qt/qt4/qt4-embedded.inc index 9c5b4af93d..9e8bf3a0d7 100644 --- a/meta/recipes-qt/qt4/qt4-embedded.inc +++ b/meta/recipes-qt/qt4/qt4-embedded.inc @@ -2,7 +2,7 @@ DESCRIPTION = "Qt is a versatile cross-platform application framework -- this is SECTION = "libs" HOMEPAGE = "http://qt.nokia.com" DEPENDS += "directfb tslib" -INC_PR = "r46" +INC_PR = "r47" QT_BASE_LIB ?= "libqt-embedded" diff --git a/meta/recipes-qt/qt4/qt4-x11-free.inc b/meta/recipes-qt/qt4/qt4-x11-free.inc index 29bbfc6be0..e229b85327 100644 --- a/meta/recipes-qt/qt4/qt4-x11-free.inc +++ b/meta/recipes-qt/qt4/qt4-x11-free.inc @@ -4,8 +4,9 @@ DESCRIPTION = "Qt is a versatile cross-platform application framework -- this is HOMEPAGE = "http://qt.nokia.com" SECTION = "x11/libs" DEPENDS += "virtual/libgl virtual/libx11 fontconfig libxft libxext libxrender libxrandr libxcursor" +PROVIDES += "qt4-x11" -INC_PR = "r44" +INC_PR = "r45" QT_GLFLAGS ?= "${@base_contains('DISTRO_FEATURES', 'opengl', '-opengl', '-no-opengl', d)} " QT_GLFLAGS_qemux86 = "-opengl" diff --git a/meta/recipes-qt/qt4/qt4.inc b/meta/recipes-qt/qt4/qt4.inc index df70e09918..9b42f69861 100644 --- a/meta/recipes-qt/qt4/qt4.inc +++ b/meta/recipes-qt/qt4/qt4.inc @@ -192,6 +192,10 @@ FILES_${QT_BASE_NAME}-xmlpatterns-dbg = "${bindir}/.debug/xmlpatterns*" FILES_${QT_BASE_NAME}-qml-plugins = "${libdir}/${QT_DIR_NAME}/imports/* ${libdir}/${QT_DIR_NAME}/plugins/qmltooling/*" FILES_${QT_BASE_NAME}-qml-plugins-dbg = "${libdir}/${QT_DIR_NAME}/imports/*/*/*/.debug/* ${libdir}/${QT_DIR_NAME}/imports/*/.debug ${libdir}/${QT_DIR_NAME}/plugins/qmltooling/.debug" +# License options, to be set by the recipe if different values are needed +QT_LICENSE_FILE ?= "" +QT_LICENSE_FLAGS ?= "-opensource" + do_configure() { unset QMAKESPEC unset QTDIR @@ -231,7 +235,7 @@ do_configure() { ${EXTRA_QMAKE_MUNGE}|| true - (echo o; echo yes) | ./configure -v \ + echo yes | QT_LICENSE_FILE="${QT_LICENSE_FILE}" ./configure -v \ -prefix ${prefix}/ \ -bindir ${bindir} \ -libdir ${libdir} \ @@ -248,6 +252,7 @@ do_configure() { -xplatform ${TARGET_OS}-oe-g++ \ ${QT_ENDIAN} \ -crossarch ${QT_ARCH} \ + ${QT_LICENSE_FLAGS} \ ${QT_CONFIG_FLAGS} -no-fast \ -L${STAGING_LIBDIR} -I${STAGING_INCDIR} \ -I${STAGING_INCDIR}/freetype2 |