From 977ba301a1063a84b865ddf7367c35827fbffc86 Mon Sep 17 00:00:00 2001 From: Dongxiao Xu Date: Tue, 8 May 2012 13:28:30 +0800 Subject: [PATCH] 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] [RP: Fix whitepace] Signed-off-by: Dongxiao Xu Signed-off-by: Richard Purdie --- meta/recipes-qt/qt4/qt4-embedded.inc | 2 +- meta/recipes-qt/qt4/qt4-tools-nativesdk.inc | 5 +-- meta/recipes-qt/qt4/qt4-x11-free.inc | 2 +- meta/recipes-qt/qt4/qt4.inc | 5 +-- meta/recipes-qt/qt4/qt4_arch.inc | 36 +++++++++------------ 5 files changed, 24 insertions(+), 26 deletions(-) diff --git a/meta/recipes-qt/qt4/qt4-embedded.inc b/meta/recipes-qt/qt4/qt4-embedded.inc index 0b304a080b3..05803d15e78 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 = "r45" +INC_PR = "r46" QT_BASE_LIB ?= "libqt-embedded" diff --git a/meta/recipes-qt/qt4/qt4-tools-nativesdk.inc b/meta/recipes-qt/qt4/qt4-tools-nativesdk.inc index efb61bf142b..a1dd8df0d1a 100644 --- a/meta/recipes-qt/qt4/qt4-tools-nativesdk.inc +++ b/meta/recipes-qt/qt4/qt4-tools-nativesdk.inc @@ -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}:" @@ -40,7 +40,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 +71,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}" } diff --git a/meta/recipes-qt/qt4/qt4-x11-free.inc b/meta/recipes-qt/qt4/qt4-x11-free.inc index da989623f1b..29bbfc6be0c 100644 --- a/meta/recipes-qt/qt4/qt4-x11-free.inc +++ b/meta/recipes-qt/qt4/qt4-x11-free.inc @@ -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 = "r43" +INC_PR = "r44" 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 468a46ff745..23fda336b2e 100644 --- a/meta/recipes-qt/qt4/qt4.inc +++ b/meta/recipes-qt/qt4/qt4.inc @@ -4,8 +4,6 @@ DEPENDS += "qt4-tools-native freetype jpeg libpng zlib dbus openssl glib-2.0 gst 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" @@ -200,6 +198,9 @@ do_configure() { unset QMAKESPEC unset QTDIR + set_arch + set_endian + if [ ! -e bin/qmake ]; then ln -sf ${STAGING_BINDIR_NATIVE}/qmake2 bin/qmake fi diff --git a/meta/recipes-qt/qt4/qt4_arch.inc b/meta/recipes-qt/qt4/qt4_arch.inc index bde68dc2e0e..c1d35ab726c 100644 --- a/meta/recipes-qt/qt4/qt4_arch.inc +++ b/meta/recipes-qt/qt4/qt4_arch.inc @@ -2,24 +2,20 @@ 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 +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 +} -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 +set_endian() { + if [ ${SITEINFO_ENDIANNESS} = "le" ] ; then + QT_ENDIAN="-little-endian" + elif [ ${SITEINFO_ENDIANNESS} = "be" ] ; then + QT_ENDIAN="-big-endian" + fi +} -- 2.47.3