[oe] [meta-qt5][PATCH] Use completely PKG_CONFIG which set the variables: - $libdir_raw - $incdir_raw - $libs - $cflags There is no need to have anything in the .pro files then.

Martin Jansa martin.jansa at gmail.com
Tue Apr 26 10:09:29 UTC 2016


On Mon, Apr 25, 2016 at 06:05:20PM +0200, Julien Gueytat wrote:
> Please note that the variables used directly through mkspecs set the end variables
> while pkgconfig set $libdir_raw - $incdir_raw - $libs - $cflags.

You need blank line as separator of commit summary and body, also please
follow http://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines
and use better summary.

This patch isn't for meta-qt5 itself, but meta-qt5/qtbase repo, you
should create and test the patch in meta-qt5 (add the patch files to
qtbase directory and qtbase_git.bb).

I'm more concerned about other MACHINEs, I assume you've tested it only
for RPi, but you're changing egl.pro and opengles2.pro also for all
other setups and MACHINEs, so I'll wait a bit more for upstream reaction
for this patch.

I know you've created reports about this in upstream, please mention
them in commit message and also add Upstream-Status flag.

Thanks

> 
> The previous code was trying to set the variable like QMAKE_LIBS_EGL
> through pkgconfig but it was not working.
> 
> Use compileTestWithPkgconfig for the EGL test and the EGLFS RaspberryPi test.
> 
> The package config file from EGL already triggers bcm_host as a dependency.
> 
> The master branch of meta-raspberrypi does the proper job.
> 
> The way *.pro files and pkg_config needs changes.
> ---
>  config.tests/qpa/egl/egl.pro               |  8 --------
>  config.tests/qpa/eglfs-brcm/eglfs-brcm.pro |  9 ---------
>  config.tests/unix/opengles2/opengles2.pro  |  7 -------
>  configure                                  | 12 ++----------
>  4 files changed, 2 insertions(+), 34 deletions(-)
> 
> diff --git a/config.tests/qpa/egl/egl.pro b/config.tests/qpa/egl/egl.pro
> index f04d053..c1889c5 100644
> --- a/config.tests/qpa/egl/egl.pro
> +++ b/config.tests/qpa/egl/egl.pro
> @@ -1,10 +1,2 @@
>  SOURCES = egl.cpp
> -
> -for(p, QMAKE_LIBDIR_EGL) {
> -    exists($$p):LIBS += -L$$p
> -}
> -
> -!isEmpty(QMAKE_INCDIR_EGL): INCLUDEPATH += $$QMAKE_INCDIR_EGL
> -!isEmpty(QMAKE_LIBS_EGL): LIBS += $$QMAKE_LIBS_EGL
> -
>  CONFIG -= qt
> diff --git a/config.tests/qpa/eglfs-brcm/eglfs-brcm.pro b/config.tests/qpa/eglfs-brcm/eglfs-brcm.pro
> index ce16a3a..164cdb4 100644
> --- a/config.tests/qpa/eglfs-brcm/eglfs-brcm.pro
> +++ b/config.tests/qpa/eglfs-brcm/eglfs-brcm.pro
> @@ -1,11 +1,2 @@
>  SOURCES = eglfs-brcm.cpp
> -
>  CONFIG -= qt
> -
> -INCLUDEPATH += $$QMAKE_INCDIR_EGL
> -
> -for(p, QMAKE_LIBDIR_EGL) {
> -    exists($$p):LIBS += -L$$p
> -}
> -
> -LIBS += -lEGL -lGLESv2 -lbcm_host
> diff --git a/config.tests/unix/opengles2/opengles2.pro b/config.tests/unix/opengles2/opengles2.pro
> index c4d7689..899ad99 100644
> --- a/config.tests/unix/opengles2/opengles2.pro
> +++ b/config.tests/unix/opengles2/opengles2.pro
> @@ -1,12 +1,5 @@
>  SOURCES = opengles2.cpp
> -INCLUDEPATH += $$QMAKE_INCDIR_OPENGL_ES2
> -
> -for(p, QMAKE_LIBDIR_OPENGL_ES2) {
> -    exists($$p):LIBS += -L$$p
> -}
> -
>  CONFIG -= qt
> -LIBS += $$QMAKE_LIBS_OPENGL_ES2
>  mac {
>      DEFINES += BUILD_ON_MAC
>  }
> diff --git a/configure b/configure
> index c696e7e..6d0567b 100755
> --- a/configure
> +++ b/configure
> @@ -5796,15 +5796,7 @@ if [ "$CFG_EGL" != "no" ]; then
>          exit 101
>      fi
>  
> -    if [ -n "$PKG_CONFIG" ] && $PKG_CONFIG --exists egl 2>/dev/null; then
> -        QMAKE_INCDIR_EGL=`$PKG_CONFIG --cflags-only-I egl 2>/dev/null | sed -e 's,^-I,,g' -e 's, -I, ,g'`
> -        QMAKE_LIBS_EGL=`$PKG_CONFIG --libs egl 2>/dev/null`
> -        QMAKE_CFLAGS_EGL=`$PKG_CONFIG --cflags egl 2>/dev/null`
> -        QMakeVar set QMAKE_INCDIR_EGL "$QMAKE_INCDIR_EGL"
> -        QMakeVar set QMAKE_LIBS_EGL "$QMAKE_LIBS_EGL"
> -        QMakeVar set QMAKE_CFLAGS_EGL "`echo " $QMAKE_CFLAGS_EGL " | sed -e 's, -I[^ ]* , ,g;s,^ ,,;s, $,,'`"
> -    fi       # detect EGL support
> -    if compileTest qpa/egl "EGL" $QMAKE_CFLAGS_EGL $QMAKE_LIBS_EGL; then
> +    if compileTestWithPkgConfig egl qpa/egl "EGL" EGL; then
>          CFG_EGL=yes
>          if compileTest qpa/egl-x11 "EGL-X11" $QMAKE_CFLAGS_EGL $QMAKE_LIBS_EGL; then
>              CFG_EGL_X=yes
> @@ -5827,7 +5819,7 @@ if [ "$CFG_EGLFS" != "no" ]; then
>      if [ "$XPLATFORM_QNX" = "no" ] && [ "$CFG_OPENGL" != "no" ]; then
>          CFG_EGLFS="$CFG_EGL"
>          # Detect eglfs backends.
> -        if compileTest qpa/eglfs-brcm "eglfs-brcm"; then
> +        if compileTestWithPkgConfig egl qpa/eglfs-brcm "eglfs-brcm" EGLFS_BRCM; then
>              CFG_EGLFS_BRCM=yes
>          else
>              CFG_EGLFS_BRCM=no
> -- 
> 1.9.1
> 
> -- 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa at gmail.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <http://lists.openembedded.org/pipermail/openembedded-devel/attachments/20160426/8d3e3152/attachment-0002.sig>


More information about the Openembedded-devel mailing list