]> git.pld-linux.org Git - packages/gtk+3.git/blob - gtk+3.spec
- x32 rebuild
[packages/gtk+3.git] / gtk+3.spec
1 #
2 # Conditional build:
3 %bcond_without  apidocs         # gtk-doc build
4 %bcond_without  cups            # CUPS support module
5 %bcond_without  papi            # PAPI support module
6 %bcond_without  broadway        # Broadway target
7 %bcond_without  wayland         # Wayland target
8 %bcond_without  static_libs     # static library build
9
10 Summary:        The GIMP Toolkit
11 Summary(cs.UTF-8):      Sada nástrojů pro GIMP
12 Summary(de.UTF-8):      Der GIMP-Toolkit
13 Summary(fi.UTF-8):      GIMP-työkalukokoelma
14 Summary(fr.UTF-8):      Le toolkit de GIMP
15 Summary(it.UTF-8):      Il toolkit per GIMP
16 Summary(pl.UTF-8):      GIMP Toolkit
17 Summary(tr.UTF-8):      GIMP ToolKit arayüz kitaplığı
18 Name:           gtk+3
19 Version:        3.14.8
20 Release:        2
21 License:        LGPL v2+
22 Group:          X11/Libraries
23 Source0:        http://ftp.gnome.org/pub/GNOME/sources/gtk+/3.14/gtk+-%{version}.tar.xz
24 # Source0-md5:  e46a12448b348d384b8bb29f0c22718f
25 Patch0:         %{name}-papi.patch
26 URL:            http://www.gtk.org/
27 BuildRequires:  at-spi2-atk-devel >= 2.6.0
28 BuildRequires:  atk-devel >= 1:2.12.0
29 BuildRequires:  autoconf >= 2.62
30 BuildRequires:  automake >= 1:1.11
31 BuildRequires:  cairo-gobject-devel >= 1.12.0
32 BuildRequires:  colord-devel >= 0.1.9
33 %if %{with cups} || %{with papi}
34 BuildRequires:  cups-devel >= 1:1.2
35 %endif
36 BuildRequires:  docbook-dtd412-xml
37 BuildRequires:  docbook-style-xsl
38 BuildRequires:  gdk-pixbuf2-devel >= 2.31.0
39 BuildRequires:  gettext-tools
40 BuildRequires:  glib2-devel >= 1:2.41.2
41 BuildRequires:  gobject-introspection-devel >= 1.39.0
42 %if %{with apidocs}
43 BuildRequires:  gtk-doc >= 1.20
44 BuildRequires:  gtk-doc-automake >= 1.20
45 %endif
46 BuildRequires:  json-glib-devel >= 1.0.0
47 BuildRequires:  libstdc++-devel
48 BuildRequires:  libtool >= 2:2.2.6
49 BuildRequires:  libxml2-progs >= 1:2.6.31
50 BuildRequires:  libxslt-progs >= 1.1.20
51 BuildRequires:  pango-devel >= 1:1.36.7
52 %{?with_papi:BuildRequires:     papi-devel}
53 BuildRequires:  perl-base
54 BuildRequires:  pkgconfig
55 BuildRequires:  rest-devel >= 0.7
56 BuildRequires:  rpm-pythonprov
57 BuildRequires:  rpmbuild(macros) >= 1.592
58 BuildRequires:  sqlite3-devel
59 BuildRequires:  tar >= 1:1.22
60 BuildRequires:  xorg-lib-libX11-devel >= 1.5.0
61 BuildRequires:  xorg-lib-libXcomposite-devel
62 BuildRequires:  xorg-lib-libXcursor-devel
63 BuildRequires:  xorg-lib-libXdamage-devel
64 BuildRequires:  xorg-lib-libXext-devel
65 BuildRequires:  xorg-lib-libXfixes-devel
66 BuildRequires:  xorg-lib-libXft-devel
67 BuildRequires:  xorg-lib-libXi-devel
68 BuildRequires:  xorg-lib-libXinerama-devel
69 BuildRequires:  xorg-lib-libXrandr-devel >= 1.3.0
70 BuildRequires:  xorg-lib-libXrender-devel
71 BuildRequires:  xz
72 %{?with_broadway:BuildRequires: zlib-devel}
73 %if %{with wayland}
74 # wayland-client, wayland-cursor
75 BuildRequires:  wayland-devel >= 1.5.91
76 BuildRequires:  xorg-lib-libxkbcommon-devel >= 0.2.0
77 %endif
78 Requires:       xorg-lib-libX11 >= 1.5.0
79 Requires(post,postun):  glib2 >= 1:2.41.2
80 Requires:       atk >= 1:2.12.0
81 Requires:       cairo-gobject >= 1.12.0
82 Requires:       gdk-pixbuf2 >= 2.31.0
83 Requires:       glib2 >= 1:2.41.2
84 Requires:       pango >= 1:1.36.7
85 Requires:       xorg-lib-libXi >= 1.3.0
86 Requires:       xorg-lib-libXrandr >= 1.3.0
87 %if %{with wayland}
88 Requires:       wayland >= 1.5.91
89 Requires:       xorg-lib-libxkbcommon >= 0.2.0
90 %endif
91 # evince is used as gtk-print-preview-command by default
92 Suggests:       evince-backend-pdf
93 %if %{with cups}
94 # cups is used by default if gtk+ is built with cups
95 Suggests:       %{name}-cups = %{version}-%{release}
96 %endif
97 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
98
99 %define         abivers 3.0.0
100
101 %if "%{_lib}" != "lib"
102 %define         libext          %(lib="%{_lib}"; echo ${lib#lib})
103 %define         pqext           -%{libext}
104 %else
105 %define         pqext           %{nil}
106 %endif
107
108 %description
109 GTK+, which stands for the GIMP ToolKit, is a library for creating
110 graphical user interfaces for the X Window System. It is designed to
111 be small, efficient, and flexible. GTK+ is written in C with a very
112 object-oriented approach. GDK (part of GTK+) is a drawing toolkit
113 which provides a thin layer over Xlib to help automate things like
114 dealing with different color depths, and GTK is a widget set for
115 creating user interfaces.
116
117 %description -l cs.UTF-8
118 Knihovny X původně psané pro GIMP, které nyní používá také řada jiných
119 programů.
120
121 %description -l da.UTF-8
122 X biblioteker, oprindeligt udviklet til GIMP, men anvendes nu af flere
123 forskellige programmer.
124
125 %description -l de.UTF-8
126 Die X-Libraries, die ursprünglich für GIMP geschrieben wurden und
127 mittlerweile für eine ganze Reihe anderer Programme benutzt werden.
128
129 %description -l fr.UTF-8
130 X-kirjastot, jotka alunperin kirjoitettiin GIMP:lle, mutta joita
131 käytetään nyt myös useissa muissakin ohjelmissa.
132
133 %description -l it.UTF-8
134 Libreria X scritta per GIMP. Viene usata da diversi programmi.
135
136 %description -l pl.UTF-8
137 GTK+, która to biblioteka stała się podstawą programu GIMP, zawiera
138 funkcje do tworzenia graficznego interfejsu użytkownika pod X Window.
139 Była tworzona z założeniem żeby była mała, efektywna i wygodna. GTK+
140 jest napisane w C z podejściem zorientowanym bardzo obiektowo. GDK
141 (część GTK+) jest warstwą pośrednią pomiędzy Xlib a właściwym GTK
142 zapewniającą pracę niezależnie od głębi koloru (ilości bitów na
143 piksel). GTK (druga część GTK+) jest natomiast już zbiorem różnego
144 rodzaju kontrolek służących do tworzenia interfejsu użytkownika.
145
146 %description -l tr.UTF-8
147 Başlangıçta GIMP için yazılmış X kitaplıkları. Şu anda başka
148 programlarca da kullanılmaktadır.
149
150 %package -n gtk-update-icon-cache
151 Summary:        Utility to update icon cache used by GTK+ library
152 Summary(pl.UTF-8):      Narzędzie do uaktualniania cache'a ikon używanego przez bibliotekę GTK+
153 Group:          Applications/System
154 Requires:       gdk-pixbuf2 >= 2.31.0
155 Requires:       glib2 >= 1:2.41.2
156
157 %description -n gtk-update-icon-cache
158 Utility to update icon cache used by GTK+ library.
159
160 %description -n gtk-update-icon-cache -l pl.UTF-8
161 Narzędzie do uaktualniania cache'a ikon używanego przez bibliotekę
162 GTK+.
163
164 %package devel
165 Summary:        GTK+ header files and development documentation
166 Summary(cs.UTF-8):      Sada nástrojů GIMP a kreslící kit GIMP
167 Summary(da.UTF-8):      GIMP Toolkit og GIMP Tegnings-værktøj
168 Summary(de.UTF-8):      GIMP Toolkit und GIMP Drawing Kit
169 Summary(fi.UTF-8):      Gimp-työkalukokoelma ja Gimp-piirtotyökalut
170 Summary(fr.UTF-8):      Toolkit de GIMP (GTK) et Kit de dessin de GIMP (GDK)
171 Summary(it.UTF-8):      GIMP Toolkit and GIMP Drawing Kit
172 Summary(pl.UTF-8):      Pliki nagłówkowe i dokumentacja do GTK+
173 Summary(tr.UTF-8):      GIMP araç takımı ve çizim takımı
174 Group:          X11/Development/Libraries
175 Requires:       %{name} = %{version}-%{release}
176 Requires:       at-spi2-atk-devel >= 2.6.0
177 Requires:       atk-devel >= 1:2.12.0
178 Requires:       cairo-gobject-devel >= 1.12.0
179 Requires:       gdk-pixbuf2-devel >= 2.31.0
180 Requires:       glib2-devel >= 1:2.41.2
181 Requires:       pango-devel >= 1:1.36.7
182 Requires:       shared-mime-info
183
184 %description devel
185 Header files and development documentation for the GTK+ libraries.
186
187 %description devel -l pl.UTF-8
188 Pliki nagłówkowe i dokumentacja do bibliotek GTK+.
189
190 %package static
191 Summary:        GTK+ static libraries
192 Summary(pl.UTF-8):      Biblioteki statyczne GTK+
193 Group:          X11/Development/Libraries
194 Requires:       %{name}-devel = %{version}-%{release}
195
196 %description static
197 GTK+ static libraries.
198
199 %description static -l pl.UTF-8
200 Biblioteki statyczne GTK+
201
202 %package apidocs
203 Summary:        GTK+ API documentation
204 Summary(pl.UTF-8):      Dokumentacja API GTK+
205 Group:          Documentation
206 Requires:       gtk-doc-common
207 %if "%{_rpmversion}" >= "5"
208 BuildArch:      noarch
209 %endif
210
211 %description apidocs
212 GTK+ API documentation.
213
214 %description apidocs -l pl.UTF-8
215 Dokumentacja API GTK+.
216
217 %package examples
218 Summary:        GTK+ - example programs
219 Summary(pl.UTF-8):      GTK+ - programy przykładowe
220 Group:          X11/Development/Libraries
221 Requires(post,postun):  glib2 >= 1:2.41.2
222 Requires:       %{name}-devel = %{version}-%{release}
223
224 %description examples
225 GTK+ - example programs.
226
227 %description examples -l pl.UTF-8
228 GTK+ - przykładowe programy.
229
230 %package cups
231 Summary:        CUPS printing module for GTK+
232 Summary(pl.UTF-8):      Moduł GTK+ do drukowania przez CUPS
233 Group:          X11/Libraries
234 Requires:       %{name} = %{version}-%{release}
235
236 %description cups
237 CUPS printing module for GTK+.
238
239 %description cups -l pl.UTF-8
240 Moduł GTK+ do drukowania przez CUPS.
241
242 %package papi
243 Summary:        PAPI printing module for GTK+
244 Summary(pl.UTF-8):      Moduł GTK+ do drukowania przez PAPI
245 Group:          X11/Libraries
246 Requires:       %{name} = %{version}-%{release}
247 Requires:       papi
248
249 %description papi
250 PAPI printing module for GTK+.
251
252 %description papi -l pl.UTF-8
253 Moduł GTK+ do drukowania przez PAPI.
254
255 %prep
256 %setup -q -n gtk+-%{version}
257 %patch0 -p1
258
259 # for packaging clean examples
260 # TODO: add am patch to do it like demos/gtk-demo via some configurable dir
261 # NOTE: make install so far installs only demos/gtk-demo
262 install -d _examples
263 cp -a demos examples _examples
264
265 # upstream used too new wayland for make dist in 3.10.6 - force regeneration
266 touch gdk/wayland/protocol/gtk-shell.xml
267
268 %build
269 CPPFLAGS="%{rpmcppflags}%{?with_papi: -I/usr/include/papi}"
270 %{?with_apidocs:%{__gtkdocize}}
271 %{__libtoolize}
272 %{__aclocal} -I m4
273 %{__autoconf}
274 %{__autoheader}
275 %{__automake}
276 %configure \
277         --disable-silent-rules \
278         %{__disable cups} \
279         %{!?with_papi:--disable-papi} \
280         %{?debug:--enable-debug=yes} \
281         %{__enable_disable apidocs gtk-doc} \
282         --enable-man \
283         %{__enable_disable static_libs static} \
284         %{?with_broadway:--enable-broadway-backend} \
285         %{?with_wayland:--enable-wayland-backend} \
286         --enable-x11-backend \
287         --enable-xinerama \
288         --enable-xkb \
289         --with-html-dir=%{_gtkdocdir}
290
291 %{__make} \
292         democodedir=%{_examplesdir}/%{name}-%{version}/demos/gtk-demo
293
294 %install
295 rm -rf $RPM_BUILD_ROOT
296 install -d $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/%{abivers}/engines
297 install -d $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/%{abivers}/theming-engines
298
299 %{__make} install \
300         democodedir=%{_examplesdir}/%{name}-%{version}/demos/gtk-demo \
301         DESTDIR=$RPM_BUILD_ROOT
302
303 touch $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/%{abivers}/gtk.immodules
304 install -d $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/modules
305
306 install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
307 cp -a _examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
308
309 # shut up check-files (static modules and *.la for modules)
310 %{__rm} -r $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/%{abivers}/*/*.la \
311         %{?with_static_libs:$RPM_BUILD_ROOT%{_libdir}/gtk-3.0/%{abivers}/*/*.a}
312
313 %if "%{_lib}" != "lib"
314 # We need to have 32-bit and 64-bit binaries as they have hardcoded LIBDIR.
315 # (needed when multilib is used)
316 mv $RPM_BUILD_ROOT%{_bindir}/gtk-query-immodules-3.0{,%{pqext}}
317 %endif
318
319 %{__mv} $RPM_BUILD_ROOT%{_localedir}/{sr@ije,sr@ijekavian}
320 # unsupported by glibc
321 %{__rm} -r $RPM_BUILD_ROOT%{_localedir}/io
322
323 %{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la
324
325 %find_lang %{name} --all-name
326
327 %{!?with_apidocs:%{__rm} -r $RPM_BUILD_ROOT%{_gtkdocdir}/{gdk3,gtk3}}
328
329 %clean
330 rm -rf $RPM_BUILD_ROOT
331
332 %post
333 /sbin/ldconfig
334 %glib_compile_schemas
335 umask 022
336 %{_bindir}/gtk-query-immodules-3.0%{pqext} --update-cache
337 exit 0
338
339 %postun
340 /sbin/ldconfig
341 if [ "$1" != "0" ]; then
342         umask 022
343         %{_bindir}/gtk-query-immodules-3.0%{pqext} --update-cache
344 else
345         %glib_compile_schemas
346 fi
347 exit 0
348
349 %post examples
350 %glib_compile_schemas
351
352 %postun examples
353 %glib_compile_schemas
354
355 %files -f %{name}.lang
356 %defattr(644,root,root,755)
357 %doc AUTHORS NEWS README
358 %{?with_broadway:%attr(755,root,root) %{_bindir}/broadwayd}
359 %attr(755,root,root) %{_bindir}/gtk-launch
360 %attr(755,root,root) %{_bindir}/gtk-query-immodules-3.0%{pqext}
361 %attr(755,root,root) %{_libdir}/libgailutil-3.so.*.*.*
362 %attr(755,root,root) %ghost %{_libdir}/libgailutil-3.so.0
363 %attr(755,root,root) %{_libdir}/libgdk-3.so.*.*.*
364 %attr(755,root,root) %ghost %{_libdir}/libgdk-3.so.0
365 %attr(755,root,root) %{_libdir}/libgtk-3.so.*.*.*
366 %attr(755,root,root) %ghost %{_libdir}/libgtk-3.so.0
367
368 %dir %{_libdir}/gtk-3.0
369 %dir %{_libdir}/gtk-3.0/modules
370 %dir %{_libdir}/gtk-3.0/%{abivers}
371 %dir %{_libdir}/gtk-3.0/%{abivers}/engines
372 %dir %{_libdir}/gtk-3.0/%{abivers}/theming-engines
373 %dir %{_libdir}/gtk-3.0/%{abivers}/immodules
374 %dir %{_libdir}/gtk-3.0/%{abivers}/printbackends
375 %ghost %{_libdir}/gtk-3.0/%{abivers}/gtk.immodules
376 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/printbackends/libprintbackend-cloudprint.so
377 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/printbackends/libprintbackend-file.so
378 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/printbackends/libprintbackend-lpr.so
379 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-am-et.so
380 %{?with_broadway:%attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-broadway.so}
381 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-cedilla.so
382 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-cyrillic-translit.so
383 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-inuktitut.so
384 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-ipa.so
385 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-multipress.so
386 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-thai.so
387 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-ti-er.so
388 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-ti-et.so
389 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-viqr.so
390 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/immodules/im-xim.so
391 %{_libdir}/girepository-1.0/Gdk-3.0.typelib
392 %{_libdir}/girepository-1.0/GdkX11-3.0.typelib
393 %{_libdir}/girepository-1.0/Gtk-3.0.typelib
394
395 %dir %{_sysconfdir}/gtk-3.0
396 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/gtk-3.0/im-multipress.conf
397 %{_datadir}/glib-2.0/schemas/org.gtk.Settings.ColorChooser.gschema.xml
398 %{_datadir}/glib-2.0/schemas/org.gtk.Settings.Debug.gschema.xml
399 %{_datadir}/glib-2.0/schemas/org.gtk.Settings.FileChooser.gschema.xml
400 %dir %{_datadir}/themes/Default/gtk-3.0
401 %{_datadir}/themes/Default/gtk-3.0/gtk-keys.css
402 %dir %{_datadir}/themes/Emacs
403 %dir %{_datadir}/themes/Emacs/gtk-3.0
404 %{_datadir}/themes/Emacs/gtk-3.0/gtk-keys.css
405 %{?with_broadway:%{_mandir}/man1/broadwayd.1*}
406 %{_mandir}/man1/gtk-launch.1*
407 %{_mandir}/man1/gtk-query-immodules-3.0.1*
408
409 %files -n gtk-update-icon-cache
410 %defattr(644,root,root,755)
411 %attr(755,root,root) %{_bindir}/gtk-encode-symbolic-svg
412 %attr(755,root,root) %{_bindir}/gtk-update-icon-cache
413 %{_mandir}/man1/gtk-encode-symbolic-svg.1*
414 %{_mandir}/man1/gtk-update-icon-cache.1*
415
416 %files devel
417 %defattr(644,root,root,755)
418 %doc ChangeLog
419 %attr(755,root,root) %{_libdir}/libgailutil-3.so
420 %attr(755,root,root) %{_libdir}/libgdk-3.so
421 %attr(755,root,root) %{_libdir}/libgtk-3.so
422 %{_includedir}/gail-3.0
423 %{_includedir}/gtk-3.0
424 %{_aclocaldir}/gtk-3.0.m4
425 %{_pkgconfigdir}/gail-3.0.pc
426 %{_pkgconfigdir}/gdk-3.0.pc
427 %{_pkgconfigdir}/gdk-x11-3.0.pc
428 %{_pkgconfigdir}/gtk+-3.0.pc
429 %{_pkgconfigdir}/gtk+-unix-print-3.0.pc
430 %{_pkgconfigdir}/gtk+-x11-3.0.pc
431 %if %{with broadway}
432 %{_pkgconfigdir}/gdk-broadway-3.0.pc
433 %{_pkgconfigdir}/gtk+-broadway-3.0.pc
434 %endif
435 %if %{with wayland}
436 %{_pkgconfigdir}/gdk-wayland-3.0.pc
437 %{_pkgconfigdir}/gtk+-wayland-3.0.pc
438 %endif
439 %{_datadir}/gtk-3.0
440 %{_datadir}/gir-1.0/Gdk-3.0.gir
441 %{_datadir}/gir-1.0/GdkX11-3.0.gir
442 %{_datadir}/gir-1.0/Gtk-3.0.gir
443
444 %if %{with static_libs}
445 %files static
446 %defattr(644,root,root,755)
447 %{_libdir}/libgailutil-3.a
448 %{_libdir}/libgdk-3.a
449 %{_libdir}/libgtk-3.a
450 %endif
451
452 %if %{with apidocs}
453 %files apidocs
454 %defattr(644,root,root,755)
455 %{_gtkdocdir}/gail-libgail-util3
456 %{_gtkdocdir}/gdk3
457 %{_gtkdocdir}/gtk3
458 %endif
459
460 %files examples
461 %defattr(644,root,root,755)
462 %attr(755,root,root) %{_bindir}/gtk3-demo
463 %attr(755,root,root) %{_bindir}/gtk3-demo-application
464 %attr(755,root,root) %{_bindir}/gtk3-icon-browser
465 %attr(755,root,root) %{_bindir}/gtk3-widget-factory
466 %{_datadir}/glib-2.0/schemas/org.gtk.Demo.gschema.xml
467 %{_datadir}/glib-2.0/schemas/org.gtk.exampleapp.gschema.xml
468 %{_desktopdir}/gtk3-demo.desktop
469 %{_desktopdir}/gtk3-icon-browser.desktop
470 %{_desktopdir}/gtk3-widget-factory.desktop
471 %{_iconsdir}/hicolor/*/apps/gtk3-demo.png
472 %{_iconsdir}/hicolor/*/apps/gtk3-widget-factory.png
473 %{_mandir}/man1/gtk3-demo.1*
474 %{_mandir}/man1/gtk3-icon-browser.1*
475 %{_mandir}/man1/gtk3-widget-factory.1*
476 %{_examplesdir}/%{name}-%{version}
477
478 %if %{with cups}
479 %files cups
480 %defattr(644,root,root,755)
481 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/printbackends/libprintbackend-cups.so
482 %endif
483
484 %if %{with papi}
485 %files papi
486 %defattr(644,root,root,755)
487 %attr(755,root,root) %{_libdir}/gtk-3.0/%{abivers}/printbackends/libprintbackend-papi.so
488 %endif
This page took 0.084913 seconds and 3 git commands to generate.