File Mesa-demo.spec of Package Mesa-demo-9.0.0-88.2

#
# spec file for package Mesa-demo
#
# 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/
#


Name:           Mesa-demo
Version:        9.0.0
Release:        88.2
Summary:        Mesa demo programs for the OpenGL stack
License:        MIT
Group:          Development/Tools/Other
URL:            https://www.mesa3d.org
Source0:        https://mesa.freedesktop.org/archive/demos/mesa-demos-%{version}.tar.xz
Source1:        https://mesa.freedesktop.org/archive/demos/mesa-demos-%{version}.tar.xz.sig
Source2:        %{name}.keyring
Source3:        baselibs.conf
BuildRequires:  autoconf >= 2.59
BuildRequires:  automake
BuildRequires:  cmake
BuildRequires:  freeglut-devel
BuildRequires:  gcc-c++
BuildRequires:  glew-devel
BuildRequires:  glslang-devel
BuildRequires:  libexpat-devel
BuildRequires:  libtool
BuildRequires:  meson
BuildRequires:  pkgconfig
BuildRequires:  vulkan-devel
BuildRequires:  pkgconfig(gl)
BuildRequires:  pkgconfig(glesv1_cm)
BuildRequires:  pkgconfig(glesv2)
BuildRequires:  pkgconfig(glew)
BuildRequires:  pkgconfig(glu)
BuildRequires:  pkgconfig(libdrm)
BuildRequires:  pkgconfig(osmesa)
BuildRequires:  pkgconfig(x11)
BuildRequires:  pkgconfig(xcb)
BuildRequires:  pkgconfig(xext)
BuildRequires:  pkgconfig(xkbcommon)
BuildRequires:  pkgconfig(xkbcommon-x11)
Requires:       Mesa-demo-egl = %{version}
Requires:       Mesa-demo-es = %{version}
Requires:       Mesa-demo-x = %{version}

%description
Mesa is a 3-D graphics library with an API similar to OpenGL.
This package contains the demos shipped with Mesa.

%package x
Summary:        GLX-based demos
Group:          Development/Tools/Other

%description x
This package contains some common GLX-based demos.

%package es
Summary:        GLES-based demos
Group:          Development/Tools/Other
Provides:       Mesa-demo:%{_libdir}/mesa-demos/egl/opengles2/es2_info
Provides:       Mesa-demo:%{_libdir}/mesa-demos/egl/opengles2/es2gears_x11
Provides:       Mesa-demo:%{_libdir}/mesa-demos/egl/opengles2/es2tri

%description es
This package contains some common GLES-based demos.

%package egl
Summary:        EGL-based demos
Group:          Development/Tools/Other
Provides:       Mesa-demo:%{_libdir}/mesa-demos/egl/opengl/eglgears_x11
Provides:       Mesa-demo:%{_libdir}/mesa-demos/egl/opengl/eglinfo
Provides:       Mesa-demo:%{_libdir}/mesa-demos/egl/opengl/egltri_x11
Provides:       Mesa-demo:%{_libdir}/mesa-demos/egl/opengl/peglgears
Provides:       Mesa-demo:%{_libdir}/mesa-demos/egl/opengl/xeglgears
Provides:       Mesa-demo:%{_libdir}/mesa-demos/egl/opengl/xeglthreads

%description egl
This package contains some common EGL-based demos.

%prep
%autosetup -n mesa-demos-%{version} -b0

%build
%{meson} \
  -Dgles1=enabled \
  -Dgles2=enabled \
  -Dosmesa=enabled \
  -Dlibdrm=enabled \
  -Dwayland=disabled \
  -Dvulkan=enabled \
  %{nil}
%{meson_build}

%install
%{meson_install}
%ifarch %ix86
mkdir -p %{buildroot}%{_libdir}/mesa-demos/egl/{opengl,opengles2} \
         %{buildroot}%{_libdir}/mesa-demos/xdemos
cp -a %{buildroot}%{_bindir}/{eglgears_x11,eglinfo,egltri_x11,peglgears,xeglgears,xeglthreads} \
      %{buildroot}%{_libdir}/mesa-demos/egl/opengl
cp -a %{buildroot}%{_bindir}/{es2_info,es2gears_x11,es2tri} \
      %{buildroot}%{_libdir}/mesa-demos/egl/opengles2
cp -a %{buildroot}%{_bindir}/{glxgears,glxinfo,pbinfo} \
      %{buildroot}%{_libdir}/mesa-demos/xdemos
%endif

%files
%{_bindir}/*
%dir %{_datadir}/mesa-demos
%{_datadir}/mesa-demos/*
%exclude %{_bindir}/glxgears
%exclude %{_bindir}/glxinfo
%exclude %{_bindir}/pbinfo
%exclude %{_bindir}/es2_info
%exclude %{_bindir}/es2gears_x11
%exclude %{_bindir}/es2tri
%exclude %{_bindir}/eglgears_x11
%exclude %{_bindir}/eglinfo
%exclude %{_bindir}/egltri_x11
%exclude %{_bindir}/peglgears
%exclude %{_bindir}/xeglgears
%exclude %{_bindir}/xeglthreads
# conflict with line of util-linux
%exclude %{_bindir}/line
# conflict with bitmap of package bitmap
%exclude %{_bindir}/bitmap

%files x
%{_bindir}/glxgears
%{_bindir}/glxinfo
%{_bindir}/pbinfo
%ifarch %ix86
%dir %{_libdir}/mesa-demos
%dir %{_libdir}/mesa-demos/xdemos
%{_libdir}/mesa-demos/xdemos/*
%endif

%files es
%{_bindir}/es2_info
%{_bindir}/es2gears_x11
%{_bindir}/es2tri
%ifarch %ix86
%dir %{_libdir}/mesa-demos/
%dir %{_libdir}/mesa-demos/egl
%dir %{_libdir}/mesa-demos/egl/opengles2
%{_libdir}/mesa-demos/egl/opengles2/*
%endif

%files egl
%{_bindir}/eglgears_x11
%{_bindir}/eglinfo
%{_bindir}/egltri_x11
%{_bindir}/peglgears
%{_bindir}/xeglgears
%{_bindir}/xeglthreads
%ifarch %ix86
%dir %{_libdir}/mesa-demos
%dir %{_libdir}/mesa-demos/egl
%dir %{_libdir}/mesa-demos/egl/opengl
%{_libdir}/mesa-demos/egl/opengl/*
%endif

%changelog
* Thu Dec 21 2023 Jan Engelhardt <jengelh@inai.de>
- Remove old rpm constructs that are long defaulted.
- Remove legalese from descriptions as per our wiki guidelines.
* Sun Sep 10 2023 Stefan Dirsch <sndirsch@suse.com>
- don't package "bitmap" sample (conflict with /usr/bin/bitmap of
  package bitmap) {boo#1215185)
* Thu Mar 30 2023 Stefan Dirsch <sndirsch@suse.com>
- enabled osmesa and libdrm support
* Thu Mar 30 2023 Stefan Dirsch <sndirsch@suse.com>
- enabled vulkan support (first Vulkan demo: vkgears!)
* Thu Mar 30 2023 Stefan Dirsch <sndirsch@suse.com>
- Update to version 9.0.0
- supersedes n_install-more-egl-binaries.patch
* Sat Mar 25 2023 Stefan Dirsch <sndirsch@suse.com>
- don't package "line" sample (conflict with /usr/bin/line of
  util-linux)
* Fri Mar 24 2023 Stefan Dirsch <sndirsch@suse.com>
- readded -32bit packages
* Fri Mar 24 2023 Stefan Dirsch <sndirsch@suse.com>
- switched to meson build
- needs n_install-more-egl-binaries.patch, so all binaries are
  installed we had before ...
* Mon Feb 13 2023 Stefan Dirsch <sndirsch@suse.com>
- added baselibs.conf as source to specfile
* Fri Feb 10 2023 Bruno Pitrus <brunopitrus@hotmail.com>
- Add Mesa-demo-{egl,es,x}-32bit. This is useful as the 64- and 32-bit
  OpenGL environments are separate and need separate diagnostic programs.
* Mon May 30 2022 Stefan Dirsch <sndirsch@suse.com>
- Update to version 8.5.0
  * over four years since the last release; a lot of changes
    including support for Meson build
* Thu Feb 10 2022 Behzad A <behzad.a_ir@hotmail.com>
- added sub-packages as dependencies to the main package to
  ensure the complete installation of the program
  * Mesa-demo-x
  * Mesa-demo-es
  * Mesa-demo-egl
* Tue Feb  8 2022 Behzad A <behzad.a_ir@hotmail.com>
- added "-egl" subpackage for common EGL-based demos include
  eglinfo, eglgears, egltri, peglgears, xeglgears, xeglthreads
  (boo#1195695)
* Tue Sep 28 2021 Martin Hauke <mardnh@gmx.de>
- Introduce new subpackage -es for GLES based demos
- Symlink es2_info, es2gears_x11, es2tri to %%_bindir
* Fri Mar  2 2018 sndirsch@suse.com
- Update to version 8.4.0
  * glxinfo now supports OpenGL 4.6
  * glxinfo prints more OpenGL limits (GL 3.0 up to GL 4.6)
  * glxinfo gained support for GL_ATI_meminfo and GL_NVX_gpu_memory_info
  * eglinfo binary is now installed by `make install`
  * Other misc changes
- fixed source URLs in specfile
* Mon May 29 2017 sndirsch@suse.com
- includes everything needed for missing sle issue entries:
  fate #315643-315645, 319159-319161, 319618 (bsc#1041312)
* Mon Jan 30 2017 jengelh@inai.de
- Update RPM group; use faster find+ variant.
* Thu Dec 10 2015 sndirsch@suse.com
- Update to version 8.3.0
  * This new mesa-demos release fixes the build issue against
    mesa 10.6 (Bug #91643) and picks up the latest glxinfo
    changes.
- supersedes u_mesa-demos_missing-libs.diff
- no longer disable egl build
* Wed Jun 24 2015 sndirsch@suse.com
- disabled egl build due to Mesa's removal of skeleton
  implementation of EGL_MESA_screen_surface with release 10.6.0
- removed egl subpackage
* Mon Mar 16 2015 mpluskal@suse.com
- Use url for source
- Add gpg signature
- Cleanup spec file with spec-cleaner
* Wed Jul  9 2014 sndirsch@suse.com
- Update to version 8.2.0
  * This new mesa-demos release fixes the build issue against mesa
    10.2 (fdo#78101) and picks up the latest glxinfo changes.
- obsoletes patches:
  * U_drawtex-resolve-glDrawTexfOES-extension-function.patch
  * u_drawtex-fixed-compiler-warnings-related-to-use-of-eg.patch
* Thu May  8 2014 sndirsch@suse.com
- U_drawtex-resolve-glDrawTexfOES-extension-function.patch
  * drawtex: resolve glDrawTexfOES extension function; fixes build
    with latest Mesa 10.2-rc1 (fdo#78101)
- u_drawtex-fixed-compiler-warnings-related-to-use-of-eg.patch
  * fixes fatal compiler warnings
* Sat Jun 15 2013 hrvoje.senjan@gmail.com
- Enable build of gles{1,2} and egl info, and symlink them to
  %%_bindir
- Split egl dir into separate subpackage
* Wed May  1 2013 opensuse@cboltz.de
- let Mesa-demo-x own /usr/lib*/mesa-demos/ and /usr/lib*/mesa-demos/xdemos/
* Sun Feb 24 2013 hrvoje.senjan@gmail.com
- Update to version 8.1.0
  * changes for OpenGL Core Profile
  * Wayland support within eglut
  * various updates to the OpenGL tests/demos
  * glxgears now supports multi-sample visuals
  * new EGL/OpenVG tests
  * large number of other changes
* Tue Sep 25 2012 sndirsch@suse.com
- reverted previous change; seems this is no longer necessary
* Mon Sep 24 2012 sndirsch@suse.com
- fixed build by replacing these strange osdemo{,16,32} scripts
  by the proper binaries
* Thu May 10 2012 sndirsch@suse.com
- fixed build by making use of autoreconf
* Thu Mar 15 2012 sndirsch@suse.com
- added "-x" subpackage for most common GLX-based demos like
  glxgears, glxinfo, pbinfo (bnc #748373)
* Mon Feb 13 2012 jengelh@medozas.de
- Update package BuildRequires to use pkgconfig symbols
* Wed Feb  8 2012 sndirsch@suse.com
- renamed package to Mesa-demo
- spefile cleanup
* Tue Jan 24 2012 sndirsch@suse.com
- renamed package to MesaDemos
* Thu Jan 12 2012 cfarrell@suse.com
- license update: MIT
  SPDX format
* Wed Jan 11 2012 sndirsch@suse.com
- added automake to BuildRequires to build fix on factory
* Mon Aug 29 2011 sndirsch@suse.com
- u_mesa-demos_missing-libs.diff
  * xeglthreads no longer can rely on the toolchain to add the
    required libs, it uses directly.
* Thu Oct 28 2010 mhopf@novell.com
- Change filesystem layout to something more sane
- Package all required non-binary data
* Thu Oct 28 2010 mhopf@novell.com
- Initial package for version 8.0.1
openSUSE Build Service is sponsored by