Skip to contentSkip to conversation

Fix bug 2355

GIT PULL In review Dongxiao Xu 2 participants 6 messages Apr 23, 2012 – May 8, 2012

lore
Share & tools
lore
#0 lore raw

Hi Richard,

This pull request is the second version to fix bug 2355, please help to review and pull.

Changes from v1:
Add an inherit for siteinfo.bbclass

Thanks,
Dongxiao

The following changes since commit 00256125873ff6f1630743a712e882e5f473a9d2:

self-hosted-image: Update poky revision to point at the 1.2 release branch (2012-04-18 15:59:20 +0100)

are available in the git repository at:
git://git.pokylinux.org/poky-contrib dxu4/hob-bugfix-oecore
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=dxu4/hob-bugfix-oecore

Dongxiao Xu (1):
qt4: move functions from python to shell style

 meta/recipes-qt/qt4/qt4-embedded.inc        |    2 +-
 meta/recipes-qt/qt4/qt4-tools-nativesdk.inc |   15 +++++++++++--
 meta/recipes-qt/qt4/qt4-x11-free.inc        |    2 +-
 meta/recipes-qt/qt4/qt4.inc                 |   28 +++++++++++++++++++++++---
 meta/recipes-qt/qt4/qt4_arch.inc            |   25 ------------------------
 5 files changed, 38 insertions(+), 34 deletions(-)
 delete mode 100644 meta/recipes-qt/qt4/qt4_arch.inc
Signature · 1 line
1.7.4.1
#1 lore raw

PATCH 1/1 qt4: move functions from python to shell style

In qt4's do_configure operation, it will refer to some variables that are derived from 'd', however these variable values may be not correct in multilib case since the extraction of these variables happens before the multilib handler.

The fix is to move these python style functions back to shell style.

This fixes [YOCTO #2355]

---
 meta/recipes-qt/qt4/qt4-embedded.inc        |    2 +-
 meta/recipes-qt/qt4/qt4-tools-nativesdk.inc |   15 +++++++++++--
 meta/recipes-qt/qt4/qt4-x11-free.inc        |    2 +-
 meta/recipes-qt/qt4/qt4.inc                 |   28 +++++++++++++++++++++++---
 meta/recipes-qt/qt4/qt4_arch.inc            |   25 ------------------------
 5 files changed, 38 insertions(+), 34 deletions(-)
 delete mode 100644 meta/recipes-qt/qt4/qt4_arch.inc
meta/recipes-qt/qt4/qt4-embedded.inc +1 -1
index 8c15352..291e62a 100644
@@ -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 = "r43"
+INC_PR = "r44"
 
 QT_BASE_LIB  ?= "libqt-embedded"
 
meta/recipes-qt/qt4/qt4-tools-nativesdk.inc +12 -3
index efb61bf..d350f28 100644
@@ -4,7 +4,7 @@ SECTION = "libs"
 HOMEPAGE = "http://qt.nokia.com"
 LICENSE = "LGPLv2.1 | GPLv3"
 
-INC_PR = "r10"
+INC_PR = "r11"
 
 FILESEXTRAPATHS =. "${FILE_DIRNAME}/qt-${PV}:"
 
@@ -26,7 +26,15 @@ LIC_FILES_CHKSUM = "file://LICENSE.LGPL;md5=fbc093901857fcd118f065f900982c24 \
                     file://LICENSE.GPL3;md5=babc5b6b77441da277f5c06b2e547720 \
                     file://LGPL_EXCEPTION.txt;md5=411080a56ff917a5a1aa08c98acae354"
 
-require qt4_arch.inc
+set_arch() {
+   case ${TARGET_ARCH} in
+       arm*)     QT_ARCH=arm ;;
+       i*86*)    QT_ARCH=i386 ;;
+       mips*)    QT_ARCH=mips ;;
+       powerpc*) QT_ARCH=powerpc ;;
+       x86_64*)  QT_ARCH=x86_64 ;;
+   esac
+}
 
 # FIXME: make it work with "${STAGING_BINDIR_NATIVE}/pkg-config --cflags dbus-1"
 EXTRA_OECONF = "-prefix ${prefix} \
@@ -40,7 +48,7 @@ EXTRA_OECONF = "-prefix ${prefix} \
                 -verbose -release -fast -static \
                 -platform ${TARGET_OS}-oe-g++ \
                 -xplatform ${TARGET_OS}-oe-g++ \
-                -arch ${@qt_arch(d)} \
+                -arch ${QT_ARCH} \
                 -embedded -no-freetype -no-glib -no-iconv \
                 -qt3support \
                 -I${STAGING_DIR_HOST}${SDKPATHNATIVE}/usr/include/dbus-1.0 \
@@ -71,6 +79,7 @@ do_configure() {
     if [ ! -e bin/qmake ]; then
         ln -sf ${STAGING_BINDIR_NATIVE}/qmake2 bin/qmake
     fi
+    set_arch
     (echo o; echo yes) | CC="${CC}" CXX="${CXX}" ./configure ${EXTRA_OECONF} || die "Configuring qt failed. EXTRA_OECONF was ${EXTRA_OECONF}"
 }
 
meta/recipes-qt/qt4/qt4-x11-free.inc +1 -1
index 072c522..aab9304 100644
@@ -5,7 +5,7 @@ HOMEPAGE = "http://qt.nokia.com"
 SECTION = "x11/libs"
 DEPENDS += "virtual/libgl virtual/libx11 fontconfig libxft libxext libxrender libxrandr libxcursor"
 
-INC_PR = "r41"
+INC_PR = "r42"
 
 QT_GLFLAGS ?= "${@base_contains('DISTRO_FEATURES', 'opengl', '-opengl', '-no-opengl', d)} "
 QT_GLFLAGS_qemux86 = "-opengl"
meta/recipes-qt/qt4/qt4.inc +24 -4
index 468a46f..03800e6 100644
@@ -3,10 +3,6 @@ inherit qmake_base
 DEPENDS += "qt4-tools-native freetype jpeg libpng zlib dbus openssl glib-2.0 gstreamer gst-plugins-base sqlite3 tiff"
 DEPENDS += "${@base_contains('DISTRO_FEATURES', 'pulseaudio', 'pulseaudio', '', d)}"
 
-require qt4_arch.inc
-QT_ARCH := "${@qt_arch(d)}"
-QT_ENDIAN = "${@qt_endian(d)}"
-
 QT_DISTRO_FLAGS ?= "-no-accessibility -no-sm"
 QT_DISTRO_FLAGS_linuxstdbase = "-sm"
 
@@ -196,10 +192,34 @@ 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"
 
+ARM_INSTRUCTION_SET = "arm"
+
+set_arch() {
+   case ${TARGET_ARCH} in
+       arm*)     QT_ARCH=arm ;;
+       i*86*)    QT_ARCH=i386 ;;
+       mips*)    QT_ARCH=mips ;;
+       powerpc*) QT_ARCH=powerpc ;;
+       x86_64*)  QT_ARCH=x86_64 ;;
+   esac
+}
+
+inherit siteinfo
+set_endian() {
+    if [ ${SITEINFO_ENDIANNESS} = "le" ] ; then
+        QT_ENDIAN="-little-endian"
+    elif [ ${SITEINFO_ENDIANNESS} = "be" ] ; then
+        QT_ENDIAN="-big-endian"
+    fi
+}
+
 do_configure() {
 	unset QMAKESPEC
 	unset QTDIR
 
+    set_arch
+    set_endian
+
 	if [ ! -e bin/qmake ]; then
 		ln -sf ${STAGING_BINDIR_NATIVE}/qmake2 bin/qmake
 	fi
meta/recipes-qt/qt4/qt4_arch.inc deleted +0 -25
deleted file mode 100644
index bde68dc..0000000
@@ -1,25 +0,0 @@
-inherit siteinfo
-
-ARM_INSTRUCTION_SET = "arm"
-
-def qt_arch(d):
-    import bb, re
-    arch = d.getVar('TARGET_ARCH', True)
-    if re.match("^i.86$", arch):
-        arch = "i386"
-    elif re.match("^arm.*", arch):
-        arch = "arm"
-    elif arch == "x86_64":
-        arch = "x86"
-    elif arch == "mipsel":
-        arch = "mips"
-    return arch
-
-def qt_endian(d):
-    import bb
-    if d.getVar('SITEINFO_ENDIANNESS', True) == "le":
-        return "-little-endian"
-    elif d.getVar('SITEINFO_ENDIANNESS', True) == "be":
-        return "-big-endian"
-    else:
-        assert False
Signature · 1 line
1.7.4.1
#2 lore raw

Re: [PATCH 1/1] qt4: move functions from python to shell style

Hi Dongxiao,

Quoted 6 lines · On Monday 23 April 2012 16:53:02 Dongxiao Xu wrote:

In qt4's do_configure operation, it will refer to some variables that are derived from 'd', however these variable values may be not correct in multilib case since the extraction of these variables happens before the multilib handler.

The fix is to move these python style functions back to shell style.

This patch removes qt4_arch.inc without explaining why. Can the fix be made without removing it?

Cheers,
Paul

Signature · 2 lines
Paul Eggleton
Intel Open Source Technology Centre
#3 lore raw

Re: [PATCH 1/1] qt4: move functions from python to shell style

Quoted 16 lines

-----Original Message-----
From: Paul Eggleton [mailto:[email protected]]
Sent: Tuesday, April 24, 2012 6:51 PM
To: Xu, Dongxiao
Cc: [email protected]
Subject: Re: [OE-core] [PATCH 1/1] qt4: move functions from python to shell style

Hi Dongxiao,

Quoted 5 lines · On Monday 23 April 2012 16:53:02 Dongxiao Xu wrote:

In qt4's do_configure operation, it will refer to some variables that are derived from 'd', however these variable values may be not correct in multilib case since the extraction of these variables happens before the multilib handler.

Quoted 4 lines
Quoted 1 line

The fix is to move these python style functions back to shell style.

This patch removes qt4_arch.inc without explaining why. Can the fix be made without removing it?

Hi Paul,

In my new pull request, I keep the qt4_arch.inc file and put common functions there. Thanks for your comments.

Thanks,
Dongxiao

Quoted 8 lines

Cheers,
Paul

--

Paul Eggleton
Intel Open Source Technology Centre

#4 lore raw
In reply to Dongxiao Xu
Quoted 3 lines · Dongxiao Xu

Hi Richard,

This pull request is the second version to fix bug 2355, please help to review and pull.

Richard, there are some issue inside.
Please hold this change for a while.

Thanks,
Dongxiao

Quoted 26 lines

Changes from v1:
Add an inherit for siteinfo.bbclass

Thanks,
Dongxiao

The following changes since commit 00256125873ff6f1630743a712e882e5f473a9d2:

self-hosted-image: Update poky revision to point at the 1.2 release branch (2012-04-18 15:59:20 +0100)

are available in the git repository at:
git://git.pokylinux.org/poky-contrib dxu4/hob-bugfix-oecore
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=dxu4/hob-bugfix-oecore

Dongxiao Xu (1):
qt4: move functions from python to shell style

 meta/recipes-qt/qt4/qt4-embedded.inc        |    2 +-
 meta/recipes-qt/qt4/qt4-tools-nativesdk.inc |   15 +++++++++++--
 meta/recipes-qt/qt4/qt4-x11-free.inc        |    2 +-
 meta/recipes-qt/qt4/qt4.inc                 |   28 +++++++++++++++++++++++---
 meta/recipes-qt/qt4/qt4_arch.inc            |   25 ------------------------
 5 files changed, 38 insertions(+), 34 deletions(-)
 delete mode 100644 meta/recipes-qt/qt4/qt4_arch.inc
#5 lore raw
Quoted 7 lines · Dongxiao
Quoted 3 lines · Dongxiao Xu

Hi Richard,

This pull request is the second version to fix bug 2355, please help to review and pull.

Richard, there are some issue inside.
Please hold this change for a while.

I just used the following configuration in local.conf.

MACHINE="qemuppc"
require conf/multilib.conf
MULTILIBS = "multilib:lib64" DEFAULTTUNE_virtclass-multilib-lib64 = "powerpc64"

When I did a simple parse, I met the following error:

ERROR: Unable to determine endianness for architecture ''
ERROR: Please add your architecture to siteinfo.bbclass
NOTE: Error expanding variable set_arch
ERROR: Unable to determine endianness for architecture ''
ERROR: Please add your architecture to siteinfo.bbclass
NOTE: Error during finalise of virtual:multilib:lib64:/home/dongxiao/poky/meta-yocto/recipes-kernel/linux-libc-headers/linux-libc-headers-yocto_git.bb
ERROR: Unable to determine endianness for architecture ''
ERROR: Please add your architecture to siteinfo.bbclass
ERROR: Unable to determine endianness for architecture ''
ERROR: Please add your architecture to siteinfo.bbclass
ERROR: Unable to determine endianness for architecture ''
ERROR: Please add your architecture to siteinfo.bbclass
ERROR: Unable to determine endianness for architecture ''
ERROR: Please add your architecture to siteinfo.bbclass
ERROR: Unable to determine endianness for architecture ''
ERROR: Please add your architecture to siteinfo.bbclass
ERROR: Unable to
parse /home/dongxiao/poky/meta/recipes-support/pth/pth_2.0.7.bb: Exited
with "1"
| ETA: --:--:--
ERROR: Command execution failed: Exited with 1

Originally I suppose it is related to my patch, however, this issue still exists even without my patch.

Is it because we don't support powerpc multilib?

Thanks,
Dongxiao

Quoted 37 lines

Thanks,
Dongxiao

Quoted 18 lines

Changes from v1:
Add an inherit for siteinfo.bbclass

Thanks,
Dongxiao

The following changes since commit 00256125873ff6f1630743a712e882e5f473a9d2:

self-hosted-image: Update poky revision to point at the 1.2 release branch (2012-04-18 15:59:20 +0100)

are available in the git repository at:
git://git.pokylinux.org/poky-contrib dxu4/hob-bugfix-oecore
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=dxu4/hob-bugfix-oecore

Dongxiao Xu (1):
qt4: move functions from python to shell style

Quoted 8 lines
 meta/recipes-qt/qt4/qt4-embedded.inc        |    2 +-
 meta/recipes-qt/qt4/qt4-tools-nativesdk.inc |   15 +++++++++++--
 meta/recipes-qt/qt4/qt4-x11-free.inc        |    2 +-
 meta/recipes-qt/qt4/qt4.inc                 |   28 +++++++++++++++++++++++---
 meta/recipes-qt/qt4/qt4_arch.inc            |   25 ------------------------
 5 files changed, 38 insertions(+), 34 deletions(-)
 delete mode 100644 meta/recipes-qt/qt4/qt4_arch.inc

_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core