/[packages]/cauldron/cogl/current/SPECS/cogl.spec
ViewVC logotype

Contents of /cauldron/cogl/current/SPECS/cogl.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1379419 - (show annotations) (download)
Thu Mar 21 09:05:44 2019 UTC (5 years, 1 month ago) by tv
File size: 9711 byte(s)
Add GL_ARB_shader_texture_lod and copy_sub_image support (#1421055)
1 %define major 20
2 %define pangomajor 20
3 %define gi_major 1.0
4 %define gi_major2 2.0
5
6 %define libname %mklibname %{name} %{major}
7 %define libname_pango %mklibname %{name}-pango %{pangomajor}
8 %define develname %mklibname -d %{name}
9 %define girname %mklibname %{name}-gir %{gi_major}
10 %define girname_pango %mklibname %{name}-pango-gir %{gi_major}
11
12 %define girname2 %mklibname %{name}-gir %{gi_major2}
13 %define girname_pango2 %mklibname %{name}-pango-gir %{gi_major2}
14
15 %define url_ver %(echo %{version}|cut -d. -f1,2)
16
17 Name: cogl
18 Version: 1.22.2
19 Release: %mkrel 4
20 Summary: A library for using 3D graphics hardware to draw pretty pictures
21 Group: System/Libraries
22 License: LGPLv2+
23 URL: http://www.clutter-project.org/
24 Source0: https://download.gnome.org/sources/%{name}/%{url_ver}/%{name}-%{version}.tar.xz
25 # Vaguely related to https://bugzilla.gnome.org/show_bug.cgi?id=772419
26 # but on the 1.22 branch, and the static inline in the header is gross
27 # ajax promises he'll clean this up.
28 Patch0: 0001-egl-Use-eglGetPlatformDisplay-not-eglGetDisplay.patch
29
30 # "GL_ARB_shader_texture_lod" is used to do lod biased texturing. It
31 # make achieve faster blurring of images instead of using large blur radius.
32 Patch1: 0002-add-GL_ARB_shader_texture_lod-support.patch
33
34 # "copy_sub_image" is used to implement feature similar with kwin blur
35 # effect by being abel to copy partial of framebuffer contents as texture
36 # and do post blurring.
37 Patch2: 0003-texture-support-copy_sub_image.patch
38
39 Patch3: e20d81b1627b09494c00fd29f952fc17e618af46..e0fda738232d6a1c69a150d7528a970887fb459f.patch
40 BuildRequires: pkgconfig(gl)
41 BuildRequires: pkgconfig(x11)
42 BuildRequires: pkgconfig(xext)
43 BuildRequires: pkgconfig(xfixes) >= 3
44 BuildRequires: pkgconfig(xdamage)
45 BuildRequires: pkgconfig(xrandr)
46 BuildRequires: pkgconfig(xcomposite) >= 0.4
47 BuildRequires: pkgconfig(gobject-2.0) >= 2.28.0
48 BuildRequires: pkgconfig(gmodule-no-export-2.0)
49 BuildRequires: pkgconfig(gdk-pixbuf-2.0)
50 BuildRequires: pkgconfig(cairo) >= 1.10
51 BuildRequires: pkgconfig(pangocairo) >= 1.20
52 BuildRequires: pkgconfig(gobject-introspection-1.0)
53 BuildRequires: pkgconfig(gtk-doc)
54 # ovitters: Wayland support + required KMS support
55 BuildRequires: pkgconfig(wayland-egl) >= 1.0.0
56 BuildRequires: pkgconfig(wayland-client) >= 1.0.0
57 BuildRequires: pkgconfig(wayland-server) >= 1.1.90
58 BuildRequires: pkgconfig(gbm)
59
60 %description
61 Cogl is a small open source library for using 3D graphics hardware to draw
62 pretty pictures. The API departs from the flat state machine style of
63 OpenGL and is designed to make it easy to write orthogonal components that
64 can render without stepping on each others toes.
65
66 As well aiming for a nice API, we think having a single library as opposed
67 to an API specification like OpenGL has a few advantages too; like being
68 able to paper over the inconsistencies/bugs of different OpenGL
69 implementations in a centralized place, not to mention the myriad of OpenGL
70 extensions. It also means we are in a better position to provide utility
71 APIs that help software developers since they only need to be implemented
72 once and there is no risk of inconsistency between implementations.
73
74 Having other backends, besides OpenGL, such as drm, Gallium or D3D are
75 options we are interested in for the future.
76
77 #--------------------------------------------------------------------
78
79 %package i18n
80 Summary: Translations for %{name}
81 Group: System/Internationalization
82 Obsoletes: %{name} < 1.9.2
83 BuildArch: noarch
84
85 %description i18n
86 This contains the translation data for %{name}.
87
88 %files i18n -f %{name}.lang
89
90 #--------------------------------------------------------------------
91
92 %package -n %{libname}
93 Summary: A library for using 3D graphics hardware to draw pretty pictures
94 Group: System/Libraries
95 Requires: %{name}-i18n
96
97 %description -n %{libname}
98 Cogl is a small open source library for using 3D graphics hardware to draw
99 pretty pictures. The API departs from the flat state machine style of
100 OpenGL and is designed to make it easy to write orthogonal components that
101 can render without stepping on each others toes.
102
103 As well aiming for a nice API, we think having a single library as opposed
104 to an API specification like OpenGL has a few advantages too; like being
105 able to paper over the inconsistencies/bugs of different OpenGL
106 implementations in a centralized place, not to mention the myriad of OpenGL
107 extensions. It also means we are in a better position to provide utility
108 APIs that help software developers since they only need to be implemented
109 once and there is no risk of inconsistency between implementations.
110
111 Having other backends, besides OpenGL, such as drm, Gallium or D3D are
112 options we are interested in for the future.
113
114 %files -n %{libname}
115 %{_libdir}/libcogl.so.%{major}{,.*}
116 %{_libdir}/libcogl-path.so.%{major}{,.*}
117
118 #--------------------------------------------------------------------
119
120 %package -n %{libname_pango}
121 Summary: A library for using 3D graphics hardware to draw pretty pictures
122 Group: System/Libraries
123 Requires: %{name}-i18n
124
125 %description -n %{libname_pango}
126 Cogl is a small open source library for using 3D graphics hardware to draw
127 pretty pictures. The API departs from the flat state machine style of
128 OpenGL and is designed to make it easy to write orthogonal components that
129 can render without stepping on each others toes.
130
131 As well aiming for a nice API, we think having a single library as opposed
132 to an API specification like OpenGL has a few advantages too; like being
133 able to paper over the inconsistencies/bugs of different OpenGL
134 implementations in a centralized place, not to mention the myriad of OpenGL
135 extensions. It also means we are in a better position to provide utility
136 APIs that help software developers since they only need to be implemented
137 once and there is no risk of inconsistency between implementations.
138
139 Having other backends, besides OpenGL, such as drm, Gallium or D3D are
140 options we are interested in for the future.
141
142 %files -n %{libname_pango}
143 %{_libdir}/libcogl-pango.so.%{pangomajor}{,.*}
144
145 #--------------------------------------------------------------------
146
147 %package -n %{girname}
148 Summary: GObject Introspection interface description for %{name}
149 Group: System/Libraries
150 Requires: %{libname} = %{version}-%{release}
151 Conflicts: %{mklibname %{name}-gir 0.0} < %{version}
152 Conflicts: %{mklibname clutter 1.0 0} < 1.7.2
153
154 %description -n %{girname}
155 GObject Introspection interface description for %{name}.
156
157 %files -n %{girname}
158 %{_libdir}/girepository-1.0/Cogl-%{gi_major}.typelib
159
160 #--------------------------------------------------------------------
161
162 %package -n %{girname_pango}
163 Summary: GObject Introspection interface description for %{name}-pango
164 Group: System/Libraries
165 Requires: %{libname_pango} = %{version}-%{release}
166 Conflicts: %{_lib}cogl-gir0.0 < %{version}
167
168 %description -n %{girname_pango}
169 GObject Introspection interface description for %{name}-pango.
170
171 %files -n %{girname_pango}
172 %{_libdir}/girepository-1.0/CoglPango-%{gi_major}.typelib
173
174 #--------------------------------------------------------------------
175
176 %package -n %{girname2}
177 Summary: GObject Introspection interface description for %{name}
178 Group: System/Libraries
179 Requires: %{libname} = %{version}-%{release}
180
181 %description -n %{girname2}
182 GObject Introspection interface description for %{name}.
183
184 %files -n %{girname2}
185 %{_libdir}/girepository-1.0/Cogl-%{gi_major2}.typelib
186
187 #--------------------------------------------------------------------
188
189 %package -n %{girname_pango2}
190 Summary: GObject Introspection interface description for %{name}-pango
191 Group: System/Libraries
192 Requires: %{libname_pango} = %{version}-%{release}
193
194 %description -n %{girname_pango2}
195 GObject Introspection interface description for %{name}-pango.
196
197 %files -n %{girname_pango2}
198 %{_libdir}/girepository-1.0/CoglPango-%{gi_major2}.typelib
199
200 #--------------------------------------------------------------------
201
202 %package -n %{develname}
203 Summary: %{name} development environment
204 Group: Development/C
205 Provides: %{name}-devel = %{version}-%{release}
206 Provides: lib%{name}-devel = %{version}-%{release}
207 Requires: %{libname_pango} = %{version}-%{release}
208 Requires: %{libname} = %{version}-%{release}
209 Requires: pkgconfig(gl)
210 Requires: %{girname} = %{version}-%{release}
211 Requires: %{girname2} = %{version}-%{release}
212 Requires: %{girname_pango} = %{version}-%{release}
213 Requires: %{girname_pango2} = %{version}-%{release}
214 Conflicts: %{mklibname -d clutter 1.0} <= 1.6.16
215
216 %description -n %{develname}
217 Header files and libraries for building and developing apps with %{name}.
218
219 %files -n %{develname}
220 %doc NEWS README ChangeLog
221 %{_includedir}/cogl
222 %{_libdir}/libcogl*.so
223 %{_libdir}/pkgconfig/*.pc
224 %{_datadir}/gir-1.0/Cogl*-%{gi_major}.gir
225 %{_datadir}/gir-1.0/Cogl*-%{gi_major2}.gir
226
227 #--------------------------------------------------------------------
228
229 %package doc
230 Summary: Documentation for %{name}
231 Group: Documentation
232 Requires: %{name}-devel = %{version}-%{release}
233 BuildArch: noarch
234
235 %description doc
236 This package contains documentation for %{name}.
237
238 %files doc
239 %{_datadir}/gtk-doc/html/cogl
240 %{_datadir}/gtk-doc/html/cogl-2.0-experimental
241
242 #--------------------------------------------------------------------
243
244 %prep
245 %autosetup -p1
246
247 %build
248 CFLAGS="%{optflags} -fPIC"
249
250 %configure2_5x \
251 --enable-cairo=yes \
252 --enable-gdk-pixbuf=yes \
253 --enable-cogl-pango=yes \
254 --enable-glx=yes \
255 --enable-gtk-doc \
256 --enable-introspection=yes \
257 --enable-examples-install=no \
258 --enable-wayland-egl-server=yes \
259 --enable-wayland-egl-platform=yes \
260 --enable-kms-egl-platform
261 %make
262
263 %install
264 %makeinstall_std
265
266 #Remove examples
267 rm -rf %{buildroot}%{_datadir}/%{name}/examples-data/
268
269 #Remove libtool archives.
270 find %{buildroot} -name "*.la" -delete
271
272 %find_lang %{name}

  ViewVC Help
Powered by ViewVC 1.1.30