[packages/xorg-xserver-server] - rel 2; add new dri loader needed for mesa 10
arekm
arekm at pld-linux.org
Sun Dec 1 19:49:16 CET 2013
commit f48ea26bbe5afb30a1325c43c7021b8bb36e02b9
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date: Sun Dec 1 19:49:12 2013 +0100
- rel 2; add new dri loader needed for mesa 10
xorg-xserver-server-newloader.patch | 67 +++++++++++++++++++++++++++++++++++++
xorg-xserver-server.spec | 6 ++--
2 files changed, 70 insertions(+), 3 deletions(-)
---
diff --git a/xorg-xserver-server.spec b/xorg-xserver-server.spec
index 40601e7..70efd80 100644
--- a/xorg-xserver-server.spec
+++ b/xorg-xserver-server.spec
@@ -25,7 +25,7 @@ Summary: X.org server
Summary(pl.UTF-8): Serwer X.org
Name: xorg-xserver-server
Version: 1.14.4
-Release: 1
+Release: 2
License: MIT
Group: X11/Servers
Source0: http://xorg.freedesktop.org/releases/individual/xserver/xorg-server-%{version}.tar.bz2
@@ -38,7 +38,7 @@ Source12: xvfb-run.sh
Patch0: %{name}-xwrapper.patch
Patch1: %{name}-pic-libxf86config.patch
-
+Patch2: %{name}-newloader.patch
Patch3: %{name}-less-acpi-brokenness.patch
Patch4: %{name}-builtin-SHA1.patch
Patch5: %{name}-export-GetMaster.patch
@@ -364,7 +364,7 @@ Biblioteka rozszerzenia GLX dla serwera X.org.
%setup -q -n xorg-server-%{version}
%patch0 -p0
%patch1 -p1
-
+%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
diff --git a/xorg-xserver-server-newloader.patch b/xorg-xserver-server-newloader.patch
new file mode 100644
index 0000000..0a59744
--- /dev/null
+++ b/xorg-xserver-server-newloader.patch
@@ -0,0 +1,67 @@
+commit 339af2ae943d943f8ce986fc7bdcb8aa52b44922
+Author: Eric Anholt <eric at anholt.net>
+Date: Tue Oct 22 14:22:04 2013 -0700
+
+ glx: Add support for the new DRI loader entrypoint.
+
+ This is going to be exposed (and not the old entrypoint) for some DRI
+ drivers once the megadrivers series lands, and the plan is to
+ eventually transition all drivers to that. Hopefully this is
+ unobtrusive enough to merge to stable X servers so that they can be
+ compatible with new Mesa versions.
+
+ v2: typo fix in the comment
+
+ Signed-off-by: Eric Anholt <eric at anholt.net>
+ Reviewed-by: Adam Jackson <ajax at redhat.com>
+ Signed-off-by: Keith Packard <keithp at keithp.com>
+
+diff --git a/glx/glxdricommon.c b/glx/glxdricommon.c
+index c90f380..5686c5f 100644
+--- a/glx/glxdricommon.c
++++ b/glx/glxdricommon.c
+@@ -209,6 +209,14 @@ glxConvertConfigs(const __DRIcoreExtension * core,
+
+ static const char dri_driver_path[] = DRI_DRIVER_PATH;
+
++/* Temporary define to allow building without a dri_interface.h from
++ * updated Mesa. Some day when we don't care about Mesa that old any
++ * more this can be removed.
++ */
++#ifndef __DRI_DRIVER_GET_EXTENSIONS
++#define __DRI_DRIVER_GET_EXTENSIONS "__driDriverGetExtensions"
++#endif
++
+ void *
+ glxProbeDriver(const char *driverName,
+ void **coreExt, const char *coreName, int coreVersion,
+@@ -217,7 +225,8 @@ glxProbeDriver(const char *driverName,
+ int i;
+ void *driver;
+ char filename[PATH_MAX];
+- const __DRIextension **extensions;
++ char *get_extensions_name;
++ const __DRIextension **extensions = NULL;
+
+ snprintf(filename, sizeof filename, "%s/%s_dri.so",
+ dri_driver_path, driverName);
+@@ -229,7 +238,18 @@ glxProbeDriver(const char *driverName,
+ goto cleanup_failure;
+ }
+
+- extensions = dlsym(driver, __DRI_DRIVER_EXTENSIONS);
++ if (asprintf(&get_extensions_name, "%s_%s",
++ __DRI_DRIVER_GET_EXTENSIONS, driverName) != -1) {
++ const __DRIextension **(*get_extensions)(void);
++
++ get_extensions = dlsym(driver, get_extensions_name);
++ if (get_extensions)
++ extensions = get_extensions();
++ free(get_extensions_name);
++ }
++
++ if (!extensions)
++ extensions = dlsym(driver, __DRI_DRIVER_EXTENSIONS);
+ if (extensions == NULL) {
+ LogMessage(X_ERROR, "AIGLX error: %s exports no extensions (%s)\n",
+ driverName, dlerror());
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/xorg-xserver-server.git/commitdiff/f48ea26bbe5afb30a1325c43c7021b8bb36e02b9
More information about the pld-cvs-commit
mailing list