upgrade Qt version 4.7.0 -> 4.8.1
authorMirko Vogt <mirko@openwrt.org>
Sun, 15 Apr 2012 17:06:57 +0000 (17:06 +0000)
committerMirko Vogt <mirko@openwrt.org>
Sun, 15 Apr 2012 17:06:57 +0000 (17:06 +0000)
 - remove libc checks since by now every libc available in OpenWrt has full nptl support
 - add '-fpermissive' to CFLAGS to compile with GCC 4.7.0
 - package qt4-xmlpatterns
 - remove patches which went upstream meanwhile

SVN-Revision: 31292

xorg/lib/qt4/Makefile
xorg/lib/qt4/files/qws-qmake.conf
xorg/lib/qt4/files/x11-qmake.conf
xorg/lib/qt4/patches/400-do-not-pack-structs.patch [deleted file]
xorg/lib/qt4/patches/500-allow-device-grabbing.patch [deleted file]

index 04ac0aad6a5783e50b022ea34aaeae3da4514524..0fa6d36ac90c34bde2a3f8f4963da6e94116d9a7 100644 (file)
@@ -1,5 +1,5 @@
 #
-# Copyright (C) 2008-2012 OpenWrt.org
+# Copyright (C) 2008-2010 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -12,9 +12,9 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=qt4
-PKG_VERSION:=4.7.0
+PKG_VERSION:=4.8.1
 PKG_RELEASE:=1
-PKG_MD5SUM:=3a2f25b9b115037277f4fb759194a7a5
+PKG_MD5SUM:=7960ba8e18ca31f0c6e4895a312f92ff
 
 PKG_SOURCE:=qt-everywhere-opensource-src-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=ftp://ftp.qt.nokia.com/qt/source
@@ -43,17 +43,6 @@ include $(INCLUDE_DIR)/package.mk
 include $(INCLUDE_DIR)/nls.mk
 -include $(if $(DUMP),,./files/qmake.mk)
 
-# this should be moved to a more generic place later, as other packages are configured different as well depending on available nptl support
-ifeq ($(CONFIG_USE_GLIBC),y)
-  NPTL:=y
-endif
-ifeq ($(CONFIG_USE_EGLIBC),y)
-  NPTL:=y
-endif
-ifeq ($(CONFIG_UCLIBC_VERSION_0_9_32),y)
-  NPTL:=y
-endif
-
 define Package/qt4/config
        source "$(SOURCE)/Config.in"
 endef
@@ -118,12 +107,6 @@ define Package/qt4-pgsql
   DEPENDS+=+libpq
 endef
 
-define Package/qt4-pgsql
-  $(call Package/qt4/Default)
-  TITLE+=(pgsql)
-  DEPENDS+=+libpq
-endef
-
 define Package/qt4-openssl
   $(call Package/qt4/Default)
   TITLE+=(openssl)
@@ -160,13 +143,12 @@ endef
 define Package/qt4-webkit
   $(call Package/qt4/Default)
   TITLE+=(webkit)
-  DEPENDS+=@USE_GLIBC||@USE_EGLIBC||@UCLIBC_VERSION_0_9_32 +libsqlite3 +qt4-phonon +qt4-dbus +qt4-xml +qt4-gui +qt4-network # versions of uclibc prior 0.9.32 do not have nptl support
+  DEPENDS+=+libsqlite3 +qt4-phonon +qt4-dbus +qt4-xml +qt4-gui +qt4-network
 endef
 
 define Package/qt4-script
   $(call Package/qt4/Default)
   TITLE+=(script)
-  DEPENDS+=@USE_GLIBC||@USE_EGLIBC||@UCLIBC_VERSION_0_9_32 # versions of uclibc prior 0.9.32 do not have nptl support
 endef
 
 define Package/qt4-scripttools
@@ -223,6 +205,11 @@ define Package/qt4-xml
   TITLE+=(xml)
 endef
 
+define Package/qt4-xmlpatterns
+  $(call Package/qt4/Default)
+  TITLE+=(xmlpatterns)
+endef
+
 ###
 define Package/qt4-drivers-mouse/Default
   $(call Package/qt4/Default)
@@ -281,6 +268,7 @@ TARGET_INCDIRS+=$(STAGING_DIR)/include $(STAGING_DIR)/usr/include $(TOOLCHAIN_DI
 TARGET_LIBDIRS+=$(STAGING_DIR)/lib $(STAGING_DIR)/usr/lib $(TOOLCHAIN_DIR)/lib $(TOOLCHAIN_DIR)/usr/lib
 TARGET_LDFLAGS+=-Wl,-rpath-link=$(STAGING_DIR)/usr/lib,-rpath-link=$(PKG_BUILD_DIR)/lib
 TARGET_CFLAGS+=-I$(STAGING_DIR)/usr/include/freetype2 -I$(PKG_BUILD_DIR)/include -I$(STAGING_DIR)/usr/include/directfb
+TARGET_CFLAGS+=-fpermissive
 
 ifeq ($(CONFIG_QT4_WS_QWS),y)
   FILEPFX:=qws-
@@ -343,10 +331,22 @@ define Build/Configure
                        -release \
                        -confirm-license \
                        -opensource \
+                       -stl \
+                       $(if $(CONFIG_PACKAGE_qt4-xmlpatterns),-xmlpatterns,-no-xmlpatterns) \
+                       -no-fast \
+                       -no-largefile \
+                       -exceptions \
                        -no-mmx \
                        -no-3dnow \
                        -no-sse \
                        -no-sse2 \
+                       -no-sse3 \
+                       -no-ssse3 \
+                       -no-sse4.1 \
+                       -no-sse4.2 \
+                       -no-avx \
+                       -no-neon \
+                       -no-armfpa \
                        -system-zlib \
                        -system-libtiff \
                        -system-libpng \
@@ -721,6 +721,15 @@ define Package/qt4-xml/install
                $(1)/usr/lib/
 endef
 
+define Package/qt4-xmlpatterns/install
+       $(INSTALL_DIR) \
+               $(1)/usr/lib
+
+       $(CP) \
+               $(PKG_INSTALL_DIR)/usr/lib/libQtXmlPatterns.so* \
+               $(1)/usr/lib/
+endef
+
 # plugins
 #  mouse drivers
 define Package/qt4-drivers-mouse-tpmousedriver/install
@@ -808,6 +817,7 @@ $(eval $(call BuildPackage,qt4-dbus))
 $(eval $(call BuildPackage,qt4-qt3support))
 $(eval $(call BuildPackage,qt4-declarative))
 $(eval $(call BuildPackage,qt4-xml))
+$(eval $(call BuildPackage,qt4-xmlpatterns))
 
 $(eval $(call BuildPackage,qt4-drivers-mouse-tpmousedriver))
 $(eval $(call BuildPackage,qt4-drivers-mouse-pcmousedriver))
index 5e317dcd707783a0b3f7be4fc28e036312a3a816..05ea6ae239c5bf3d80573e5f8ef91f890ed268d7 100644 (file)
@@ -1,4 +1,5 @@
-include(../../common/g++.conf)
+include(../../common/gcc-base-unix.conf)
+include(../../common/g++-unix.conf)
 include(../../common/linux.conf)
 include(../../common/qws.conf)
 
index b5a49c5f8ba3a7ffd65130132122c2b095d507ce..efa28aacb58b4be29112b9d5c8915a9bd6ff0287 100644 (file)
@@ -4,7 +4,8 @@ CONFIG                          += qt warn_on release incremental link_prl
 QT                             += core gui
 QMAKE_INCREMENTAL_STYLE                = sublib
 
-include(../common/g++.conf)
+include(../common/gcc-base-unix.conf)
+include(../common/g++-unix.conf)
 include(../common/linux.conf)
 
 # QMAKE_{INC,LIB}DIR_QT needs to be overridden,
diff --git a/xorg/lib/qt4/patches/400-do-not-pack-structs.patch b/xorg/lib/qt4/patches/400-do-not-pack-structs.patch
deleted file mode 100644 (file)
index c94cd35..0000000
+++ /dev/null
@@ -1,263 +0,0 @@
-commit 57ad39ec62175eeea023ca802448ebb1605dca23
-Author: Andreas Kling <andreas.kling@nokia.com>
-Date:   Fri Nov 12 16:08:35 2010 +0100
-
-    Don't pack Harfbuzz structs, this causes unaligned access crashes.
-    
-    The memory-greediest structs have been reordered anyway, so the gain
-    from forcibly packing them is mostly negligible.
-    
-    Task-number: QTBUG-13395
-    Reviewed-by: Thiago Macieira <thiago.macieira@nokia.com>
-
-diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-buffer.h b/src/3rdparty/harfbuzz/src/harfbuzz-buffer.h
-index 0d7c2c2..0d631b2 100644
---- a/src/3rdparty/harfbuzz/src/harfbuzz-buffer.h
-+++ b/src/3rdparty/harfbuzz/src/harfbuzz-buffer.h
-@@ -32,10 +32,6 @@
- HB_BEGIN_HEADER
--#ifdef HB_USE_PACKED_STRUCTS
--#pragma pack(push, 1)
--#endif
--
- typedef struct HB_GlyphItemRec_ {
-   HB_UInt     gindex;
-   HB_UInt     properties;
-@@ -93,10 +89,6 @@ hb_buffer_add_glyph( HB_Buffer buffer,
-                     HB_UInt    properties,
-                     HB_UInt    cluster );
--#ifdef HB_USE_PACKED_STRUCTS
--#pragma pack(pop)
--#endif
--
- HB_END_HEADER
- #endif /* HARFBUZZ_BUFFER_H */
-diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-gdef-private.h b/src/3rdparty/harfbuzz/src/harfbuzz-gdef-private.h
-index 2a6d958..94e9b43 100644
---- a/src/3rdparty/harfbuzz/src/harfbuzz-gdef-private.h
-+++ b/src/3rdparty/harfbuzz/src/harfbuzz-gdef-private.h
-@@ -33,11 +33,6 @@
- HB_BEGIN_HEADER
--
--#ifdef HB_USE_PACKED_STRUCTS
--#pragma pack(push, 1)
--#endif
--
- /* Attachment related structures */
- struct  HB_AttachPoint_
-@@ -126,10 +121,6 @@ _HB_GDEF_LoadMarkAttachClassDef_From_LookupFlags( HB_GDEFHeader* gdef,
-                                                 HB_Lookup*     lo,
-                                                 HB_UShort      num_lookups );
--#ifdef HB_USE_PACKED_STRUCTS
--#pragma pack(pop)
--#endif
--
- HB_END_HEADER
- #endif /* HARFBUZZ_GDEF_PRIVATE_H */
-diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-gdef.h b/src/3rdparty/harfbuzz/src/harfbuzz-gdef.h
-index f9a03dd..ccb6bf9 100644
---- a/src/3rdparty/harfbuzz/src/harfbuzz-gdef.h
-+++ b/src/3rdparty/harfbuzz/src/harfbuzz-gdef.h
-@@ -31,10 +31,6 @@
- HB_BEGIN_HEADER
--#ifdef HB_USE_PACKED_STRUCTS
--#pragma pack(push, 1)
--#endif
--
- /* GDEF glyph properties.  Note that HB_GDEF_COMPONENT has no corresponding
-  * flag in the LookupFlag field.     */
- #define HB_GDEF_BASE_GLYPH  0x0002
-@@ -131,10 +127,6 @@ HB_Error  HB_GDEF_Build_ClassDefinition( HB_GDEFHeader*  gdef,
-                                        HB_UShort*       glyph_array,
-                                        HB_UShort*       class_array );
--#ifdef HB_USE_PACKED_STRUCTS
--#pragma pack(pop)
--#endif
--
- HB_END_HEADER
- #endif /* HARFBUZZ_GDEF_H */
-diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-global.h b/src/3rdparty/harfbuzz/src/harfbuzz-global.h
-index bccd6a2..d4e6b46 100644
---- a/src/3rdparty/harfbuzz/src/harfbuzz-global.h
-+++ b/src/3rdparty/harfbuzz/src/harfbuzz-global.h
-@@ -39,10 +39,6 @@
- #define HB_END_HEADER  /* nothing */
- #endif
--#if defined(__GNUC__) || defined(_MSC_VER)
--#define HB_USE_PACKED_STRUCTS
--#endif
--
- HB_BEGIN_HEADER
- #ifndef FALSE
-diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-gpos-private.h b/src/3rdparty/harfbuzz/src/harfbuzz-gpos-private.h
-index 39f3159..63ba907 100644
---- a/src/3rdparty/harfbuzz/src/harfbuzz-gpos-private.h
-+++ b/src/3rdparty/harfbuzz/src/harfbuzz-gpos-private.h
-@@ -32,10 +32,6 @@
- HB_BEGIN_HEADER
--#ifdef HB_USE_PACKED_STRUCTS
--#pragma pack(push, 1)
--#endif
--
- /* shared tables */
- #define VR_X_PLACEMENT_DEVICE 0
-@@ -720,10 +716,6 @@ HB_INTERNAL void
- _HB_GPOS_Free_SubTable( HB_GPOS_SubTable* st,
-                             HB_UShort     lookup_type );
--#ifdef HB_USE_PACKED_STRUCTS
--#pragma pack(pop)
--#endif
--
- HB_END_HEADER
- #endif /* HARFBUZZ_GPOS_PRIVATE_H */
-diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-gsub-private.h b/src/3rdparty/harfbuzz/src/harfbuzz-gsub-private.h
-index 7eb329e..df0c3f6 100644
---- a/src/3rdparty/harfbuzz/src/harfbuzz-gsub-private.h
-+++ b/src/3rdparty/harfbuzz/src/harfbuzz-gsub-private.h
-@@ -32,10 +32,6 @@
- HB_BEGIN_HEADER
--#ifdef HB_USE_PACKED_STRUCTS
--#pragma pack(push, 1)
--#endif
--
- typedef union HB_GSUB_SubTable_  HB_GSUB_SubTable;
- /* LookupType 1 */
-@@ -474,10 +470,6 @@ HB_INTERNAL void
- _HB_GSUB_Free_SubTable( HB_GSUB_SubTable* st,
-                             HB_UShort     lookup_type );
--#ifdef HB_USE_PACKED_STRUCTS
--#pragma pack(pop)
--#endif
--
- HB_END_HEADER
- #endif /* HARFBUZZ_GSUB_PRIVATE_H */
-diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-gsub.h b/src/3rdparty/harfbuzz/src/harfbuzz-gsub.h
-index b00df44..6e452bd 100644
---- a/src/3rdparty/harfbuzz/src/harfbuzz-gsub.h
-+++ b/src/3rdparty/harfbuzz/src/harfbuzz-gsub.h
-@@ -31,11 +31,6 @@
- HB_BEGIN_HEADER
--
--#ifdef HB_USE_PACKED_STRUCTS
--#pragma pack(push, 1)
--#endif
--
- /* Lookup types for glyph substitution */
- #define HB_GSUB_LOOKUP_SINGLE        1
-@@ -139,10 +134,6 @@ HB_Error  HB_GSUB_Register_Alternate_Function( HB_GSUBHeader*  gsub,
- HB_Error  HB_GSUB_Apply_String( HB_GSUBHeader*   gsub,
-                               HB_Buffer        buffer );
--#ifdef HB_USE_PACKED_STRUCTS
--#pragma pack(pop)
--#endif
--
- HB_END_HEADER
- #endif /* HARFBUZZ_GSUB_H */
-diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-open.h b/src/3rdparty/harfbuzz/src/harfbuzz-open.h
-index 4ba6cf5..9ad7c98 100644
---- a/src/3rdparty/harfbuzz/src/harfbuzz-open.h
-+++ b/src/3rdparty/harfbuzz/src/harfbuzz-open.h
-@@ -30,10 +30,6 @@
- HB_BEGIN_HEADER
--#ifdef HB_USE_PACKED_STRUCTS
--#pragma pack(push, 1)
--#endif
--
- /* Use this if a feature applies to all glyphs */
- #define HB_ALL_GLYPHS                    0xFFFF
-@@ -279,10 +275,6 @@ enum  HB_Type_
- typedef enum HB_Type_  HB_Type;
--#ifdef HB_USE_PACKED_STRUCTS
--#pragma pack(pop)
--#endif
--
- HB_END_HEADER
- #endif /* HARFBUZZ_OPEN_H */
-diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-shaper.h b/src/3rdparty/harfbuzz/src/harfbuzz-shaper.h
-index ab5c07a..470e27b 100644
---- a/src/3rdparty/harfbuzz/src/harfbuzz-shaper.h
-+++ b/src/3rdparty/harfbuzz/src/harfbuzz-shaper.h
-@@ -34,10 +34,6 @@
- HB_BEGIN_HEADER
--#ifdef HB_USE_PACKED_STRUCTS
--#pragma pack(push, 1)
--#endif
--
- /*
-    using anything else than signed or unsigned for bitfields in C is non standard,
-    but accepted by almost all compilers. And it gives a significant reduction in
-@@ -258,10 +254,6 @@ typedef struct HB_Font_ {
-     void *userData;
- } HB_FontRec;
--#ifdef HB_USE_PACKED_STRUCTS
--#pragma pack(pop)
--#endif
--
- typedef struct HB_ShaperItem_ HB_ShaperItem;
- struct HB_ShaperItem_ {
-diff --git a/src/3rdparty/harfbuzz/src/harfbuzz-stream.h b/src/3rdparty/harfbuzz/src/harfbuzz-stream.h
-index a155cc2..cfbfb1c 100644
---- a/src/3rdparty/harfbuzz/src/harfbuzz-stream.h
-+++ b/src/3rdparty/harfbuzz/src/harfbuzz-stream.h
-@@ -30,10 +30,6 @@
- HB_BEGIN_HEADER
--#ifdef HB_USE_PACKED_STRUCTS
--#pragma pack(push, 1)
--#endif
--
- typedef struct HB_StreamRec_
- {
-     HB_Byte*       base;
-@@ -42,10 +38,6 @@ typedef struct HB_StreamRec_
-     HB_UInt        pos;
- } HB_StreamRec;
--#ifdef HB_USE_PACKED_STRUCTS
--#pragma pack(pop)
--#endif
--
- HB_END_HEADER
- #endif
diff --git a/xorg/lib/qt4/patches/500-allow-device-grabbing.patch b/xorg/lib/qt4/patches/500-allow-device-grabbing.patch
deleted file mode 100644 (file)
index 50d7aa0..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
---- qt-everywhere-opensource-src-4.7.0/src/gui/embedded/qkbdlinuxinput_qws.cpp 2010-09-10 11:05:24.000000000 +0200
-+++ qt-everywhere-opensource-src-4.7.0/src/gui/embedded/qkbdlinuxinput_qws.cpp.mod     2011-04-28 21:57:04.208449828 +0200
-@@ -103,6 +103,7 @@
-     QString dev = QLatin1String("/dev/input/event1");
-     int repeat_delay = -1;
-     int repeat_rate = -1;
-+    int grab = 0;
-     QStringList args = device.split(QLatin1Char(':'));
-     foreach (const QString &arg, args) {
-@@ -110,12 +111,15 @@
-             repeat_delay = arg.mid(13).toInt();
-         else if (arg.startsWith(QLatin1String("repeat-rate=")))
-             repeat_rate = arg.mid(12).toInt();
-+        else if (arg.startsWith(QLatin1String("grab=")))
-+            grab = arg.mid(5).toInt();
-         else if (arg.startsWith(QLatin1String("/dev/")))
-             dev = arg;
-     }
-     m_fd = QT_OPEN(dev.toLocal8Bit().constData(), O_RDWR, 0);
-     if (m_fd >= 0) {
-+        ::ioctl(m_fd, EVIOCGRAB, grab);
-         if (repeat_delay > 0 && repeat_rate > 0) {
-             int kbdrep[2] = { repeat_delay, repeat_rate };
-             ::ioctl(m_fd, EVIOCSREP, kbdrep);
---- qt-everywhere-opensource-src-4.7.0/src/gui/embedded/qmouselinuxinput_qws.cpp       2010-09-10 11:05:24.000000000 +0200
-+++ qt-everywhere-opensource-src-4.7.0/src/gui/embedded/qmouselinuxinput_qws.cpp.mod   2011-04-28 21:57:13.358562410 +0200
-@@ -43,6 +43,7 @@
- #include <QScreen>
- #include <QSocketNotifier>
-+#include <QStringList>
- #include <qplatformdefs.h>
- #include <private/qcore_unix_p.h> // overrides QT_OPEN
-@@ -101,11 +102,19 @@
-     setObjectName(QLatin1String("LinuxInputSubsystem Mouse Handler"));
-     QString dev = QLatin1String("/dev/input/event0");
--    if (device.startsWith(QLatin1String("/dev/")))
--        dev = device;
-+    int grab = 0;
-+
-+    QStringList args = device.split(QLatin1Char(':'));
-+    foreach (const QString &arg, args) {
-+        if (arg.startsWith(QLatin1String("grab=")))
-+            grab = arg.mid(5).toInt();
-+        else if (arg.startsWith(QLatin1String("/dev/")))
-+            dev = arg;
-+    }
-     m_fd = QT_OPEN(dev.toLocal8Bit().constData(), O_RDONLY | O_NDELAY, 0);
-     if (m_fd >= 0) {
-+        ::ioctl(m_fd, EVIOCGRAB, grab);
-         m_notify = new QSocketNotifier(m_fd, QSocketNotifier::Read, this);
-         connect(m_notify, SIGNAL(activated(int)), this, SLOT(readMouseData()));
-     } else {