Source: qt4-x11
Severity: important
Tags: patch
Hello,
This patch is needed to make qt4-x11 buildable on armhf, right now
the package fails due to thumb2 errors ([1]).
The patches have been backported from Ubuntu.
Please consider integrating this patch.
Konstantinos
[1]:
http://buildd.debian-ports.org/fetch.php?pkg=qt4-x11&arch=armhf&ver=4%3A4.7.2-1&stamp=1299739506&file=log&as=raw
-- System Information:
Debian Release: squeeze/sid
Architecture: armhf (armv7l)
Kernel: Linux 2.6.31.14-efikamx (PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
diff -ruN qt4-x11-4.7.2/debian/changelog qt4-x11-4.7.2.armhf//debian/changelog
--- qt4-x11-4.7.2/debian/changelog 2011-03-07 12:42:22.0 +0200
+++ qt4-x11-4.7.2.armhf//debian/changelog 2011-03-15 03:55:02.0 +0200
@@ -1,3 +1,11 @@
+qt4-x11 (4:4.7.2-1.1) unstable; urgency=low
+
+ * armhf support
+backport from Ubuntu:
+* http://launchpadlibrarian.net/66374974/x-0003-Use-GCC-intrinsics-for-armv6-atomic-operations.patch
+
+ -- Konstantinos Margaritis Mon, 14 Mar 2011 20:02:08 +
+
qt4-x11 (4:4.7.2-1) unstable; urgency=low
* New upstream release.
diff -ruN qt4-x11-4.7.2/debian/patches/94_armv6_uname_entry.diff qt4-x11-4.7.2.armhf//debian/patches/94_armv6_uname_entry.diff
--- qt4-x11-4.7.2/debian/patches/94_armv6_uname_entry.diff 1970-01-01 02:00:00.0 +0200
+++ qt4-x11-4.7.2.armhf//debian/patches/94_armv6_uname_entry.diff 2011-03-13 02:34:35.0 +0200
@@ -0,0 +1,15 @@
+Description: Add armv6 uname entry for armhf
+---
+
+--- a/configure 2011-03-10 15:25:58.0 +0200
b/configure 2011-03-11 10:40:13.837312856 +0200
+@@ -182,6 +182,9 @@
+ armel)
+ UNAME_MACHINE="armv5tel"
+ ;;
++ armhf)
++ UNAME_MACHINE="armv6"
++ ;;
+ hppa)
+ UNAME_MACHINE="parisc64"
+ ;;
diff -ruN qt4-x11-4.7.2/debian/patches/95_neon_flags.patch qt4-x11-4.7.2.armhf//debian/patches/95_neon_flags.patch
--- qt4-x11-4.7.2/debian/patches/95_neon_flags.patch 1970-01-01 02:00:00.0 +0200
+++ qt4-x11-4.7.2.armhf//debian/patches/95_neon_flags.patch 2011-03-13 02:34:01.0 +0200
@@ -0,0 +1,18 @@
+## Description: add some description
+## Origin/Author: add some origin or author
+## Bug: bug URL
+Index: qt4-x11-4.7.2/src/gui/gui.pro
+===
+--- qt4-x11-4.7.2.orig/src/gui/gui.pro 2011-03-06 21:41:47.058276259 +0200
qt4-x11-4.7.2/src/gui/gui.pro 2011-03-06 21:38:16.569232507 +0200
+@@ -65,9 +65,9 @@
+ neon:*-g++* {
+ DEFINES += QT_HAVE_NEON
+ HEADERS += $$NEON_HEADERS
+-SOURCES += $$NEON_SOURCES
+
+ DRAWHELPER_NEON_ASM_FILES = $$NEON_ASM
++DRAWHELPER_NEON_ASM_FILES += $$NEON_SOURCES
+
+ neon_compiler.commands = $$QMAKE_CXX -c -mfpu=neon
+ neon_compiler.commands += $(CXXFLAGS) $(INCPATH) ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
diff -ruN qt4-x11-4.7.2/debian/patches/series qt4-x11-4.7.2.armhf//debian/patches/series
--- qt4-x11-4.7.2/debian/patches/series 2011-03-07 12:42:08.0 +0200
+++ qt4-x11-4.7.2.armhf//debian/patches/series 2011-03-15 04:09:27.0 +0200
@@ -31,5 +31,9 @@
89_powerpc_opts.diff
91_s390_use_gstabs.diff
92_armel_gcc43_valist_compat.diff
+x-0003-Use-GCC-intrinsics-for-armv6-atomic-operations.patch
+94_armv6_uname_entry.diff
+95_neon_flags.patch
96_webkit_no_gc_sections.diff
99_hppa_bug561203_decrease_failure_rate.diff
+debian-changes-4:4.7.2-1.1
diff -ruN qt4-x11-4.7.2/debian/patches/x-0003-Use-GCC-intrinsics-for-armv6-atomic-operations.patch qt4-x11-4.7.2.armhf//debian/patches/x-0003-Use-GCC-intrinsics-for-armv6-atomic-operations.patch
--- qt4-x11-4.7.2/debian/patches/x-0003-Use-GCC-intrinsics-for-armv6-atomic-operations.patch 1970-01-01 02:00:00.0 +0200
+++ qt4-x11-4.7.2.armhf//debian/patches/x-0003-Use-GCC-intrinsics-for-armv6-atomic-operations.patch 2011-03-15 00:43:15.0 +0200
@@ -0,0 +1,200 @@
+From 7aaf387cdb578327017169a9c97bcf6c0581a780 Mon Sep 17 00:00:00 2001
+From: michaedw in build chroot
+Date: Mon, 14 Mar 2011 01:52:46 +
+Subject: [PATCH] Use GCC intrinsics for armv6 atomic operations
+
+---
+ src/corelib/arch/qatomic_armv6.h | 146 +++--
+ 1 files changed, 28 insertions(+), 118 deletions(-)
+
+diff --git a/src/corelib/arch/qatomic_armv6.h b/src/corelib/arch/qatomic_armv6.h
+index 53f7907..7dfc002 100644
+--- a/src/corelib/arch/qatomic_armv6.h
b/src/corelib/arch/qatomic_armv6.h
+@@ -104,155 +104,65 @@ Q_INLINE_TEMPLATE bool QBasicAtomicPointer::isFetchAndAddWaitFree()
+
+ inline bool QBasicAtomicInt::ref()
+ {
+-register int newValue;
+-register int result;
+-asm volatile("0:\n"
+- "ldrex %[newValue], [%[_q_value]]\n"
+- "add %[newValue], %[newValue], #1\n"
+- "strex %[result], %[newValue], [%[_q_value]]\n"
+- "teq %[result], #0\n"
+- "bne 0b\n"
+- : [newValue] "=&r" (newValue