Date: Sunday, February 23, 2020 @ 12:54:32 Author: svenstaro Revision: 579765
upgpkg: lib32-virtualgl 2.6.3-1 Added: lib32-virtualgl/trunk/faedcc1e36b4ed89a325e01822447900840a0b77.patch Modified: lib32-virtualgl/trunk/PKGBUILD ------------------------------------------------+ PKGBUILD | 26 +++-- faedcc1e36b4ed89a325e01822447900840a0b77.patch | 105 +++++++++++++++++++++++ 2 files changed, 121 insertions(+), 10 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2020-02-23 12:45:06 UTC (rev 579764) +++ PKGBUILD 2020-02-23 12:54:32 UTC (rev 579765) @@ -1,29 +1,35 @@ -# Maintainer: Sven-Hendrik Haase <[email protected]> +# Maintainer: Sven-Hendrik Haase <[email protected]> # Contributor: FigoDaPaura <ffigoDaPaura> pkgname=lib32-virtualgl -pkgver=2.6.2 +pkgver=2.6.3 pkgrel=1 pkgdesc="32-bit serverside components for 64-bit VirtualGL servers" arch=('x86_64') url="https://virtualgl.org" license=('LGPL') -makedepends=('lib32-libxv' 'lib32-glu' 'virtualgl' 'lib32-libjpeg-turbo' 'cmake' 'gcc-multilib' 'lib32-mesa' 'lib32-mesa-libgl' 'lib32-libxtst') -depends=('virtualgl' 'lib32-libxv' 'lib32-glu' 'lib32-turbojpeg') -source=("https://downloads.sourceforge.net/project/virtualgl/${pkgver}/VirtualGL-${pkgver}.tar.gz"{,.sig}) -sha512sums=('826707451a7c85de84f3e4b2cc629ee41ee48132c62d55dd2af87d7f1a45873a8d0a281936bae37ce838491948c462e9cebb08ce8b20fcba2122c94d8bc2f5e5' - 'SKIP') +depends=('virtualgl' 'lib32-libxv' 'lib32-glu' 'lib32-turbojpeg' 'lib32-opencl-driver' 'lib32-ocl-icd') +makedepends=('lib32-libxv' 'lib32-glu' 'virtualgl' 'lib32-libjpeg-turbo' 'cmake' 'gcc-multilib' 'lib32-mesa' 'lib32-mesa-libgl' 'lib32-libxtst' 'opencl-headers') +source=("https://downloads.sourceforge.net/project/virtualgl/${pkgver}/VirtualGL-${pkgver}.tar.gz"{,.sig} + faedcc1e36b4ed89a325e01822447900840a0b77.patch) +sha512sums=('c01c602335d51c94840c32021a5ce4f982939d67efbe1458fce67582c5a76ac42f5b733998a8c8f04a77d57d7c2de01377f7cabcf848c01bfd9b2d8e0b318fea' + 'SKIP' + '6845a60071aac333ac1c2ad5c3861f9fbe8cdf9f28425817a18c2b6f8c280b5469ce3be4831a0bf8a6600955bf5177217ff684c61f728783f2d09be6885f2815') validpgpkeys=('ECF01671D05E2A105FF84DC46BBEFA1972FEB9CE') # The VirtualGL Project (Signing key for official binaries) <[email protected]> prepare() { + cd VirtualGL-$pkgver + # FS#48403 export LDFLAGS="${LDFLAGS/--as-needed,}" - mkdir "$srcdir/VirtualGL-$pkgver"/build + patch -Np1 -i "$srcdir"/faedcc1e36b4ed89a325e01822447900840a0b77.patch + + mkdir build } build() { - cd "$srcdir/VirtualGL-$pkgver"/build + cd "VirtualGL-$pkgver"/build export CC="gcc -m32" export CXX="g++ -m32" @@ -42,7 +48,7 @@ } package() { - cd "$srcdir/VirtualGL-$pkgver/build" + cd "VirtualGL-$pkgver/build" make install DESTDIR="$pkgdir" cd "$pkgdir/usr" Added: faedcc1e36b4ed89a325e01822447900840a0b77.patch =================================================================== --- faedcc1e36b4ed89a325e01822447900840a0b77.patch (rev 0) +++ faedcc1e36b4ed89a325e01822447900840a0b77.patch 2020-02-23 12:54:32 UTC (rev 579765) @@ -0,0 +1,105 @@ +From faedcc1e36b4ed89a325e01822447900840a0b77 Mon Sep 17 00:00:00 2001 +From: DRC <[email protected]> +Date: Thu, 13 Feb 2020 19:11:46 -0600 +Subject: [PATCH] Faker: Fix build issue w/ Mesa 19.3.0+ headers + +Mesa changed the signatures for glXGetTransparentIndexSUN() and +glXQueryGLXPbufferSGIX() to match the official GLX extension specs: +https://www.khronos.org/registry/OpenGL/extensions/SUN/GLX_SUN_get_transparent_index.txt +https://www.khronos.org/registry/OpenGL/extensions/SGIX/GLX_SGIX_pbuffer.txt + +Reference: +https://gitlab.freedesktop.org/mesa/mesa/commit/3dd299c3d5b88114894ec30d1fac85fba688201f + +Fixes #109 +--- + ChangeLog.md | 2 ++ + server/faker-glx.cpp | 14 +++++++++++++- + server/faker-sym.h | 8 +++++++- + 3 files changed, 22 insertions(+), 2 deletions(-) + +diff --git a/ChangeLog.md b/ChangeLog.md +index 8d092bd7..78391d06 100644 +--- a/ChangeLog.md ++++ b/ChangeLog.md +@@ -6,6 +6,8 @@ + 1. VirtualGL now works properly with 3D applications that use the + `glDrawBuffers()` function and render to the front buffer. + ++2. VirtualGL can now be built using the GLX headers from Mesa 19.3.0 and later. ++ + + 2.6.3 + ===== +diff --git a/server/faker-glx.cpp b/server/faker-glx.cpp +index faea37b6..6e7beb63 100644 +--- a/server/faker-glx.cpp ++++ b/server/faker-glx.cpp +@@ -1,6 +1,6 @@ + // Copyright (C)2004 Landmark Graphics Corporation + // Copyright (C)2005, 2006 Sun Microsystems, Inc. +-// Copyright (C)2009, 2011-2019 D. R. Commander ++// Copyright (C)2009, 2011-2020 D. R. Commander + // + // This library is free software and may be redistributed and/or modified under + // the terms of the wxWindows Library License, Version 3.1 or (at your option) +@@ -2192,11 +2192,18 @@ void glXQueryDrawable(Display *dpy, GLXDrawable draw, int attribute, + CATCH(); + } + ++#if defined(GLX_GLXEXT_VERSION) && GLX_GLXEXT_VERSION >= 20190000 ++void glXQueryGLXPbufferSGIX(Display *dpy, GLXPbuffer pbuf, int attribute, ++ unsigned int *value) ++#else + int glXQueryGLXPbufferSGIX(Display *dpy, GLXPbuffer pbuf, int attribute, + unsigned int *value) ++#endif + { + glXQueryDrawable(dpy, pbuf, attribute, value); ++ #if !defined(GLX_GLXEXT_VERSION) || GLX_GLXEXT_VERSION < 20190000 + return 0; ++ #endif + } + + +@@ -2358,8 +2365,13 @@ void glXSwapBuffers(Display *dpy, GLXDrawable drawable) + + // Returns the transparent index from the overlay visual on the 2D X server + ++#if defined(GLX_GLXEXT_VERSION) && GLX_GLXEXT_VERSION >= 20190000 ++int glXGetTransparentIndexSUN(Display *dpy, Window overlay, Window underlay, ++ unsigned long *transparentIndex) ++#else + int glXGetTransparentIndexSUN(Display *dpy, Window overlay, Window underlay, + long *transparentIndex) ++#endif + { + int retval = False; + XWindowAttributes xwa; +diff --git a/server/faker-sym.h b/server/faker-sym.h +index b9aa30d0..0168ac7b 100644 +--- a/server/faker-sym.h ++++ b/server/faker-sym.h +@@ -1,6 +1,6 @@ + // Copyright (C)2004 Landmark Graphics Corporation + // Copyright (C)2005, 2006 Sun Microsystems, Inc. +-// Copyright (C)2009, 2011, 2013-2016, 2018-2019 D. R. Commander ++// Copyright (C)2009, 2011, 2013-2016, 2018-2020 D. R. Commander + // + // This library is free software and may be redistributed and/or modified under + // the terms of the wxWindows Library License, Version 3.1 or (at your option) +@@ -535,8 +535,14 @@ FUNCDEF2(GLXFBConfigSGIX, glXGetFBConfigFromVisualSGIX, Display *, dpy, + + // GLX_SUN_get_transparent_index + ++#if defined(GLX_GLXEXT_VERSION) && GLX_GLXEXT_VERSION >= 20190000 ++FUNCDEF4(int, glXGetTransparentIndexSUN, Display *, dpy, Window, overlay, ++ Window, underlay, unsigned long *, transparentIndex, ++ glXGetTransparentIndexSUN) ++#else + FUNCDEF4(int, glXGetTransparentIndexSUN, Display *, dpy, Window, overlay, + Window, underlay, long *, transparentIndex, glXGetTransparentIndexSUN); ++#endif + + + // GL functions
