1 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
2 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
3 m4_define([v_maj], [1])
4 m4_define([v_min], [2])
5 m4_define([v_mic], [99])
6 m4_define([v_rev], m4_esyscmd([(svnversion "${SVN_REPO_PATH:-.}" | grep -v '\(export\|Unversioned directory\)' || echo 0) | awk -F : '{printf("%s\n", $1);}' | tr -d ' :MSP\n']))
7 m4_if(v_rev, [0], [m4_define([v_rev], m4_esyscmd([git log 2> /dev/null | (grep -m1 git-svn-id || echo 0) | sed -e 's/.*@\([0-9]*\).*/\1/' | tr -d '\n']))])
8 ##-- When released, remove the dnl on the below line
9 dnl m4_undefine([v_rev])
10 ##-- When doing snapshots - change soname. remove dnl on below line
11 dnl m4_define([relname], [ver-pre-svn-07])
12 dnl m4_define([v_rel], [-release relname])
13 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
14 m4_ifdef([v_rev], [m4_define([v_ver], [v_maj.v_min.v_mic.v_rev])], [m4_define([v_ver], [v_maj.v_min.v_mic])])
15 m4_define([lt_cur], m4_eval(v_maj + v_min))
16 m4_define([lt_rev], v_mic)
17 m4_define([lt_age], v_min)
18 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
19 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
22 # Check whether the Objective C compiler works.
23 AC_DEFUN([rw_PROG_OBJC_WORKS],
24 [m4_ifdef([AC_PROG_OBJC], [AC_REQUIRE([AC_PROG_OBJC])dnl
25 AC_CACHE_CHECK([whether the Objective C compiler works],
26 [rw_cv_prog_objc_works],
27 [AC_LANG_PUSH([Objective C])
28 AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])],
29 [rw_cv_prog_objc_works=yes],
30 [rw_cv_prog_objc_works=no])
31 AC_LANG_POP([Objective C])])], [rw_cv_prog_objc_works=no])
34 AC_INIT([evas], [v_ver], [enlightenment-devel@lists.sourceforge.net])
36 AC_CONFIG_SRCDIR([configure.ac])
37 AC_CONFIG_MACRO_DIR([m4])
39 AC_CONFIG_HEADERS([config.h])
41 #ifndef EFL_CONFIG_H__
42 #define EFL_CONFIG_H__
45 #endif /* EFL_CONFIG_H__ */
48 AM_INIT_AUTOMAKE([1.6 dist-bzip2])
49 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
54 define([AC_LIBTOOL_LANG_F77_CONFIG], [:])dnl
57 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
58 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
59 m4_ifdef([v_rev], , [m4_define([v_rev], [0])])
60 m4_ifdef([v_rel], , [m4_define([v_rel], [])])
61 AC_DEFINE_UNQUOTED(VMAJ, [v_maj], [Major version])
62 AC_DEFINE_UNQUOTED(VMIN, [v_min], [Minor version])
63 AC_DEFINE_UNQUOTED(VMIC, [v_mic], [Micro version])
64 AC_DEFINE_UNQUOTED(VREV, [v_rev], [Revison])
65 version_info="lt_cur:lt_rev:lt_age"
67 AC_SUBST(version_info)
68 AC_SUBST(release_info)
69 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
70 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
74 ### Needed information
81 MODULE_ARCH="$host_os-$host_cpu"
84 MODULE_ARCH="$host_os-$host_cpu-v_maj.v_min.v_mic"
88 AC_DEFINE_UNQUOTED(MODULE_ARCH, "$MODULE_ARCH", "Module architecture")
90 want_fontconfig="auto"
94 want_evas_cserve="yes"
95 want_evas_cserve2="yes"
97 want_evas_engine_buffer="yes"
98 want_evas_engine_software_xlib="no"
99 want_evas_engine_software_xcb="no"
100 want_evas_engine_software_gdi="no"
101 want_evas_engine_software_ddraw="no"
102 want_evas_engine_software_8_x11="no"
103 want_evas_engine_software_16_x11="no"
104 want_evas_engine_software_16_wince="no"
105 want_evas_engine_software_16_sdl="no"
106 want_evas_engine_gl_xlib="no"
107 want_evas_engine_gl_xcb="no"
108 want_evas_engine_gl_sdl="no"
109 want_evas_engine_gl_cocoa="no"
110 want_evas_engine_direct3d="no"
111 want_evas_engine_fb="no"
112 want_evas_engine_directfb="no"
113 want_evas_engine_psl1ght="no"
114 want_evas_engine_wayland_shm="no"
115 want_evas_engine_wayland_egl="no"
117 want_evas_image_loader_edb="yes"
118 want_evas_image_loader_eet="yes"
119 want_evas_image_loader_gif="yes"
120 want_evas_image_loader_jpeg="yes"
121 want_evas_image_loader_pmaps="yes"
122 want_evas_image_loader_png="yes"
123 want_evas_image_loader_svg="yes"
124 want_evas_image_loader_tiff="yes"
125 want_evas_image_loader_xpm="yes"
126 want_evas_image_loader_bmp="yes"
127 want_evas_image_loader_tga="yes"
128 want_evas_image_loader_wbmp="yes"
129 want_evas_image_loader_ico="yes"
130 want_evas_image_loader_psd="yes"
131 want_evas_image_loader_generic="yes"
133 want_evas_font_loader_eet="yes"
138 want_evas_engine_software_16_wince="yes"
139 want_evas_image_loader_edb="no"
140 want_evas_image_loader_gif="no"
141 want_evas_image_loader_svg="no"
142 want_evas_image_loader_tiff="no"
145 want_evas_engine_software_gdi="yes"
146 want_evas_engine_software_ddraw="yes"
147 want_evas_engine_direct3d="yes"
148 want_evas_image_loader_edb="no"
149 want_evas_image_loader_svg="no"
152 want_evas_engine_software_xlib="auto"
153 want_evas_engine_gl_cocoa="auto"
156 want_evas_engine_software_xlib="auto"
157 want_evas_engine_gl_xlib="auto"
158 want_evas_engine_software_xcb="no"
159 want_evas_engine_gl_xcb="no"
160 want_evas_engine_fb="auto"
161 want_evas_engine_wayland_shm="auto"
162 want_evas_engine_wayland_egl="auto"
163 ### no - not ready/usable/complete
164 # want_evas_engine_software_8_x11="auto"
165 # want_evas_engine_software_16_x11="auto"
169 case "$host_vendor" in
171 want_evas_engine_psl1ght="static"
178 ### Additional options to configure
180 # when used, that option makes configure script fails when
181 # a requirement is selected, but not met.
183 AC_ARG_ENABLE([strict],
184 AC_HELP_STRING([--enable-strict], [enable strict checking mode. @<:@default==disabled@:>@]),
188 # Simple X11 build/link
189 AC_ARG_ENABLE([simple-x11],
190 AC_HELP_STRING([--enable-simple-x11], [enable simple x11 linking]),
192 if test "x${enableval}" = "xyes" ; then
193 want_evas_simple_x11="yes"
195 want_evas_simple_x11="no"
200 ### Checks for programs
202 m4_ifdef([AC_PROG_OBJC],
205 _AM_DEPENDENCIES(OBJC)
208 dnl#AC_CHECK_TOOL([OBJC], [gcc])
210 dnl#AC_SUBST([OBJCFLAGS])
221 # Check whether pkg-config supports Requires.private
222 if $PKG_CONFIG --atleast-pkgconfig-version 0.22; then
223 pkgconfig_requires_private="Requires.private"
225 pkgconfig_requires_private="Requires"
227 AC_SUBST(pkgconfig_requires_private)
229 # doxygen program for documentation building
230 EFL_CHECK_DOXYGEN([build_doc="yes"], [build_doc="no"])
233 ### Checks for libraries
235 # Evil library for compilation on Windows CE
239 PKG_CHECK_MODULES([EVIL], [evil >= 1.0.0])
240 AC_DEFINE(HAVE_EVIL, 1, [Set to 1 if evil package is installed])
241 requirement_evas="evil ${requirement_evas}"
245 ### Checks for portability layer
247 PKG_CHECK_MODULES([EXOTIC],
249 [enable_exotic="yes"],
250 [enable_exotic="no"])
252 if test "x${enable_exotic}" = "xyes"; then
253 requirement_evas="exotic ${requirement_evas}"
255 AC_DEFINE([HAVE_EXOTIC], [1], [Define to 1 if you have Exotic.])
257 AM_CONDITIONAL([EVAS_HAVE_EXOTIC], [test "x${enable_exotic}" = "xyes"])
259 ## strong dependencies
262 PKG_CHECK_MODULES([EINA], [eina >= 1.2.0])
263 CPPFLAGS_SAVE="$CPPFLAGS"
264 CPPFLAGS="$CPPFLAGS $EINA_CFLAGS"
265 AC_CHECK_SIZEOF(Eina_Unicode,, [#include <Eina.h>])
266 CPPFLAGS="$CPPFLAGS_SAVE"
269 PKG_CHECK_MODULES([FREETYPE], [freetype2 >= 9.3.0])
271 requirement_evas="freetype2 eina >= 1.2.0 ${requirement_evas}"
273 ## optional dependencies
277 AC_ARG_ENABLE([fontconfig],
278 AC_HELP_STRING([--disable-fontconfig],
279 [disable fontconfig for finding fonts. @<:@default=enabled@:>@]),
281 if test "x${enableval}" = "xyes" ; then
282 want_fontconfig="yes"
289 if test "x${want_fontconfig}" = "xyes" -o "x${want_fontconfig}" = "xauto" ; then
290 PKG_CHECK_MODULES([FONTCONFIG],
291 [fontconfig >= 2.5.0],
293 have_fontconfig="yes"
294 AC_DEFINE(HAVE_FONTCONFIG, 1, [have fontconfig searching capabilities])
295 requirement_evas="fontconfig ${requirement_evas}"
298 if test "x${want_fontconfig}" = "xyes" -a "x${use_strict}" = "xyes" ; then
299 AC_MSG_ERROR([Fontconfig not found (strict dependencies checking)])
307 AC_ARG_ENABLE([liblinebreak],
308 AC_HELP_STRING([--disable-liblinebreak],
309 [disable linking against liblinebreak. @<:@default=enabled@:>@]),
311 if test "x${enableval}" = "xyes" ; then
319 AM_CONDITIONAL(EVAS_USE_LINEBREAK, test "x${want_linebreak}" = "xyes")
320 if test "x${want_linebreak}" = "xyes" ; then
322 LINEBREAK_CFLAGS='-I$(top_srcdir)/src/static_deps/liblinebreak'
323 LINEBREAK_LIBS='$(top_builddir)/src/static_deps/liblinebreak/liblinebreak.la'
324 AC_SUBST(LINEBREAK_CFLAGS)
325 AC_SUBST(LINEBREAK_LIBS)
326 AC_DEFINE(HAVE_LINEBREAK, 1, [have liblinebreak support])
333 AC_ARG_ENABLE([fribidi],
334 AC_HELP_STRING([--disable-fribidi],
335 [disable bidirectional text support. @<:@default=enabled@:>@]),
337 if test "x${enableval}" = "xyes" ; then
344 if test "x${want_fribidi}" = "xyes" -o "x${want_fribidi}" = "xauto" ; then
345 PKG_CHECK_MODULES([FRIBIDI],
349 AC_DEFINE(HAVE_FRIBIDI, 1, [have fribidi support])
350 requirement_evas="fribidi ${requirement_evas}"
351 CPPFLAGS_SAVE="$CPPFLAGS"
352 CPPFLAGS="$CPPFLAGS $FRIBIDI_CFLAGS"
353 AC_CHECK_SIZEOF(FriBidiChar,, [#include <fribidi/fribidi.h>])
354 CPPFLAGS="$CPPFLAGS_SAVE"
357 if test "x$want_fribidi" = "xyes" -a "x$use_strict" = "xyes" ; then
358 AC_MSG_ERROR([Fribidi not found (strict dependencies checking)])
363 if test "x${have_fribidi}" = "xno"; then
369 have_harfbuzz_ft="no"
370 AC_ARG_ENABLE([harfbuzz],
371 AC_HELP_STRING([--disable-harfbuzz],
372 [disable complex text shaping and layouting support. @<:@default=enabled@:>@]),
374 if test "x${enableval}" = "xyes" ; then
381 if test "x${want_harfbuzz}" = "xyes" -o "x${want_harfbuzz}" = "xauto" ; then
382 PKG_CHECK_MODULES([HARFBUZZ],
386 requirement_evas="harfbuzz ${requirement_evas}"
389 if test "x$want_harfbuzz" = "xyes" -a "x$use_strict" = "xyes" ; then
390 AC_MSG_ERROR([Harfbuzz not found (strict dependencies checking)])
393 if test "x$have_harfbuzz" = "xyes" ; then
395 CPPFLAGS_SAVE="$CPPFLAGS"
396 CPPFLAGS="$CPPFLAGS $HARFBUZZ_CFLAGS $FREETYPE_CFLAGS"
397 # must have for usage with harfbuzz although harfbuzz may not have it.
399 AC_CHECK_HEADER(hb-ft.h,
401 have_harfbuzz_ft="yes"
402 #Depend on harfbuzz ft for harfbuzz support
403 AC_DEFINE(HAVE_HARFBUZZ, 1, [have harfbuzz support])
406 if test "x$want_harfbuzz" = "xyes" -a "x$use_strict" = "xyes" ; then
407 AC_MSG_ERROR([Harfbuzz-ft not found (strict dependencies checking)])
411 CPPFLAGS="$CPPFLAGS_SAVE"
415 if test "x${have_harfbuzz}" = "xno"; then
421 AC_ARG_ENABLE([pixman],
422 AC_HELP_STRING([--enable-pixman],
423 [enable pixman for software rendering. @<:@default=enabled@:>@]),
425 if test "x${enableval}" = "xyes" ; then
433 if test "x${want_pixman}" = "xyes" -o "x${want_pixman}" = "xauto" ; then
434 PKG_CHECK_MODULES([PIXMAN],
438 AC_DEFINE(HAVE_PIXMAN, 1, [have pixman for rendering])
439 requirement_evas="pixman-1 ${requirement_evas}"
442 if test "x${want_pixman}" = "xyes" -a "x${use_strict}" = "xyes" ; then
443 AC_MSG_ERROR([Pixman not found (strict dependencies checking)])
448 have_pixman_font="no"
449 AC_ARG_ENABLE(pixman-font,
450 AC_HELP_STRING([--enable-pixman-font], [Allow pixman to render fonts]),
452 have_pixman_font="yes"
453 AC_DEFINE(PIXMAN_FONT, 1, [Allow pixman to render fonts])
457 have_pixman_rect="no"
458 AC_ARG_ENABLE(pixman-rect,
459 AC_HELP_STRING([--enable-pixman-rect], [Allow pixman to render rects]),
461 have_pixman_rect="yes"
462 AC_DEFINE(PIXMAN_RECT, 1, [Allow pixman to render rects])
466 have_pixman_line="no"
467 AC_ARG_ENABLE(pixman-line,
468 AC_HELP_STRING([--enable-pixman-line], [Allow pixman to render lines]),
470 have_pixman_line="yes"
471 AC_DEFINE(PIXMAN_LINE, 1, [Allow pixman to render lines])
475 have_pixman_poly="no"
476 AC_ARG_ENABLE(pixman-poly,
477 AC_HELP_STRING([--enable-pixman-poly], [Allow pixman to render polys]),
479 have_pixman_poly="yes"
480 AC_DEFINE(PIXMAN_POLY, 1, [Allow pixman to render polys])
484 have_pixman_image="no"
485 AC_ARG_ENABLE(pixman-image,
486 AC_HELP_STRING([--enable-pixman-image], [Allow pixman to render images]),
488 have_pixman_image="yes"
489 AC_DEFINE(PIXMAN_IMAGE, 1, [Allow pixman to render images])
493 have_pixman_image_scale_sample="no"
494 AC_ARG_ENABLE(pixman-image-scale-sample,
495 AC_HELP_STRING([--enable-pixman-image-scale-sample], [Allow pixman to render sampled scaled images]),
497 have_pixman_image_scale_sample="yes"
498 AC_DEFINE(PIXMAN_IMAGE_SCALE_SAMPLE, 1, [Allow pixman to render image sampled scaling])
502 have_tile_rotate="no"
503 AC_ARG_ENABLE(tile-rotate,
504 AC_HELP_STRING([--enable-tile-rotate], [Enable tiled rotate algorithm]),
506 have_tile_rotate="yes"
507 AC_DEFINE(TILE_ROTATE, 1, [Enable tiled rotate algorithm])
511 ### Checks for header files
513 AC_CHECK_HEADERS([unistd.h stdint.h sys/param.h netinet/in.h sys/mman.h])
517 AC_CHECK_TYPES([struct sigaction], [], [],
518 [[#include <signal.h>]])
521 ### Checks for structures
524 ### Checks for compiler characteristics
530 EFL_ATTRIBUTE_ALWAYS_INLINE
533 ### Checks for linker characteristics
534 lt_enable_auto_import=""
537 AC_DEFINE(EFL_EVAS_BUILD, 1, [Define to mention that evas is built])
538 lt_enable_auto_import="-Wl,--enable-auto-import"
541 AC_SUBST(lt_enable_auto_import)
544 ### Checks for library functions
547 AC_CHECK_FUNCS([siglongjmp])
553 EFL_CHECK_FNMATCH([], [AC_MSG_ERROR([Cannot find fnmatch()])])
560 AC_DEFINE(HAVE_DLSYM)
563 # nothing on mingw platform
566 AC_CHECK_FUNCS(dlsym, res=yes, res=no)
567 if test "x$res" = "xyes"; then
568 AC_DEFINE(HAVE_DLSYM)
570 AC_CHECK_LIB(dl, dlsym, res=yes, res=no)
571 if test "x$res" = "xyes"; then
573 AC_DEFINE(HAVE_DLSYM)
575 want_evas_engine_gl_xlib="no"
576 want_evas_engine_gl_xcb="no"
577 want_evas_engine_gl_sdl="no"
581 AC_SUBST(dlopen_libs)
584 AC_CHECK_LIB(m, lround, res=yes, res=no)
585 if test "x$res" = "xyes"; then
586 AC_DEFINE(HAVE_LROUND, 1, C99 lround function exists)
589 if test "x${want_evas_image_loader_generic}" = "xyes" ; then
593 # (shm_open (for cache server)
594 AC_ARG_ENABLE([evas-cserve],
595 AC_HELP_STRING([--disable-evas-cserve],
596 [disable shared cache server support. @<:@default=enabled@:>@]),
598 if test "x${enableval}" = "xyes" ; then
599 want_evas_cserve="yes"
601 want_evas_cserve="no"
604 AC_MSG_CHECKING(whether to build shared cache server and support)
605 AC_MSG_RESULT(${want_evas_cserve})
607 # (shm_open (for cache server)
608 AC_ARG_ENABLE([evas-cserve2],
609 AC_HELP_STRING([--disable-evas-cserve2],
610 [disable shared cache server 2 support. @<:@default=enabled@:>@]),
612 if test "x${enableval}" = "xyes" ; then
613 want_evas_cserve2="yes"
615 want_evas_cserve2="no"
618 AC_MSG_CHECKING(whether to build shared cache server 2 and support)
619 AC_MSG_RESULT(${want_evas_cserve2})
621 # cserve2 only works on Linux so far.
622 if test "x${want_evas_cserve2}" = "xyes" ; then
624 [sys/epoll.h sys/inotify.h sys/signalfd.h],
627 want_evas_cserve2="no"
632 if test "x${want_evas_cserve2}" = "xyes"; then
633 want_evas_cserve="no"
637 if test "x${want_evas_cserve}" = "xyes" -o "x${want_evas_cserve2}" = "xyes" ; then
640 shm_open_libs=${EFL_SHM_OPEN_LIBS}
643 want_evas_cserve="no"
644 want_evas_cserve2="no"
647 AC_SUBST([shm_open_libs])
649 if test "x${want_evas_cserve}" = "xyes" ; then
650 AC_DEFINE(EVAS_CSERVE, 1, [Shared cache server.])
653 AM_CONDITIONAL([EVAS_CSERVE], [test "x${want_evas_cserve}" = "xyes"])
655 if test "x${want_evas_cserve2}" = "xyes" ; then
656 AC_DEFINE(EVAS_CSERVE2, 1, [Shared cache server.])
659 AM_CONDITIONAL([EVAS_CSERVE2], [test "x${want_evas_cserve2}" = "xyes"])
663 #######################################
664 ## GL force flavor gles
666 AC_MSG_CHECKING(whether to build GLES flavor of GL)
667 AC_ARG_ENABLE(gl-flavor-gles,
668 AC_HELP_STRING([--enable-gl-flavor-gles], [enable gles flavor of gl instead of standard]),
670 if test "x$enableval" = "xyes" ; then
683 #######################################
685 gles_variety_sgx="no"
686 AC_MSG_CHECKING(whether to build GLES variety for SGX)
687 AC_ARG_ENABLE(gles-variety-sgx,
688 AC_HELP_STRING([--enable-gles-variety-sgx], [GLES variety SGX 3D unit]),
690 if test "x$enableval" = "xyes" ; then
692 AC_DEFINE(GLES_VARIETY_SGX, 1, [Imagination SGX GLES2 support])
693 gles_variety_sgx="yes"
696 gles_variety_sgx="no"
700 gles_variety_sgx="no"
704 #######################################
705 ## GLES variety s3c6410
706 gles_variety_s3c6410="no"
707 AC_MSG_CHECKING(whether to build GLES variety for s3c6410)
708 AC_ARG_ENABLE(gles-variety-s3c6410,
709 AC_HELP_STRING([--enable-gles-variety-s3c6410], [GLES variety s3c6410 3D unit]),
711 if test "x$enableval" = "xyes" ; then
713 AC_DEFINE(GLES_VARIETY_S3C6410, 1, [Samsung S3c6410 GLES2 support])
714 gles_variety_s3c6410="yes"
717 gles_variety_s3c6410="no"
721 gles_variety_s3c6410="no"
725 if test "x$gl_flavor_gles" = "xyes"; then
727 if test "x$gles_variety_sgx" = "xyes"; then eng="x"$eng; fi
728 if test "x$gles_variety_s3c6410" = "xyes"; then eng="x"$eng; fi
729 if test "x$eng" = "xx"; then
733 [Please enable just 1 OpenGL-ES flavor. Choices are:
734 --enable-gles-variety-sgx (Most GL-ES2 GPUs with shader compiler)
735 --enable-gles-variety-s3c6410 (s3c6410 with offline shader compiler)
736 You will also need to enable the OpenGL engine for X11 with:
737 --enable-gl-xlib or --enable-gl-xcb
742 #####################################################################
745 EVAS_CHECK_ENGINE([buffer], [${want_evas_engine_buffer}], [yes], [Buffer])
747 EVAS_CHECK_ENGINE([software-gdi], [${want_evas_engine_software_gdi}], [no], [Software GDI])
749 EVAS_CHECK_ENGINE([software-ddraw], [${want_evas_engine_software_ddraw}], [no], [Software DirectDraw])
751 EVAS_CHECK_ENGINE([direct3d], [${want_evas_engine_direct3d}], [no], [Direct3D])
753 EVAS_CHECK_ENGINE([psl1ght], [${want_evas_engine_psl1ght}], [no], [PSL1GHT])
755 EVAS_CHECK_ENGINE([gl-sdl], [${want_evas_engine_gl_sdl}], [no], [OpenGL SDL])
757 EVAS_CHECK_ENGINE([gl-cocoa], [${want_evas_engine_gl_cocoa}], [no], [OpenGL Cocoa])
759 EVAS_CHECK_ENGINE([fb], [${want_evas_engine_fb}], [no], [Framebuffer])
761 EVAS_CHECK_ENGINE([directfb], [${want_evas_engine_directfb}], [no], [DirectFB])
763 EVAS_CHECK_ENGINE([software-8-x11], [${want_evas_engine_software_8_x11}], [no], [Software X11 8 bits grayscale])
765 EVAS_CHECK_ENGINE([software-16-x11], [${want_evas_engine_software_16_x11}], [no], [Software X11 16 bits])
767 EVAS_CHECK_ENGINE([software-16-wince], [${want_evas_engine_software_16_wince}], [no], [Software Windows CE 16 bits])
769 EVAS_CHECK_ENGINE([software-16-sdl], [${want_evas_engine_software_16_sdl}], [no], [Software SDL 16 bits])
771 EVAS_CHECK_ENGINE([wayland-shm], [${want_evas_engine_wayland_shm}], [no], [Wayland Shm])
773 EVAS_CHECK_ENGINE([wayland-egl], [${want_evas_engine_wayland_egl}], [no], [Wayland Egl])
778 AC_ARG_ENABLE([sdl-primitive],
779 [AC_HELP_STRING([--enable-sdl-primitive], [])],
780 [sdl_primitive=${enableval}]
782 AC_MSG_CHECKING([whether to use SDL primitive when possible])
783 AC_MSG_RESULT([${sdl_primitive}])
785 if test "x${sdl_primitive}" = "xyes" ; then
786 AC_DEFINE([ENGINE_SDL_PRIMITIVE], [1], [Use SDL primitive when possible])
789 # if software generic need to be build as part of libevas.so
790 have_static_software_generic="no"
791 AC_ARG_ENABLE([static-software-generic],
792 [AC_HELP_STRING([--enable-static-software-generic], [Build software generic engine as part of libevas])],
793 [have_static_software_generic=${enableval}]
795 AC_MSG_CHECKING([Whether to build software generic engine as part of libevas])
796 AC_MSG_RESULT([${have_static_software_generic}])
798 if test "x${have_static_module}" = "xyes" -a "x${have_static_software_generic}" = "xno"; then
799 AC_MSG_WARN([Forcing --enable-static-software-generic as engines must be compiled statically])
800 have_static_software_generic="yes"
803 AM_CONDITIONAL(EVAS_STATIC_BUILD_SOFTWARE_GENERIC, test "x${have_static_software_generic}" = "xyes")
804 if test "x${have_static_software_generic}" = "xyes"; then
805 AC_DEFINE(EVAS_STATIC_BUILD_SOFTWARE_GENERIC, [1], [Build software generic engine as part of libevas])
809 ######## Software Engine ########
810 have_evas_engine_software_x11="no"
811 have_evas_engine_software_xcb="no"
812 have_evas_engine_software_xlib="no"
817 AC_MSG_CHECKING(whether to build Software XCB Engine)
818 AC_ARG_ENABLE(software-xcb,
819 AC_HELP_STRING([--enable-software-xcb], [enable Software XCB Engine. @<:@default=disabled@:>@]), [want_xcb=$enableval]
821 if test "x$want_xcb" != "xno" ; then
822 EVAS_CHECK_ENGINE([software-xcb], [${want_evas_engine_software_xcb}], [no], [Software XCB])
823 if test "x$have_evas_engine_software_xcb" != "xno" ; then
824 build_software_xcb="yes"
825 have_evas_engine_software_x11="yes"
826 AC_DEFINE_UNQUOTED(BUILD_ENGINE_SOFTWARE_X11, [1], [Build software X11 engine])
827 AC_DEFINE_UNQUOTED(BUILD_ENGINE_SOFTWARE_XCB, [1], [Build software XCB backend])
831 build_software_xcb="no"
834 ## If we are not building XCB, then we can build XLib ##
836 if test "x$build_software_xcb" = "xno" ; then
837 EVAS_CHECK_ENGINE([software-xlib], [${want_evas_engine_software_xlib}], [no], [Software Xlib])
838 # if software_x11 is available, define everything needed for X11
839 if test "x$have_evas_engine_software_xlib" != "xno" ; then
840 have_evas_engine_software_x11="yes"
841 AC_DEFINE_UNQUOTED(BUILD_ENGINE_SOFTWARE_X11, [1], [Build software X11 engine])
842 AC_DEFINE_UNQUOTED(BUILD_ENGINE_SOFTWARE_XLIB, [1], [Build software Xlib backend])
845 have_evas_engine_software_xlib="no"
848 if test "x$have_evas_engine_software_xlib" = "xstatic" -o "x$have_evas_engine_software_xcb" = "xstatic"; then
849 AC_DEFINE_UNQUOTED(EVAS_STATIC_BUILD_SOFTWARE_X11, [1], [Build software X11 engine as part of libevas])
852 AC_SUBST(have_evas_engine_software_xcb)
853 AC_SUBST(have_evas_engine_software_xlib)
855 AM_CONDITIONAL([BUILD_ENGINE_SOFTWARE_XLIB], [test "x${have_evas_engine_software_xlib}" != "xno"])
856 AM_CONDITIONAL([BUILD_ENGINE_SOFTWARE_XCB], [test "x${have_evas_engine_software_xcb}" != "xno"])
857 AM_CONDITIONAL([BUILD_ENGINE_SOFTWARE_X11], [test "x${have_evas_engine_software_x11}" != "xno"])
859 AM_CONDITIONAL([EVAS_STATIC_BUILD_SOFTWARE_X11], [test "x${have_evas_engine_software_xcb}" = "xstatic" -o "x${have_evas_engine_software_xlib}" = "xstatic"])
860 AM_CONDITIONAL([EVAS_STATIC_BUILD_SOFTWARE_XLIB], [test "x${have_evas_engine_software_xlib}" = "xstatic"])
861 AM_CONDITIONAL([EVAS_STATIC_BUILD_SOFTWARE_XCB], [test "x${have_evas_engine_software_xcb}" = "xstatic"])
863 AC_SUBST(have_evas_engine_software_x11)
866 ######## OpenGL Engine ########
867 have_evas_engine_gl_x11="no"
868 have_evas_engine_gl_xcb="no"
873 AC_MSG_CHECKING(whether to build OpenGL XCB Engine)
874 AC_ARG_ENABLE(gl-xcb,
875 AC_HELP_STRING([--enable-gl-xcb], [enable OpenGL XCB Engine. @<:@default=disabled@:>@]), [want_gl_xcb=$enableval]
877 if test "x$want_gl_xcb" = "xyes" ; then
878 EVAS_CHECK_ENGINE([gl-xcb], [${want_evas_engine_gl_xcb}], [no], [OpenGL XCB])
879 if test "x$have_evas_engine_gl_xcb" != "xno" ; then
881 have_evas_engine_gl_x11="yes"
882 AC_DEFINE(BUILD_ENGINE_GL_X11, [1], [Build GL X11 engine])
883 AC_DEFINE(BUILD_ENGINE_GL_XCB, [1], [Build GL Xcb backend])
884 if test "x$have_evas_engine_gl_xcb" = "xstatic" ; then
885 AC_DEFINE(EVAS_STATIC_BUILD_GL_X11, [1], [Build GL X11 engine as part of libevas])
888 AC_SUBST(have_evas_engine_gl_xcb)
894 ## If we are not building XCB, then we can build XLib ##
896 if test "x$build_gl_xcb" = "xno" ; then
897 EVAS_CHECK_ENGINE([gl-xlib], [${want_evas_engine_gl_xlib}], [no], [OpenGL XLib])
898 if test "x$have_evas_engine_gl_xlib" != "xno" ; then
899 have_evas_engine_gl_x11="yes"
900 AC_DEFINE_UNQUOTED(BUILD_ENGINE_GL_X11, [1], [Build OpenGL X11 engine])
901 AC_DEFINE_UNQUOTED(BUILD_ENGINE_GL_XLIB, [1], [Build OpenGL Xlib backend])
902 if test "x$have_evas_engine_gl_xlib" = "xstatic" ; then
903 AC_DEFINE_UNQUOTED(EVAS_STATIC_BUILD_GL_X11, [1], [Build OpenGL X11 engine as part of libevas])
907 have_evas_engine_gl_xlib="no"
909 AC_SUBST(have_evas_engine_gl_xlib)
911 AM_CONDITIONAL([BUILD_ENGINE_GL_XLIB], [test "x${have_evas_engine_gl_xlib}" != "xno"])
912 AM_CONDITIONAL([BUILD_ENGINE_GL_XCB], [test "x${have_evas_engine_gl_xcb}" != "xno"])
913 AM_CONDITIONAL([BUILD_ENGINE_GL_X11], [test "x${have_evas_engine_gl_x11}" != "xno"])
915 AM_CONDITIONAL([EVAS_STATIC_BUILD_GL_X11], [test "x${have_evas_engine_gl_xcb}" = "xstatic" -o "x${have_evas_engine_gl_xlib}" = "xstatic"])
916 AM_CONDITIONAL([EVAS_STATIC_BUILD_GL_XLIB], [test "x${have_evas_engine_gl_xlib}" = "xstatic"])
917 AM_CONDITIONAL([EVAS_STATIC_BUILD_GL_XCB], [test "x${have_evas_engine_gl_xcb}" = "xstatic"])
919 AC_SUBST(have_evas_engine_gl_x11)
922 have_evas_engine_gl_common="no"
923 have_static_evas_engine_gl_common="no"
924 if test "x$have_evas_engine_gl_xlib" = "xyes" \
925 || test "x$have_evas_engine_gl_xcb" = "xyes" \
926 || test "x$have_evas_engine_gl_sdl" = "xyes" \
927 || test "x$have_evas_engine_gl_cocoa" = "xyes" \
928 || test "x$have_evas_engine_wayland_egl" = "xyes"; then
929 have_evas_engine_gl_common="yes"
931 if test "x$have_evas_engine_gl_xlib" = "xstatic" \
932 || test "x$have_evas_engine_gl_xcb" = "xstatic" \
933 || test "x$have_evas_engine_gl_sdl" = "xstatic" \
934 || test "x$have_evas_engine_gl_cocoa" = "xstatic" \
935 || test "x$have_evas_engine_wayland_egl" = "xstatic"; then
936 have_evas_engine_gl_common="yes"
937 have_static_evas_engine_gl_common="yes"
940 if test "x$have_evas_engine_gl_common" = "xyes"; then
941 evas_engine_gl_common_libs=""
942 AC_DEFINE(BUILD_ENGINE_GL_COMMON, [1], [Generic OpenGL Rendering Support])
945 AC_SUBST([evas_engine_gl_common_libs])
947 AM_CONDITIONAL(BUILD_ENGINE_GL_COMMON, [test "x$have_evas_engine_gl_common" = "xyes"])
949 AM_CONDITIONAL(EVAS_STATIC_BUILD_GL_COMMON, test "x${have_static_evas_engine_gl_common}" = "xyes")
950 if test "x${have_static_evas_engine_gl_common}" = "xyes"; then
951 AC_DEFINE(EVAS_STATIC_BUILD_GL_COMMON, [1], [Build GL generic engine as part of libevas])
955 if test "x$have_evas_engine_gl_sdl" = "xyes" || test "x$have_evas_engine_gl_sdl" = "xstatic" ; then
956 AC_CHECK_DECL(SDL_GL_CONTEXT_MAJOR_VERSION,
957 [AC_DEFINE(HAVE_SDL_GL_CONTEXT_VERSION, [1], [SDL_GL version attributes present])],,
958 [#include <SDL/SDL_video.h>])
961 if test "x$gl_flavor_gles" = "xyes"; then
962 AC_CHECK_DECL(SDL_OPENGLES,
963 [AC_DEFINE(HAVE_SDL_FLAG_OPENGLES, [1], [SDL_OPENGLES flag is present])],,
964 [#include <SDL/SDL_video.h>])
967 # if software 16 x11 is enabled - build software_16 (the generic 16bit
968 # engine). later enable it fb_16 or other "16" bit engines are enabled.
969 have_evas_engine_software_16="no"
970 if test "x$have_evas_engine_software_16_x11" = "xyes" -o "x$have_evas_engine_software_16_x11" = "xstatic"; then
971 have_evas_engine_software_16="yes"
973 if test "x$have_evas_engine_software_16_sdl" = "xyes" -o "x$have_evas_engine_software_16_sdl" = "xstatic"; then
974 have_evas_engine_software_16="yes"
976 if test "x$have_evas_engine_software_16_wince" = "xyes" -o "x$have_evas_engine_software_16_wince" = "xstatic"; then
977 have_evas_engine_software_16="yes"
979 AM_CONDITIONAL(BUILD_ENGINE_SOFTWARE_16, test "x$have_evas_engine_software_16" = "xyes")
981 # if software 16 need to be build as part of libevas.so
982 have_static_software_16="no"
983 AC_ARG_ENABLE([static-software-16],
984 [AC_HELP_STRING([--enable-static-software-16], [Build software 16 engine as part of libevas])],
985 [have_static_software_16=${enableval}]
987 AC_MSG_CHECKING([Whether to build software 16 engine as part of libevas])
988 AC_MSG_RESULT([${have_static_software_16}])
990 AM_CONDITIONAL(EVAS_STATIC_BUILD_SOFTWARE_16, test "x${have_static_software_16}" = "xyes")
991 if test "x${have_static_software_16}" = "xyes"; then
992 AC_DEFINE(EVAS_STATIC_BUILD_SOFTWARE_16, [1], [Build software 16 engine as part of libevas])
995 # if software 8 x11 is enabled - build software_8 (the generic 8bit
997 have_evas_engine_software_8="no"
998 if test "x$have_evas_engine_software_8_x11" = "xyes" -o "x$have_evas_engine_software_8_x11" = "xstatic"; then
999 have_evas_engine_software_8="yes"
1001 AM_CONDITIONAL(BUILD_ENGINE_SOFTWARE_8, test "x$have_evas_engine_software_8" = "xyes")
1003 # if software 8 need to be build as part of libevas.so
1004 have_static_software_8="no"
1005 AC_ARG_ENABLE([static-software-8],
1006 [AC_HELP_STRING([--enable-static-software-8], [Build software 8 engine as part of libevas])],
1007 [have_static_software_8=${enableval}]
1009 AC_MSG_CHECKING([Whether to build software 8 engine as part of libevas])
1010 AC_MSG_RESULT([${have_static_software_8}])
1012 AM_CONDITIONAL(EVAS_STATIC_BUILD_SOFTWARE_8, test "x${have_static_software_8}" = "xyes")
1013 if test "x${have_static_software_8}" = "xyes"; then
1014 AC_DEFINE(EVAS_STATIC_BUILD_SOFTWARE_8, [1], [Build software 8 engine as part of libevas])
1017 #####################################################################
1020 EVAS_CHECK_IMAGE_LOADER([Edb], [${want_evas_image_loader_edb}])
1022 EVAS_CHECK_IMAGE_LOADER([Eet], [${want_evas_image_loader_eet}])
1023 EVAS_CHECK_FONT_LOADER([${want_evas_font_loader_eet}])
1025 EVAS_CHECK_IMAGE_LOADER([Gif], [${want_evas_image_loader_gif}])
1027 have_evas_image_saver_jpeg="no"
1028 EVAS_CHECK_IMAGE_LOADER([Jpeg], [${want_evas_image_loader_jpeg}])
1030 dnl Windows has no sigsetjmp function, nor equivalent.
1031 dnl So we disable the jpeg saver.
1032 dnl TODO: must find a workaround
1037 if test "x${have_evas_image_loader_jpeg}" = "xyes" ; then
1038 AC_DEFINE(EVAS_BUILD_SAVER_JPEG, [1], [Build JPEG saver])
1039 have_evas_image_saver_jpeg="yes"
1043 AM_CONDITIONAL([BUILD_SAVER_JPEG], [test "x${have_evas_image_saver_jpeg}" = "xyes"])
1045 EVAS_CHECK_IMAGE_LOADER([PMAPS], [${want_evas_image_loader_pmaps}])
1047 EVAS_CHECK_IMAGE_LOADER([PNG], [${want_evas_image_loader_png}])
1049 EVAS_CHECK_IMAGE_LOADER([SVG], [${want_evas_image_loader_svg}])
1051 EVAS_CHECK_IMAGE_LOADER([Tiff], [${want_evas_image_loader_tiff}])
1053 EVAS_CHECK_IMAGE_LOADER([XPM], [${want_evas_image_loader_xpm}])
1055 EVAS_CHECK_IMAGE_LOADER([BMP], [${want_evas_image_loader_bmp}])
1057 EVAS_CHECK_IMAGE_LOADER([TGA], [${want_evas_image_loader_tga}])
1059 EVAS_CHECK_IMAGE_LOADER([WBMP], [${want_evas_image_loader_wbmp}])
1061 EVAS_CHECK_IMAGE_LOADER([ICO], [${want_evas_image_loader_ico}])
1063 EVAS_CHECK_IMAGE_LOADER([PSD], [${want_evas_image_loader_psd}])
1065 EVAS_CHECK_IMAGE_LOADER([GENERIC], [${want_evas_image_loader_generic}])
1067 #####################################################################
1068 ## Cpu based optimizations
1070 #######################################
1077 # basic pthread support
1078 AC_CHECK_HEADER(pthread.h,
1087 # sched_getaffinity pthread_attr_setaffinity_np
1088 AC_CHECK_HEADERS([pthread.h sched.h],
1090 CFLAGS_save="${CFLAGS}"
1091 CFLAGS="${CFLAGS} -pthread"
1093 LIBS="${LIBS} -pthread"
1096 #include <pthread.h>
1100 pthread_attr_setaffinity_np(NULL, 0, NULL);
1101 pthread_barrier_wait(NULL);
1103 [build_pthreads="yes"],
1104 [build_pthreads="no"])
1105 CFLAGS=${CFLAGS_save}
1108 [build_pthreads="no"])
1110 AC_MSG_CHECKING([whether pthread_attr_setaffinity_np() and pthread_barrier_wait() are supported])
1111 AC_MSG_RESULT([${build_pthreads}])
1113 #######################################
1115 AC_MSG_CHECKING(whether to build pthread code)
1116 AC_ARG_ENABLE(pthreads,
1117 AC_HELP_STRING([--enable-pthreads], [enable threaded rendering]),
1119 if test "x$enableval" = "xyes" ; then
1120 if test "x$build_pthreads" = "xyes"; then
1122 AC_DEFINE(BUILD_PTHREAD, 1, [Build Threaded Rendering])
1123 build_pthreads="yes"
1126 if "x$use_strict" = "xyes"; then
1127 AC_MSG_ERROR(pthreads headers or functions not found (strict dependencies checking))
1129 AC_MSG_RESULT(no: pthread headers or functions not found)
1138 AC_MSG_RESULT($build_pthreads)
1139 if test "x$build_pthreads" = "xyes" ; then
1140 AC_DEFINE(BUILD_PTHREAD, 1, [Build Threaded Rendering])
1146 #######################################
1148 build_pipe_render="no"
1150 AC_MSG_CHECKING(whether to build Threaded Pipe Rendering support)
1151 AC_ARG_ENABLE(pipe-render,
1152 AC_HELP_STRING([--enable-pipe-render], [enable threaded pipe rendering support]),
1153 [ build_pipe_render=$enableval ]
1155 AC_MSG_RESULT($build_pipe_render)
1157 AC_MSG_CHECKING(whether we can build Threaded Pipe Rendering support)
1158 if test \( "x$build_pipe_render" = "xyes" -o "x$build_pipe_render" = "xauto" \); then
1160 AC_DEFINE(BUILD_PIPE_RENDER, 1, [Build pipe render support])
1161 build_pipe_render="yes"
1165 build_pipe_render="no"
1168 #######################################
1170 build_async_render="no"
1172 AC_MSG_CHECKING(whether to build Asynchronously Threaded Pipe Rendering support)
1173 AC_ARG_ENABLE(async-render,
1174 AC_HELP_STRING([--enable-async-render], [enable asynchronously threaded pipe rendering support]),
1175 [ build_async_render=$enableval ]
1177 AC_MSG_RESULT($build_async_render)
1179 AC_MSG_CHECKING(whether we can build Asynchronously Threaded Pipe Rendering support)
1180 if test \( "x$build_async_render" = "xyes" \); then
1182 AC_DEFINE(EVAS_FRAME_QUEUING, 1, [Build async render support])
1183 build_async_render="yes"
1184 AC_DEFINE(BUILD_PIPE_RENDER, 1, [Build pipe render support])
1185 build_pipe_render="yes"
1188 PKG_CHECK_MODULES([XEXT],
1190 [ build_avoid_libXext_bug=yes ],
1191 [ build_avoid_libXext_bug=no ]
1193 if test \( "x$build_avoid_libXext_bug" = "xyes" \); then
1194 AC_DEFINE(LIBXEXT_VERSION_LOW, 1, [To avoid bug on old libXext version])
1198 build_async_render="no"
1201 #######################################
1203 build_async_events="auto"
1204 AC_MSG_CHECKING(whether to build Async Events support)
1205 AC_ARG_ENABLE(async-events,
1206 AC_HELP_STRING([--enable-async-events], [enable async events support]),
1207 [ build_async_events=$enableval ]
1209 AC_MSG_RESULT($build_async_events)
1211 AC_MSG_CHECKING(whether we can build Async Events support)
1212 if test "x$build_async_events" = "xyes" || test "x$build_async_events" = "xauto" ; then
1214 AC_DEFINE(BUILD_ASYNC_EVENTS, 1, [Build async events support])
1215 build_async_events="yes"
1218 build_async_events="no"
1221 #######################################
1222 ## Async image preload
1223 build_async_preload="auto"
1224 AC_MSG_CHECKING(whether to build Async Image Preload support)
1225 AC_ARG_ENABLE(async-preload,
1226 AC_HELP_STRING([--enable-async-preload], [enable async image preloading support]),
1227 [ build_async_preload=$enableval ]
1229 AC_MSG_RESULT($build_async_preload)
1231 AC_MSG_CHECKING(whether we can build Async Image Preload support)
1232 if test \( "x$build_async_preload" = "xyes" -o "x$build_async_preload" = "xauto" \) -a "x$build_async_events" = "xyes"; then
1234 AC_DEFINE(BUILD_ASYNC_PRELOAD, 1, [Build async image preload support])
1235 build_async_preload="yes"
1239 build_async_preload="no"
1242 #######################################
1243 ## Link with pthread if needed
1244 AC_MSG_CHECKING(whether we should link with pthread)
1245 if test "x$need_pthreads" = "xyes"; then
1247 pthread_cflags="-pthread"
1248 pthread_libs="-pthread"
1253 #######################################
1267 AC_MSG_CHECKING(whether to build mmx code)
1268 AC_ARG_ENABLE(cpu-mmx,
1269 AC_HELP_STRING([--enable-cpu-mmx], [enable mmx code]),
1271 if test "x$enableval" = "xyes" ; then
1273 AC_DEFINE(BUILD_MMX, 1, [Build MMX Code])
1281 AC_MSG_RESULT($build_cpu_mmx)
1282 if test "x$build_cpu_mmx" = "xyes" ; then
1283 AC_DEFINE(BUILD_MMX, 1, [Build MMX Code])
1288 #######################################
1302 AC_MSG_CHECKING(whether to build sse code)
1303 AC_ARG_ENABLE(cpu-sse,
1304 AC_HELP_STRING([--enable-cpu-sse], [enable sse code]),
1306 if test "x$enableval" = "xyes" ; then
1308 AC_DEFINE(BUILD_SSE, 1, [Build SSE Code])
1316 AC_MSG_RESULT($build_cpu_sse)
1317 if test "x$build_cpu_sse" = "xyes" ; then
1318 AC_DEFINE(BUILD_SSE, 1, [Build SSE Code])
1323 #######################################
1328 build_cpu_sse3="yes"
1331 build_cpu_sse3="yes"
1334 build_cpu_sse3="yes"
1337 AC_MSG_CHECKING(whether to build sse3 code)
1338 AC_ARG_ENABLE(cpu-sse3,
1339 AS_HELP_STRING([--enable-cpu-sse3], [enable sse3 code]),
1341 if test "x$enableval" = "xyes" ; then
1342 AC_CHECK_HEADER(immintrin.h,
1345 AC_DEFINE(BUILD_SSE3, 1, [Build SSE3 Code])
1346 build_cpu_sse3="yes"
1358 AC_MSG_RESULT($build_cpu_sse3)
1359 if test "x$build_cpu_sse3" = "xyes" ; then
1360 AC_CHECK_HEADER(immintrin.h,
1363 AC_DEFINE(BUILD_SSE3, 1, [Build SSE3 Code])
1364 build_cpu_sse3="yes"
1375 # as a big warning flag to anyone doing stuff like this...
1376 # NEVER EVER EVER EVER put **OPTIMIZATION** flags in
1377 # build flags in makefiles (from configure or anywhere else)
1378 # EVER as this screws your ability to build 1 binary and
1379 # cover ALL x86 arch's. This is the HEIGHT of WRONG. If the
1380 # person building choses to add optimization flags themselves
1381 # and decide the minimum baseline cpu arch is X then that's
1382 # their business, but NEVER should it be done here. NEVER.
1383 # I now have to do this due to the way this sse3 code was done - using
1384 # intrinsics and "functions" (opcodes) and types that only compile *IF*
1385 # you compile with -msse3. this ALSO tries to optimize REGULAR c code
1386 # with sse3 asm.. and this breaks things so badly. so... sse3 will be
1387 # off until further notice for 32bit x86.
1388 EVAS_SSE3_CFLAGS=" "
1389 if test "x$build_cpu_sse3" = "xyes" ; then
1390 EVAS_SSE3_CFLAGS="-msse3 "
1391 # CFLAGS="${CFLAGS} ${EVAS_SSE3_CFLAGS}"
1395 AC_SUBST(EVAS_SSE3_CFLAGS)
1397 #######################################
1399 build_cpu_altivec="no"
1402 build_cpu_altivec="auto"
1406 AC_MSG_CHECKING(whether to build altivec code)
1407 AC_ARG_ENABLE(cpu-altivec,
1408 AC_HELP_STRING([--enable-cpu-altivec], [enable altivec code]),
1409 [ build_cpu_altivec=$enableval ],
1411 if test ! "x$build_cpu_altivec" = "xauto"; then
1412 build_cpu_altivec="no"
1416 AC_MSG_RESULT($build_cpu_altivec)
1418 if test "x$build_cpu_altivec" = "xyes"; then
1419 AC_CHECK_HEADER(altivec.h,
1421 AC_DEFINE(BUILD_ALTIVEC, 1, [Build Altivec Code])
1422 AC_DEFINE(HAVE_ALTIVEC_H, 1, [Have altivec.h header file])
1423 build_cpu_altivec="yes"
1427 save_CPPFLAGS=$CPPFLAGS
1428 CFLAGS=$CFLAGS" -maltivec"
1429 CPPFLAGS=$CPPFLAGS" -maltivec"
1430 unset ac_cv_header_altivec_h
1431 AC_CHECK_HEADER(altivec.h,
1433 AC_DEFINE(BUILD_ALTIVEC, 1, [Build Altivec Code])
1434 AC_DEFINE(HAVE_ALTIVEC_H, 1, [Have altivec.h header file])
1435 build_cpu_altivec="yes"
1438 if test "x$build_cpu_altivec" = "xyes" -a "x$use_strict" = "xyes" ; then
1439 AC_MSG_ERROR(Altivec not found (strict dependencies checking))
1441 build_cpu_altivec="no"
1445 CPPFLAGS=$save_CPPFLAGS
1450 if test "x$build_cpu_altivec" = "xyes"; then
1451 AC_MSG_CHECKING(whether to use altivec compiler flag)
1452 if test "x$GCC" = "xyes"; then
1453 if echo "int main(){return 0;}" | ${CPP} -faltivec - > /dev/null 2>&1; then
1454 altivec_cflags="-faltivec"
1455 AC_DEFINE(BUILD_ALTIVEC, 1, [Build Altivec Code])
1456 elif echo "int main(){return 0;}" | ${CPP} -maltivec - > /dev/null 2>&1; then
1457 altivec_cflags="-maltivec"
1458 AC_DEFINE(BUILD_ALTIVEC, 1, [Build Altivec Code])
1461 AC_MSG_RESULT($altivec_cflags)
1462 CFLAGS="$CFLAGS $altivec_cflags"
1465 #######################################
1470 build_cpu_neon="yes"
1473 AC_MSG_CHECKING(whether to build neon code)
1474 AC_ARG_ENABLE(cpu-neon,
1475 AC_HELP_STRING([--enable-cpu-neon], [build neon code, the code will be
1476 checked at run time to see if the CPU supports it]),
1478 if test "x$enableval" = "xyes" ; then
1480 [asm volatile (".fpu neon\nvqadd.u8 d0, d1, d0\n")],
1483 AC_DEFINE(BUILD_NEON, 1, [Build NEON Code])
1484 build_cpu_neon="yes"
1495 if test "x$build_cpu_neon" = "xyes" ; then
1496 AC_TRY_COMPILE([#include <arm_neon.h>],
1497 [asm volatile ("vqadd.u8 d0, d1, d0\n")],
1500 AC_DEFINE(BUILD_NEON, 1, [Build NEON Code])
1501 build_cpu_neon="yes"
1510 #######################################
1513 AC_MSG_CHECKING(whether to build c code)
1514 AC_ARG_ENABLE(cpu-c,
1515 AC_HELP_STRING([--enable-cpu-c], [enable C code]),
1517 if test "x$enableval" = "xyes" ; then
1519 AC_DEFINE(BUILD_C, 1, [Build plain C code])
1526 AC_MSG_RESULT($build_cpu_c)
1527 if test "x$build_cpu_c" = "xyes" ; then
1528 AC_DEFINE(BUILD_C, 1, [Build plain C code])
1533 #######################################
1535 want_evas_magic_debug="yes"
1536 AC_MSG_CHECKING(whether to check magic for evas object)
1537 AC_ARG_ENABLE(evas-magic-debug,
1539 [--disable-evas-magic-debug],
1540 [disable MAGIC_DEBUG check when people pass in wrong object type. [[default=enabled]]]
1542 [ want_evas_magic_debug="$enableval" ]
1544 AC_MSG_RESULT($want_evas_magic_debug)
1546 AM_CONDITIONAL(EVAS_MAGIC_DEBUG, test "x$want_evas_magic_debug" = "xyes")
1547 if test "x$want_evas_magic_debug" = "xyes"; then
1548 AC_DEFINE(EVAS_MAGIC_DEBUG, 1, [complain when people pass in wrong object types etc.])
1552 #######################################
1554 want_word_cache="no"
1555 AC_MSG_CHECKING(whether to enable caching of rendered words)
1556 AC_ARG_ENABLE(word-cache,
1558 [--enable-word-cache],
1559 [Enable experimental word caching to speed up rendering [[default=disabled]]]
1561 [ want_word_cache="$enableval" ]
1563 AC_MSG_RESULT($want_word_cache)
1565 AM_CONDITIONAL(WORD_CACHE, test "x$want_word_cache" = "xyes")
1566 if test "x$want_word_cache" = "xyes"; then
1567 AC_DEFINE(WORD_CACHE, 1, [Experimental word caching to speed up text rendering.])
1570 #######################################
1572 want_metric_cache="no"
1573 AC_MSG_CHECKING(whether to enable caching of rendered metrics)
1574 AC_ARG_ENABLE(metric-cache,
1576 [--enable-metric-cache],
1577 [Enable experimental metric caching to speed up rendering [[default=disabled]]]
1579 [ want_metric_cache="$enableval" ]
1581 AC_MSG_RESULT($want_metric_cache)
1583 AM_CONDITIONAL(METRIC_CACHE, test "x$want_metric_cache" = "xyes")
1584 if test "x$want_metric_cache" = "xyes"; then
1585 AC_DEFINE(METRIC_CACHE, 1, [Experimental metric caching to speed up text rendering.])
1590 #####################################################################
1591 ## ARGB engine options
1593 #######################################
1594 ## Nearest sampling scaler
1595 EVAS_CHECK_SCALER([scale-sample], [sampling scaler], [scaler_sample="yes"], [scaler_sample="no"])
1596 ## Smooth super and sub sampling scaler
1597 EVAS_CHECK_SCALER([scale-smooth], [smooth scaler], [scaler_smooth="yes"], [scaler_smooth="no"])
1599 #######################################
1600 ## YUV -> ARGB converter
1603 AC_MSG_CHECKING(whether to build yuv converter code)
1604 AC_ARG_ENABLE(convert-yuv,
1605 AC_HELP_STRING([--enable-convert-yuv], [enable yuv converter code]),
1607 if test "x$enableval" = "xyes" ; then
1609 AC_DEFINE(BUILD_CONVERT_YUV, 1, [YUV Converter Support])
1616 AC_MSG_RESULT($conv_yuv)
1617 if test "x$conv_yuv" = "xyes" ; then
1618 AC_DEFINE(BUILD_CONVERT_YUV, 1, [YUV Converter Support])
1623 #####################################################################
1624 ## Output rendering features
1626 #######################################
1627 ## Small dither mask instead of big one (lower quality)
1628 EVAS_CHECK_DITHER([small-dither-mask], [small dither mask], [conv_small_dither="yes"], [conv_small_dither="no"])
1629 ## Alternate Line dither mask instead of big one (lower quality - but fastest)
1630 EVAS_CHECK_DITHER([line-dither-mask], [line dither mask], [conv_line_dither="yes"], [conv_line_dither="no"])
1631 ## No dither mask at all for 16bpp
1632 EVAS_CHECK_DITHER([no-dither-mask], [conversion to 16bpp without dither mask], [conv_no_dither="yes"], [conv_no_dither="no"])
1634 #######################################
1635 ## Convert to 8bpp RGB 332
1636 EVAS_CONVERT_COLOR(8, RGB, 332, [yes])
1637 ## Convert to 8bpp RGB 666
1638 EVAS_CONVERT_COLOR(8, RGB, 666, [yes])
1639 ## Convert to 8bpp RGB 232
1640 EVAS_CONVERT_COLOR(8, RGB, 232, [yes])
1641 ## Convert to 8bpp RGB 222
1642 EVAS_CONVERT_COLOR(8, RGB, 222, [yes])
1643 ## Convert to 8bpp RGB 221
1644 EVAS_CONVERT_COLOR(8, RGB, 221, [yes])
1645 ## Convert to 8bpp RGB 121
1646 EVAS_CONVERT_COLOR(8, RGB, 121, [yes])
1647 ## Convert to 8bpp RGB 111
1648 EVAS_CONVERT_COLOR(8, RGB, 111, [yes])
1649 ## Convert to 16bpp RGB 565
1650 EVAS_CONVERT_COLOR(16, RGB, 565)
1651 ## Convert to 16bpp BGR 565
1652 EVAS_CONVERT_COLOR(16, BGR, 565)
1653 ## Convert to 16bpp RGB 555
1654 EVAS_CONVERT_COLOR(16, RGB, 555)
1655 ## Convert to 16bpp RGB 444
1656 EVAS_CONVERT_COLOR(16, RGB, 444)
1658 #######################################
1659 ## Convert to 16bpp RGB 565 (444 ipaq)
1660 conv_16_rgb_ipq="yes"
1661 AC_MSG_CHECKING(whether to build 16bpp 565 (444 ipaq) converter code)
1662 AC_ARG_ENABLE(convert-16-rgb-ipq,
1663 AC_HELP_STRING([--disable-convert-16-rgb-ipq], [disable 16bpp 565 (444 ipaq) converter code]),
1665 if test "x$enableval" = "xyes" ; then
1666 AC_DEFINE(BUILD_CONVERT_16_RGB_454645, 1, [16bpp 565 (444 ipaq) Converter Support])
1667 conv_16_rgb_ipq="yes"
1669 conv_16_rgb_ipq="no"
1672 if test "x$conv_16_rgb_ipq" = "xyes" ; then
1673 AC_DEFINE(BUILD_CONVERT_16_RGB_454645, 1, [16bpp 565 (444 ipaq) Converter Support])
1677 AC_MSG_RESULT($conv_16_rgb_ipq)
1679 #######################################
1680 ## Convert to 16bpp RGB with rotation of 0
1681 EVAS_CONVERT_ROT(16, RGB, 0)
1682 ## Convert to 16bpp RGB with rotation of 180
1683 EVAS_CONVERT_ROT(16, RGB, 180)
1684 ## Convert to 16bpp RGB with rotation of 270
1685 EVAS_CONVERT_ROT(16, RGB, 270)
1686 ## Convert to 16bpp RGB with rotation of 90
1687 EVAS_CONVERT_ROT(16, RGB, 90)
1689 #######################################
1690 ## Convert to 24bpp RGB 888
1691 EVAS_CONVERT_COLOR(24, RGB, 888)
1692 ## Convert to 24bpp BGR 888
1693 EVAS_CONVERT_COLOR(24, BGR, 888)
1694 ## Convert to 32bpp RGB 8888
1695 EVAS_CONVERT_COLOR(32, RGB, 8888)
1696 ## Convert to 32bpp RGBX 8888
1697 EVAS_CONVERT_COLOR(32, RGBX, 8888)
1698 ## Convert to 32bpp BGR 8888
1699 EVAS_CONVERT_COLOR(32, BGR, 8888)
1700 ## Convert to 32bpp BGRX 8888
1701 EVAS_CONVERT_COLOR(32, BGRX, 8888)
1703 #######################################
1704 ## Convert to 24bpp RGB 666 (666 ezx)
1705 conv_24_rgb_ezx="yes"
1706 AC_MSG_CHECKING(whether to build 24bpp 666 (666 ezx) converter code)
1707 AC_ARG_ENABLE(convert-24-rgb-ezx,
1708 AC_HELP_STRING([--disable-convert-24-rgb-ezx], [disable 24bpp 666 (666 ezx) converter code]),
1710 if test "x$enableval" = "xyes" ; then
1711 AC_DEFINE(BUILD_CONVERT_24_RGB_666, 1, [24bpp 666 (666 ezx) Converter Support])
1712 conv_24_rgb_ezx="yes"
1714 conv_24_rgb_ezx="no"
1717 if test "x$conv_24_rgb_ezx" = "xyes" ; then
1718 AC_DEFINE(BUILD_CONVERT_24_RGB_666, 1, [24bpp 666 (666 ezx) Converter Support])
1722 AC_MSG_RESULT($conv_24_rgb_ezx)
1724 #######################################
1725 ## Convert to 32bpp RGB 666 (666 ezx)
1726 conv_32_rgb_ezx="yes"
1727 AC_MSG_CHECKING(whether to build 32bpp 666 (666 ezx) converter code)
1728 AC_ARG_ENABLE(convert-32-rgb-ezx,
1729 AC_HELP_STRING([--disable-convert-32-rgb-ezx], [disable 32bpp 666 (666 ezx) converter code]),
1731 if test "x$enableval" = "xyes" ; then
1732 AC_DEFINE(BUILD_CONVERT_32_RGB_666, 1, [32bpp 666 (666 ezx) Converter Support])
1733 conv_32_rgb_ezx="yes"
1735 conv_32_rgb_ezx="no"
1738 if test "x$conv_32_rgb_ezx" = "xyes" ; then
1739 AC_DEFINE(BUILD_CONVERT_32_RGB_666, 1, [32bpp 666 (666 ezx) Converter Support])
1743 AC_MSG_RESULT($conv_32_rgb_ezx)
1745 #######################################
1746 ## Convert to 32bpp RGB with rotation of 0
1747 EVAS_CONVERT_ROT(32, RGB, 0)
1748 ## Convert to 32bpp RGB with rotation of 180
1749 EVAS_CONVERT_ROT(32, RGB, 180)
1750 ## Convert to 32bpp RGB with rotation of 270
1751 EVAS_CONVERT_ROT(32, RGB, 270)
1752 ## Convert to 32bpp RGB with rotation of 90
1753 EVAS_CONVERT_ROT(32, RGB, 90)
1755 #######################################
1756 ## Convert to 8bpp grayscale with 256 value, no palette
1757 EVAS_CONVERT_COLOR(8, GRY, 1)
1758 ## Convert to 8bpp grayscale with 16 value, no palette
1759 EVAS_CONVERT_COLOR(8, GRY, 16)
1761 #######################################
1762 ## Convert to 8bpp grayscale, 64-palette
1763 conv_8_grayscale_64="yes"
1764 AC_MSG_CHECKING(whether to build 8bpp grayscale 64-palette converter code)
1765 AC_ARG_ENABLE(convert-8-grayscale-64,
1766 AC_HELP_STRING([--disable-convert-8-grayscale-64], [disable 8bpp grayscale 64-palette converter code]),
1768 if test "x$enableval" = "xyes"; then
1769 AC_DEFINE(BUILD_CONVERT_8_GRAYSCALE_64, 1, [8bpp Grayscale 64-palette Converter Support])
1770 conv_8_grayscale_64="yes"
1772 conv_8_grayscale_64="no"
1775 if test "x$conv_8_grayscale_64" = "xyes"; then
1776 AC_DEFINE(BUILD_CONVERT_8_GRAYSCALE_64, 1, [32bpp Grayscale 64-palette Converter Support])
1780 AC_MSG_RESULT($conv_8_grayscale_64)
1786 AC_MSG_CHECKING(whether to enable build with valgrind)
1787 AC_ARG_ENABLE(valgrind,
1788 AC_HELP_STRING([--enable-valgrind], [enable valgrind fixes to stop false reports]),
1789 [ want_valgrind=$enableval ]
1791 AC_MSG_RESULT($want_valgrind)
1793 if test x$want_valgrind = "xyes"; then
1794 PKG_CHECK_MODULES(VALGRIND, valgrind >= 2.4.0,
1796 AC_DEFINE(HAVE_VALGRIND, 1, [Valgrind support])
1798 requirement_evas="valgrind ${requirement_evas}"
1801 if test "x$want_valgrind" = "xyes" -a "x$use_strict" = "xyes" ; then
1802 AC_MSG_ERROR([Valgrind not found (strict dependencies checking)])
1810 install_examples="yes"
1811 AC_ARG_ENABLE([install-examples],
1812 AC_HELP_STRING([--disable-install-examples],
1813 [disable installing examples (compiled or just source).
1814 @<:@default==enabled@:>@]),
1816 if test "x${enableval}" = "xyes" ; then
1817 install_examples="yes"
1819 install_examples="no"
1822 [install_examples="yes"])
1823 AM_CONDITIONAL([INSTALL_EXAMPLES], [test "x${install_examples}" = "xyes"])
1826 AC_ARG_ENABLE([build-examples],
1827 AC_HELP_STRING([--enable-build-examples],
1828 [enable building examples (this requires extra denpendencies. if you don't have them installed yet, don't build with this option or it will fail. build again when you have it, overriding the previous installation). @<:@default==disabled@:>@]),
1830 if test "x${enableval}" = "xyes" ; then
1831 build_examples="yes"
1832 # put in here the dependencies for Evas' examples. they are
1833 # meant to be 'real world' usage examples, thus one will be
1834 # using higher level libraries on these programs
1835 PKG_CHECK_MODULES([ECORE_EVAS], [ecore-evas ecore], [], [build_examples="no"])
1836 PKG_CHECK_MODULES([EDJE], [edje],
1837 [edje_cc=$($PKG_CONFIG --variable=prefix edje)/bin/edje_cc],
1838 [build_examples="no"])
1844 [build_examples="no"])
1845 AM_CONDITIONAL([BUILD_EXAMPLES], [test "x${build_examples}" = "xyes"])
1847 ## Unit tests, coverage
1849 EFL_CHECK_TESTS([enable_tests="yes"], [enable_tests="no"])
1851 EFL_CHECK_COVERAGE([${enable_tests}], [enable_coverage="yes"], [enable_coverage="no"])
1852 EVAS_CFLAGS="${EVAS_CFLAGS} ${EFL_COVERAGE_CFLAGS} ${EXOTIC_CFLAGS}"
1853 EVAS_LIBS="${EVAS_LIBS} ${EFL_COVERAGE_LIBS} ${EXOTIC_LIBS}"
1854 if test "x$enable_coverage" = "xyes" ; then
1855 EVAS_CFLAGS="${EVAS_CFLAGS} ${EFL_DEBUG_CFLAGS}"
1858 AC_SUBST(EVAS_CFLAGS)
1861 #####################################################################
1864 AC_SUBST(altivec_cflags)
1865 AC_SUBST(pthread_cflags)
1866 AC_SUBST(pthread_libs)
1867 AC_SUBST(requirement_evas)
1870 #####################################################################
1879 evas-opengl-cocoa.pc
1880 evas-software-buffer.pc
1881 evas-software-x11.pc
1882 evas-software-8-x11.pc
1883 evas-software-16-x11.pc
1884 evas-software-gdi.pc
1885 evas-software-ddraw.pc
1887 evas-software-16-wince.pc
1888 evas-software-sdl.pc
1898 src/bin/loaders/Makefile
1899 src/bin/loaders/jpeg/Makefile
1900 src/bin/loaders/png/Makefile
1901 src/bin/loaders/eet/Makefile
1902 src/bin/loaders/tiff/Makefile
1903 src/bin/loaders/xpm/Makefile
1904 src/bin/loaders/bmp/Makefile
1905 src/bin/loaders/ico/Makefile
1906 src/bin/loaders/tga/Makefile
1907 src/bin/loaders/pmaps/Makefile
1908 src/bin/loaders/wbmp/Makefile
1909 src/bin/loaders/psd/Makefile
1911 src/lib/canvas/Makefile
1912 src/lib/file/Makefile
1913 src/lib/cache/Makefile
1914 src/lib/cache2/Makefile
1915 src/lib/cserve/Makefile
1916 src/lib/cserve2/Makefile
1917 src/lib/engines/Makefile
1918 src/lib/engines/common/Makefile
1919 src/lib/engines/common/evas_op_add/Makefile
1920 src/lib/engines/common/evas_op_blend/Makefile
1921 src/lib/engines/common/evas_op_copy/Makefile
1922 src/lib/engines/common/evas_op_mask/Makefile
1923 src/lib/engines/common/evas_op_mul/Makefile
1924 src/lib/engines/common/evas_op_sub/Makefile
1925 src/lib/engines/common_8/Makefile
1926 src/lib/engines/common_16/Makefile
1927 src/modules/Makefile
1928 src/modules/engines/Makefile
1929 src/modules/engines/software_generic/Makefile
1930 src/modules/engines/software_gdi/Makefile
1931 src/modules/engines/software_ddraw/Makefile
1932 src/modules/engines/direct3d/Makefile
1933 src/modules/engines/software_16_wince/Makefile
1934 src/modules/engines/software_x11/Makefile
1935 src/modules/engines/fb/Makefile
1936 src/modules/engines/buffer/Makefile
1937 src/modules/engines/directfb/Makefile
1938 src/modules/engines/gl_common/Makefile
1939 src/modules/engines/gl_x11/Makefile
1940 src/modules/engines/gl_sdl/Makefile
1941 src/modules/engines/gl_cocoa/Makefile
1942 src/modules/engines/psl1ght/Makefile
1943 src/modules/engines/software_8/Makefile
1944 src/modules/engines/software_8_x11/Makefile
1945 src/modules/engines/software_16/Makefile
1946 src/modules/engines/software_16_x11/Makefile
1947 src/modules/engines/software_16_sdl/Makefile
1948 src/modules/engines/wayland_shm/Makefile
1949 src/modules/engines/wayland_egl/Makefile
1950 src/modules/loaders/Makefile
1951 src/modules/loaders/edb/Makefile
1952 src/modules/loaders/eet/Makefile
1953 src/modules/loaders/gif/Makefile
1954 src/modules/loaders/jpeg/Makefile
1955 src/modules/loaders/png/Makefile
1956 src/modules/loaders/tiff/Makefile
1957 src/modules/loaders/xpm/Makefile
1958 src/modules/loaders/bmp/Makefile
1959 src/modules/loaders/ico/Makefile
1960 src/modules/loaders/tga/Makefile
1961 src/modules/loaders/svg/Makefile
1962 src/modules/loaders/pmaps/Makefile
1963 src/modules/loaders/wbmp/Makefile
1964 src/modules/loaders/psd/Makefile
1965 src/modules/loaders/generic/Makefile
1966 src/modules/savers/Makefile
1967 src/modules/savers/edb/Makefile
1968 src/modules/savers/eet/Makefile
1969 src/modules/savers/jpeg/Makefile
1970 src/modules/savers/png/Makefile
1971 src/modules/savers/tiff/Makefile
1972 src/static_deps/Makefile
1973 src/static_deps/liblinebreak/Makefile
1974 src/lib/include/Makefile
1975 src/examples/Makefile
1980 #####################################################################
1983 if test "x$build_pthreads" = "xno" ; then
1984 if test "x$build_async_render" = "xyes" ; then
1985 echo "ERROR: PThreads off, but async rendering on. Async rendering"
1986 echo " needs thread support."
1989 if test "x$build_pipe_render" = "xyes" ; then
1990 echo "ERROR: PThreads off, but pipe rendering on. Pipe rendering"
1991 echo " needs thread support."
1996 if test "x${has_pthreads}" = "xno" ; then
1997 if test "x$build_async_preload" = "xyes" ; then
1998 echo "ERROR: PThreads off, but Async Preload on. Async Preload"
1999 echo " needs thread support."
2004 #####################################################################
2010 echo "------------------------------------------------------------------------"
2011 echo "$PACKAGE $VERSION"
2012 echo "------------------------------------------------------------------------"
2014 echo "Configuration Options Summary:"
2017 echo " Software Memory Buffer.....: $have_evas_engine_buffer"
2018 echo " Software X11...............: $have_evas_engine_software_x11 (Xlib: $have_evas_engine_software_xlib) (XCB: $have_evas_engine_software_xcb)"
2019 echo $ECHO_N " OpenGL X11.................: $have_evas_engine_gl_x11 (Xlib: $have_evas_engine_gl_xlib) (XCB: $have_evas_engine_gl_xcb) $ECHO_C"
2020 if test "x$have_evas_engine_gl_x11" = "xyes"; then
2021 echo "(GLES: $gl_flavor_gles) (SGX: $gles_variety_sgx) (s3c6410: $gles_variety_s3c6410)"
2025 echo " Software GDI...............: $have_evas_engine_software_gdi"
2026 echo " Software DirectDraw........: $have_evas_engine_software_ddraw"
2027 echo " Direct3d...................: $have_evas_engine_direct3d"
2028 echo " OpenGL SDL.................: $have_evas_engine_gl_sdl $ECHO_C"
2029 if test "x$have_evas_engine_gl_sdl" = "xyes"; then
2030 echo "(GLES: $gl_flavor_gles) (SGX: $gles_variety_sgx) (s3c6410: $gles_variety_s3c6410)"
2034 echo " OpenGL Cocoa...............: $have_evas_engine_gl_cocoa"
2035 echo " Software Framebuffer.......: $have_evas_engine_fb"
2036 echo " DirectFB...................: $have_evas_engine_directfb"
2037 echo " PSL1GHT....................: $have_evas_engine_psl1ght"
2038 echo " Software 8bit grayscale....: $have_evas_engine_software_8"
2039 # FIXME: kill software 16bit
2040 echo " Software 16bit ............: $have_evas_engine_software_16"
2041 echo " Software 16bit X11.........: $have_evas_engine_software_16_x11"
2042 echo " Software 16bit WinCE.......: $have_evas_engine_software_16_wince"
2043 echo " Software 16bit SDL.........: $have_evas_engine_software_16_sdl (primitive: $sdl_primitive)"
2044 echo " Wayland Shm................: $have_evas_engine_wayland_shm"
2045 echo " Wayland Egl................: $have_evas_engine_wayland_egl"
2047 echo "Image Loaders:"
2048 echo " BMP.....................: $have_evas_image_loader_bmp"
2049 echo " EDB.....................: $have_evas_image_loader_edb"
2050 echo " EET.....................: $have_evas_image_loader_eet"
2051 echo " GENERIC.................: $have_evas_image_loader_generic"
2052 echo " GIF.....................: $have_evas_image_loader_gif"
2053 echo " ICO.....................: $have_evas_image_loader_ico"
2054 echo " JPEG....................: $have_evas_image_loader_jpeg (region: $have_jpeg_region)"
2055 echo " PMAPS...................: $have_evas_image_loader_pmaps"
2056 echo " PNG.....................: $have_evas_image_loader_png"
2057 echo " PSD.....................: $have_evas_image_loader_psd"
2058 echo " SVG.....................: $have_evas_image_loader_svg"
2059 echo " TGA.....................: $have_evas_image_loader_tga"
2060 echo " TIFF....................: $have_evas_image_loader_tiff"
2061 echo " WBMP....................: $have_evas_image_loader_wbmp"
2062 echo " XPM.....................: $have_evas_image_loader_xpm"
2064 echo "Font Sourcing Systems:"
2065 echo " EET.....................: $have_evas_font_loader_eet"
2067 echo "Font Searching Systems:"
2068 echo " Fontconfig..............: $have_fontconfig"
2070 echo "Font Rendering Helpers:"
2071 echo " Fribidi.................: $have_fribidi"
2072 echo " Harfbuzz................: $have_harfbuzz"
2073 echo " liblinebreak............: $have_linebreak"
2074 # FIXME: add non freetype2 font engine support
2075 # FIXME: make freetype2 optional
2077 echo "CPU Specific Extensions:"
2078 echo " Fallback C Code.........: $build_cpu_c"
2079 echo " MMX.....................: $build_cpu_mmx"
2080 echo " SSE.....................: $build_cpu_sse"
2081 echo " SSE3....................: $build_cpu_sse3"
2082 echo " ALTIVEC.................: $build_cpu_altivec"
2083 echo " NEON....................: $build_cpu_neon"
2084 echo " Thread Support..........: $build_pthreads"
2087 echo " MAGIC_DEBUG.............: $want_evas_magic_debug"
2088 echo " Cache Server............: $want_evas_cserve"
2089 echo " Cache Server 2..........: $want_evas_cserve2"
2092 dnl ... DISABLED! some testing has shown that this seems to have some
2093 dnl nasty bugs on both x86 and arm (tegra2 dual core tested), so just
2094 dnl disabling this for now until it can be fixed
2096 echo " Threaded Pipe Rendering.: $build_pipe_render"
2097 echo " Async Pipe Rendering....: $build_async_render"
2098 echo " Async Events............: $build_async_events"
2099 echo " Async Image Preload.....: $build_async_preload"
2101 echo " Word Cache..............: $want_word_cache"
2102 echo " Metric Cache............: $want_metric_cache"
2104 echo " Pixman..................: $have_pixman"
2105 echo " Pixman Fonts............: $have_pixman_font"
2106 echo " Pixman Rects............: $have_pixman_rect"
2107 echo " Pixman Lines............: $have_pixman_line"
2108 echo " Pixman Polygons.........: $have_pixman_poly"
2109 echo " Pixman Images...........: $have_pixman_image"
2110 echo " Pixman Image ScaleSample: $have_pixman_image_scale_sample"
2112 echo " Tiled 32BPP rotate......: $have_tile_rotate"
2114 echo "ARGB Software Engine Options:"
2115 echo " Sampling Scaler.........: $scaler_sample"
2116 echo " Smooth Scaler...........: $scaler_smooth"
2117 # FIXME: add an mmx scaler routine
2118 echo " YUV Converter...........: $conv_yuv"
2119 # FIXME: add more YUV format and colorvariant support
2121 echo "ARGB Conversion Options:"
2122 echo " Smaller Dither Mask.....: $conv_small_dither"
2123 echo " Line Dither Mask........: $conv_line_dither"
2124 echo " No Dither Mask for 16bpp: $conv_no_dither"
2125 echo " 8bpp RGB 332............: $conv_8_rgb_332"
2126 echo " 8bpp RGB 666............: $conv_8_rgb_666"
2127 echo " 8bpp RGB 232............: $conv_8_rgb_232"
2128 echo " 8bpp RGB 222............: $conv_8_rgb_222"
2129 echo " 8bpp RGB 221............: $conv_8_rgb_221"
2130 echo " 8bpp RGB 121............: $conv_8_rgb_121"
2131 echo " 8bpp RGB 111............: $conv_8_rgb_111"
2132 echo " 8bpp Grayscale (256)....: $conv_8_gry_1"
2133 echo " 8bpp Grayscale (16).....: $conv_8_gry_16"
2134 echo " 8bpp Grayscale 64-pal...: $conv_8_grayscale_64"
2135 # FIXME: add grayscale and B&W support to standard x converters
2136 echo " 16bpp RGB 565...........: $conv_16_rgb_565"
2137 echo " 16bpp BGR 565...........: $conv_16_bgr_565"
2138 echo " 16bpp RGB 555...........: $conv_16_rgb_555"
2139 echo " 16bpp RGB 444...........: $conv_16_rgb_444"
2140 echo " 16bpp RGB 565 (444 ipaq): $conv_16_rgb_ipq"
2141 # FIXME: add 555 (444 ipaq) support
2142 # FIXME: add 30bpp support
2143 # FIXME: add palletted support (ugh!)
2144 # FIXME: add 8bpp and below rotation
2145 echo " 16bpp Rotation 0........: $conv_16_rgb_rot_0"
2146 echo " 16bpp Rotation 90.......: $conv_16_rgb_rot_90"
2147 echo " 16bpp Rotation 180......: $conv_16_rgb_rot_180"
2148 echo " 16bpp Rotation 270......: $conv_16_rgb_rot_270"
2149 echo " 24bpp RGB 888...........: $conv_24_rgb_888"
2150 echo " 24bpp BGR 888...........: $conv_24_bgr_888"
2151 echo " 24bpp RGB 666 (666 ezx).: $conv_24_rgb_ezx"
2152 # FIXME: add 24bpp rotation
2153 echo " 32bpp RGB 8888..........: $conv_32_rgb_8888"
2154 echo " 32bpp RGBX 8888.........: $conv_32_rgbx_8888"
2155 echo " 32bpp BGR 8888..........: $conv_32_bgr_8888"
2156 echo " 32bpp BGRX 8888.........: $conv_32_bgrx_8888"
2157 echo " 32bpp RGB 666 (666 ezx).: $conv_32_rgb_ezx"
2158 echo " 32bpp Rotation 0........: $conv_32_rgb_rot_0"
2159 echo " 32bpp Rotation 90.......: $conv_32_rgb_rot_90"
2160 echo " 32bpp Rotation 180......: $conv_32_rgb_rot_180"
2161 echo " 32bpp Rotation 270......: $conv_32_rgb_rot_270"
2163 echo "Documentation.............: ${build_doc}"
2164 echo "Examples..................: install:${install_examples} build:${build_examples}"
2165 if test "x${enable_tests}" = "xyes" ; then
2166 echo "Tests.....................: ${enable_tests} (make check)"
2168 echo "Tests.....................: ${enable_tests}"
2170 if test "x${enable_coverage}" = "xyes" ; then
2171 echo "Coverage..................: ${enable_coverage} (make coverage)"
2173 echo "Coverage..................: ${enable_coverage}"
2176 echo "Compilation............: make (or gmake)"
2177 echo " CPPFLAGS.............: $CPPFLAGS"
2178 echo " CFLAGS...............: $CFLAGS"
2179 echo " CXXFLAGS.............: $CXXFLAGS"
2180 echo " LDFLAGS..............: $LDFLAGS"
2182 echo "Installation...........: make install (as root if needed, with 'su' or 'sudo')"
2183 echo " prefix...............: $prefix"
2185 if test "x${have_static_module}" = "xyes" ; then
2186 echo -e "\0033\01331;31mWarning\0033\01331;0m: You are trying to link statically one or more modules to Evas."
2187 echo " You must know what you are doing, or else you will have a lot of"
2188 echo " problems. And Kenny will be killed."
2189 echo " Think about that."