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: