summaryrefslogtreecommitdiff
path: root/extra/glamor-egl
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2013-03-19 00:04:27 -0700
committerroot <root@rshg054.dnsready.net>2013-03-19 00:04:27 -0700
commitb54c21859be3590a319ceade1f58d0b89ac5ef32 (patch)
tree1f4a8c6408144ac159505c48e66641671e87ff54 /extra/glamor-egl
parente81bd948a32f8b411197818651f517ddf431ab0a (diff)
Tue Mar 19 00:04:27 PDT 2013
Diffstat (limited to 'extra/glamor-egl')
-rw-r--r--extra/glamor-egl/PKGBUILD10
-rw-r--r--extra/glamor-egl/git-fixes.patch251
2 files changed, 256 insertions, 5 deletions
diff --git a/extra/glamor-egl/PKGBUILD b/extra/glamor-egl/PKGBUILD
index 002ae2ace..bc7954587 100644
--- a/extra/glamor-egl/PKGBUILD
+++ b/extra/glamor-egl/PKGBUILD
@@ -4,7 +4,7 @@
pkgname=glamor-egl
pkgver=0.5.0
-pkgrel=3
+pkgrel=4
pkgdesc='OpenGL based 2D rendering acceleration library '
arch=('i686' 'x86_64')
url="http://xorg.freedesktop.org/"
@@ -26,7 +26,7 @@ sha256sums=('5dc8679ccb3e42bf431b6316c7907b9df2db89745d523e04721f34aee6c84991'
'fc3d937f2cb996586d3a9cc7427050d04d2d19d3f745055cc9d3556428a7cf93'
'a7fac65474af636995d0181dbf7f8f091d8657260162eb172ae816b75ad98b54'
'dcf38a7ac303c1636a3b1b7810dcb6ee65ba7e81b6e590840e164ce0e28010dc'
- '5c0d1dd79a8b50f6720ba2d4dbe288dca11cc19131bb502c6ad2920298ccf843')
+ 'c56e677456fb8555b009b1d3b95e939b5a38f37c2a345fff48f2b723e44045e9')
build() {
cd ${srcdir}/${pkgname}-${pkgver}
@@ -41,7 +41,7 @@ build() {
./configure --prefix=/usr \
--disable-static \
--enable-glx-tls \
-
+ #--with-xorg-conf-dir=/etc/X11/xorg.conf.d
#--help
#--enable-glamor-gles2 \ https://bugs.archlinux.org/task/34284
@@ -58,6 +58,6 @@ package() {
# http://lists.x.org/archives/xorg-devel/2013-March/035719.html
# add glamor library path to ld.so.conf.d
- install -d ${pkgdir}/etc/ld.so.conf.d
- echo "/usr/lib/xorg/modules" > ${pkgdir}/etc/ld.so.conf.d/${pkgname}.conf
+# install -d ${pkgdir}/etc/ld.so.conf.d
+# echo "/usr/lib/xorg/modules" > ${pkgdir}/etc/ld.so.conf.d/${pkgname}.conf
}
diff --git a/extra/glamor-egl/git-fixes.patch b/extra/glamor-egl/git-fixes.patch
index 4cf1b9fa0..7a03a225e 100644
--- a/extra/glamor-egl/git-fixes.patch
+++ b/extra/glamor-egl/git-fixes.patch
@@ -175,3 +175,254 @@ index 36beb49..d307838 100644
} else { \
--
cgit v0.9.0.2-2-gbebe
+From 61879504f86c5cb326cc06a5873283234cfbbcd2 Mon Sep 17 00:00:00 2001
+From: Michel Dänzer <michel.daenzer@amd.com>
+Date: Wed, 13 Mar 2013 16:15:33 +0000
+Subject: glamoregl: Use xf86ScreenToScrn()
+
+Fixes crashes when glamor is used for a GPU screen with xserver 1.13 or
+newer.
+
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=57200#c17
+
+Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
+Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
+---
+diff --git a/src/glamor_egl.c b/src/glamor_egl.c
+index a248aa2..cd0bdc0 100644
+--- a/src/glamor_egl.c
++++ b/src/glamor_egl.c
+@@ -116,7 +116,7 @@ glamor_egl_get_screen_private(ScrnInfoPtr scrn)
+ _X_EXPORT void
+ glamor_egl_make_current(ScreenPtr screen)
+ {
+- ScrnInfoPtr scrn = xf86Screens[screen->myNum];
++ ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+ struct glamor_egl_screen_private *glamor_egl =
+ glamor_egl_get_screen_private(scrn);
+
+@@ -139,7 +139,7 @@ glamor_egl_make_current(ScreenPtr screen)
+ _X_EXPORT void
+ glamor_egl_restore_context(ScreenPtr screen)
+ {
+- ScrnInfoPtr scrn = xf86Screens[screen->myNum];
++ ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+ struct glamor_egl_screen_private *glamor_egl =
+ glamor_egl_get_screen_private(scrn);
+
+@@ -221,7 +221,7 @@ glamor_create_texture_from_image(struct glamor_egl_screen_private
+ Bool
+ glamor_egl_create_textured_screen(ScreenPtr screen, int handle, int stride)
+ {
+- ScrnInfoPtr scrn = xf86Screens[screen->myNum];
++ ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+ struct glamor_egl_screen_private *glamor_egl;
+ PixmapPtr screen_pixmap;
+
+@@ -245,7 +245,7 @@ glamor_egl_create_textured_screen_ext(ScreenPtr screen,
+ int stride,
+ PixmapPtr *back_pixmap)
+ {
+- ScrnInfoPtr scrn = xf86Screens[screen->myNum];
++ ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+ struct glamor_egl_screen_private *glamor_egl;
+
+ glamor_egl = glamor_egl_get_screen_private(scrn);
+@@ -272,7 +272,7 @@ Bool
+ glamor_egl_create_textured_pixmap(PixmapPtr pixmap, int handle, int stride)
+ {
+ ScreenPtr screen = pixmap->drawable.pScreen;
+- ScrnInfoPtr scrn = xf86Screens[screen->myNum];
++ ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+ struct glamor_egl_screen_private *glamor_egl;
+ EGLImageKHR image;
+ GLuint texture;
+@@ -318,7 +318,7 @@ done:
+ static void
+ _glamor_egl_destroy_pixmap_image(PixmapPtr pixmap)
+ {
+- ScrnInfoPtr scrn = xf86Screens[pixmap->drawable.pScreen->myNum];
++ ScrnInfoPtr scrn = xf86ScreenToScrn(pixmap->drawable.pScreen);
+ EGLImageKHR image;
+ struct glamor_egl_screen_private *glamor_egl =
+ glamor_egl_get_screen_private(scrn);
+@@ -338,7 +338,7 @@ _glamor_egl_destroy_pixmap_image(PixmapPtr pixmap)
+ _X_EXPORT void
+ glamor_egl_exchange_buffers(PixmapPtr front, PixmapPtr back)
+ {
+- ScrnInfoPtr scrn = xf86Screens[front->drawable.pScreen->myNum];
++ ScrnInfoPtr scrn = xf86ScreenToScrn(front->drawable.pScreen);
+ struct glamor_egl_screen_private *glamor_egl =
+ glamor_egl_get_screen_private(scrn);
+ EGLImageKHR old_front_image;
+@@ -371,7 +371,7 @@ glamor_egl_close_screen(CLOSE_SCREEN_ARGS_DECL)
+ PixmapPtr screen_pixmap;
+ EGLImageKHR back_image;
+
+- scrn = xf86Screens[screen->myNum];
++ scrn = xf86ScreenToScrn(screen);
+ glamor_egl = glamor_egl_get_screen_private(scrn);
+ screen_pixmap = screen->GetScreenPixmap(screen);
+
+@@ -417,7 +417,7 @@ glamor_egl_has_extension(struct glamor_egl_screen_private *glamor_egl,
+ void
+ glamor_egl_screen_init(ScreenPtr screen)
+ {
+- ScrnInfoPtr scrn = xf86Screens[screen->myNum];
++ ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+ struct glamor_egl_screen_private *glamor_egl =
+ glamor_egl_get_screen_private(scrn);
+
+@@ -588,7 +588,7 @@ glamor_gl_dispatch_init(ScreenPtr screen,
+ struct glamor_gl_dispatch *dispatch,
+ int gl_version)
+ {
+- ScrnInfoPtr scrn = xf86Screens[screen->myNum];
++ ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
+ struct glamor_egl_screen_private *glamor_egl =
+ glamor_egl_get_screen_private(scrn);
+ if (!glamor_gl_dispatch_init_impl
+--
+cgit v0.9.0.2-2-gbebe
+From 3cd34ba9f0708ab7d816eeee80139257fafcb4ad Mon Sep 17 00:00:00 2001
+From: Armin K <krejzi@email.com>
+Date: Wed, 13 Mar 2013 17:28:57 +0000
+Subject: Silence Automake 1.13 warnings
+
+warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
+
+Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
+---
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 55721f6..2140b81 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -12,7 +12,7 @@ endif
+
+ instdir = $(moduledir)
+
+-INCLUDES = \
++AM_CPPFLAGS = \
+ $(XORG_INCS)
+
+ AM_CFLAGS = $(CWARNFLAGS) $(XORG_CFLAGS) $(DIX_CFLAGS) $(LIBDRM_CFLAGS)
+--
+cgit v0.9.0.2-2-gbebe
+From c7241f097ddb4d3bfb832f6b4ee6fafe8b4d2cfe Mon Sep 17 00:00:00 2001
+From: Armin K <krejzi@email.com>
+Date: Wed, 13 Mar 2013 17:28:58 +0000
+Subject: Properly dist necesary headers
+
+Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
+---
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 2140b81..0879287 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -31,6 +31,7 @@ libglamor_la_SOURCES = \
+ glamor_fill.c \
+ glamor_fillspans.c \
+ glamor_getspans.c \
++ glamor_glext.h \
+ glamor_glyphs.c \
+ glamor_polyfillrect.c \
+ glamor_polylines.c \
+--
+cgit v0.9.0.2-2-gbebe
+From f2d7f1cf351bdc3a8a00fe564cd6a937db3b4e19 Mon Sep 17 00:00:00 2001
+From: Armin K <krejzi@email.com>
+Date: Wed, 13 Mar 2013 17:49:32 +0000
+Subject: First attempt to make libglamor.so shared versioned library
+
+As recommended by Michel in this thread reply:
+http://lists.freedesktop.org/archives/glamor/2013-March/000305.html
+
+v2: Correct shared library location in glamor.pc.in
+
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=62259
+
+Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
+---
+diff --git a/glamor.pc.in b/glamor.pc.in
+index 74ecd2e..5257468 100644
+--- a/glamor.pc.in
++++ b/glamor.pc.in
+@@ -2,12 +2,11 @@ prefix=@prefix@
+ exec_prefix=@exec_prefix@
+ libdir=@libdir@
+ includedir=@includedir@
+-moduledir=@moduledir@
+ sdkdir=@sdkdir@
+ GLAMOR_GL_CFLAGS=@GLAMOR_GL_CFLAGS@
+
+ Name: glamor
+ Description: X.Org glamor common library.
+ Version: @PACKAGE_VERSION@
+-Cflags: -I${sdkdir} -L${moduledir} -lglamor ${GLAMOR_GL_CFLAGS}
+-
++Cflags: -I${sdkdir} ${GLAMOR_GL_CFLAGS}
++Libs: -L${libdir} -lglamor
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 0879287..4beb559 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -1,4 +1,4 @@
+-inst_LTLIBRARIES = libglamor.la
++lib_LTLIBRARIES = libglamor.la
+
+ # Override these since glamor doesn't need them and the needed files aren't
+ # built (in hw/xfree86/os-support/solaris) until after glamor is built
+@@ -10,14 +10,12 @@ else
+ libglamor_la_LIBADD = $(GL_LIBS)
+ endif
+
+-instdir = $(moduledir)
+-
+ AM_CPPFLAGS = \
+ $(XORG_INCS)
+
+ AM_CFLAGS = $(CWARNFLAGS) $(XORG_CFLAGS) $(DIX_CFLAGS) $(LIBDRM_CFLAGS)
+
+-libglamor_la_LDFLAGS = -avoid-version
++libglamor_la_LDFLAGS = -version-info 0:0:0
+
+ libglamor_la_SOURCES = \
+ compat-api.h \
+@@ -65,7 +63,8 @@ if EGL
+ LIBGLAMOREGL = libglamoregl.la
+ module_LTLIBRARIES = $(LIBGLAMOREGL)
+ libglamoregl_la_DEPENDENCIES = libglamor.la
+-libglamoregl_la_LDFLAGS = -avoid-version -module $(EGL_LIBS) -lglamor $(GLX_SYS_LIBS)
++libglamoregl_la_LDFLAGS = -avoid-version -module
++libglamoregl_la_LIBADD = $(EGL_LIBS) $(GLX_SYS_LIBS) libglamor.la
+ libglamoregl_la_SOURCES = glamor_eglmodule.c $(top_srcdir)/src/glamor_egl.c
+ libglamoregl_la_CFLAGS = $(AM_CFLAGS) $(GLX_DEFINES) -I$(top_srcdir)/src $(LIBDRM_CFLAGS) $(EGL_CFLAGS)
+ endif
+--
+cgit v0.9.0.2-2-gbebe
+From 81aadb8ae204f58d77a948c8624f1e72659dcdf0 Mon Sep 17 00:00:00 2001
+From: Armin K <krejzi@email.com>
+Date: Wed, 13 Mar 2013 17:49:33 +0000
+Subject: Don't use AC_PROG_LIBTOOL
+
+Autoconf only needs libtool macros which are copied when
+autoreconf is run. There is no need for looking for
+"libtool" program in PATH. This properly disables static
+libraries from being built and installed.
+
+Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
+---
+diff --git a/configure.ac b/configure.ac
+index 230543c..5ff6ae1 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -37,7 +37,6 @@ AM_INIT_AUTOMAKE([foreign dist-bzip2])
+ AM_MAINTAINER_MODE([enable])
+
+ # Initialize libtool
+-AC_PROG_LIBTOOL
+ LT_PREREQ([2.2])
+ LT_INIT([disable-static])
+
+--
+cgit v0.9.0.2-2-gbebe