3 %bcond_without static_libs # static libraries
4 %bcond_without gdkpixbuf # gdk-pixbuf for image loading [instead of stb_image]
5 %bcond_without gles1 # OpenGL-ES 1.1 driver support
6 %bcond_without gles2 # OpenGL-ES 2.0 driver support
7 %bcond_without kms # KMS EGL platform support
8 %bcond_without gstreamer # GStreamer support
9 %bcond_with mir # Mir EGL platform support (conflicts with wayland)
10 %bcond_with sdl1 # SDL 1.x winsys support (conflicts with sdl2)
11 %bcond_with sdl2 # SDL2 winsys support (conflicts with sdl1)
12 %bcond_without wayland # Wayland EGL platform and server support
14 Summary: A library for using 3D graphics hardware to draw pretty pictures
15 Summary(pl.UTF-8): Biblioteka do rysowania ładnych obrazków przy użyciu sprzętowej grafiki 3D
21 Source0: http://ftp.gnome.org/pub/GNOME/sources/cogl/1.22/%{name}-%{version}.tar.xz
22 # Source0-md5: 7bcc01edb5462d4d08d01bf893feddb0
23 Patch0: %{name}-link.patch
24 # https://gitlab.gnome.org/GNOME/cogl/-/commit/ff5dfc658042115392d9215a40afab3636b8461a.diff
25 Patch1: %{name}-egl.patch
26 URL: http://www.clutter-project.org/
27 %{?with_wayland:BuildRequires: EGL-devel}
28 %{?with_kms:BuildRequires: Mesa-libgbm-devel}
29 BuildRequires: OpenGL-GLX-devel
30 %{?with_gles1:BuildRequires: OpenGLESv1-devel >= 1.1}
31 %{?with_sdl1:BuildRequires: SDL-devel >= 1.2}
32 %{?with_sdl2:BuildRequires: SDL2-devel >= 2}
33 BuildRequires: autoconf >= 2.59
34 BuildRequires: automake >= 1:1.14
35 BuildRequires: cairo-devel >= 1.10
36 %{?with_gdkpixbuf:BuildRequires: gdk-pixbuf2-devel >= 2.0}
37 BuildRequires: gettext-tools >= 0.19
38 BuildRequires: glib2-devel >= 1:2.32.0
39 BuildRequires: gobject-introspection-devel >= 0.9.5
40 %{?with_gstreamer:BuildRequires: gstreamer-devel >= 1.0}
41 %{?with_gstreamer:BuildRequires: gstreamer-plugins-base-devel >= 1.0}
42 BuildRequires: gtk-doc >= 1.13
43 BuildRequires: libdrm-devel
44 BuildRequires: libtool >= 2:2.2.6
45 # pkgconfig(mirclient)
46 %{?with_mir:BuildRequires: mir-devel >= 0.9.0}
47 BuildRequires: pango-devel >= 1:1.20
48 BuildRequires: pkgconfig
49 BuildRequires: tar >= 1:1.22
50 # wayland-client >= 1.0.0, wayland-server >= 1.1.90
51 %{?with_wayland:BuildRequires: wayland-devel >= 1.2.0}
52 %{?with_wayland:BuildRequires: wayland-egl-devel >= 1.0.0}
53 BuildRequires: xorg-lib-libX11-devel
54 BuildRequires: xorg-lib-libXcomposite-devel >= 0.4
55 BuildRequires: xorg-lib-libXdamage-devel
56 BuildRequires: xorg-lib-libXext-devel
57 BuildRequires: xorg-lib-libXfixes-devel >= 3
58 BuildRequires: xorg-lib-libXrandr-devel >= 1.2
60 Requires: cairo >= 1.10
61 Requires: glib2 >= 1:2.32.0
62 Requires: pango >= 1:1.20
63 %{?with_wayland:Requires: wayland >= 1.2.0}
64 Requires: xorg-lib-libXcomposite >= 0.4
65 Requires: xorg-lib-libXfixes >= 3
66 Requires: xorg-lib-libXrandr >= 1.2
68 %{?with_gles1:Provides: cogl(gles1) = %{version}-%{release}}
69 %{?with_gles2:Provides: cogl(gles2) = %{version}-%{release}}
70 %{?with_kms:Provides: cogl(kms) = %{version}-%{release}}
71 %{?with_wayland:Provides: cogl(wayland) = %{version}-%{release}}
72 Conflicts: clutter < 1.8.0
73 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
76 Cogl is a small open source library for using 3D graphics hardware to
77 draw pretty pictures. The API departs from the flat state machine
78 style of OpenGL and is designed to make it easy to write orthogonal
79 components that can render without stepping on each others toes.
81 %description -l pl.UTF-8
82 Cogl to mała biblioteka o otwartych źródłach, pozwalająca na rysowanie
83 ładnych rysunków przy użyciu sprzętu graficznego 3D. API wywodzi się z
84 automatu skończonego w stylu OpenGL i zostało tak zaprojektowane, aby
85 ułatwić pisanie ortogonalnych komponentów, potrafiących renderować bez
86 przeszkadzania sobie nawzajem.
89 Summary: Header files for cogl library
90 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki cogl
91 Group: Development/Libraries
92 Requires: %{name} = %{version}-%{release}
93 %{?with_wayland:Requires: EGL-devel}
94 %{?with_kms:Requires: Mesa-libgbm-devel}
95 %{?with_wayland:Requires: wayland-egl-devel >= 1.0.0}
96 Requires: cairo-devel >= 1.10
97 %{?with_gdkpixbuf:Requires: gdk-pixbuf2-devel >= 2.0}
98 Requires: glib2-devel >= 1:2.32.0
99 Requires: gobject-introspection-devel >= 0.9.5
100 Requires: libdrm-devel
101 Requires: pango-devel >= 1:1.20
102 %{?with_wayland:Requires: wayland-devel >= 1.2.0}
103 Requires: xorg-lib-libXcomposite-devel >= 0.4
104 Requires: xorg-lib-libXdamage-devel
105 Requires: xorg-lib-libXext-devel
106 Requires: xorg-lib-libXfixes-devel >= 3
107 Requires: xorg-lib-libXrandr-devel >= 1.2
108 %{?with_gles1:Provides: cogl-devel(gles1) = %{version}-%{release}}
109 %{?with_gles2:Provides: cogl-devel(gles2) = %{version}-%{release}}
110 %{?with_kms:Provides: cogl-devel(kms) = %{version}-%{release}}
111 %{?with_wayland:Provides: cogl-devel(wayland) = %{version}-%{release}}
112 Conflicts: clutter-devel < 1.8.0
115 Header files for building and developing applications with cogl.
117 %description devel -l pl.UTF-8
118 Pliki nagłówkowe do tworzenia aplikacji z użyciem biblioteki cogl.
121 Summary: Static cogl libraries
122 Summary(pl.UTF-8): Statyczne biblioteki cogl
123 Group: Development/Libraries
124 Requires: %{name}-devel = %{version}-%{release}
125 %{?with_gles1:Provides: cogl-static(gles1) = %{version}-%{release}}
126 %{?with_gles2:Provides: cogl-static(gles2) = %{version}-%{release}}
127 %{?with_kms:Provides: cogl-static(kms) = %{version}-%{release}}
128 %{?with_wayland:Provides: cogl-static(wayland) = %{version}-%{release}}
129 Conflicts: clutter-static < 1.8.0
132 Static cogl libraries.
134 %description static -l pl.UTF-8
135 Statyczne biblioteki cogl.
138 Summary: API documentation for cogl
139 Summary(pl.UTF-8): Dokumentacja API cogl
143 This package contains API documentation for cogl.
145 %description doc -l pl.UTF-8
146 Ten pakiet zawiera dokumentację API cogl.
149 Summary: Cogl frontend library for OpenGL-ES 2.0
150 Summary(pl.UTF-8): Biblioteka frontendowa Cogl dla OpenGL-ES 2.0
152 Requires: %{name}(gles2) = %{version}-%{release}
155 Cogl frontend library for OpenGL-ES 2.0.
157 %description gles2 -l pl.UTF-8
158 Biblioteka frontendowa Cogl dla OpenGL-ES 2.0.
161 Summary: Header files for cogl-gles2 library
162 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki cogl-gles2
163 Group: Development/Libraries
164 Requires: %{name}-devel(gles2) = %{version}-%{release}
165 Requires: %{name}-gles2 = %{version}-%{release}
167 %description gles2-devel
168 Header files for cogl-gles2 library.
170 %description gles2-devel -l pl.UTF-8
171 Pliki nagłówkowe biblioteki cogl-gles2.
173 %package gles2-static
174 Summary: Static cogl-gles2 library
175 Summary(pl.UTF-8): Statyczna biblioteka cogl-gles2
176 Group: Development/Libraries
177 Requires: %{name}-gles2-devel = %{version}-%{release}
179 %description gles2-static
180 Static cogl-gles2 library.
182 %description gles2-static -l pl.UTF-8
183 Statyczna biblioteka cogl-gles2.
186 Summary: GStreamer integration library for Cogl
187 Summary(pl.UTF-8): Biblioteka integrująca GStreamera z Cogl
189 Requires: %{name} = %{version}-%{release}
192 GStreamer integration library for Cogl.
194 %description gst -l pl.UTF-8
195 Biblioteka integrująca GStreamera z Cogl.
198 Summary: Header files for cogl-gst library
199 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki cogl-gst
200 Group: Development/Libraries
201 Requires: %{name}-devel = %{version}-%{release}
202 Requires: %{name}-gst = %{version}-%{release}
203 Requires: gstreamer-devel >= 1.0
204 Requires: gstreamer-plugins-base-devel >= 1.0
206 %description gst-devel
207 Header files for cogl-gst library.
209 %description gst-devel -l pl.UTF-8
210 Pliki nagłówkowe biblioteki cogl-gst.
213 Summary: Static cogl-gst library
214 Summary(pl.UTF-8): Statyczna biblioteka cogl-gst
215 Group: Development/Libraries
216 Requires: %{name}-gst-devel = %{version}-%{release}
218 %description gst-static
219 Static cogl-gst library.
221 %description gst-static -l pl.UTF-8
222 Statyczna biblioteka cogl-gst.
225 Summary: API documentation for cogl-gst library
226 Summary(pl.UTF-8): Dokumentacja API biblioteki cogl-gst
228 %if "%{_rpmversion}" >= "5"
232 %description gst-apidocs
233 API documentation for cogl-gst library.
235 %description gst-apidocs -l pl.UTF-8
236 Dokumentacja API biblioteki cogl-gst.
246 %{__aclocal} -I build/autotools
251 %{!?with_gdkpixbuf:--disable-gdk-pixbuf} \
252 --disable-silent-rules \
254 %{?with_gstreamer:--enable-cogl-gst} \
255 --enable-cogl-pango \
256 %{?with_gles1:--enable-gles1 --with-gles1-libname=libGLESv1_CM.so.1} \
257 %{?with_gles2:--enable-gles2 --with-gles2-libname=libGLESv2.so.2} \
260 --enable-introspection \
261 --enable-kms-egl-platform \
262 %{?with_mir:--enable-mir-egl-platform} \
263 %{?with_sdl1:--enable-sdl} \
264 %{?with_sdl2:--enable-sdl2} \
265 %{?with_static_libs:--enable-static} \
266 %{?with_wayland:--enable-wayland-egl-platform} \
267 %{?with_wayland:--enable-wayland-egl-server} \
268 --enable-xlib-egl-platform \
269 --with-html-dir=%{_gtkdocdir}
273 rm -rf $RPM_BUILD_ROOT
275 %{__make} -j1 install \
276 DESTDIR=$RPM_BUILD_ROOT
278 %if %{with gstreamer}
279 %{__rm} $RPM_BUILD_ROOT%{_libdir}/gstreamer-1.0/libgstcogl.la
280 %if %{with static_libs}
281 %{__rm} $RPM_BUILD_ROOT%{_libdir}/gstreamer-1.0/libgstcogl.a
284 # obsoleted by pkg-config
285 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libcogl*.la
290 rm -rf $RPM_BUILD_ROOT
292 %post -p /sbin/ldconfig
293 %postun -p /sbin/ldconfig
295 %post gles2 -p /sbin/ldconfig
296 %postun gles2 -p /sbin/ldconfig
298 %post gst -p /sbin/ldconfig
299 %postun gst -p /sbin/ldconfig
301 %files -f %{name}.lang
302 %defattr(644,root,root,755)
303 %doc ChangeLog NEWS README
304 %attr(755,root,root) %{_libdir}/libcogl.so.*.*.*
305 %attr(755,root,root) %ghost %{_libdir}/libcogl.so.20
306 %attr(755,root,root) %{_libdir}/libcogl-pango.so.*.*.*
307 %attr(755,root,root) %ghost %{_libdir}/libcogl-pango.so.20
308 %attr(755,root,root) %{_libdir}/libcogl-path.so.*.*.*
309 %attr(755,root,root) %ghost %{_libdir}/libcogl-path.so.20
310 %{_libdir}/girepository-1.0/Cogl-1.0.typelib
311 %{_libdir}/girepository-1.0/CoglPango-1.0.typelib
312 %{_libdir}/girepository-1.0/Cogl-2.0.typelib
313 %{_libdir}/girepository-1.0/CoglPango-2.0.typelib
316 %defattr(644,root,root,755)
317 %attr(755,root,root) %{_libdir}/libcogl.so
318 %attr(755,root,root) %{_libdir}/libcogl-pango.so
319 %attr(755,root,root) %{_libdir}/libcogl-path.so
320 %dir %{_includedir}/cogl
321 %{_includedir}/cogl/cogl
322 %{_includedir}/cogl/cogl-pango
323 %{_includedir}/cogl/cogl-path
324 %{_pkgconfigdir}/cogl-1.0.pc
325 %{_pkgconfigdir}/cogl-2.0-experimental.pc
326 %{_pkgconfigdir}/cogl-gl-1.0.pc
327 %{_pkgconfigdir}/cogl-pango-1.0.pc
328 %{_pkgconfigdir}/cogl-pango-2.0-experimental.pc
329 %{_pkgconfigdir}/cogl-path-1.0.pc
330 %{_pkgconfigdir}/cogl-path-2.0-experimental.pc
331 %{_datadir}/gir-1.0/Cogl-1.0.gir
332 %{_datadir}/gir-1.0/CoglPango-1.0.gir
333 %{_datadir}/gir-1.0/Cogl-2.0.gir
334 %{_datadir}/gir-1.0/CoglPango-2.0.gir
336 %if %{with static_libs}
338 %defattr(644,root,root,755)
340 %{_libdir}/libcogl-pango.a
341 %{_libdir}/libcogl-path.a
345 %defattr(644,root,root,755)
347 %{_gtkdocdir}/cogl-2.0-experimental
351 %defattr(644,root,root,755)
352 %attr(755,root,root) %{_libdir}/libcogl-gles2.so.*.*.*
353 %attr(755,root,root) %ghost %{_libdir}/libcogl-gles2.so.20
356 %defattr(644,root,root,755)
357 %attr(755,root,root) %{_libdir}/libcogl-gles2.so
358 %{_includedir}/cogl/cogl-gles2
359 %{_pkgconfigdir}/cogl-gles2-1.0.pc
360 %{_pkgconfigdir}/cogl-gles2-2.0-experimental.pc
362 %if %{with static_libs}
364 %defattr(644,root,root,755)
365 %{_libdir}/libcogl-gles2.a
369 %if %{with gstreamer}
371 %defattr(644,root,root,755)
372 %attr(755,root,root) %{_libdir}/libcogl-gst.so.*.*.*
373 %attr(755,root,root) %ghost %{_libdir}/libcogl-gst.so.20
374 %attr(755,root,root) %{_libdir}/gstreamer-1.0/libgstcogl.so
375 %{_libdir}/girepository-1.0/CoglGst-2.0.typelib
378 %defattr(644,root,root,755)
379 %attr(755,root,root) %{_libdir}/libcogl-gst.so
380 %{_includedir}/cogl/cogl-gst
381 %{_pkgconfigdir}/cogl-gst-1.0.pc
382 %{_pkgconfigdir}/cogl-gst-2.0-experimental.pc
383 %{_datadir}/gir-1.0/CoglGst-2.0.gir
385 %if %{with static_libs}
387 %defattr(644,root,root,755)
388 %{_libdir}/libcogl-gst.a
392 %defattr(644,root,root,755)
393 %{_gtkdocdir}/cogl-gst