[arch-commits] Commit in qt/trunk (8 files)

Pierre Schmitz pierre at archlinux.org
Sat May 24 08:51:11 UTC 2008


    Date: Saturday, May 24, 2008 @ 04:51:10
  Author: pierre
Revision: 1973

upgpkg: qt 4.4.0-1
    updated to qt-4.4 (first try)

Modified:
  qt/trunk/PKGBUILD
Deleted:
  qt/trunk/mysql.patch
  qt/trunk/qlistview.patch
  qt/trunk/qt-font-default-subst.diff
  qt/trunk/qt-x11-opensource-src-4.3.4-aliasing.patch
  qt/trunk/qt.profile
  qt/trunk/qt3_pixmap.patch
  qt/trunk/utf8-bug-qt3.diff

--------------------------------------------+
 PKGBUILD                                   |   14 --
 mysql.patch                                |   47 ---------
 qlistview.patch                            |   14 --
 qt-font-default-subst.diff                 |   77 --------------
 qt-x11-opensource-src-4.3.4-aliasing.patch |   17 ---
 qt.profile                                 |    6 -
 qt3_pixmap.patch                           |  140 ---------------------------
 utf8-bug-qt3.diff                          |  101 -------------------
 8 files changed, 5 insertions(+), 411 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2008-05-24 08:43:26 UTC (rev 1972)
+++ PKGBUILD	2008-05-24 08:51:10 UTC (rev 1973)
@@ -1,7 +1,7 @@
 # $Id$
 # Contributer: Vinay S Shastry (vinayshastry at gmail.com)
 pkgname=qt
-pkgver=4.3.4
+pkgver=4.4.0
 pkgrel=1
 pkgdesc="The QT gui toolkit."
 arch=('i686' 'x86_64')
@@ -10,16 +10,14 @@
 options=('!libtool' 'docs')
 depends=('libpng' 'libjpeg' 'libxi' 'libxcursor' 'libxinerama' 'mesa' \
          'fontconfig' 'libxrandr' 'dbus' 'glib2')
-makedepends=('mysql' 'postgresql' 'unixodbc' 'libmng' 'libtiff')
+makedepends=('mysql' 'unixodbc' 'libmng' 'libtiff')
 provides=("qt4=${pkgver}")
 replaces=('qt4')
 conflicts=('qt4')
 _pkgfqn=qt-x11-opensource-src-$pkgver
 source=("ftp://ftp.trolltech.com/qt/source/${_pkgfqn}.tar.gz" \
-        'qt-x11-opensource-src-4.3.4-aliasing.patch' \
         'qt4-assistant.desktop' 'qt4-designer.desktop' 'qt4-linguist.desktop')
-md5sums=('9499101ec54eb7b0de195b3c5e3ffa93'
-         '73871785cfc4c0271eca59e658ab3a44'
+md5sums=('f13ad0aa75efad314715930e663bad55'
          '67adab60dd87270e733d25552a826950'
          '40a36635b14c32bd2923e408c2e877bf'
          'cd6e1c951e079e2eace67bce5e63966c')
@@ -31,8 +29,6 @@
   export LD_LIBRARY_PATH=${QT4DIR}/lib:${LD_LIBRARY_PATH}
   cd $startdir/src/$_pkgfqn
 
-  patch -p1 -i ../qt-x11-opensource-src-4.3.4-aliasing.patch || return 1
-
   # remove docs
   rm -rf doc
 
@@ -55,6 +51,7 @@
     -sysconfdir /etc/qt \
     -examplesdir /usr/share/doc/qt/examples \
     -demosdir /usr/share/doc/qt/demos \
+    -no-exceptions \
     -release \
     -platform linux-g++ \
     -system-zlib \
@@ -62,7 +59,7 @@
     -system-libjpeg \
     -qt-gif \
     -shared -sm -nis -stl \
-    -plugin-sql-{mysql,psql,sqlite,odbc} \
+    -plugin-sql-{mysql,sqlite,odbc} \
     -no-separate-debug-info \
     -glib -qdbus \
     -optimized-qmake \
@@ -82,4 +79,4 @@
   #sed -i -e "s|-L$startdir/src/${_pkgfqn}/lib||g" $startdir/pkg/usr/lib/*.prl $startdir/pkg/usr/share/doc/qt/demos/shared/libdemo_shared.prl
   sed -i -e "s|$startdir/src/${_pkgfqn}/bin/moc|/usr/bin/moc|g" $startdir/pkg/usr/lib/pkgconfig/*.pc
   sed -i -e "s|$startdir/src/${_pkgfqn}/bin/uic|/usr/bin/uic|g" $startdir/pkg/usr/lib/pkgconfig/*.pc
-}
\ No newline at end of file
+}

Deleted: mysql.patch
===================================================================
--- mysql.patch	2008-05-24 08:43:26 UTC (rev 1972)
+++ mysql.patch	2008-05-24 08:51:10 UTC (rev 1973)
@@ -1,47 +0,0 @@
---- src/sql/drivers/mysql/qsql_mysql.cpp
-+++ src/sql/drivers/mysql/qsql_mysql.cpp
-@@ -37,7 +37,6 @@
- #include "qsql_mysql.h"
- #include <private/qsqlextension_p.h>
- 
--#include <qapplication.h>
- #include <qdatetime.h>
- #include <qvaluevector.h>
- #include <qsqlrecord.h>
-@@ -341,14 +340,6 @@ int QMYSQLResult::numRowsAffected()
- }
- 
- /////////////////////////////////////////////////////////
--static void qServerEnd()
--{
--#ifndef Q_NO_MYSQL_EMBEDDED
--# if MYSQL_VERSION_ID >= 40000
--    mysql_server_end();
--# endif // MYSQL_VERSION_ID
--#endif // Q_NO_MYSQL_EMBEDDED
--}
- 
- static void qServerInit()
- {
-@@ -366,9 +357,7 @@ static void qServerInit()
- 	qWarning( "QMYSQLDriver::qServerInit: unable to start server." );
- #  endif
-     }
--    qAddPostRoutine(qServerEnd);
-     init = TRUE;    
--    
- # endif // MYSQL_VERSION_ID
- #endif // Q_NO_MYSQL_EMBEDDED
- }
-@@ -411,6 +400,11 @@ QMYSQLDriver::~QMYSQLDriver()
- 	QSqlOpenExtension *ext = qSqlOpenExtDict()->take( this );
- 	delete ext;
-     }
-+#ifndef Q_NO_MYSQL_EMBEDDED
-+# if MYSQL_VERSION_ID > 40000
-+    mysql_server_end();
-+# endif
-+#endif
- }
- 
- bool QMYSQLDriver::hasFeature( DriverFeature f ) const

Deleted: qlistview.patch
===================================================================
--- qlistview.patch	2008-05-24 08:43:26 UTC (rev 1972)
+++ qlistview.patch	2008-05-24 08:51:10 UTC (rev 1973)
@@ -1,14 +0,0 @@
-diff -uBbr qt-x11-free-3.3.5-old/src/widgets/qlistview.cpp
-qt-x11-free-3.3.5/src/widgets/qlistview.cpp
---- qt-x11-free-3.3.5-old/src/widgets/qlistview.cpp 2005-09-02
-05:43:15.000000000 -0700
-+++ qt-x11-free-3.3.5/src/widgets/qlistview.cpp 2005-11-04
-04:07:40.000000000 -0800
-@@ -3231,6 +3231,7 @@
-     d->focusItem = 0;
-     d->selectAnchor = 0;
-     d->pressedItem = 0;
-+    d->highlighted = 0;
-
-     // if it's down its downness makes no sense, so undown it
-     d->buttonDown = FALSE; 

Deleted: qt-font-default-subst.diff
===================================================================
--- qt-font-default-subst.diff	2008-05-24 08:43:26 UTC (rev 1972)
+++ qt-font-default-subst.diff	2008-05-24 08:51:10 UTC (rev 1973)
@@ -1,77 +0,0 @@
---- src/kernel/qfontdatabase_x11.cpp
-+++ src/kernel/qfontdatabase_x11.cpp
-@@ -1589,15 +1589,6 @@ QFontEngine *loadEngine( QFont::Script s
- 	    if (script == QFont::Latin)
- 		// add Euro character
- 		FcCharSetAddChar(cs, 0x20ac);
--	    if (script == QFont::Han_SimplifiedChinese)
--		FcCharSetAddChar(cs, 0x3400);
--	    if (script == QFont::Han_TraditionalChinese){
--		FcCharSetAddChar(cs, 0x3435);
--		FcCharSetAddChar(cs, 0xE000);
--		FcCharSetAddChar(cs, 0xF6B1);
--	    }
--	    if (script == QFont::MiscellaneousSymbols)
--		FcCharSetAddChar(cs, 0x2714);
- 	    FcPatternAddCharSet(pattern, FC_CHARSET, cs);
- 	    FcCharSetDestroy(cs);
- 	}
-@@ -1813,7 +1804,11 @@ static QFontEngine *loadFontConfigFont(c
-     FcPatternPrint(pattern);
- #endif
- 
-+    // XftFontMatch calls the right ConfigSubstitute variants, but as we use
-+    // FcFontMatch/Sort here we have to do it manually.
-     FcConfigSubstitute(0, pattern, FcMatchPattern);
-+    XftDefaultSubstitute(QPaintDevice::x11AppDisplay(), QPaintDevice::x11AppScreen(), pattern);
-+
- //     qDebug("1: pattern contains:");
- //     FcPatternPrint(pattern);
- 
-@@ -1847,10 +1842,6 @@ static QFontEngine *loadFontConfigFont(c
- 	    value.u.s = (const FcChar8 *)cs.data();
- 	    FcPatternAddWeak(pattern, FC_FAMILY, value, FcTrue);
- 	}
--#ifdef FONT_MATCH_DEBUG
--	printf("final pattern contains:\n");
--	FcPatternPrint(pattern);
--#endif
-     }
- 
-     if (script != QFont::Unicode) {
-@@ -1860,19 +1851,15 @@ static QFontEngine *loadFontConfigFont(c
-         if (script == QFont::Latin)
-             // add Euro character
-             FcCharSetAddChar(cs, 0x20ac);
--	if (script == QFont::Han_SimplifiedChinese)
--	    FcCharSetAddChar(cs, 0x3400);
--	if (script == QFont::Han_TraditionalChinese) {
--	    FcCharSetAddChar(cs, 0x3435);
--	    FcCharSetAddChar(cs, 0xE000);
--	    FcCharSetAddChar(cs, 0xF6B1);
--	}
--	if (script == QFont::MiscellaneousSymbols)
--	    FcCharSetAddChar(cs, 0x2714);
-         FcPatternAddCharSet(pattern, FC_CHARSET, cs);
-         FcCharSetDestroy(cs);
-     }
- 
-+#ifdef FONT_MATCH_DEBUG
-+	printf("final pattern contains:\n");
-+	FcPatternPrint(pattern);
-+#endif
-+
-     QFontEngine *fe = 0;
- 
-     for( int jj = (FcGetVersion() >= 20392 ? 0 : 1); jj < 2; ++jj ) {
---- src/kernel/qfontdatabase.cpp
-+++ src/kernel/qfontdatabase.cpp
-@@ -554,7 +554,7 @@ static const unsigned short sample_chars
-     // GeometricSymbols,
-     { 0x2500, 0x0 },
-     // MiscellaneousSymbols,
--    { 0x2640, 0x0 },
-+    { 0x2640, 0x2714, 0x0 },
-     // EnclosedAndSquare,
-     { 0x2460, 0x0 },
-     // Braille,

Deleted: qt-x11-opensource-src-4.3.4-aliasing.patch
===================================================================
--- qt-x11-opensource-src-4.3.4-aliasing.patch	2008-05-24 08:43:26 UTC (rev 1972)
+++ qt-x11-opensource-src-4.3.4-aliasing.patch	2008-05-24 08:51:10 UTC (rev 1973)
@@ -1,17 +0,0 @@
-diff -up qt-x11-opensource-src-4.3.4/src/corelib/thread/qatomic.h.me qt-x11-opensource-src-4.3.4/src/corelib/thread/qatomic.h
---- qt-x11-opensource-src-4.3.4/src/corelib/thread/qatomic.h.me	2008-02-29 16:32:54.000000000 +0100
-+++ qt-x11-opensource-src-4.3.4/src/corelib/thread/qatomic.h	2008-02-29 17:05:03.000000000 +0100
-@@ -178,8 +178,13 @@ struct QBasicAtomicPointer
- #endif // Q_SPECIALIZED_QATOMIC
- 
- template <typename T>
-+#if defined(QT_MOC) || defined(QT_BUILD_QMAKE) || defined(QT_UIC)
-+inline T qAtomicSetPtr(T *ptr, T newval)
-+{ T ret = *ptr; *ptr = newval; return ret; }
-+#else
- inline T qAtomicSetPtr(volatile T *ptr, T newval)
- { return static_cast<T>(q_atomic_set_ptr(ptr, newval)); }
-+#endif
- 
- // High-level atomic integer operations
- class QAtomic : public QBasicAtomic

Deleted: qt.profile
===================================================================
--- qt.profile	2008-05-24 08:43:26 UTC (rev 1972)
+++ qt.profile	2008-05-24 08:51:10 UTC (rev 1973)
@@ -1,6 +0,0 @@
-export QTDIR=/opt/qt
-export QT_XFT=true
-export QMAKESPEC=$QTDIR/mkspecs/linux-g++
-export PATH=$PATH:$QTDIR/bin
-export MANPATH=$MANPATH:$QTDIR/man
-export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/opt/qt/lib/pkgconfig

Deleted: qt3_pixmap.patch
===================================================================
--- qt3_pixmap.patch	2008-05-24 08:43:26 UTC (rev 1972)
+++ qt3_pixmap.patch	2008-05-24 08:51:10 UTC (rev 1973)
@@ -1,140 +0,0 @@
---- //depot/qt/3/src/kernel/qfontengine_x11.cpp	Thu Oct 19 14:41:41 CEST 2006
-+++ //depot/qt/3/src/kernel/qfontengine_x11.cpp	Thu Oct 19 14:41:41 CEST 2006
-
-@@ -171,7 +171,8 @@
- 
-     QRect br = xmat.mapRect(QRect(x, y - si->ascent, w, h));
-     QRect br2 = br & pdevRect;
--    if (br2.width() <= 0 || br2.height() <= 0)
-+    if (br2.width() <= 0 || br2.height() <= 0
-+        || br2.width() >= 32768 || br2.height() >= 32768)
-         return;
-     QWMatrix mat = QPixmap::trueMatrix( xmat, w, h );
-     QBitmap wx_bm = ::transform(dpy, bm, br2.x() - br.x(), br2.y() - br.y(), br2.width(), br2.height(), mat);
-
---- //depot/qt/3/src/kernel/qimage.cpp	Thu Oct 19 14:41:41 CEST 2006
-+++ //depot/qt/3/src/kernel/qimage.cpp	Thu Oct 19 14:41:41 CEST 2006
-
-@@ -475,7 +475,12 @@
- 		Endian bitOrder )
- {
-     init();
--    if ( w <= 0 || h <= 0 || depth <= 0 || numColors < 0 )
-+    int bpl = ((w*depth+31)/32)*4;	// bytes per scanline
-+    if ( w <= 0 || h <= 0 || depth <= 0 || numColors < 0
-+         || INT_MAX / sizeof(uchar *) < uint(h)
-+         || INT_MAX / uint(depth) < uint(w)
-+         || bpl <= 0
-+         || INT_MAX / uint(bpl) < uint(h) )
- 	return;					// invalid parameter(s)
-     data->w = w;
-     data->h = h;
-@@ -483,7 +488,6 @@
-     data->ncols = depth != 32 ? numColors : 0;
-     if ( !yourdata )
- 	return;	    // Image header info can be saved without needing to allocate memory.
--    int bpl = ((w*depth+31)/32)*4;	// bytes per scanline
-     data->nbytes = bpl*h;
-     if ( colortable || !data->ncols ) {
- 	data->ctbl = colortable;
-@@ -525,7 +529,10 @@
- 		Endian bitOrder )
- {
-     init();
--    if ( !yourdata || w <= 0 || h <= 0 || depth <= 0 || numColors < 0 )
-+    if ( !yourdata || w <= 0 || h <= 0 || depth <= 0 || numColors < 0
-+         || INT_MAX / sizeof(uchar *) < uint(h)
-+         || INT_MAX / uint(bpl) < uint(h)
-+         )
- 	return;					// invalid parameter(s)
-     data->w = w;
-     data->h = h;
-@@ -1264,7 +1271,7 @@
-     if ( data->ncols != numColors )		// could not alloc color table
- 	return FALSE;
- 
--    if ( INT_MAX / depth < width) { // sanity check for potential overflow
-+    if ( INT_MAX / uint(depth) < uint(width) ) { // sanity check for potential overflow
- 	setNumColors( 0 );
- 	return FALSE;
-     }
-@@ -1277,7 +1284,9 @@
-     // #### WWA: shouldn't this be (width*depth+7)/8:
-     const int pad = bpl - (width*depth)/8;	// pad with zeros
- #endif
--    if (INT_MAX / bpl < height) { // sanity check for potential overflow
-+    if ( INT_MAX / uint(bpl) < uint(height)
-+        || bpl < 0
-+        || INT_MAX / sizeof(uchar *) < uint(height) ) { // sanity check for potential overflow
- 	setNumColors( 0 );
- 	return FALSE;
-     }
-
---- //depot/qt/3/src/kernel/qpixmap_x11.cpp	Thu Oct 19 14:41:41 CEST 2006
-+++ //depot/qt/3/src/kernel/qpixmap_x11.cpp	Thu Oct 19 14:41:41 CEST 2006
-
-@@ -953,6 +953,9 @@
-     bool force_mono = (dd == 1 || isQBitmap() ||
- 		       (conversion_flags & ColorMode_Mask)==MonoOnly );
- 
-+    if ( w >= 32768 || h >= 32768 )
-+        return FALSE;
-+
-     // get rid of the mask
-     delete data->mask;
-     data->mask = 0;
-@@ -1678,11 +1681,11 @@
- 
- QPixmap QPixmap::xForm( const QWMatrix &matrix ) const
- {
--    int	   w = 0;
--    int	   h = 0;				// size of target pixmap
--    int	   ws, hs;				// size of source pixmap
-+    uint   w = 0;
-+    uint   h = 0;				// size of target pixmap
-+    uint   ws, hs;				// size of source pixmap
-     uchar *dptr;				// data in target pixmap
--    int	   dbpl, dbytes;			// bytes per line/bytes total
-+    uint   dbpl, dbytes;			// bytes per line/bytes total
-     uchar *sptr;				// data in original pixmap
-     int	   sbpl;				// bytes per line in original
-     int	   bpp;					// bits per pixel
-@@ -1697,19 +1700,24 @@
- 
-     QWMatrix mat( matrix.m11(), matrix.m12(), matrix.m21(), matrix.m22(), 0., 0. );
- 
-+    double scaledWidth;
-+    double scaledHeight;
-+
-     if ( matrix.m12() == 0.0F && matrix.m21() == 0.0F ) {
- 	if ( matrix.m11() == 1.0F && matrix.m22() == 1.0F )
- 	    return *this;			// identity matrix
--	h = qRound( matrix.m22()*hs );
--	w = qRound( matrix.m11()*ws );
--	h = QABS( h );
--	w = QABS( w );
-+	scaledHeight = matrix.m22()*hs;
-+	scaledWidth = matrix.m11()*ws;
-+	h = QABS( qRound( scaledHeight ) );
-+	w = QABS( qRound( scaledWidth ) );
-     } else {					// rotation or shearing
- 	QPointArray a( QRect(0,0,ws+1,hs+1) );
- 	a = mat.map( a );
- 	QRect r = a.boundingRect().normalize();
- 	w = r.width()-1;
- 	h = r.height()-1;
-+        scaledWidth = w;
-+        scaledHeight = h;
-     }
- 
-     mat = trueMatrix( mat, ws, hs ); // true matrix
-@@ -1718,7 +1726,8 @@
-     bool invertible;
-     mat = mat.invert( &invertible );		// invert matrix
- 
--    if ( h == 0 || w == 0 || !invertible ) {	// error, return null pixmap
-+    if ( h == 0 || w == 0 || !invertible
-+         || QABS(scaledWidth) >= 32768 || QABS(scaledHeight) >= 32768 ) {	// error, return null pixmap
- 	QPixmap pm;
- 	pm.data->bitmap = data->bitmap;
- 	return pm;

Deleted: utf8-bug-qt3.diff
===================================================================
--- utf8-bug-qt3.diff	2008-05-24 08:43:26 UTC (rev 1972)
+++ utf8-bug-qt3.diff	2008-05-24 08:51:10 UTC (rev 1973)
@@ -1,101 +0,0 @@
---- src/codecs/qutfcodec.cpp
-+++ src/codecs/qutfcodec.cpp
-@@ -154,6 +154,7 @@
- 
- class QUtf8Decoder : public QTextDecoder {
-     uint uc;
-+    uint min_uc;
-     int need;
-     bool headerDone;
- public:
-@@ -167,8 +168,9 @@
- 	result.setLength( len ); // worst case
- 	QChar *qch = (QChar *)result.unicode();
- 	uchar ch;
-+        int error = -1;
- 	for (int i=0; i<len; i++) {
--	    ch = *chars++;
-+	    ch = chars[i];
- 	    if (need) {
- 		if ( (ch&0xc0) == 0x80 ) {
- 		    uc = (uc << 6) | (ch & 0x3f);
-@@ -182,6 +184,8 @@
- 			    *qch++ = QChar(high);
- 			    *qch++ = QChar(low);
- 			    headerDone = TRUE;
-+			} else if ((uc < min_uc) || (uc >= 0xd800 && uc <= 0xdfff) || (uc >= 0xfffe)) {
-+                            *qch++ = QChar::replacement;
- 			} else {
- 			    if (headerDone || QChar(uc) != QChar::byteOrderMark)
- 				*qch++ = uc;
-@@ -190,6 +194,7 @@
- 		    }
- 		} else {
- 		    // error
-+                    i = error;
- 		    *qch++ = QChar::replacement;
- 		    need = 0;
- 		}
-@@ -200,12 +205,21 @@
- 		} else if ((ch & 0xe0) == 0xc0) {
- 		    uc = ch & 0x1f;
- 		    need = 1;
-+                    error = i;
-+		    min_uc = 0x80;
- 		} else if ((ch & 0xf0) == 0xe0) {
- 		    uc = ch & 0x0f;
- 		    need = 2;
-+                    error = i;
-+		    min_uc = 0x800;
- 		} else if ((ch&0xf8) == 0xf0) {
- 		    uc = ch & 0x07;
- 		    need = 3;
-+                    error = i;
-+                    min_uc = 0x10000;
-+                } else {
-+                    // error
-+                    *qch++ = QChar::replacement;
- 		}
- 	    }
- 	}
---- src/tools/qstring.cpp
-+++ src/tools/qstring.cpp
-@@ -5805,6 +5805,7 @@
-     result.setLength( len ); // worst case
-     QChar *qch = (QChar *)result.unicode();
-     uint uc = 0;
-+    uint min_uc = 0;
-     int need = 0;
-     int error = -1;
-     uchar ch;
-@@ -5822,6 +5823,12 @@
- 			unsigned short low = uc%0x400 + 0xdc00;
- 			*qch++ = QChar(high);
- 			*qch++ = QChar(low);
-+		    } else if (uc < min_uc || (uc >= 0xd800 && uc <= 0xdfff) || (uc >= 0xfffe)) {
-+			// overlong seqence, UTF16 surrogate or BOM
-+                        i = error;
-+                        qch = addOne(qch, result);
-+                        *qch++ = QChar(0xdbff);
-+                        *qch++ = QChar(0xde00+((uchar)utf8[i]));
- 		    } else {
- 			*qch++ = uc;
- 		    }
-@@ -5844,14 +5851,17 @@
- 		uc = ch & 0x1f;
- 		need = 1;
- 		error = i;
-+		min_uc = 0x80;
- 	    } else if ((ch & 0xf0) == 0xe0) {
- 		uc = ch & 0x0f;
- 		need = 2;
- 		error = i;
-+		min_uc = 0x800;
- 	    } else if ((ch&0xf8) == 0xf0) {
- 		uc = ch & 0x07;
- 		need = 3;
- 		error = i;
-+		min_uc = 0x10000;
- 	    } else {
- 	        // Error
-                 qch = addOne(qch, result);





More information about the arch-commits mailing list