From 738b90f33e87009787e0f8a88ea24c2d51949a6f Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Wed, 26 Dec 2007 18:32:42 +0000 Subject: packages/libqanava/libqanava_0.0.7.bb: Fix spelling of the description --- packages/libqanava/libqanava_0.0.7.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/libqanava/libqanava_0.0.7.bb b/packages/libqanava/libqanava_0.0.7.bb index dbec5c7001..32075337ec 100644 --- a/packages/libqanava/libqanava_0.0.7.bb +++ b/packages/libqanava/libqanava_0.0.7.bb @@ -1,4 +1,4 @@ -DESCRIPTION = "Qanava is a gtaph library based on the Qt4 Arthur framework." +DESCRIPTION = "Qanava is a graph library based on the Qt4 Arthur framework." SECTION = "x11/libs" HOMEPAGE = "http://www.libqanava.org/" # LGPL after 0.0.7 -- cgit v1.2.3 From 48713605fca4867a92cceeda9afc6c4d4c97b6b5 Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Wed, 26 Dec 2007 18:45:08 +0000 Subject: Qt4 based applications: Do not inherit qmake when building for Qt4/X11 inherit qmake will download Qt3 and build parts of it, we don't want that. --- packages/libqanava/libqanava_0.0.7.bb | 2 +- packages/mkbot/mkbot_0.3.bb | 2 +- packages/opie-reader/uqtreader_cvs.bb | 2 +- packages/qsvn/qsvn_0.3.0.bb | 2 +- packages/qxmp/qxmp_1.0.bb | 2 +- packages/texmaker/texmaker_1.3.bb | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/libqanava/libqanava_0.0.7.bb b/packages/libqanava/libqanava_0.0.7.bb index 32075337ec..5edf1417c1 100644 --- a/packages/libqanava/libqanava_0.0.7.bb +++ b/packages/libqanava/libqanava_0.0.7.bb @@ -8,7 +8,7 @@ PR = "r0" SRC_URI = "http://www.libqanava.org/dl/qanava-${PV}.tar.gz" S = "${WORKDIR}/qanava-${PV}" -inherit qmake qt4x11 +inherit qt4x11 PARALLEL_MAKE = "" diff --git a/packages/mkbot/mkbot_0.3.bb b/packages/mkbot/mkbot_0.3.bb index 195d74ca52..92df433e45 100644 --- a/packages/mkbot/mkbot_0.3.bb +++ b/packages/mkbot/mkbot_0.3.bb @@ -8,6 +8,6 @@ SECTION = "network" SRC_URI = "http://files.fredemmott.co.uk/mkbot-${PV}.tar.bz2" S = "${WORKDIR}/MKbot-0.3" -inherit qmake qt4x11 +inherit qt4x11 #FIXME: lacks packaging diff --git a/packages/opie-reader/uqtreader_cvs.bb b/packages/opie-reader/uqtreader_cvs.bb index 9fb7af2db5..9b7ae57196 100644 --- a/packages/opie-reader/uqtreader_cvs.bb +++ b/packages/opie-reader/uqtreader_cvs.bb @@ -17,7 +17,7 @@ S = "${WORKDIR}/opie-reader" export OPIEDIR="${S}/opiedir" -inherit qmake_base qt4x11 +inherit qt4x11 do_configure() { ${OE_QMAKE_QMAKE} -recursive opie-reader.pro UQT_DATADIR="${datadir}/${PN}" UQT_LIBDIR="${libdir}/${PN}" diff --git a/packages/qsvn/qsvn_0.3.0.bb b/packages/qsvn/qsvn_0.3.0.bb index 575e9359b7..c96976f9b7 100644 --- a/packages/qsvn/qsvn_0.3.0.bb +++ b/packages/qsvn/qsvn_0.3.0.bb @@ -10,7 +10,7 @@ PR = "r0" SRC_URI = "http://download2.berlios.de/qsvn/qsvn-${PV}-src.tar.gz \ file://build.patch;patch=1" -inherit qmake qt4x11 +inherit qt4x11 EXTRA_QMAKEVARS_POST += "INCLUDEPATH+=${STAGING_INCDIR}/subversion-1" diff --git a/packages/qxmp/qxmp_1.0.bb b/packages/qxmp/qxmp_1.0.bb index e0a1acab21..bad972d54f 100644 --- a/packages/qxmp/qxmp_1.0.bb +++ b/packages/qxmp/qxmp_1.0.bb @@ -6,7 +6,7 @@ RDEPENDS = "mplayer" SRC_URI = "http://www.xm1math.net/qxmp/qxmp-${PV}.tar.bz2" -inherit qmake qt4x11 +inherit qt4x11 do_install() { install -d ${D}${bindir} diff --git a/packages/texmaker/texmaker_1.3.bb b/packages/texmaker/texmaker_1.3.bb index 5682338f31..b612302544 100644 --- a/packages/texmaker/texmaker_1.3.bb +++ b/packages/texmaker/texmaker_1.3.bb @@ -5,7 +5,7 @@ LICENSE = "GPL" SRC_URI = "http://www.xm1math.net/texmaker/texmaker-${PV}.tar.bz2" -inherit qmake qt4x11 +inherit qt4x11 do_install() { install -d ${D}${bindir} -- cgit v1.2.3 From a2b606f1c3d1069d3a7606b71040ee3131e326a6 Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Wed, 26 Dec 2007 18:56:24 +0000 Subject: packages/qmake/qmake2-native: Change the specs to find our resource compiler (rcc) The build of qsvn failed due invoking the wrong rcc. Change the qmake specs to set QMAKE_RCC and set it to OE_QMAKE_RCC. --- .../qmake/qmake2-native/0001-fix-mkspecs.patch | 25 ++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/packages/qmake/qmake2-native/0001-fix-mkspecs.patch b/packages/qmake/qmake2-native/0001-fix-mkspecs.patch index faf0ba028a..e0ebe512c8 100644 --- a/packages/qmake/qmake2-native/0001-fix-mkspecs.patch +++ b/packages/qmake/qmake2-native/0001-fix-mkspecs.patch @@ -10,8 +10,8 @@ Subject: [PATCH] fix mkspecs Index: qtopia-core-opensource-src-4.3.3/mkspecs/common/g++.conf =================================================================== ---- qtopia-core-opensource-src-4.3.3.orig/mkspecs/common/g++.conf 2007-12-26 02:58:15.000000000 +0100 -+++ qtopia-core-opensource-src-4.3.3/mkspecs/common/g++.conf 2007-12-26 02:58:21.000000000 +0100 +--- qtopia-core-opensource-src-4.3.3.orig/mkspecs/common/g++.conf 2007-12-04 18:07:53.000000000 +0100 ++++ qtopia-core-opensource-src-4.3.3/mkspecs/common/g++.conf 2007-12-26 19:47:02.000000000 +0100 @@ -2,12 +2,12 @@ # qmake configuration for common gcc # @@ -63,8 +63,8 @@ Index: qtopia-core-opensource-src-4.3.3/mkspecs/common/g++.conf Index: qtopia-core-opensource-src-4.3.3/mkspecs/common/linux.conf =================================================================== ---- qtopia-core-opensource-src-4.3.3.orig/mkspecs/common/linux.conf 2007-12-26 02:58:15.000000000 +0100 -+++ qtopia-core-opensource-src-4.3.3/mkspecs/common/linux.conf 2007-12-26 02:58:21.000000000 +0100 +--- qtopia-core-opensource-src-4.3.3.orig/mkspecs/common/linux.conf 2007-12-04 18:07:53.000000000 +0100 ++++ qtopia-core-opensource-src-4.3.3/mkspecs/common/linux.conf 2007-12-26 19:47:02.000000000 +0100 @@ -7,26 +7,26 @@ QMAKE_INCDIR = @@ -120,8 +120,8 @@ Index: qtopia-core-opensource-src-4.3.3/mkspecs/common/linux.conf +include(unix.conf) Index: qtopia-core-opensource-src-4.3.3/mkspecs/linux-g++/qmake.conf =================================================================== ---- qtopia-core-opensource-src-4.3.3.orig/mkspecs/linux-g++/qmake.conf 2007-12-26 02:58:15.000000000 +0100 -+++ qtopia-core-opensource-src-4.3.3/mkspecs/linux-g++/qmake.conf 2007-12-26 03:00:49.000000000 +0100 +--- qtopia-core-opensource-src-4.3.3.orig/mkspecs/linux-g++/qmake.conf 2007-12-04 18:07:53.000000000 +0100 ++++ qtopia-core-opensource-src-4.3.3/mkspecs/linux-g++/qmake.conf 2007-12-26 19:47:02.000000000 +0100 @@ -5,7 +5,7 @@ MAKEFILE_GENERATOR = UNIX TEMPLATE = app @@ -131,3 +131,16 @@ Index: qtopia-core-opensource-src-4.3.3/mkspecs/linux-g++/qmake.conf QMAKE_INCREMENTAL_STYLE = sublib include(../common/g++.conf) +Index: qtopia-core-opensource-src-4.3.3/mkspecs/common/unix.conf +=================================================================== +--- qtopia-core-opensource-src-4.3.3.orig/mkspecs/common/unix.conf 2007-12-26 19:48:20.000000000 +0100 ++++ qtopia-core-opensource-src-4.3.3/mkspecs/common/unix.conf 2007-12-26 19:49:50.000000000 +0100 +@@ -10,6 +10,8 @@ + QMAKE_YACC_HEADER = $base.tab.h + QMAKE_YACC_SOURCE = $base.tab.c + ++QMAKE_RCC = $$(OE_QMAKE_RCC) ++ + QMAKE_SEPARATE_DEBUG_INFO = (test -z \"$(DESTDIR)\" || cd \"$(DESTDIR)\" ; targ=`basename $(TARGET)`; objcopy --only-keep-debug \"\$\$targ\" \"\$\$targ.debug\" && objcopy --strip-debug \"\$\$targ\" && objcopy --add-gnu-debuglink=\"\$\$targ.debug\" \"\$\$targ\" && chmod -x \"\$\$targ.debug\" ) ; + + QMAKE_INSTALL_SEPARATE_DEBUG_INFO = test -z "$(DESTDIR)" || cd \"$(DESTDIR)\" ; $(INSTALL_FILE) `basename $(TARGET)`.debug $(INSTALL_ROOT)/\$\$target_path/ -- cgit v1.2.3 From 75c52a3af0a9af10e754198c6ec609ffef775148 Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Wed, 26 Dec 2007 19:11:31 +0000 Subject: classes/qtopia4core.bbclass: The current name of the include and libdir is qtopia Change the include and library path to end with qtopia as this is where qtopia-core is going to stage the headers in. The full blown Qtopia platform will use the same directory. --- classes/qtopia4core.bbclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/classes/qtopia4core.bbclass b/classes/qtopia4core.bbclass index 181973d72d..a8364d86ff 100644 --- a/classes/qtopia4core.bbclass +++ b/classes/qtopia4core.bbclass @@ -4,8 +4,8 @@ inherit qmake2 # # override variables set by qmake-base to compile QtopiaCore apps # -export OE_QMAKE_INCDIR_QT = "${STAGING_INCDIR}/qtopiacore" -export OE_QMAKE_LIBDIR_QT = "${STAGING_LIBDIR}/qtopiacore" +export OE_QMAKE_INCDIR_QT = "${STAGING_INCDIR}/qtopia" +export OE_QMAKE_LIBDIR_QT = "${STAGING_LIBDIR}/qtopia" export OE_QMAKE_LIBS_QT = "qt" export OE_QMAKE_LIBS_X11 = "" export OE_QMAKE_EXTRA_MODULES = "network" -- cgit v1.2.3 From 61e34ba5fa3d2a224de33f81c7e9930b5d139652 Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Wed, 26 Dec 2007 19:15:41 +0000 Subject: packages/qsvn: Experiment with building the same source in different variants Experiment with having the same source build with different versions of the underlying toolkit. In the best case we want to be installable in parallel. --- packages/qsvn/qsvn-qte_0.3.0.bb | 3 +++ packages/qsvn/qsvn.inc | 19 +++++++++++++++++++ packages/qsvn/qsvn_0.3.0.bb | 20 +------------------- 3 files changed, 23 insertions(+), 19 deletions(-) create mode 100644 packages/qsvn/qsvn-qte_0.3.0.bb create mode 100644 packages/qsvn/qsvn.inc diff --git a/packages/qsvn/qsvn-qte_0.3.0.bb b/packages/qsvn/qsvn-qte_0.3.0.bb new file mode 100644 index 0000000000..59b46edf9c --- /dev/null +++ b/packages/qsvn/qsvn-qte_0.3.0.bb @@ -0,0 +1,3 @@ +require qsvn.inc +FILESDIR += "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/qsvn" +inherit qtopia4core diff --git a/packages/qsvn/qsvn.inc b/packages/qsvn/qsvn.inc new file mode 100644 index 0000000000..edd9bfd951 --- /dev/null +++ b/packages/qsvn/qsvn.inc @@ -0,0 +1,19 @@ +DESCRIPTION = "QSvn is a graphical Subversion client for Linux, UNIX, Mac OS X and Windows. \ +It is written in C++ using the Qt4 toolkit from Trolltech." +HOMEPAGE = "http://ar.oszine.de/projects/qsvn/" +AUTHOR = "Andreas Richter, Rajko Albrecht" +LICENSE = "GPL" +SECTION = "network" +DEPENDS = "apr-util subversion" +PR = "r0" + +SRC_URI = "http://download2.berlios.de/qsvn/qsvn-${PV}-src.tar.gz \ + file://build.patch;patch=1" +S = "${WORKDIR}/qsvn-${PV}" + +EXTRA_QMAKEVARS_POST += "INCLUDEPATH+=${STAGING_INCDIR}/subversion-1" + +do_install() { + install -d ${D}${bindir} + install -m 0755 bin/qsvn ${D}${bindir}/${PN} +} diff --git a/packages/qsvn/qsvn_0.3.0.bb b/packages/qsvn/qsvn_0.3.0.bb index c96976f9b7..db3cc0918d 100644 --- a/packages/qsvn/qsvn_0.3.0.bb +++ b/packages/qsvn/qsvn_0.3.0.bb @@ -1,20 +1,2 @@ -DESCRIPTION = "QSvn is a graphical Subversion client for Linux, UNIX, Mac OS X and Windows. \ -It is written in C++ using the Qt4 toolkit from Trolltech." -HOMEPAGE = "http://ar.oszine.de/projects/qsvn/" -AUTHOR = "Andreas Richter, Rajko Albrecht" -LICENSE = "GPL" -SECTION = "network" -DEPENDS = "apr-util subversion" -PR = "r0" - -SRC_URI = "http://download2.berlios.de/qsvn/qsvn-${PV}-src.tar.gz \ - file://build.patch;patch=1" - +require qsvn.inc inherit qt4x11 - -EXTRA_QMAKEVARS_POST += "INCLUDEPATH+=${STAGING_INCDIR}/subversion-1" - -do_install() { - install -d ${D}${bindir} - install -m 0755 bin/qsvn ${D}${bindir} -} -- cgit v1.2.3 From df105e3b26d2a3acd98a8e70ad8f308fa3ca5c4f Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Wed, 26 Dec 2007 19:31:53 +0000 Subject: packages/qsvn/qsvn.inc: Propose a function to be able to set the FN With diverting packages ${PN} can sometimes not be used. In such cases we don't to use the filename of the currently included file. This can work with immediate assignments and a helper function like this one. --- packages/qsvn/qsvn.inc | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/packages/qsvn/qsvn.inc b/packages/qsvn/qsvn.inc index edd9bfd951..c27bbab114 100644 --- a/packages/qsvn/qsvn.inc +++ b/packages/qsvn/qsvn.inc @@ -7,9 +7,15 @@ SECTION = "network" DEPENDS = "apr-util subversion" PR = "r0" -SRC_URI = "http://download2.berlios.de/qsvn/qsvn-${PV}-src.tar.gz \ +def vars_from_file(filename): + import os + return os.path.splitext(os.path.basename(filename))[0] + +FN := "${@vars_from_file(bb.data.getVar('FILE',d))}" + +SRC_URI = "http://download2.berlios.de/${FN}/${FN}-${PV}-src.tar.gz \ file://build.patch;patch=1" -S = "${WORKDIR}/qsvn-${PV}" +S = "${WORKDIR}/${FN}-${PV}" EXTRA_QMAKEVARS_POST += "INCLUDEPATH+=${STAGING_INCDIR}/subversion-1" -- cgit v1.2.3 From d41f87692d50924a4c5b27c9f78250605b724860 Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Wed, 26 Dec 2007 19:35:12 +0000 Subject: classes/insane.bbclass: Removal of whitespace and tabs --- classes/insane.bbclass | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/classes/insane.bbclass b/classes/insane.bbclass index 473fe6ebbf..c3ba25ff35 100644 --- a/classes/insane.bbclass +++ b/classes/insane.bbclass @@ -29,7 +29,7 @@ PACKAGEFUNCS += " do_package_qa " # # dictionary for elf headers # -# feel free to add and correct. +# feel free to add and correct. # # TARGET_OS TARGET_ARCH MACHINE, OSABI, ABIVERSION, Little Endian, 32bit? def package_qa_get_machine_dict(): @@ -75,7 +75,7 @@ def package_qa_get_machine_dict(): "arm" : (40, 0, 0, True, True), "armeb" : (40, 0, 0, False, True), }, - + } # factory for a class, embedded in a method @@ -279,7 +279,7 @@ def package_qa_check_arch(path,name,d): import bb, os target_os = bb.data.getVar('TARGET_OS', d, True) target_arch = bb.data.getVar('TARGET_ARCH', d, True) - + # FIXME: Cross package confuse this check, so just skip them if bb.data.inherits_class('cross', d) or bb.data.inherits_class('sdk', d): return True -- cgit v1.2.3 From 70ca8d9a53501f8842d5131fe22b1c09b6dda1aa Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Wed, 26 Dec 2007 19:36:39 +0000 Subject: MAINTAINERS: Add qt and qmake to the recipes list. --- MAINTAINERS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MAINTAINERS b/MAINTAINERS index dc59ea204c..23ddce0fde 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -74,7 +74,7 @@ Person: Holger Hans Peter Freyther Mail: zecke@selfish.org Website: http://www.openembedded.org/~zecke Interests: icecream, insanity, QA -Recipes: qtopia*, sqlite3, xine +Recipes: qtopia*, qt*, qmake*, sqlite3, xine Person: Jamie Lenehan Mail: lenehan@twibble.org -- cgit v1.2.3 From 89b4d820b5611b1541581dfb2674adbd59af4019 Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Wed, 26 Dec 2007 19:51:06 +0000 Subject: classes/insane.bbclass: Try to increase readability, remove deadcode, ask to make desktop errors fatal --- classes/insane.bbclass | 60 +++++++++++++++++--------------------------------- 1 file changed, 20 insertions(+), 40 deletions(-) diff --git a/classes/insane.bbclass b/classes/insane.bbclass index c3ba25ff35..c01d453114 100644 --- a/classes/insane.bbclass +++ b/classes/insane.bbclass @@ -8,21 +8,18 @@ # -Check the RUNTIME path for the $TMPDIR # -Check if .la files wrongly point to workdir # -Check if .pc files wrongly point to workdir -# -Check if packages contains .debug directories or .so files where they should be in -dev or -dbg +# -Check if packages contains .debug directories or .so files +# where they should be in -dev or -dbg # -Check if config.log contains traces to broken autoconf tests -# # # We need to have the scanelf utility as soon as -# possible and this is contained within the pax-utils-native +# possible and this is contained within the pax-utils-native. +# The package.bbclass can help us here. # - - -# We play a special package function inherit package PACKAGE_DEPENDS += "pax-utils-native desktop-file-utils-native" -#PACKAGE_DEPENDS += chrpath-native" PACKAGEFUNCS += " do_package_qa " @@ -121,9 +118,9 @@ def package_qa_get_elf(path, bits32): ELFFile.my_assert(self.data[2], 'L') ELFFile.my_assert(self.data[3], 'F') if bits32 : - ELFFile.my_assert(self.data[ELFFile.EI_CLASS], chr(ELFFile.ELFCLASS32)) # only 32 bits + ELFFile.my_assert(self.data[ELFFile.EI_CLASS], chr(ELFFile.ELFCLASS32)) else: - ELFFile.my_assert(self.data[ELFFile.EI_CLASS], chr(ELFFile.ELFCLASS64)) # only 64 bits + ELFFile.my_assert(self.data[ELFFile.EI_CLASS], chr(ELFFile.ELFCLASS64)) ELFFile.my_assert(self.data[ELFFile.EI_VERSION], chr(ELFFile.EV_CURRENT) ) self.sex = self.data[ELFFile.EI_DATA] @@ -160,8 +157,6 @@ def package_qa_get_elf(path, bits32): return ELFFile(path) -# -# # Known Error classes # 0 - non dev contains .so # 1 - package contains a dangerous RPATH @@ -170,10 +165,10 @@ def package_qa_get_elf(path, bits32): # 4 - wrong architecture # 5 - .la contains installed=yes or reference to the workdir # 6 - .pc contains reference to /usr/include or workdir -# -# +# 7 - the desktop file is not valid def package_qa_clean_path(path,d): + """ Remove the common prefix from the path. In this case it is the TMPDIR""" import bb return path.replace(bb.data.getVar('TMPDIR',d,True),"") @@ -206,7 +201,8 @@ def package_qa_write_error(error_class, name, path, d): log_path = os.path.join( bb.data.getVar('T', d, True), "log.qa_package" ) f = file( log_path, "a+") - print >> f, "%s, %s, %s" % (ERROR_NAMES[error_class], name, package_qa_clean_path(path,d)) + print >> f, "%s, %s, %s" % \ + (ERROR_NAMES[error_class], name, package_qa_clean_path(path,d)) f.close() @@ -216,28 +212,20 @@ def package_qa_check_rpath(file,name,d): """ import bb, os scanelf = os.path.join(bb.data.getVar('STAGING_BINDIR_NATIVE',d,True),'scanelf') - #chrpath = os.path.join(bb.data.getVar('STAGING_BINDIR_NATIVE',d,True),'chrpath') bad_dir = bb.data.getVar('TMPDIR', d, True) + "/work" bad_dir_test = bb.data.getVar('TMPDIR', d, True) if not os.path.exists(scanelf): bb.fatal("Can not check RPATH, scanelf (part of pax-utils-native) not found") - #if not os.path.exists(chrpath): - # bb.fatal("Can not fix RPATH, chrpath (part of chrpath-native) not found") + if not bad_dir in bb.data.getVar('WORKDIR', d, True): bb.fatal("This class assumed that WORKDIR is ${TMPDIR}/work... Not doing any check") - #bb.note("%s -B -F%%r#F %s" % (scanelf,file)) output = os.popen("%s -B -F%%r#F '%s'" % (scanelf,file)) txt = output.readline().split() - #bb.note("???%s???" % bad_dir_test) for line in txt: - #bb.note("===%s===" % line) if bad_dir in line: package_qa_write_error( 1, name, file, d) bb.error("QA Issue package %s contains bad RPATH %s in file %s" % (name, line, file)) - #bb.note("Fixing RPATH for you in %s" % file) - #os.popen("%s -r /lib %s" % (chrpath,file)) - #return False return True def package_qa_check_devdbg(path, name,d): @@ -290,31 +278,23 @@ def package_qa_check_arch(path,name,d): return True #if this will throw an exception, then fix the dict above - (machine, osabi, abiversion, littleendian, bits32) = package_qa_get_machine_dict()[target_os][target_arch] + (machine, osabi, abiversion, littleendian, bits32) \ + = package_qa_get_machine_dict()[target_os][target_arch] elf = package_qa_get_elf(path, bits32) - try: - elf.open() - except: - # just for debbugging to check the parser, remove once convinced... - return True + elf.open() + # Check the architecture and endiannes of the binary if not machine == elf.machine(): - bb.error("Architecture did not match (%d to %d) on %s" %(machine, elf.machine(), package_qa_clean_path(path,d))) + bb.error("Architecture did not match (%d to %d) on %s" % \ + (machine, elf.machine(), package_qa_clean_path(path,d))) return not package_qa_make_fatal_error( 4, name, path, d ) elif not littleendian == elf.isLittleEndian(): - bb.error("Endiannes did not match (%d to %d) on %s" % (littleendian, elf.isLittleEndian(), package_qa_clean_path(path,d))) + bb.error("Endiannes did not match (%d to %d) on %s" % \ + (littleendian, elf.isLittleEndian(), package_qa_clean_path(path,d))) return not package_qa_make_fatal_error( 4, name, path, d ) return True -def package_qa_check_pcla(path,name,d): - """ - .pc and .la files should not point to the WORKDIR - """ - sane = True - # TODO - return sane - def package_qa_check_desktop(path, name, d): """ Run all desktop files through desktop-file-validate. @@ -323,9 +303,9 @@ def package_qa_check_desktop(path, name, d): if path.endswith(".desktop"): validate = os.path.join(bb.data.getVar('STAGING_BINDIR_NATIVE',d,True), 'desktop-file-validate') output = os.popen("%s %s" % (validate, path)) - # This only produces output on errors for l in output: bb.error(l.strip()) + return not package_qa_make_fatal_error(7, name, path, d) return True def package_qa_check_staged(path,d): -- cgit v1.2.3 From 158f69464e090fa276e083171f962e72f22612fa Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Wed, 26 Dec 2007 20:02:06 +0000 Subject: classes/insane.bbclass: Try to increase the readability --- classes/insane.bbclass | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) diff --git a/classes/insane.bbclass b/classes/insane.bbclass index c01d453114..2b0be932d9 100644 --- a/classes/insane.bbclass +++ b/classes/insane.bbclass @@ -225,7 +225,8 @@ def package_qa_check_rpath(file,name,d): for line in txt: if bad_dir in line: package_qa_write_error( 1, name, file, d) - bb.error("QA Issue package %s contains bad RPATH %s in file %s" % (name, line, file)) + bb.error("QA Issue package %s contains bad RPATH %s in file %s" % \ + (name, line, file)) return True def package_qa_check_devdbg(path, name,d): @@ -240,14 +241,16 @@ def package_qa_check_devdbg(path, name,d): if not "-dev" in name: if path[-3:] == ".so" and os.path.islink(path): package_qa_write_error( 0, name, path, d ) - bb.error("QA Issue: non -dev package contains symlink .so: %s path '%s'" % (name, package_qa_clean_path(path,d))) + bb.error("QA Issue: non -dev package contains symlink .so: %s path '%s'" % \ + (name, package_qa_clean_path(path,d))) if package_qa_make_fatal_error( 0, name, path, d ): sane = False if not "-dbg" in name: if '.debug' in path: package_qa_write_error( 3, name, path, d ) - bb.error("QA Issue: non debug package contains .debug directory: %s path %s" % (name, package_qa_clean_path(path,d))) + bb.error("QA Issue: non debug package contains .debug directory: %s path %s" % \ + (name, package_qa_clean_path(path,d))) if package_qa_make_fatal_error( 3, name, path, d ): sane = False @@ -301,7 +304,8 @@ def package_qa_check_desktop(path, name, d): """ import bb, os if path.endswith(".desktop"): - validate = os.path.join(bb.data.getVar('STAGING_BINDIR_NATIVE',d,True), 'desktop-file-validate') + validate = os.path.join(bb.data.getVar('STAGING_BINDIR_NATIVE',d,True), \ + 'desktop-file-validate') output = os.popen("%s %s" % (validate, path)) for l in output: bb.error(l.strip()) @@ -411,6 +415,9 @@ python do_package_qa () { if not packages: return + checks = [package_qa_check_rpath, package_qa_check_devdbg, + package_qa_check_perm, package_qa_check_arch, + package_qa_check_desktop] walk_sane = True rdepends_sane = True for package in packages.split(): @@ -420,7 +427,7 @@ python do_package_qa () { bb.note("Checking Package: %s" % package) path = "%s/install/%s" % (workdir, package) - if not package_qa_walk(path, [package_qa_check_rpath, package_qa_check_devdbg, package_qa_check_perm, package_qa_check_arch, package_qa_check_desktop], package, d): + if not package_qa_walk(path, checks, package, d): walk_sane = False if not package_qa_check_rdepends(package, workdir, d): rdepends_sane = False @@ -446,7 +453,11 @@ python do_qa_configure() { bb.note("Checking sanity of the config.log file") import os for root, dirs, files in os.walk(bb.data.getVar('WORKDIR', d, True)): + statement = "grep 'CROSS COMPILE Badness:' %s > /dev/null" % \ + os.path.join(root,"config.log") if "config.log" in files: - if os.system("grep 'CROSS COMPILE Badness:' %s > /dev/null" % (os.path.join(root,"config.log"))) == 0: - bb.fatal("This autoconf log indicates errors, it looked at host includes. Rerun configure task after fixing this. Path was '%s'" % root) + if os.system(statement) == 0: + bb.fatal("This autoconf log indicates errors, it looked at \ + host includes. Rerun configure task after fixing this. \ + Path was '%s'" % root) } -- cgit v1.2.3 From bc9fa9d1d34e5e7451cd57fa4e06ea91a7879e01 Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Wed, 26 Dec 2007 20:15:30 +0000 Subject: classes/insane.bbclass: Make .la failures non-fatal the right way, split up the .la test in two parts -We have a function that can decide if a failure is fatal, use that instead of setting sane = True. -Test for installed and workdir separately. This allows us to ignore a certain error class and complain on others. --- classes/insane.bbclass | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/classes/insane.bbclass b/classes/insane.bbclass index 2b0be932d9..1a6ea21b5e 100644 --- a/classes/insane.bbclass +++ b/classes/insane.bbclass @@ -178,7 +178,7 @@ def package_qa_make_fatal_error(error_class, name, path,d): TODO: Load a whitelist of known errors """ - if error_class == 0: + if error_class == 0 or error_class == 5: return False else: return True @@ -339,14 +339,21 @@ def package_qa_check_staged(path,d): path = os.path.join(root,file) if file[-2:] == "la": file_content = open(path).read() - if installed in file_content or workdir in file_content: - bb.error("QA issue: %s failed sanity test (reference to workdir or installed)" % file ) + if installed in file_content: + bb.error("QA issue: %s failed sanity test (installed) in path %s" % \ + (file,root)) if package_qa_make_fatal_error( 5, "staging", path, d): - sane = True + sane = False + if workdir in file_content: + bb.error("QA issue: %s failed sanity test (workdir) in path %s" % \ + (file,root)) + if package_qa_make_fatal_error( 5, "staging", path, d): + sane = False elif file[-2:] == "pc": file_content = open(path).read() if workdir in file_content: - bb.error("QA issue: %s failed sanity test (reference to workdir)" % file ) + bb.error("QA issue: %s failed sanity test (workdir) in path %s" % \ + (file,root)) if package_qa_make_fatal_error( 6, "staging", path, d): sane = False -- cgit v1.2.3 From 653b08bda5f9d81d52272cfd79645ae83febde28 Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Wed, 26 Dec 2007 20:23:09 +0000 Subject: classes/insane.bbclass: Separate the workdir test and make it fatal --- classes/insane.bbclass | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/classes/insane.bbclass b/classes/insane.bbclass index 1a6ea21b5e..36961ea811 100644 --- a/classes/insane.bbclass +++ b/classes/insane.bbclass @@ -163,9 +163,10 @@ def package_qa_get_elf(path, bits32): # 2 - package depends on debug package # 3 - non dbg contains .so # 4 - wrong architecture -# 5 - .la contains installed=yes or reference to the workdir +# 5 - .la contains installed=yes # 6 - .pc contains reference to /usr/include or workdir # 7 - the desktop file is not valid +# 8 - .la contains reference to the workdir def package_qa_clean_path(path,d): """ Remove the common prefix from the path. In this case it is the TMPDIR""" @@ -347,7 +348,7 @@ def package_qa_check_staged(path,d): if workdir in file_content: bb.error("QA issue: %s failed sanity test (workdir) in path %s" % \ (file,root)) - if package_qa_make_fatal_error( 5, "staging", path, d): + if package_qa_make_fatal_error(8, "staging", path, d): sane = False elif file[-2:] == "pc": file_content = open(path).read() -- cgit v1.2.3 From d55660f0952af6c701c3a34949252b95bb6ec9c9 Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Wed, 26 Dec 2007 20:40:14 +0000 Subject: conf/checksums.ini: Correct the URL of the Qt/X11 4.3.3 sourcecode --- conf/checksums.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conf/checksums.ini b/conf/checksums.ini index eadb6a09a9..5c6109ba17 100644 --- a/conf/checksums.ini +++ b/conf/checksums.ini @@ -9446,7 +9446,7 @@ sha256=c163e72cb002435d1d261a47acdcb23e59c10e4263f983a5f2c2d2ca40ede75b md5=8012acea71b35c18247bd92c4721589d sha256=abc37774d327a9b1d1d35e223f014c7e92168cd6c7baf66156badca68f8f1440 -[ftp://ftp.trolltech.com/pub/qt/source/qt-x11-opensource-src-4.3.3.tar.gz] +[ftp://ftp.trolltech.com/qt/source/qt-x11-opensource-src-4.3.3.tar.gz] md5=19678fe35170559cd6a6fa531c57799c sha256=89934bacc5cee5cb35a231275b0f9948f29483faf9082bed0e7255ce41751570 -- cgit v1.2.3 From 4bed3f7b179bc20bcc785080af164d75c1f44144 Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Wed, 26 Dec 2007 20:54:06 +0000 Subject: classes/insane.bbclass: Handle non-elf files gracefully (again) --- classes/insane.bbclass | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/classes/insane.bbclass b/classes/insane.bbclass index 36961ea811..ca2b33ab8b 100644 --- a/classes/insane.bbclass +++ b/classes/insane.bbclass @@ -99,11 +99,10 @@ def package_qa_get_elf(path, bits32): ELFDATA2LSB = 1 ELFDATA2MSB = 2 - def my_assert(expectation, result): + def my_assert(self, expectation, result): if not expectation == result: - #print "'%x','%x'" % (ord(expectation), ord(result)) + #print "'%x','%x' %s" % (ord(expectation), ord(result), self.name) raise Exception("This does not work as expected") - my_assert = staticmethod(my_assert) def __init__(self, name): self.name = name @@ -112,16 +111,16 @@ def package_qa_get_elf(path, bits32): self.file = file(self.name, "r") self.data = self.file.read(ELFFile.EI_NIDENT+4) - ELFFile.my_assert(len(self.data), ELFFile.EI_NIDENT+4) - ELFFile.my_assert(self.data[0], chr(0x7f) ) - ELFFile.my_assert(self.data[1], 'E') - ELFFile.my_assert(self.data[2], 'L') - ELFFile.my_assert(self.data[3], 'F') + self.my_assert(len(self.data), ELFFile.EI_NIDENT+4) + self.my_assert(self.data[0], chr(0x7f) ) + self.my_assert(self.data[1], 'E') + self.my_assert(self.data[2], 'L') + self.my_assert(self.data[3], 'F') if bits32 : - ELFFile.my_assert(self.data[ELFFile.EI_CLASS], chr(ELFFile.ELFCLASS32)) + self.my_assert(self.data[ELFFile.EI_CLASS], chr(ELFFile.ELFCLASS32)) else: - ELFFile.my_assert(self.data[ELFFile.EI_CLASS], chr(ELFFile.ELFCLASS64)) - ELFFile.my_assert(self.data[ELFFile.EI_VERSION], chr(ELFFile.EV_CURRENT) ) + self.my_assert(self.data[ELFFile.EI_CLASS], chr(ELFFile.ELFCLASS64)) + self.my_assert(self.data[ELFFile.EI_VERSION], chr(ELFFile.EV_CURRENT) ) self.sex = self.data[ELFFile.EI_DATA] if self.sex == chr(ELFFile.ELFDATANONE): @@ -285,7 +284,10 @@ def package_qa_check_arch(path,name,d): (machine, osabi, abiversion, littleendian, bits32) \ = package_qa_get_machine_dict()[target_os][target_arch] elf = package_qa_get_elf(path, bits32) - elf.open() + try: + elf.open() + except: + return True # Check the architecture and endiannes of the binary if not machine == elf.machine(): -- cgit v1.2.3 From ed5018647cb34f2fb0696a5fa54d8098bc2edf7f Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Wed, 26 Dec 2007 21:12:21 +0000 Subject: classes/insane.bbclass: Decided to not make the workdir issues fatal --- classes/insane.bbclass | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/classes/insane.bbclass b/classes/insane.bbclass index ca2b33ab8b..14acdb73fb 100644 --- a/classes/insane.bbclass +++ b/classes/insane.bbclass @@ -178,7 +178,7 @@ def package_qa_make_fatal_error(error_class, name, path,d): TODO: Load a whitelist of known errors """ - if error_class == 0 or error_class == 5: + if error_class in [0, 5, 8]: return False else: return True -- cgit v1.2.3 From d56b2bb2b2fc7c78ef3c405336187926464943ed Mon Sep 17 00:00:00 2001 From: Holger Freyther Date: Thu, 27 Dec 2007 01:53:46 +0000 Subject: Qt4/QtopiaCore4: Backport QT_LIBINFIX to add a suffix to libraries. Adapt qmake Add the 'E' suffix to QtopiaCore libraries. This allows to install both qtopiacore, qt/X11 at the same time. --- classes/qtopia4core.bbclass | 1 + packages/qmake/qmake2-native.inc | 1 + .../qmake2-native/0008-backport-qt-lib-infix.patch | 33 +++++ .../qt4/files/0008-backport-qt-lib-infix.patch | 137 +++++++++++++++++++++ packages/qt4/qt4-x11-free.inc | 1 - packages/qt4/qt_configuration.inc | 10 +- packages/qt4/qt_packaging.inc | 66 +++++----- packages/qt4/qt_staging.inc | 1 + packages/qt4/qtopia-core.inc | 4 +- packages/qt4/qtopia-core_4.3.3.bb | 3 +- 10 files changed, 215 insertions(+), 42 deletions(-) create mode 100644 packages/qmake/qmake2-native/0008-backport-qt-lib-infix.patch create mode 100644 packages/qt4/files/0008-backport-qt-lib-infix.patch diff --git a/classes/qtopia4core.bbclass b/classes/qtopia4core.bbclass index a8364d86ff..fd8939a23f 100644 --- a/classes/qtopia4core.bbclass +++ b/classes/qtopia4core.bbclass @@ -9,3 +9,4 @@ export OE_QMAKE_LIBDIR_QT = "${STAGING_LIBDIR}/qtopia" export OE_QMAKE_LIBS_QT = "qt" export OE_QMAKE_LIBS_X11 = "" export OE_QMAKE_EXTRA_MODULES = "network" +EXTRA_QMAKEVARS_PRE += " QT_LIBINFIX=E " diff --git a/packages/qmake/qmake2-native.inc b/packages/qmake/qmake2-native.inc index 058bf176f9..0a204bb535 100644 --- a/packages/qmake/qmake2-native.inc +++ b/packages/qmake/qmake2-native.inc @@ -10,6 +10,7 @@ QTVER = "qtopia-core-opensource-src-${QTVERSION}" FILESDIR += "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/qmake2-native" SRC_URI = "ftp://ftp.trolltech.com/pub/qt/source/${QTVER}.tar.gz \ file://0001-fix-mkspecs.patch;patch=1 \ + file://0008-backport-qt-lib-infix.patch;patch=1 \ file://qt-config.patch;patch=1 \ file://use-lflags-last.patch;patch=1 \ file://linux-oe-qmake.conf" diff --git a/packages/qmake/qmake2-native/0008-backport-qt-lib-infix.patch b/packages/qmake/qmake2-native/0008-backport-qt-lib-infix.patch new file mode 100644 index 0000000000..f87576a07b --- /dev/null +++ b/packages/qmake/qmake2-native/0008-backport-qt-lib-infix.patch @@ -0,0 +1,33 @@ +diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf +index 32a7fd5..48d584f 100644 +--- a/mkspecs/features/qt_functions.prf ++++ b/mkspecs/features/qt_functions.prf +@@ -28,7 +28,7 @@ defineTest(qtAddLibrary) { + INCLUDEPATH -= $$FRAMEWORK_INCLUDE + INCLUDEPATH = $$FRAMEWORK_INCLUDE $$INCLUDEPATH + } +- LINKAGE = -framework $${LIB_NAME} ++ LINKAGE = -framework $${LIB_NAME}$${QT_LIBINFIX} + } else:!qt_no_framework { #detection + for(frmwrk_dir, $$list($$QMAKE_LIBDIR_QT $$QMAKE_LIBDIR $$(DYLD_FRAMEWORK_PATH) /Library/Frameworks)) { + exists($${frmwrk_dir}/$${LIB_NAME}.framework) { +@@ -46,15 +46,15 @@ defineTest(qtAddLibrary) { + } + isEmpty(LINKAGE) { + CONFIG(debug, debug|release) { +- win32:LINKAGE = -l$${LIB_NAME}d +- mac:LINKAGE = -l$${LIB_NAME}_debug ++ win32:LINKAGE = -l$${LIB_NAME}$${QT_LIBINFIX}d ++ mac:LINKAGE = -l$${LIB_NAME}$${QT_LIBINFIX}_debug + } +- isEmpty(LINKAGE):LINKAGE = -l$${LIB_NAME} ++ isEmpty(LINKAGE):LINKAGE = -l$${LIB_NAME}$${QT_LIBINFIX} + } + !isEmpty(QMAKE_LSB) { + QMAKE_LFLAGS *= --lsb-libpath=$$$$QMAKE_LIBDIR_QT + QMAKE_LFLAGS *= -L/opt/lsb/lib +- QMAKE_LFLAGS *= --lsb-shared-libs=$${LIB_NAME} ++ QMAKE_LFLAGS *= --lsb-shared-libs=$${LIB_NAME}${QT_LIBINFIX} + } + LIBS += $$LINKAGE + export(LIBS) diff --git a/packages/qt4/files/0008-backport-qt-lib-infix.patch b/packages/qt4/files/0008-backport-qt-lib-infix.patch new file mode 100644 index 0000000000..79786e517e --- /dev/null +++ b/packages/qt4/files/0008-backport-qt-lib-infix.patch @@ -0,0 +1,137 @@ +diff --git a/configure b/configure +index c5bdc34..a52607f 100755 +--- a/configure ++++ b/configure +@@ -782,6 +782,11 @@ while [ "$#" -gt 0 ]; do + VAR=endian + VAL=`echo $1 | sed "s,^-\(.*\)-.*,\1,"` + ;; ++ -qtlibinfix) ++ VAR="qtlibinfix" ++ shift ++ VAL="$1" ++ ;; + -D?*|-D) + VAR="add_define" + if [ "$1" = "-D" ]; then +@@ -903,6 +908,9 @@ while [ "$#" -gt 0 ]; do + libdir) + QT_INSTALL_LIBS="$VAL" + ;; ++ qtlibinfix) ++ QT_LIBINFIX="$VAL" ++ ;; + translationdir) + QT_INSTALL_TRANSLATIONS="$VAL" + ;; +@@ -2606,6 +2614,8 @@ fi + -no-sse ............ Do not compile with use of SSE instructions. + -no-sse2 ........... Do not compile with use of SSE2 instructions. + ++ -qtlibinfix Renames all libQt*.so to libQt.so. ++ + -D ........ Add an explicit define to the preprocessor. + -I ........ Add an explicit include path. + -L ........ Add an explicit library path. +@@ -5273,6 +5283,8 @@ QT_MAJOR_VERSION = $QT_MAJOR_VERSION + QT_MINOR_VERSION = $QT_MINOR_VERSION + QT_PATCH_VERSION = $QT_PATCH_VERSION + ++QT_LIBINFIX = $QT_LIBINFIX ++ + EOF + if [ "$CFG_RPATH" = "yes" ]; then + echo "QMAKE_RPATHDIR += \"$QT_INSTALL_LIBS\"" >> "$QTCONFIG.tmp" +diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf +index 32a7fd5..48d584f 100644 +--- a/mkspecs/features/qt_functions.prf ++++ b/mkspecs/features/qt_functions.prf +@@ -28,7 +28,7 @@ defineTest(qtAddLibrary) { + INCLUDEPATH -= $$FRAMEWORK_INCLUDE + INCLUDEPATH = $$FRAMEWORK_INCLUDE $$INCLUDEPATH + } +- LINKAGE = -framework $${LIB_NAME} ++ LINKAGE = -framework $${LIB_NAME}$${QT_LIBINFIX} + } else:!qt_no_framework { #detection + for(frmwrk_dir, $$list($$QMAKE_LIBDIR_QT $$QMAKE_LIBDIR $$(DYLD_FRAMEWORK_PATH) /Library/Frameworks)) { + exists($${frmwrk_dir}/$${LIB_NAME}.framework) { +@@ -46,15 +46,15 @@ defineTest(qtAddLibrary) { + } + isEmpty(LINKAGE) { + CONFIG(debug, debug|release) { +- win32:LINKAGE = -l$${LIB_NAME}d +- mac:LINKAGE = -l$${LIB_NAME}_debug ++ win32:LINKAGE = -l$${LIB_NAME}$${QT_LIBINFIX}d ++ mac:LINKAGE = -l$${LIB_NAME}$${QT_LIBINFIX}_debug + } +- isEmpty(LINKAGE):LINKAGE = -l$${LIB_NAME} ++ isEmpty(LINKAGE):LINKAGE = -l$${LIB_NAME}$${QT_LIBINFIX} + } + !isEmpty(QMAKE_LSB) { + QMAKE_LFLAGS *= --lsb-libpath=$$$$QMAKE_LIBDIR_QT + QMAKE_LFLAGS *= -L/opt/lsb/lib +- QMAKE_LFLAGS *= --lsb-shared-libs=$${LIB_NAME} ++ QMAKE_LFLAGS *= --lsb-shared-libs=$${LIB_NAME}${QT_LIBINFIX} + } + LIBS += $$LINKAGE + export(LIBS) +diff --git a/src/qbase.pri b/src/qbase.pri +index 4db7e70..278e011 100644 +--- a/src/qbase.pri ++++ b/src/qbase.pri +@@ -138,7 +138,7 @@ DEFINES += QT_NO_CAST_TO_ASCII QT_ASCII_CAST_WARNINGS QT_44_API_QSQLQUERY_FINISH + contains(QT_CONFIG, qt3support):DEFINES *= QT3_SUPPORT + DEFINES *= QT_MOC_COMPAT #we don't need warnings from calling moc code in our generated code + +-TARGET = $$qtLibraryTarget($$TARGET) #do this towards the end ++TARGET = $$qtLibraryTarget($$TARGET$$QT_LIBINFIX) #do this towards the end + + moc_dir.name = moc_location + moc_dir.variable = QMAKE_MOC +diff --git a/tools/assistant/lib/lib.pro b/tools/assistant/lib/lib.pro +index c121f28..83c3ed7 100644 +--- a/tools/assistant/lib/lib.pro ++++ b/tools/assistant/lib/lib.pro +@@ -52,7 +52,7 @@ mac:!static:contains(QT_CONFIG, qt_framework) { + } + } + +-TARGET = $$qtLibraryTarget($$TARGET) #done towards the end ++TARGET = $$qtLibraryTarget($$TARGET$$QT_LIBINFIX) #done towards the end + + target.path=$$[QT_INSTALL_LIBS] + INSTALLS += target +diff --git a/tools/designer/src/components/component.pri b/tools/designer/src/components/component.pri +index 15c0cf2..78b075d 100644 +--- a/tools/designer/src/components/component.pri ++++ b/tools/designer/src/components/component.pri +@@ -1,2 +1,2 @@ + +-TARGET = $$qtLibraryTarget($$TARGET) ++TARGET = $$qtLibraryTarget($$TARGET$$QT_LIBINFIX) +diff --git a/tools/qdbus/src/src.pro b/tools/qdbus/src/src.pro +index 47ef100..0669a46 100644 +--- a/tools/qdbus/src/src.pro ++++ b/tools/qdbus/src/src.pro +@@ -70,7 +70,7 @@ mac:!static:contains(QT_CONFIG, qt_framework) { + } + } + +-TARGET = $$qtLibraryTarget($$TARGET) #done towards the end (after framework) ++TARGET = $$qtLibraryTarget($$TARGET$$QT_LIBINFIX) #done towards the end (after framework) + + # Input + +diff --git a/tools/qtestlib/src/src.pro b/tools/qtestlib/src/src.pro +index 5120a29..7d2082e 100644 +--- a/tools/qtestlib/src/src.pro ++++ b/tools/qtestlib/src/src.pro +@@ -61,7 +61,7 @@ mac:!static:contains(QT_CONFIG, qt_framework) { + } + } + +-TARGET = $$qtLibraryTarget($$TARGET) #done towards the end (after framework) ++TARGET = $$qtLibraryTarget($$TARGET$$QT_LIBINFIX) #done towards the end (after framework) + + # Input + HEADERS = qtest_global.h qtestcase.h qtestdata.h qtesteventloop.h diff --git a/packages/qt4/qt4-x11-free.inc b/packages/qt4/qt4-x11-free.inc index 75f7344e24..1647b07fd3 100644 --- a/packages/qt4/qt4-x11-free.inc +++ b/packages/qt4/qt4-x11-free.inc @@ -18,7 +18,6 @@ S = "${WORKDIR}/qt-x11-opensource-src-${PV}" QT_CONFIG_FLAGS += "-no-xinerama -no-tablet -no-xkb -no-opengl" QT_BASE_NAME = "qt4" QT_BASE_LIB = "libqt" -QT_LIBRARY_NAME = "Qt" QT_DIR_NAME = "qt4" require qt_depends.inc require qt_configuration.inc diff --git a/packages/qt4/qt_configuration.inc b/packages/qt4/qt_configuration.inc index aa4f8c6c5e..252a80a408 100644 --- a/packages/qt4/qt_configuration.inc +++ b/packages/qt4/qt_configuration.inc @@ -2,11 +2,11 @@ require qt4_arch.inc QT_ARCH := "${@qt_arch(d)}" QT_ENDIAN = "${@qt_endian(d)}" -QT_CONFIG_FLAGS = "-release -no-cups -no-accessibility -reduce-relocations \ - -shared -no-nas-sound -no-sm -no-nis \ - -qt-gif -system-libjpeg -system-libpng -system-zlib \ - -no-sql-ibase -no-sql-mysql -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2 \ - -no-pch -qdbus -stl -glib" +QT_CONFIG_FLAGS += "-release -no-cups -no-accessibility -reduce-relocations \ + -shared -no-nas-sound -no-sm -no-nis \ + -qt-gif -system-libjpeg -system-libpng -system-zlib \ + -no-sql-ibase -no-sql-mysql -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2 \ + -no-pch -qdbus -stl -glib" EXTRA_OEMAKE = "-e" diff --git a/packages/qt4/qt_packaging.inc b/packages/qt4/qt_packaging.inc index 472faa3da4..5f94cb46f5 100644 --- a/packages/qt4/qt_packaging.inc +++ b/packages/qt4/qt_packaging.inc @@ -60,56 +60,56 @@ RDEPENDS_${PN}-dev = "${DEV_PACKAGES}" RDEPENDS_${PN}-dbg = "${DBG_PACKAGES}" def qt_default_dev(name): - return """${libdir}/lib${QT_LIBRARY_NAME}%(name)s.la - ${libdir}/lib${QT_LIBRARY_NAME}%(name)s.prl - ${libdir}/lib${QT_LIBRARY_NAME}%(name)s.so + return """${libdir}/libQt%(name)s${QT_LIBINFIX}.la + ${libdir}/libQt%(name)s${QT_LIBINFIX}.prl + ${libdir}/libQt%(name)s${QT_LIBINFIX}.so ${includedir}/${QT_DIR_NAME}/Qt%(name)s* - ${libdir}/pkgconfig/${QT_LIBRARY_NAME}%(name)s.pc""" % locals() + ${libdir}/pkgconfig/Qt%(name)s${QT_LIBINFIX}.pc""" % locals() -FILES_${QT_BASE_LIB}core4 = "${libdir}/lib${QT_LIBRARY_NAME}Core.so.*" +FILES_${QT_BASE_LIB}core4 = "${libdir}/libQtCore${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}core4-dev = "${@qt_default_dev('Core')}" -FILES_${QT_BASE_LIB}core4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}Core*" -FILES_${QT_BASE_LIB}gui4 = "${libdir}/lib${QT_LIBRARY_NAME}Gui.so.*" +FILES_${QT_BASE_LIB}core4-dbg = "${libdir}/.debug/libQtCore*" +FILES_${QT_BASE_LIB}gui4 = "${libdir}/libQtGui${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}gui4-dev = "${@qt_default_dev('Gui')}" -FILES_${QT_BASE_LIB}gui4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}Gui*" -FILES_${QT_BASE_LIB}network4 = "${libdir}/lib${QT_LIBRARY_NAME}Network.so.*" +FILES_${QT_BASE_LIB}gui4-dbg = "${libdir}/.debug/libQtGui*" +FILES_${QT_BASE_LIB}network4 = "${libdir}/libQtNetwork${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}network4-dev = "${@qt_default_dev('Network')}" -FILES_${QT_BASE_LIB}network4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}Network*" -FILES_${QT_BASE_LIB}sql4 = "${libdir}/lib${QT_LIBRARY_NAME}Sql.so.*" +FILES_${QT_BASE_LIB}network4-dbg = "${libdir}/.debug/libQtNetwork${QT_LIBINFIX}*" +FILES_${QT_BASE_LIB}sql4 = "${libdir}/libQtSql${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}sql4-dev = "${@qt_default_dev('Sql')}" -FILES_${QT_BASE_LIB}sql4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}Sql*" -FILES_${QT_BASE_LIB}svg4 = "${libdir}/lib${QT_LIBRARY_NAME}Svg.so.*" +FILES_${QT_BASE_LIB}sql4-dbg = "${libdir}/.debug/libQtSql*" +FILES_${QT_BASE_LIB}svg4 = "${libdir}/libQtSvg${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}svg4-dev = "${@qt_default_dev('Svg')}" -FILES_${QT_BASE_LIB}svg4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}Svg*" -FILES_${QT_BASE_LIB}test4 = "${libdir}/lib${QT_LIBRARY_NAME}Test.so.*" +FILES_${QT_BASE_LIB}svg4-dbg = "${libdir}/.debug/libQtSvg*" +FILES_${QT_BASE_LIB}test4 = "${libdir}/libQtTest${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}test4-dev = "${@qt_default_dev('Test')}" -FILES_${QT_BASE_LIB}test4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}Test*" -FILES_${QT_BASE_LIB}xml4 = "${libdir}/lib${QT_LIBRARY_NAME}Xml.so.*" +FILES_${QT_BASE_LIB}test4-dbg = "${libdir}/.debug/libQtTest*" +FILES_${QT_BASE_LIB}xml4 = "${libdir}/libQtXml${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}xml4-dev = "${@qt_default_dev('Xml')}" -FILES_${QT_BASE_LIB}xml4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}Xml*" -FILES_${QT_BASE_LIB}designer4 = "${libdir}/lib${QT_LIBRARY_NAME}Designer.so.*" +FILES_${QT_BASE_LIB}xml4-dbg = "${libdir}/.debug/libQtXml*" +FILES_${QT_BASE_LIB}designer4 = "${libdir}/libQtDesigner${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}designer4-dev = "${@qt_default_dev('Designer')}" -FILES_${QT_BASE_LIB}designer4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}Designer*" -FILES_${QT_BASE_LIB}designercomponents4 = "${libdir}/lib${QT_LIBRARY_NAME}DesignerComponents.so.*" +FILES_${QT_BASE_LIB}designer4-dbg = "${libdir}/.debug/libQtDesigner*" +FILES_${QT_BASE_LIB}designercomponents4 = "${libdir}/libQtDesignerComponents${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}designercomponents4-dev = "${@qt_default_dev('DesignerComponents')}" -FILES_${QT_BASE_LIB}designercomponents4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}DesignerComponents*" -FILES_${QT_BASE_LIB}3support4 = "${libdir}/lib${QT_LIBRARY_NAME}3Support.so.*" +FILES_${QT_BASE_LIB}designercomponents4-dbg = "${libdir}/.debug/libQtDesignerComponents*" +FILES_${QT_BASE_LIB}3support4 = "${libdir}/libQt3Support${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}3support4-dev = "${@qt_default_dev('3Support')}" -FILES_${QT_BASE_LIB}3support4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}3Support*" -FILES_${QT_BASE_LIB}assistantclient4 = "${libdir}/lib${QT_LIBRARY_NAME}AssistantClient.so.*" +FILES_${QT_BASE_LIB}3support4-dbg = "${libdir}/.debug/libQt3Support*" +FILES_${QT_BASE_LIB}assistantclient4 = "${libdir}/libQtAssistantClient${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}assistantclient4-dev = "${@qt_default_dev('AssistantClient')} ${includedir}/${QT_DIR_NAME}/QtAssistant*" -FILES_${QT_BASE_LIB}assistantclient4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}AssistantClient*" -FILES_${QT_BASE_LIB}script4 = "${libdir}/lib${QT_LIBRARY_NAME}Script.so.*" +FILES_${QT_BASE_LIB}assistantclient4-dbg = "${libdir}/.debug/libQtAssistantClient*" +FILES_${QT_BASE_LIB}script4 = "${libdir}/libQtScript${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}script4-dev = "${@qt_default_dev('Script')}" -FILES_${QT_BASE_LIB}script4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}Script*" -FILES_${QT_BASE_LIB}dbus4 = "${libdir}/lib${QT_LIBRARY_NAME}DBus.so.*" +FILES_${QT_BASE_LIB}script4-dbg = "${libdir}/.debug/libQtScript*" +FILES_${QT_BASE_LIB}dbus4 = "${libdir}/libQtDBus${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}dbus4-dev = "${@qt_default_dev('DBus')}" -FILES_${QT_BASE_LIB}dbus4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}DBus*" -FILES_${QT_BASE_LIB}opengl4 = "${libdir}/lib${QT_LIBRARY_NAME}OpenGL.so.*" +FILES_${QT_BASE_LIB}dbus4-dbg = "${libdir}/.debug/libQtDBus*" +FILES_${QT_BASE_LIB}opengl4 = "${libdir}/libQtOpenGL${QT_LIBINFIX}.so.*" FILES_${QT_BASE_LIB}opengl4-dev = "${@qt_default_dev('OpenGL')}" -FILES_${QT_BASE_LIB}opengl4-dbg = "${libdir}/.debug/lib${QT_LIBRARY_NAME}OpenGL*" -FILES_${QT_BASE_LIB}uitools4-dev = "${libdir}/lib${QT_LIBRARY_NAME}UiTools* ${includedir}/${QT_DIR_NAME}/QtUiTools* ${libdir}/pkgconfig/${QT_LIBRARY_NAME}UiTools.pc" +FILES_${QT_BASE_LIB}opengl4-dbg = "${libdir}/.debug/libQtOpenGL*" +FILES_${QT_BASE_LIB}uitools4-dev = "${libdir}/libQtUiTools* ${includedir}/${QT_DIR_NAME}/QtUiTools* ${libdir}/pkgconfig/${QT_LIBRARY_NAME}UiTools.pc" FILES_${QT_BASE_NAME}-plugins-accessible = "${libdir}/${QT_DIR_NAME}/plugins/accessible/*.so" diff --git a/packages/qt4/qt_staging.inc b/packages/qt4/qt_staging.inc index 21f17590b5..37002ca50e 100644 --- a/packages/qt4/qt_staging.inc +++ b/packages/qt4/qt_staging.inc @@ -18,6 +18,7 @@ do_stage() { for i in ${STAGE_TEMP}/${libdir}/*.la do + cp -fpPR $i ${STAGING_LIBDIR}/${QT_DIR_NAME}/ oe_libinstall -C ${STAGE_TEMP}/${libdir} -so $(basename $i .la) ${STAGING_LIBDIR}/${QT_DIR_NAME} done diff --git a/packages/qt4/qtopia-core.inc b/packages/qt4/qtopia-core.inc index 06837787cf..9e4eebc92e 100644 --- a/packages/qt4/qtopia-core.inc +++ b/packages/qt4/qtopia-core.inc @@ -15,12 +15,12 @@ S = "${WORKDIR}/qtopia-core-opensource-src-${PV}" QT_CONFIG_FLAGS += " \ - -nomake demos -nomake examples -nomake tools \ + -nomake demos -nomake examples -nomake tools -qtlibinfix E\ -qt-mouse-tslib -qt-gfx-transformed -embedded ${QT_ARCH}" QT_BASE_NAME = "qtopiacore" QT_BASE_LIB = "libqtopiacore" -QT_LIBRARY_NAME = "Qt" QT_DIR_NAME = "qtopia" +QT_LIBINFIX="E" require qt_depends.inc require qt_configuration.inc require qt_packaging.inc diff --git a/packages/qt4/qtopia-core_4.3.3.bb b/packages/qt4/qtopia-core_4.3.3.bb index b903e2b06a..9dad97f49a 100644 --- a/packages/qt4/qtopia-core_4.3.3.bb +++ b/packages/qt4/qtopia-core_4.3.3.bb @@ -1,4 +1,5 @@ require qtopia-core.inc SRC_URI += " \ file://0006-freetype-host-includes.patch;patch=1 \ - file://0007-openssl-host-includes.patch;patch=1 " + file://0007-openssl-host-includes.patch;patch=1 \ + file://0008-backport-qt-lib-infix.patch;patch=1" -- cgit v1.2.3