Sync from SUSE:ALP:Source:Standard:1.0 libglvnd revision 445e7e0d3c2084534c3404638c81fbd4

This commit is contained in:
Adrian Schröter 2024-02-01 17:00:32 +01:00
commit 34e840a7bb
7 changed files with 633 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

3
baselibs.conf Normal file
View File

@ -0,0 +1,3 @@
libglvnd
obsoletes "libglvnd0-<targettype> <= <version>"
libglvnd-devel

14
disable-glx-tests.patch Normal file
View File

@ -0,0 +1,14 @@
Index: libglvnd-1.3.2/tests/Makefile.am
===================================================================
--- libglvnd-1.3.2.orig/tests/Makefile.am
+++ libglvnd-1.3.2/tests/Makefile.am
@@ -100,7 +100,8 @@ TESTS_GLX += testglxqueryversion.sh
if ENABLE_GLX
-TESTS += $(TESTS_GLX)
+# need a running X server
+# TESTS += $(TESTS_GLX)
check_PROGRAMS += testglxcreatecontext
testglxcreatecontext_CFLAGS = $(CFLAGS_COMMON) $(X11_CFLAGS)

BIN
libglvnd-1.7.0.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

460
libglvnd.changes Normal file
View File

@ -0,0 +1,460 @@
-------------------------------------------------------------------
Wed Oct 11 15:12:15 UTC 2023 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to 1.7.0:
* meson.build: error out on unsupported OSes
* Update bin/symbols-check.py from mesa/mesa@9d42e31b
* EGL/libeglcurrent: fix crash on library unload
* HGL: add Haiku libGL.so implementation based on EGL
* symbols-check: Add Haiku platform symbols
* tests/egl: Fix LIBRARY_PATH on Haiku
-------------------------------------------------------------------
Wed Dec 7 16:32:02 UTC 2022 - Dirk Müller <dmueller@suse.com>
- update to 1.6.0:
* Read gl.symbols when generating stubs for libGL.so
* Update GL headers and XML files
* Add support for loongarch64
* GLX: Fix assembly stubs for x32
* Fix pthreads lookup on FreeBSD
-------------------------------------------------------------------
Sat Oct 1 11:15:04 UTC 2022 - Dirk Müller <dmueller@suse.com>
- update to 1.5.0:
* Add BTI landing pads for aarch64
* Set current thread state to NULL in teardown
* Moving setspecific to before DestroyThreadState
* Fix a memory leak in libGLdispatch
* Use assembly stubs on armv6
- drop libglvnd-add-bti.patch (upstream)
-------------------------------------------------------------------
Thu Jul 14 12:09:50 UTC 2022 - Stefan Dirsch <sndirsch@suse.com>
- let libglvnd require Mesa-dri so GL drivers are available on
Wayland-only desktop installations (boo#1201474)
-------------------------------------------------------------------
Thu Mar 3 11:29:34 UTC 2022 - Stefan Dirsch <sndirsch@suse.com>
- provide/obsolete Mesa-libGLESv1_CM1 and Mesa-libGLESv2-2 packages
(bsc#1196576)
-------------------------------------------------------------------
Thu Feb 24 15:23:24 UTC 2022 - Guillaume GARDET <guillaume.gardet@opensuse.org>
- Update libglvnd-add-bti.patch from latest upstream submission
-------------------------------------------------------------------
Fri Jan 21 09:05:39 UTC 2022 - Guillaume GARDET <guillaume.gardet@opensuse.org>
- Re-enable asm on aarch64
- Add patch to fix run with BTI enabled on aarch64:
* libglvnd-add-bti.patch - boo#1188928
-------------------------------------------------------------------
Tue Jan 4 22:41:36 UTC 2022 - Dirk Müller <dmueller@suse.com>
- update to 1.4.0:
* tests cleanups
* Update bin/symbols-check.py from mesa/mesa@6f854145
* Remove extra paragraph from license text.
* Add one more missing dep_x11_headers
* Update uthash to v2.3.0
* EGL: Add support for eglQueryDisplayAttribKHR and NV.
-------------------------------------------------------------------
Wed Nov 17 16:37:27 UTC 2021 - Guillaume GARDET <guillaume.gardet@opensuse.org>
- Disable asm on aarch64 Tumbleweed due to issue with BTI - boo#1188928
-------------------------------------------------------------------
Wed Oct 20 14:22:54 UTC 2021 - Stefan Dirsch <sndirsch@suse.com>
- libglvnd.rpmlintrc
* workaround for future buildcheck (boo#1191763)
-------------------------------------------------------------------
Mon Sep 27 13:40:47 UTC 2021 - Stefan Dirsch <sndirsch@suse.com>
- covers jira#SLE/SLE-18743
-------------------------------------------------------------------
Fri Jul 23 11:32:17 UTC 2021 - Michael Pujos <pujos.michael@gmail.com>
- update to 1.3.3, fixes boo#1188640
-------------------------------------------------------------------
Mon Aug 31 17:32:50 UTC 2020 - Stefan Dirsch <sndirsch@suse.com>
- version 1.3.2 needed for jira#SLE/SLE-12880, jira#SLE/SLE-12882
-------------------------------------------------------------------
Mon Aug 17 13:59:23 UTC 2020 - Dirk Mueller <dmueller@suse.com>
- update to 1.3.2:
* Update GL/gl.h to match Mesa.
* GLdispatch: Improve the x86 tsd stubs performance.
* GLdispatch: Define dynamic dispatch stubs at compile time.
* GLdispatch: Change entry_generate_default_code to take an index.
* GLdispatch: Use all 4096 dynamic dispatch stubs.
* Remove -Werror from default CFLAGS
- run tests
- add disable-glx-tests.patch: disable tests that require X
- remove 0001-include-install-GL-headers-when-GL-is-enabled.patch
0002-Add-a-configure-option-to-disable-glesv1-or-glesv2.patch
0003-egl-Sync-with-Khronos.patch - upstream
-------------------------------------------------------------------
Sun Nov 24 12:50:20 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- removed n_0001-GL-Bump-GL-version-to-9-2.patch, which is no
longer needed with xorg-server 1.20.6
-------------------------------------------------------------------
Thu Nov 7 11:45:05 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- This release is needed for latest Mesa update in order to
support latest GPUs including Intel (jsc#SLE-7962, jsc#SLE-8024,
jsc#SLE-8022, jsc#SLE-10182)
-------------------------------------------------------------------
Fri Oct 25 19:13:21 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- 0001-include-install-GL-headers-when-GL-is-enabled.patch
* A typo made it depend on EGL instead.
- 0002-Add-a-configure-option-to-disable-glesv1-or-glesv2.patch
* Because mesa can be built without glesv1 so it breaks
autodetection. Fixes: https://bugs.archlinux.org/task/64032
('mesa-demos doesn't build, unable to find GLES/gl.h')
- 0003-egl-Sync-with-Khronos.patch
* Reserve enums 0x34A0..0x34AF for ANGLE project. (#93)
Closes: https://gitlab.freedesktop.org/glvnd/libglvnd/issues/193
-------------------------------------------------------------------
Mon Oct 7 21:32:25 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- move gl, egl, glesv1_cm and glesv2 pkgconfig files to doc
directory, so these can be picked up by Mesa build; no longer
require Mesa devel subpackages ...
-------------------------------------------------------------------
Mon Oct 7 16:12:05 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- reverting inclusion of GL, EGL, GLES, GLES2, GLES3 headers;
no longer let libglvnd-devel package provide and obsolete
corresponding Mesa gl, egl, gles* devel subpackages; headers
just aren't compatible; instead require them ...
- supersedes patches:
* n_0001-eglplatform-fix-mesa-specific-defines.patch
* u_add-gl3ext.h
-------------------------------------------------------------------
Sun Oct 6 10:51:27 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- let libglvnd-devel also provide/obsolete Mesa-libGLESv3-devel
-------------------------------------------------------------------
Fri Sep 27 11:24:45 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- let libglvnd-devel provide/obsolete some of previous Mesa devel
packages:
* Mesa-libGL-devel
* Mesa-libEGL-devel
* Mesa-libGLESv1_CM-devel
* Mesa-libGLESv2-devel
* Mesa-KHR-devel
- u_add-gl3ext.h
* adds missing include/GLES/gl3ext.h
-------------------------------------------------------------------
Thu Sep 26 07:01:41 UTC 2019 - Tobias Klausmann <tobias.klausmann@freenet.de>
- Update to version 1.2.0:
* Changes:
+ Libglvnd now includes and installs the header files for OpenGL, GLES, EGL,
and GLX.
+ Added pkg-config files for each library.
+ The X11 libraries are now an optional dependency if you're not building
GLX.
- n_0001-GL-Bump-GL-version-to-9-2.patch
* with a version of 1.2 the XServer build fails; set the version accordingly to
allow XServer builds again.
- n_0001-eglplatform-fix-mesa-specific-defines.patch
* the XServer fails to build; add the mesa specific defines to eglplatform, to
let it build again.
-------------------------------------------------------------------
Tue Mar 19 15:30:52 UTC 2019 - Stefan Dirsch <sndirsch@suse.com>
- Update to release 1.1.1
* Fixed a potential race condition with entrypoint patching
* Fixed the TSD dispatch stubs for PPC64LE
* Fixed a segfault when generating GLX dispatch stubs for AARCH64
-------------------------------------------------------------------
Mon Aug 27 12:30:13 UTC 2018 - sndirsch@suse.com
- Update to release 1.1.0
* Changes
+ Update the OpenGL XML and header files.
+ EGL: Remove a few unused functions in egldispatchstubs.c.
+ GLdispatch: Add a version script for the TSD build.
+ Some fixes for "make dist"
+ GLdispatch: Use --version-script instead -export-symbols.
+ Merge branch 'freebsd-fixes'
+ Add a (void*) cast for the last parameter when calling mincore.
+ Use sh instead of bash for the test scripts.
+ configure: Recognize both "x86_64" and "amd64" for host_cpu.
+ configure: Check if linking against libdl is necessary.
+ GL: Expand glapi_gen_libglglxstubs in the makefile.
+ Move the glapi_gen_libglglxstubs function into the GL makefile.
+ vnd-glapi: Change glapi_gen_mapi to a makefile variable.
+ Move the glapi_gen_mapi function into the vnd-glapi makefile.
+ generate: Remove glapi_gen_libopengl_exports.
+ GL: Don't generate g_glapi_mapi_gl_tmp.h
+ Merge pull request #150 from aaronp24/work-around-xorgproto-api-break
+ Merge pull request #153 from RAOF/fix-egl-platform-detection-crash
+ Handle dlsym succeeding with info.dli_sname == NULL.
+ Merge pull request #152 from kbrenneman/fix-eglMakeCurrent-bad-display
+ Always return an error from eglMakeCurrent if the EGLDispaly is invalid
+ GLX: Work around 'X_GLXCreateContextAtrribsARB' typo fix API break
+ Merge pull request #148 from kbrenneman/bump-library-versions
+ Bump the version numbers in the library filenames.
+ Merge pull request #143 from kbrenneman/gldispatch-fix-execmem
+ GLdispatch: Fix the allocation size for the dynamic stubs.
+ GLdispatch: Remove obsolete #ifdefs from u_execmem.c.
+ Merge pull request #140 from kbrenneman/add-GLX_EXT_no_config_context
+ tests: Only use glXCreateContext in testglxmakecurrent.
+ tests: Add a test for creating GLX contexts.
+ tests/GLX_dummy: Add a vendor-provided create context function
+ tests: Add a dummy attribute for glXQueryContext.
+ tests: Add support for GLX_EXT_no_context_config to GLX_dummy
+ tests: Remove the vendor dispatch stub for glXCreateContextAttribsARB.
+ Add support for GLX_EXT_no_config_context.
-------------------------------------------------------------------
Thu Apr 19 13:24:28 UTC 2018 - sndirsch@suse.com
- update to release 1.0.0
* Now that both the EGL and GLX interfaces are defined and stable,
set the package version to 1.0.0.
* Changes
+ GLX: Fix an error in handling GLX dispatch stubs.
+ EGL: Fix handling a malloc failure in eglQueryString.
+ GLdispatch: Clean up the assembly dispatch code.
+ GLdispatch aarch64: Align the dispatch stubs to a 64K page size.
+ Fix typo in _LIBRARY_FEATURE_NAMES.
+ Merge pull request #131 from michalsrb/fix-missing-gles-symbols
+ Merge branch 'fix-aarch64-page-size'
+ Convert lq/stq instructions
+ Merge pull request #125 from kbrenneman/ppc64le-convert-lq-stq
+ Don't #define USE_ASM (defined(USE_X86_ASM) || ... )
+ Remove -Wno-misleading-indentation
+ Remove the cJSON README and tests
+ Update cJSON to version 1.5.9
+ Merge pull request #135 from aaronp24/remove-misleading-indentation
+ Fix memory leak in LoadVendorsFromConfigDir
+ Cleanup winsys dispatch index list on EGL mapping teardown
+ Merge pull request #137 from polarina/memleak
+ Set package version to 1.0.0.
- supersedes U_Fix-typo-in-LIBRARY_FEATURE_NAMES.patch
-------------------------------------------------------------------
Wed Jan 3 20:48:01 UTC 2018 - tchvatal@suse.com
- Make sure to use only python3 for the build and do not rely
on env calls for python
-------------------------------------------------------------------
Mon Aug 14 13:35:51 UTC 2017 - msrb@suse.com
- U_Fix-typo-in-LIBRARY_FEATURE_NAMES.patch
* Fix typo that caused gles 3.1 and 3.2 symbols to be missing in
the generated libraries. (bnc#1052776)
-------------------------------------------------------------------
Wed Jun 21 14:48:46 UTC 2017 - zaitor@opensuse.org
- Update to version 0.1.2~20170620~d850cdd:
* EGL: detect platform gbm vendor capability.
* EGL: add platform gbm detection in eglGetDisplay.
* EGL: alias "drm" to gbm when using EGL_PLATFORM.
* EGL: honour eglGetPlatformDisplay's attrib_list.
* PPC64LE: Fix the cache clear instructions (boo#1045185).
* configure: Remove AC_PROG_CXX.
* EGL: Allow vendor libraries to identify platforms for
eglGetDisplay.
* GL: Use a table to look up core GLX functions.
-------------------------------------------------------------------
Thu Jun 1 11:37:20 UTC 2017 - zaitor@opensuse.org
- Update to version 0.1.2~20170427~6bcecd8:
* Print out $host_cpu when undetected, for easier debugging.
* Fix compile errors.
* armv7: make sure asm is compiled in unified syntax mode.
* Treat armv7hl as armv7l.
* tests: Expand the unit tests for libGLdispatch.
* GLdispatch: Minor cleanup of the x86-64 TLS stubs.
* GLdispatch: Add support for x32.
* Shorten the generated x86-64 TLS stubs.
* GLX: Fix GLX entrypoint generation for x32.
* tests: Add support for x32.
* GLdispatch: Remove the ".syntax divided" directive for ARMv7.
* Update the README file.
* GLdispatch: Fix TEXTREL in the ARMv7 TSD stubs.
* GLdispatch: Improve the documentation in entry_arm7_tsd.c.
* Makefile and structural changes for ppc64le support.
* GLdispatch: Implement the TSD dispatch stubs for PPC64LE.
* GLdispatch: Implement the TLS dispatch stubs for PPC64LE.
* GLX: Implement GLX dispatch stubs for PPC64LE.
* tests: Fill in the ASM code in the template in patch_ppc64le().
* GLX: Add cache-flushing sequence to the generated GLX stubs.
* GLdispatch: Rename entry_x86_64_common.c to entry_simple_asm.c.
-------------------------------------------------------------------
Thu Jun 1 11:15:20 UTC 2017 - alarrosa@suse.com
- Obsolete libglvnd0 <= %version-%release instead of only older
versions in order to fix conflicts on TW.
-------------------------------------------------------------------
Sat Apr 29 20:59:17 UTC 2017 - jengelh@inai.de
- The package misuses an SLPP package name (libglvnd0) while not
being SLPP — there is not even a libglvnd.so.0. Since
implementing SLPP does not make much sense either (these are all
just compat wrappers), switch to libglvnd.
- Avoid doubleshipping of README.
-------------------------------------------------------------------
Fri Apr 7 11:09:23 UTC 2017 - jengelh@inai.de
- Replace old $RPM_ shell vars by macros
- Converge on one style of using macros (drop curlies)
- RPM group correction
-------------------------------------------------------------------
Wed Mar 29 08:56:19 UTC 2017 - sndirsch@suse.com
- baselibs.conf: added -devel package
-------------------------------------------------------------------
Tue Mar 28 14:34:53 UTC 2017 - sndirsch@suse.com
- fixed/improved summary/description of libglvnd-devel package
-------------------------------------------------------------------
Mon Mar 27 14:40:29 UTC 2017 - sndirsch@suse.com
- removed unneeded rpmlintrc
-------------------------------------------------------------------
Fri Jan 20 13:15:07 UTC 2017 - zaitor@opensuse.org
- Update to version 0.1.1~20161222~dc16f8c:
* Update the README file.
* util: Add a local implementation of vsprintf(3).
* tests: Fix testpatchentrypoints.
* util: Add functions for splitting a string into tokens.
* Checked in the EGL headers.
* Checked in a copy of the cJSON library.
* EGL: Initial implementation of libEGL.
* EGL: Implement EGL_KHR_debug.
* GLdispatch: Remove an incorrect assert.
* util: Add trylock functions to glnvd_pthread.
* GLX: Fix a deadlock in teardown
* EGL: Rework the current rendering API.
* EGL: Fix a crash in __eglGetVendorFromDevice.
* EGL: Improve eglGetDisplay platform guessing.
* EGL: Check for some client extensions when loading the vendors.
* EGL: Check the version number in the JSON files.
* EGL: Trim the dispatch stub list.
* Change the package version to 0.1.999.
* GLX: Keep track of the displays passed to glXMakeCurrent.
* EGL: Fix a few errors in EGL_KHR_debug.
* EGL: Change __EGLapiImports to use (void *) for function
pointers.
* EGL: Add -Wno-misleading-indentation for cJSON.
* utils: Add cJSON.h to noinst_HEADERS.
* EGL: Change the vendor config search paths.
* EGL: Fix a couple of typos.
* Increment the package version to 0.2.
* Don't use 'xrange' because Python 3 doesn't have it.
* EGL: Fix an uninitialized variable.
* Factor out some common extension string functions.
* tests: Some minor cleanup
* tests: Rename GLX_dummy directory.
* tests: Move the entrypoint patching code into a helper library.
* tests: Add a more extensive test for entrypoint patching.
* GLX: Add an environment variable to specify a vendor for a
single screen.
* tests: Rewrite testglxgetprocaddress.
* tests: Add a test for generated GLX entrypoints.
* Change the assembly templates for ARMv7 to use uint16_t.
* Fix a crash in process termination when EGL and GLX are both
loaded.
* chmod -x files that aren't scripts
* GLdispatch: Don't call into the vendor from
__glDispatchForceUnpatch.
* EGL: Don't call into the vendor library from __eglFini.
* EGL: Better wayland detection in eglGetDisplay
* EGL: Add display detection for X11.
* EGL: Fix an unitialized variable in IsX11Display.
* tests: Skip testglxqueryversion if the server doesn't support
GLX.
* EGL: Fix the python command line.
* tests: Remove init_test_env.sh and fini_test_env.sh.
* tests: Add a basic test for eglGetPlatformDisplay.
* tests: Add a test for eglGetProcAddress.
* tests: Add a test for EGL device functions.
* tests: Add a test for eglMakeCurrent.
* tests: Add a test for eglGetError.
* tests: Add a test for EGL_KHR_debug.
* Add support for aarch64.
* GLdispatch: Fix the x86 TLS stubs.
* GLdispatch: Fix TEXTREL in the x86 TSD stubs.
* GLdispatch: Remove public_string_pool.
* GLdispatch: Remove _glapi_init_table_from_callback.
* GLdispatch: Remove the __GLdispatchProcEntry list.
* tests: Clean up tests makefile.
* Add configure options for the EGL, GLX, and GLES libraries.
* configure: Change the description for --disable-gles.
-------------------------------------------------------------------
Fri Jan 20 12:35:16 UTC 2017 - zaitor@opensuse.org
- Update to version 0.1.1:
* GLX: Some additional cleanup for the GLX dispatch table.
* Remove uneeded xorg-server dependency
* tests: Add more GLX functions to GLX_dummy.
* tests: Clean up the function arrays in GLX_dummy.
* tests: Implement glXCreateContextAttribsARB in GLX_dummy.
* tests: Expand the MakeCurrent tests to the GLXFBConfig-based
functions.
* tests: Merge the dummy and patchentry libraries.
* GLX: Fix a couple of errors.
* GLdispatch: Don't unpatch entrypoints in
__glDispatchLoseCurrent.
- Add _service and use it to update to current relase.
- Replace autoreconf for autogen.sh call ref info in README.
-------------------------------------------------------------------
Tue Jul 12 11:56:23 UTC 2016 - sndirsch@suse.com
- added Recommends to Mesa-libGL1/Mesa-libGL-devel
-------------------------------------------------------------------
Fri Jun 3 09:20:28 UTC 2016 - sndirsch@suse.com
- fixed build on 32bit with SUSE < 1330
-------------------------------------------------------------------
Thu Jun 2 15:43:46 UTC 2016 - sndirsch@suse.com
- created libglvnd package

1
libglvnd.rpmlintrc Normal file
View File

@ -0,0 +1 @@
addFilter(".*shlib-policy-name-error SONAME.*")

129
libglvnd.spec Normal file
View File

@ -0,0 +1,129 @@
#
# spec file for package libglvnd
#
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: libglvnd
Version: 1.7.0
Release: 0
Summary: The GL Vendor-Neutral Dispatch library
License: MIT
Group: Development/Libraries/C and C++
URL: https://github.com/NVIDIA/libglvnd
Source: %{url}/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
Source1: baselibs.conf
Source2: libglvnd.rpmlintrc
Patch1: disable-glx-tests.patch
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: libtool
BuildRequires: pkgconfig
BuildRequires: python3-base
BuildRequires: python3-xml
BuildRequires: pkgconfig(glproto)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xext)
Provides: libglvnd0 = %{version}-%{release}
Obsoletes: libglvnd0 <= %{version}-%{release}
Provides: Mesa-libGLESv1_CM1
Obsoletes: Mesa-libGLESv1_CM1
Provides: Mesa-libGLESv2-2
Obsoletes: Mesa-libGLESv2-2
Requires: Mesa-dri
%description
Vendor-neutral dispatch layer for arbitrating OpenGL API calls between
multiple vendors on a per-screen basis, as described by Andy Ritger's
OpenGL ABI proposal.
%package devel
Summary: Development files for libglvnd
Group: Development/Libraries/C and C++
Requires: %{name} = %{version}
%description devel
Vendor-neutral dispatch layer for arbitrating OpenGL API calls between
multiple vendors on a per-screen basis, as described by Andy Ritger's
OpenGL ABI proposal. This package contains the required files for
development.
%prep
%autosetup -p1
# fix env shebang to call py3 directly
sed -i -e "1s|#!.*|#!%{_bindir}/python3|" src/generate/*.py
%build
./autogen.sh
%configure \
%if 0%{?suse_version} < 1330
--libdir=%{_prefix}/X11R6/%{_lib} \
%endif
--disable-static \
--disable-headers \
--disable-silent-rules
%make_build
%install
%make_install
find %{buildroot} -type f -name "*.la" -delete -print
>%{_builddir}/%{name}-%{version}/filelist.rpm
%if 0%{?suse_version} < 1330
mkdir -p %{buildroot}/%{_libdir}/pkgconfig
mv %{buildroot}%{_prefix}/X11R6/%{_lib}/pkgconfig/*.pc %{buildroot}/%{_libdir}/pkgconfig
if [ "%{_lib}" == "lib64" ]; then
mkdir -p %{buildroot}/%{_sysconfdir}/ld.so.conf.d
cat > %{buildroot}/%{_sysconfdir}/ld.so.conf.d/%{name}.conf << EOF
%{_prefix}/X11R6/%{_lib}
%{_prefix}/X11R6/lib
EOF
echo "%config %{_sysconfdir}/ld.so.conf.d/%{name}.conf" >%{_builddir}/%{name}-%{version}/filelist.rpm
fi
%endif
mkdir -p %{buildroot}%{_docdir}/%{name}/pkgconfig
mv %{buildroot}/%{_libdir}/pkgconfig/{gl,egl,glesv1_cm,glesv2}.pc \
%{buildroot}%{_docdir}/%{name}/pkgconfig
%check
%make_build check
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files -f filelist.rpm
%doc README.md
%{_docdir}/%{name}/pkgconfig
%if 0%{?suse_version} < 1330
%dir %{_prefix}/X11R6
%dir %{_prefix}/X11R6/%{_lib}
%{_prefix}/X11R6/%{_lib}/lib*.so.*
%else
%{_libdir}/lib*.so.*
%endif
%files devel
%if 0%{?suse_version} < 1330
%dir %{_prefix}/X11R6
%dir %{_prefix}/X11R6/%{_lib}
%{_prefix}/X11R6/%{_lib}/lib*.so
%else
%{_libdir}/lib*.so
%endif
%{_libdir}/pkgconfig/*.pc
%{_includedir}/glvnd/
%changelog