c6b9c1
%global with_wayland 1
c6b9c1
%global with_tests 1
c6b9c1
c6b9c1
Name:          cogl
c6b9c1
Version:       1.22.2
c6b9c1
Release:       2%{?dist}
c6b9c1
Summary:       A library for using 3D graphics hardware to draw pretty pictures
c6b9c1
c6b9c1
License:       LGPLv2+
c6b9c1
URL:           http://www.clutter-project.org/
c6b9c1
Source0:       http://download.gnome.org/sources/cogl/1.22/cogl-%{version}.tar.xz
c6b9c1
c6b9c1
# Vaguely related to https://bugzilla.gnome.org/show_bug.cgi?id=772419
c6b9c1
# but on the 1.22 branch, and the static inline in the header is gross
c6b9c1
# ajax promises he'll clean this up.
c6b9c1
Patch0: 0001-egl-Use-eglGetPlatformDisplay-not-eglGetDisplay.patch
c6b9c1
# Backported from upstream to fix the build
c6b9c1
Patch1: cogl-1.22.2-fix-ifdef.patch
c6b9c1
c6b9c1
BuildRequires: cairo-devel
c6b9c1
BuildRequires: chrpath
c6b9c1
BuildRequires: gdk-pixbuf2-devel
c6b9c1
BuildRequires: glib2-devel
c6b9c1
BuildRequires: gobject-introspection-devel
c6b9c1
BuildRequires: gtk-doc
c6b9c1
BuildRequires: libXrandr-devel
c6b9c1
BuildRequires: libXcomposite-devel
c6b9c1
BuildRequires: libXdamage-devel
c6b9c1
BuildRequires: libXext-devel
c6b9c1
BuildRequires: libXfixes-devel
c6b9c1
BuildRequires: mesa-libGL-devel
c6b9c1
BuildRequires: mesa-libgbm-devel
c6b9c1
BuildRequires: pango-devel
c6b9c1
BuildRequires: pkgconfig
c6b9c1
c6b9c1
%if 0%{?with_wayland}
c6b9c1
BuildRequires: libwayland-server-devel
c6b9c1
BuildRequires: libwayland-client-devel
c6b9c1
BuildRequires: libwayland-cursor-devel
c6b9c1
BuildRequires: libwayland-egl-devel
c6b9c1
BuildRequires: libxkbcommon-devel
c6b9c1
%endif
c6b9c1
c6b9c1
%if 0%{?fedora}
c6b9c1
# From rhughes-f20-gnome-3-12 copr
c6b9c1
Obsoletes:     compat-cogl116 < 1.18
c6b9c1
%endif
c6b9c1
c6b9c1
%description
c6b9c1
Cogl is a small open source library for using 3D graphics hardware to draw
c6b9c1
pretty pictures. The API departs from the flat state machine style of
c6b9c1
OpenGL and is designed to make it easy to write orthogonal components that
c6b9c1
can render without stepping on each others toes.
c6b9c1
c6b9c1
As well aiming for a nice API, we think having a single library as opposed
c6b9c1
to an API specification like OpenGL has a few advantages too; like being
c6b9c1
able to paper over the inconsistencies/bugs of different OpenGL
c6b9c1
implementations in a centralized place, not to mention the myriad of OpenGL
c6b9c1
extensions. It also means we are in a better position to provide utility
c6b9c1
APIs that help software developers since they only need to be implemented
c6b9c1
once and there is no risk of inconsistency between implementations.
c6b9c1
c6b9c1
Having other backends, besides OpenGL, such as drm, Gallium or D3D are
c6b9c1
options we are interested in for the future.
c6b9c1
c6b9c1
%package devel
c6b9c1
Summary:       %{name} development environment
c6b9c1
Requires:      %{name}%{?_isa} = %{version}-%{release}
c6b9c1
c6b9c1
%description devel
c6b9c1
Header files and libraries for building and developing apps with %{name}.
c6b9c1
c6b9c1
%package       doc
c6b9c1
Summary:       Documentation for %{name}
c6b9c1
Requires:      %{name} = %{version}-%{release}
c6b9c1
BuildArch:     noarch
c6b9c1
c6b9c1
%description   doc
c6b9c1
This package contains documentation for %{name}.
c6b9c1
c6b9c1
%if 0%{?with_tests}
c6b9c1
%package       tests
c6b9c1
Summary:       Tests for %{name}
c6b9c1
c6b9c1
%description   tests
c6b9c1
This package contains the installable tests for %{cogl}.
c6b9c1
%endif
c6b9c1
c6b9c1
%prep
c6b9c1
%setup -q
c6b9c1
%patch0 -p1
c6b9c1
%patch1 -p1
c6b9c1
c6b9c1
%build
c6b9c1
CFLAGS="$RPM_OPT_FLAGS -fPIC"
c6b9c1
%configure \
c6b9c1
  --enable-cairo=yes \
c6b9c1
  --enable-cogl-pango=yes \
c6b9c1
  --enable-gdk-pixbuf=yes \
c6b9c1
  --enable-glx=yes \
c6b9c1
  --enable-gtk-doc \
c6b9c1
  --enable-introspection=yes \
c6b9c1
  --enable-kms-egl-platform \
c6b9c1
%if 0%{?with_wayland}
c6b9c1
  --enable-wayland-egl-platform \
c6b9c1
  --enable-wayland-egl-server \
c6b9c1
%endif
c6b9c1
  --enable-xlib-egl-platform \
c6b9c1
  %{?with_tests:--enable-installed-tests}
c6b9c1
c6b9c1
make %{?_smp_mflags} V=1
c6b9c1
c6b9c1
%install
c6b9c1
%make_install
c6b9c1
c6b9c1
#Remove libtool archives.
c6b9c1
find %{buildroot} -name '*.la' -delete
c6b9c1
c6b9c1
# This gets installed by mistake
c6b9c1
rm %{buildroot}%{_datadir}/cogl/examples-data/crate.jpg
c6b9c1
c6b9c1
# Remove lib64 rpaths
c6b9c1
chrpath --delete $RPM_BUILD_ROOT%{_libdir}/libcogl-path.so
c6b9c1
chrpath --delete $RPM_BUILD_ROOT%{_libdir}/libcogl-pango.so
c6b9c1
c6b9c1
%find_lang %{name}
c6b9c1
c6b9c1
%check
c6b9c1
# make check
c6b9c1
c6b9c1
%post -p /sbin/ldconfig
c6b9c1
c6b9c1
%postun -p /sbin/ldconfig
c6b9c1
c6b9c1
%files -f %{name}.lang
c6b9c1
%license COPYING
c6b9c1
%doc NEWS README
c6b9c1
%{_libdir}/libcogl*.so.20*
c6b9c1
%{_libdir}/girepository-1.0/Cogl*.typelib
c6b9c1
c6b9c1
%files devel
c6b9c1
%{_includedir}/cogl
c6b9c1
%{_libdir}/libcogl*.so
c6b9c1
%{_libdir}/pkgconfig/*.pc
c6b9c1
%{_datadir}/gir-1.0/Cogl*.gir
c6b9c1
c6b9c1
%files doc
c6b9c1
%{_datadir}/gtk-doc/html/cogl
c6b9c1
%{_datadir}/gtk-doc/html/cogl-2.0-experimental
c6b9c1
c6b9c1
%if 0%{?with_tests}
c6b9c1
%files tests
c6b9c1
%{_datadir}/installed-tests/%{name}
c6b9c1
%{_libexecdir}/installed-tests/%{name}
c6b9c1
%endif
c6b9c1
c6b9c1
%changelog
c6b9c1
* Fri Oct 27 2017 Kalev Lember <klember@redhat.com> - 1.22.2-2
c6b9c1
- Enable wayland support
c6b9c1
- Resolves: #1488576
c6b9c1
c6b9c1
* Fri Aug 26 2016 Kalev Lember <klember@redhat.com> - 1.22.2-1
c6b9c1
- Update to 1.22.2
c6b9c1
- Resolves: #1386835
c6b9c1
c6b9c1
* Wed Jun 29 2016 Owen Taylor <otaylor@redhat.com> - 1.18.2-12
c6b9c1
- Add patches to improve display synchronization on NVIDIA
c6b9c1
    
c6b9c1
  When testing quadbuffer stereo patches, GNOME Shell would sometimes
c6b9c1
  hang up on restart. This turned out to be a problem with display
c6b9c1
  synchronization on NVIDIA. The patches added here make display
c6b9c1
  synchronization work much more similarly with the NVIDIA drivers
c6b9c1
  and the open source drivers, which not only fixes this bug, but should
c6b9c1
  reduce future bugs.
c6b9c1
    
c6b9c1
  Resolves: #1305076
c6b9c1
c6b9c1
- Add patches improving frame completion events in Cogl
c6b9c1
c6b9c1
* Wed Jun 15 2016 Rui Matos <rmatos@redhat.com> - 1.18.2-11
c6b9c1
- Add patch to support NV_robustness_video_memory_purge
c6b9c1
  Resolves: rhbz#1330488
c6b9c1
c6b9c1
* Thu Apr  9 2015 Rui Matos <rmatos@redhat.com> - 1.18.2-10
c6b9c1
- Rebase to 1.18.2 - Resolves: rhbz#1174508
c6b9c1
c6b9c1
* Sun Nov 16 2014 Kalev Lember <kalevlember@gmail.com> - 1.18.2-9
c6b9c1
- Obsolete compat-cogl116 from rhughes-f20-gnome-3-12 copr
c6b9c1
c6b9c1
* Thu Nov 13 2014 Kalev Lember <kalevlember@gmail.com> - 1.18.2-8
c6b9c1
- Disable cogl-gst as long as we don't have clutter-gst3 (#1158676)
c6b9c1
c6b9c1
* Sat Nov 01 2014 Richard Hughes <rhughes@redhat.com> - 1.18.2-7
c6b9c1
- Fix compile on RHEL, harder
c6b9c1
c6b9c1
* Mon Oct 27 2014 Richard Hughes <rhughes@redhat.com> - 1.18.2-6
c6b9c1
- Fix compile on RHEL
c6b9c1
c6b9c1
* Fri Aug 22 2014 Kalev Lember <kalevlember@gmail.com> - 1.18.2-5
c6b9c1
- Remove lib64 rpaths (#1132876)
c6b9c1
c6b9c1
* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org>
c6b9c1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
c6b9c1
c6b9c1
* Tue Jul 22 2014 Kalev Lember <kalevlember@gmail.com> - 1.18.2-3
c6b9c1
- Rebuilt for gobject-introspection 1.41.4
c6b9c1
c6b9c1
* Fri Jul 11 2014 Peter Robinson <pbrobinson@fedoraproject.org> 1.18.2-2
c6b9c1
- Run make check but don't fail build on it
c6b9c1
c6b9c1
* Fri Jul 04 2014 Kalev Lember <kalevlember@gmail.com> - 1.18.2-1
c6b9c1
- Update to 1.18.2
c6b9c1
c6b9c1
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.18.0-4
c6b9c1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
c6b9c1
c6b9c1
* Fri May 23 2014 Kalev Lember <kalevlember@gmail.com> - 1.18.0-3
c6b9c1
- Backport an upstream fix for a totem crash
c6b9c1
c6b9c1
* Thu May 08 2014 Adam Jackson <ajax@redhat.com>
c6b9c1
- Add optional installed-tests subpackage
c6b9c1
c6b9c1
* Mon Apr 28 2014 Richard Hughes <rhughes@redhat.com> - 1.18.0-2
c6b9c1
- Build with --enable-cogl-gst
c6b9c1
c6b9c1
* Fri Mar 21 2014 Kalev Lember <kalevlember@gmail.com> - 1.18.0-1
c6b9c1
- Update to 1.18.0
c6b9c1
c6b9c1
* Fri Mar 21 2014 Kalev Lember <kalevlember@gmail.com> - 1.17.5-1.gitbb10532
c6b9c1
- Update to 1.17.5 git snapshot
c6b9c1
c6b9c1
* Fri Feb 21 2014 Kalev Lember <kalevlember@gmail.com> - 1.17.4-2
c6b9c1
- Drop compat-libcogl19
c6b9c1
c6b9c1
* Thu Feb 20 2014 Kalev Lember <kalevlember@gmail.com> - 1.17.4-1
c6b9c1
- Update to 1.17.4, which includes soname bump
c6b9c1
- Build a temporary compat-libcogl19 subpackage to ease the rebuilds
c6b9c1
c6b9c1
* Wed Feb 05 2014 Richard Hughes <rhughes@redhat.com> - 1.17.2-1
c6b9c1
- Update to 1.17.2
c6b9c1
c6b9c1
* Tue Jan 21 2014 Richard Hughes <rhughes@redhat.com> - 1.16.2-1
c6b9c1
- Update to 1.16.2
c6b9c1
c6b9c1
* Wed Sep 25 2013 Dan Horák <dan[at]danny.cz> - 1.16.0-2
c6b9c1
- fix build on big endians (#1011893)
c6b9c1
c6b9c1
* Tue Sep 24 2013 Kalev Lember <kalevlember@gmail.com> - 1.16.0-1
c6b9c1
- Update to 1.16.0
c6b9c1
c6b9c1
* Thu Sep 12 2013 Kalev Lember <kalevlember@gmail.com> - 1.15.10-3
c6b9c1
- More configure options for enabling the gnome-shell Wayland compositor
c6b9c1
- Enable parallel build
c6b9c1
c6b9c1
* Tue Sep 10 2013 Matthias Clasen <mclasen@redhat.com> - 1.15.10-2
c6b9c1
- Add configure options that are needed to enable the gnome-shell
c6b9c1
  Wayland compositor
c6b9c1
c6b9c1
* Mon Sep 02 2013 Kalev Lember <kalevlember@gmail.com> - 1.15.10-1
c6b9c1
- Update to 1.15.10
c6b9c1
c6b9c1
* Thu Aug 22 2013 Kalev Lember <kalevlember@gmail.com> - 1.15.8-1
c6b9c1
- Update to 1.15.8
c6b9c1
c6b9c1
* Fri Aug 09 2013 Kalev Lember <kalevlember@gmail.com> - 1.15.4-1
c6b9c1
- Update to 1.15.4
c6b9c1
c6b9c1
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.14.0-4
c6b9c1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
c6b9c1
c6b9c1
* Wed Jun 12 2013 Kalev Lember <kalevlember@gmail.com> 1.14.0-3
c6b9c1
- Rebuilt
c6b9c1
c6b9c1
* Wed May 22 2013 Adam Jackson <ajax@redhat.com> 1.14.0-2
c6b9c1
- cogl-1.14.0-21-ge26464f.patch: Sync with 1.14 branch for a crash fix.
c6b9c1
c6b9c1
* Mon Mar 25 2013 Kalev Lember <kalevlember@gmail.com> 1.14.0-1
c6b9c1
- Update to 1.14.0
c6b9c1
c6b9c1
* Thu Feb 21 2013 Bastien Nocera <bnocera@redhat.com> 1.13.4-1
c6b9c1
- Update to 1.13.4
c6b9c1
c6b9c1
* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.13.2-2
c6b9c1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
c6b9c1
c6b9c1
* Thu Jan 24 2013 Peter Robinson <pbrobinson@fedoraproject.org> 1.13.2-1
c6b9c1
- Update to 1.13.2
c6b9c1
c6b9c1
* Mon Jan  7 2013 Peter Robinson <pbrobinson@fedoraproject.org> 1.12.2-1
c6b9c1
- Update to 1.12.2
c6b9c1
c6b9c1
* Tue Sep 25 2012 Kalev Lember <kalevlember@gmail.com> - 1.12.0-1
c6b9c1
- Update to 1.12.0
c6b9c1
c6b9c1
* Tue Sep 18 2012 Kalev Lember <kalevlember@gmail.com> - 1.11.6-1
c6b9c1
- Update to 1.11.6
c6b9c1
- Drop upstreamed cogl-1.11.4-mesa-strings.patch
c6b9c1
c6b9c1
* Mon Sep 17 2012 Adam Jackson <ajax@redhat.com> 1.11.4-2
c6b9c1
- cogl-1.11.4-mesa-strings.patch: Update match strings for Mesa.
c6b9c1
c6b9c1
* Mon Sep  3 2012 Peter Robinson <pbrobinson@fedoraproject.org> - 1.11.4-1
c6b9c1
- Update to 1.11.4
c6b9c1
c6b9c1
* Tue Aug 21 2012 Richard Hughes <hughsient@gmail.com> - 1.11.2-1
c6b9c1
- Update to 1.11.2
c6b9c1
c6b9c1
* Fri Jul 27 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.10.4-2
c6b9c1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
c6b9c1
c6b9c1
* Wed Jul 18 2012 Kalev Lember <kalevlember@gmail.com> - 1.10.4-1
c6b9c1
- Update to 1.10.4
c6b9c1
- Dropped no-framebuffer-blit patch which is included in the release
c6b9c1
c6b9c1
* Thu Apr 19 2012 Adel Gadllah <adel.gadllah@gmail.com> - 1.10.2-1
c6b9c1
- Update to 1.10.2
c6b9c1
c6b9c1
* Tue Mar 20 2012 Kalev Lember <kalevlember@gmail.com> - 1.10.0-1
c6b9c1
- Update to 1.10.0
c6b9c1
c6b9c1
* Sat Mar 10 2012 Matthias Clasen <mclasen@redhat.com> - 1.9.8-1
c6b9c1
- Update to 1.9.8
c6b9c1
c6b9c1
* Sat Feb 25 2012 Matthias Clasen <mclasen@redhat.com> - 1.9.6-1
c6b9c1
- Update to 1.9.6
c6b9c1
c6b9c1
* Tue Jan 17 2012 Peter Robinson <pbrobinson@fedoraproject.org> - 1.9.4-1
c6b9c1
- Update to 1.9.4
c6b9c1
- http://ftp.gnome.org/pub/GNOME/sources/cogl/1.9/cogl-1.9.4.news
c6b9c1
c6b9c1
* Thu Jan 12 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.9.2-2
c6b9c1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
c6b9c1
c6b9c1
* Wed Nov 23 2011 Matthias Clasen <mclasen@redhat.com> 1.9.2-1
c6b9c1
- Update to 1.9.2
c6b9c1
c6b9c1
* Thu Nov 03 2011 Adam Jackson <ajax@redhat.com> 1.8.2-4
c6b9c1
- cogl-1.8.2-lp-no-framebuffer-blit.patch: Disable the subbuffer blit code
c6b9c1
  when running on llvmpipe until it's unbroken.
c6b9c1
c6b9c1
* Tue Nov 01 2011 Adam Jackson <ajax@redhat.com> 1.8.2-3
c6b9c1
- cogl-1.8.2-no-drm-hax.patch: Don't try insane direct DRM vblank wait.
c6b9c1
c6b9c1
* Wed Oct 26 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.8.2-2
c6b9c1
- Rebuilt for glibc bug#747377
c6b9c1
c6b9c1
* Mon Oct 17 2011 Peter Robinson <pbrobinson@fedoraproject.org> - 1.8.2-1
c6b9c1
- 1.8.2 stable release
c6b9c1
- http://ftp.gnome.org/pub/GNOME/sources/cogl/1.8/cogl-1.8.2.news
c6b9c1
- Enable gdk-pixbuf2 support - Fixes RHBZ # 738092
c6b9c1
c6b9c1
* Mon Sep 19 2011 Peter Robinson <pbrobinson@fedoraproject.org> - 1.8.0-1
c6b9c1
- 1.8.0 stable release
c6b9c1
- http://ftp.gnome.org/pub/GNOME/sources/cogl/1.8/cogl-1.8.0.news
c6b9c1
c6b9c1
* Mon Sep  5 2011 Peter Robinson <pbrobinson@fedoraproject.org> - 1.7.8-1
c6b9c1
- Update to 1.7.8
c6b9c1
c6b9c1
* Thu Aug 18 2011 Matthias Clasen <mclasen@redhat.com> - 1.7.6-1
c6b9c1
- Update to 1.7.6
c6b9c1
c6b9c1
* Tue Jul 26 2011 Matthias Clasen <mclasen@redhat.com> - 1.7.4-1
c6b9c1
- Update to 1.7.4
c6b9c1
c6b9c1
* Mon Jul  4 2011 Peter Robinson <pbrobinson@fedoraproject.org> - 1.7.2-1
c6b9c1
- Update to 1.7.2
c6b9c1
c6b9c1
* Thu Jun 16 2011 Peter Robinson <pbrobinson@fedoraproject.org> - 1.7.0-3
c6b9c1
- Update spec for review feedback
c6b9c1
c6b9c1
* Thu Jun 16 2011 Peter Robinson <pbrobinson@fedoraproject.org> - 1.7.0-2
c6b9c1
- Update spec for review feedback
c6b9c1
c6b9c1
* Wed Jun 15 2011 Peter Robinson <pbrobinson@fedoraproject.org> - 1.7.0-1
c6b9c1
- Initial Package