libglvnd/libglvnd.spec

318 lines
9.5 KiB
RPMSpec
Raw Normal View History

%global commit0 dc16f8c337703ad141f83583a4004fcf42e07766
2016-02-17 10:53:15 +00:00
%global shortcommit0 %(c=%{commit0}; echo ${c:0:7})
2015-09-02 16:42:54 +00:00
2015-02-06 17:54:37 +00:00
Name: libglvnd
2016-09-15 09:57:26 +00:00
Version: 0.2.999
Release: 7%{?commit0:.git%{shortcommit0}}%{?dist}
# Provide an upgrade path from the negativo17.org pkgs which have Epoch 1
Epoch: 1
2015-02-06 17:54:37 +00:00
Summary: The GL Vendor-Neutral Dispatch library
2016-10-05 12:46:05 +00:00
License: MIT
2015-02-06 17:54:37 +00:00
URL: https://github.com/NVIDIA/libglvnd
2016-02-17 10:53:15 +00:00
Source0: https://github.com/NVIDIA/%{name}/archive/%{commit0}.tar.gz#/%{name}-%{shortcommit0}.tar.gz
# https://github.com/NVIDIA/libglvnd/pull/100
Patch1: 0001-OpenGL-Statically-export-a-few-more-things.patch
# https://github.com/NVIDIA/libglvnd/pull/113
Patch2: 0002-Print-out-host_cpu-when-undetected-for-easier-debugg.patch
Patch3: 0003-Fix-compile-errors.patch
Patch4: 0004-armv7-make-sure-asm-is-compiled-in-unified-syntax-mo.patch
Patch5: 0005-Treat-armv7hl-as-armv7l.patch
# WIP
Patch6: 0006-skip-tests-that-cannot-pass-with-pure-c-dispatch.patch
2015-02-06 17:54:37 +00:00
2016-02-17 10:53:15 +00:00
BuildRequires: libtool
2016-08-30 17:00:57 +00:00
BuildRequires: gcc
BuildRequires: python
2015-02-23 09:53:49 +00:00
BuildRequires: libxml2-python
2016-05-20 15:35:49 +00:00
BuildRequires: pkgconfig(glproto)
2015-02-11 15:42:34 +00:00
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xext)
2015-02-06 17:54:37 +00:00
2016-05-13 16:12:12 +00:00
# X11 tests:
2016-09-15 09:57:26 +00:00
#Xvfb is unlikely to reproduce a full Xorg environnement
#So some tests are failing
#https://github.com/NVIDIA/libglvnd/issues/93
2016-05-13 16:12:12 +00:00
BuildRequires: xorg-x11-server-Xvfb
%{?_without_mesa_glvnd_default:
%global __provides_exclude ^(libGL\\.so.*|libEGL\\.so.*|libGLES*\\.so.*)$
%global __requires_exclude ^(libGL\\.so.*|libEGL\\.so.*|libGLES*\\.so.*)$
2016-02-17 10:53:15 +00:00
}
2015-02-06 17:54:37 +00:00
%description
libglvnd is an implementation of the vendor-neutral dispatch layer for
arbitrating OpenGL API calls between multiple vendors on a per-screen basis.
2015-02-06 17:54:37 +00:00
2016-01-15 17:39:12 +00:00
%package devel
Summary: Development files for %{name}
Requires: %{name}%{?_isa} = %{epoch}:%{version}-%{release}
Requires: %{name}-opengl%{?_isa} = %{epoch}:%{version}-%{release}
Requires: %{name}-gles%{?_isa} = %{epoch}:%{version}-%{release}
Requires: %{name}-glx%{?_isa} = %{epoch}:%{version}-%{release}
Requires: %{name}-egl%{?_isa} = %{epoch}:%{version}-%{release}
Requires: %{name}-core-devel%{?_isa} = %{epoch}:%{version}-%{release}
%description devel
2016-01-15 17:39:12 +00:00
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.
2015-02-06 17:54:37 +00:00
%package core-devel
Summary: Core development files for %{name}
%description core-devel
The %{name}-core-devel package is a bootstrap trick for Mesa, which wants
to build against the %{name} headers but does not link against any of
its libraries (and, initially, has file conflicts with them). If you are
not Mesa you almost certainly want %{name}-devel instead.
%package opengl
Summary: OpenGL support for libglvnd
Requires: %{name}%{?_isa} = %{epoch}:%{version}-%{release}
%description opengl
libOpenGL is the common dispatch interface for the workstation OpenGL API.
%package gles
Summary: GLES support for libglvnd
Requires: %{name}%{?_isa} = %{epoch}:%{version}-%{release}
%{!?_without_mesa_glvnd_default:
# mesa is the default EGL implementation provider
Requires: mesa-libEGL%{?_isa}
Provides: libGLES
Provides: libGLES%{?_isa}
}
%description gles
libGLESv[12] are the common dispatch interface for the GLES API.
%package egl
Summary: EGL support for libglvnd
Requires: %{name}%{?_isa} = %{epoch}:%{version}-%{release}
%{!?_without_mesa_glvnd_default:
# mesa is the default EGL implementation provider
Requires: mesa-libEGL%{?_isa}
Provides: libEGL
Provides: libEGL%{?_isa}
}
%description egl
libEGL are the common dispatch interface for the EGL API.
%package glx
Summary: GLX support for libglvnd
Requires: %{name}%{?_isa} = %{epoch}:%{version}-%{release}
%{!?_without_mesa_glvnd_default:
# mesa is the default GL implementation provider
Requires: mesa-libGL%{?_isa}
Provides: libGL
Provides: libGL%{?_isa}
}
%description glx
libGL and libGLX are the common dispatch interface for the GLX API.
2015-02-06 17:54:37 +00:00
%prep
2016-10-25 13:33:20 +00:00
%autosetup -p1 -n %{name}-%{?commit0}%{?!commit0:%{version}}
2016-02-17 10:53:15 +00:00
autoreconf -vif
2015-02-06 17:54:37 +00:00
2015-02-06 17:54:37 +00:00
%build
2015-02-11 15:42:34 +00:00
%configure \
--disable-static \
2016-06-14 15:18:44 +00:00
--enable-asm \
--enable-tls
2015-02-11 15:42:34 +00:00
2016-08-30 17:00:57 +00:00
%make_build V=1
2015-02-06 17:54:37 +00:00
%install
2016-01-15 17:39:12 +00:00
%make_install INSTALL="install -p"
2016-05-20 16:02:58 +00:00
find %{buildroot} -name '*.la' -delete
2015-02-11 15:42:34 +00:00
%{?_without_mesa_glvnd_default:
# Avoid conflict with mesa-libGL
2015-02-11 15:42:34 +00:00
mkdir -p %{buildroot}%{_libdir}/%{name}
for l in libEGL libGL libGLESv1_CM libGLESv2 ; do
mv %{buildroot}%{_libdir}/${l}.so* \
%{buildroot}%{_libdir}/%{name}
done
2016-02-17 10:53:15 +00:00
}
2016-09-15 09:57:26 +00:00
# Create directory layout
mkdir -p %{buildroot}%{_sysconfdir}/glvnd/egl_vendor.d
mkdir -p %{buildroot}%{_datadir}/glvnd/egl_vendor.d
2015-02-06 17:54:37 +00:00
2016-01-15 17:39:12 +00:00
%check
2016-05-13 16:28:06 +00:00
export DO_X11_TESTS=1
2016-08-30 17:00:57 +00:00
# theses tests are failing in mock
#FAIL: testglxqueryversion.sh
#FAIL: testglxnscrthreads.sh
#reported as https://github.com/NVIDIA/libglvnd/issues/93
xvfb-run -a make check V=1 || cat `find . -name test-suite.log`
2016-01-15 17:39:12 +00:00
2015-02-06 17:54:37 +00:00
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
2015-11-21 15:18:35 +00:00
%doc README.md
2016-09-15 09:57:26 +00:00
%dir %{_sysconfdir}/glvnd
%dir %{_datadir}/glvnd
%{_libdir}/libGLdispatch.so.0*
%post opengl -p /sbin/ldconfig
%postun opengl -p /sbin/ldconfig
%files opengl
%{_libdir}/libOpenGL.so.0*
%post gles -p /sbin/ldconfig
%postun gles -p /sbin/ldconfig
%files gles
%if 0%{?_without_mesa_glvnd_default}
%{_libdir}/%{name}/libGLES*.so.*
%else
%{_libdir}/libGLES*.so.*
%endif
%post glx -p /sbin/ldconfig
%postun glx -p /sbin/ldconfig
%files glx
%if 0%{?_without_mesa_glvnd_default}
%{_libdir}/%{name}/libGL.so.*
%{_libdir}/%{name}/libGLX.so.*
%else
%{_libdir}/libGL.so.*
%{_libdir}/libGLX.so.*
%endif
%post egl -p /sbin/ldconfig
%postun egl -p /sbin/ldconfig
%files egl
%dir %{_sysconfdir}/glvnd/egl_vendor.d
2016-09-15 09:57:26 +00:00
%dir %{_datadir}/glvnd/egl_vendor.d
%if 0%{?_without_mesa_glvnd_default}
%{_libdir}/%{name}/libEGL*.so.*
%else
%{_libdir}/libEGL*.so.*
%endif
2016-01-15 17:39:12 +00:00
%files core-devel
2016-01-15 17:39:12 +00:00
%dir %{_includedir}/glvnd
%{_includedir}/glvnd/*.h
%{_libdir}/pkgconfig/*.pc
2015-02-06 17:54:37 +00:00
%files devel
%{_libdir}/lib*.so
%if 0%{?_without_mesa_glvnd_default}
%{_libdir}/%{name}/lib*.so
%endif
2015-02-06 17:54:37 +00:00
%changelog
* Wed Jan 11 2017 Hans de Goede <hdegoede@redhat.com> - 1:0.2.999-7.gitdc16f8c
- Epoch:1 to provide upgrade path from negativo17.org rpms
- New snapshot
- Add patches to fix building on ARM (from Rob Clark)
- Add BuildRequires: python
- Add ldconfig scriptlets for library sub-packages
* Wed Jan 11 2017 Adam Jackson <ajax@redhat.com>
- Don't hide libraries in a subdir (rhbz#1413579)
- Split up libraries to appropriate subpackages
- Make the req/prov filter catch more cases
- Restore libGLESv1 for ABI compliance
* Wed Oct 26 2016 Leigh Scott <leigh123linux@googlemail.com> - 0.2.999-6.git28867bb
- Update snapshot
- Fix EGL crash for KDE/Plasma (rfbz#4303)
2016-10-25 13:33:20 +00:00
* Tue Oct 25 2016 Leigh Scott <leigh123linux@googlemail.com> - 0.2.999-5.git295e5e5
- Fix EGL crash (rfbz#4303)
2016-10-14 09:32:38 +00:00
* Fri Oct 14 2016 Nicolas Chauvet <kwizart@gmail.com> - 0.2.999-4.git295e5e5
- Update snapshot
* Wed Oct 12 2016 Adam Jackson <ajax@redhat.com> - 0.2.999-3.git14f6283
- Restore hardened build
- Remove ExclusiveArch
- Remove some pointless Provides/Obsoletes
- BuildRequires pkgconfig(xext) not pkgconfig(xv)
- Update description to be a bit more confident
- Dump make check errors into the build log
2016-10-05 12:46:05 +00:00
* Wed Oct 05 2016 Nicolas Chauvet <kwizart@gmail.com> - 0.2.999-2.git14f6283
- Add the correct License: MIT
2016-09-15 09:57:26 +00:00
* Thu Sep 15 2016 Nicolas Chauvet <kwizart@gmail.com> - 0.2.999-1.git14f6283
- Update to 2.999 version
- Add EGL
* Fri Sep 02 2016 Nicolas Chauvet <kwizart@gmail.com> - 0.1.1-2.gitf7fbc4b
- Update license
- Fix Obsoletes/Provides to avoid self obsolete
2016-08-30 17:00:57 +00:00
* Tue Aug 30 2016 Nicolas Chauvet <kwizart@gmail.com> - 0.1.1-1.gitf7fbc4b
- Update to 1.1.gitf7fbc4b
2016-06-14 15:18:44 +00:00
* Tue Jun 14 2016 Nicolas Chauvet <kwizart@gmail.com> - 0.1.0-4.git093f048
- Update to 20160610 git commit
2016-05-20 14:15:27 +00:00
* Fri May 20 2016 Nicolas Chauvet <kwizart@gmail.com> - 0.1.0-3.gita82982d
- Update to current snapshot
2016-05-13 15:07:55 +00:00
* Fri May 13 2016 Nicolas Chauvet <kwizart@gmail.com> - 0.1.0-2.git509de0d
- Update to current snapshot
2016-05-13 16:12:12 +00:00
- Remove unused dt-auxiliary
- Add support for graphical make test
- Undefine hardened build for xorg
2016-05-13 15:07:55 +00:00
2016-05-04 17:10:16 +00:00
* Wed May 04 2016 Nicolas Chauvet <kwizart@gmail.com> - 0.1.0-1.git8277115
- Update to lastest snapshot
* Thu Feb 18 2016 Nicolas Chauvet <kwizart@gmail.com> - 0.0.0-9.git4d977ea
- Remove patch to enable by default
2016-02-17 10:53:15 +00:00
* Wed Feb 17 2016 Nicolas Chauvet <kwizart@gmail.com> - 0.0.0-8git20160217
- Update to git20160217
- Introduce --with mesa-libglvnd-default build conditional
- Avoid error on make check - testglxqueryversion.sh stil fails in mock
- Filter on provided libGL until glvnd support is in upstream mesa
- Use upstream tarball and use autoreconf
2016-01-15 17:39:12 +00:00
* Fri Jan 15 2016 Nicolas Chauvet <kwizart@gmail.com> - 0.0.0-7git20160115
- Bump for 20160115
- Enable make check
- Description improvements
- Enable libglvnd by default
- Enable devel sub-package
2016-01-06 09:38:24 +00:00
* Wed Jan 06 2016 Nicolas Chauvet <kwizart@gmail.com> - 0.0.0-6git20160106
- Update to 20160106 snapshot
2016-01-06 09:39:58 +00:00
- Remove 10-x11glvnd
2016-01-06 09:38:24 +00:00
2015-11-21 15:38:24 +00:00
* Sat Nov 21 2015 Nicolas Chauvet <kwizart@gmail.com> - 0.0.0-5git20151121
- Update to 20151121 snapshot
- Avoid conflicts with mesa-libGL{,ES}
- Disable libGLESv1_CM
2015-11-21 15:38:24 +00:00
2015-11-21 15:18:35 +00:00
* Tue Nov 10 2015 Nicolas Chauvet <kwizart@gmail.com> - 0.0.0-4git20151110
- Update to today snapshot
- Fix license
2015-09-02 16:42:54 +00:00
* Tue Sep 01 2015 Nicolas Chauvet <kwizart@gmail.com> - 0.0.0-3git20150901
- Update to snapshot 20150901
* Fri Aug 07 2015 Nicolas Chauvet <kwizart@gmail.com> - 0.0.0-2
- Update to today snapshoot
2015-02-11 15:42:34 +00:00
* Fri Feb 6 2015 Nicolas Chauvet <kwizart@gmail.com> - 0.0.0-1
- Initial spec file