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