3 %bcond_without dotnet # don't build mono plugin
5 %ifnarch %{ix86} %{x8664} alpha arm hppa ia64 mips ppc s390 s390x sparc sparcv9
12 %{?with_dotnet:%include /usr/lib/rpm/macros.mono}
13 Summary: Graphics library that outputs text instead of pixels
14 Summary(pl.UTF-8): Biblioteka graficzna wyświetlająca tekst zamiast pikseli
18 Release: 0.%{subver}.1
21 Source0: http://libcaca.zoy.org/files/%{name}-%{version}.%{subver}.tar.gz
22 # Source0-md5: 39e27737a51d0cf309675d948b1bde4e
23 URL: http://libcaca.zoy.org/
24 BuildRequires: OpenGL-devel
25 BuildRequires: autoconf >= 2.50
26 BuildRequires: automake
27 BuildRequires: doxygen
28 BuildRequires: freeglut-devel >= 2.0.0
29 BuildRequires: imlib2-devel
30 BuildRequires: libstdc++-devel
31 BuildRequires: libtool
32 %{?with_dotnet:BuildRequires: mono-csharp}
33 BuildRequires: rpmbuild(macros) >= 1.272
34 BuildRequires: rpmbuild(monoautodeps)
35 BuildRequires: ruby-devel
36 BuildRequires: slang-devel >= 2.0.0
37 # shouldn't these be in doxygen requirements?
38 BuildRequires: tetex-fonts-jknappen
39 BuildRequires: tetex-makeindex
40 BuildRequires: tetex-metafont
41 BuildRequires: xorg-lib-libX11-devel
42 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
44 %define specflags -fomit-frame-pointer
47 The libcaca library is a graphics library that outputs text instead of
48 pixels, so that it can work on older video cards or text terminals. It
49 is not unlike the famous AAlib library.
51 The differences with AAlib are the following:
52 - 16 available colours for character output (256 colour pairs)
53 - dithering of colour images
54 - basic sprite primitives
56 But libcaca also has the following limitations:
57 - no support for brightness, contrast, gamma
58 - unefficient character-choosing algorithms
59 - no raw keyboard support
61 %description -l pl.UTF-8
62 Biblioteka libcaca to biblioteka graficzna wyświetlająca tekst
63 zamiast pikseli, dzięki czemu może działać na starszych kartach
64 graficznych oraz terminalach tekstowych. Pod tym względem jest
65 podobna do słynnej biblioteki AAlib.
67 Różnice w stosunku do AAlib są następujące:
68 - 16 dostępnych kolorów dla znaków (256 par kolorów)
69 - dithering kolorowych obrazów
70 - proste kształty duszków (sprites)
72 Ale libcaca ma także następujące ograniczenia:
73 - brak obsługi jasności, kontrastu, korekcji gamma
74 - mało wydajne algorytmy wyboru znaków
75 - brak obsługi klawiatury w trybie surowym
78 Summary: GL plugin for libcaca library
79 Summary(pl.UTF-8): Wtyczka GL dla biblioteki libcaca
81 Requires: %{name} = %{version}-%{release}
82 Requires: freeglut >= 2.0.0
84 %description plugin-GL
85 GL plugin for libcaca library.
87 %description plugin-GL -l pl.UTF-8
88 Wtyczka GL dla biblioteki libcaca.
91 Summary: X11 plugin for libcaca library
92 Summary(pl.UTF-8): Wtyczka X11 dla biblioteki libcaca
94 Requires: %{name} = %{version}-%{release}
96 %description plugin-X11
97 X11 plugin for libcaca library.
99 %description plugin-X11 -l pl.UTF-8
100 Wtyczka X11 dla biblioteki libcaca.
103 Summary: libcaca-based image viewer and converter
104 Summary(pl.UTF-8): Przeglądarka i konwerter obrazków oparte na libcaca
105 Group: Applications/Graphics
106 Requires: %{name} = %{version}-%{release}
109 libcaca-based image viewer and converter. They use imlib2 to load
112 %description img -l pl.UTF-8
113 Przeglądarka i konwerter obrazków oparte na libcaca. Do wczytywania
114 obrazków używają biblioteki imlib2.
117 Summary: Header files for libcaca library
118 Summary(pl.UTF-8): Pliki nagłówkowe biblioteki libcaca
119 Group: Development/Libraries
120 Requires: %{name} = %{version}-%{release}
121 Requires: slang-devel >= 2.0.0
124 Header files for libcaca library.
126 %description devel -l pl.UTF-8
127 Pliki nagłówkowe biblioteki libcaca.
130 Summary: Static libcaca library
131 Summary(pl.UTF-8): Statyczna biblioteka libcaca
132 Group: Development/Libraries
133 Requires: %{name}-devel = %{version}-%{release}
136 Static libcaca library.
138 %description static -l pl.UTF-8
139 Statyczna biblioteka libcaca.
142 Summary: C++ bindings for libcaca
143 Summary(pl.UTF-8): Wiązania C++ do libcaca
145 Requires: %{name} = %{version}-%{release}
148 C++ bindings for libcaca.
150 %description c++ -l pl.UTF-8
151 Wiązania C++ do libcaca.
154 Summary: C++ bindings for libcaca - header files
155 Summary(pl.UTF-8): Wiązania C++ do libcaca - pliki nagłówkowe
156 Group: Development/Libraries
157 Requires: %{name}-c++ = %{version}-%{release}
158 Requires: %{name}-devel = %{version}-%{release}
159 Requires: libstdc++-devel
161 %description c++-devel
162 C++ bindings for libcaca - header files.
164 %description c++-devel -l pl.UTF-8
165 Wiązania C++ do libcaca - pliki nagłówkowe.
168 Summary: C++ bindings for libcaca - static libraries
169 Summary(pl.UTF-8): Wiązania C++ do libcaca - biblioteki statyczne
170 Group: Development/Libraries
171 Requires: %{name}-c++-devel = %{version}-%{release}
173 %description c++-static
174 C++ bindings for libcaca - static libraries.
176 %description c++-static -l pl.UTF-8
177 Wiązania C++ do libcaca - biblioteki statyczne.
179 %package -n dotnet-caca-sharp
180 Summary: C# bindings for libcaca
181 Summary(pl.UTF-8): Wiązania C# do libcaca
183 Requires: %{name} = %{version}-%{release}
186 %description -n dotnet-caca-sharp
187 C# bindings for libcaca.
189 %description -n dotnet-caca-sharp -l pl.UTF-8
190 Wiązania C# do libcaca.
192 %package -n ruby-caca
193 Summary: Ruby bindings for libcaca
194 Summary(pl.UTF-8): Wiązania języka Ruby do libcaca
195 Group: Development/Languages
196 Requires: %{name} = %{version}-%{release}
197 %{?ruby_ver_requires_eq}
199 %description -n ruby-caca
200 Ruby bindings for libcaca.
202 %description -n ruby-caca -l pl.UTF-8
203 Wiązania języka Ruby do libcaca.
206 %setup -q -n %{name}-%{version}.%{subver}
216 --%{!?with_dotnet:dis}%{?with_dotnet:en}able-csharp \
224 # ObjC file not used, use plain CC to link library to avoid C++/ObjC deps
229 rm -rf $RPM_BUILD_ROOT
232 DESTDIR=$RPM_BUILD_ROOT
234 # replace symlink by groff include
235 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/cacademo.1
236 echo '.so cacafire.1' > $RPM_BUILD_ROOT%{_mandir}/man1/cacademo.1
238 rm -f $RPM_BUILD_ROOT%{_libdir}/caca/*.{a,la}
239 rm -f $RPM_BUILD_ROOT%{ruby_sitearchdir}/*.{a,la}
240 # man3 pages have too common base names to be included
241 rm -f $RPM_BUILD_ROOT%{_mandir}/man3/*.3caca
242 rm -rf $RPM_BUILD_ROOT%{_docdir}/libcucul-dev
245 rm -rf $RPM_BUILD_ROOT
247 %post -p /sbin/ldconfig
248 %postun -p /sbin/ldconfig
250 %post c++ -p /sbin/ldconfig
251 %postun c++ -p /sbin/ldconfig
254 %defattr(644,root,root,755)
255 %doc AUTHORS COPYING ChangeLog NEWS NOTES README THANKS TODO
256 %attr(755,root,root) %{_bindir}/cacademo
257 %attr(755,root,root) %{_bindir}/cacafire
258 %attr(755,root,root) %{_bindir}/cacaplay
259 %attr(755,root,root) %{_bindir}/cacaserver
260 %attr(755,root,root) %{_libdir}/libcaca.so.*.*.*
261 %attr(755,root,root) %ghost %{_libdir}/libcaca.so.0
262 %attr(755,root,root) %{_libdir}/libcucul.so.*.*.*
263 %attr(755,root,root) %ghost %{_libdir}/libcucul.so.0
266 %{_mandir}/man1/cacademo.1*
267 %{_mandir}/man1/cacafire.1*
268 %{_mandir}/man1/cacaplay.1*
269 %{_mandir}/man1/cacaserver.1*
272 %defattr(644,root,root,755)
273 %attr(755,root,root) %{_libdir}/caca/libgl_plugin.so*
276 %defattr(644,root,root,755)
277 %attr(755,root,root) %{_libdir}/caca/libx11_plugin.so*
280 %defattr(644,root,root,755)
281 %attr(755,root,root) %{_bindir}/cacaview
282 %attr(755,root,root) %{_bindir}/img2txt
283 %{_mandir}/man1/cacaview.1*
284 %{_mandir}/man1/img2txt.1*
287 %defattr(644,root,root,755)
289 %attr(755,root,root) %{_bindir}/caca-config
290 %attr(755,root,root) %{_libdir}/libcaca.so
291 %attr(755,root,root) %{_libdir}/libcucul.so
292 %{_libdir}/libcaca.la
293 %{_libdir}/libcucul.la
294 %{_includedir}/caca.h
295 %{_includedir}/caca0.h
296 %{_includedir}/cucul.h
297 %{_pkgconfigdir}/caca.pc
298 %{_pkgconfigdir}/cucul.pc
299 %{_mandir}/man1/caca-config.1*
300 # man3 pages have too common base names to be included
303 %defattr(644,root,root,755)
305 %{_libdir}/libcucul.a
308 %defattr(644,root,root,755)
309 %attr(755,root,root) %{_libdir}/libcaca++.so.*.*.*
310 %attr(755,root,root) %ghost %{_libdir}/libcaca++.so.0
311 %attr(755,root,root) %{_libdir}/libcucul++.so.*.*.*
312 %attr(755,root,root) %ghost %{_libdir}/libcucul++.so.0
315 %defattr(644,root,root,755)
316 %attr(755,root,root) %{_libdir}/libcaca++.so
317 %attr(755,root,root) %{_libdir}/libcucul++.so
318 %{_libdir}/libcaca++.la
319 %{_libdir}/libcucul++.la
320 %{_includedir}/caca++.h
321 %{_includedir}/cucul++.h
324 %defattr(644,root,root,755)
325 %{_libdir}/libcaca++.a
326 %{_libdir}/libcucul++.a
329 %files -n dotnet-caca-sharp
330 %defattr(644,root,root,755)
331 %{_libdir}/caca-sharp
332 %{_libdir}/cucul-sharp
336 %defattr(644,root,root,755)
337 %{ruby_sitelibdir}/caca.rb
338 %attr(755,root,root) %{ruby_sitearchdir}/caca.so
339 %attr(755,root,root) %{ruby_sitearchdir}/cucul.so