mirror of
https://github.com/LibreELEC/LibreELEC.tv.git
synced 2025-07-24 11:16:51 +00:00
update to xorg-server-20090717
This commit is contained in:
parent
9006b9037d
commit
dc715d1d13
@ -106,7 +106,7 @@ cd $PKG_BUILD
|
||||
|
||||
make
|
||||
|
||||
$STRIP hw/xfree86/Xorg
|
||||
$STRIP hw/xfree86/.libs/Xorg
|
||||
$STRIP hw/xfree86/utils/gtf/gtf
|
||||
|
||||
make DESTDIR=$SYSROOT_PREFIX install
|
||||
|
@ -19,13 +19,16 @@ XORG_SRC="$PKG_BUILD/hw/xfree86"
|
||||
XORG_DST="$INSTALL/$XORG_PATH_MODULES"
|
||||
|
||||
mkdir -p $INSTALL/usr/bin
|
||||
cp $XORG_SRC/Xorg $INSTALL/usr/bin
|
||||
cp $XORG_SRC/.libs/Xorg $INSTALL/usr/bin
|
||||
ln -sf /usr/bin/Xorg $INSTALL/usr/bin/X
|
||||
cp $XORG_SRC/utils/gtf/gtf $INSTALL/usr/bin
|
||||
|
||||
#opt:
|
||||
cp $XORG_SRC/utils/cvt/cvt $INSTALL/usr/bin
|
||||
|
||||
mkdir -p $INSTALL/usr/lib
|
||||
cp $XORG_SRC/parser/.libs/libxf86config.so* $INSTALL/usr/lib
|
||||
|
||||
mkdir -p $XORG_DST
|
||||
cp $XORG_SRC/shadowfb/.libs/libshadowfb.so $XORG_DST
|
||||
cp $XORG_SRC/dixmods/.libs/libfb.so $XORG_DST
|
||||
|
File diff suppressed because it is too large
Load Diff
132
packages/x11/xserver/xorg-server/patches/20_xorg_server_dbe.diff
Normal file
132
packages/x11/xserver/xorg-server/patches/20_xorg_server_dbe.diff
Normal file
@ -0,0 +1,132 @@
|
||||
XdbeVisualInfo and XdbeScreenVisualInfo are structures used both by the
|
||||
server and Xlib. Copy into dbestruct.h and rename to DbeVisualInfo and
|
||||
DbeScreenVisualInfo to avoid potential conflicts with the Xlib headers.
|
||||
|
||||
This is technically an API (but not ABI) break.
|
||||
|
||||
Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
|
||||
---
|
||||
Fixes the current build error with xserver.
|
||||
|
||||
dbe/dbe.c | 9 ++++-----
|
||||
dbe/dbestruct.h | 20 +++++++++++++++++---
|
||||
dbe/midbe.c | 6 +++---
|
||||
3 files changed, 24 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/dbe/dbe.c b/dbe/dbe.c
|
||||
index a4f853d..56a95e5 100644
|
||||
--- a/dbe/dbe.c
|
||||
+++ b/dbe/dbe.c
|
||||
@@ -50,7 +50,6 @@
|
||||
#include "extnsionst.h"
|
||||
#include "gcstruct.h"
|
||||
#include "dixstruct.h"
|
||||
-#define NEED_DBE_PROTOCOL
|
||||
#include "dbestruct.h"
|
||||
#include "midbe.h"
|
||||
#include "xace.h"
|
||||
@@ -182,7 +181,7 @@ ProcDbeAllocateBackBufferName(ClientPtr client)
|
||||
WindowPtr pWin;
|
||||
DbeScreenPrivPtr pDbeScreenPriv;
|
||||
DbeWindowPrivPtr pDbeWindowPriv;
|
||||
- XdbeScreenVisualInfo scrVisInfo;
|
||||
+ DbeScreenVisualInfo scrVisInfo;
|
||||
register int i;
|
||||
Bool visualMatched = FALSE;
|
||||
xDbeSwapAction swapAction;
|
||||
@@ -662,7 +661,7 @@ ProcDbeGetVisualInfo(ClientPtr client)
|
||||
register int count; /* number of visual infos in reply */
|
||||
register int length; /* length of reply */
|
||||
ScreenPtr pScreen;
|
||||
- XdbeScreenVisualInfo *pScrVisInfo;
|
||||
+ DbeScreenVisualInfo *pScrVisInfo;
|
||||
|
||||
|
||||
REQUEST_AT_LEAST_SIZE(xDbeGetVisualInfoReq);
|
||||
@@ -692,8 +691,8 @@ ProcDbeGetVisualInfo(ClientPtr client)
|
||||
}
|
||||
|
||||
count = (stuff->n == 0) ? screenInfo.numScreens : stuff->n;
|
||||
- if (!(pScrVisInfo = (XdbeScreenVisualInfo *)xalloc(count *
|
||||
- sizeof(XdbeScreenVisualInfo))))
|
||||
+ if (!(pScrVisInfo = (DbeScreenVisualInfo *)xalloc(count *
|
||||
+ sizeof(DbeScreenVisualInfo))))
|
||||
{
|
||||
if (pDrawables)
|
||||
{
|
||||
diff --git a/dbe/dbestruct.h b/dbe/dbestruct.h
|
||||
index e067f37..4039113 100644
|
||||
--- a/dbe/dbestruct.h
|
||||
+++ b/dbe/dbestruct.h
|
||||
@@ -36,8 +36,7 @@
|
||||
|
||||
/* INCLUDES */
|
||||
|
||||
-#define NEED_DBE_PROTOCOL
|
||||
-#include <X11/extensions/Xdbeproto.h>
|
||||
+#include <X11/extensions/dbeproto.h>
|
||||
#include "windowstr.h"
|
||||
#include "privates.h"
|
||||
|
||||
@@ -88,6 +87,21 @@ typedef struct _DbeSwapInfoRec
|
||||
|
||||
} DbeSwapInfoRec, *DbeSwapInfoPtr;
|
||||
|
||||
+typedef struct
|
||||
+{
|
||||
+ VisualID visual; /* one visual ID that supports double-buffering */
|
||||
+ int depth; /* depth of visual in bits */
|
||||
+ int perflevel; /* performance level of visual */
|
||||
+}
|
||||
+DbeVisualInfo;
|
||||
+
|
||||
+typedef struct
|
||||
+{
|
||||
+ int count; /* number of items in visual_depth */
|
||||
+ DbeVisualInfo *visinfo; /* list of visuals & depths for scrn */
|
||||
+}
|
||||
+DbeScreenVisualInfo;
|
||||
+
|
||||
/*
|
||||
******************************************************************************
|
||||
** Per-window data
|
||||
@@ -177,7 +191,7 @@ typedef struct _DbeScreenPrivRec
|
||||
/* Per-screen DDX routines */
|
||||
Bool (*GetVisualInfo)(
|
||||
ScreenPtr /*pScreen*/,
|
||||
- XdbeScreenVisualInfo * /*pVisInfo*/
|
||||
+ DbeScreenVisualInfo * /*pVisInfo*/
|
||||
);
|
||||
int (*AllocBackBufferName)(
|
||||
WindowPtr /*pWin*/,
|
||||
diff --git a/dbe/midbe.c b/dbe/midbe.c
|
||||
index 4426c9d..49b69f7 100644
|
||||
--- a/dbe/midbe.c
|
||||
+++ b/dbe/midbe.c
|
||||
@@ -85,12 +85,12 @@ static DevPrivateKey dbeWindowPrivKey = &dbeWindowPrivKeyIndex;
|
||||
*****************************************************************************/
|
||||
|
||||
static Bool
|
||||
-miDbeGetVisualInfo(ScreenPtr pScreen, XdbeScreenVisualInfo *pScrVisInfo)
|
||||
+miDbeGetVisualInfo(ScreenPtr pScreen, DbeScreenVisualInfo *pScrVisInfo)
|
||||
{
|
||||
register int i, j, k;
|
||||
register int count;
|
||||
DepthPtr pDepth;
|
||||
- XdbeVisualInfo *visInfo;
|
||||
+ DbeVisualInfo *visInfo;
|
||||
|
||||
|
||||
/* Determine number of visuals for this screen. */
|
||||
@@ -100,7 +100,7 @@ miDbeGetVisualInfo(ScreenPtr pScreen, XdbeScreenVisualInfo *pScrVisInfo)
|
||||
}
|
||||
|
||||
/* Allocate an array of XdbeVisualInfo items. */
|
||||
- if (!(visInfo = (XdbeVisualInfo *)xalloc(count * sizeof(XdbeVisualInfo))))
|
||||
+ if (!(visInfo = (DbeVisualInfo *)xalloc(count * sizeof(DbeVisualInfo))))
|
||||
{
|
||||
return(FALSE); /* memory alloc failure */
|
||||
}
|
||||
--
|
||||
1.6.3.rc1.2.g0164.dirty
|
||||
|
@ -1,28 +0,0 @@
|
||||
Index: xorg-server/hw/xfree86/os-support/linux/lnx_init.c
|
||||
===================================================================
|
||||
--- xorg-server.orig/hw/xfree86/os-support/linux/lnx_init.c 2008-06-18 10:28:16.000000000 +0300
|
||||
+++ xorg-server/hw/xfree86/os-support/linux/lnx_init.c 2008-06-18 12:06:06.000000000 +0300
|
||||
@@ -283,9 +283,7 @@
|
||||
FatalError("Unable to set screen info\n");
|
||||
close(fbfd);
|
||||
#endif
|
||||
- } else { /* ShareVTs */
|
||||
- close(xf86Info.consoleFd);
|
||||
- }
|
||||
+ }
|
||||
signal(SIGUSR2, xf86ReloadInputDevs);
|
||||
} else { /* serverGeneration != 1 */
|
||||
if (!ShareVTs && VTSwitch)
|
||||
@@ -314,7 +312,11 @@
|
||||
int vtno = -1;
|
||||
#endif
|
||||
|
||||
- if (ShareVTs) return;
|
||||
+ if (ShareVTs)
|
||||
+ {
|
||||
+ close(xf86Info.consoleFd);
|
||||
+ return;
|
||||
+ }
|
||||
|
||||
#if defined(DO_OS_FONTRESTORE)
|
||||
if (ioctl(xf86Info.consoleFd, VT_GETSTATE, &vts) < 0)
|
@ -1,43 +0,0 @@
|
||||
diff -Nurp xorg-server-1.4.99.906-patched/hw/xfree86/common/xf86Events.c xorg-server-1.4.99.906-working/hw/xfree86/common/xf86Events.c
|
||||
--- xorg-server-1.4.99.906-patched/hw/xfree86/common/xf86Events.c 2008-09-01 13:17:47.000000000 -0700
|
||||
+++ xorg-server-1.4.99.906-working/hw/xfree86/common/xf86Events.c 2008-09-01 13:19:35.000000000 -0700
|
||||
@@ -741,6 +741,8 @@ static __inline__ void xorg_backtrace(vo
|
||||
void
|
||||
xf86SigHandler(int signo)
|
||||
{
|
||||
+ static Bool beenhere = FALSE;
|
||||
+
|
||||
if ((signo == SIGILL) && xf86SigIllHandler) {
|
||||
(*xf86SigIllHandler)();
|
||||
/* Re-arm handler just in case we unexpectedly return here */
|
||||
@@ -763,6 +765,30 @@ xf86SigHandler(int signo)
|
||||
|
||||
xorg_backtrace();
|
||||
|
||||
+ switch (signo) {
|
||||
+ case SIGSEGV:
|
||||
+ case SIGBUS:
|
||||
+ case SIGILL:
|
||||
+ case SIGFPE:
|
||||
+ signal(signo,SIG_DFL);
|
||||
+ ErrorF ("Saw signal %d. Server aborting.\n", signo);
|
||||
+#ifdef DDXOSFATALERROR
|
||||
+ if (!beenhere) {
|
||||
+ OsVendorFatalError();
|
||||
+ }
|
||||
+#endif
|
||||
+#ifdef ABORTONFATALERROR
|
||||
+ abort();
|
||||
+#endif
|
||||
+ if (!beenhere) {
|
||||
+ beenhere = TRUE;
|
||||
+ AbortServer();
|
||||
+ } else {
|
||||
+ abort();
|
||||
+ }
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
FatalError("Caught signal %d. Server aborting\n", signo);
|
||||
}
|
||||
|
@ -1,33 +0,0 @@
|
||||
This patch adds autodetection support for the Poulsbo ("psb") driver
|
||||
needed by moblin.org for the Intel mobile chipset. Rather than add an
|
||||
else if, I restructured things with a case statement to make it conform
|
||||
in style to the savage driver section.
|
||||
|
||||
Bryce Harrington 23-Aug-2007
|
||||
|
||||
Index: xorg-server/hw/xfree86/common/xf86AutoConfig.c
|
||||
===================================================================
|
||||
--- xorg-server.orig/hw/xfree86/common/xf86AutoConfig.c 2008-09-02 10:47:16.000000000 +0300
|
||||
+++ xorg-server/hw/xfree86/common/xf86AutoConfig.c 2008-09-02 10:58:57.000000000 +0300
|
||||
@@ -166,11 +166,16 @@
|
||||
case 0x102c: driverList[0] = "chips"; break;
|
||||
case 0x1013: driverList[0] = "cirrus"; break;
|
||||
case 0x8086:
|
||||
- if ((dev->device_id == 0x00d1) || (dev->device_id == 0x7800)) {
|
||||
- driverList[0] = "i740";
|
||||
- } else {
|
||||
- driverList[0] = "intel";
|
||||
- driverList[1] = "i810";
|
||||
+ switch (dev->device_id)
|
||||
+ {
|
||||
+ case 0x00d1: case 0x7800:
|
||||
+ driverList[0] = "i740"; break;
|
||||
+ case 0x8108:
|
||||
+ driverList[0] = "psb"; break;
|
||||
+ default:
|
||||
+ driverList[0] = "intel";
|
||||
+ driverList[1] = "i810";
|
||||
+ break;
|
||||
}
|
||||
break;
|
||||
case 0x102b: driverList[0] = "mga"; break;
|
@ -1 +1 @@
|
||||
http://xorg.freedesktop.org/archive/individual/xserver/xorg-server-1.6.1.901.tar.bz2
|
||||
http://sources.openelec.tv/svn/xorg-server-20090717.tar.bz2
|
||||
|
Loading…
x
Reference in New Issue
Block a user