]> git.pld-linux.org Git - packages/libcaca.git/blob - libcaca.spec
- img subpackage doesn't require same EVR, there are apps only so use autodep
[packages/libcaca.git] / libcaca.spec
1 #
2 # Conditional build:
3 %bcond_without  dotnet          # don't build mono plugin
4 #
5 %ifnarch %{ix86} %{x8664} alpha arm hppa ia64 mips ppc s390 s390x sparc sparcv9
6 %undefine       with_dotnet
7 %endif
8 %ifarch i386
9 %undefine       with_dotnet
10 %endif
11
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
15 Name:           libcaca
16 Version:        0.99
17 %define subver  beta16
18 Release:        0.%{subver}.1
19 License:        WTFPL
20 Group:          Libraries
21 Source0:        http://libcaca.zoy.org/files/libcaca/%{name}-%{version}.%{subver}.tar.gz
22 # Source0-md5:  3953bf4a803747b63a99f50125563151
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)
43
44 %define         specflags       -fomit-frame-pointer
45
46 %description
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.
50
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
55
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
60
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.
66
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)
71
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
76
77 %package plugin-GL
78 Summary:        GL plugin for libcaca library
79 Summary(pl.UTF-8):      Wtyczka GL dla biblioteki libcaca
80 Group:          Libraries
81 Requires:       %{name} = %{version}-%{release}
82 Requires:       freeglut >= 2.0.0
83
84 %description plugin-GL
85 GL plugin for libcaca library.
86
87 %description plugin-GL -l pl.UTF-8
88 Wtyczka GL dla biblioteki libcaca.
89
90 %package plugin-X11
91 Summary:        X11 plugin for libcaca library
92 Summary(pl.UTF-8):      Wtyczka X11 dla biblioteki libcaca
93 Group:          Libraries
94 Requires:       %{name} = %{version}-%{release}
95
96 %description plugin-X11
97 X11 plugin for libcaca library.
98
99 %description plugin-X11 -l pl.UTF-8
100 Wtyczka X11 dla biblioteki libcaca.
101
102 %package img
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
107 %description img
108 libcaca-based image viewer and converter. They use imlib2 to load
109 images.
110
111 %description img -l pl.UTF-8
112 Przeglądarka i konwerter obrazków oparte na libcaca. Do wczytywania
113 obrazków używają biblioteki imlib2.
114
115 %package devel
116 Summary:        Header files for libcaca library
117 Summary(pl.UTF-8):      Pliki nagłówkowe biblioteki libcaca
118 Group:          Development/Libraries
119 Requires:       %{name} = %{version}-%{release}
120 Requires:       slang-devel >= 2.0.0
121
122 %description devel
123 Header files for libcaca library.
124
125 %description devel -l pl.UTF-8
126 Pliki nagłówkowe biblioteki libcaca.
127
128 %package static
129 Summary:        Static libcaca library
130 Summary(pl.UTF-8):      Statyczna biblioteka libcaca
131 Group:          Development/Libraries
132 Requires:       %{name}-devel = %{version}-%{release}
133
134 %description static
135 Static libcaca library.
136
137 %description static -l pl.UTF-8
138 Statyczna biblioteka libcaca.
139
140 %package c++
141 Summary:        C++ bindings for libcaca
142 Summary(pl.UTF-8):      Wiązania C++ do libcaca
143 Group:          Libraries
144 Requires:       %{name} = %{version}-%{release}
145
146 %description c++
147 C++ bindings for libcaca.
148
149 %description c++ -l pl.UTF-8
150 Wiązania C++ do libcaca.
151
152 %package c++-devel
153 Summary:        C++ bindings for libcaca - header files
154 Summary(pl.UTF-8):      Wiązania C++ do libcaca - pliki nagłówkowe
155 Group:          Development/Libraries
156 Requires:       %{name}-c++ = %{version}-%{release}
157 Requires:       %{name}-devel = %{version}-%{release}
158 Requires:       libstdc++-devel
159
160 %description c++-devel
161 C++ bindings for libcaca - header files.
162
163 %description c++-devel -l pl.UTF-8
164 Wiązania C++ do libcaca - pliki nagłówkowe.
165
166 %package c++-static
167 Summary:        C++ bindings for libcaca - static libraries
168 Summary(pl.UTF-8):      Wiązania C++ do libcaca - biblioteki statyczne
169 Group:          Development/Libraries
170 Requires:       %{name}-c++-devel = %{version}-%{release}
171
172 %description c++-static
173 C++ bindings for libcaca - static libraries.
174
175 %description c++-static -l pl.UTF-8
176 Wiązania C++ do libcaca - biblioteki statyczne.
177
178 %package -n dotnet-caca-sharp
179 Summary:        C# bindings for libcaca
180 Summary(pl.UTF-8):      Wiązania C# do libcaca
181 Group:          Libraries
182 Requires:       %{name} = %{version}-%{release}
183 Requires:       mono
184
185 %description -n dotnet-caca-sharp
186 C# bindings for libcaca.
187
188 %description -n dotnet-caca-sharp -l pl.UTF-8
189 Wiązania C# do libcaca.
190
191 %package -n ruby-caca
192 Summary:        Ruby bindings for libcaca
193 Summary(pl.UTF-8):      Wiązania języka Ruby do libcaca
194 Group:          Development/Languages
195 Requires:       %{name} = %{version}-%{release}
196 %{?ruby_ver_requires_eq}
197
198 %description -n ruby-caca
199 Ruby bindings for libcaca.
200
201 %description -n ruby-caca -l pl.UTF-8
202 Wiązania języka Ruby do libcaca.
203
204 %prep
205 %setup -q -n %{name}-%{version}.%{subver}
206
207 %build
208 %{__libtoolize}
209 %{__aclocal}
210 %{__autoconf}
211 %{__autoheader}
212 %{__automake}
213 # NOTE: ncurses driver builds, but there's no color when linked against
214 # ABI 6. While caca defaults to ncurses this must be disabled until fixed.
215 %configure \
216         --disable-ncurses \
217         --%{!?with_dotnet:dis}%{?with_dotnet:en}able-csharp \
218         --enable-cxx \
219         --enable-gl \
220         --enable-plugins \
221         --enable-slang \
222         --enable-x11
223
224
225 # ObjC file not used, use plain CC to link library to avoid C++/ObjC deps
226 %{__make} \
227         OBJC="%{__cc}"
228
229 %install
230 rm -rf $RPM_BUILD_ROOT
231
232 %{__make} install \
233         DESTDIR=$RPM_BUILD_ROOT
234
235 # replace symlink by groff include
236 rm -f $RPM_BUILD_ROOT%{_mandir}/man1/cacademo.1
237 echo '.so cacafire.1' > $RPM_BUILD_ROOT%{_mandir}/man1/cacademo.1
238
239 rm -f $RPM_BUILD_ROOT%{_libdir}/caca/*.{a,la}
240 rm -f $RPM_BUILD_ROOT%{ruby_sitearchdir}/*.{a,la}
241 # man3 pages have too common base names to be included
242 rm -f $RPM_BUILD_ROOT%{_mandir}/man3/*.3caca
243 rm -rf $RPM_BUILD_ROOT%{_docdir}/libcucul-dev
244
245 %clean
246 rm -rf $RPM_BUILD_ROOT
247
248 %post   -p /sbin/ldconfig
249 %postun -p /sbin/ldconfig
250
251 %post   c++ -p /sbin/ldconfig
252 %postun c++ -p /sbin/ldconfig
253
254 %files
255 %defattr(644,root,root,755)
256 %doc AUTHORS COPYING ChangeLog NEWS NOTES README THANKS
257 %attr(755,root,root) %{_bindir}/cacademo
258 %attr(755,root,root) %{_bindir}/cacafire
259 %attr(755,root,root) %{_bindir}/cacaplay
260 %attr(755,root,root) %{_bindir}/cacaserver
261 %attr(755,root,root) %{_libdir}/libcaca.so.*.*.*
262 %attr(755,root,root) %ghost %{_libdir}/libcaca.so.0
263 %attr(755,root,root) %{_libdir}/libcucul.so.*.*.*
264 %attr(755,root,root) %ghost %{_libdir}/libcucul.so.0
265 %dir %{_libdir}/caca
266 %{_datadir}/%{name}
267 %{_mandir}/man1/cacademo.1*
268 %{_mandir}/man1/cacafire.1*
269 %{_mandir}/man1/cacaplay.1*
270 %{_mandir}/man1/cacaserver.1*
271
272 %files plugin-GL
273 %defattr(644,root,root,755)
274 %attr(755,root,root) %{_libdir}/caca/libgl_plugin.so*
275
276 %files plugin-X11
277 %defattr(644,root,root,755)
278 %attr(755,root,root) %{_libdir}/caca/libx11_plugin.so*
279
280 %files img
281 %defattr(644,root,root,755)
282 %attr(755,root,root) %{_bindir}/cacaview
283 %attr(755,root,root) %{_bindir}/img2txt
284 %{_mandir}/man1/cacaview.1*
285 %{_mandir}/man1/img2txt.1*
286
287 %files devel
288 %defattr(644,root,root,755)
289 %doc doc/html/*
290 %attr(755,root,root) %{_bindir}/caca-config
291 %attr(755,root,root) %{_libdir}/libcaca.so
292 %attr(755,root,root) %{_libdir}/libcucul.so
293 %{_libdir}/libcaca.la
294 %{_libdir}/libcucul.la
295 %{_includedir}/caca.h
296 %{_includedir}/caca0.h
297 %{_includedir}/cucul.h
298 %{_includedir}/cucul_types.h
299 %{_pkgconfigdir}/caca.pc
300 %{_pkgconfigdir}/cucul.pc
301 %{_mandir}/man1/caca-config.1*
302 # man3 pages have too common base names to be included
303
304 %files static
305 %defattr(644,root,root,755)
306 %{_libdir}/libcaca.a
307 %{_libdir}/libcucul.a
308
309 %files c++
310 %defattr(644,root,root,755)
311 %attr(755,root,root) %{_libdir}/libcaca++.so.*.*.*
312 %attr(755,root,root) %ghost %{_libdir}/libcaca++.so.0
313 %attr(755,root,root) %{_libdir}/libcucul++.so.*.*.*
314 %attr(755,root,root) %ghost %{_libdir}/libcucul++.so.0
315
316 %files c++-devel
317 %defattr(644,root,root,755)
318 %attr(755,root,root) %{_libdir}/libcaca++.so
319 %attr(755,root,root) %{_libdir}/libcucul++.so
320 %{_libdir}/libcaca++.la
321 %{_libdir}/libcucul++.la
322 %{_includedir}/caca++.h
323 %{_includedir}/cucul++.h
324 %{_pkgconfigdir}/caca++.pc
325 %{_pkgconfigdir}/cucul++.pc
326
327 %files c++-static
328 %defattr(644,root,root,755)
329 %{_libdir}/libcaca++.a
330 %{_libdir}/libcucul++.a
331
332 %if %{with dotnet}
333 %files -n dotnet-caca-sharp
334 %defattr(644,root,root,755)
335 %{_libdir}/caca-sharp
336 %{_libdir}/cucul-sharp
337 %endif
338
339 %files -n ruby-caca
340 %defattr(644,root,root,755)
341 %{ruby_sitelibdir}/caca.rb
342 %attr(755,root,root) %{ruby_sitearchdir}/caca.so
343 %attr(755,root,root) %{ruby_sitearchdir}/cucul.so
This page took 0.614396 seconds and 4 git commands to generate.