Bugfix on directfb engine:
[profile/ivi/evas.git] / configure.ac
1 # get rid of that stupid cache mechanism
2 rm -f config.cache
3
4 AC_INIT([evas], [0.9.9.062], [enlightenment-devel@lists.sourceforge.net])
5 AC_PREREQ([2.52])
6 AC_CONFIG_SRCDIR([configure.ac])
7 AC_CONFIG_MACRO_DIR([m4])
8 AC_CANONICAL_BUILD
9 AC_CANONICAL_HOST
10 AC_ISC_POSIX
11
12 AM_INIT_AUTOMAKE(1.6 dist-bzip2)
13 AM_CONFIG_HEADER(config.h)
14
15 AC_LIBTOOL_WIN32_DLL
16 define([AC_LIBTOOL_LANG_F77_CONFIG], [:])dnl
17 AC_PROG_LIBTOOL
18
19 VMAJ=`echo $PACKAGE_VERSION | awk -F. '{printf("%s", $1);}'`
20 VMIN=`echo $PACKAGE_VERSION | awk -F. '{printf("%s", $2);}'`
21 VMIC=`echo $PACKAGE_VERSION | awk -F. '{printf("%s", $3);}'`
22 SNAP=`echo $PACKAGE_VERSION | awk -F. '{printf("%s", $4);}'`
23 version_info=`expr $VMAJ + $VMIN`":$VMIC:$VMIN"
24 AC_SUBST(version_info)
25
26
27 ### Needed information
28
29 release="ver-pre-svn-04"
30 case "$host_os" in
31    mingw32ce* | cegcc*)
32       MODULE_ARCH="$host_os-$host_cpu"
33       ;;
34    *)
35       release_info="-release $release"
36       MODULE_ARCH="$host_os-$host_cpu-$release"
37       ;;
38 esac
39 AC_SUBST(release_info)
40 AC_SUBST(MODULE_ARCH)
41 AC_DEFINE_UNQUOTED(MODULE_ARCH, "$MODULE_ARCH", "Module architecture")
42
43 # weird debian etch bug where pthread_barrier doesn't work without adding
44 # this.
45 CFLAGS="${CFLAGS=} -D_GNU_SOURCE"
46 AC_SUBST(CFLAGS)
47
48 want_fontconfig="auto"
49 want_fribidi="auto"
50 want_evas_cserve="yes"
51
52 want_evas_engine_buffer="yes"
53 want_evas_engine_software_xlib="no"
54 want_evas_engine_xrender_x11="no"
55 want_evas_engine_gl_x11="no"
56 want_evas_engine_cairo_x11="no"
57 want_evas_engine_software_xcb="no"
58 want_evas_engine_xrender_xcb="no"
59 want_evas_engine_software_gdi="no"
60 want_evas_engine_software_ddraw="no"
61 want_evas_engine_direct3d="no"
62 want_evas_engine_quartz="no"
63 want_evas_engine_gl_glew="no"
64 want_evas_engine_software_sdl="no"
65 want_evas_engine_fb="no"
66 want_evas_engine_directfb="no"
67 want_evas_engine_software_qtopia="no"
68 want_evas_engine_software_16_x11="no"
69 want_evas_engine_software_16_ddraw="no"
70 want_evas_engine_software_16_wince="no"
71
72 want_evas_image_loader_edb="yes"
73 want_evas_image_loader_eet="yes"
74 want_evas_image_loader_gif="yes"
75 want_evas_image_loader_jpeg="yes"
76 want_evas_image_loader_pmaps="yes"
77 want_evas_image_loader_png="yes"
78 want_evas_image_loader_svg="yes"
79 want_evas_image_loader_tiff="yes"
80 want_evas_image_loader_xpm="yes"
81
82 want_evas_font_loader_eet="yes"
83
84 case "$host_os" in
85    mingw32ce* | cegcc*)
86       want_fontconfig="no"
87       want_evas_engine_software_16_wince="yes"
88       want_evas_image_loader_edb="no"
89       want_evas_image_loader_gif="no"
90       want_evas_image_loader_svg="no"
91       want_evas_image_loader_tiff="no"
92       ;;
93    mingw*)
94       want_evas_engine_software_gdi="yes"
95       want_evas_engine_software_ddraw="yes"
96       want_evas_engine_direct3d="yes"
97       want_evas_engine_software_16_ddraw="yes"
98       want_evas_image_loader_edb="no"
99       want_evas_image_loader_svg="no"
100       ;;
101    darwin*)
102       want_evas_engine_software_xlib="auto"
103       want_evas_engine_quartz="auto"
104       ;;
105    *)
106       want_evas_engine_software_xlib="auto"
107       want_evas_engine_xrender_x11="auto"
108       want_evas_engine_software_16_x11="auto"
109       ;;
110 esac
111
112
113 ### Additional options to configure
114
115 # when used, that option makes configure script fails when
116 # a requirement is selected, but not met.
117 use_strict="no"
118 AC_ARG_ENABLE([strict],
119    AC_HELP_STRING([--enable-strict], [enable strict checking mode. @<:@default==disabled@:>@]),
120    [use_strict="yes"],
121    [use_strict="no"])
122
123 # Simple X11 build/link
124 AC_ARG_ENABLE([simple-x11],
125    AC_HELP_STRING([--enable-simple-x11], [enable simple x11 linking]),
126    [
127     if test "x${enableval}" = "xyes" ; then
128        want_evas_simple_x11="yes"
129     else
130        want_evas_simple_x11="no"
131     fi
132    ])
133
134
135 ### Checks for programs
136
137 AC_PROG_CXX
138 AC_PROG_CC
139
140 # pkg-config
141 PKG_PROG_PKG_CONFIG
142
143 # doxygen program for documentation building
144 EFL_CHECK_DOXYGEN([build_doc="yes"], [build_doc="no"])
145
146
147 ### Checks for libraries
148
149 # Evil library for compilation on Windows CE
150
151 case "$host_os" in
152    mingw* | cegcc*)
153    PKG_CHECK_MODULES([EVIL], [evil])
154    AC_DEFINE(HAVE_EVIL, 1, [Set to 1 if evil package is installed])
155    ;;
156 esac
157
158 ## strong dependencies
159
160 # Eina
161 PKG_CHECK_MODULES([EINA], [eina-0])
162
163 # Freetype
164 PKG_CHECK_MODULES([FREETYPE], [freetype2 >= 9.3.0])
165
166 ## optional dependencies
167
168 # FontConfig
169 have_fontconfig="no"
170 AC_ARG_ENABLE([fontconfig],
171    AC_HELP_STRING([--disable-fontconfig],
172       [disable fontconfig for finding fonts. @<:@default=enabled@:>@]),
173    [
174     if test "x${enableval}" = "xyes" ; then
175        want_fontconfig="yes"
176     else
177        want_fontconfig="no"
178     fi
179    ])
180
181
182 if test "x${want_fontconfig}" = "xyes" -o "x${want_fontconfig}" = "xauto" ; then
183    PKG_CHECK_MODULES([FONTCONFIG],
184       [fontconfig],
185       [
186        have_fontconfig="yes"
187        AC_DEFINE(HAVE_FONTCONFIG, 1, [have fontconfig searching capabilities])
188       ],
189       [
190        if test "x${want_fontconfig}" = "xyes" -a "x${use_strict}" = "xyes" ; then
191           AC_MSG_ERROR([Fontconfig not found (strict dependencies checking)])
192        fi
193       ])
194 fi
195
196 # fribidi support
197 have_fribidi="no"
198 AC_ARG_ENABLE([fribidi],
199    AC_HELP_STRING([--disable-fribidi],
200       [disable bidirectional text support. @<:@default=enabled@:>@]),
201    [
202     if test "x${enableval}" = "xyes" ; then
203        want_fribidi="yes"
204     else
205        want_fribidi="no"
206     fi
207    ])
208
209 if test "x${want_fribidi}" = "xyes" -o "x${want_fribidi}" = "xauto" ; then
210    PKG_CHECK_MODULES([FRIBIDI],
211       [fribidi],
212       [
213        have_fribidi="yes"
214        AC_DEFINE(HAVE_FRIBIDI, 1, [have fribidi support])
215       ],
216       [
217        if test "x$want_fribidi" = "xyes" -a "x$use_strict" = "xyes" ; then
218           AC_MSG_ERROR([Fribidi not found (strict dependencies checking)])
219        fi
220       ])
221 fi
222
223 if test "x${have_fribidi}" = "xno"; then
224   HAS_BIDI=0
225 fi
226
227 ### Checks for header files
228 AC_HEADER_STDC
229
230 # fnmatch.h
231 AC_CHECK_HEADER([fnmatch.h],
232    [dummy="yes"],
233    [AC_MSG_ERROR([Cannot find fnmatch.h. Make sure your CFLAGS environment variable contains include lines for the location of this file. MinGW users: see the INSTALL file])])
234
235
236 ### Checks for types
237
238
239 ### Checks for structures
240
241
242 ### Checks for compiler characteristics
243 AC_C_CONST
244 AC_C_BIGENDIAN
245 AC_C___ATTRIBUTE__
246 AM_PROG_CC_STDC
247
248 WIN32_CPPFLAGS=""
249 case "$host_os" in
250    mingw32ce* | cegcc*)
251       WIN32_CPPFLAGS="-D_WIN32_WCE=0x0420"
252       ;;
253    mingw*)
254       WIN32_CPPFLAGS="-D_WIN32_WINNT=0x0500"
255       ;;
256 esac
257 AC_SUBST(WIN32_CPPFLAGS)
258
259 WIN32_CFLAGS=""
260 case "${host_os}" in
261    cegcc*)
262       WIN32_CFLAGS="-mwin32"
263    ;;
264 esac
265 AC_SUBST(WIN32_CFLAGS)
266
267
268 ### Checks for linker characteristics
269 lt_enable_auto_import=""
270 case "${host_os}" in
271    mingw* | cegcc*)
272       AC_DEFINE(EFL_EVAS_BUILD, 1, [Define to mention that evas is built])
273       lt_enable_auto_import="-Wl,--enable-auto-import"
274    ;;
275 esac
276 AC_SUBST(lt_enable_auto_import)
277
278
279 ### Checks for library functions
280
281 # alloca
282 AC_FUNC_ALLOCA
283
284 # fnmatch
285 AC_CHECK_FUNCS([fnmatch], [res="yes"], [res="no"])
286 if test "x$res" = "xno"; then
287    AC_SEARCH_LIBS([fnmatch],
288       [fnmatch evil iberty],
289       [res="yes"],
290       [res="no"])
291    if test "x$res" = "xno"; then
292       AC_MSG_ERROR([Cannot find fnmatch() in neither libc nor libfnmatch, nor libiberty, nor libevil])
293    fi
294 fi
295
296 # dlopen
297 dlopen_libs=""
298 case "$host_os" in
299   mingw32ce* | cegcc*)
300 # managed by evil
301     AC_DEFINE(HAVE_DLADDR)
302   ;;
303   mingw*)
304 # nothing on mingw platform
305   ;;
306   *)
307     AC_CHECK_FUNCS(dlopen, res=yes, res=no)
308     if test "x$res" = "xyes"; then
309       AC_CHECK_FUNCS(dladdr, AC_DEFINE(HAVE_DLADDR))
310     else
311       AC_CHECK_LIB(dl, dlopen, res=yes, res=no)
312       if test "x$res" = "xyes"; then
313         AC_CHECK_LIB(dl, dladdr, AC_DEFINE(HAVE_DLADDR))
314         dlopen_libs=-ldl
315       else
316         AC_MSG_ERROR(Cannot find dlopen)
317       fi
318     fi
319 esac
320 AC_SUBST(dlopen_libs)
321
322 # (shm_open (for cache server)
323 AC_ARG_ENABLE([evas-cserve],
324    AC_HELP_STRING([--disable-evas-cserve],
325       [disable shared cache server support. @<:@default=enabled@:>@]),
326    [
327     if test "x${enableval}" = "xyes" ; then
328        want_evas_cserve="yes"
329     else
330        want_evas_cserve="no"
331     fi
332    ])
333 AC_MSG_CHECKING(whether to build shared cache server and support)
334 AC_MSG_RESULT(${want_evas_cserve})
335
336 if test "x${want_evas_cserve}" = "xyes" ; then
337    AC_MSG_CHECKING([whether shm_open() is present])
338    LIBS_save=${LIBS}
339    LIBS="${LIBS} -lrt"
340    AC_LINK_IFELSE(
341       [AC_LANG_PROGRAM(
342          [[
343 #include <sys/types.h>
344 #include <sys/mman.h>
345 #include <fcntl.h>
346          ]],
347          [[
348 int fd;
349 fd = shm_open("/", O_RDWR | O_CREAT, S_IRUSR | S_IWUSR);
350 shm_unlink("/");
351          ]])],
352       [want_evas_cserve="yes"],
353       [want_evas_cserve="no"])
354    LIBS=${LIBS_save}
355    AC_MSG_RESULT([${want_evas_cserve}])
356 fi
357
358 if test "x${want_evas_cserve}" = "xyes" ; then
359   AC_DEFINE(EVAS_CSERVE, 1, [Shared caceh server.])
360 fi
361
362 AM_CONDITIONAL([EVAS_CSERVE], [test "x${want_evas_cserve}" = "xyes"])
363
364
365
366 #####################################################################
367 ## Engines
368
369 EVAS_CHECK_ENGINE([buffer], [${want_evas_engine_buffer}], [no], [Buffer])
370
371 EVAS_CHECK_ENGINE([software-xlib], [${want_evas_engine_software_xlib}], [yes], [Software Xlib])
372
373 EVAS_CHECK_ENGINE([xrender-x11], [${want_evas_engine_xrender_x11}], [yes], [XRender X11])
374
375 EVAS_CHECK_ENGINE([gl-x11], [${want_evas_engine_gl_x11}], [yes], [OpenGL X11])
376
377 # disable cairo engine for the release
378 #EVAS_CHECK_ENGINE([cairo-x11], [${want_evas_engine_cairo_x11}], [yes], [Cairo X11])
379
380 EVAS_CHECK_ENGINE([software-xcb], [${want_evas_engine_software_xcb}], [no], [Software XCB])
381
382 EVAS_CHECK_ENGINE([xrender-xcb], [${want_evas_engine_xrender_xcb}], [no], [XRender XCB])
383
384 EVAS_CHECK_ENGINE([software-gdi], [${want_evas_engine_software_gdi}], [no], [Software GDI])
385
386 EVAS_CHECK_ENGINE([software-ddraw], [${want_evas_engine_software_ddraw}], [no], [Software DirectDraw])
387
388 EVAS_CHECK_ENGINE([direct3d], [${want_evas_engine_direct3d}], [no], [Direct3D])
389
390 EVAS_CHECK_ENGINE([quartz], [${want_evas_engine_quartz}], [no], [Quartz])
391
392 EVAS_CHECK_ENGINE([gl-glew], [${want_evas_engine_gl_glew}], [no], [OpenGL Glew])
393
394 EVAS_CHECK_ENGINE([software-sdl], [${want_evas_engine_software_sdl}], [no], [Software SDL])
395
396 EVAS_CHECK_ENGINE([fb], [${want_evas_engine_fb}], [no], [Framebuffer])
397
398 EVAS_CHECK_ENGINE([directfb], [${want_evas_engine_directfb}], [no], [DirectFB])
399
400 # disable cairo engine for the release
401 #EVAS_CHECK_ENGINE([software-qtopia], [${want_evas_engine_software_qtopia}], [no], [Qtopia])
402
403 EVAS_CHECK_ENGINE([software-16-x11], [${want_evas_engine_software_16_x11}], [yes], [Software X11 16 bits])
404
405 EVAS_CHECK_ENGINE([software-16-ddraw], [${want_evas_engine_software_16_ddraw}], [no], [Software DirectDraw 16 bits])
406
407 EVAS_CHECK_ENGINE([software-16-wince], [${want_evas_engine_software_16_wince}], [no], [Software Windows CE 16 bits])
408
409 # common cairo
410 #have_evas_engine_cairo_common="no"
411 #if test "x${have_evas_engine_cairo_x11}" = "xyes" ; then
412 #   have_evas_engine_cairo_common="yes"
413 #   AC_DEFINE([BUILD_ENGINE_CAIRO_COMMON], [1], [Generic Cairo Rendering Support])
414 #fi
415 #AM_CONDITIONAL([BUILD_ENGINE_CAIRO_COMMON], [test "x$have_evas_engine_cairo_common" = "xyes"])
416
417 # common gl
418 have_evas_engine_gl_common="no"
419 if test "x$have_evas_engine_gl_x11" = "xyes" -o "x$have_evas_engine_gl_glew" = "xyes"; then
420    AC_DEFINE(BUILD_ENGINE_GL_COMMON, 1, [Generic OpenGL Rendering Support])
421    have_evas_engine_gl_common="yes"
422    evas_engine_gl_common_libs="-lglu32"
423 fi
424
425 if test "x$have_evas_engine_gl_x11" = "xyes" ; then
426    evas_engine_gl_common_libs="-lGL -lGLU -lpthread"
427 fi
428
429 if test "x$have_evas_engine_gl_glew" = "xyes" ; then
430    evas_engine_gl_common_libs="-lglu32"
431 fi
432 AC_SUBST([evas_engine_gl_common_libs])
433
434 AM_CONDITIONAL(BUILD_ENGINE_GL_COMMON, test "x$have_evas_engine_gl_common" = "xyes")
435
436 # SDL primitive
437 sdl_primitive="no"
438
439 AC_ARG_ENABLE([sdl-primitive],
440    [AC_HELP_STRING([--enable-sdl-primitive], [])],
441    [sdl_primitive=${enableval}]
442 )
443 AC_MSG_CHECKING([whether to use SDL primitive when possible])
444 AC_MSG_RESULT([${sdl_primitive}])
445
446 if test "x${sdl_primitive}" = "xyes" ; then
447    AC_DEFINE([ENGINE_SDL_PRIMITIVE], [1], [Use SDL primitive when possible])
448 fi
449
450 # if software generic need to be build as part of libevas.so
451 have_static_software_generic="no"
452 AC_ARG_ENABLE([static-software-generic],
453    [AC_HELP_STRING([--enable-static-software-generic], [Build software generic engine as part of libevas])],
454    [have_static_software_generic=${enableval}]
455 )
456 AC_MSG_CHECKING([Whether to build software generic engine as part of libevas])
457 AC_MSG_RESULT([${have_static_software_generic}])
458
459 AM_CONDITIONAL(EVAS_STATIC_BUILD_SOFTWARE_GENERIC, test "x${have_static_software_generic}" = "xyes")
460 if test "x${have_static_software_generic}" = "xyes"; then
461    AC_DEFINE(EVAS_STATIC_BUILD_SOFTWARE_GENERIC, [1], [Build software generic engine as part of libevas])
462 fi
463
464 # if software_xlib or software_xcb are available, define everything needed for X11
465 have_evas_engine_software_x11="no"
466 if test "x$have_evas_engine_software_xlib" = "xstatic" -o "x$have_evas_engine_software_xcb" = "xstatic" ; then
467    have_evas_engine_software_x11="static"
468 else
469    if test "x$have_evas_engine_software_xlib" = "xyes" -o "x$have_evas_engine_software_xcb" = "xyes" ; then
470       have_evas_engine_software_x11="yes"
471    fi
472 fi
473
474 if test "x$have_evas_engine_software_xlib" = "xstatic" ; then
475    have_evas_engine_software_xlib="yes"
476 fi
477
478 if test "x$have_evas_engine_software_xcb" = "xstatic" ; then
479    have_evas_engine_software_xcb="yes"
480 fi
481
482 if test "x$have_evas_engine_software_x11" = "xyes" -o "x$have_evas_engine_software_x11" = "xstatic" ; then
483    AC_DEFINE(BUILD_ENGINE_SOFTWARE_X11, [1], [Build software X11 engines])
484 fi
485
486 if test "x$have_evas_engine_software_x11" = "xstatic" ; then
487    AC_DEFINE(EVAS_STATIC_BUILD_SOFTWARE_X11, [1], [Build software X11 engines as part of libevas])
488 fi
489
490 AM_CONDITIONAL([BUILD_ENGINE_SOFTWARE_X11], [test "x${have_evas_engine_software_x11}" = "xyes" -o "x${have_evas_engine_software_x11}" = "xstatic"])
491 AM_CONDITIONAL([EVAS_STATIC_BUILD_SOFTWARE_X11], [test "x${have_evas_engine_software_x11}" = "xstatic"])
492
493 AC_SUBST(have_evas_engine_software_xlib)
494 AC_SUBST(have_evas_engine_software_xcb)
495
496 # if software 16 x11 is enabled - build software_16 (the generic 16bit
497 # engine). later enable it fb_16 or other "16" bit engines are enabled.
498 have_evas_engine_software_16="no"
499 if test "x$have_evas_engine_software_16_x11" = "xyes" -o "x$have_evas_engine_software_16_x11" = "xstatic"; then
500    have_evas_engine_software_16="yes"
501 fi
502 if test "x$have_evas_engine_software_sdl" = "xyes" -o "x$have_evas_engine_software_sdl" = "xstatic"; then
503    have_evas_engine_software_16="yes"
504 fi
505 if test "x$have_evas_engine_software_16_ddraw" = "xyes" -o "x$have_evas_engine_software_16_ddraw" = "xstatic"; then
506    have_evas_engine_software_16="yes"
507 fi
508 if test "x$have_evas_engine_software_16_wince" = "xyes" -o "x$have_evas_engine_software_16_wince" = "xstatic"; then
509    have_evas_engine_software_16="yes"
510 fi
511 AM_CONDITIONAL(BUILD_ENGINE_SOFTWARE_16, test "x$have_evas_engine_software_16" = "xyes")
512
513 # if software 16 need to be build as part of libevas.so
514 have_static_software_16="no"
515 AC_ARG_ENABLE([static-software-16],
516    [AC_HELP_STRING([--enable-static-software-16], [Build software 16 engine as part of libevas])],
517    [have_static_software_16=${enableval}]
518 )
519 AC_MSG_CHECKING([Whether to build software 16 engine as part of libevas])
520 AC_MSG_RESULT([${have_static_software_16}])
521
522 AM_CONDITIONAL(EVAS_STATIC_BUILD_SOFTWARE_16, test "x${have_static_software_16}" = "xyes")
523 if test "x${have_static_software_16}" = "xyes"; then
524    AC_DEFINE(EVAS_STATIC_BUILD_SOFTWARE_16, [1], [Build software 16 engine as part of libevas])
525 fi
526
527 #####################################################################
528 ## Image loaders
529
530 EVAS_CHECK_IMAGE_LOADER([Edb], [${want_evas_image_loader_edb}])
531
532 EVAS_CHECK_IMAGE_LOADER([Eet], [${want_evas_image_loader_eet}])
533 EVAS_CHECK_FONT_LOADER([${want_evas_font_loader_eet}])
534
535 EVAS_CHECK_IMAGE_LOADER([Gif], [${want_evas_image_loader_gif}])
536
537 have_evas_image_saver_jpeg="no"
538 EVAS_CHECK_IMAGE_LOADER([Jpeg], [${want_evas_image_loader_jpeg}])
539
540 dnl Windows has no sigsetjmp function, nor equivalent.
541 dnl So we disable the jpeg saver.
542 dnl TODO: must find a workaround
543 case "$host_os" in
544    mingw* | cegcc*)
545       ;;
546    *)
547       if test "x${have_evas_image_loader_jpeg}" = "xyes" ; then
548          have_evas_image_saver_jpeg="yes"
549       fi
550       ;;
551 esac
552 AM_CONDITIONAL([BUILD_SAVER_JPEG], [test "x${have_evas_image_saver_jpeg}" = "xyes"])
553
554 EVAS_CHECK_IMAGE_LOADER([PMAPS], [${want_evas_image_loader_pmaps}])
555
556 EVAS_CHECK_IMAGE_LOADER([PNG], [${want_evas_image_loader_png}])
557
558 EVAS_CHECK_IMAGE_LOADER([SVG], [${want_evas_image_loader_svg}])
559
560 EVAS_CHECK_IMAGE_LOADER([Tiff], [${want_evas_image_loader_tiff}])
561
562 EVAS_CHECK_IMAGE_LOADER([XPM], [${want_evas_image_loader_xpm}])
563
564
565 #####################################################################
566 ## Cpu based optimizations
567
568 #######################################
569 ## PTHREADS
570 pthread_cflags=""
571 pthread_libs=""
572 build_pthreads="no"
573 has_pthreads="no"
574 need_pthreads="no"
575 # basic pthread support
576 AC_CHECK_HEADER(pthread.h,
577   [
578    has_pthreads="yes"
579   ],
580   [
581    has_pthreads="no"
582   ]
583 )
584
585 # sched_getaffinity pthread_attr_setaffinity_np
586 AC_CHECK_HEADERS(pthread.h sched.h,
587       [
588         AC_CHECK_LIB(pthread, pthread_attr_setaffinity_np,
589           [
590             AC_CHECK_LIB(pthread, pthread_barrier_wait,
591               [ build_pthreads="yes" ],
592               [ build_pthreads="no" ]
593             )
594           ],
595           [ build_pthreads="no" ]
596         )
597       ],
598       [ build_pthreads="no" ]
599 )
600
601 #######################################
602 ## Pthread
603 AC_MSG_CHECKING(whether to build pthread code)
604 AC_ARG_ENABLE(pthreads,
605   AC_HELP_STRING([--enable-pthreads], [enable threaded rendering]),
606   [
607       if test "x$enableval" = "xyes" ; then
608         if test "x$build_pthreads" = "xyes"; then
609           AC_MSG_RESULT(yes)
610           AC_DEFINE(BUILD_PTHREAD, 1, [Build Threaded Rendering])
611           build_pthreads="yes"
612           need_pthreads="yes"
613         else
614           if "x$use_strict" = "xyes"; then
615             AC_MSG_ERROR(pthreads headers or functions not found (strict dependencies checking))
616           else
617             AC_MSG_RESULT(no: pthread headers or functions not found)
618           fi
619         fi
620       else
621         AC_MSG_RESULT(no)
622         build_pthreads="no"
623       fi
624   ],
625   [
626     AC_MSG_RESULT($build_pthreads)
627     if test "x$build_pthreads" = "xyes" ; then
628       AC_DEFINE(BUILD_PTHREAD, 1, [Build Threaded Rendering])
629       need_pthreads="yes"
630     fi
631   ]
632 )
633
634 #######################################
635 ## Pipe Renderer
636 build_pipe_render="no"
637 AC_MSG_CHECKING(whether to build Threaded Pipe Rendering support)
638 AC_ARG_ENABLE(pipe-render,
639   AC_HELP_STRING([--enable-pipe-render], [enable threaded pipe rendering support]),
640   [ build_pipe_render=$enableval ]
641 )
642 AC_MSG_RESULT($build_pipe_render)
643
644 AC_MSG_CHECKING(whether we can build Threaded Pipe Rendering support)
645 if test \( "x$build_pipe_render" = "xyes" -o "x$build_pipe_render" = "xauto" \); then
646   AC_MSG_RESULT(yes)
647   AC_DEFINE(BUILD_PIPE_RENDER, 1, [Build pipe render support])
648   build_pipe_render="yes"
649   need_pthreads="yes"
650 else
651   AC_MSG_RESULT(no)
652   build_pipe_render="no"
653 fi
654
655 #######################################
656 ## Async events
657 build_async_events="auto"
658 AC_MSG_CHECKING(whether to build Async Events support)
659 AC_ARG_ENABLE(async-events,
660   AC_HELP_STRING([--enable-async-events], [enable async events support]),
661   [ build_async_events=$enableval ]
662 )
663 AC_MSG_RESULT($build_async_events)
664
665 AC_MSG_CHECKING(whether we can build Async Events support)
666 if test \( "x$build_async_events" = "xyes" -o "x$build_async_events" = "xauto" \) -a "x$has_pthreads" = "xyes"; then
667   AC_MSG_RESULT(yes)
668   AC_DEFINE(BUILD_ASYNC_EVENTS, 1, [Build async events support])
669   build_async_events="yes"
670   need_pthreads="yes"
671 else
672   AC_MSG_RESULT(no)
673   build_async_events="no"
674 fi
675
676 #######################################
677 ## Async image preload
678 build_async_preload="auto"
679 AC_MSG_CHECKING(whether to build Async Image Preload support)
680 AC_ARG_ENABLE(async-preload,
681   AC_HELP_STRING([--enable-async-preload], [enable async image preloading support]),
682   [ build_async_preload=$enableval ]
683 )
684 AC_MSG_RESULT($build_async_preload)
685
686 AC_MSG_CHECKING(whether we can build Async Image Preload support)
687 if test \( "x$build_async_preload" = "xyes" -o "x$build_async_preload" = "xauto" \) -a "x$build_async_events" = "xyes"; then
688   AC_MSG_RESULT(yes)
689   AC_DEFINE(BUILD_ASYNC_PRELOAD, 1, [Build async image preload support])
690   build_async_preload="yes"
691   need_pthreads="yes"
692 else
693   AC_MSG_RESULT(no)
694   build_async_preload="no"
695 fi
696
697 #######################################
698 ## Link with pthread if needed
699 AC_MSG_CHECKING(whether we should link with pthread)
700 if test "x$need_pthreads" = "xyes"; then
701   AC_MSG_RESULT(yes)
702   pthread_cflags=""
703   pthread_libs="-lpthread"
704 else
705   AC_MSG_RESULT(no)
706 fi
707
708 #######################################
709 ## MMX
710 build_cpu_mmx="no"
711 case $host_cpu in
712   i*86)
713     build_cpu_mmx="yes"
714     ;;
715   x86_64)
716     build_cpu_mmx="yes"
717     ;;
718 esac
719 AC_MSG_CHECKING(whether to build mmx code)
720 AC_ARG_ENABLE(cpu-mmx,
721   AC_HELP_STRING([--enable-cpu-mmx], [enable mmx code]),
722   [
723       if test "x$enableval" = "xyes" ; then
724         AC_MSG_RESULT(yes)
725         AC_DEFINE(BUILD_MMX, 1, [Build MMX Code])
726         build_cpu_mmx="yes"
727       else
728         AC_MSG_RESULT(no)
729         build_cpu_mmx="no"
730       fi
731   ],
732   [
733     AC_MSG_RESULT($build_cpu_mmx)
734     if test "x$build_cpu_mmx" = "xyes" ; then
735       AC_DEFINE(BUILD_MMX, 1, [Build MMX Code])
736     fi
737   ]
738 )
739
740 #######################################
741 ## SSE
742 build_cpu_sse="no"
743 case $host_cpu in
744   i*86)
745     build_cpu_sse="yes"
746     ;;
747   x86_64)
748     build_cpu_sse="yes"
749     ;;
750 esac
751 AC_MSG_CHECKING(whether to build sse code)
752 AC_ARG_ENABLE(cpu-sse,
753   AC_HELP_STRING([--enable-cpu-sse], [enable sse code]),
754   [
755       if test "x$enableval" = "xyes" ; then
756         AC_MSG_RESULT(yes)
757         AC_DEFINE(BUILD_SSE, 1, [Build SSE Code])
758         build_cpu_sse="yes"
759       else
760         AC_MSG_RESULT(no)
761         build_cpu_sse="no"
762       fi
763   ],
764   [
765     AC_MSG_RESULT($build_cpu_sse)
766     if test "x$build_cpu_sse" = "xyes" ; then
767       AC_DEFINE(BUILD_SSE, 1, [Build SSE Code])
768     fi
769   ]
770 )
771
772 #######################################
773 ## ALTIVEC
774 build_cpu_altivec="no"
775 case $host_cpu in
776   *power* | *ppc*)
777     build_cpu_altivec="auto"
778     ;;
779 esac
780 altivec_cflags=""
781 AC_MSG_CHECKING(whether to build altivec code)
782 AC_ARG_ENABLE(cpu-altivec,
783   AC_HELP_STRING([--enable-cpu-altivec], [enable altivec code]),
784   [ build_cpu_altivec=$enableval ],
785   [
786     if test ! "x$build_cpu_altivec" = "xauto"; then
787       build_cpu_altivec="no"
788     fi
789   ]
790 )
791 AC_MSG_RESULT($build_cpu_altivec)
792
793 if test "x$build_cpu_altivec" = "xyes"; then
794    AC_CHECK_HEADER(altivec.h,
795      [
796         AC_DEFINE(BUILD_ALTIVEC, 1, [Build Altivec Code])
797         AC_DEFINE(HAVE_ALTIVEC_H, 1, [Have altivec.h header file])
798         build_cpu_altivec="yes"
799      ],
800      [
801        save_CFLAGS=$CFLAGS
802        save_CPPFLAGS=$CPPFLAGS
803        CFLAGS=$CFLAGS" -maltivec"
804        CPPFLAGS=$CPPFLAGS" -maltivec"
805        unset ac_cv_header_altivec_h
806        AC_CHECK_HEADER(altivec.h,
807          [
808             AC_DEFINE(BUILD_ALTIVEC, 1, [Build Altivec Code])
809             AC_DEFINE(HAVE_ALTIVEC_H, 1, [Have altivec.h header file])
810             build_cpu_altivec="yes"
811          ],
812          [
813             if test "x$build_cpu_altivec" = "xyes" -a "x$use_strict" = "xyes" ; then
814               AC_MSG_ERROR(Altivec not found (strict dependencies checking))
815             fi
816             build_cpu_altivec="no"
817          ]
818        )
819        CFLAGS=$save_CFLAGS
820        CPPFLAGS=$save_CPPFLAGS
821      ]
822    )
823 fi
824
825 if test "x$build_cpu_altivec" = "xyes"; then
826    AC_MSG_CHECKING(whether to use altivec compiler flag)
827    if test "x$GCC" = "xyes"; then
828       if echo "int main(){return 0;}" | ${CPP} -faltivec - > /dev/null 2>&1; then
829          altivec_cflags="-faltivec"
830          AC_DEFINE(BUILD_ALTIVEC, 1, [Build Altivec Code])
831       elif echo "int main(){return 0;}" | ${CPP} -maltivec - > /dev/null 2>&1; then
832          altivec_cflags="-maltivec"
833          AC_DEFINE(BUILD_ALTIVEC, 1, [Build Altivec Code])
834       fi
835    fi
836   AC_MSG_RESULT($altivec_cflags)
837    CFLAGS="$CFLAGS $altivec_cflags"
838 fi
839
840 #######################################
841 ## NEON
842 build_cpu_neon="no"
843 case $host_cpu in
844   armv7*)
845     build_cpu_neon="yes"
846     ;;
847 esac
848 AC_MSG_CHECKING(whether to build neon code)
849 AC_ARG_ENABLE(cpu-neon,
850   AC_HELP_STRING([--enable-cpu-neon], [enable neon code]),
851   [
852       if test "x$enableval" = "xyes" ; then
853         AC_MSG_RESULT(yes)
854         AC_DEFINE(BUILD_NEON, 1, [Build NEON Code])
855         build_cpu_neon="yes"
856       else
857         AC_MSG_RESULT(no)
858         build_cpu_neon="no"
859       fi
860   ],
861   [
862     AC_MSG_RESULT($build_cpu_neon)
863     if test "x$build_cpu_neon" = "xyes" ; then
864       AC_DEFINE(BUILD_NEON, 1, [Build NEON Code])
865     fi
866   ]
867 )
868
869 #######################################
870 ## C
871 build_cpu_c="yes"
872 AC_MSG_CHECKING(whether to build c code)
873 AC_ARG_ENABLE(cpu-c,
874   AC_HELP_STRING([--enable-cpu-c], [enable C code]),
875   [
876       if test "x$enableval" = "xyes" ; then
877         AC_MSG_RESULT(yes)
878         AC_DEFINE(BUILD_C, 1, [Build plain C code])
879         build_cpu_c="yes"
880       else
881         AC_MSG_RESULT(no)
882         build_cpu_c="no"
883       fi
884   ], [
885       AC_MSG_RESULT($build_cpu_c)
886       if test "x$build_cpu_c" = "xyes" ; then
887         AC_DEFINE(BUILD_C, 1, [Build plain C code])
888       fi
889   ]
890 )
891
892 #######################################
893 ## MAGIC_DEBUG
894 want_evas_magic_debug="yes"
895 AC_MSG_CHECKING(whether to check magic for evas object)
896 AC_ARG_ENABLE(evas-magic-debug,
897   AC_HELP_STRING(
898     [--disable-evas-magic-debug],
899     [disable MAGIC_DEBUG check when people pass in wrong object type. [[default=enabled]]]
900   ),
901   [ want_evas_magic_debug="$enableval" ]
902 )
903 AC_MSG_RESULT($want_evas_magic_debug)
904
905 AM_CONDITIONAL(EVAS_MAGIC_DEBUG, test "x$want_evas_magic_debug" = "xyes")
906 if test "x$want_evas_magic_debug" = "xyes"; then
907   AC_DEFINE(EVAS_MAGIC_DEBUG, 1, [complain when peole pass in wrong object types etc.])
908 fi
909
910 #####################################################################
911 ## ARGB engine options
912
913 #######################################
914 ## Nearest sampling scaler
915 EVAS_CHECK_SCALER([scale-sample], [sampling scaler], [scaler_sample="yes"], [scaler_sample="no"])
916 ## Smooth super and sub sampling scaler
917 EVAS_CHECK_SCALER([scale-smooth], [smooth scaler], [scaler_smooth="yes"], [scaler_smooth="no"])
918
919 #######################################
920 ## YUV -> ARGB converter
921 conv_yuv="no"
922 conv_yuv="yes"
923 AC_MSG_CHECKING(whether to build yuv converter code)
924 AC_ARG_ENABLE(convert-yuv,
925   AC_HELP_STRING([--enable-convert-yuv], [enable yuv converter code]),
926   [
927       if test "x$enableval" = "xyes" ; then
928         AC_MSG_RESULT(yes)
929         AC_DEFINE(BUILD_CONVERT_YUV, 1, [YUV Converter Support])
930         conv_yuv="yes"
931       else
932         AC_MSG_RESULT(no)
933         conv_yuv="no"
934       fi
935   ], [
936       AC_MSG_RESULT($conv_yuv)
937       if test "x$conv_yuv" = "xyes" ; then
938         AC_DEFINE(BUILD_CONVERT_YUV, 1, [YUV Converter Support])
939       fi
940   ]
941 )
942
943 #####################################################################
944 ## Output rendering features
945
946 #######################################
947 ## Small dither mask instead of big one (lower quality)
948 EVAS_CHECK_DITHER([small-dither-mask], [small dither mask], [conv_small_dither="yes"], [conv_small_dither="no"])
949 ## Alternate Line dither mask instead of big one (lower quality - but fastest)
950 EVAS_CHECK_DITHER([line-dither-mask], [line dither mask], [conv_line_dither="yes"], [conv_line_dither="no"])
951 ## No dither mask at all for 16bpp
952 EVAS_CHECK_DITHER([no-dither-mask], [conversion to 16bpp without dither mask], [conv_no_dither="yes"], [conv_no_dither="no"])
953
954 #######################################
955 ## Convert to 8bpp RGB 332
956 EVAS_CONVERT_COLOR(8, RGB, 332, [yes])
957 ## Convert to 8bpp RGB 666
958 EVAS_CONVERT_COLOR(8, RGB, 666, [yes])
959 ## Convert to 8bpp RGB 232
960 EVAS_CONVERT_COLOR(8, RGB, 232, [yes])
961 ## Convert to 8bpp RGB 222
962 EVAS_CONVERT_COLOR(8, RGB, 222, [yes])
963 ## Convert to 8bpp RGB 221
964 EVAS_CONVERT_COLOR(8, RGB, 221, [yes])
965 ## Convert to 8bpp RGB 121
966 EVAS_CONVERT_COLOR(8, RGB, 121, [yes])
967 ## Convert to 8bpp RGB 111
968 EVAS_CONVERT_COLOR(8, RGB, 111, [yes])
969 ## Convert to 16bpp RGB 565
970 EVAS_CONVERT_COLOR(16, RGB, 565)
971 ## Convert to 16bpp BGR 565
972 EVAS_CONVERT_COLOR(16, BGR, 565)
973 ## Convert to 16bpp RGB 555
974 EVAS_CONVERT_COLOR(16, RGB, 555)
975 ## Convert to 16bpp RGB 444
976 EVAS_CONVERT_COLOR(16, RGB, 444)
977
978 #######################################
979 ## Convert to 16bpp RGB 565 (444 ipaq)
980 conv_16_rgb_ipq="yes"
981 AC_MSG_CHECKING(whether to build 16bpp 565 (444 ipaq) converter code)
982 AC_ARG_ENABLE(convert-16-rgb-ipq,
983   AC_HELP_STRING([--disable-convert-16-rgb-ipq], [disable 16bpp 565 (444 ipaq) converter code]),
984   [
985       if test "x$enableval" = "xyes" ; then
986         AC_DEFINE(BUILD_CONVERT_16_RGB_454645, 1, [16bpp 565 (444 ipaq) Converter Support])
987         conv_16_rgb_ipq="yes"
988       else
989         conv_16_rgb_ipq="no"
990       fi
991   ], [
992       if test "x$conv_16_rgb_ipq" = "xyes" ; then
993         AC_DEFINE(BUILD_CONVERT_16_RGB_454645, 1, [16bpp 565 (444 ipaq) Converter Support])
994       fi
995   ]
996 )
997 AC_MSG_RESULT($conv_16_rgb_ipq)
998
999 #######################################
1000 ## Convert to 16bpp RGB with rotation of 0
1001 EVAS_CONVERT_ROT(16, RGB, 0)
1002 ## Convert to 16bpp RGB with rotation of 180
1003 EVAS_CONVERT_ROT(16, RGB, 180)
1004 ## Convert to 16bpp RGB with rotation of 270
1005 EVAS_CONVERT_ROT(16, RGB, 270)
1006 ## Convert to 16bpp RGB with rotation of 90
1007 EVAS_CONVERT_ROT(16, RGB, 90)
1008
1009 #######################################
1010 ## Convert to 24bpp RGB 888
1011 EVAS_CONVERT_COLOR(24, RGB, 888)
1012 ## Convert to 24bpp BGR 888
1013 EVAS_CONVERT_COLOR(24, BGR, 888)
1014 ## Convert to 32bpp RGB 8888
1015 EVAS_CONVERT_COLOR(32, RGB, 8888)
1016 ## Convert to 32bpp RGBX 8888
1017 EVAS_CONVERT_COLOR(32, RGBX, 8888)
1018 ## Convert to 32bpp BGR 8888
1019 EVAS_CONVERT_COLOR(32, BGR, 8888)
1020 ## Convert to 32bpp BGRX 8888
1021 EVAS_CONVERT_COLOR(32, BGRX, 8888)
1022
1023 #######################################
1024 ## Convert to 24bpp RGB 666 (666 ezx)
1025 conv_24_rgb_ezx="yes"
1026 AC_MSG_CHECKING(whether to build 24bpp 666 (666 ezx) converter code)
1027 AC_ARG_ENABLE(convert-24-rgb-ezx,
1028   AC_HELP_STRING([--disable-convert-24-rgb-ezx], [disable 24bpp 666 (666 ezx) converter code]),
1029   [
1030       if test "x$enableval" = "xyes" ; then
1031         AC_DEFINE(BUILD_CONVERT_24_RGB_666, 1, [24bpp 666 (666 ezx) Converter Support])
1032         conv_24_rgb_ezx="yes"
1033       else
1034         conv_24_rgb_ezx="no"
1035       fi
1036   ], [
1037       if test "x$conv_24_rgb_ezx" = "xyes" ; then
1038         AC_DEFINE(BUILD_CONVERT_24_RGB_666, 1, [24bpp 666 (666 ezx) Converter Support])
1039       fi
1040   ]
1041 )
1042 AC_MSG_RESULT($conv_24_rgb_ezx)
1043
1044 #######################################
1045 ## Convert to 32bpp RGB 666 (666 ezx)
1046 conv_32_rgb_ezx="yes"
1047 AC_MSG_CHECKING(whether to build 32bpp 666 (666 ezx) converter code)
1048 AC_ARG_ENABLE(convert-32-rgb-ezx,
1049   AC_HELP_STRING([--disable-convert-32-rgb-ezx], [disable 32bpp 666 (666 ezx) converter code]),
1050   [
1051       if test "x$enableval" = "xyes" ; then
1052         AC_DEFINE(BUILD_CONVERT_32_RGB_666, 1, [32bpp 666 (666 ezx) Converter Support])
1053         conv_32_rgb_ezx="yes"
1054       else
1055         conv_32_rgb_ezx="no"
1056       fi
1057   ], [
1058       if test "x$conv_32_rgb_ezx" = "xyes" ; then
1059         AC_DEFINE(BUILD_CONVERT_32_RGB_666, 1, [32bpp 666 (666 ezx) Converter Support])
1060       fi
1061   ]
1062 )
1063 AC_MSG_RESULT($conv_32_rgb_ezx)
1064
1065 #######################################
1066 ## Convert to 32bpp RGB with rotation of 0
1067 EVAS_CONVERT_ROT(32, RGB, 0)
1068 ## Convert to 32bpp RGB with rotation of 180
1069 EVAS_CONVERT_ROT(32, RGB, 180)
1070 ## Convert to 32bpp RGB with rotation of 270
1071 EVAS_CONVERT_ROT(32, RGB, 270)
1072 ## Convert to 32bpp RGB with rotation of 90
1073 EVAS_CONVERT_ROT(32, RGB, 90)
1074
1075 ## valgrind
1076 want_valgrind="no"
1077 have_valgrind="no"
1078
1079 AC_MSG_CHECKING(whether to enable build with valgrind)
1080 AC_ARG_ENABLE(valgrind,
1081   AC_HELP_STRING([--enable-valgrind], [enable valgrind fixes to stop false reports]),
1082   [ want_valgrind=$enableval ]
1083 )
1084 AC_MSG_RESULT($want_valgrind)
1085
1086 if test x$want_valgrind = "xyes"; then
1087   PKG_CHECK_MODULES(VALGRIND, valgrind >= 2.4.0,
1088     [
1089       AC_DEFINE(HAVE_VALGRIND, 1, [Valgrind support])
1090       have_valgrind=yes
1091     ],
1092     [
1093       if test "x$want_valgrind" = "xyes" -a "x$use_strict" = "xyes" ; then
1094         AC_MSG_ERROR([Valgrind not found (strict dependencies checking)])
1095       fi
1096     ]
1097   )
1098 fi
1099
1100 #####################################################################
1101 ## Fill in flags
1102
1103 AC_SUBST(altivec_cflags)
1104 AC_SUBST(pthread_cflags)
1105 AC_SUBST(pthread_libs)
1106
1107
1108 #####################################################################
1109 ## Output
1110
1111 AC_OUTPUT([
1112 Makefile
1113 evas-directfb.pc
1114 evas-fb.pc
1115 evas-opengl-glew.pc
1116 evas-opengl-x11.pc
1117 evas-quartz.pc
1118 evas-software-buffer.pc
1119 evas-software-x11.pc
1120 evas-software-16-x11.pc
1121 evas-xrender-x11.pc
1122 evas-xrender-xcb.pc
1123 evas-software-gdi.pc
1124 evas-software-ddraw.pc
1125 evas-software-16-ddraw.pc
1126 evas-direct3d.pc
1127 evas-software-16-wince.pc
1128 evas-software-sdl.pc
1129 evas.pc
1130 doc/evas.dox
1131 doc/Makefile
1132 src/Makefile
1133 src/bin/Makefile
1134 src/lib/Makefile
1135 src/lib/canvas/Makefile
1136 src/lib/file/Makefile
1137 src/lib/imaging/Makefile
1138 src/lib/cache/Makefile
1139 src/lib/cserve/Makefile
1140 src/lib/engines/Makefile
1141 src/lib/engines/common/Makefile
1142 src/lib/engines/common/evas_op_add/Makefile
1143 src/lib/engines/common/evas_op_blend/Makefile
1144 src/lib/engines/common/evas_op_copy/Makefile
1145 src/lib/engines/common/evas_op_mask/Makefile
1146 src/lib/engines/common/evas_op_mul/Makefile
1147 src/lib/engines/common/evas_op_sub/Makefile
1148 src/lib/engines/common_16/Makefile
1149 src/modules/Makefile
1150 src/modules/engines/Makefile
1151 src/modules/engines/software_generic/Makefile
1152 src/modules/engines/software_gdi/Makefile
1153 src/modules/engines/software_ddraw/Makefile
1154 src/modules/engines/direct3d/Makefile
1155 src/modules/engines/software_16_wince/Makefile
1156 src/modules/engines/software_x11/Makefile
1157 src/modules/engines/fb/Makefile
1158 src/modules/engines/buffer/Makefile
1159 src/modules/engines/directfb/Makefile
1160 src/modules/engines/gl_common/Makefile
1161 src/modules/engines/gl_glew/Makefile
1162 src/modules/engines/gl_x11/Makefile
1163 src/modules/engines/quartz/Makefile
1164 src/modules/engines/xrender_x11/Makefile
1165 src/modules/engines/software_sdl/Makefile
1166 src/modules/engines/software_16/Makefile
1167 src/modules/engines/software_16_x11/Makefile
1168 src/modules/engines/software_16_ddraw/Makefile
1169 src/modules/engines/software_16_sdl/Makefile
1170 src/modules/loaders/Makefile
1171 src/modules/loaders/edb/Makefile
1172 src/modules/loaders/eet/Makefile
1173 src/modules/loaders/gif/Makefile
1174 src/modules/loaders/jpeg/Makefile
1175 src/modules/loaders/png/Makefile
1176 src/modules/loaders/tiff/Makefile
1177 src/modules/loaders/xpm/Makefile
1178 src/modules/loaders/svg/Makefile
1179 src/modules/loaders/pmaps/Makefile
1180 src/modules/savers/Makefile
1181 src/modules/savers/edb/Makefile
1182 src/modules/savers/eet/Makefile
1183 src/modules/savers/jpeg/Makefile
1184 src/modules/savers/png/Makefile
1185 src/modules/savers/tiff/Makefile
1186 src/lib/include/Makefile
1187 README
1188 evas.spec
1189 ])
1190
1191 #disabled for the release:
1192 # evas-cairo-x11.pc
1193 # evas-software-qtopia.pc
1194 # src/modules/engines/cairo_common/Makefile
1195 # src/modules/engines/cairo_x11/Makefile
1196 # src/modules/engines/software_qtopia/Makefile
1197
1198
1199 #####################################################################
1200 ## Info
1201
1202 echo
1203 echo
1204 echo
1205 echo "------------------------------------------------------------------------"
1206 echo "$PACKAGE $VERSION"
1207 echo "------------------------------------------------------------------------"
1208 echo
1209 echo "Configuration Options Summary:"
1210 echo
1211 echo "Engines:"
1212 echo "  Software Memory Buffer.....: $have_evas_engine_buffer"
1213 echo "  Software X11...............: $have_evas_engine_software_x11 (Xlib: $have_evas_engine_software_xlib) (XCB: $have_evas_engine_software_xcb)"
1214 echo "  XRender X11................: $have_evas_engine_xrender_x11 (XCB: $have_evas_engine_xrender_xcb)"
1215 echo "  OpenGL X11.................: $have_evas_engine_gl_x11"
1216 #echo "  Cairo X11..................: $have_evas_engine_cairo_x11"
1217 echo "  Software GDI...............: $have_evas_engine_software_gdi"
1218 echo "  Software DirectDraw........: $have_evas_engine_software_ddraw"
1219 echo "  Direct3d...................: $have_evas_engine_direct3d"
1220 echo "  Quartz.....................: $have_evas_engine_quartz"
1221 echo "  OpenGL Glew................: $have_evas_engine_gl_glew"
1222 echo "  Software SDL...............: $have_evas_engine_software_sdl (primitive: $sdl_primitive)"
1223 echo "  Software Framebuffer.......: $have_evas_engine_fb"
1224 echo "  DirectFB...................: $have_evas_engine_directfb"
1225 #echo "  Software Qtopia............: $have_evas_engine_software_qtopia"
1226 echo "  Software 16bit ............: $have_evas_engine_software_16"
1227 echo "  Software 16bit X11.........: $have_evas_engine_software_16_x11"
1228 echo "  Software 16bit Directdraw..: $have_evas_engine_software_16_ddraw"
1229 echo "  Software 16bit WinCE.......: $have_evas_engine_software_16_wince"
1230 echo "  Software 16bit SDL.........: $have_evas_engine_software_sdl (primitive: $sdl_primitive)"
1231 # FIXME: opengl engine needs to be fixed and tested lots for all drivers
1232 echo
1233 echo "Image Loaders:"
1234 echo "  EDB.....................: $have_evas_image_loader_edb"
1235 echo "  EET.....................: $have_evas_image_loader_eet"
1236 echo "  GIF.....................: $have_evas_image_loader_gif"
1237 echo "  JPEG....................: $have_evas_image_loader_jpeg"
1238 echo "  PMAPS...................: $have_evas_image_loader_pmaps"
1239 echo "  PNG.....................: $have_evas_image_loader_png"
1240 echo "  SVG.....................: $have_evas_image_loader_svg"
1241 echo "  TIFF....................: $have_evas_image_loader_tiff"
1242 echo "  XPM.....................: $have_evas_image_loader_xpm"
1243 # FIXME: need to add modular image loader system
1244 # FIXME: add more image loader modules
1245 echo
1246 echo "Font Sourcing Systems:"
1247 echo "  EET.....................: $have_evas_font_loader_eet"
1248 echo
1249 echo "Font Searching Systems:"
1250 echo "  Fontconfig..............: $have_fontconfig"
1251 echo "  Fribidi.................: $have_fribidi"
1252 # FIXME: add non freetype2 font engine support
1253 # FIXME: make freetype2 optional
1254 echo
1255 echo "CPU Specific Extensions:"
1256 echo "  Fallback C Code.........: $build_cpu_c"
1257 echo "  MMX.....................: $build_cpu_mmx"
1258 echo "  SSE.....................: $build_cpu_sse"
1259 echo "  ALTIVEC.................: $build_cpu_altivec"
1260 echo "  NEON....................: $build_cpu_neon"
1261 echo "  Thread Support..........: $build_pthreads"
1262 echo
1263 echo "Features:"
1264 echo "  MAGIC_DEBUG.............: $want_evas_magic_debug"
1265 echo "  Cache Server............: $want_evas_cserve"
1266 echo
1267 echo "  Threaded Pipe Rendering.: $build_pipe_render"
1268 echo "  Async Events............: $build_async_events"
1269 echo "  Async Image Preload.....: $build_async_preload"
1270 echo
1271 echo "ARGB Software Engine Options:"
1272 echo "  Sampling Scaler.........: $scaler_sample"
1273 echo "  Smooth Scaler...........: $scaler_smooth"
1274 # FIXME: add an mmx scaler routine
1275 echo "  YUV Converter...........: $conv_yuv"
1276 # FIXME: add more YUV format and colorvariant support
1277 echo
1278 echo "ARGB Conversion Options:"
1279 echo "  Smaller Dither Mask.....: $conv_small_dither"
1280 echo "  Line Dither Mask........: $conv_line_dither"
1281 echo "  No Dither Mask for 16bpp: $conv_no_dither"
1282 echo "  8bpp RGB 332............: $conv_8_rgb_332"
1283 echo "  8bpp RGB 666............: $conv_8_rgb_666"
1284 echo "  8bpp RGB 232............: $conv_8_rgb_232"
1285 echo "  8bpp RGB 222............: $conv_8_rgb_222"
1286 echo "  8bpp RGB 221............: $conv_8_rgb_221"
1287 echo "  8bpp RGB 121............: $conv_8_rgb_121"
1288 echo "  8bpp RGB 111............: $conv_8_rgb_111"
1289 # FIXME: add grayscale and B&W support
1290 echo "  16bpp RGB 565...........: $conv_16_rgb_565"
1291 echo "  16bpp BGR 565...........: $conv_16_bgr_565"
1292 echo "  16bpp RGB 555...........: $conv_16_rgb_555"
1293 echo "  16bpp RGB 444...........: $conv_16_rgb_444"
1294 echo "  16bpp RGB 565 (444 ipaq): $conv_16_rgb_ipq"
1295 # FIXME: add 555 (444 ipaq) support
1296 # FIXME: add 30bpp support
1297 # FIXME: add palletted support
1298 # FIXME: add 8bpp and below rotation
1299 echo "  16bpp Rotation 0........: $conv_16_rgb_rot_0"
1300 echo "  16bpp Rotation 90.......: $conv_16_rgb_rot_90"
1301 echo "  16bpp Rotation 180......: $conv_16_rgb_rot_180"
1302 echo "  16bpp Rotation 270......: $conv_16_rgb_rot_270"
1303 echo "  24bpp RGB 888...........: $conv_24_rgb_888"
1304 echo "  24bpp BGR 888...........: $conv_24_bgr_888"
1305 echo "  24bpp RGB 666 (666 ezx).: $conv_24_rgb_ezx"
1306 # FIXME: add 24bpp rotation
1307 echo "  32bpp RGB 8888..........: $conv_32_rgb_8888"
1308 echo "  32bpp RGBX 8888.........: $conv_32_rgbx_8888"
1309 echo "  32bpp BGR 8888..........: $conv_32_bgr_8888"
1310 echo "  32bpp BGRX 8888.........: $conv_32_bgrx_8888"
1311 echo "  32bpp RGB 666 (666 ezx).: $conv_32_rgb_ezx"
1312 echo "  32bpp Rotation 0........: $conv_32_rgb_rot_0"
1313 echo "  32bpp Rotation 90.......: $conv_32_rgb_rot_90"
1314 echo "  32bpp Rotation 180......: $conv_32_rgb_rot_180"
1315 echo "  32bpp Rotation 270......: $conv_32_rgb_rot_270"
1316 echo
1317 echo "Documentation.............: ${build_doc}"
1318 echo
1319 echo "------------------------------------------------------------------------"
1320 echo
1321 echo "Now type 'make' ('gmake' on some systems) to compile $PACKAGE,"
1322 echo "and then afterwards as root (or the user who will install this), type"
1323 echo "'make install'. Change users with 'su' or 'sudo' appropriately."
1324 echo
1325 if test "x${have_static_module}" = "xyes" ; then
1326 echo -e "\0033\01331;31mWarning\0033\01331;0m: You are trying to link statically one or more modules to Evas."
1327 echo "         You must know what you are doing, or else you will have a lot of problems."
1328 echo "         And Kenny will be killed."
1329 echo "         Think about that."
1330 echo
1331 fi