Hello community,
here is the log from the commit of package xgl
checked in at Thu Apr 12 18:20:51 CEST 2007.
--------
--- xgl/xgl.changes 2007-03-02 17:32:35.000000000 +0100
+++ /mounts/work_src_done/STABLE/xgl/xgl.changes 2007-04-10 19:18:15.000000000 +0200
@@ -1,0 +2,15 @@
+Tue Apr 10 18:53:23 CEST 2007 - mhopf@suse.de
+
+- Reordered & renamed patches consistently.
+- Spec file cleanup.
+- Added patch for missing Mesa 6.5.2 addaption.
+- Compiled with -fno-strict-aliasing due to a number of aliasing failures.
+
+-------------------------------------------------------------------
+Tue Apr 10 17:01:43 CEST 2007 - mhopf@suse.de
+
+- Fix glCallLists bug. (#227724).
+- Exit on reset to make sure Xorg server is reset correctly. (#253429)
+- Fixed mismatch with Mesa's glDeleteTextures opcodes. (#254888)
+
+-------------------------------------------------------------------
Old:
----
178214.diff
composite-avoid-frame-buffer-reads.patch
typos.diff
xgl-java-wmhack.diff
xgl-maprules-tolower-fix.diff
xgl-security-file-dir.diff
Xserver-suse-sysconfig.diff
New:
----
xgl-glxext-call-lists.diff
xgl-glxext-mesa652-glapi-table.diff
xgl-glx-reset.diff
xgl-logging.diff
xgl-suse-sysconfig.diff
xorg-composite-avoid-frame-buffer-reads.diff
xorg-java-wmhack.diff
xorg-maprules-tolower-fix.diff
xorg-mesa-delete-textures.diff
xorg-security-file-dir.diff
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ xgl.spec ++++++
--- /var/tmp/diff_new_pack.b10518/_old 2007-04-12 18:20:33.000000000 +0200
+++ /var/tmp/diff_new_pack.b10518/_new 2007-04-12 18:20:33.000000000 +0200
@@ -24,38 +24,43 @@
Requires: xgl-hardware-list
Autoreqprov: on
Version: git_070104
-Release: 10
+Release: 17
Summary: Xserver that uses OpenGL for its drawing operations.
BuildRoot: %{_tmppath}/%{name}-%{version}-build
ExclusiveArch: %ix86 x86_64 ppc ppc64 ia64
Source: xorg-server-1.1.99.1.tar.bz2
Source1: glitz-0.5.6.tar.gz
-Source2: README.SUSE
-Source3: sysconfig.displaymanager.template
-Source4: MesaLib-6.5.2.tar.bz2
-Patch: Xserver-suse-sysconfig.diff
-Patch1: xgl-security-file-dir.diff
-Patch2: xgl-xpstubs-link-hack.diff
-Patch3: xgl-maprules-tolower-fix.diff
-Patch4: 178214.diff
-Patch6: xgl-java-wmhack.diff
-Patch10: glitz-glx-get-proc-address.diff
-Patch11: typos.diff
-Patch12: Mesa-x86_64-fixes.patch
-Patch13: composite-avoid-frame-buffer-reads.patch
-Patch14: xorg-enable-xinerama-by-default.diff
+Source2: MesaLib-6.5.2.tar.bz2
+Source3: README.SUSE
+Source4: sysconfig.displaymanager.template
+Patch: xgl-suse-sysconfig.diff
+Patch1: xgl-xpstubs-link-hack.diff
+Patch2: xgl-logging.diff
+Patch3: xorg-maprules-tolower-fix.diff
+Patch4: xorg-java-wmhack.diff
+Patch5: xorg-mesa-delete-textures.diff
+Patch6: xorg-composite-avoid-frame-buffer-reads.diff
+Patch7: xorg-enable-xinerama-by-default.diff
+Patch8: xgl-glxext-call-lists.diff
+Patch9: xgl-glx-reset.diff
+Patch10: xgl-glxext-mesa652-glapi-table.diff
+# Pre- Xorg 7.0 patches
+Patch20: xorg-security-file-dir.diff
+# Non-xgl patches
+Patch30: glitz-glx-get-proc-address.diff
+Patch40: Mesa-x86_64-fixes.patch
%if "%(xft-config --prefix)" == "/usr"
-%define _xglprefix /usr
-%define _default_font_path /usr/share/fonts/misc,/usr/share/fonts/truetype,/usr/share/fonts/Type1,/usr/share/fonts/100dpi,/usr/share/fonts/75dpi
-%define _rgb_path /usr/share/X11/rgb
-%define _xkb_path /usr/share/X11/xkb
-%define _xkb_output /var/lib/xkb/compiled/
+%define xorg_prefix /usr
+%define xorg_default_font_path /usr/share/fonts/misc,/usr/share/fonts/truetype,/usr/share/fonts/Type1,/usr/share/fonts/100dpi,/usr/share/fonts/75dpi
+%define xorg_rgb_path /usr/share/X11/rgb
+%define xorg_xkb_path /usr/share/X11/xkb
+%define xorg_xkb_output /var/lib/xkb/compiled/
%else
-%define _xglprefix /usr/X11R6
-%define _default_font_path /usr/X11R6/lib/X11/fonts/misc,/usr/X11R6/lib/X11/fonts/truetype,/usr/X11R6/lib/X11/fonts/Type1,/usr/X11R6/lib/X11/fonts/100dpi,/usr/X11R6/lib/X11/fonts/75dpi
-%define _rgb_path /usr/X11R6/lib/X11/rgb
-%define _xkb_path /etc/X11/xkb
-%define _xkb_output /etc/X11/xkb/compiled
+%define xorg_prefix /usr/X11R6
+%define xorg_default_font_path /usr/X11R6/lib/X11/fonts/misc,/usr/X11R6/lib/X11/fonts/truetype,/usr/X11R6/lib/X11/fonts/Type1,/usr/X11R6/lib/X11/fonts/100dpi,/usr/X11R6/lib/X11/fonts/75dpi
+%define xorg_rgb_path /usr/X11R6/lib/X11/rgb
+%define xorg_xkb_path /etc/X11/xkb
+%define xorg_xkb_output /etc/X11/xkb/compiled
%endif
%description
@@ -89,31 +94,39 @@
%prep
rm -rf %_builddir/%name
-%setup -q -c %name -n %name -T -a 0 -a 1 -a 4
-patch -d xorg-* -p0 < %_sourcedir/Xserver-suse-sysconfig.diff
-patch -d xorg-* -p0 < %_sourcedir/xgl-xpstubs-link-hack.diff
-patch -d xorg-* -p0 < %_sourcedir/xgl-maprules-tolower-fix.diff
-patch -d xorg-* -p0 < %_sourcedir/178214.diff
-patch -d xorg-* -p0 < %_sourcedir/xgl-java-wmhack.diff
-patch -d xorg-* -p1 < %_sourcedir/composite-avoid-frame-buffer-reads.patch
-patch -d xorg-* -p1 < %_sourcedir/xorg-enable-xinerama-by-default.diff
-%if "%_xglprefix" == "/usr/X11R6"
+%setup -q -c -n %name -T -a 0 -a 1 -a 2
+pushd xorg-*
+%patch0 -p0
+%patch1 -p0
+%patch2 -p0
+%patch3 -p0
+%patch4 -p0
+%patch5 -p1
+%patch6 -p1
+%patch7 -p1
+%patch8 -p1
+%patch9 -p1
+%patch10 -p1
+%if "%xorg_prefix" == "/usr/X11R6"
# Pre-Xorg7.0 patches
-patch -d xorg-* -p0 < %_sourcedir/xgl-security-file-dir.diff
+%patch20 -p0
%endif
-patch -d glitz-* -p0 < %_sourcedir/glitz-glx-get-proc-address.diff
-patch -d Mesa-* -p0 < %_sourcedir/Mesa-x86_64-fixes.patch
+popd
+pushd glitz-*
+%patch30 -p0
+popd
+pushd Mesa-*
+%patch40 -p0
+popd
%build
-PREFIX=%buildroot/%_xglprefix/lib/xgl
-[ "%buildroot" != "/" ] && [ -d %buildroot ] && rm -rf %buildroot
+PREFIX=%buildroot/%xorg_prefix/lib/xgl
mkdir -p $PREFIX
+export PKG_CONFIG_PATH=$PREFIX/%_lib/pkgconfig:$PKG_CONFIG_PATH
#
## glitz
#
# Build inside own development system
-PKG_CONFIG_ORIG=$PKG_CONFIG_PATH
-export PKG_CONFIG_PATH=$PREFIX/%_lib/pkgconfig:$PKG_CONFIG_PATH
pushd glitz-*
# Hack: build a convenience library instead of a static library (linked to a .so file afterwards)
# Should be removed as soon as the glitz package is updated
@@ -125,14 +138,14 @@
#
pushd xorg-server-*
mesa="`echo %_builddir/%name/Mesa-*`"
-./configure --prefix=%_xglprefix \
- --libdir=%_xglprefix/%_lib \
- --with-default-font-path=%_default_font_path \
+./configure --prefix=%xorg_prefix \
+ --libdir=%xorg_prefix/%_lib \
+ --with-default-font-path=%xorg_default_font_path \
--sysconfdir=/etc/X11 \
--localstatedir=/var \
- --with-rgb-path=%_rgb_path \
- --with-xkb-path=%_xkb_path \
- --with-xkb-output=%_xkb_output \
+ --with-rgb-path=%xorg_rgb_path \
+ --with-xkb-path=%xorg_xkb_path \
+ --with-xkb-output=%xorg_xkb_output \
--with-mesa-source=$mesa \
--with-release-snap=1 \
--disable-xorg \
@@ -145,26 +158,26 @@
--enable-glx \
--enable-dri \
--enable-xglx \
- CFLAGS="%optflags"
+ CFLAGS="%optflags -fno-strict-aliasing"
make %{?jobs:-j %jobs}
popd
%install
-PREFIX=%buildroot/%_xglprefix/lib/xgl
+PREFIX=%buildroot/%xorg_prefix/lib/xgl
mkdir -p %buildroot/var/adm/fillup-templates %buildroot/etc/X11/
pushd xorg-server-*
make DESTDIR=%buildroot install
popd
-cp %_sourcedir/README.* .
-cp %_sourcedir/sysconfig.displaymanager.template %buildroot/var/adm/fillup-templates/sysconfig.displaymanager-%name
+install -m 444 %_sourcedir/README.* .
+install -m 644 %_sourcedir/sysconfig.displaymanager.template %buildroot/var/adm/fillup-templates/sysconfig.displaymanager-%name
rm -rf $PREFIX
find %buildroot \( -name \*.a -o -name \*.la \) -print -execdir rm \{\} +
-rm %buildroot/%_xglprefix/%_lib/pkgconfig/xorg-server.pc
+rm %buildroot/%xorg_prefix/%_lib/pkgconfig/xorg-server.pc
rm -rf %buildroot/usr/%_lib/pkgconfig %buildroot/usr/include
-rm %buildroot/%_xglprefix/share/man/man1/Xserver.1
-rm %buildroot/%_xglprefix/share/aclocal/xorg-server.m4
-rm %buildroot/%_xglprefix/%_lib/xserver/SecurityPolicy
-rm %buildroot/%_xkb_output/README.compiled
+rm %buildroot/%xorg_prefix/share/man/man1/Xserver.1
+rm %buildroot/%xorg_prefix/share/aclocal/xorg-server.m4
+rm %buildroot/%xorg_prefix/%_lib/xserver/SecurityPolicy
+rm %buildroot/%xorg_xkb_output/README.compiled
%post
%{fillup_only -an displaymanager}
@@ -182,15 +195,24 @@
%defattr(-, root, root)
%doc README.*
-%_xglprefix/bin/Xgl
-%dir %_xglprefix/%_lib/xorg
-%dir %_xglprefix/%_lib/xorg/modules
-%dir %_xglprefix/%_lib/xorg/modules/xgl
+%xorg_prefix/bin/Xgl
+%dir %xorg_prefix/%_lib/xorg
+%dir %xorg_prefix/%_lib/xorg/modules
+%dir %xorg_prefix/%_lib/xorg/modules/xgl
-%_xglprefix/%_lib/xorg/modules/xgl/lib*
+%xorg_prefix/%_lib/xorg/modules/xgl/lib*
/var/adm/fillup-templates/sysconfig.displaymanager-%name
%changelog
+* Tue Apr 10 2007 - mhopf@suse.de
+- Reordered & renamed patches consistently.
+- Spec file cleanup.
+- Added patch for missing Mesa 6.5.2 addaption.
+- Compiled with -fno-strict-aliasing due to a number of aliasing failures.
+* Tue Apr 10 2007 - mhopf@suse.de
+- Fix glCallLists bug. (#227724).
+- Exit on reset to make sure Xorg server is reset correctly. (#253429)
+- Fixed mismatch with Mesa's glDeleteTextures opcodes. (#254888)
* Fri Mar 02 2007 - mhopf@suse.de
- Update %%setup to be more compatible (#249998).
* Wed Feb 28 2007 - mhopf@suse.de
++++++ xgl-glxext-call-lists.diff ++++++
--- a/hw/xgl/glxext/xglglxext.c
+++ b/hw/xgl/glxext/xglglxext.c
@@ -2020,41 +2020,41 @@ xglCallLists (GLsizei n,
{
switch (type) {
case GL_BYTE:
- list = (GLuint) *(((GLbyte *) lists) + n);
+ list = (GLuint) *(((GLbyte *) lists) + i);
break;
case GL_UNSIGNED_BYTE:
- list = (GLuint) *(((GLubyte *) lists) + n);
+ list = (GLuint) *(((GLubyte *) lists) + i);
break;
case GL_SHORT:
- list = (GLuint) *(((GLshort *) lists) + n);
+ list = (GLuint) *(((GLshort *) lists) + i);
break;
case GL_UNSIGNED_SHORT:
- list = (GLuint) *(((GLushort *) lists) + n);
+ list = (GLuint) *(((GLushort *) lists) + i);
break;
case GL_INT:
- list = (GLuint) *(((GLint *) lists) + n);
+ list = (GLuint) *(((GLint *) lists) + i);
break;
case GL_UNSIGNED_INT:
- list = (GLuint) *(((GLuint *) lists) + n);
+ list = (GLuint) *(((GLuint *) lists) + i);
break;
case GL_FLOAT:
- list = (GLuint) *(((GLfloat *) lists) + n);
+ list = (GLuint) *(((GLfloat *) lists) + i);
break;
case GL_2_BYTES:
{
- GLubyte *ubptr = ((GLubyte *) lists) + 2 * n;
+ GLubyte *ubptr = ((GLubyte *) lists) + 2 * i;
list = (GLuint) *ubptr * 256 + (GLuint) *(ubptr + 1);
} break;
case GL_3_BYTES:
{
- GLubyte *ubptr = ((GLubyte *) lists) + 3 * n;
+ GLubyte *ubptr = ((GLubyte *) lists) + 3 * i;
list = (GLuint) * ubptr * 65536
+ (GLuint) * (ubptr + 1) * 256
+ (GLuint) * (ubptr + 2);
} break;
case GL_4_BYTES:
{
- GLubyte *ubptr = ((GLubyte *) lists) + 4 * n;
+ GLubyte *ubptr = ((GLubyte *) lists) + 4 * i;
list = (GLuint) * ubptr * 16777216
+ (GLuint) * (ubptr + 1) * 65536
+ (GLuint) * (ubptr + 2) * 256
++++++ xgl-glxext-mesa652-glapi-table.diff ++++++
commit af798037d7622d02152206d580ebe626fada5b90
Author: David Reveman
Date: Mon Mar 5 10:18:23 2007 +0100
Sync with mesa.
diff --git a/hw/xgl/glxext/xglglxext.c b/hw/xgl/glxext/xglglxext.c
index c4f0274..7d65d81 100644
--- a/hw/xgl/glxext/xglglxext.c
+++ b/hw/xgl/glxext/xglglxext.c
@@ -4315,9 +4315,28 @@ static struct _glapi_table __glNativeRen
xglNoOpMultiTexCoord4ivARB,
0, /* glMultiTexCoord4sARB */
xglNoOpMultiTexCoord4svARB,
+ 0, /* glAttachShader */
+ 0, /* glCreateProgram */
+ 0, /* glCreateShader */
+ 0, /* glDeleteProgram */
+ 0, /* glDeleteShader */
+ 0, /* glDetachShader */
+ 0, /* glGetAttachedShaders */
+ 0, /* glGetProgramInfoLog */
+ 0, /* glGetProgramiv */
+ 0, /* glGetShaderInfoLog */
+ 0, /* glGetShaderiv */
+ 0, /* glIsProgram */
+ 0, /* glIsShader */
0, /* glStencilFuncSeparate */
- 0, /* glStencilOpSeparate */
0, /* glStencilMaskSeparate */
+ 0, /* glStencilOpSeparate */
+ 0, /* glUniformMatrix2x3fv */
+ 0, /* glUniformMatrix2x4fv */
+ 0, /* glUniformMatrix3x2fv */
+ 0, /* glUniformMatrix3x4fv */
+ 0, /* glUniformMatrix4x2fv */
+ 0, /* glUniformMatrix4x3fv */
0, /* glLoadTransposeMatrixfARB */
0, /* glLoadTransposeMatrixdARB */
0, /* glMultTransposeMatrixfARB */
diff --git a/hw/xgl/glxext/xglglxlog.c b/hw/xgl/glxext/xglglxlog.c
index d0a6ba6..dca2c0c 100644
--- a/hw/xgl/glxext/xglglxlog.c
+++ b/hw/xgl/glxext/xglglxlog.c
@@ -4379,9 +4379,28 @@ static struct _glapi_table __logRenderTa
logMultiTexCoord4ivARB,
0, /* glMultiTexCoord4sARB */
logMultiTexCoord4svARB,
+ 0, /* glAttachShader */
+ 0, /* glCreateProgram */
+ 0, /* glCreateShader */
+ 0, /* glDeleteProgram */
+ 0, /* glDeleteShader */
+ 0, /* glDetachShader */
+ 0, /* glGetAttachedShaders */
+ 0, /* glGetProgramInfoLog */
+ 0, /* glGetProgramiv */
+ 0, /* glGetShaderInfoLog */
+ 0, /* glGetShaderiv */
+ 0, /* glIsProgram */
+ 0, /* glIsShader */
0, /* glStencilFuncSeparate */
- 0, /* glStencilOpSeparate */
0, /* glStencilMaskSeparate */
+ 0, /* glStencilOpSeparate */
+ 0, /* glUniformMatrix2x3fv */
+ 0, /* glUniformMatrix2x4fv */
+ 0, /* glUniformMatrix3x2fv */
+ 0, /* glUniformMatrix3x4fv */
+ 0, /* glUniformMatrix4x2fv */
+ 0, /* glUniformMatrix4x3fv */
0, /* glLoadTransposeMatrixfARB */
0, /* glLoadTransposeMatrixdARB */
0, /* glMultTransposeMatrixfARB */
++++++ xgl-glx-reset.diff ++++++
--- a/hw/xgl/glx/xglx.c
+++ b/hw/xgl/glx/xglx.c
@@ -1885,6 +1885,10 @@ xglxOsVendorInit (void)
if (!glitz_glx_find_window_format (xdisplay, xscreen, 0, NULL, 0))
FatalError ("no GLX visuals available\n");
}
+ else
+ {
+ exit (0);
+ }
}
#ifdef ARGB_CURSOR
++++++ xgl-logging.diff ++++++
diff -ur xorg-server-1.1.99.1/hw/xgl/Makefile.am ./hw/xgl/Makefile.am
--- xorg-server-1.1.99.1/hw/xgl/Makefile.am 2006-04-08 12:48:38.000000000 +0200
+++ ./hw/xgl/Makefile.am 2006-05-24 11:15:48.000000000 +0200
@@ -28,6 +28,10 @@
-I@MESA_SOURCE@/src/mesa/glapi \
$(XGLMODULES_CFLAGS)
+if MMX_CAPABLE
+AM_CFLAGS += -DUSE_MMX
+endif
+
noinst_LIBRARIES = libxgl.a
libxgl_a_SOURCES = \
diff -ur xorg-server-1.1.99.1/hw/xgl/Makefile.in ./hw/xgl/Makefile.in
--- xorg-server-1.1.99.1/hw/xgl/Makefile.in 2006-05-02 01:28:54.000000000 +0200
+++ ./hw/xgl/Makefile.in 2006-05-24 11:16:02.000000000 +0200
@@ -37,6 +37,7 @@
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
+@MMX_CAPABLE_TRUE@am__append_1 = -DUSE_MMX
bin_PROGRAMS = $(am__EXEEXT_1)
subdir = hw/xgl
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
@@ -556,17 +557,10 @@
$(XGLX_SUBDIRS) \
$(XEGL_SUBDIRS)
-AM_CFLAGS = \
- @SERVER_DEFINES@ \
- -DHAVE_XGL_CONFIG_H \
- -DHAVE_DIX_CONFIG_H \
- -I$(top_srcdir)/GL/glx \
- -I$(top_srcdir)/GL/include \
- -I@MESA_SOURCE@/include \
- -I@MESA_SOURCE@/src/mesa/glapi \
- $(XEVDEV_CFLAGS) \
- $(XGLMODULES_CFLAGS)
-
+AM_CFLAGS = @SERVER_DEFINES@ -DHAVE_XGL_CONFIG_H -DHAVE_DIX_CONFIG_H \
+ -I$(top_srcdir)/GL/glx -I$(top_srcdir)/GL/include \
+ -I@MESA_SOURCE@/include -I@MESA_SOURCE@/src/mesa/glapi \
+ $(XEVDEV_CFLAGS) $(XGLMODULES_CFLAGS) $(am__append_1)
noinst_LIBRARIES = libxgl.a
libxgl_a_SOURCES = \
xgl.h \
diff -ur xorg-server-1.1.99.1/hw/xgl/egl/xeglinit.c ./hw/xgl/egl/xeglinit.c
--- xorg-server-1.1.99.1/hw/xgl/egl/xeglinit.c 2006-04-13 13:42:18.000000000 +0200
+++ ./hw/xgl/egl/xeglinit.c 2006-05-24 14:01:47.000000000 +0200
@@ -46,6 +46,8 @@
static Bool loadGlx = TRUE;
#endif
+char *xglLogFile = 0;
+
void
InitOutput (ScreenInfo *pScreenInfo,
int argc,
diff -ur xorg-server-1.1.99.1/hw/xgl/xgl.h ./hw/xgl/xgl.h
--- xorg-server-1.1.99.1/hw/xgl/xgl.h 2006-05-19 13:08:33.000000000 +0200
+++ ./hw/xgl/xgl.h 2006-05-24 13:55:29.000000000 +0200
@@ -67,6 +67,7 @@
#define VERSION "0.0.1"
extern WindowPtr *WindowTable;
+extern char *xglLogFile;
#define XGL_DEFAULT_PBO_MASK 0
diff -ur xorg-server-1.1.99.1/hw/xgl/xglinit.c ./hw/xgl/xglinit.c
--- xorg-server-1.1.99.1/hw/xgl/xglinit.c 2006-04-13 13:42:12.000000000 +0200
+++ ./hw/xgl/xglinit.c 2006-05-24 14:02:00.000000000 +0200
@@ -63,6 +63,9 @@
#endif
+char logFile[260];
+char *xglLogFile = 0;
+
typedef struct _xglDDXFunc {
void (*initOutput) (ScreenInfo *pScreenInfo,
int argc,
@@ -188,6 +191,15 @@
int argc,
char **argv)
{
+ char oldLogFile[260];
+
+ snprintf (logFile, 256, "/var/log/Xgl.%s.log", display);
+ snprintf (oldLogFile, 260, "/var/log/Xgl.%s.log.old", display);
+
+ rename (logFile, oldLogFile);
+
+ xglLogFile = logFile;
+
(void) symTab;
if (!xglEnsureDDXModule ())
diff -ur xorg-server-1.1.99.1/hw/xgl/xglscreen.c ./hw/xgl/xglscreen.c
--- xorg-server-1.1.99.1/hw/xgl/xglscreen.c 2006-04-13 13:55:19.000000000 +0200
+++ ./hw/xgl/xglscreen.c 2006-05-24 13:57:59.000000000 +0200
@@ -112,6 +112,184 @@
return TRUE;
}
+#include "fbmmx.h"
+#include
+
+static Bool
+printFmt (FILE *logFp,
+ glitz_drawable_format_t *format)
+{
+ if (format)
+ {
+ fprintf (logFp, "0x%x\t%d/%d/%d/%d \t%d\t%d\t%c\t%d\n",
+ (int) format->id,
+ format->color.red_size,
+ format->color.green_size,
+ format->color.blue_size,
+ format->color.alpha_size,
+ format->depth_size,
+ format->stencil_size,
+ (format->doublebuffer) ? 'y' : '.',
+ format->samples);
+
+ return TRUE;
+ }
+
+ return FALSE;
+}
+
+static void
+xglLogScreen (ScreenPtr pScreen)
+{
+ FILE *logFp;
+
+ XGL_SCREEN_PRIV (pScreen);
+
+ if (!xglLogFile)
+ return;
+
+ logFp = fopen (xglLogFile, "a");
+ if (logFp)
+ {
+ static char *geometryDataTypeName[] = {
+ "short",
+ "float"
+ };
+ static char *geometryUsageName[] = {
+ "stream",
+ "static",
+ "dynamic",
+ "sysmem"
+ };
+ glitz_drawable_t *drawable = pScreenPriv->drawable;
+ glitz_format_t *formats;
+ int i;
+
+ fprintf (logFp, "screen %d - %dx%d @ %d:\n", pScreen->myNum,
+ pScreen->width, pScreen->height, pScreen->rootDepth);
+
+ fprintf (logFp, "\n");
+ fprintf (logFp, "GL vendor: %s\n",
+ glitz_drawable_get_gl_string (drawable,
+ GLITZ_GL_STRING_VENDOR));
+ fprintf (logFp, "GL renderer: %s\n",
+ glitz_drawable_get_gl_string (drawable,
+ GLITZ_GL_STRING_RENDERER));
+ fprintf (logFp, "GL version: %s\n",
+ glitz_drawable_get_gl_string (drawable,
+ GLITZ_GL_STRING_VERSION));
+ fprintf (logFp, "GL extensions: %s\n",
+ glitz_drawable_get_gl_string (drawable,
+ GLITZ_GL_STRING_EXTENSIONS));
+
+ fprintf (logFp, "\n");
+ fprintf (logFp, "geometry data type: %s\n",
+ geometryDataTypeName[pScreenPriv->geometryDataType]);
+ fprintf (logFp, "geometry usage: %s\n",
+ geometryUsageName[pScreenPriv->geometryUsage]);
+ fprintf (logFp, "Y inverted: %d\n", pScreenPriv->yInverted);
+ fprintf (logFp, "PBO mask: 0x%08x\n", pScreenPriv->pboMask);
+ fprintf (logFp, "lines: %d\n", pScreenPriv->lines);
+ fprintf (logFp, "YUV: %d\n", !pScreenPriv->noYuv);
+ fprintf (logFp, "XV filter: %s\n", pScreenPriv->xvFilter);
+ fprintf (logFp, "accel:\n");
+ fprintf (logFp, " pixmap: %d %d - %dx%d - %dx%d\n",
+ pScreenPriv->accel.pixmap.enabled,
+ pScreenPriv->accel.pixmap.pbuffer,
+ pScreenPriv->accel.pixmap.size.minWidth,
+ pScreenPriv->accel.pixmap.size.minHeight,
+ pScreenPriv->accel.pixmap.size.aboveWidth,
+ pScreenPriv->accel.pixmap.size.aboveHeight);
+ fprintf (logFp, " window: %d %d - %dx%d - %dx%d\n",
+ pScreenPriv->accel.window.enabled,
+ pScreenPriv->accel.window.pbuffer,
+ pScreenPriv->accel.window.size.minWidth,
+ pScreenPriv->accel.window.size.minHeight,
+ pScreenPriv->accel.window.size.aboveWidth,
+ pScreenPriv->accel.window.size.aboveHeight);
+ fprintf (logFp, " glx: %d %d - %dx%d - %dx%d\n",
+ pScreenPriv->accel.glx.enabled,
+ pScreenPriv->accel.glx.pbuffer,
+ pScreenPriv->accel.glx.size.minWidth,
+ pScreenPriv->accel.glx.size.minHeight,
+ pScreenPriv->accel.glx.size.aboveWidth,
+ pScreenPriv->accel.glx.size.aboveHeight);
+ fprintf (logFp, " xv: %d %d - %dx%d - %dx%d\n",
+ pScreenPriv->accel.xv.enabled,
+ pScreenPriv->accel.xv.pbuffer,
+ pScreenPriv->accel.xv.size.minWidth,
+ pScreenPriv->accel.xv.size.minHeight,
+ pScreenPriv->accel.xv.size.aboveWidth,
+ pScreenPriv->accel.xv.size.aboveHeight);
+ fprintf (logFp, "features: 0x%08x\n", pScreenPriv->features);
+ fprintf (logFp, "MMX: %d\n", fbHaveMMX ());
+
+#if IMAGE_BYTE_ORDER == MSBFirst
+ fprintf (logFp, "byte order: MSB\n");
+#else
+ fprintf (logFp, "byte order: LSB\n");
+#endif
+
+ fprintf (logFp, "\n");
+ fprintf (logFp, "drawable format:\n");
+ printFmt (logFp, glitz_drawable_get_format (drawable));
+
+ fprintf (logFp, "\n");
+ fprintf (logFp, "pbuffer formats:\n");
+
+ i = 0;
+ while (printFmt (logFp, glitz_find_pbuffer_format (drawable, 0, 0, i)))
+ i++;
+
+ fprintf (logFp, "\n");
+ fprintf (logFp, "fbo formats:\n");
+
+ i = 0;
+ while (printFmt (logFp, glitz_find_drawable_format (drawable, 0, 0, i)))
+ i++;
+
+ fprintf (logFp, "\n");
+ fprintf (logFp, "surface formats:\n");
+
+ i = 0;
+ do {
+ formats = glitz_find_format (drawable, 0, NULL, i++);
+
+ if (formats)
+ {
+ fprintf (logFp, "0x%x\t", (int) formats->id);
+
+ switch (formats->color.fourcc) {
+ case GLITZ_FOURCC_RGB:
+ fprintf (logFp, "color\tRGB\t%d/%d/%d/%d",
+ formats->color.red_size,
+ formats->color.green_size,
+ formats->color.blue_size,
+ formats->color.alpha_size);
+ break;
+ case GLITZ_FOURCC_YV12:
+ fprintf (logFp, "color\tYV12");
+ break;
+ case GLITZ_FOURCC_YUY2:
+ fprintf (logFp, "color\tYUY2");
+ break;
+ }
+
+ fprintf (logFp, "\n");
+ }
+ } while (formats);
+
+ fprintf (logFp, "\n");
+
+ fclose (logFp);
+ }
+ else
+ {
+ ErrorF ("Couldn't open log file '%s' for writing: %s\n",
+ xglLogFile, strerror (errno));
+ }
+}
+
Bool
xglScreenInit (ScreenPtr pScreen)
{
@@ -390,6 +568,8 @@
return FALSE;
#endif
+ xglLogScreen (pScreen);
+
return TRUE;
}
++++++ xgl-suse-sysconfig.diff ++++++
Index: hw/xgl/glx/xglx.c
===================================================================
--- hw/xgl/glx/xglx.c (revision 59)
+++ hw/xgl/glx/xglx.c (working copy)
@@ -142,6 +142,12 @@
static glitz_drawable_format_t *xglxScreenFormat = 0;
+#define DISPLAYMANAGER_XGL_OPTS 1
+static char *sysconfig[] = {
+ "DISPLAYMANAGER_XGL_OPTS", NULL,
+ NULL
+};
+
static Bool
xglxAllocatePrivates (ScreenPtr pScreen)
{
@@ -1307,12 +1313,52 @@
xglxUseXorgMsg ();
}
+static void
+xglReadSysconfig (const char *path, char **strings)
+{
+ char *cmd, buf[1024];
+ int len = 20 + strlen (path);
+ char **s;
+ FILE *f;
+
+ for (s = strings; *s; s += 2)
+ len += 8 + strlen (*s);
+ if (! (cmd = malloc (len)) )
+ exit (1);
+
+ sprintf (cmd, "/bin/sh -c '. \"%s\";", path);
+ for (s = strings; *s; s += 2)
+ sprintf (cmd + strlen (cmd), " echo $%s;", *s);
+ strcat (cmd, "'");
+// DBG( fprintf (stderr, "read: %s\n", cmd); );
+
+ if (! (f = popen (cmd, "r")) )
+ {
+ perror (cmd);
+ return;
+ }
+ for (s = strings; *s; s += 2)
+ {
+ if (fgets (buf, 1024, f))
+ {
+ if (buf[0] && buf[strlen(buf)-1] == '\n')
+ buf[strlen(buf)-1] = 0;
+ s[1] = strdup (buf);
+ }
+// DBG( fprintf (stderr, "%s: %s\n", s[0], s[1]); );
+ }
+
+ pclose (f);
+ free (cmd);
+}
+
int
xglxProcessArgument (int argc,
char **argv,
int i)
{
static Bool checkDisplayName = FALSE;
+ static Bool checkSysconfig = FALSE;
if (!checkDisplayName)
{
@@ -1352,6 +1398,37 @@
checkDisplayName = TRUE;
}
+ if (!checkSysconfig)
+ {
+ checkSysconfig = TRUE;
+ if (!xDisplayName)
+ {
+ char *s, **sysconfigargv = calloc (1, sizeof (char *));
+ int sysconfigargc = 1;
+
+ xglReadSysconfig ("/etc/sysconfig/displaymanager",
+ sysconfig);
+ s = sysconfig[DISPLAYMANAGER_XGL_OPTS];
+
+ while (s && *s)
+ {
+ char *end = strpbrk (s, " \t");
+ if (end)
+ *end++ = 0;
+ if (*s)
+ {
+ sysconfigargc++;
+ sysconfigargv = realloc (sysconfigargv,
+ sizeof (char *) * sysconfigargc);
+ sysconfigargv[sysconfigargc-1] = s;
+ }
+ s = end;
+ }
+ if (sysconfigargc > 1)
+ ProcessCommandLine (sysconfigargc, sysconfigargv);
+ }
+ }
+
if (!strcmp (argv[i], "-screen"))
{
if ((i + 1) < argc)
++++++ xorg-composite-avoid-frame-buffer-reads.diff ++++++
--- a/composite/compalloc.c
+++ b/composite/compalloc.c
@@ -486,12 +486,24 @@ compNewPixmap (WindowPtr pWin, int x, int y, int w, int h)
ValidateGC(&pPixmap->drawable, pGC);
dixChangeGC (serverClient, pGC, GCSubwindowMode, &val, NULL);
+
+#if 1 /* ugly hack to avoid frame buffer reads */
+ val = 0;
+ dixChangeGC (serverClient, pGC, GCForeground, &val, NULL);
+
+ {
+ xRectangle rect = { 0, 0, w, h };
+ (*pGC->ops->PolyFillRect) (&pPixmap->drawable, pGC, 1, &rect);
+ }
+#else
(*pGC->ops->CopyArea) (&pParent->drawable,
&pPixmap->drawable,
pGC,
x - pParent->drawable.x,
y - pParent->drawable.y,
w, h, 0, 0);
+#endif
+
FreeScratchGC (pGC);
}
return pPixmap;
++++++ xorg-java-wmhack.diff ++++++
--- dix/window.c 2006/05/29 18:12:27 1.1
+++ dix/window.c 2006/05/29 18:15:15
@@ -1265,8 +1265,12 @@
result = EventSelectForWindow(pWin, client, (Mask )*pVlist);
if (result)
{
- error = result;
- goto PatchUp;
+ if (vmask != CWEventMask ||
+ (Mask)*pVlist != SubstructureRedirectMask)
+ {
+ error = result;
+ goto PatchUp;
+ }
}
pVlist++;
break;
++++++ xorg-maprules-tolower-fix.diff ++++++
? xorg-server-1.1.99.1.tar.bz2
? xorg-server-1.1.99.1.tar.gz
? doc/Xserver.1x
? hw/xgl/glxext/.libs
? hw/xgl/glxext/libxglglxext.la
? hw/xgl/glxext/xglglxext.lo
? hw/xgl/glxext/xglglxlog.lo
? hw/xgl/glxext/module/.libs
? hw/xgl/glxext/module/glxmodule.lo
? hw/xgl/glxext/module/libglxext.la
? hw/xwin/winprefslex.c
? hw/xwin/winprefsyacc.c
? hw/xwin/winprefsyacc.h
Index: xkb/maprules.c
===================================================================
RCS file: /cvs/xorg/xserver/xorg/xkb/maprules.c,v
retrieving revision 1.5.6.1
diff -u -r1.5.6.1 maprules.c
--- xkb/maprules.c 30 Mar 2006 16:39:31 -0000 1.5.6.1
+++ xkb/maprules.c 6 Apr 2006 00:42:32 -0000
@@ -1092,7 +1092,7 @@
for ( ; GetInputLine(file,&line,False); line.num_line= 0) {
if (line.line[0]=='!') {
tok = strtok(&(line.line[1]), " \t");
- if (_XkbStrCaseCmp(tolower(tok),"model") == 0)
+ if (_XkbStrCaseCmp(tok,"model") == 0)
headingtype = HEAD_MODEL;
else if (_XkbStrCaseCmp(tok,"layout") == 0)
headingtype = HEAD_LAYOUT;
++++++ xorg-mesa-delete-textures.diff ++++++
commit 31e391a20c552e786e95156fab300224dbab431c
Author: David Reveman
Date: Mon Mar 5 10:15:28 2007 +0100
DeleteTextures is not a vendor private request.
diff --git a/GL/glx/indirect_dispatch.c b/GL/glx/indirect_dispatch.c
index 8e22396..4d7ed33 100644
--- a/GL/glx/indirect_dispatch.c
+++ b/GL/glx/indirect_dispatch.c
@@ -2815,7 +2815,7 @@ int __glXDisp_DeleteTextures(__GLXclient
int error;
__GLXcontext * const cx = __glXForceCurrent(cl, req->contextTag, &error);
- pc += __GLX_VENDPRIV_HDR_SIZE;
+ pc += __GLX_SINGLE_HDR_SIZE;
if ( cx != NULL ) {
const GLsizei n = *(GLsizei *)(pc + 0);
++++++ xorg-security-file-dir.diff ++++++
--- Xext/Makefile.am.old 10 Feb 2006 11:01:50 -0000 1.15.2.1
+++ Xext/Makefile.am 21 Mar 2006 15:14:57 -0000
@@ -72,7 +72,7 @@
if XCSECURITY
BUILTIN_SRCS += $(XCSECURITY_SRCS)
-SERVERCONFIGdir = $(libdir)/xserver
+SERVERCONFIGdir = $(sysconfdir)/xserver
SERVERCONFIG_DATA = SecurityPolicy
AM_CFLAGS += -DDEFAULTPOLICYFILE=\"$(SERVERCONFIGdir)/SecurityPolicy\"
endif
--- Xext/Makefile.in.old 2006-03-21 16:16:01.000000000 +0100
+++ Xext/Makefile.in 2006-03-21 16:16:05.000000000 +0100
@@ -666,7 +666,7 @@
# Security extension: multi-level security to protect clients from each other
XCSECURITY_SRCS = security.c
-@XCSECURITY_TRUE@SERVERCONFIGdir = $(libdir)/xserver
+@XCSECURITY_TRUE@SERVERCONFIGdir = $(sysconfdir)/xserver
@XCSECURITY_TRUE@SERVERCONFIG_DATA = SecurityPolicy
# X EVent Interception Extension: allows accessibility helpers & composite
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org