Since the SVN revision is now included in %{version}, it's redundant
[framework/uifw/evas.git] / evas.spec.in
1 # Conditional build stuff; from rpm 4.4 /usr/lib/rpm/macros.
2 # bcond_without defaults to WITH, and vice versa.  Yes, it's
3 # ass-backward.  Blame PLD.
4 %if %{!?with:1}0
5 %define with() %{expand:%%{?with_%{1}:1}%%{!?with_%{1}:0}}
6 %endif
7 %if %{!?without:1}0
8 %define without() %{expand:%%{?with_%{1}:0}%%{!?with_%{1}:1}}
9 %endif
10 %if %{!?bcond_with:1}0
11 %define bcond_with() %{expand:%%{?_with_%{1}:%%global with_%{1} 1}}
12 %endif
13 %if %{!?bcond_without:1}0
14 %define bcond_without() %{expand:%%{!?_without_%{1}:%%global with_%{1} 1}}
15 %endif
16
17 ## disabled features
18 %bcond_with    module_loader_edb
19 %bcond_with    module_saver_edb
20 %bcond_with    module_engine_directfb
21 %bcond_with    module_engine_gl_x11
22 %bcond_with    module_engine_software_16_x11
23 %bcond_with    module_engine_software_sdl
24 %bcond_with    module_engine_software_xcb
25 %bcond_with    module_loader_gif
26 %bcond_with    module_loader_svg
27
28 ## enabled features
29 %bcond_without module_engine_software_x11
30 %bcond_without module_engine_buffer
31 %bcond_without module_engine_fb
32 %bcond_without module_loader_pmaps
33 %bcond_without module_loader_png
34 %bcond_without module_saver_png
35 %bcond_without module_loader_jpeg
36 %bcond_without module_saver_jpeg
37 %bcond_without module_loader_tiff
38 %bcond_without module_saver_tiff
39 %bcond_without module_loader_eet
40 %bcond_without module_saver_eet
41 %bcond_without module_loader_xpm
42 %bcond_without module_loader_bmp
43 %bcond_without module_loader_wbmp
44 %bcond_without module_loader_tga
45
46 # This just keeps a missing doxygen from killing the build.
47 %define _missing_doc_files_terminate_build 0
48
49 # Macros for ./configure use
50 %define ac_with_module_loader_eet --%{?with_module_loader_eet:en}%{!?with_module_loader_eet:dis}able-image-loader-eet
51 %define ac_with_module_loader_jpeg --%{?with_module_loader_jpeg:en}%{!?with_module_loader_jpeg:dis}able-image-loader-jpeg
52 %define ac_with_module_loader_pmaps --%{?with_module_loader_pmaps:en}%{!?with_module_loader_pmaps:dis}able-image-loader-pmaps
53 %define ac_with_module_loader_png --%{?with_module_loader_png:en}%{!?with_module_loader_png:dis}able-image-loader-png
54 %define ac_with_module_loader_tiff --%{?with_module_loader_tiff:en}%{!?with_module_loader_tiff:dis}able-image-loader-tiff
55 %define ac_with_module_loader_gif --%{?with_module_loader_gif:en}%{!?with_module_loader_gif:dis}able-image-loader-gif
56 %define ac_with_module_loader_edb --%{?with_module_loader_edb:en}%{!?with_module_loader_edb:dis}able-image-loader-edb
57 %define ac_with_module_loader_xpm --%{?with_module_loader_xpm:en}%{!?with_module_loader_xpm:dis}able-image-loader-xpm
58 %define ac_with_module_loader_svg --%{?with_module_loader_svg:en}%{!?with_module_loader_svg:dis}able-image-loader-svg
59 %define ac_with_module_loader_bmp --%{?with_module_loader_bmp:en}%{!?with_module_loader_bmp:dis}able-image-loader-bmp
60 %define ac_with_module_loader_wbmp --%{?with_module_loader_wbmp:en}%{!?with_module_loader_wbmp:dis}able-image-loader-wbmp
61 %define ac_with_module_loader_tga --%{?with_module_loader_tga:en}%{!?with_module_loader_tga:dis}able-image-loader-tga
62 %define ac_with_module_saver_eet --%{?with_module_saver_eet:en}%{!?with_module_saver_eet:dis}able-image-saver-eet
63 %define ac_with_module_saver_jpeg --%{?with_module_saver_jpeg:en}%{!?with_module_saver_jpeg:dis}able-image-saver-jpeg
64 %define ac_with_module_saver_png --%{?with_module_saver_png:en}%{!?with_module_saver_png:dis}able-image-saver-png
65 %define ac_with_module_saver_tiff --%{?with_module_saver_tiff:en}%{!?with_module_saver_tiff:dis}able-image-saver-tiff
66 %define ac_with_module_saver_gif --%{?with_module_saver_gif:en}%{!?with_module_saver_gif:dis}able-image-saver-gif
67 %define ac_with_module_saver_edb --%{?with_module_saver_edb:en}%{!?with_module_saver_edb:dis}able-image-saver-edb
68 %define ac_with_module_saver_xpm --%{?with_module_saver_xpm:en}%{!?with_module_saver_xpm:dis}able-image-saver-xpm
69 %define ac_with_module_engine_software-x11 --%{?with_module_engine_software_x11:en}%{!?with_module_engine_software_x11:dis}able-software-x11
70 %define ac_with_module_engine_buffer --%{?with_module_engine_buffer:en}%{!?with_module_engine_buffer:dis}able-buffer
71 %define ac_with_module_engine_fb --%{?with_module_engine_fb:en}%{!?with_module_engine_fb:dis}able-fb
72 %define ac_with_module_engine_gl_x11 --%{?with_module_engine_gl_x11:en}%{!?with_module_engine_gl_x11:dis}able-gl-x11
73 %define ac_with_module_engine_directfb --%{?with_module_engine_directfb:en}%{!?with_module_engine_directfb:dis}able-directfb
74 %define ac_with_module_engine_software_16_x11 --%{?with_module_engine_software_16_x11:en}%{!?with_module_engine_software_16_x11:dis}able-software-16-x11
75 %define ac_with_module_engine_software_sdl --%{?with_module_engine_software_sdl:en}%{!?with_module_engine_software_sdl:dis}able-sdl
76 %define ac_with_module_engine_software_xcb --%{?with_module_engine_software_xcb:en}%{!?with_module_engine_software_xcb:dis}able-software-xcb
77
78 %{!?_rel:%{expand:%%global _rel 0.enl%{?dist}}}
79
80 Summary: Multi-platform Canvas Library
81 Name: @PACKAGE@
82 Version: @VERSION@
83 Release: %{_rel}
84 License: BSD
85 Group: System Environment/Libraries
86 URL: http://www.enlightenment.org/
87 Source: http://download.enlightenment.org/releases/%{name}-%{version}.tar.gz
88 Packager: %{?_packager:%{_packager}}%{!?_packager:Michael Jennings <mej@eterm.org>}
89 Vendor: %{?_vendorinfo:%{_vendorinfo}}%{!?_vendorinfo:The Enlightenment Project (http://www.enlightenment.org/)}
90 Distribution: %{?_distribution:%{_distribution}}%{!?_distribution:%{_vendor}}
91 BuildRequires: /usr/bin/freetype-config
92 Provides: evas
93 BuildRoot: %{_tmppath}/%{name}-%{version}-root
94
95 %description
96 Evas is a clean display canvas API for several target display systems
97 that can draw anti-aliased text, smooth super and sub-sampled scaled
98 images, alpha-blend objects much and more.
99
100 %package devel
101 Summary: Evas headers, static libraries, documentation and test programs
102 Group: System Environment/Libraries
103 Requires: %{name} = %{version}
104
105 %description devel
106 Headers, static libraries, test programs and documentation for Evas.
107
108 %if %{with module_loader_eet}
109 %package module_loader_eet
110 Summary: EET Image loader module for Evas
111 Group: System Environment/Libraries
112 BuildRequires: eet-devel
113 %description module_loader_eet
114 EET Image loader module for Evas
115 %endif
116
117 %if %{with module_saver_eet}
118 %package module_saver_eet
119 Summary: EET Image saver module for Evas
120 Group: System Environment/Libraries
121 BuildRequires: eet-devel
122 %description module_saver_eet
123 EET Image saver module for Evas
124 %endif
125
126 %if %{with module_loader_jpeg}
127 %package module_loader_jpeg
128 Summary: JPEG Image loader module for Evas
129 Group: System Environment/Libraries
130 BuildRequires: libjpeg-devel
131 %description module_loader_jpeg
132 JPEG Image loader module for Evas
133 %endif
134
135 %if %{with module_saver_jpeg}
136 %package module_saver_jpeg
137 Summary: JPEG Image saver module for Evas
138 Group: System Environment/Libraries
139 BuildRequires: libjpeg-devel
140 %description module_saver_jpeg
141 JPEG Image saver module for Evas
142 %endif
143
144 %if %{with module_loader_pmaps}
145 %package module_loader_pmaps
146 Summary: Pixmap Image loader module for Evas
147 Group: System Environment/Libraries
148 BuildRequires: libXpm-devel
149 %description module_loader_pmaps
150 Pixmap Image loader module for Evas
151 %endif
152
153 %if %{with module_loader_png}
154 %package module_loader_png
155 Summary: PNG Image loader module for Evas
156 Group: System Environment/Libraries
157 BuildRequires: libpng-devel
158 %description module_loader_png
159 PNG Image loader module for Evas
160 %endif
161
162 %if %{with module_saver_png}
163 %package module_saver_png
164 Summary: PNG Image saver module for Evas
165 Group: System Environment/Libraries
166 BuildRequires: libpng-devel
167 %description module_saver_png
168 PNG Image saver module for Evas
169 %endif
170
171 %if %{with module_loader_tiff}
172 %package module_loader_tiff
173 Summary: TIFF Image loader module for Evas
174 Group: System Environment/Libraries
175 BuildRequires: libtiff-devel
176 %description module_loader_tiff
177 TIFF Image loader module for Evas
178 %endif
179
180 %if %{with module_saver_tiff}
181 %package module_saver_tiff
182 Summary: TIFF Image saver module for Evas
183 Group: System Environment/Libraries
184 BuildRequires: libtiff-devel
185 %description module_saver_tiff
186 TIFF Image saver module for Evas
187 %endif
188
189 %if %{with module_loader_gif}
190 %package module_loader_gif
191 Summary: GIF Image loader module for Evas
192 Group: System Environment/Libraries
193 #BuildSuggests: libungif-devel, giflib-devel
194 BuildRequires: /usr/include/gif_lib.h
195 %description module_loader_gif
196 GIF Image loader module for Evas
197 %endif
198
199 %if %{with module_loader_edb}
200 %package module_loader_edb
201 Summary: EDB Image loader module for Evas
202 Group: System Environment/Libraries
203 BuildRequires: edb-devel
204 %description module_loader_edb
205 EDB Image loader module for Evas
206 %endif
207
208 %if %{with module_saver_edb}
209 %package module_saver_edb
210 Summary: EDB Image saver module for Evas
211 Group: System Environment/Libraries
212 BuildRequires: edb-devel
213 %description module_saver_edb
214 EDB Image saver module for Evas
215 %endif
216
217 %if %{with module_loader_xpm}
218 %package module_loader_xpm
219 Summary: XPM Image loader module for Evas
220 Group: System Environment/Libraries
221 ##BuildRequires: (none, X?)
222 %description module_loader_xpm
223 XPM Image loader module for Evas
224 %endif
225
226 %if %{with module_loader_svg}
227 %package module_loader_svg
228 Summary: SVG Image loader module for Evas
229 Group: System Environment/Libraries
230 BuildRequires: librsvg-devel >= 2.14
231 %description module_loader_svg
232 svg Image loader module for Evas
233 %endif
234
235 %if %{with module_loader_bmp}
236 %package module_loader_bmp
237 Summary: BMP Image loader module for Evas
238 Group: System Environment/Libraries
239 BuildRequires: libjpeg-devel
240 %description module_loader_bmp
241 BMP Image loader module for Evas
242 %endif
243
244 %if %{with module_loader_wbmp}
245 %package module_loader_wbmp
246 Summary: WBMP Image loader module for Evas
247 Group: System Environment/Libraries
248 BuildRequires: libjpeg-devel
249 %description module_loader_wbmp
250 WBMP Image loader module for Evas
251 %endif
252
253 %if %{with module_loader_tga}
254 %package module_loader_tga
255 Summary: TGA Image loader module for Evas
256 Group: System Environment/Libraries
257 BuildRequires: libjpeg-devel
258 %description module_loader_tga
259 TGA Image loader module for Evas
260 %endif
261
262 %package module_engine_software_generic
263 Summary: Software X11 rendering engine module for Evas
264 Group: System Environment/Libraries
265 Requires: evas
266 %description module_engine_software_generic
267 Software X11 rendering engine module for Evas
268
269 %if %{with module_engine_software_x11}
270 %package module_engine_software_x11
271 Summary: Software X11 rendering engine module for Evas
272 Group: System Environment/Libraries
273 BuildRequires: libX11-devel, libICE-devel, libXext-devel
274 Requires: evas-module_engine_software_generic
275 Requires: evas
276 %description module_engine_software_x11
277 Software X11 rendering engine module for Evas
278 %endif
279
280 %if %{with module_engine_buffer}
281 %package module_engine_buffer
282 Summary: Buffer rendering engine module for Evas
283 Group: System Environment/Libraries
284 Requires: evas-module_engine_software_generic
285 Requires: evas
286 %description module_engine_buffer
287 Memory Buffer rendering engine module for Evas
288 %endif
289
290 %if %{with module_engine_fb}
291 %package module_engine_fb
292 Summary: Framebuffer rendering engine module for Evas
293 Group: System Environment/Libraries
294 Requires: evas-module_engine_software_generic
295 Requires: evas
296 %description module_engine_fb
297 Framebuffer rendering engine module for Evas
298 %endif
299
300 %if %{with module_engine_gl_x11}
301 %package module_engine_gl_x11
302 Summary: OpenGL under X11 rendering engine module for Evas
303 Group: System Environment/Libraries
304 #BuildSuggests: xorg-x11-devel, xorg-x11-Mesa-libGL, XFree86-devel
305 Requires: evas
306 %description module_engine_gl_x11
307 OpenGL under X11 rendering engine module for Evas
308 %endif
309
310 %if %{with module_engine_directfb}
311 %package module_engine_directfb
312 Summary: Directfb rendering engine module for Evas
313 Group: System Environment/Libraries
314 #BuildSuggests: DirectFB, libdirectfb-devel, directfb-devel
315 BuildRequires: /usr/include/directfb/dfb_types.h
316 Requires: evas
317 %description module_engine_directfb
318 Directfb rendering engine module for Evas
319 %endif
320
321 %if %{with module_engine_software_16_x11}
322 %package module_engine_software_16_x11
323 Summary: Software 16-bit X11 rendering engine module for Evas
324 Group: System Environment/Libraries
325 Requires: evas-module_engine_software_generic
326 Requires: evas
327 %description module_engine_software_16_x11
328 Software 16-bit X11 rendering engine module for Evas
329 %endif
330
331 %if %{with module_engine_software_sdl}
332 %package module_engine_software_sdl
333 Summary: Software SDL X11 rendering engine module for Evas
334 Group: System Environment/Libraries
335 BuildRequires: SDL-devel
336 Requires: evas-module_engine_software_generic
337 Requires: evas
338 %description module_engine_software_sdl
339 Software SDL X11 rendering engine module for Evas
340 %endif
341
342 %if %{with module_engine_software_xcb}
343 %package module_engine_software_xcb
344 Summary: Software XCB X11 rendering engine module for Evas
345 Group: System Environment/Libraries
346 BuildRequires: xcb-devel
347 Requires: evas-module_engine_software_generic
348 Requires: evas
349 %description module_engine_software_xcb
350 Software XCB X11 rendering engine module for Evas
351 %endif
352
353 %prep
354 %setup -q
355
356 %build
357 %{configure} --prefix=%{_prefix} --x-libraries=%{_prefix}/X11R6/%{_lib} \
358     %{?ac_with_module_loader_eet} \
359     %{?ac_with_module_saver_eet} \
360     %{?ac_with_module_loader_jpeg} \
361     %{?ac_with_module_saver_jpeg} \
362     %{?ac_with_module_loader_pmaps} \
363     %{?ac_with_module_loader_png} \
364     %{?ac_with_module_saver_png} \
365     %{?ac_with_module_loader_tiff} \
366     %{?ac_with_module_saver_tiff} \
367     %{?ac_with_module_loader_gif} \
368     %{?ac_with_module_loader_edb} \
369     %{?ac_with_module_saver_edb} \
370     %{?ac_with_module_loader_xpm} \
371     %{?ac_with_module_loader_svg} \
372     %{?ac_with_module_engine_software_x11} \
373     %{?ac_with_module_engine_buffer} \
374     %{?ac_with_module_engine_fb} \
375     %{?ac_with_module_engine_gl_x11} \
376     %{?ac_with_module_engine_directfb} \
377     %{?ac_with_module_engine_software_16_x11} \
378     %{?ac_with_module_engine_software_sdl} \
379     %{?ac_with_module_engine_software_xcb} \
380     $RPM_CONFIGURE_OPTS
381 %{__make} %{?_smp_mflags} %{?mflags}
382 test -x `which doxygen` && /bin/sh gendoc || :
383
384 %install
385 %{__make} %{?mflags_install} DESTDIR=$RPM_BUILD_ROOT install
386 %{__rm} -f $RPM_BUILD_ROOT%{_libdir}/%{name}/modules/*/*/*/*a
387
388 %clean
389 test "x$RPM_BUILD_ROOT" != "x/" && rm -rf $RPM_BUILD_ROOT
390
391 %post
392 /sbin/ldconfig
393
394 %postun
395 /sbin/ldconfig
396
397 %files
398 %defattr(-, root, root)
399 %doc AUTHORS COPYING COPYING-PLAIN README
400 %{_bindir}/%{name}*
401 %{_libdir}/*.so.*
402
403 %files devel
404 %defattr(-, root, root)
405 %{_libdir}/*.so
406 %{_libdir}/*.la
407 %{_libdir}/*.a
408 %{_libdir}/pkgconfig/*
409 %{_includedir}/evas-1/*.h
410 %{_datadir}/evas/examples/*.c
411 %files module_engine_software_generic
412 %defattr(-, root, root)
413 %{_libdir}/evas/modules/engines/software_generic/*/module.so
414
415 %if %{with module_loader_eet}
416 %files module_loader_eet
417 %defattr(-, root, root)
418 %{_libdir}/evas/modules/loaders/eet/*/module.so
419 %endif
420
421 %if %{with module_saver_eet}
422 %files module_saver_eet
423 %defattr(-, root, root)
424 %{_libdir}/evas/modules/savers/eet/*/module.so
425 %endif
426
427 %if %{with module_loader_pmaps}
428 %files module_loader_pmaps
429 %defattr(-, root, root)
430 %{_libdir}/evas/modules/loaders/pmaps/*/module.so
431 %endif
432
433 %if %{with module_loader_png}
434 %files module_loader_png
435 %defattr(-, root, root)
436 %{_libdir}/evas/modules/loaders/png/*/module.so
437 %endif
438
439 %if %{with module_saver_png}
440 %files module_saver_png
441 %defattr(-, root, root)
442 %{_libdir}/evas/modules/savers/png/*/module.so
443 %endif
444
445 %if %{with module_loader_jpeg}
446 %files module_loader_jpeg
447 %defattr(-, root, root)
448 %{_libdir}/evas/modules/loaders/jpeg/*/module.so
449 %endif
450
451 %if %{with module_saver_jpeg}
452 %files module_saver_jpeg
453 %defattr(-, root, root)
454 %{_libdir}/evas/modules/savers/jpeg/*/module.so
455 %endif
456
457 %if %{with module_loader_tiff}
458 %files module_loader_tiff
459 %defattr(-, root, root)
460 %{_libdir}/evas/modules/loaders/tiff/*/module.so
461 %endif
462
463 %if %{with module_saver_tiff}
464 %files module_saver_tiff
465 %defattr(-, root, root)
466 %{_libdir}/evas/modules/savers/tiff/*/module.so
467 %endif
468
469 %if %{with module_loader_gif}
470 %files module_loader_gif
471 %defattr(-, root, root)
472 %{_libdir}/evas/modules/loaders/gif/*/module.so
473 %endif
474
475 %if %{with module_loader_edb}
476 %files module_loader_edb
477 %defattr(-, root, root)
478 %{_libdir}/evas/modules/loaders/edb/*/module.so
479 %endif
480
481 %if %{with module_saver_edb}
482 %files module_saver_edb
483 %defattr(-, root, root)
484 %{_libdir}/evas/modules/savers/edb/*/module.so
485 %endif
486
487 %if %{with module_loader_xpm}
488 %files module_loader_xpm
489 %defattr(-, root, root)
490 %{_libdir}/evas/modules/loaders/xpm/*/module.so
491 %endif
492
493 %if %{with module_loader_svg}
494 %files module_loader_svg
495 %defattr(-, root, root)
496 %{_libdir}/evas/modules/loaders/svg/*/module.so
497 %endif
498
499 %if %{with module_loader_bmp}
500 %files module_loader_bmp
501 %defattr(-, root, root)
502 %{_libdir}/evas/modules/loaders/bmp/*/module.so
503 %endif
504
505 %if %{with module_loader_wbmp}
506 %files module_loader_wbmp
507 %defattr(-, root, root)
508 %{_libdir}/evas/modules/loaders/wbmp/*/module.so
509 %endif
510
511 %if %{with module_loader_tga}
512 %files module_loader_tga
513 %defattr(-, root, root)
514 %{_libdir}/evas/modules/loaders/tga/*/module.so
515 %endif
516
517 %if %{with module_engine_software_x11}
518 %files module_engine_software_x11
519 %defattr(-, root, root)
520 %{_libdir}/evas/modules/engines/software_x11/*/module.so
521 %endif
522
523 %if %{with module_engine_buffer}
524 %files module_engine_buffer
525 %defattr(-, root, root)
526 %{_libdir}/evas/modules/engines/buffer/*/module.so
527 %endif
528
529 %if %{with module_engine_fb}
530 %files module_engine_fb
531 %defattr(-, root, root)
532 %{_libdir}/evas/modules/engines/fb/*/module.so
533 %endif
534
535 %if %{with module_engine_gl_x11}
536 %files module_engine_gl_x11
537 %defattr(-, root, root)
538 %{_libdir}/evas/modules/engines/gl_x11/*/module.so
539 %endif
540
541 %if %{with module_engine_directfb}
542 %files module_engine_directfb
543 %defattr(-, root, root)
544 %{_libdir}/evas/modules/engines/directfb/*/module.so
545 %endif
546
547 %if %{with module_engine_software_16_x11}
548 %files module_engine_software_16_x11
549 %defattr(-, root, root)
550 %{_libdir}/evas/modules/engines/software_16/*/module.so
551 %{_libdir}/evas/modules/engines/software_16_x11/*/module.so
552 %endif
553
554 %if %{with module_engine_software_sdl}
555 %files module_engine_software_sdl
556 %defattr(-, root, root)
557 %{_libdir}/evas/modules/engines/software_sdl/*/module.so
558 %endif
559
560 %if %{with module_engine_software_xcb}
561 %files module_engine_software_xcb
562 %defattr(-, root, root)
563 %{_libdir}/evas/modules/engines/software_xcb/*/module.so
564 %endif
565
566 %changelog