]> git.pld-linux.org Git - packages/libcaca.git/blob - libcaca.spec
- this is not dotnet app, introduce without dotnet bcond
[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 %if %{with dotnet}
13 %include        /usr/lib/rpm/macros.mono
14 %endif
15 Summary:        Graphics library that outputs text instead of pixels
16 Summary(pl.UTF-8):      Biblioteka graficzna wyświetlająca tekst zamiast pikseli
17 Name:           libcaca
18 Version:        0.99
19 %define subver  beta13
20 Release:        0.%{subver}.1
21 License:        WTFPL
22 Group:          Libraries
23 Source0:        http://libcaca.zoy.org/files/%{name}-%{version}.%{subver}.tar.gz
24 # Source0-md5:  39e27737a51d0cf309675d948b1bde4e
25 URL:            http://libcaca.zoy.org/
26 BuildRequires:  OpenGL-devel
27 BuildRequires:  autoconf >= 2.50
28 BuildRequires:  automake
29 BuildRequires:  doxygen
30 BuildRequires:  freeglut-devel >= 2.0.0
31 BuildRequires:  imlib2-devel
32 BuildRequires:  libstdc++-devel
33 BuildRequires:  libtool
34 %{?with_dotnet:BuildRequires:   mono-csharp}
35 BuildRequires:  rpmbuild(macros) >= 1.272
36 BuildRequires:  rpmbuild(monoautodeps)
37 BuildRequires:  ruby-devel
38 BuildRequires:  slang-devel >= 2.0.0
39 # shouldn't these be in doxygen requirements?
40 BuildRequires:  tetex-fonts-jknappen
41 BuildRequires:  tetex-makeindex
42 BuildRequires:  tetex-metafont
43 BuildRequires:  xorg-lib-libX11-devel
44 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
45
46 %define         specflags       -fomit-frame-pointer
47
48 %description
49 The libcaca library is a graphics library that outputs text instead of
50 pixels, so that it can work on older video cards or text terminals. It
51 is not unlike the famous AAlib library.
52
53 The differences with AAlib are the following:
54 - 16 available colours for character output (256 colour pairs)
55 - dithering of colour images
56 - basic sprite primitives
57
58 But libcaca also has the following limitations:
59 - no support for brightness, contrast, gamma
60 - unefficient character-choosing algorithms
61 - no raw keyboard support
62
63 %description -l pl.UTF-8
64 Biblioteka libcaca to biblioteka graficzna wyświetlająca tekst
65 zamiast pikseli, dzięki czemu może działać na starszych kartach
66 graficznych oraz terminalach tekstowych. Pod tym względem jest
67 podobna do słynnej biblioteki AAlib.
68
69 Różnice w stosunku do AAlib są następujące:
70 - 16 dostępnych kolorów dla znaków (256 par kolorów)
71 - dithering kolorowych obrazów
72 - proste kształty duszków (sprites)
73
74 Ale libcaca ma także następujące ograniczenia:
75 - brak obsługi jasności, kontrastu, korekcji gamma
76 - mało wydajne algorytmy wyboru znaków
77 - brak obsługi klawiatury w trybie surowym
78
79 %package plugin-GL
80 Summary:        GL plugin for libcaca library
81 Summary(pl.UTF-8):      Wtyczka GL dla biblioteki libcaca
82 Group:          Libraries
83 Requires:       %{name} = %{version}-%{release}
84 Requires:       freeglut >= 2.0.0
85
86 %description plugin-GL
87 GL plugin for libcaca library.
88
89 %description plugin-GL -l pl.UTF-8
90 Wtyczka GL dla biblioteki libcaca.
91
92 %package plugin-X11
93 Summary:        X11 plugin for libcaca library
94 Summary(pl.UTF-8):      Wtyczka X11 dla biblioteki libcaca
95 Group:          Libraries
96 Requires:       %{name} = %{version}-%{release}
97
98 %description plugin-X11
99 X11 plugin for libcaca library.
100
101 %description plugin-X11 -l pl.UTF-8
102 Wtyczka X11 dla biblioteki libcaca.
103
104 %package img
105 Summary:        libcaca-based image viewer and converter
106 Summary(pl.UTF-8):      Przeglądarka i konwerter obrazków oparte na libcaca
107 Group:          Applications/Graphics
108 Requires:       %{name} = %{version}-%{release}
109
110 %description img
111 libcaca-based image viewer and converter. They use imlib2 to load
112 images.
113
114 %description img -l pl.UTF-8
115 Przeglądarka i konwerter obrazków oparte na libcaca. Do wczytywania
116 obrazków używają biblioteki imlib2.
117
118 %package devel
119 Summary:        Header files for libcaca library
120 Summary(pl.UTF-8):      Pliki nagłówkowe biblioteki libcaca
121 Group:          Development/Libraries
122 Requires:       %{name} = %{version}-%{release}
123 Requires:       slang-devel >= 2.0.0
124
125 %description devel
126 Header files for libcaca library.
127
128 %description devel -l pl.UTF-8
129 Pliki nagłówkowe biblioteki libcaca.
130
131 %package static
132 Summary:        Static libcaca library
133 Summary(pl.UTF-8):      Statyczna biblioteka libcaca
134 Group:          Development/Libraries
135 Requires:       %{name}-devel = %{version}-%{release}
136
137 %description static
138 Static libcaca library.
139
140 %description static -l pl.UTF-8
141 Statyczna biblioteka libcaca.
142
143 %package c++
144 Summary:        C++ bindings for libcaca
145 Summary(pl.UTF-8):      Wiązania C++ do libcaca
146 Group:          Libraries
147 Requires:       %{name} = %{version}-%{release}
148
149 %description c++
150 C++ bindings for libcaca.
151
152 %description c++ -l pl.UTF-8
153 Wiązania C++ do libcaca.
154
155 %package c++-devel
156 Summary:        C++ bindings for libcaca - header files
157 Summary(pl.UTF-8):      Wiązania C++ do libcaca - pliki nagłówkowe
158 Group:          Development/Libraries
159 Requires:       %{name}-c++ = %{version}-%{release}
160 Requires:       %{name}-devel = %{version}-%{release}
161 Requires:       libstdc++-devel
162
163 %description c++-devel
164 C++ bindings for libcaca - header files.
165
166 %description c++-devel -l pl.UTF-8
167 Wiązania C++ do libcaca - pliki nagłówkowe.
168
169 %package c++-static
170 Summary:        C++ bindings for libcaca - static libraries
171 Summary(pl.UTF-8):      Wiązania C++ do libcaca - biblioteki statyczne
172 Group:          Development/Libraries
173 Requires:       %{name}-c++-devel = %{version}-%{release}
174
175 %description c++-static
176 C++ bindings for libcaca - static libraries.
177
178 %description c++-static -l pl.UTF-8
179 Wiązania C++ do libcaca - biblioteki statyczne.
180
181 %package -n dotnet-caca-sharp
182 Summary:        C# bindings for libcaca
183 Summary(pl.UTF-8):      Wiązania C# do libcaca
184 Group:          Libraries
185 Requires:       %{name} = %{version}-%{release}
186 Requires:       mono
187
188 %description -n dotnet-caca-sharp
189 C# bindings for libcaca.
190
191 %description -n dotnet-caca-sharp -l pl.UTF-8
192 Wiązania C# do libcaca.
193
194 %package -n ruby-caca
195 Summary:        Ruby bindings for libcaca
196 Summary(pl.UTF-8):      Wiązania języka Ruby do libcaca
197 Group:          Development/Languages
198 Requires:       %{name} = %{version}-%{release}
199 %{?ruby_ver_requires_eq}
200
201 %description -n ruby-caca
202 Ruby bindings for libcaca.
203
204 %description -n ruby-caca -l pl.UTF-8
205 Wiązania języka Ruby do libcaca.
206
207 %prep
208 %setup -q -n %{name}-%{version}.%{subver}
209
210 %build
211 %{__libtoolize}
212 %{__aclocal}
213 %{__autoconf}
214 %{__autoheader}
215 %{__automake}
216 %configure \
217         --disable-ncurses \
218         --%{!?with_dotnet:dis}%{?with_dotnet:en}able-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 TODO
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 %{_pkgconfigdir}/caca.pc
299 %{_pkgconfigdir}/cucul.pc
300 %{_mandir}/man1/caca-config.1*
301 # man3 pages have too common base names to be included
302
303 %files static
304 %defattr(644,root,root,755)
305 %{_libdir}/libcaca.a
306 %{_libdir}/libcucul.a
307
308 %files c++
309 %defattr(644,root,root,755)
310 %attr(755,root,root) %{_libdir}/libcaca++.so.*.*.*
311 %attr(755,root,root) %ghost %{_libdir}/libcaca++.so.0
312 %attr(755,root,root) %{_libdir}/libcucul++.so.*.*.*
313 %attr(755,root,root) %ghost %{_libdir}/libcucul++.so.0
314
315 %files c++-devel
316 %defattr(644,root,root,755)
317 %attr(755,root,root) %{_libdir}/libcaca++.so
318 %attr(755,root,root) %{_libdir}/libcucul++.so
319 %{_libdir}/libcaca++.la
320 %{_libdir}/libcucul++.la
321 %{_includedir}/caca++.h
322 %{_includedir}/cucul++.h
323
324 %files c++-static
325 %defattr(644,root,root,755)
326 %{_libdir}/libcaca++.a
327 %{_libdir}/libcucul++.a
328
329 %if %{with dotnet}
330 %files -n dotnet-caca-sharp
331 %defattr(644,root,root,755)
332 %{_libdir}/caca-sharp
333 %{_libdir}/cucul-sharp
334 %endif
335
336 %files -n ruby-caca
337 %defattr(644,root,root,755)
338 %{ruby_sitelibdir}/caca.rb
339 %attr(755,root,root) %{ruby_sitearchdir}/caca.so
340 %attr(755,root,root) %{ruby_sitearchdir}/cucul.so
This page took 0.178908 seconds and 4 git commands to generate.