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

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



Author: dnusinow
Date: 2005-07-21 17:36:23 -0500 (Thu, 21 Jul 2005)
New Revision: 388

Added:
   trunk/debian/patches/203_alpha_elfloader_support_R_ALPHA_BRSGP.diff
Modified:
   trunk/debian/changelog
   trunk/debian/patches/303_arm_cache_flush.diff
   trunk/debian/patches/905_debian_xdm.diff
Log:
- Incorporate ELF loader patch for arm. Thanks Steve Langasek. Closes: #319298


Modified: trunk/debian/changelog
===================================================================
--- trunk/debian/changelog	2005-07-21 16:26:23 UTC (rev 387)
+++ trunk/debian/changelog	2005-07-21 22:36:23 UTC (rev 388)
@@ -1,6 +1,8 @@
 xorg-x11 (6.8.2.dfsg.1-4+SVN) UNRELEASED; urgency=low
 
   Changes by David Nusinow:
+     - Incorporate ELF loader patch for arm. Thanks Steve Langasek.
+       Closes: #319298
 
   Changes by Eugene Konev:
      - Do not impose selinux on the whole world out there: move selinux 

Added: trunk/debian/patches/203_alpha_elfloader_support_R_ALPHA_BRSGP.diff
===================================================================
--- trunk/debian/patches/203_alpha_elfloader_support_R_ALPHA_BRSGP.diff	2005-07-21 16:26:23 UTC (rev 387)
+++ trunk/debian/patches/203_alpha_elfloader_support_R_ALPHA_BRSGP.diff	2005-07-21 22:36:23 UTC (rev 388)
@@ -0,0 +1,72 @@
+$Id$
+
+Fix for ELF loader suckage on alpha. Patch by Jay Estabrook.
+
+diff -ru3 ./xc/programs/Xserver/hw/xfree86/loader/elf.h ../build-tree.new/xc/programs/Xserver/hw/xfree86/loader/elf.h
+--- ./xc/programs/Xserver/hw/xfree86/loader/elf.h	2005-07-20 04:06:55.000000000 -0700
++++ ../build-tree.new/xc/programs/Xserver/hw/xfree86/loader/elf.h	2005-07-20 03:53:22.000000000 -0700
+@@ -273,6 +273,7 @@
+ #define R_ALPHA_GLOB_DAT	25	/* Create GOT entry */
+ #define R_ALPHA_JMP_SLOT	26	/* Create PLT entry */
+ #define R_ALPHA_RELATIVE	27	/* Adjust by program base */
++#define R_ALPHA_BRSGP		28	/* Calc displacement for BRS */
+ 
+ /* IA-64 relocations.  */
+ #define R_IA64_NONE		0x00	/* none */
+diff -ru3 ./xc/programs/Xserver/hw/xfree86/loader/elfloader.c ../build-tree.new/xc/programs/Xserver/hw/xfree86/loader/elfloader.c
+--- ./xc/programs/Xserver/hw/xfree86/loader/elfloader.c	2005-07-20 05:13:47.000000000 -0700
++++ ../build-tree.new/xc/programs/Xserver/hw/xfree86/loader/elfloader.c	2005-07-19 13:57:50.000000000 -0700
+@@ -1623,6 +1623,53 @@
+             break;
+         }
+ 
++    case R_ALPHA_BRSGP:
++	{
++	    Elf_Sym *syms;
++	    int      Delta;
++
++	    dest32 = (unsigned int *)((secp + rel->r_offset) + rel->r_addend);
++
++# ifdef ELFDEBUG
++	    ELFDEBUG("R_ALPHA_BRSGP %s\t",
++	           ElfGetSymbolName(elffile, ELF_R_SYM(rel->r_info)));
++
++	    ELFDEBUG("secp=%lx\t", secp);
++	    ELFDEBUG("symval=%lx\t", symval);
++	    ELFDEBUG("dest32=%lx\t", dest32);
++	    ELFDEBUG("*dest32=%8.8x\t", *dest32);
++# endif
++	    syms = (Elf_Sym *) elffile->saddr[elffile->symndx];
++
++	    if (syms[ELF_R_SYM(rel->r_info)].st_other & 0x8)
++		Delta = -4;
++	    else
++		Delta = 4;
++
++	    symval -= (Elf_Addr) (((unsigned char *)dest32) + Delta);
++	    if (symval % 4) {
++		ErrorF("R_ALPHA_BRSGP bad aligment of offset\n");
++	    }
++	    symval = symval >> 2;
++
++# ifdef ELFDEBUG
++	    ELFDEBUG("symval=%lx\t", symval);
++# endif
++
++	    if (symval & 0xffe00000) {
++# ifdef ELFDEBUG
++		ELFDEBUG("R_ALPHA_BRSGP symval too large\n");
++# endif
++	    }
++
++	    *dest32 = (*dest32 & ~0x1fffff) | (symval & 0x1fffff);
++
++# ifdef ELFDEBUG
++	    ELFDEBUG("*dest32=%8.8x\n", *dest32);
++# endif
++	    break;
++	}
++
+ #endif /* alpha */
+ #if defined(__mc68000__)
+     case R_68K_32:

Modified: trunk/debian/patches/303_arm_cache_flush.diff
===================================================================
--- trunk/debian/patches/303_arm_cache_flush.diff	2005-07-21 16:26:23 UTC (rev 387)
+++ trunk/debian/patches/303_arm_cache_flush.diff	2005-07-21 22:36:23 UTC (rev 388)
@@ -1,12 +1,12 @@
-$Id: 303_arm_cache_flush.diff 1105 2004-02-24 08:51:51Z branden $
+$Id$
 
 This patch re-enables cache flushing on ARM.  Which joker turned this
 off?
 
 diff -ruN xc-old/programs/Xserver/hw/xfree86/loader/elfloader.c xc/programs/Xserver/hw/xfree86/loader/elfloader.c
---- xc-old/programs/Xserver/hw/xfree86/loader/elfloader.c	2004-10-27 05:22:18.276673000 +0000
-+++ xc/programs/Xserver/hw/xfree86/loader/elfloader.c	2004-10-27 05:23:44.594551112 +0000
-@@ -2481,9 +2481,7 @@
+--- xc-old/programs/Xserver/hw/xfree86/loader/elfloader.c	2005-07-21 17:04:16.000000000 -0400
++++ xc/programs/Xserver/hw/xfree86/loader/elfloader.c	2005-07-21 17:10:51.000000000 -0400
+@@ -2528,9 +2528,7 @@
  	    val = symval - (unsigned long)dest32 + val;
  	    val >>= 2;
  	    *dest32 = (*dest32 & 0xff000000) | (val & 0x00ffffff);

Modified: trunk/debian/patches/905_debian_xdm.diff
===================================================================
--- trunk/debian/patches/905_debian_xdm.diff	2005-07-21 16:26:23 UTC (rev 387)
+++ trunk/debian/patches/905_debian_xdm.diff	2005-07-21 22:36:23 UTC (rev 388)
@@ -23,34 +23,9 @@
     - Define a default userPath and systemPath.  Again, this smacks of
       the FHS.
 
-diff -ruN xc-old/programs/xdm/Imakefile xc/programs/xdm/Imakefile
---- xc-old/programs/xdm/Imakefile	2004-07-26 22:56:33.000000000 +0000
-+++ xc/programs/xdm/Imakefile	2004-10-27 05:44:24.031128112 +0000
-@@ -289,9 +289,9 @@
- 		  '-DDEF_SYSTEM_SHELL="$(BOURNE_SHELL)"' \
- 		  '-DDEF_FAILSAFE_CLIENT="$(BINDIR)/xterm"' \
- 		  '-DDEF_XDM_CONFIG="$(XDMDIR)/xdm-config"' \
--		  '-DDEF_CHOOSER="$(CHOOSERPATH)"' \
--		  '-DDEF_AUTH_DIR="$(XDMDIR)"' \
--		  '-DDEF_GREETER_LIB="$(XDMDIR)/libXdmGreet.so"'
-+		  '-DDEF_CHOOSER="$(BINDIR)/chooser"' \
-+		  '-DDEF_AUTH_DIR="$(XDMVARDIR)"' \
-+		  '-DDEF_GREETER_LIB="$(USRLIBDIR)/libXdmGreet.so"'
- 
- ComplexProgramTarget_1(xdm,$(LOCAL_LIBRARIES),NullParameter)
- #ifdef LinkConfDirectory
-@@ -316,7 +316,7 @@
- #if BuildChooser
- SpecialCObjectRule(chooser, $(ICONFIGFILES), $(SOCK_DEFINES) $(LIFREQ_FLAGS))
- NormalProgramTarget(chooser,$(OBJS3),$(DEPLIBS3),$(LIBS3),NullParameter)
--InstallProgram(chooser,$(XDMDIR))
-+InstallProgram(chooser,$(BINDIR))
- InstallAppDefaults(Chooser)
- #endif
- #if BuildBoth
 diff -ruN xc-old/programs/xdm/config/Imakefile xc/programs/xdm/config/Imakefile
---- xc-old/programs/xdm/config/Imakefile	2004-07-27 06:24:47.000000000 +0000
-+++ xc/programs/xdm/config/Imakefile	2004-10-27 05:46:38.115744152 +0000
+--- xc-old/programs/xdm/config/Imakefile	2005-07-21 18:03:04.000000000 -0400
++++ xc/programs/xdm/config/Imakefile	2005-07-21 18:09:54.000000000 -0400
 @@ -25,8 +25,13 @@
  
  CHOOSERPATH = $(XDMDIR)/chooser
@@ -65,9 +40,42 @@
  
  XDMLOGDIR = $(LOGDIRECTORY)
  #ifdef VarRunDirectory
+diff -ruN xc-old/programs/xdm/config/xdm-conf.cpp xc/programs/xdm/config/xdm-conf.cpp
+--- xc-old/programs/xdm/config/xdm-conf.cpp	2005-05-08 23:28:35.000000000 -0400
++++ xc/programs/xdm/config/xdm-conf.cpp	2005-07-21 18:09:54.000000000 -0400
+@@ -10,20 +10,22 @@
+ DisplayManager.keyFile:		XDMDIR/xdm-keys
+ DisplayManager.servers:		XDMDIR/Xservers
+ DisplayManager.accessFile:	XDMDIR/Xaccess
++DisplayManager.authDir:		XDMVARDIR
+ DisplayManager.willing:		SU nobody -c XDMDIR/Xwilling
+-! All displays should use authorization, but we cannot be sure
+-! X terminals may not be configured that way, so they will require
++! All displays should use authorization, but we cannot be sure X terminals
++! will be configured to support it, so those that do not will require
+ ! individual resource settings.
+ DisplayManager*authorize:	true
+-! The following three resources set up display :0 as the console.
+-DisplayManager._0.setup:	XDMDIR/Xsetup_0
+-DisplayManager._0.startup:	XDMDIR/GiveConsole
+-DisplayManager._0.reset:	XDMDIR/TakeConsole
+-!
++! Scripts to start the server, start the user session, and reset the server
++DisplayManager*setup:		XDMDIR/Xsetup
++DisplayManager*startup:		XDMDIR/Xstartup
++DisplayManager*reset:		XDMDIR/Xreset
+ DisplayManager*chooser:		CHOOSERPATH
+ DisplayManager*resources:	XDMDIR/Xresources
+ DisplayManager*session:		XDMDIR/Xsession
+ DisplayManager*authComplain:	true
++DisplayManager*userPath:	/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games
++DisplayManager*systemPath:	/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11
+ #ifdef XPM
+ DisplayManager*loginmoveInterval:	10
+ #endif /* XPM */
 diff -ruN xc-old/programs/xdm/config/Xres.cpp xc/programs/xdm/config/Xres.cpp
---- xc-old/programs/xdm/config/Xres.cpp	2004-04-23 19:54:43.000000000 +0000
-+++ xc/programs/xdm/config/Xres.cpp	2004-10-27 05:41:49.531615608 +0000
+--- xc-old/programs/xdm/config/Xres.cpp	2005-07-21 18:03:04.000000000 -0400
++++ xc/programs/xdm/config/Xres.cpp	2005-07-21 18:09:54.000000000 -0400
 @@ -20,10 +20,10 @@
  	Ctrl<Key>Return: set-session-argument(failsafe) finish-field()NLBS
  	<Key>Return: set-session-argument() finish-field()
@@ -82,8 +90,8 @@
  #endif /* XPM */
  xlogin*fail: Login incorrect
 diff -ruN xc-old/programs/xdm/config/Xserv.ws.cpp xc/programs/xdm/config/Xserv.ws.cpp
---- xc-old/programs/xdm/config/Xserv.ws.cpp	2003-11-14 16:49:22.000000000 +0000
-+++ xc/programs/xdm/config/Xserv.ws.cpp	2004-10-27 05:41:49.532615456 +0000
+--- xc-old/programs/xdm/config/Xserv.ws.cpp	2005-05-08 23:28:35.000000000 -0400
++++ xc/programs/xdm/config/Xserv.ws.cpp	2005-07-21 18:09:54.000000000 -0400
 @@ -10,4 +10,26 @@
  XCOMM look like:
  XCOMM	XTerminalName:0 foreign
@@ -113,8 +121,8 @@
 +XCOMM :1 local BINDIR/X :1 vt10 -depth 8 -nolisten tcp
 +:0 local BINDIR/X DEFAULTVT -dpi 100 -nolisten tcp
 diff -ruN xc-old/programs/xdm/config/Xsession xc/programs/xdm/config/Xsession
---- xc-old/programs/xdm/config/Xsession	2004-04-23 19:54:43.000000000 +0000
-+++ xc/programs/xdm/config/Xsession	2004-10-27 05:41:49.532615456 +0000
+--- xc-old/programs/xdm/config/Xsession	2005-05-08 23:28:35.000000000 -0400
++++ xc/programs/xdm/config/Xsession	2005-07-21 18:09:54.000000000 -0400
 @@ -7,40 +7,5 @@
  #
  # $XFree86: xc/programs/xdm/config/Xsession,v 1.2 1998/01/11 03:48:32 dawes Exp $
@@ -158,36 +166,28 @@
 -fi
 +# invoke global X session script
 +. /etc/X11/Xsession
-diff -ruN xc-old/programs/xdm/config/xdm-conf.cpp xc/programs/xdm/config/xdm-conf.cpp
---- xc-old/programs/xdm/config/xdm-conf.cpp	2004-04-23 19:54:43.000000000 +0000
-+++ xc/programs/xdm/config/xdm-conf.cpp	2004-10-27 05:50:13.461006696 +0000
-@@ -10,20 +10,22 @@
- DisplayManager.keyFile:		XDMDIR/xdm-keys
- DisplayManager.servers:		XDMDIR/Xservers
- DisplayManager.accessFile:	XDMDIR/Xaccess
-+DisplayManager.authDir:		XDMVARDIR
- DisplayManager.willing:		SU nobody -c XDMDIR/Xwilling
--! All displays should use authorization, but we cannot be sure
--! X terminals may not be configured that way, so they will require
-+! All displays should use authorization, but we cannot be sure X terminals
-+! will be configured to support it, so those that do not will require
- ! individual resource settings.
- DisplayManager*authorize:	true
--! The following three resources set up display :0 as the console.
--DisplayManager._0.setup:	XDMDIR/Xsetup_0
--DisplayManager._0.startup:	XDMDIR/GiveConsole
--DisplayManager._0.reset:	XDMDIR/TakeConsole
--!
-+! Scripts to start the server, start the user session, and reset the server
-+DisplayManager*setup:		XDMDIR/Xsetup
-+DisplayManager*startup:		XDMDIR/Xstartup
-+DisplayManager*reset:		XDMDIR/Xreset
- DisplayManager*chooser:		CHOOSERPATH
- DisplayManager*resources:	XDMDIR/Xresources
- DisplayManager*session:		XDMDIR/Xsession
- DisplayManager*authComplain:	true
-+DisplayManager*userPath:	/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games
-+DisplayManager*systemPath:	/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11
- #ifdef XPM
- DisplayManager*loginmoveInterval:	10
- #endif /* XPM */
+diff -ruN xc-old/programs/xdm/Imakefile xc/programs/xdm/Imakefile
+--- xc-old/programs/xdm/Imakefile	2005-07-21 18:03:23.000000000 -0400
++++ xc/programs/xdm/Imakefile	2005-07-21 18:09:54.000000000 -0400
+@@ -290,9 +290,9 @@
+ 		  '-DDEF_SYSTEM_SHELL="$(BOURNE_SHELL)"' \
+ 		  '-DDEF_FAILSAFE_CLIENT="$(BINDIR)/xterm"' \
+ 		  '-DDEF_XDM_CONFIG="$(XDMDIR)/xdm-config"' \
+-		  '-DDEF_CHOOSER="$(CHOOSERPATH)"' \
+-		  '-DDEF_AUTH_DIR="$(XDMDIR)"' \
+-		  '-DDEF_GREETER_LIB="$(XDMDIR)/libXdmGreet.so"'
++		  '-DDEF_CHOOSER="$(BINDIR)/chooser"' \
++		  '-DDEF_AUTH_DIR="$(XDMVARDIR)"' \
++		  '-DDEF_GREETER_LIB="$(USRLIBDIR)/libXdmGreet.so"'
+ 
+ ComplexProgramTarget_1(xdm,$(LOCAL_LIBRARIES),NullParameter)
+ #ifdef LinkConfDirectory
+@@ -317,7 +317,7 @@
+ #if BuildChooser
+ SpecialCObjectRule(chooser, $(ICONFIGFILES), $(SOCK_DEFINES) $(LIFREQ_FLAGS))
+ NormalProgramTarget(chooser,$(OBJS3),$(DEPLIBS3),$(LIBS3),NullParameter)
+-InstallProgram(chooser,$(XDMDIR))
++InstallProgram(chooser,$(BINDIR))
+ InstallAppDefaults(Chooser)
+ #endif
+ #if BuildBoth



Reply to: