* fdo#97988 [radeonsi] playing back videos with VDPAU exhibits
* fdo#99484 Crusader Kings 2 - Loading bars, siege bars, morale bars, etc. * fdo#100049 ralloc: Make sure ralloc() allocations match malloc()'s alignment. causes seg fault in 32bit build * many fixes for ANV, RADV, Vulkan and i965 + radeonsi drivers - fedora_0001-glxglvnddispatch-Add-missing-dispatch-for-GetDriverC.patch * Fix glXGetDriverConfig not working with glvnd (https://bugzilla.redhat.com/show_bug.cgi?id=1429894) - Fix indirect rendering, add libGLX_indirect.so.0 symlink (https://bugzilla.redhat.com/show_bug.cgi?id=1427174) - added Requires to libglvnd0/libglvnd-devel where still needed - patches picked from fedora: http://pkgs.fedoraproject.org/cgit/rpms/mesa.git/tree/ - re-enabled GLES build with libglvnd build, just not package GLES libs and require libglvnd0/libglvnd-devel instead - archlinux_0001-Fix-linkage-against-shared-glapi.patch * fixes libglvnd support for osmesa - archlinux_glvnd-fix-gl-dot-pc.patch * fixes libglvnd support in pkgconfig file - archlinux_0001-EGL-Implement-the-libglvnd-interface-for-EGL-v2.patch/ archlinux_0002-fixup-EGL-Implement-the-libglvnd-interface-for-EGL-v.patch * adds libglvnd support for EGL - patches picked from archlinux: https://git.archlinux.org/svntogit/packages.git/tree/trunk?h=packages/mesa - archlinux_glapi-Link-with-glapi-when-built-shared.patch * currently needed for libglvnd support; picked from archlinux OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/Mesa?expand=0&rev=584
This commit is contained in:
parent
2efdc95a37
commit
709691dd52
55
Mesa.changes
55
Mesa.changes
@ -1,14 +1,61 @@
|
|||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Mar 20 18:07:07 UTC 2017 - mimi.vx@gmail.com
|
Fri Mar 24 14:45:49 UTC 2017 - sndirsch@suse.com
|
||||||
|
|
||||||
- update to 17.0.2
|
- update to 17.0.2
|
||||||
* fdo#97988 [radeonsi] playing back videos with VDPAU exhibits
|
* fdo#97988 [radeonsi] playing back videos with VDPAU exhibits
|
||||||
deinterlacing/anti-aliasing issues not visible with VA-API
|
deinterlacing/anti-aliasing issues not visible with VA-API
|
||||||
* fdo#99484 Crusader Kings 2 - Loading bars, siege bars, morale bars, etc.
|
* fdo#99484 Crusader Kings 2 - Loading bars, siege bars, morale bars, etc.
|
||||||
do not render correctly
|
do not render correctly
|
||||||
* fdo#100049 ralloc: Make sure ralloc() allocations match malloc()'s alignment.
|
* fdo#100049 ralloc: Make sure ralloc() allocations match malloc()'s
|
||||||
causes seg fault in 32bit build
|
alignment. causes seg fault in 32bit build
|
||||||
* many fixes for ANV, RADV, Vulkan and i965 + radeonsi drivers
|
* many fixes for ANV, RADV, Vulkan and i965 + radeonsi drivers
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Mar 23 13:41:27 UTC 2017 - sndirsch@suse.com
|
||||||
|
|
||||||
|
- fedora_0001-glxglvnddispatch-Add-missing-dispatch-for-GetDriverC.patch
|
||||||
|
* Fix glXGetDriverConfig not working with glvnd
|
||||||
|
(https://bugzilla.redhat.com/show_bug.cgi?id=1429894)
|
||||||
|
- Fix indirect rendering, add libGLX_indirect.so.0 symlink
|
||||||
|
(https://bugzilla.redhat.com/show_bug.cgi?id=1427174)
|
||||||
|
- added Requires to libglvnd0/libglvnd-devel where still needed
|
||||||
|
- patches picked from fedora:
|
||||||
|
http://pkgs.fedoraproject.org/cgit/rpms/mesa.git/tree/
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Mar 22 11:21:25 UTC 2017 - sndirsch@suse.com
|
||||||
|
|
||||||
|
- re-enabled GLES build with libglvnd build, just not package GLES
|
||||||
|
libs and require libglvnd0/libglvnd-devel instead
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Mar 21 10:57:54 UTC 2017 - sndirsch@suse.com
|
||||||
|
|
||||||
|
- archlinux_0001-Fix-linkage-against-shared-glapi.patch
|
||||||
|
* fixes libglvnd support for osmesa
|
||||||
|
- archlinux_glvnd-fix-gl-dot-pc.patch
|
||||||
|
* fixes libglvnd support in pkgconfig file
|
||||||
|
- archlinux_0001-EGL-Implement-the-libglvnd-interface-for-EGL-v2.patch/
|
||||||
|
archlinux_0002-fixup-EGL-Implement-the-libglvnd-interface-for-EGL-v.patch
|
||||||
|
* adds libglvnd support for EGL
|
||||||
|
- patches picked from archlinux:
|
||||||
|
https://git.archlinux.org/svntogit/packages.git/tree/trunk?h=packages/mesa
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Mar 17 15:06:03 UTC 2017 - sndirsch@suse.com
|
||||||
|
|
||||||
|
- archlinux_glapi-Link-with-glapi-when-built-shared.patch
|
||||||
|
* currently needed for libglvnd support; picked from archlinux
|
||||||
|
https://git.archlinux.org/svntogit/packages.git/tree/trunk?h=packages/mesa
|
||||||
|
- fixed typo in Requires to libglvnd
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Mar 9 14:20:22 UTC 2017 - sndirsch@suse.com
|
||||||
|
|
||||||
|
- build with libglvnd support enabled (can be easily disabled via
|
||||||
|
specfile define); requires libglvnd runtime and development
|
||||||
|
packages; disabled build of GLESv1/v2 libs/packages provided now
|
||||||
|
via libglvnd
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Sat Mar 4 16:29:46 UTC 2017 - mimi.vx@gmail.com
|
Sat Mar 4 16:29:46 UTC 2017 - mimi.vx@gmail.com
|
||||||
|
73
Mesa.spec
73
Mesa.spec
@ -20,6 +20,7 @@
|
|||||||
# They may fix KDE on Nouveau. They may also deadlock your userland.
|
# They may fix KDE on Nouveau. They may also deadlock your userland.
|
||||||
%define use_broken_nouveau_locking_patches 0
|
%define use_broken_nouveau_locking_patches 0
|
||||||
|
|
||||||
|
%define libglvnd 1
|
||||||
%define glamor 1
|
%define glamor 1
|
||||||
%define _name_archive mesa
|
%define _name_archive mesa
|
||||||
%define _version 17.0.2
|
%define _version 17.0.2
|
||||||
@ -75,6 +76,13 @@ Patch15: u_mesa-8.0-llvmpipe-shmget.patch
|
|||||||
Patch18: n_VDPAU-XVMC-libs-Replace-hardlinks-with-copies.patch
|
Patch18: n_VDPAU-XVMC-libs-Replace-hardlinks-with-copies.patch
|
||||||
# never to be upstreamed
|
# never to be upstreamed
|
||||||
Patch21: n_Define-GLAPIVAR-separate-from-GLAPI.patch
|
Patch21: n_Define-GLAPIVAR-separate-from-GLAPI.patch
|
||||||
|
# currently needed for libglvnd support
|
||||||
|
Patch30: archlinux_glapi-Link-with-glapi-when-built-shared.patch
|
||||||
|
Patch31: archlinux_0001-Fix-linkage-against-shared-glapi.patch
|
||||||
|
Patch32: archlinux_glvnd-fix-gl-dot-pc.patch
|
||||||
|
Patch33: archlinux_0001-EGL-Implement-the-libglvnd-interface-for-EGL-v2.patch
|
||||||
|
Patch34: archlinux_0002-fixup-EGL-Implement-the-libglvnd-interface-for-EGL-v.patch
|
||||||
|
Patch35: fedora_0001-glxglvnddispatch-Add-missing-dispatch-for-GetDriverC.patch
|
||||||
|
|
||||||
# Nouveau multithreading workarounds from https://github.com/imirkin/mesa/commits/locking
|
# Nouveau multithreading workarounds from https://github.com/imirkin/mesa/commits/locking
|
||||||
Patch61: N_01-WIP-nouveau-add-locking.patch
|
Patch61: N_01-WIP-nouveau-add-locking.patch
|
||||||
@ -103,6 +111,9 @@ BuildRequires: pkgconfig(libdrm) >= 2.4.66
|
|||||||
BuildRequires: pkgconfig(libdrm_amdgpu) >= 2.4.63
|
BuildRequires: pkgconfig(libdrm_amdgpu) >= 2.4.63
|
||||||
BuildRequires: pkgconfig(libdrm_nouveau) >= 2.4.66
|
BuildRequires: pkgconfig(libdrm_nouveau) >= 2.4.66
|
||||||
BuildRequires: pkgconfig(libdrm_radeon) >= 2.4.56
|
BuildRequires: pkgconfig(libdrm_radeon) >= 2.4.56
|
||||||
|
%if 0%{?libglvnd}
|
||||||
|
BuildRequires: pkgconfig(libglvnd) >= 0.1.0
|
||||||
|
%endif
|
||||||
BuildRequires: pkgconfig(libkms) >= 1.0.0
|
BuildRequires: pkgconfig(libkms) >= 1.0.0
|
||||||
BuildRequires: pkgconfig(libudev) > 151
|
BuildRequires: pkgconfig(libudev) > 151
|
||||||
BuildRequires: pkgconfig(libva)
|
BuildRequires: pkgconfig(libva)
|
||||||
@ -155,6 +166,10 @@ BuildRequires: libclc
|
|||||||
BuildRequires: llvm-clang-devel
|
BuildRequires: llvm-clang-devel
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
%if 0%{?libglvnd}
|
||||||
|
Requires: libglvnd0 >= 0.1.0
|
||||||
|
%endif
|
||||||
|
|
||||||
%description
|
%description
|
||||||
Mesa is a 3-D graphics library with an API which is very similar to
|
Mesa is a 3-D graphics library with an API which is very similar to
|
||||||
that of OpenGL.* To the extent that Mesa utilizes the OpenGL command
|
that of OpenGL.* To the extent that Mesa utilizes the OpenGL command
|
||||||
@ -211,6 +226,7 @@ just Mesa or The Mesa 3-D graphics library.
|
|||||||
# Kudos to Debian for the descriptions
|
# Kudos to Debian for the descriptions
|
||||||
Summary: Free implementation of the EGL API
|
Summary: Free implementation of the EGL API
|
||||||
Group: System/Libraries
|
Group: System/Libraries
|
||||||
|
Requires: libglvnd0 >= 0.1.0
|
||||||
|
|
||||||
%description -n Mesa-libEGL1
|
%description -n Mesa-libEGL1
|
||||||
This package contains the EGL native platform graphics interface
|
This package contains the EGL native platform graphics interface
|
||||||
@ -227,6 +243,7 @@ support.
|
|||||||
Summary: Development files for the EGL API
|
Summary: Development files for the EGL API
|
||||||
Group: Development/Libraries/C and C++
|
Group: Development/Libraries/C and C++
|
||||||
Requires: Mesa-libEGL1 = %{version}
|
Requires: Mesa-libEGL1 = %{version}
|
||||||
|
Requires: libglvnd-devel >= 0.1.0
|
||||||
# Other requires taken care of by pkgconfig already
|
# Other requires taken care of by pkgconfig already
|
||||||
|
|
||||||
%description -n Mesa-libEGL-devel
|
%description -n Mesa-libEGL-devel
|
||||||
@ -243,6 +260,7 @@ programs against the EGL library.
|
|||||||
Summary: The GL/GLX runtime of the Mesa 3D graphics library
|
Summary: The GL/GLX runtime of the Mesa 3D graphics library
|
||||||
Group: System/Libraries
|
Group: System/Libraries
|
||||||
Requires: Mesa = %{version}
|
Requires: Mesa = %{version}
|
||||||
|
Requires: libglvnd0 >= 0.1.0
|
||||||
|
|
||||||
%description -n Mesa-libGL1
|
%description -n Mesa-libGL1
|
||||||
Mesa is a software library for 3D computer graphics that provides a
|
Mesa is a software library for 3D computer graphics that provides a
|
||||||
@ -258,6 +276,7 @@ the X Window System.
|
|||||||
Summary: GL/GLX development files of the OpenGL API
|
Summary: GL/GLX development files of the OpenGL API
|
||||||
Group: Development/Libraries/C and C++
|
Group: Development/Libraries/C and C++
|
||||||
Requires: Mesa-libGL1 = %{version}
|
Requires: Mesa-libGL1 = %{version}
|
||||||
|
Requires: libglvnd-devel >= 0.1.0
|
||||||
|
|
||||||
%description -n Mesa-libGL-devel
|
%description -n Mesa-libGL-devel
|
||||||
Mesa is a software library for 3D computer graphics that provides a
|
Mesa is a software library for 3D computer graphics that provides a
|
||||||
@ -270,6 +289,7 @@ programs with Mesa.
|
|||||||
%package -n Mesa-libGLESv1_CM1
|
%package -n Mesa-libGLESv1_CM1
|
||||||
Summary: Free implementation of the OpenGL|ES 1.x Common Profile API
|
Summary: Free implementation of the OpenGL|ES 1.x Common Profile API
|
||||||
Group: System/Libraries
|
Group: System/Libraries
|
||||||
|
Requires: libglvnd0 >= 0.1.0
|
||||||
|
|
||||||
%description -n Mesa-libGLESv1_CM1
|
%description -n Mesa-libGLESv1_CM1
|
||||||
OpenGL|ES is a cross-platform API for full-function 2D and 3D
|
OpenGL|ES is a cross-platform API for full-function 2D and 3D
|
||||||
@ -283,6 +303,7 @@ OpenGL|ES 1.x provides an API for fixed-function hardware.
|
|||||||
Summary: Development files for the OpenGL ES 1.x API
|
Summary: Development files for the OpenGL ES 1.x API
|
||||||
Group: Development/Libraries/C and C++
|
Group: Development/Libraries/C and C++
|
||||||
Requires: Mesa-libGLESv1_CM1 = %{version}
|
Requires: Mesa-libGLESv1_CM1 = %{version}
|
||||||
|
Requires: libglvnd-devel >= 0.1.0
|
||||||
Requires: pkgconfig(egl)
|
Requires: pkgconfig(egl)
|
||||||
|
|
||||||
%description -n Mesa-libGLESv1_CM-devel
|
%description -n Mesa-libGLESv1_CM-devel
|
||||||
@ -299,6 +320,7 @@ using the OpenGL|ES 1.x APIs.
|
|||||||
%package -n Mesa-libGLESv2-2
|
%package -n Mesa-libGLESv2-2
|
||||||
Summary: Free implementation of the OpenGL|ES 2.x API
|
Summary: Free implementation of the OpenGL|ES 2.x API
|
||||||
Group: System/Libraries
|
Group: System/Libraries
|
||||||
|
Requires: libglvnd0 >= 0.1.0
|
||||||
|
|
||||||
%description -n Mesa-libGLESv2-2
|
%description -n Mesa-libGLESv2-2
|
||||||
OpenGL|ES is a cross-platform API for full-function 2D and 3D
|
OpenGL|ES is a cross-platform API for full-function 2D and 3D
|
||||||
@ -316,6 +338,7 @@ ES 3 entry points.
|
|||||||
Summary: Development files for the OpenGL ES 2.x API
|
Summary: Development files for the OpenGL ES 2.x API
|
||||||
Group: Development/Libraries/C and C++
|
Group: Development/Libraries/C and C++
|
||||||
Requires: Mesa-libGLESv2-2 = %{version}
|
Requires: Mesa-libGLESv2-2 = %{version}
|
||||||
|
Requires: libglvnd-devel >= 0.1.0
|
||||||
Requires: pkgconfig(egl)
|
Requires: pkgconfig(egl)
|
||||||
|
|
||||||
%description -n Mesa-libGLESv2-devel
|
%description -n Mesa-libGLESv2-devel
|
||||||
@ -333,7 +356,9 @@ applications using the OpenGL|ES 2.x APIs.
|
|||||||
%package -n Mesa-libGLESv3-devel
|
%package -n Mesa-libGLESv3-devel
|
||||||
Summary: Development files for the OpenGL ES 3.x API
|
Summary: Development files for the OpenGL ES 3.x API
|
||||||
Group: Development/Libraries/C and C++
|
Group: Development/Libraries/C and C++
|
||||||
|
%if 0%{?libglvnd} == 0
|
||||||
Requires: Mesa-libGLESv2-2 = %{version}
|
Requires: Mesa-libGLESv2-2 = %{version}
|
||||||
|
%endif
|
||||||
Requires: pkgconfig(egl)
|
Requires: pkgconfig(egl)
|
||||||
|
|
||||||
%description -n Mesa-libGLESv3-devel
|
%description -n Mesa-libGLESv3-devel
|
||||||
@ -606,6 +631,15 @@ rm -rf docs/README.{VMS,WIN32,OS2}
|
|||||||
%patch18 -p1
|
%patch18 -p1
|
||||||
%patch21 -p1
|
%patch21 -p1
|
||||||
|
|
||||||
|
%if 0%{?libglvnd}
|
||||||
|
%patch30 -p1
|
||||||
|
%patch31 -p1
|
||||||
|
%patch32 -p1
|
||||||
|
%patch33 -p1
|
||||||
|
%patch34 -p1
|
||||||
|
%patch35 -p1
|
||||||
|
%endif
|
||||||
|
|
||||||
%if %{use_broken_nouveau_locking_patches}
|
%if %{use_broken_nouveau_locking_patches}
|
||||||
%patch61 -p1
|
%patch61 -p1
|
||||||
%patch62 -p1
|
%patch62 -p1
|
||||||
@ -622,7 +656,11 @@ egl_platforms=x11,drm
|
|||||||
%endif
|
%endif
|
||||||
autoreconf -fvi
|
autoreconf -fvi
|
||||||
|
|
||||||
%configure --enable-gles1 \
|
%configure \
|
||||||
|
%if 0%{?libglvnd}
|
||||||
|
--enable-libglvnd \
|
||||||
|
%endif
|
||||||
|
--enable-gles1 \
|
||||||
--enable-gles2 \
|
--enable-gles2 \
|
||||||
--enable-dri \
|
--enable-dri \
|
||||||
--with-egl-platforms=$egl_platforms \
|
--with-egl-platforms=$egl_platforms \
|
||||||
@ -677,9 +715,16 @@ make %{?_smp_mflags}
|
|||||||
make DESTDIR=%{buildroot} install %{?_smp_mflags}
|
make DESTDIR=%{buildroot} install %{?_smp_mflags}
|
||||||
find %{buildroot} -type f -name "*.la" -delete -print
|
find %{buildroot} -type f -name "*.la" -delete -print
|
||||||
|
|
||||||
|
%if 0%{?libglvnd} == 0
|
||||||
# Make a symlink to libGL.so.1.2 for compatibility (bnc#809359, bnc#831306)
|
# Make a symlink to libGL.so.1.2 for compatibility (bnc#809359, bnc#831306)
|
||||||
test -f %{buildroot}%{_libdir}/libGL.so.1.2 || \
|
test -f %{buildroot}%{_libdir}/libGL.so.1.2 || \
|
||||||
ln -s `readlink %{buildroot}%{_libdir}/libGL.so.1` %{buildroot}%{_libdir}/libGL.so.1.2
|
ln -s `readlink %{buildroot}%{_libdir}/libGL.so.1` %{buildroot}%{_libdir}/libGL.so.1.2
|
||||||
|
%else
|
||||||
|
rm -f %{buildroot}%{_libdir}/libGLES*
|
||||||
|
# glvnd needs a default provider for indirect rendering where it cannot
|
||||||
|
# determine the vendor
|
||||||
|
ln -s %{_libdir}/libGLX_mesa.so.0 %{buildroot}%{_libdir}/libGLX_indirect.so.0
|
||||||
|
%endif
|
||||||
|
|
||||||
for dir in ../xc/doc/man/{GL/gl,GL/glx}; do
|
for dir in ../xc/doc/man/{GL/gl,GL/glx}; do
|
||||||
pushd $dir
|
pushd $dir
|
||||||
@ -703,6 +748,7 @@ done
|
|||||||
|
|
||||||
%postun -n Mesa-libGL1 -p /sbin/ldconfig
|
%postun -n Mesa-libGL1 -p /sbin/ldconfig
|
||||||
|
|
||||||
|
%if 0%{?libglvnd} == 0
|
||||||
%post -n Mesa-libGLESv1_CM1 -p /sbin/ldconfig
|
%post -n Mesa-libGLESv1_CM1 -p /sbin/ldconfig
|
||||||
|
|
||||||
%postun -n Mesa-libGLESv1_CM1 -p /sbin/ldconfig
|
%postun -n Mesa-libGLESv1_CM1 -p /sbin/ldconfig
|
||||||
@ -710,6 +756,7 @@ done
|
|||||||
%post -n Mesa-libGLESv2-2 -p /sbin/ldconfig
|
%post -n Mesa-libGLESv2-2 -p /sbin/ldconfig
|
||||||
|
|
||||||
%postun -n Mesa-libGLESv2-2 -p /sbin/ldconfig
|
%postun -n Mesa-libGLESv2-2 -p /sbin/ldconfig
|
||||||
|
%endif
|
||||||
|
|
||||||
%post -n libOSMesa8 -p /sbin/ldconfig
|
%post -n libOSMesa8 -p /sbin/ldconfig
|
||||||
|
|
||||||
@ -789,46 +836,70 @@ done
|
|||||||
|
|
||||||
%files -n Mesa-libEGL1
|
%files -n Mesa-libEGL1
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
|
%if 0%{?libglvnd}
|
||||||
|
%{_libdir}/libEGL_mesa.so*
|
||||||
|
%dir %{_datadir}/glvnd
|
||||||
|
%dir %{_datadir}/glvnd/egl_vendor.d
|
||||||
|
%{_datadir}/glvnd/egl_vendor.d/50_mesa.json
|
||||||
|
%else
|
||||||
%{_libdir}/libEGL.so.1*
|
%{_libdir}/libEGL.so.1*
|
||||||
|
%endif
|
||||||
|
|
||||||
%files -n Mesa-libEGL-devel
|
%files -n Mesa-libEGL-devel
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
%{_includedir}/EGL
|
%{_includedir}/EGL
|
||||||
%{_includedir}/KHR
|
%{_includedir}/KHR
|
||||||
|
%if !0%{?libglvnd}
|
||||||
%{_libdir}/libEGL.so
|
%{_libdir}/libEGL.so
|
||||||
|
%endif
|
||||||
%{_libdir}/pkgconfig/egl.pc
|
%{_libdir}/pkgconfig/egl.pc
|
||||||
|
|
||||||
%files -n Mesa-libGL1
|
%files -n Mesa-libGL1
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
|
%if 0%{?libglvnd}
|
||||||
|
%{_libdir}/libGLX_mesa.so*
|
||||||
|
%{_libdir}/libGLX_indirect.so*
|
||||||
|
%else
|
||||||
%{_libdir}/libGL.so.1*
|
%{_libdir}/libGL.so.1*
|
||||||
|
%endif
|
||||||
|
|
||||||
%files -n Mesa-libGL-devel
|
%files -n Mesa-libGL-devel
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
%dir %{_includedir}/GL
|
%dir %{_includedir}/GL
|
||||||
%{_includedir}/GL/*.h
|
%{_includedir}/GL/*.h
|
||||||
%exclude %{_includedir}/GL/osmesa.h
|
%exclude %{_includedir}/GL/osmesa.h
|
||||||
|
%if 0%{?libglvnd} == 0
|
||||||
%{_libdir}/libGL.so
|
%{_libdir}/libGL.so
|
||||||
|
%endif
|
||||||
%{_libdir}/pkgconfig/gl.pc
|
%{_libdir}/pkgconfig/gl.pc
|
||||||
%{_mandir}/man3/gl[A-Z]*
|
%{_mandir}/man3/gl[A-Z]*
|
||||||
|
|
||||||
%files -n Mesa-libGLESv1_CM1
|
%files -n Mesa-libGLESv1_CM1
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
|
%if 0%{?libglvnd} == 0
|
||||||
%{_libdir}/libGLESv1_CM.so.1*
|
%{_libdir}/libGLESv1_CM.so.1*
|
||||||
|
%endif
|
||||||
|
|
||||||
%files -n Mesa-libGLESv1_CM-devel
|
%files -n Mesa-libGLESv1_CM-devel
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
%{_includedir}/GLES
|
%{_includedir}/GLES
|
||||||
|
%if 0%{?libglvnd} == 0
|
||||||
%{_libdir}/libGLESv1_CM.so
|
%{_libdir}/libGLESv1_CM.so
|
||||||
|
%endif
|
||||||
%{_libdir}/pkgconfig/glesv1_cm.pc
|
%{_libdir}/pkgconfig/glesv1_cm.pc
|
||||||
|
|
||||||
%files -n Mesa-libGLESv2-2
|
%files -n Mesa-libGLESv2-2
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
|
%if 0%{?libglvnd} == 0
|
||||||
%{_libdir}/libGLESv2.so.2*
|
%{_libdir}/libGLESv2.so.2*
|
||||||
|
%endif
|
||||||
|
|
||||||
%files -n Mesa-libGLESv2-devel
|
%files -n Mesa-libGLESv2-devel
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
%{_includedir}/GLES2
|
%{_includedir}/GLES2
|
||||||
|
%if 0%{?libglvnd} == 0
|
||||||
%{_libdir}/libGLESv2.so
|
%{_libdir}/libGLESv2.so
|
||||||
|
%endif
|
||||||
%{_libdir}/pkgconfig/glesv2.pc
|
%{_libdir}/pkgconfig/glesv2.pc
|
||||||
|
|
||||||
%files -n Mesa-libGLESv3-devel
|
%files -n Mesa-libGLESv3-devel
|
||||||
|
3940
archlinux_0001-EGL-Implement-the-libglvnd-interface-for-EGL-v2.patch
Normal file
3940
archlinux_0001-EGL-Implement-the-libglvnd-interface-for-EGL-v2.patch
Normal file
File diff suppressed because it is too large
Load Diff
26
archlinux_0001-Fix-linkage-against-shared-glapi.patch
Normal file
26
archlinux_0001-Fix-linkage-against-shared-glapi.patch
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
From 1b5a187c3c31513ae39cd2a917a3234c2c5f87fc Mon Sep 17 00:00:00 2001
|
||||||
|
From: Adam Jackson <ajax@redhat.com>
|
||||||
|
Date: Wed, 12 Oct 2016 13:41:33 -0400
|
||||||
|
Subject: [PATCH] Fix linkage against shared glapi
|
||||||
|
|
||||||
|
Signed-off-by: Adam Jackson <ajax@redhat.com>
|
||||||
|
---
|
||||||
|
src/gallium/targets/osmesa/Makefile.am | 2 +-
|
||||||
|
1 files changed, 1 insertions(+), 1 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/gallium/targets/osmesa/Makefile.am b/src/gallium/targets/osmesa/Makefile.am
|
||||||
|
index 5d39486..04add87 100644
|
||||||
|
--- a/src/gallium/targets/osmesa/Makefile.am
|
||||||
|
+++ b/src/gallium/targets/osmesa/Makefile.am
|
||||||
|
@@ -63,7 +63,7 @@ lib@OSMESA_LIB@_la_LIBADD = \
|
||||||
|
$(top_builddir)/src/gallium/drivers/trace/libtrace.la \
|
||||||
|
$(top_builddir)/src/gallium/drivers/softpipe/libsoftpipe.la \
|
||||||
|
$(top_builddir)/src/gallium/state_trackers/osmesa/libosmesa.la \
|
||||||
|
- $(top_builddir)/src/mapi/glapi/libglapi.la \
|
||||||
|
+ $(top_builddir)/src/mapi/shared-glapi/libglapi.la \
|
||||||
|
$(SHARED_GLAPI_LIB) \
|
||||||
|
$(OSMESA_LIB_DEPS) \
|
||||||
|
$(CLOCK_LIB)
|
||||||
|
--
|
||||||
|
2.9.3
|
||||||
|
|
@ -0,0 +1,33 @@
|
|||||||
|
From 2d4094c2caad6cef2f5544b3966fcc37ceb32036 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kyle Brenneman <kbrenneman@nvidia.com>
|
||||||
|
Date: Thu, 5 Jan 2017 14:29:47 -0700
|
||||||
|
Subject: [PATCH 2/2] fixup! EGL: Implement the libglvnd interface for EGL (v2)
|
||||||
|
|
||||||
|
---
|
||||||
|
src/egl/generate/eglFunctionList.py | 6 ++++--
|
||||||
|
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/egl/generate/eglFunctionList.py b/src/egl/generate/eglFunctionList.py
|
||||||
|
index b19b5f7193..80cb83437c 100644
|
||||||
|
--- a/src/egl/generate/eglFunctionList.py
|
||||||
|
+++ b/src/egl/generate/eglFunctionList.py
|
||||||
|
@@ -53,12 +53,14 @@ method values:
|
||||||
|
Select the vendor that owns the current context.
|
||||||
|
"""
|
||||||
|
|
||||||
|
-def _eglFunc(name, method, static=False, public=False, inheader=None, prefix="", extension=None, retval=None):
|
||||||
|
+def _eglFunc(name, method, static=None, public=False, inheader=None, prefix="dispatch_", extension=None, retval=None):
|
||||||
|
"""
|
||||||
|
A convenience function to define an entry in the EGL function list.
|
||||||
|
"""
|
||||||
|
+ if static is None:
|
||||||
|
+ static = (not public and method != "custom")
|
||||||
|
if inheader is None:
|
||||||
|
- inheader = (not public)
|
||||||
|
+ inheader = (not static)
|
||||||
|
values = {
|
||||||
|
"method" : method,
|
||||||
|
"prefix" : prefix,
|
||||||
|
--
|
||||||
|
2.11.0
|
||||||
|
|
82
archlinux_glapi-Link-with-glapi-when-built-shared.patch
Normal file
82
archlinux_glapi-Link-with-glapi-when-built-shared.patch
Normal file
@ -0,0 +1,82 @@
|
|||||||
|
From 16875ea5b9170f2213fd486d763f27a9d6dfc1b5 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Nicolas Chauvet <kwizart@gmail.com>
|
||||||
|
Date: Tue, 25 Oct 2016 09:35:13 +0200
|
||||||
|
Subject: [PATCH 1/3] glapi: Link with glapi when built shared
|
||||||
|
|
||||||
|
This patch explicitly links to libglapi when built shared.
|
||||||
|
This was specially needed to avoid undefined non-weak-symbol as shown
|
||||||
|
with:
|
||||||
|
|
||||||
|
ldd -r /usr/lib64/dri/i915_dri.so
|
||||||
|
linux-vdso.so.1 (0x00007fff821f4000)
|
||||||
|
libdrm_intel.so.1 => /lib64/libdrm_intel.so.1 (0x00007f6adf2c7000)
|
||||||
|
libdrm_nouveau.so.2 => /lib64/libdrm_nouveau.so.2 (0x00007f6adf0be000)
|
||||||
|
libdrm_radeon.so.1 => /lib64/libdrm_radeon.so.1 (0x00007f6adeeb2000)
|
||||||
|
libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f6adec8b000)
|
||||||
|
libdrm.so.2 => /lib64/libdrm.so.2 (0x00007f6adea7c000)
|
||||||
|
libexpat.so.1 => /lib64/libexpat.so.1 (0x00007f6ade84f000)
|
||||||
|
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f6ade633000)
|
||||||
|
libdl.so.2 => /lib64/libdl.so.2 (0x00007f6ade42f000)
|
||||||
|
libm.so.6 => /lib64/libm.so.6 (0x00007f6ade125000)
|
||||||
|
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f6addf0e000)
|
||||||
|
libc.so.6 => /lib64/libc.so.6 (0x00007f6addb4c000)
|
||||||
|
/lib64/ld-linux-x86-64.so.2 (0x000056274e913000)
|
||||||
|
libpciaccess.so.0 => /lib64/libpciaccess.so.0 (0x00007f6add941000)
|
||||||
|
libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f6add6ce000)
|
||||||
|
undefined symbol: _glapi_get_dispatch_table_size (/usr/lib64/dri/i915_dri.so)
|
||||||
|
undefined symbol: _glapi_get_context (/usr/lib64/dri/i915_dri.so)
|
||||||
|
undefined symbol: _glapi_add_dispatch (/usr/lib64/dri/i915_dri.so)
|
||||||
|
undefined symbol: _glapi_check_multithread (/usr/lib64/dri/i915_dri.so)
|
||||||
|
undefined symbol: _glapi_tls_Context (/usr/lib64/dri/i915_dri.so)
|
||||||
|
undefined symbol: _glapi_set_context (/usr/lib64/dri/i915_dri.so)
|
||||||
|
undefined symbol: _glapi_set_dispatch (/usr/lib64/dri/i915_dri.so)
|
||||||
|
undefined symbol: _glapi_tls_Dispatch (/usr/lib64/dri/i915_dri.so)
|
||||||
|
|
||||||
|
v3: Add gallium counterpart for radeon cases
|
||||||
|
Reported-by: Jonathan Dieter <jdieter@lesbg.com>
|
||||||
|
|
||||||
|
v2: Add Bugzilla and Signed-off
|
||||||
|
|
||||||
|
Fixes: 0cbc90c57c ("mesa: dri: Add shared glapi to LIBADD on Android")
|
||||||
|
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=98428
|
||||||
|
Signed-off-by: Nicolas Chauvet <kwizart@gmail.com>
|
||||||
|
---
|
||||||
|
src/gallium/targets/dri/Makefile.am | 2 --
|
||||||
|
src/mesa/drivers/dri/Makefile.am | 3 ---
|
||||||
|
2 files changed, 5 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/gallium/targets/dri/Makefile.am b/src/gallium/targets/dri/Makefile.am
|
||||||
|
index bca747f..05f6c8c 100644
|
||||||
|
--- a/src/gallium/targets/dri/Makefile.am
|
||||||
|
+++ b/src/gallium/targets/dri/Makefile.am
|
||||||
|
@@ -1,10 +1,8 @@
|
||||||
|
include $(top_srcdir)/src/gallium/Automake.inc
|
||||||
|
|
||||||
|
-if HAVE_ANDROID
|
||||||
|
if HAVE_SHARED_GLAPI
|
||||||
|
SHARED_GLAPI_LIB = $(top_builddir)/src/mapi/shared-glapi/libglapi.la
|
||||||
|
endif
|
||||||
|
-endif
|
||||||
|
|
||||||
|
AM_CFLAGS = \
|
||||||
|
-I$(top_srcdir)/src/mapi \
|
||||||
|
diff --git a/src/mesa/drivers/dri/Makefile.am b/src/mesa/drivers/dri/Makefile.am
|
||||||
|
index 1c6dd08..8e68fc0 100644
|
||||||
|
--- a/src/mesa/drivers/dri/Makefile.am
|
||||||
|
+++ b/src/mesa/drivers/dri/Makefile.am
|
||||||
|
@@ -6,12 +6,9 @@ MEGADRIVERS_DEPS =
|
||||||
|
|
||||||
|
SUBDIRS+=common
|
||||||
|
|
||||||
|
-# On Android, we need to explicitly link to libglapi.so.
|
||||||
|
-if HAVE_ANDROID
|
||||||
|
if HAVE_SHARED_GLAPI
|
||||||
|
SHARED_GLAPI_LIB = $(top_builddir)/src/mapi/shared-glapi/libglapi.la
|
||||||
|
endif
|
||||||
|
-endif
|
||||||
|
|
||||||
|
if HAVE_I915_DRI
|
||||||
|
SUBDIRS += i915
|
||||||
|
--
|
||||||
|
2.7.4
|
||||||
|
|
12
archlinux_glvnd-fix-gl-dot-pc.patch
Normal file
12
archlinux_glvnd-fix-gl-dot-pc.patch
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
diff -up mesa-12.0.3/src/mesa/gl.pc.in.jx mesa-12.0.3/src/mesa/gl.pc.in
|
||||||
|
--- mesa-12.0.3/src/mesa/gl.pc.in.jx 2016-01-18 02:39:26.000000000 -0500
|
||||||
|
+++ mesa-12.0.3/src/mesa/gl.pc.in 2016-10-25 13:06:44.013159358 -0400
|
||||||
|
@@ -7,7 +7,7 @@ Name: gl
|
||||||
|
Description: Mesa OpenGL library
|
||||||
|
Requires.private: @GL_PC_REQ_PRIV@
|
||||||
|
Version: @PACKAGE_VERSION@
|
||||||
|
-Libs: -L${libdir} -l@GL_LIB@
|
||||||
|
+Libs: -L${libdir} -lGL
|
||||||
|
Libs.private: @GL_PC_LIB_PRIV@
|
||||||
|
Cflags: -I${includedir} @GL_PC_CFLAGS@
|
||||||
|
glx_tls: @GLX_TLS@
|
@ -0,0 +1,88 @@
|
|||||||
|
From efa4f2ebc1e788c3f1cfcf3842058cf838171653 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Hans de Goede <hdegoede@redhat.com>
|
||||||
|
Date: Mon, 20 Mar 2017 08:41:26 +0100
|
||||||
|
Subject: [PATCH] glxglvnddispatch: Add missing dispatch for GetDriverConfig
|
||||||
|
|
||||||
|
Together with some fixes to xdriinfo this fixes xdriinfo not working
|
||||||
|
with glvnd.
|
||||||
|
|
||||||
|
Since apps (xdriinfo) expect GetDriverConfig to work without going to
|
||||||
|
need through the dance to setup a glxcontext (which is a reasonable
|
||||||
|
expectation IMHO), the dispatch for this ends up significantly different
|
||||||
|
then any other dispatch function.
|
||||||
|
|
||||||
|
This patch gets the job done, but I'm not really happy with how this
|
||||||
|
patch turned out, suggestions for a better fix are welcome.
|
||||||
|
|
||||||
|
Cc: Kyle Brenneman <kbrenneman@nvidia.com>
|
||||||
|
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
||||||
|
---
|
||||||
|
src/glx/g_glxglvnddispatchfuncs.c | 18 ++++++++++++++++++
|
||||||
|
src/glx/g_glxglvnddispatchindices.h | 1 +
|
||||||
|
2 files changed, 19 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/src/glx/g_glxglvnddispatchfuncs.c b/src/glx/g_glxglvnddispatchfuncs.c
|
||||||
|
index b5e3398..040cdf8 100644
|
||||||
|
--- a/src/glx/g_glxglvnddispatchfuncs.c
|
||||||
|
+++ b/src/glx/g_glxglvnddispatchfuncs.c
|
||||||
|
@@ -4,6 +4,7 @@
|
||||||
|
*/
|
||||||
|
#include <stdlib.h>
|
||||||
|
|
||||||
|
+#include "glxclient.h"
|
||||||
|
#include "glxglvnd.h"
|
||||||
|
#include "glxglvnddispatchfuncs.h"
|
||||||
|
#include "g_glxglvnddispatchindices.h"
|
||||||
|
@@ -50,6 +51,7 @@ const char * const __glXDispatchTableStrings[DI_LAST_INDEX] = {
|
||||||
|
__ATTRIB(GetCurrentDisplayEXT),
|
||||||
|
// glXGetCurrentDrawable implemented by libglvnd
|
||||||
|
// glXGetCurrentReadDrawable implemented by libglvnd
|
||||||
|
+ __ATTRIB(GetDriverConfig),
|
||||||
|
// glXGetFBConfigAttrib implemented by libglvnd
|
||||||
|
__ATTRIB(GetFBConfigAttribSGIX),
|
||||||
|
__ATTRIB(GetFBConfigFromVisualSGIX),
|
||||||
|
@@ -334,6 +336,21 @@ static Display *dispatch_GetCurrentDisplayEXT(void)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
+static const char *dispatch_GetDriverConfig(const char *driverName)
|
||||||
|
+{
|
||||||
|
+ /*
|
||||||
|
+ * The options are constant for a given driverName, so we do not need
|
||||||
|
+ * a context (and apps expect to be able to call this without one).
|
||||||
|
+ */
|
||||||
|
+#if defined(GLX_DIRECT_RENDERING) && !defined(GLX_USE_APPLEGL)
|
||||||
|
+ return glXGetDriverConfig(driverName);
|
||||||
|
+#else
|
||||||
|
+ return NULL;
|
||||||
|
+#endif
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+
|
||||||
|
static int dispatch_GetFBConfigAttribSGIX(Display *dpy, GLXFBConfigSGIX config,
|
||||||
|
int attribute, int *value_return)
|
||||||
|
{
|
||||||
|
@@ -939,6 +956,7 @@ const void * const __glXDispatchFunctions[DI_LAST_INDEX + 1] = {
|
||||||
|
__ATTRIB(DestroyGLXPbufferSGIX),
|
||||||
|
__ATTRIB(GetContextIDEXT),
|
||||||
|
__ATTRIB(GetCurrentDisplayEXT),
|
||||||
|
+ __ATTRIB(GetDriverConfig),
|
||||||
|
__ATTRIB(GetFBConfigAttribSGIX),
|
||||||
|
__ATTRIB(GetFBConfigFromVisualSGIX),
|
||||||
|
__ATTRIB(GetMscRateOML),
|
||||||
|
diff --git a/src/glx/g_glxglvnddispatchindices.h b/src/glx/g_glxglvnddispatchindices.h
|
||||||
|
index 05a2c8c..3ba50a7 100644
|
||||||
|
--- a/src/glx/g_glxglvnddispatchindices.h
|
||||||
|
+++ b/src/glx/g_glxglvnddispatchindices.h
|
||||||
|
@@ -39,6 +39,7 @@ typedef enum __GLXdispatchIndex {
|
||||||
|
DI_GetCurrentDisplayEXT,
|
||||||
|
// GetCurrentDrawable implemented by libglvnd
|
||||||
|
// GetCurrentReadDrawable implemented by libglvnd
|
||||||
|
+ DI_GetDriverConfig,
|
||||||
|
// GetFBConfigAttrib implemented by libglvnd
|
||||||
|
DI_GetFBConfigAttribSGIX,
|
||||||
|
DI_GetFBConfigFromVisualSGIX,
|
||||||
|
--
|
||||||
|
2.9.3
|
||||||
|
|
Loading…
Reference in New Issue
Block a user