[oe] [meta-qt5][dizzy][PATCH] qmake5: don't always look in directories recursively
Nicolas Ferre
nicolas.ferre at atmel.com
Wed Mar 11 13:37:13 UTC 2015
Le 18/02/2015 21:57, Alexandre Belloni a écrit :
> QT needs to be compiled without the -r parameter from the qmake command
> line. This is necessary to avoid those errors when building
> qtdeclarative or qt3d without opengl for example:
> Project ERROR: Unknown module(s) in QT: quick-private
> or
> Project ERROR: Unknown module(s) in QT: quick
>
> Also update comments regarding the dependencies.
>
> Signed-off-by: Alexandre Belloni <alexandre.belloni at free-electrons.com>
Tested-by: Nicolas Ferre <nicolas.ferre at atmel.com>
While building for dizzy, I used the master branch (commit ID:
7a65ba6089560efdd840a9590684c24fbcdb7818) to benefit from these patches:
can you please update the dizzy branch of meta-qt5 to integrate them?
Thanks, bye,
> ---
> classes/qmake5_base.bbclass | 7 +++++--
> recipes-qt/qt5/qt5.inc | 2 ++
> recipes-qt/qt5/qtbase.inc | 5 +----
> 3 files changed, 8 insertions(+), 6 deletions(-)
>
> diff --git a/classes/qmake5_base.bbclass b/classes/qmake5_base.bbclass
> index f1a09450efca..f58d291ab12a 100644
> --- a/classes/qmake5_base.bbclass
> +++ b/classes/qmake5_base.bbclass
> @@ -13,6 +13,9 @@ OE_QMAKE_PLATFORM = "linux-oe-g++"
> # Add -d to show debug output from every qmake call, but it prints *a lot*, better to add it only to debugged recipe
> OE_QMAKE_DEBUG_OUTPUT ?= ""
>
> +# Look through supplied directories recursively by default
> +OE_QMAKE_RECURSIVE ?= "-r"
> +
> # Paths in .prl files contain SYSROOT value
> SSTATE_SCAN_FILES += "*.pri *.prl"
>
> @@ -159,8 +162,8 @@ qmake5_base_do_configure () {
> # for config.tests to read this
> export QMAKE_MAKE_ARGS="${EXTRA_OEMAKE}"
>
> - CMD="${OE_QMAKE_QMAKE} -makefile -o Makefile ${OE_QMAKE_DEBUG_OUTPUT} -r $QMAKE_VARSUBST_PRE $AFTER $PROFILES $QMAKE_VARSUBST_POST"
> - ${OE_QMAKE_QMAKE} -makefile -o Makefile ${OE_QMAKE_DEBUG_OUTPUT} -r $QMAKE_VARSUBST_PRE $AFTER $PROFILES $QMAKE_VARSUBST_POST || die "Error calling $CMD"
> + CMD="${OE_QMAKE_QMAKE} -makefile -o Makefile ${OE_QMAKE_DEBUG_OUTPUT} ${OE_QMAKE_RECURSIVE} $QMAKE_VARSUBST_PRE $AFTER $PROFILES $QMAKE_VARSUBST_POST"
> + ${OE_QMAKE_QMAKE} -makefile -o Makefile ${OE_QMAKE_DEBUG_OUTPUT} ${OE_QMAKE_RECURSIVE} $QMAKE_VARSUBST_PRE $AFTER $PROFILES $QMAKE_VARSUBST_POST || die "Error calling $CMD"
> }
>
> qmake5_base_do_install() {
> diff --git a/recipes-qt/qt5/qt5.inc b/recipes-qt/qt5/qt5.inc
> index bb0bcdcac0af..22f0d30e0298 100644
> --- a/recipes-qt/qt5/qt5.inc
> +++ b/recipes-qt/qt5/qt5.inc
> @@ -18,6 +18,8 @@ OE_QMAKE_PATH_SETTINGS = "${OE_QMAKE_PATH_QT_SETTINGS}"
> OE_QMAKE_PATH_EXAMPLES = "${OE_QMAKE_PATH_QT_EXAMPLES}"
> OE_QMAKE_PATH_TESTS = "${OE_QMAKE_PATH_QT_TESTS}"
>
> +OE_QMAKE_RECURSIVE = ""
> +
> # If Qt5 (qtbase) is machine specific, then everything will be,
> # because the (initial) qtbase configuration becomes part of Qt5/qmake
> python __anonymous() {
> diff --git a/recipes-qt/qt5/qtbase.inc b/recipes-qt/qt5/qtbase.inc
> index 1d2efa020b3b..2d2bc07c6148 100644
> --- a/recipes-qt/qt5/qtbase.inc
> +++ b/recipes-qt/qt5/qtbase.inc
> @@ -30,8 +30,6 @@ RDEPENDS_${PN}-tools += "perl"
> # PACKAGECONFIG is kept rather minimal for people who don't need
> # stuff like webkit (and it's easier to add options than remove)
>
> -# gl or gles needs to be enabled in order to build qtdeclarative
> -# http://qt.gitorious.org/qt/qtdeclarative/commit/e988998a08b1420ed10bd02d9d4b3b8ed2289df9
> PACKAGECONFIG_GL ?= "${@base_contains('DISTRO_FEATURES', 'opengl', 'gl', '', d)}"
> PACKAGECONFIG_FB ?= "${@base_contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)}"
> PACKAGECONFIG_X11 ?= "${@base_contains('DISTRO_FEATURES', 'x11', 'xcb xvideo xsync xshape xrender xrandr xfixes xinput2 xinput xinerama xcursor gtkstyle xkb', '', d)}"
> @@ -77,7 +75,6 @@ PACKAGECONFIG[jpeg] = "-system-libjpeg,-no-libjpeg,jpeg"
> PACKAGECONFIG[libpng] = "-system-libpng,-no-libpng,libpng"
> PACKAGECONFIG[zlib] = "-system-zlib,-qt-zlib,zlib"
> PACKAGECONFIG[pcre] = "-system-pcre,-qt-pcre,pcre"
> -# gl or gles2 is needed in order to build qtdeclarative (qtdeclarative.do_configure fails to find quick module without)
> PACKAGECONFIG[gl] = "-opengl desktop -no-eglfs,,virtual/libgl"
> PACKAGECONFIG[gles2] = "-opengl es2 -eglfs,,virtual/libgles2 virtual/egl"
> PACKAGECONFIG[tslib] = "-tslib,-no-tslib,tslib"
> @@ -115,7 +112,7 @@ PACKAGECONFIG[directfb] = "-directfb,-no-directfb,directfb"
> PACKAGECONFIG[linuxfb] = "-linuxfb,-no-linuxfb"
> PACKAGECONFIG[mitshm] = "-mitshm,-no-mitshm,mitshm"
> PACKAGECONFIG[kms] = "-kms,-no-kms,virtual/mesa virtual/egl"
> -# needed for qtdeclarative (qtdeclarative.do_configure fails to find quick module without)
> +# needed for qtwebkit
> PACKAGECONFIG[icu] = "-icu,-no-icu,icu"
> PACKAGECONFIG[udev] = "-libudev,-no-libudev,udev"
> # use -openssl-linked here to ensure that RDEPENDS for libcrypto and libssl are detected
>
--
Nicolas Ferre
More information about the Openembedded-devel
mailing list