diff options
author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2011-12-08 19:44:27 +0000 |
---|---|---|
committer | Paul Eggleton <paul.eggleton@linux.intel.com> | 2011-12-08 19:53:51 +0000 |
commit | 016ed1af2a0986cd90bdd073091537d954588813 (patch) | |
tree | 62732ca2b3c501c22ad45418d1261e290f5789a0 | |
parent | 1d56dbbd7cd308454f24fc54463e0f0cd536ea07 (diff) | |
download | meta-qt3-016ed1af2a0986cd90bdd073091537d954588813.tar.gz |
qt3: fix interaction between qt3 and qt4 in the sysroot
* Add a -qt3 suffix to all installed utilities so that they do not clash
with their qt4 counterparts. This fixes errors mentioning
QtCore/QVariant, Q3Support etc. which occur due to the Qt4 version of
uic/moc being used that output source files containing references to
Qt4 headers. qt3x11.bbclass has been updated to point to these renamed
executables so any recipes using this class should be unaffected by
this renaming.
* Install libraries using the standard oe_libinstall method
Fixes [YOCTO #1810].
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
-rw-r--r-- | classes/qt3x11.bbclass | 5 | ||||
-rw-r--r-- | recipes-qt3/qt3/qt-x11-free-common.inc | 18 | ||||
-rw-r--r-- | recipes-qt3/qt3/qt-x11-free-native_3.3.5.bb | 12 |
3 files changed, 16 insertions, 19 deletions
diff --git a/classes/qt3x11.bbclass b/classes/qt3x11.bbclass index 5408b7f..79664f2 100644 --- a/classes/qt3x11.bbclass +++ b/classes/qt3x11.bbclass | |||
@@ -4,8 +4,9 @@ EXTRA_QMAKEVARS_POST += "CONFIG+=thread" | |||
4 | # override variables set by qmake_base to compile Qt/X11 apps | 4 | # override variables set by qmake_base to compile Qt/X11 apps |
5 | # | 5 | # |
6 | export QTDIR = "${STAGING_DIR_HOST}/qt3" | 6 | export QTDIR = "${STAGING_DIR_HOST}/qt3" |
7 | export OE_QMAKE_UIC = "${STAGING_BINDIR_NATIVE}/uic3" | 7 | export OE_QMAKE_QMAKE = "${STAGING_BINDIR_NATIVE}/qmake-qt3" |
8 | export OE_QMAKE_MOC = "${STAGING_BINDIR_NATIVE}/moc3" | 8 | export OE_QMAKE_UIC = "${STAGING_BINDIR_NATIVE}/uic-qt3" |
9 | export OE_QMAKE_MOC = "${STAGING_BINDIR_NATIVE}/moc-qt3" | ||
9 | export OE_QMAKE_CXXFLAGS = "${CXXFLAGS} -DQT_NO_XIM" | 10 | export OE_QMAKE_CXXFLAGS = "${CXXFLAGS} -DQT_NO_XIM" |
10 | export OE_QMAKE_INCDIR_QT = "${QTDIR}/include" | 11 | export OE_QMAKE_INCDIR_QT = "${QTDIR}/include" |
11 | export OE_QMAKE_LIBDIR_QT = "${QTDIR}/lib" | 12 | export OE_QMAKE_LIBDIR_QT = "${QTDIR}/lib" |
diff --git a/recipes-qt3/qt3/qt-x11-free-common.inc b/recipes-qt3/qt3/qt-x11-free-common.inc index 3bd4e4a..4c16b73 100644 --- a/recipes-qt3/qt3/qt-x11-free-common.inc +++ b/recipes-qt3/qt3/qt-x11-free-common.inc | |||
@@ -2,7 +2,7 @@ DESCRIPTION = "Qt/X11 Version ${PV} is a full fledged cross-platform application | |||
2 | SECTION = "x11/libs" | 2 | SECTION = "x11/libs" |
3 | LICENSE = "GPL | QPL" | 3 | LICENSE = "GPL | QPL" |
4 | HOMEPAGE = "http://www.trolltech.com" | 4 | HOMEPAGE = "http://www.trolltech.com" |
5 | INC_PR = "r4" | 5 | INC_PR = "r5" |
6 | 6 | ||
7 | S = "${WORKDIR}/qt-x11-free-${PV}" | 7 | S = "${WORKDIR}/qt-x11-free-${PV}" |
8 | 8 | ||
@@ -16,11 +16,11 @@ EXTRA_OEMAKE = "-e" | |||
16 | QT_CONFIG_FLAGS = "-release -shared -qt-zlib -no-nas-sound -no-sm -qt-libpng -no-gif -no-xinerama \ | 16 | QT_CONFIG_FLAGS = "-release -shared -qt-zlib -no-nas-sound -no-sm -qt-libpng -no-gif -no-xinerama \ |
17 | -no-tablet -no-xkb -no-dlopen-opengl -no-nis -no-cups -thread -verbose" | 17 | -no-tablet -no-xkb -no-dlopen-opengl -no-nis -no-cups -thread -verbose" |
18 | 18 | ||
19 | EXTRA_ENV = 'QMAKE="${STAGING_BINDIR_NATIVE}/qmake -after INCPATH+=${STAGING_INCDIR} \ | 19 | EXTRA_ENV = 'QMAKE="${OE_QMAKE_QMAKE} -after INCPATH+=${STAGING_INCDIR} \ |
20 | INCPATH+=${STAGING_INCDIR}/freetype2 LIBS+=-L${STAGING_LIBDIR}" \ | 20 | INCPATH+=${STAGING_INCDIR}/freetype2 LIBS+=-L${STAGING_LIBDIR}" \ |
21 | QMAKESPEC="${QMAKESPEC}" LINK="${CXX} -Wl,-rpath-link,${STAGING_LIBDIR}" \ | 21 | QMAKESPEC="${QMAKESPEC}" LINK="${CXX} -Wl,-rpath-link,${STAGING_LIBDIR}" \ |
22 | AR="${TARGET_PREFIX}ar cqs" \ | 22 | AR="${TARGET_PREFIX}ar cqs" \ |
23 | MOC="${STAGING_BINDIR_NATIVE}/moc3" UIC="${STAGING_BINDIR_NATIVE}/uic3" MAKE="make -e"' | 23 | MOC="${OE_QMAKE_MOC}" UIC="${OE_QMAKE_UIC}" MAKE="make -e"' |
24 | 24 | ||
25 | do_configure() { | 25 | do_configure() { |
26 | if [ ! -L ${QMAKE_MKSPEC_PATH}/${TARGET_OS}-oe-g++ ]; then | 26 | if [ ! -L ${QMAKE_MKSPEC_PATH}/${TARGET_OS}-oe-g++ ]; then |
@@ -34,18 +34,18 @@ do_configure() { | |||
34 | rm -f src/qtmain.pro | 34 | rm -f src/qtmain.pro |
35 | cat Makefile >makefile | 35 | cat Makefile >makefile |
36 | find . -name "Makefile"|xargs rm -f | 36 | find . -name "Makefile"|xargs rm -f |
37 | (cd src && qmake -spec ${QMAKESPEC} ) | 37 | (cd src && ${OE_QMAKE_QMAKE} -spec ${QMAKESPEC} ) |
38 | (cd plugins/src && qmake -spec ${QMAKESPEC} ) | 38 | (cd plugins/src && ${OE_QMAKE_QMAKE} -spec ${QMAKESPEC} ) |
39 | (cd tools && qmake -spec ${QMAKESPEC} ) | 39 | (cd tools && ${OE_QMAKE_QMAKE} -spec ${QMAKESPEC} ) |
40 | (cd tools/qvfb && qmake -spec ${QMAKESPEC} ) | 40 | (cd tools/qvfb && ${OE_QMAKE_QMAKE} -spec ${QMAKESPEC} ) |
41 | } | 41 | } |
42 | 42 | ||
43 | do_compile() { | 43 | do_compile() { |
44 | unset CFLAGS | 44 | unset CFLAGS |
45 | unset CXXFLAGS | 45 | unset CXXFLAGS |
46 | 46 | ||
47 | install -m 0755 ${STAGING_BINDIR_NATIVE}/moc3 ${S}/bin/moc | 47 | install -m 0755 ${OE_QMAKE_MOC} ${S}/bin/moc |
48 | install -m 0755 ${STAGING_BINDIR_NATIVE}/uic3 ${S}/bin/uic | 48 | install -m 0755 ${OE_QMAKE_UIC} ${S}/bin/uic |
49 | 49 | ||
50 | oe_runmake -C src ${EXTRA_ENV} | 50 | oe_runmake -C src ${EXTRA_ENV} |
51 | oe_runmake -C plugins/src ${EXTRA_ENV} | 51 | oe_runmake -C plugins/src ${EXTRA_ENV} |
diff --git a/recipes-qt3/qt3/qt-x11-free-native_3.3.5.bb b/recipes-qt3/qt3/qt-x11-free-native_3.3.5.bb index 48fc3a0..d70c373 100644 --- a/recipes-qt3/qt3/qt-x11-free-native_3.3.5.bb +++ b/recipes-qt3/qt3/qt-x11-free-native_3.3.5.bb | |||
@@ -3,7 +3,7 @@ SECTION = "libs" | |||
3 | LICENSE = "GPL | QPL" | 3 | LICENSE = "GPL | QPL" |
4 | DEPENDS = "xmu-native" | 4 | DEPENDS = "xmu-native" |
5 | HOMEPAGE = "http://www.trolltech.com" | 5 | HOMEPAGE = "http://www.trolltech.com" |
6 | PR = "r2" | 6 | PR = "r3" |
7 | 7 | ||
8 | FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/qt-x11-free" | 8 | FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/qt-x11-free" |
9 | 9 | ||
@@ -48,9 +48,9 @@ do_compile() { | |||
48 | 48 | ||
49 | do_install() { | 49 | do_install() { |
50 | install -d ${D}${bindir}/ | 50 | install -d ${D}${bindir}/ |
51 | install -m 0755 bin/qmake ${D}${bindir}/qmake3 | 51 | install -m 0755 bin/qmake ${D}${bindir}/qmake-qt3 |
52 | for i in moc uic lrelease lupdate; do | 52 | for i in moc uic lrelease lupdate; do |
53 | install -m 0755 bin/${i} ${D}${bindir}/${i}3 | 53 | install -m 0755 bin/${i} ${D}${bindir}/${i}-qt3 |
54 | done | 54 | done |
55 | 55 | ||
56 | install -d ${D}${datadir}/qt3/ | 56 | install -d ${D}${datadir}/qt3/ |
@@ -58,11 +58,7 @@ do_install() { | |||
58 | ln -sf linux-g++ ${D}${datadir}/qt3/mkspecs/${TARGET_OS}-oe-g++ | 58 | ln -sf linux-g++ ${D}${datadir}/qt3/mkspecs/${TARGET_OS}-oe-g++ |
59 | ln -sf qt3/mkspecs ${D}${datadir}/qmake | 59 | ln -sf qt3/mkspecs ${D}${datadir}/qmake |
60 | install -d ${D}${libdir}/ | 60 | install -d ${D}${libdir}/ |
61 | oe_soinstall lib/libqt-mt.so.${PV} ${D}${libdir}/ | 61 | oe_libinstall -so -C lib libqt-mt ${D}${libdir} |
62 | cd ${D}${bindir} | ||
63 | for i in qmake moc uic lrelease lupdate;do | ||
64 | ln -s ${i}3 ${i} | ||
65 | done | ||
66 | } | 62 | } |
67 | 63 | ||
68 | 64 | ||