QT: new package introduction (v4.7.0-beta1)
authorBenjamin Zores <ben@geexbox.org>
Sat Jun 26 20:58:11 2010 +0200 (22 months ago)
changeset 8383eda015021ce7
parent 8382 28c052b4a44c
child 8384 2bce99294cd1
QT: new package introduction (v4.7.0-beta1)
packages/qt/build
packages/qt/install
packages/qt/patches/01_cross-arch.diff
packages/qt/patches/02_neon.diff
packages/qt/unpack
packages/qt/url
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/packages/qt/build	Sat Jun 26 20:58:11 2010 +0200
     1.3 @@ -0,0 +1,101 @@
     1.4 +#!/bin/sh
     1.5 +
     1.6 +. config/options
     1.7 +
     1.8 +require_cxx $1
     1.9 +
    1.10 +$SCRIPTS/build freetype
    1.11 +$SCRIPTS/build jpeg
    1.12 +$SCRIPTS/build libpng
    1.13 +$SCRIPTS/build tiff
    1.14 +$SCRIPTS/build zlib
    1.15 +$SCRIPTS/build dbus
    1.16 +$SCRIPTS/build GLib
    1.17 +$SCRIPTS/build sqlite
    1.18 +$SCRIPTS/build freetype
    1.19 +$SCRIPTS/build fontconfig
    1.20 +
    1.21 +[ "$PULSEAUDIO" = yes ] && $SCRIPTS/build pulseaudio
    1.22 +[ "$GSTREAMER" = yes ] && $SCRIPTS/build GStreamer
    1.23 +
    1.24 +# architecture specific options
    1.25 +case "$TARGET_ARCH" in
    1.26 +  i386|x86_64)
    1.27 +    CROSS_ARCH=x86
    1.28 +    CROSS_ENDIAN="-little-endian"
    1.29 +    CROSS_GL="-opengl"
    1.30 +    CROSS_VG="-no-openvg"
    1.31 +    ;;
    1.32 +
    1.33 +  powerpc|powerpc64)
    1.34 +    CROSS_ARCH=powerpc
    1.35 +    CROSS_ENDIAN="-big-endian"
    1.36 +    CROSS_GL="-opengl"
    1.37 +    CROSS_VG="-no-openvg"
    1.38 +    ;;
    1.39 +
    1.40 +  arm)
    1.41 +    CROSS_ARCH=arm
    1.42 +    CROSS_ENDIAN="-little-endian"
    1.43 +    CROSS_GL="-no-opengl"
    1.44 +    CROSS_VG="-no-openvg"
    1.45 +    ;;
    1.46 +esac
    1.47 +
    1.48 +if [ "$WEBKIT" = yes ]; then
    1.49 +    CFG_WEBKIT="-webkit"
    1.50 +    CFG_JS="-javascript-jit"
    1.51 +else
    1.52 +    CFG_WEBKIT="-no-webkit"
    1.53 +    CFG_JS="-no-javascript-jit"
    1.54 +fi
    1.55 +
    1.56 +cd $BUILD/$1*
    1.57 +
    1.58 +# unset flags, QT does it by itself
    1.59 +unset CC CXX AR OBJCOPY STRIP CFLAGS CXXFLAGS CPPFLAGS LDFLAGS
    1.60 +
    1.61 +# force our pkg-config usage
    1.62 +export QT_FORCE_PKGCONFIG=yes
    1.63 +
    1.64 +yes | ./configure \
    1.65 +            -opensource \
    1.66 +            -release \
    1.67 +            -prefix         /usr \
    1.68 +            -sysconfdir     /etc \
    1.69 +            -datadir        /usr/share/qt4 \
    1.70 +            -plugindir      /usr/share/qt4/translations \
    1.71 +            -translationdir /usr/lib/qt4/plugins \
    1.72 +            -crossarch $CROSS_ARCH \
    1.73 +            $CROSS_ENDIAN \
    1.74 +            -platform linux-g++ \
    1.75 +            -xplatform linux-g++-geexbox \
    1.76 +            -shared \
    1.77 +            -no-qt3support \
    1.78 +            $CROSS_GL \
    1.79 +            $CROSS_VG \
    1.80 +            $CFG_WEBKIT \
    1.81 +            $CFG_JS \
    1.82 +            -declarative \
    1.83 +            -no-openssl \
    1.84 +            -no-nis \
    1.85 +            -no-cups \
    1.86 +            -make libs \
    1.87 +            -make tools \
    1.88 +            -nomake examples \
    1.89 +            -nomake demos \
    1.90 +            -nomake docs \
    1.91 +            -v
    1.92 +
    1.93 +./bin/qmake
    1.94 +make
    1.95 +
    1.96 +make_install
    1.97 +
    1.98 +# discard native system includes
    1.99 +sed -i "s%-I/usr/include%%g" .install/usr/lib/*.la
   1.100 +sed -i "s%-L/usr/lib%%g"     .install/usr/lib/*.la
   1.101 +sed -i "s%-I/usr/include%%g" .install/usr/lib/*.prl
   1.102 +sed -i "s%-L/usr/lib%%g"     .install/usr/lib/*.prl
   1.103 +sed -i "s%-I/usr/include%%g" .install/usr/lib/pkgconfig/*.pc
   1.104 +sed -i "s%-L/usr/lib%%g"     .install/usr/lib/pkgconfig/*.pc
     2.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.2 +++ b/packages/qt/install	Sat Jun 26 20:58:11 2010 +0200
     2.3 @@ -0,0 +1,22 @@
     2.4 +#!/bin/sh
     2.5 +
     2.6 +. config/options
     2.7 +
     2.8 +$SCRIPTS/install freetype
     2.9 +$SCRIPTS/install tiff
    2.10 +$SCRIPTS/install zlib
    2.11 +$SCRIPTS/install dbus
    2.12 +$SCRIPTS/install GLib
    2.13 +$SCRIPTS/install sqlite
    2.14 +$SCRIPTS/install freetype
    2.15 +$SCRIPTS/install fontconfig
    2.16 +
    2.17 +cd $BUILD/$1*
    2.18 +
    2.19 +do_install usr/bin/qml
    2.20 +do_install usr/imports/*
    2.21 +
    2.22 +do_install usr/lib/libphonon.so*
    2.23 +do_install usr/lib/libQt*.so*
    2.24 +
    2.25 +do_install usr/share/qt4/translations/*
     3.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     3.2 +++ b/packages/qt/patches/01_cross-arch.diff	Sat Jun 26 20:58:11 2010 +0200
     3.3 @@ -0,0 +1,31 @@
     3.4 +diff -Naur qt-everywhere-opensource-src-4.7.0-beta1.orig/configure qt-everywhere-opensource-src-4.7.0-beta1/configure
     3.5 +--- qt-everywhere-opensource-src-4.7.0-beta1.orig/configure	2010-06-26 00:12:42.504688041 +0200
     3.6 ++++ qt-everywhere-opensource-src-4.7.0-beta1/configure	2010-06-26 00:24:43.614688899 +0200
     3.7 +@@ -954,7 +954,7 @@
     3.8 +         shift
     3.9 +         VAL=$1
    3.10 +         ;;
    3.11 +-    -prefix|-docdir|-headerdir|-plugindir|-importdir|-datadir|-libdir|-bindir|-translationdir|-sysconfdir|-examplesdir|-demosdir|-depths|-make|-nomake|-platform|-xplatform|-buildkey|-sdk|-arch|-host-arch|-mysql_config)
    3.12 ++    -prefix|-docdir|-headerdir|-plugindir|-importdir|-datadir|-libdir|-bindir|-translationdir|-sysconfdir|-examplesdir|-demosdir|-depths|-make|-nomake|-platform|-xplatform|-buildkey|-sdk|-arch|-host-arch|-mysql_config|-crossarch)
    3.13 +         VAR=`echo $1 | sed "s,^-\(.*\),\1,"`
    3.14 +         shift
    3.15 +         VAL="$1"
    3.16 +@@ -1443,6 +1443,9 @@
    3.17 +     xplatform)
    3.18 +         XPLATFORM="$VAL"
    3.19 +         ;;
    3.20 ++    crossarch)
    3.21 ++        CROSSARCH="$VAL"
    3.22 ++        ;;
    3.23 +     debug-and-release)
    3.24 +         if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
    3.25 +             CFG_DEBUG_RELEASE="$VAL"
    3.26 +@@ -2918,6 +2921,8 @@
    3.27 +     CFG_ARCH=$CFG_HOST_ARCH
    3.28 + fi
    3.29 + 
    3.30 ++CFG_ARCH="$CROSSARCH"
    3.31 ++
    3.32 + if [ -d "$relpath/src/corelib/arch/$CFG_ARCH" ]; then
    3.33 +     if [ "$OPT_VERBOSE" = "yes" ]; then
    3.34 +         echo "    '$CFG_ARCH' is supported"
     4.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     4.2 +++ b/packages/qt/patches/02_neon.diff	Sat Jun 26 20:58:11 2010 +0200
     4.3 @@ -0,0 +1,35 @@
     4.4 +diff -Naur qt-everywhere-opensource-src-4.7.0-beta1.orig/configure qt-everywhere-opensource-src-4.7.0-beta1/configure
     4.5 +--- qt-everywhere-opensource-src-4.7.0-beta1.orig/configure	2010-06-26 00:12:42.504688041 +0200
     4.6 ++++ qt-everywhere-opensource-src-4.7.0-beta1/configure	2010-06-26 11:20:37.855599464 +0200
     4.7 +@@ -4654,7 +4659,7 @@
     4.8 + 
     4.9 + # detect neon support
    4.10 + if ([ "$CFG_ARCH" = "arm" ] || [ "$CFG_ARCH" = "armv6" ]) && [ "${CFG_NEON}" = "auto" ]; then
    4.11 +-    if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/neon "neon" $L_FLAGS $I_FLAGS $l_FLAGS "-mfpu=neon"; then
    4.12 ++    if "$unixtests/compile.test" "$XQMAKESPEC" "$QMAKE_CONFIG" $OPT_VERBOSE "$relpath" "$outpath" config.tests/unix/neon "neon" $L_FLAGS $I_FLAGS $l_FLAGS "-mfpu=neon -mfloat-abi=softfp"; then
    4.13 + 	CFG_NEON=yes
    4.14 +     else
    4.15 + 	CFG_NEON=no
    4.16 +diff -Naur qt-everywhere-opensource-src-4.7.0-beta1.orig/src/corelib/corelib.pro qt-everywhere-opensource-src-4.7.0-beta1/src/corelib/corelib.pro
    4.17 +--- qt-everywhere-opensource-src-4.7.0-beta1.orig/src/corelib/corelib.pro	2010-06-26 00:11:16.185969777 +0200
    4.18 ++++ qt-everywhere-opensource-src-4.7.0-beta1/src/corelib/corelib.pro	2010-06-26 11:21:17.284689329 +0200
    4.19 +@@ -70,6 +70,6 @@
    4.20 + }
    4.21 + neon {
    4.22 +     DEFINES += QT_HAVE_NEON
    4.23 +-    QMAKE_CXXFLAGS *= -mfpu=neon
    4.24 ++    QMAKE_CXXFLAGS *= -mfpu=neon -mfloat-abi=softfp
    4.25 + }
    4.26 + 
    4.27 +diff -Naur qt-everywhere-opensource-src-4.7.0-beta1.orig/src/gui/painting/painting.pri qt-everywhere-opensource-src-4.7.0-beta1/src/gui/painting/painting.pri
    4.28 +--- qt-everywhere-opensource-src-4.7.0-beta1.orig/src/gui/painting/painting.pri	2010-06-26 00:11:15.085939250 +0200
    4.29 ++++ qt-everywhere-opensource-src-4.7.0-beta1/src/gui/painting/painting.pri	2010-06-26 11:20:56.447188784 +0200
    4.30 +@@ -385,7 +385,7 @@
    4.31 +     DEFINES += QT_HAVE_NEON
    4.32 +     HEADERS += painting/qdrawhelper_neon_p.h
    4.33 +     SOURCES += painting/qdrawhelper_neon.cpp
    4.34 +-    QMAKE_CXXFLAGS *= -mfpu=neon
    4.35 ++    QMAKE_CXXFLAGS *= -mfpu=neon -mfloat-abi=softfp
    4.36 + 
    4.37 +     DRAWHELPER_NEON_ASM_FILES = ../3rdparty/pixman/pixman-arm-neon-asm.S painting/qdrawhelper_neon_asm.S
    4.38 + 
     5.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     5.2 +++ b/packages/qt/unpack	Sat Jun 26 20:58:11 2010 +0200
     5.3 @@ -0,0 +1,61 @@
     5.4 +#!/bin/sh
     5.5 +
     5.6 +. config/options
     5.7 +
     5.8 +SPECS_DIR="`ls -d $BUILD/$1*`/mkspecs/linux-g++-geexbox"
     5.9 +
    5.10 +mkdir -p $SPECS_DIR
    5.11 +
    5.12 +cat > $SPECS_DIR/qplatformdefs.h <<EOF
    5.13 +#include "../linux-g++/qplatformdefs.h"
    5.14 +EOF
    5.15 +
    5.16 +cat > $SPECS_DIR/qmake.conf <<EOF
    5.17 +MAKEFILE_GENERATOR      = UNIX
    5.18 +TARGET_PLATFORM         = unix
    5.19 +TEMPLATE                = app
    5.20 +CONFIG                  += qt warn_on release incremental link_prl
    5.21 +QT                      += core gui network
    5.22 +QMAKE_INCREMENTAL_STYLE = sublib
    5.23 +
    5.24 +include(../common/g++.conf)
    5.25 +include(../common/linux.conf)
    5.26 +
    5.27 +# Override compiler settings
    5.28 +# QMAKE_CFLAGS            = $TARGET_CFLAGS
    5.29 +# QMAKE_LFLAGS            = $TARGET_LDFLAGS
    5.30 +
    5.31 +QMAKE_CC                = $TARGET_CC
    5.32 +QMAKE_CXX               = $TARGET_CXX
    5.33 +QMAKE_LINK              = $TARGET_CXX
    5.34 +QMAKE_LINK_SHLIB        = $TARGET_CXX
    5.35 +QMAKE_AR                = $TARGET_AR cqs
    5.36 +QMAKE_OBJCOPY           = $TARGET_OBJCOPY
    5.37 +QMAKE_STRIP             = $TARGET_STRIP
    5.38 +
    5.39 +# Headers Search Path
    5.40 +QMAKE_INCDIR          = $LIB_PREFIX/include
    5.41 +QMAKE_INCDIR_X11      = $LIB_PREFIX/include/X11
    5.42 +QMAKE_INCDIR_OPENGL   = $LIB_PREFIX/include
    5.43 +
    5.44 +# Libraries Search Path
    5.45 +QMAKE_LIBDIR          = $LIB_PREFIX/lib
    5.46 +QMAKE_LIBDIR_X11      = $LIB_PREFIX/lib
    5.47 +QMAKE_LIBDIR_OPENGL   = $LIB_PREFIX/lib
    5.48 +
    5.49 +EOF
    5.50 +
    5.51 +if [ "$TARGET_ARCH" = arm ]; then
    5.52 +  cat >> $SPECS_DIR/qmake.conf <<EOF
    5.53 +# Work round PowerVR SGX 1.3 driver bug with glScissor & FBOs:
    5.54 +DEFINES += QT_GL_NO_SCISSOR_TEST
    5.55 +
    5.56 +# Work round SGX 1.4 driver bug (text corrupted), modify glyph cache width:
    5.57 +DEFINES += QT_DEFAULT_TEXTURE_GLYPH_CACHE_WIDTH=1024
    5.58 +
    5.59 +EOF
    5.60 +fi
    5.61 +
    5.62 +cat >> $SPECS_DIR/qmake.conf <<EOF
    5.63 +load(qt_config)
    5.64 +EOF
     6.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     6.2 +++ b/packages/qt/url	Sat Jun 26 20:58:11 2010 +0200
     6.3 @@ -0,0 +1,1 @@
     6.4 +http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.7.0-beta1.tar.gz