rev 4743 - in trunk/packages/qt-x11-free/debian: . patches

Christopher Martin chrsmrtn at costa.debian.org
Sat Oct 21 14:12:12 UTC 2006


Author: chrsmrtn
Date: 2006-10-21 14:12:11 +0000 (Sat, 21 Oct 2006)
New Revision: 4743

Added:
   trunk/packages/qt-x11-free/debian/patches/60_gnu_hurd_support.dpatch
Modified:
   trunk/packages/qt-x11-free/debian/changelog
   trunk/packages/qt-x11-free/debian/control
   trunk/packages/qt-x11-free/debian/patches/00list
   trunk/packages/qt-x11-free/debian/rules
Log:
And add hurd patch.


Modified: trunk/packages/qt-x11-free/debian/changelog
===================================================================
--- trunk/packages/qt-x11-free/debian/changelog	2006-10-21 14:10:27 UTC (rev 4742)
+++ trunk/packages/qt-x11-free/debian/changelog	2006-10-21 14:12:11 UTC (rev 4743)
@@ -6,6 +6,8 @@
     engine). Urgency is medium as this is a security problem.
     (Closes: #394313)
 
+  * Add Hurd build patch, thanks to Cyril Brulebois. (Closes: #394195)
+
  -- Debian Qt/KDE Maintainers <debian-qt-kde at lists.debian.org>  Sat, 21 Oct 2006 09:30:32 -0400
 
 qt-x11-free (3:3.3.6-4) unstable; urgency=low

Modified: trunk/packages/qt-x11-free/debian/control
===================================================================
--- trunk/packages/qt-x11-free/debian/control	2006-10-21 14:10:27 UTC (rev 4742)
+++ trunk/packages/qt-x11-free/debian/control	2006-10-21 14:12:11 UTC (rev 4743)
@@ -1,7 +1,7 @@
 Source: qt-x11-free
 Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde at lists.debian.org>
 Uploaders: Christopher Martin <chrsmrtn at debian.org>, Adeodato Simó <dato at net.com.org.es>
-Build-Depends: debhelper (>= 5.0.31), libxext-dev (>= 4.3.0.dfsg.1-4), libxrandr-dev (>= 4.3.0.dfsg.1-4), libsm-dev (>= 4.3.0.dfsg.1-4), libxmu-dev (>= 4.3.0.dfsg.1-4), libice-dev (>= 4.3.0.dfsg.1-4), libx11-dev (>= 4.3.0.dfsg.1-4), libxt-dev (>= 4.3.0.dfsg.1-4), libxrender-dev, libxcursor-dev, libxinerama-dev, libxi-dev, zlib1g-dev, libjpeg62-dev, libmng-dev (>= 1.0.3), libpng12-dev | libpng12-0-dev, libfontconfig1-dev, libfreetype6-dev, libxft-dev, libiodbc2-dev (>= 3.51.2-4), libmysqlclient15-dev | libmysqlclient-dev, flex, libpq-dev, libaudio-dev, libcupsys2-dev, libgl1-mesa-dev | libgl-dev, libglu1-mesa-dev | libglu-dev, dpatch (>= 1.13), libsqlite3-dev, firebird2-dev [i386 hurd-i386 kfreebsd-i386 kfreebsd-amd64 knetbsd-i386 netbsd-i386 amd64]
+Build-Depends: debhelper (>= 5.0.31), libxext-dev (>= 4.3.0.dfsg.1-4), libxrandr-dev (>= 4.3.0.dfsg.1-4), libsm-dev (>= 4.3.0.dfsg.1-4), libxmu-dev (>= 4.3.0.dfsg.1-4), libice-dev (>= 4.3.0.dfsg.1-4), libx11-dev (>= 4.3.0.dfsg.1-4), libxt-dev (>= 4.3.0.dfsg.1-4), libxrender-dev, libxcursor-dev, libxinerama-dev, libxi-dev, zlib1g-dev, libjpeg62-dev, libmng-dev (>= 1.0.3), libpng12-dev | libpng12-0-dev, libfontconfig1-dev, libfreetype6-dev, libxft-dev, libiodbc2-dev (>= 3.51.2-4), libmysqlclient15-dev | libmysqlclient-dev, flex, libpq-dev, libaudio-dev, libcupsys2-dev, libgl1-mesa-dev | libgl-dev, libglu1-mesa-dev | libglu-dev, dpatch (>= 1.13), libsqlite3-dev, firebird2-dev [i386 kfreebsd-i386 kfreebsd-amd64 knetbsd-i386 netbsd-i386 amd64]
 Section: libs
 Priority: optional
 Standards-Version: 3.7.2
@@ -51,7 +51,7 @@
  to access a PostgreSQL DB.
 
 Package: libqt3-mt-ibase
-Architecture: i386 hurd-i386 kfreebsd-i386 kfreebsd-amd64 knetbsd-i386 netbsd-i386 amd64
+Architecture: i386 kfreebsd-i386 kfreebsd-amd64 knetbsd-i386 netbsd-i386 amd64
 Section: libs
 Depends: ${shlibs:Depends}
 Conflicts: libqt3c102-mt-ibase

Modified: trunk/packages/qt-x11-free/debian/patches/00list
===================================================================
--- trunk/packages/qt-x11-free/debian/patches/00list	2006-10-21 14:10:27 UTC (rev 4742)
+++ trunk/packages/qt-x11-free/debian/patches/00list	2006-10-21 14:12:11 UTC (rev 4743)
@@ -37,3 +37,4 @@
 47_immodule_nodebug_fix
 48_immodule_xim_fix
 49_immodule_inputcontext_fix
+60_gnu_hurd_support

Added: trunk/packages/qt-x11-free/debian/patches/60_gnu_hurd_support.dpatch
===================================================================
--- trunk/packages/qt-x11-free/debian/patches/60_gnu_hurd_support.dpatch	                        (rev 0)
+++ trunk/packages/qt-x11-free/debian/patches/60_gnu_hurd_support.dpatch	2006-10-21 14:12:11 UTC (rev 4743)
@@ -0,0 +1,194 @@
+#! /bin/sh -e
+## 60_gnu_hurd_support.dpatch.dpatch by Cyril Brulebois <cyril.brulebois at enst-bretagne.fr>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Add support for GNU/Hurd, by fixing POSIX incompatibilities and
+## DP: fixing proper compiler options
+
+if [ $# -lt 1 ]; then
+    echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
+    exit 1
+fi
+
+[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
+patch_opts="${patch_opts:--f --no-backup-if-mismatch} ${2:+-d $2}"
+
+case "$1" in
+    -patch) patch -p1 ${patch_opts} < $0;;
+    -unpatch) patch -R -p1 ${patch_opts} < $0;;
+    *)
+        echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
+        exit 1;;
+esac
+
+exit 0
+
+ at DPATCH@
+--- qt-x11-free-3.3.6~/mkspecs/hurd-g++/qmake.conf	2006-09-28 07:45:03.000000000 +0000
++++ qt-x11-free-3.3.6/mkspecs/hurd-g++/qmake.conf	2006-09-28 07:45:40.000000000 +0000
+@@ -16,7 +16,7 @@
+ QMAKE_LEXFLAGS		= 
+ QMAKE_YACC		= yacc
+ QMAKE_YACCFLAGS		= -d
+-QMAKE_CFLAGS		=
++QMAKE_CFLAGS		= -pipe
+ QMAKE_CFLAGS_DEPS	= -M
+ QMAKE_CFLAGS_WARN_ON	= -Wall -W
+ QMAKE_CFLAGS_WARN_OFF	= -w
+@@ -24,6 +24,7 @@
+ QMAKE_CFLAGS_DEBUG	= -g
+ QMAKE_CFLAGS_SHLIB	= -fPIC
+ QMAKE_CFLAGS_YACC	= -Wno-unused -Wno-parentheses
++QMAKE_CFLAGS_THREAD	= -D_REENTRANT
+ 
+ QMAKE_CXX		= g++
+ QMAKE_CXXFLAGS		= $$QMAKE_CFLAGS
+@@ -34,6 +35,7 @@
+ QMAKE_CXXFLAGS_DEBUG	= $$QMAKE_CFLAGS_DEBUG
+ QMAKE_CXXFLAGS_SHLIB	= $$QMAKE_CFLAGS_SHLIB
+ QMAKE_CXXFLAGS_YACC	= $$QMAKE_CFLAGS_YACC
++QMAKE_CXXFLAGS_THREAD	= $$QMAKE_CFLAGS_THREAD
+ 
+ QMAKE_INCDIR		=
+ QMAKE_LIBDIR		=
+@@ -52,14 +54,19 @@
+ QMAKE_LFLAGS_SHLIB	= -shared
+ QMAKE_LFLAGS_PLUGIN	= $$QMAKE_LFLAGS_SHLIB
+ QMAKE_LFLAGS_SONAME	= -Wl,-soname,
++QMAKE_LFLAGS_THREAD	=
+ 
+-QMAKE_LIBS		=
++# The following trick (QMAKE_LIBS{,_THREAD}) is needed at the moment
++QMAKE_LIBS		= -lpthread
+ QMAKE_LIBS_DYNLOAD	= -ldl
+ QMAKE_LIBS_X11		= -lXext -lX11 -lm
++QMAKE_LIBS_X11SM	= -lSM -lICE
++QMAKE_LIBS_NIS		= -lnsl
+ QMAKE_LIBS_QT		= -lqt
+-
++QMAKE_LIBS_QT_THREAD	= -lqt-mt
+ QMAKE_LIBS_OPENGL	= -lGLU -lGL -lXmu
+ QMAKE_LIBS_OPENGL_QT	= -lGL -lXmu
++QMAKE_LIBS_THREAD	= 
+ 
+ QMAKE_MOC		= $(QTDIR)/bin/moc
+ QMAKE_UIC		= $(QTDIR)/bin/uic
+--- qt-x11-free-3.3.6~/src/tools/qdir_unix.cpp	2006-09-28 07:45:03.000000000 +0000
++++ qt-x11-free-3.3.6/src/tools/qdir_unix.cpp	2006-09-28 07:45:07.000000000 +0000
+@@ -71,6 +71,20 @@
+ QString QDir::canonicalPath() const
+ {
+     QString r;
++#if defined(__GLIBC__) && !defined(PATH_MAX)
++    char *cur = ::get_current_dir_name();
++    if ( cur ) {
++        char *tmp = canonicalize_file_name( QFile::encodeName( dPath ).data() );
++        if ( tmp ) {
++            r = QFile::decodeName( tmp );
++            free( tmp );
++        }
++        slashify( r );
++    	// always make sure we go back to the current dir
++        ::chdir( cur );
++        free( cur );
++    }
++#else
+     char cur[PATH_MAX+1];
+     if ( ::getcwd( cur, PATH_MAX ) ) {
+ 	char tmp[PATH_MAX+1];
+@@ -83,6 +97,7 @@
+     	// always make sure we go back to the current dir
+ 	::chdir( cur );
+     }
++#endif  /* __GLIBC__ && !PATH_MAX */
+     return r;
+ }
+ 
+@@ -144,9 +159,17 @@
+ 
+     struct stat st;
+     if ( ::stat( ".", &st ) == 0 ) {
++#if defined(__GLIBC__)  && !defined(PATH_MAX)
++        char *currentName = ::get_current_dir_name();
++        if ( currentName ) {
++            result = QFile::decodeName(currentName);
++            free( currentName );
++        }
++#else
+ 	char currentName[PATH_MAX+1];
+ 	if ( ::getcwd( currentName, PATH_MAX ) )
+ 	    result = QFile::decodeName(currentName);
++#endif /* __GLIBC__ && !PATH_MAX */
+ #if defined(QT_DEBUG)
+ 	if ( result.isNull() )
+ 	    qWarning( "QDir::currentDirPath: getcwd() failed" );
+--- qt-x11-free-3.3.6~/src/tools/qfileinfo_unix.cpp	2006-09-28 07:45:03.000000000 +0000
++++ qt-x11-free-3.3.6/src/tools/qfileinfo_unix.cpp	2006-09-28 07:45:07.000000000 +0000
+@@ -45,6 +45,9 @@
+ #if !defined(QWS) && defined(Q_OS_MAC)
+ # include <qt_mac.h>
+ #endif
++#if defined(Q_OS_HURD)
++# include <stdlib.h>
++#endif
+ 
+ void QFileInfo::slashify( QString& )
+ {
+@@ -124,16 +127,43 @@
+ 
+ QString QFileInfo::readLink() const
+ {
++    if ( !isSymLink() )
++        return QString();
+ #if defined(Q_OS_UNIX) && !defined(Q_OS_OS2EMX)
++#if defined(__GLIBC__) && !defined(PATH_MAX)
++    int size = 256;
++    char *s = NULL, *s2;
++
++    while (1)
++    {
++        s2 = (char *) realloc (s, size);
++        if (s2 == NULL) {
++            free( s );
++            return QString();
++        }
++        s = s2;
++        int len = readlink ( QFile::encodeName(fn).data(), s, size );
++        if ( len < 0 ) {
++            free( s );
++            return QString();
++        }
++        if ( len < size ) {
++            s[len] = '\0';
++            QString str = QFile::decodeName(s);
++            free(s);
++            return str;
++        }
++        size *= 2;
++    }
++#else
+     char s[PATH_MAX+1];
+-    if ( !isSymLink() )
+-	return QString();
+     int len = readlink( QFile::encodeName(fn).data(), s, PATH_MAX );
+     if ( len >= 0 ) {
+ 	s[len] = '\0';
+ 	return QFile::decodeName(s);
+     }
+-#endif
++#endif /* __GLIBC__ && !PATH_MAX */
++#endif /* Q_OS_UNIX && !Q_OS_OS2EMX */
+ #if !defined(QWS) && defined(Q_OS_MAC)
+     {
+         FSRef fref;
+--- qt-x11-free-3.3.6~/src/tools/qglobal.h	2006-09-28 07:45:04.000000000 +0000
++++ qt-x11-free-3.3.6/src/tools/qglobal.h	2006-09-28 07:45:07.000000000 +0000
+@@ -112,6 +112,8 @@
+ #  define Q_OS_ULTRIX
+ #elif defined(sinix)
+ #  define Q_OS_RELIANT
++#elif defined(__GNU__)
++#  define Q_OS_HURD
+ #elif defined(__linux__) || defined(__linux) || defined(__GNU__) || defined(__GLIBC__)
+ #  define Q_OS_LINUX
+ #elif defined(__FreeBSD__) || defined(__DragonFly__)

Modified: trunk/packages/qt-x11-free/debian/rules
===================================================================
--- trunk/packages/qt-x11-free/debian/rules	2006-10-21 14:10:27 UTC (rev 4742)
+++ trunk/packages/qt-x11-free/debian/rules	2006-10-21 14:12:11 UTC (rev 4743)
@@ -14,6 +14,12 @@
 DEB_HOST_ARCH		?= $(shell dpkg-architecture -qDEB_HOST_ARCH)
 DEB_HOST_ARCH_CPU	?= $(shell dpkg-architecture -qDEB_HOST_ARCH_CPU)
 
+ifeq ($(DEB_HOST_ARCH_OS),hurd)
+	PLATFORM_ARG = hurd-g++
+else
+	PLATFORM_ARG = linux-g++
+endif
+
 # dpatch stuff
 include /usr/share/dpatch/dpatch.make
 
@@ -41,7 +47,7 @@
 		-shared				\
 		-fast				\
 		-no-exceptions			\
-		-platform linux-g++		\
+		-platform $(PLATFORM_ARG)	\
 						\
 		-nis				\
 		-no-pch				\
@@ -95,6 +101,11 @@
 	IBASE =
 endif
 
+ifeq ($(DEB_HOST_ARCH_OS),hurd)
+	CONFIGURE_OPTS += -no-sql-ibase
+	IBASE = -Nlibqt3-mt-ibase
+endif
+
 ifeq ($(DEB_HOST_ARCH),arm)
 	CONFIGURE_OPTS += -DQT_QLOCALE_USES_FCVT
 endif




More information about the pkg-kde-commits mailing list