[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

X Strike Force X.Org X11 SVN commit: r293 - in trunk/debian: . patches



Author: dnusinow
Date: 2005-07-01 17:46:28 -0500 (Fri, 01 Jul 2005)
New Revision: 293

Added:
   trunk/debian/patches/304_arm_Xlib.h_kludge_around_ARM_ABI_brain_damage.diff
Modified:
   trunk/debian/TODO
Log:
- Patch audit
  - Port 304_arm_Xlib.h_kludge_around_ARM_ABI_brain_damage.diff from
	xfree86 trunk


Modified: trunk/debian/TODO
===================================================================
--- trunk/debian/TODO	2005-06-29 04:01:27 UTC (rev 292)
+++ trunk/debian/TODO	2005-07-01 22:46:28 UTC (rev 293)
@@ -41,7 +41,6 @@
     xc/programs/xkbcomp/symbols/pc/dvorak
     xc/programs/xkbcomp/symbols/pc/pl
     xc/programs/xkbcomp/symbols/pc/pl2
-304_arm_Xlib.h_kludge_around_ARM_ABI_brain_damage.diff - needs to be ported
 913_debian_remove_code_ref_to_object_code_files.diff - needs validation
  * patch to xc/programs/Xserver/hw/xfree86/drivers/rendition/vboard.c lost
  * patches to xc/programs/Xserver/hw/xfree86/drivers/{mga,rendition}/Imakefile

Added: trunk/debian/patches/304_arm_Xlib.h_kludge_around_ARM_ABI_brain_damage.diff
===================================================================
--- trunk/debian/patches/304_arm_Xlib.h_kludge_around_ARM_ABI_brain_damage.diff	2005-06-29 04:01:27 UTC (rev 292)
+++ trunk/debian/patches/304_arm_Xlib.h_kludge_around_ARM_ABI_brain_damage.diff	2005-07-01 22:46:28 UTC (rev 293)
@@ -0,0 +1,26 @@
+$Id$
+
+We have to do this to kludge around a bad decision made long ago in the
+design of the GCC ARM ABI.
+
+For extensive discussion and rationale, please see
+<URL: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=285396 >.
+
+Not submitted upstream to XFree86 or X.Org.
+
+diff -ruN xc-old/lib/X11/Xlib.h xc/lib/X11/Xlib.h
+--- xc-old/lib/X11/Xlib.h	2005-05-08 23:35:32.000000000 -0400
++++ xc/lib/X11/Xlib.h	2005-07-01 18:23:07.000000000 -0400
+@@ -1068,7 +1068,11 @@
+ typedef struct {		/* normal 16 bit characters are two bytes */
+     unsigned char byte1;
+     unsigned char byte2;
+-} XChar2b;
++} 
++#if defined(__GNUC__) && defined(__arm__) && !defined(__ARM_EABI__) __attribute__ ((packed))
++#endif
++XChar2b;
++
+ 
+ typedef struct {
+     XChar2b *chars;		/* two byte characters */



Reply to: