diff options
Diffstat (limited to 'recipes/qt')
-rw-r--r-- | recipes/qt/qt-x11-free-common.inc | 87 | ||||
-rw-r--r-- | recipes/qt/qt-x11-free-native_3.3.5.bb | 61 | ||||
-rw-r--r-- | recipes/qt/qt-x11-free/configure.patch | 51 | ||||
-rw-r--r-- | recipes/qt/qt-x11-free/gcc4_1-HACK.patch | 28 | ||||
-rw-r--r-- | recipes/qt/qt-x11-free/no-examples.patch | 16 | ||||
-rw-r--r-- | recipes/qt/qt-x11-free_3.3.6.bb | 10 | ||||
-rw-r--r-- | recipes/qt/qt-x11-free_3.3.7.bb | 10 |
7 files changed, 263 insertions, 0 deletions
diff --git a/recipes/qt/qt-x11-free-common.inc b/recipes/qt/qt-x11-free-common.inc new file mode 100644 index 0000000000..745c7fab3c --- /dev/null +++ b/recipes/qt/qt-x11-free-common.inc @@ -0,0 +1,87 @@ +DESCRIPTION = "Qt/X11 Version ${PV} is a full fledged cross-platform application framework" +SECTION = "x11/libs" +PRIORITY = "optional" +LICENSE = "GPL QPL" +HOMEPAGE = "http://www.trolltech.com" + +S = "${WORKDIR}/qt-x11-free-${PV}" + +inherit qmake_base qt3x11 + +export QTDIR = "${S}" +STAGING_QT_DIR = "${STAGING_DIR_HOST}/qt3" +ARCH_i686 = "x86" +EXTRA_OEMAKE = "-e" + +QT_CONFIG_FLAGS = "-release -shared -qt-zlib -no-nas-sound -no-sm -qt-libpng -no-gif -no-xinerama \ + -no-tablet -no-xkb -no-dlopen-opengl -no-nis -no-cups -thread -plugin-sql-mysql -verbose" + +EXTRA_ENV = 'QMAKE="${STAGING_BINDIR_NATIVE}/qmake -after INCPATH+=${STAGING_INCDIR} \ + INCPATH+=${STAGING_INCDIR}/freetype2 LIBS+=-L${STAGING_LIBDIR}" \ + QMAKESPEC="${QMAKESPEC}" LINK="${CXX} -Wl,-rpath-link,${STAGING_LIBDIR}" \ + AR="${TARGET_PREFIX}ar cqs" \ + MOC="${STAGING_BINDIR_NATIVE}/moc3" UIC="${STAGING_BINDIR_NATIVE}/uic3" MAKE="make -e"' + +do_configure() { + echo "yes" | ./configure -prefix ${prefix} ${QT_CONFIG_FLAGS} -fast \ + -L${STAGING_LIBDIR} -I${STAGING_INCDIR} -I${STAGING_INCDIR}/freetype2 -I${STAGING_INCDIR}/mysql + # force regenerate + rm -f src/qtmain.pro + cat Makefile >makefile + find . -name "Makefile"|xargs rm -f + (cd src && qmake -spec ${QMAKESPEC} ) + (cd plugins/src && qmake -spec ${QMAKESPEC} ) + (cd tools && qmake -spec ${QMAKESPEC} ) + (cd tools/qvfb && qmake -spec ${QMAKESPEC} ) +} + +do_compile() { + unset CFLAGS + unset CXXFLAGS + oe_runmake -C src ${EXTRA_ENV} + oe_runmake -C plugins/src ${EXTRA_ENV} + oe_runmake -C tools ${EXTRA_ENV} + oe_runmake -C tools/qvfb ${EXTRA_ENV} +} + +do_stage() { + install -d ${STAGING_QT_DIR}/bin + ln -sf ${STAGING_BINDIR_NATIVE}/moc3 ${STAGING_QT_DIR}/bin/moc + ln -sf ${STAGING_BINDIR_NATIVE}/uic3 ${STAGING_QT_DIR}/bin/uic + ln -sf ${STAGING_BINDIR_NATIVE}/qmake ${STAGING_QT_DIR}/bin/qmake + install -d ${STAGING_QT_DIR}/lib + oe_soinstall lib/libqt-mt.so.${PV} ${STAGING_QT_DIR}/lib + install -d ${STAGING_QT_DIR}/include/private + for f in include/*.h + do + install -m 0644 $f ${STAGING_QT_DIR}/include/ + done + for f in include/private/*.h + do + install -m 0644 $f ${STAGING_QT_DIR}/include/private + done + for f in lib/*.prl + do + install -m 0644 $f ${STAGING_QT_DIR}/lib + done +} + +do_install() { + install -d ${D}${libdir}/ + oe_soinstall lib/libqt-mt.so.${PV} ${D}${libdir}/ + install -d ${D}${bindir}/ + install -m 0755 bin/designer bin/assistant tools/qvfb/qvfb bin/qtconfig ${D}${bindir} + install -d ${D}${prefix}/plugins/ + cp -pPR plugins/imageformats plugins/sqldrivers plugins/designer ${D}${prefix}/plugins/ +} + +PACKAGES =+ "qt-x11-plugins-imageformats qt-x11-plugins-sqldrivers qt-x11-plugins-designer \ + qt-x11-designer qt-x11-assistant qt-x11-qvfb qt-x11-qtconfig" +FILES_qt-x11-plugins-imageformats = "${prefix}/plugins/imageformats/*.so" +FILES_qt-x11-plugins-sqldrivers = "${prefix}/plugins/sqldrivers/*.so" +FILES_qt-x11-plugins-designer = "${prefix}/plugins/designer/*.so" +FILES_qt-x11-designer = "${bindir}/designer" +FILES_qt-x11-assistant = "${bindir}/assistant" +FILES_qt-x11-qvfb = "${bindir}/qvfb" +FILES_qt-x11-qtconfig = "${bindir}/qtconfig" +FILES_qt-x11-dbg += "${prefix}/plugins/*/.debug ${D}/qt-x11-plugins-debug" diff --git a/recipes/qt/qt-x11-free-native_3.3.5.bb b/recipes/qt/qt-x11-free-native_3.3.5.bb new file mode 100644 index 0000000000..f23d874648 --- /dev/null +++ b/recipes/qt/qt-x11-free-native_3.3.5.bb @@ -0,0 +1,61 @@ +DESCRIPTION = "Qt/X11 Version ${PV}" +SECTION = "libs" +PRIORITY = "optional" +LICENSE = "GPL QPL" +DEPENDS = "qmake-native x11-native" +HOMEPAGE = "http://www.trolltech.com" + +FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/qt-x11-free" + +SRC_URI = "ftp://ftp.trolltech.com/qt/source/qt-x11-free-${PV}.tar.bz2 \ + file://no-examples.patch;patch=1" +S = "${WORKDIR}/qt-x11-free-${PV}" + +# +# FIXME - This should be updated to use OE's qmake_base.oeclass +# or the full qmake.oeclass. +# + +export QTDIR = "${S}" +export SYSCONF_CXX = "${CCACHE} g++" +export SYSCONF_CC = "${CCACHE} gcc" +export SYSCONF_LINK = "${CCACHE} g++" +THIS_QMAKESPEC = "${STAGING_DATADIR}/qmake/${TARGET_OS}-oe-g++" +export QMAKESPEC = "" +ARCH_i686 = "x86" + +QT_CONFIG_FLAGS = "-release -shared -qt-zlib -no-nas-sound -no-sm -qt-libpng -qt-gif -no-xshape -no-xinerama -no-xcursor -no-xrandr \ + -no-xrender -no-xft -no-tablet -no-xkb -no-dlopen-opengl -no-freetype -no-nis -no-cups -stl -thread -no-exceptions" + + +inherit native + +do_configure() { + echo "yes" | ./configure -prefix ${prefix} ${QT_CONFIG_FLAGS} -fast +} + +do_compile() { + LD_LIBRARY_PATH=${S}/lib oe_runmake \ + QMAKE="${STAGING_BINDIR_NATIVE}/qmake -after INCLUDEPATH+=${STAGING_INCDIR} LIBS+=-I${STAGING_LIBDIR}" \ + QMAKESPEC="${THIS_QMAKESPEC}" +} + +do_stage() { + install -d ${STAGING_DIR_HOST}/qt3/lib + oe_soinstall lib/libqt-mt.so.${PV} ${STAGING_DIR_HOST}/qt3/lib + install -d ${STAGING_DIR_HOST}/qt3/include/private + for f in include/*.h + do + install -m 0644 $f ${STAGING_DIR_HOST}/qt3/include/ + done + for f in include/private/*.h + do + install -m 0644 $f ${STAGING_DIR_HOST}/qt3/include/private + done +} + +do_install() { + install -d ${D}${libdir}/ + oe_soinstall lib/libqt-mt.so.${PV} ${D}${libdir}/ +} + diff --git a/recipes/qt/qt-x11-free/configure.patch b/recipes/qt/qt-x11-free/configure.patch new file mode 100644 index 0000000000..9d6c1e8ef7 --- /dev/null +++ b/recipes/qt/qt-x11-free/configure.patch @@ -0,0 +1,51 @@ + +# +# Patch managed by http://www.holgerschurig.de/patcher.html +# + +--- qt-x11-free-3.3.2/configure~configure.patch ++++ qt-x11-free-3.3.2/configure +@@ -1754,21 +1754,14 @@ + CFG_FREETYPE=yes + fi + fi +- # add freetype2 include path +- if [ "$CFG_FREETYPE" = "yes" ] && [ -f $outpath/config.tests/x11/xft.inc ];then +- QMAKE_VARS="$QMAKE_VARS \"INCLUDEPATH+=`cat $outpath/config.tests/x11/xft.inc`\"" +- fi +- rm -f $outpath/config.tests/x11/xft.inc + # add Xft specific libraries + if [ "$CFG_FREETYPE" = "yes" ] && [ -f $outpath/config.tests/x11/xft.lib ]; then + QMAKE_VARS="$QMAKE_VARS \"QMAKE_LIBS_X11=`cat $outpath/config.tests/x11/xft.lib` \$\$QMAKE_LIBS_X11\"" + fi +- rm -f $outpath/config.tests/x11/xft.lib + # add Xft specific config options + if [ "$CFG_FREETYPE" = "yes" ] && [ -f $outpath/config.tests/x11/xft.cfg ]; then + QMAKE_CONFIG="$QMAKE_CONFIG `cat $outpath/config.tests/x11/xft.cfg`" + fi +- rm -f $outpath/config.tests/x11/xft.cfg + # auto-detect Session Management support + if [ "$CFG_SM" = "auto" ]; then + if $x11tests/sm.test $XQMAKESPEC $OPT_VERBOSE $L_FLAGS $I_FLAGS; then +@@ -2553,12 +2546,6 @@ + (cd $outpath/qmake; $MAKE || (echo "qmake failed to build. Aborting." && exit 2)) || exit 2 + fi + +-# clean up temporary qconfig.h and qmodules.h +-rm -f $outpath/include/qmake/qconfig.h +-rm -f $outpath/include/qmake/qmodules.h +-rmdir $outpath/include/qmake +- +- + #------------------------------------------------------------------------------- + # tests that need qmake + #------------------------------------------------------------------------------- +@@ -3605,7 +3592,7 @@ + + EOF + else +- EXEC="$outpath/bin/qmake $QMAKE_SWITCHES $QMAKE_SPEC_ARGS -o $OUTDIR $a" ++ EXEC="$outpath/bin/qmake $QMAKE_SWITCHES $QMAKE_SPEC_ARGS -o $OUTDIR $a $OE_EXTRA_QMAKE" + if [ "$OPT_VERBOSE" = "yes" ]; then + echo " (`basename $SPEC`)" + if echo '\c' | grep '\c' >/dev/null; then diff --git a/recipes/qt/qt-x11-free/gcc4_1-HACK.patch b/recipes/qt/qt-x11-free/gcc4_1-HACK.patch new file mode 100644 index 0000000000..818bced4ee --- /dev/null +++ b/recipes/qt/qt-x11-free/gcc4_1-HACK.patch @@ -0,0 +1,28 @@ + +# +# Patch managed by http://www.holgerschurig.de/patcher.html +# + +--- qt-x11-free-3.3.6/src/tools/qstring.h~gcc4_1.patch ++++ qt-x11-free-3.3.6/src/tools/qstring.h +@@ -60,7 +60,7 @@ + #endif + #endif + +- ++#define Q_NO_PACKED_REFERENCE + /***************************************************************************** + QString class + *****************************************************************************/ +@@ -194,9 +194,9 @@ + char latin1() const { return ucs > 0xff ? 0 : (char) ucs; } + ushort unicode() const { return ucs; } + #ifdef Q_NO_PACKED_REFERENCE +- ushort &unicode() { return *(&ucs); } ++ ushort &unicode() { return *((ushort*)&ucs); } + #else +- ushort &unicode() { return ucs; } ++ ushort &unicode() { return (ushort)ucs; } + #endif + #ifndef QT_NO_CAST_ASCII + // like all ifdef'd code this is undocumented diff --git a/recipes/qt/qt-x11-free/no-examples.patch b/recipes/qt/qt-x11-free/no-examples.patch new file mode 100644 index 0000000000..b0ee6374ef --- /dev/null +++ b/recipes/qt/qt-x11-free/no-examples.patch @@ -0,0 +1,16 @@ + +# +# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher +# + +--- qt-embedded-free-3.3.2/Makefile~no-examples 2003-08-11 16:37:25.000000000 +0200 ++++ qt-embedded-free-3.3.2/Makefile 2004-05-11 15:53:53.000000000 +0200 +@@ -11,7 +11,7 @@ + install: FORCE + @$(MAKE) qt.install + +-all: symlinks src-qmake src-moc sub-src sub-tools sub-tutorial sub-examples ++all: symlinks src-qmake src-moc sub-src sub-tools + @echo + @echo "The Qt library is now built in ./lib" + @echo "The Qt examples are built in the directories in ./examples" diff --git a/recipes/qt/qt-x11-free_3.3.6.bb b/recipes/qt/qt-x11-free_3.3.6.bb new file mode 100644 index 0000000000..719215c5d2 --- /dev/null +++ b/recipes/qt/qt-x11-free_3.3.6.bb @@ -0,0 +1,10 @@ +DEPENDS = "uicmoc3-native freetype virtual/libx11 xft libxext libxrender libxrandr libxcursor mysql mesa" +PROVIDES = "qt3x11" +PR = "r2" + +SRC_URI = "ftp://ftp.trolltech.com/qt/source/qt-x11-free-${PV}.tar.bz2 \ + file://configure.patch;patch=1 \ + file://no-examples.patch;patch=1 \ + file://gcc4_1-HACK.patch;patch=1" + +require qt-x11-free-common.inc diff --git a/recipes/qt/qt-x11-free_3.3.7.bb b/recipes/qt/qt-x11-free_3.3.7.bb new file mode 100644 index 0000000000..7e430c8024 --- /dev/null +++ b/recipes/qt/qt-x11-free_3.3.7.bb @@ -0,0 +1,10 @@ +DEPENDS = "uicmoc3-native freetype virtual/libx11 libxmu xft libxext libxrender libxrandr libxcursor mysql mesa" +PROVIDES = "qt3x11" +PR = "r2" + +SRC_URI = "ftp://ftp.trolltech.com/qt/source/qt-x11-free-${PV}.tar.bz2 \ + file://configure.patch;patch=1 \ + file://no-examples.patch;patch=1 \ + file://gcc4_1-HACK.patch;patch=1" + +require qt-x11-free-common.inc |