1 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
2 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
3 m4_define([v_maj], [1])
4 m4_define([v_min], [1])
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"
96 want_evas_engine_buffer="yes"
97 want_evas_engine_software_xlib="no"
98 want_evas_engine_software_xcb="no"
99 want_evas_engine_software_gdi="no"
100 want_evas_engine_software_ddraw="no"
101 want_evas_engine_software_sdl="no"
102 want_evas_engine_software_8_x11="no"
103 want_evas_engine_software_16_x11="no"
104 want_evas_engine_software_16_ddraw="no"
105 want_evas_engine_software_16_wince="no"
106 want_evas_engine_software_16_sdl="no"
107 want_evas_engine_gl_xlib="no"
108 want_evas_engine_gl_xcb="no"
109 want_evas_engine_gl_sdl="no"
110 want_evas_engine_gl_cocoa="no"
111 want_evas_engine_direct3d="no"
112 want_evas_engine_fb="no"
113 want_evas_engine_directfb="no"
114 want_evas_engine_psl1ght="no"
115 want_evas_engine_wayland_shm="no"
116 want_evas_engine_wayland_egl="no"
118 want_evas_image_loader_edb="yes"
119 want_evas_image_loader_eet="yes"
120 want_evas_image_loader_gif="yes"
121 want_evas_image_loader_jpeg="yes"
122 want_evas_image_loader_pmaps="yes"
123 want_evas_image_loader_png="yes"
124 want_evas_image_loader_svg="yes"
125 want_evas_image_loader_tiff="yes"
126 want_evas_image_loader_xpm="yes"
127 want_evas_image_loader_bmp="yes"
128 want_evas_image_loader_tga="yes"
129 want_evas_image_loader_wbmp="yes"
130 want_evas_image_loader_ico="yes"
131 want_evas_image_loader_psd="yes"
132 want_evas_image_loader_generic="yes"
134 want_evas_font_loader_eet="yes"
139 want_evas_engine_software_16_wince="yes"
140 want_evas_image_loader_edb="no"
141 want_evas_image_loader_gif="no"
142 want_evas_image_loader_svg="no"
143 want_evas_image_loader_tiff="no"
146 want_evas_engine_software_gdi="yes"
147 want_evas_engine_software_ddraw="yes"
148 want_evas_engine_direct3d="yes"
149 want_evas_engine_software_16_ddraw="yes"
150 want_evas_image_loader_edb="no"
151 want_evas_image_loader_svg="no"
154 want_evas_engine_software_xlib="auto"
155 want_evas_engine_gl_cocoa="auto"
158 want_evas_engine_software_xlib="auto"
159 want_evas_engine_gl_xlib="auto"
160 want_evas_engine_software_xcb="no"
161 want_evas_engine_gl_xcb="no"
162 want_evas_engine_fb="auto"
163 want_evas_engine_wayland_shm="auto"
164 want_evas_engine_wayland_egl="auto"
165 ### no - not ready/usable/complete
166 # want_evas_engine_software_8_x11="auto"
167 # want_evas_engine_software_16_x11="auto"
171 case "$host_vendor" in
173 want_evas_engine_psl1ght="static"
180 ### Additional options to configure
182 # when used, that option makes configure script fails when
183 # a requirement is selected, but not met.
185 AC_ARG_ENABLE([strict],
186 AC_HELP_STRING([--enable-strict], [enable strict checking mode. @<:@default==disabled@:>@]),
190 # Simple X11 build/link
191 AC_ARG_ENABLE([simple-x11],
192 AC_HELP_STRING([--enable-simple-x11], [enable simple x11 linking]),
194 if test "x${enableval}" = "xyes" ; then
195 want_evas_simple_x11="yes"
197 want_evas_simple_x11="no"
202 ### Checks for programs
204 m4_ifdef([AC_PROG_OBJC],
207 _AM_DEPENDENCIES(OBJC)
210 dnl#AC_CHECK_TOOL([OBJC], [gcc])
212 dnl#AC_SUBST([OBJCFLAGS])
223 # Check whether pkg-config supports Requires.private
224 if $PKG_CONFIG --atleast-pkgconfig-version 0.22; then
225 pkgconfig_requires_private="Requires.private"
227 pkgconfig_requires_private="Requires"
229 AC_SUBST(pkgconfig_requires_private)
231 # doxygen program for documentation building
232 EFL_CHECK_DOXYGEN([build_doc="yes"], [build_doc="no"])
235 ### Checks for libraries
237 # Evil library for compilation on Windows CE
241 PKG_CHECK_MODULES([EVIL], [evil >= 1.0.0])
242 AC_DEFINE(HAVE_EVIL, 1, [Set to 1 if evil package is installed])
243 requirement_evas="evil ${requirement_evas}"
247 ## strong dependencies
250 PKG_CHECK_MODULES([EINA], [eina >= 1.1.0])
251 CPPFLAGS_SAVE="$CPPFLAGS"
252 CPPFLAGS="$CPPFLAGS $EINA_CFLAGS"
253 AC_CHECK_SIZEOF(Eina_Unicode,, [#include <Eina.h>])
254 CPPFLAGS="$CPPFLAGS_SAVE"
257 PKG_CHECK_MODULES([FREETYPE], [freetype2 >= 9.3.0])
259 requirement_evas="freetype2 eina >= 1.1.0 ${requirement_evas}"
261 ## optional dependencies
265 AC_ARG_ENABLE([fontconfig],
266 AC_HELP_STRING([--disable-fontconfig],
267 [disable fontconfig for finding fonts. @<:@default=enabled@:>@]),
269 if test "x${enableval}" = "xyes" ; then
270 want_fontconfig="yes"
277 if test "x${want_fontconfig}" = "xyes" -o "x${want_fontconfig}" = "xauto" ; then
278 PKG_CHECK_MODULES([FONTCONFIG],
279 [fontconfig >= 2.5.0],
281 have_fontconfig="yes"
282 AC_DEFINE(HAVE_FONTCONFIG, 1, [have fontconfig searching capabilities])
283 requirement_evas="fontconfig ${requirement_evas}"
286 if test "x${want_fontconfig}" = "xyes" -a "x${use_strict}" = "xyes" ; then
287 AC_MSG_ERROR([Fontconfig not found (strict dependencies checking)])
295 AC_ARG_ENABLE([liblinebreak],
296 AC_HELP_STRING([--disable-liblinebreak],
297 [disable linking against liblinebreak. @<:@default=enabled@:>@]),
299 if test "x${enableval}" = "xyes" ; then
307 AM_CONDITIONAL(EVAS_USE_LINEBREAK, test "x${want_linebreak}" = "xyes")
308 if test "x${want_linebreak}" = "xyes" ; then
310 LINEBREAK_CFLAGS='-I$(top_srcdir)/src/static_deps/liblinebreak'
311 LINEBREAK_LIBS='$(top_builddir)/src/static_deps/liblinebreak/liblinebreak.la'
312 AC_SUBST(LINEBREAK_CFLAGS)
313 AC_SUBST(LINEBREAK_LIBS)
314 AC_DEFINE(HAVE_LINEBREAK, 1, [have liblinebreak support])
321 AC_ARG_ENABLE([fribidi],
322 AC_HELP_STRING([--disable-fribidi],
323 [disable bidirectional text support. @<:@default=enabled@:>@]),
325 if test "x${enableval}" = "xyes" ; then
332 if test "x${want_fribidi}" = "xyes" -o "x${want_fribidi}" = "xauto" ; then
333 PKG_CHECK_MODULES([FRIBIDI],
337 AC_DEFINE(HAVE_FRIBIDI, 1, [have fribidi support])
338 requirement_evas="fribidi ${requirement_evas}"
339 CPPFLAGS_SAVE="$CPPFLAGS"
340 CPPFLAGS="$CPPFLAGS $FRIBIDI_CFLAGS"
341 AC_CHECK_SIZEOF(FriBidiChar,, [#include <fribidi/fribidi.h>])
342 CPPFLAGS="$CPPFLAGS_SAVE"
345 if test "x$want_fribidi" = "xyes" -a "x$use_strict" = "xyes" ; then
346 AC_MSG_ERROR([Fribidi not found (strict dependencies checking)])
351 if test "x${have_fribidi}" = "xno"; then
357 have_harfbuzz_ft="no"
358 AC_ARG_ENABLE([harfbuzz],
359 AC_HELP_STRING([--disable-harfbuzz],
360 [disable complex text shaping and layouting support. @<:@default=enabled@:>@]),
362 if test "x${enableval}" = "xyes" ; then
369 if test "x${want_harfbuzz}" = "xyes" -o "x${want_harfbuzz}" = "xauto" ; then
370 PKG_CHECK_MODULES([HARFBUZZ],
374 requirement_evas="harfbuzz ${requirement_evas}"
377 if test "x$want_harfbuzz" = "xyes" -a "x$use_strict" = "xyes" ; then
378 AC_MSG_ERROR([Harfbuzz not found (strict dependencies checking)])
381 if test "x$have_harfbuzz" = "xyes" ; then
383 CPPFLAGS_SAVE="$CPPFLAGS"
384 CPPFLAGS="$CPPFLAGS $HARFBUZZ_CFLAGS $FREETYPE_CFLAGS"
385 # must have for usage with harfbuzz although harfbuzz may not have it.
387 AC_CHECK_HEADER(hb-ft.h,
389 have_harfbuzz_ft="yes"
390 #Depend on harfbuzz ft for harfbuzz support
391 AC_DEFINE(HAVE_HARFBUZZ, 1, [have harfbuzz support])
394 if test "x$want_harfbuzz" = "xyes" -a "x$use_strict" = "xyes" ; then
395 AC_MSG_ERROR([Harfbuzz-ft not found (strict dependencies checking)])
399 CPPFLAGS="$CPPFLAGS_SAVE"
403 if test "x${have_harfbuzz}" = "xno"; then
409 AC_ARG_ENABLE([pixman],
410 AC_HELP_STRING([--enable-pixman],
411 [enable pixman for software rendering. @<:@default=enabled@:>@]),
413 if test "x${enableval}" = "xyes" ; then
421 if test "x${want_pixman}" = "xyes" -o "x${want_pixman}" = "xauto" ; then
422 PKG_CHECK_MODULES([PIXMAN],
426 AC_DEFINE(HAVE_PIXMAN, 1, [have pixman for rendering])
427 requirement_evas="pixman-1 ${requirement_evas}"
430 if test "x${want_pixman}" = "xyes" -a "x${use_strict}" = "xyes" ; then
431 AC_MSG_ERROR([Pixman not found (strict dependencies checking)])
436 have_pixman_font="no"
437 AC_ARG_ENABLE(pixman-font,
438 AC_HELP_STRING([--enable-pixman-font], [Allow pixman to render fonts]),
440 have_pixman_font="yes"
441 AC_DEFINE(PIXMAN_FONT, 1, [Allow pixman to render fonts])
445 have_pixman_rect="no"
446 AC_ARG_ENABLE(pixman-rect,
447 AC_HELP_STRING([--enable-pixman-rect], [Allow pixman to render rects]),
449 have_pixman_rect="yes"
450 AC_DEFINE(PIXMAN_RECT, 1, [Allow pixman to render rects])
454 have_pixman_line="no"
455 AC_ARG_ENABLE(pixman-line,
456 AC_HELP_STRING([--enable-pixman-line], [Allow pixman to render lines]),
458 have_pixman_line="yes"
459 AC_DEFINE(PIXMAN_LINE, 1, [Allow pixman to render lines])
463 have_pixman_poly="no"
464 AC_ARG_ENABLE(pixman-poly,
465 AC_HELP_STRING([--enable-pixman-poly], [Allow pixman to render polys]),
467 have_pixman_poly="yes"
468 AC_DEFINE(PIXMAN_POLY, 1, [Allow pixman to render polys])
472 have_pixman_image="no"
473 AC_ARG_ENABLE(pixman-image,
474 AC_HELP_STRING([--enable-pixman-image], [Allow pixman to render images]),
476 have_pixman_image="yes"
477 AC_DEFINE(PIXMAN_IMAGE, 1, [Allow pixman to render images])
481 have_pixman_image_scale_sample="no"
482 AC_ARG_ENABLE(pixman-image-scale-sample,
483 AC_HELP_STRING([--enable-pixman-image-scale-sample], [Allow pixman to render sampled scaled images]),
485 have_pixman_image_scale_sample="yes"
486 AC_DEFINE(PIXMAN_IMAGE_SCALE_SAMPLE, 1, [Allow pixman to render image sampled scaling])
490 have_tile_rotate="no"
491 AC_ARG_ENABLE(tile-rotate,
492 AC_HELP_STRING([--enable-tile-rotate], [Enable tiled rotate algorithm]),
494 have_tile_rotate="yes"
495 AC_DEFINE(TILE_ROTATE, 1, [Enable tiled rotate algorithm])
499 ### Checks for header files
501 AC_CHECK_HEADERS([unistd.h stdint.h sys/param.h netinet/in.h sys/mman.h])
505 AC_CHECK_TYPES([struct sigaction], [], [],
506 [[#include <signal.h>]])
509 ### Checks for structures
512 ### Checks for compiler characteristics
518 EFL_ATTRIBUTE_ALWAYS_INLINE
523 WIN32_CPPFLAGS="-D_WIN32_WCE=0x0420"
526 WIN32_CPPFLAGS="-D_WIN32_WINNT=0x0500"
529 AC_SUBST(WIN32_CPPFLAGS)
532 AC_SUBST(WIN32_CFLAGS)
535 ### Checks for linker characteristics
536 lt_enable_auto_import=""
539 AC_DEFINE(EFL_EVAS_BUILD, 1, [Define to mention that evas is built])
540 lt_enable_auto_import="-Wl,--enable-auto-import"
543 AC_SUBST(lt_enable_auto_import)
546 ### Checks for library functions
549 AC_CHECK_FUNCS([siglongjmp])
555 EFL_CHECK_FNMATCH([], [AC_MSG_ERROR([Cannot find fnmatch()])])
562 AC_DEFINE(HAVE_DLSYM)
565 # nothing on mingw platform
568 AC_CHECK_FUNCS(dlsym, res=yes, res=no)
569 if test "x$res" = "xyes"; then
570 AC_DEFINE(HAVE_DLSYM)
572 AC_CHECK_LIB(dl, dlsym, res=yes, res=no)
573 if test "x$res" = "xyes"; then
575 AC_DEFINE(HAVE_DLSYM)
577 want_evas_engine_gl_xlib="no"
578 want_evas_engine_gl_xcb="no"
579 want_evas_engine_gl_sdl="no"
583 AC_SUBST(dlopen_libs)
586 AC_CHECK_LIB(m, lround, res=yes, res=no)
587 if test "x$res" = "xyes"; then
588 AC_DEFINE(HAVE_LROUND, 1, C99 lround function exists)
592 AC_MSG_CHECKING([whether shm_open() is present])
598 #include <sys/stat.h>
599 #include <sys/mman.h>
604 fd = shm_open("/", O_RDWR | O_CREAT, S_IRUSR | S_IWUSR);
609 AC_DEFINE(HAVE_SHM_OPEN, 1, [Have shm_open() call])
612 [have_shm_open="no"])
614 AC_MSG_RESULT([${have_shm_open}])
615 AC_SUBST(SHM_OPEN_LINK)
617 # (shm_open (for cache server)
618 AC_ARG_ENABLE([evas-cserve],
619 AC_HELP_STRING([--disable-evas-cserve],
620 [disable shared cache server support. @<:@default=enabled@:>@]),
622 if test "x${enableval}" = "xyes" ; then
623 want_evas_cserve="yes"
625 want_evas_cserve="no"
628 AC_MSG_CHECKING(whether to build shared cache server and support)
629 AC_MSG_RESULT(${want_evas_cserve})
631 if test "x${want_evas_cserve}" = "xyes" ; then
632 AC_MSG_CHECKING([whether shm_open() is present])
638 #include <sys/types.h>
639 #include <sys/mman.h>
644 fd = shm_open("/", O_RDWR | O_CREAT, S_IRUSR | S_IWUSR);
647 [want_evas_cserve="yes"],
648 [want_evas_cserve="no"])
650 AC_MSG_RESULT([${want_evas_cserve}])
653 if test "x${want_evas_cserve}" = "xyes" ; then
654 AC_DEFINE(EVAS_CSERVE, 1, [Shared caceh server.])
657 AM_CONDITIONAL([EVAS_CSERVE], [test "x${want_evas_cserve}" = "xyes"])
661 #######################################
662 ## GL force flavor gles
664 AC_MSG_CHECKING(whether to build GLES flavor of GL)
665 AC_ARG_ENABLE(gl-flavor-gles,
666 AC_HELP_STRING([--enable-gl-flavor-gles], [enable gles flavor of gl instead of standard]),
668 if test "x$enableval" = "xyes" ; then
681 #######################################
683 gles_variety_sgx="no"
684 AC_MSG_CHECKING(whether to build GLES variety for SGX)
685 AC_ARG_ENABLE(gles-variety-sgx,
686 AC_HELP_STRING([--enable-gles-variety-sgx], [GLES variety SGX 3D unit]),
688 if test "x$enableval" = "xyes" ; then
690 AC_DEFINE(GLES_VARIETY_SGX, 1, [Imagination SGX GLES2 support])
691 gles_variety_sgx="yes"
694 gles_variety_sgx="no"
698 gles_variety_sgx="no"
702 #######################################
703 ## GLES variety s3c6410
704 gles_variety_s3c6410="no"
705 AC_MSG_CHECKING(whether to build GLES variety for s3c6410)
706 AC_ARG_ENABLE(gles-variety-s3c6410,
707 AC_HELP_STRING([--enable-gles-variety-s3c6410], [GLES variety s3c6410 3D unit]),
709 if test "x$enableval" = "xyes" ; then
711 AC_DEFINE(GLES_VARIETY_S3C6410, 1, [Samsung S3c6410 GLES2 support])
712 gles_variety_s3c6410="yes"
715 gles_variety_s3c6410="no"
719 gles_variety_s3c6410="no"
723 if test "x$gl_flavor_gles" = "xyes"; then
725 if test "x$gles_variety_sgx" = "xyes"; then eng="x"$eng; fi
726 if test "x$gles_variety_s3c6410" = "xyes"; then eng="x"$eng; fi
727 if test "x$eng" = "xx"; then
731 [Please enable just 1 OpenGL-ES flavor. Choices are:
732 --enable-gles-variety-sgx (Most GL-ES2 GPUs with shader compiler)
733 --enable-gles-variety-s3c6410 (s3c6410 with offline shader compiler)
734 You will also need to enable the OpenGL engine for X11 with:
735 --enable-gl-xlib or --enable-gl-xcb
740 #####################################################################
743 EVAS_CHECK_ENGINE([buffer], [${want_evas_engine_buffer}], [yes], [Buffer])
745 EVAS_CHECK_ENGINE([software-gdi], [${want_evas_engine_software_gdi}], [no], [Software GDI])
747 EVAS_CHECK_ENGINE([software-ddraw], [${want_evas_engine_software_ddraw}], [no], [Software DirectDraw])
749 EVAS_CHECK_ENGINE([direct3d], [${want_evas_engine_direct3d}], [no], [Direct3D])
751 EVAS_CHECK_ENGINE([software-sdl], [${want_evas_engine_software_sdl}], [no], [Software SDL])
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-ddraw], [${want_evas_engine_software_16_ddraw}], [no], [Software DirectDraw 16 bits])
769 EVAS_CHECK_ENGINE([software-16-wince], [${want_evas_engine_software_16_wince}], [no], [Software Windows CE 16 bits])
771 EVAS_CHECK_ENGINE([software-16-sdl], [${want_evas_engine_software_16_sdl}], [no], [Software SDL 16 bits])
773 EVAS_CHECK_ENGINE([wayland-shm], [${want_evas_engine_wayland_shm}], [no], [Wayland Shm])
775 EVAS_CHECK_ENGINE([wayland-egl], [${want_evas_engine_wayland_egl}], [no], [Wayland Egl])
780 AC_ARG_ENABLE([sdl-primitive],
781 [AC_HELP_STRING([--enable-sdl-primitive], [])],
782 [sdl_primitive=${enableval}]
784 AC_MSG_CHECKING([whether to use SDL primitive when possible])
785 AC_MSG_RESULT([${sdl_primitive}])
787 if test "x${sdl_primitive}" = "xyes" ; then
788 AC_DEFINE([ENGINE_SDL_PRIMITIVE], [1], [Use SDL primitive when possible])
791 # if software generic need to be build as part of libevas.so
792 have_static_software_generic="no"
793 AC_ARG_ENABLE([static-software-generic],
794 [AC_HELP_STRING([--enable-static-software-generic], [Build software generic engine as part of libevas])],
795 [have_static_software_generic=${enableval}]
797 AC_MSG_CHECKING([Whether to build software generic engine as part of libevas])
798 AC_MSG_RESULT([${have_static_software_generic}])
800 if test "x${have_static_module}" = "xyes" -a "x${have_static_software_generic}" = "xno"; then
801 AC_MSG_WARN([Forcing --enable-static-software-generic as engines must be compiled statically])
802 have_static_software_generic="yes"
805 AM_CONDITIONAL(EVAS_STATIC_BUILD_SOFTWARE_GENERIC, test "x${have_static_software_generic}" = "xyes")
806 if test "x${have_static_software_generic}" = "xyes"; then
807 AC_DEFINE(EVAS_STATIC_BUILD_SOFTWARE_GENERIC, [1], [Build software generic engine as part of libevas])
811 ######## Software Engine ########
812 have_evas_engine_software_x11="no"
813 have_evas_engine_software_xcb="no"
814 have_evas_engine_software_xlib="no"
819 AC_MSG_CHECKING(whether to build Software XCB Engine)
820 AC_ARG_ENABLE(software-xcb,
821 AC_HELP_STRING([--enable-software-xcb], [enable Software XCB Engine. @<:@default=disabled@:>@]), [want_xcb=$enableval]
823 if test "x$want_xcb" != "xno" ; then
824 EVAS_CHECK_ENGINE([software-xcb], [${want_evas_engine_software_xcb}], [no], [Software XCB])
825 if test "x$have_evas_engine_software_xcb" != "xno" ; then
826 build_software_xcb="yes"
827 have_evas_engine_software_x11="yes"
828 AC_DEFINE_UNQUOTED(BUILD_ENGINE_SOFTWARE_X11, [1], [Build software X11 engine])
829 AC_DEFINE_UNQUOTED(BUILD_ENGINE_SOFTWARE_XCB, [1], [Build software XCB backend])
833 build_software_xcb="no"
836 ## If we are not building XCB, then we can build XLib ##
838 if test "x$build_software_xcb" = "xno" ; then
839 EVAS_CHECK_ENGINE([software-xlib], [${want_evas_engine_software_xlib}], [no], [Software Xlib])
840 # if software_x11 is available, define everything needed for X11
841 if test "x$have_evas_engine_software_xlib" != "xno" ; then
842 have_evas_engine_software_x11="yes"
843 AC_DEFINE_UNQUOTED(BUILD_ENGINE_SOFTWARE_X11, [1], [Build software X11 engine])
844 AC_DEFINE_UNQUOTED(BUILD_ENGINE_SOFTWARE_XLIB, [1], [Build software Xlib backend])
847 have_evas_engine_software_xlib="no"
850 if test "x$have_evas_engine_software_xlib" = "xstatic" -o "x$have_evas_engine_software_xcb" = "xstatic"; then
851 AC_DEFINE_UNQUOTED(EVAS_STATIC_BUILD_SOFTWARE_X11, [1], [Build software X11 engine as part of libevas])
854 AC_SUBST(have_evas_engine_software_xcb)
855 AC_SUBST(have_evas_engine_software_xlib)
857 AM_CONDITIONAL([BUILD_ENGINE_SOFTWARE_XLIB], [test "x${have_evas_engine_software_xlib}" != "xno"])
858 AM_CONDITIONAL([BUILD_ENGINE_SOFTWARE_XCB], [test "x${have_evas_engine_software_xcb}" != "xno"])
859 AM_CONDITIONAL([BUILD_ENGINE_SOFTWARE_X11], [test "x${have_evas_engine_software_x11}" != "xno"])
861 AM_CONDITIONAL([EVAS_STATIC_BUILD_SOFTWARE_X11], [test "x${have_evas_engine_software_xcb}" = "xstatic" -o "x${have_evas_engine_software_xlib}" = "xstatic"])
862 AM_CONDITIONAL([EVAS_STATIC_BUILD_SOFTWARE_XLIB], [test "x${have_evas_engine_software_xlib}" = "xstatic"])
863 AM_CONDITIONAL([EVAS_STATIC_BUILD_SOFTWARE_XCB], [test "x${have_evas_engine_software_xcb}" = "xstatic"])
865 AC_SUBST(have_evas_engine_software_x11)
868 ######## OpenGL Engine ########
869 have_evas_engine_gl_x11="no"
870 have_evas_engine_gl_xcb="no"
875 AC_MSG_CHECKING(whether to build OpenGL XCB Engine)
876 AC_ARG_ENABLE(gl-xcb,
877 AC_HELP_STRING([--enable-gl-xcb], [enable OpenGL XCB Engine. @<:@default=disabled@:>@]), [want_gl_xcb=$enableval]
879 if test "x$want_gl_xcb" = "xyes" ; then
880 EVAS_CHECK_ENGINE([gl-xcb], [${want_evas_engine_gl_xcb}], [no], [OpenGL XCB])
881 if test "x$have_evas_engine_gl_xcb" != "xno" ; then
883 have_evas_engine_gl_x11="yes"
884 AC_DEFINE(BUILD_ENGINE_GL_X11, [1], [Build GL X11 engine])
885 AC_DEFINE(BUILD_ENGINE_GL_XCB, [1], [Build GL Xcb backend])
886 if test "x$have_evas_engine_gl_xcb" = "xstatic" ; then
887 AC_DEFINE(EVAS_STATIC_BUILD_GL_X11, [1], [Build GL X11 engine as part of libevas])
890 AC_SUBST(have_evas_engine_gl_xcb)
896 ## If we are not building XCB, then we can build XLib ##
898 if test "x$build_gl_xcb" = "xno" ; then
899 EVAS_CHECK_ENGINE([gl-xlib], [${want_evas_engine_gl_xlib}], [no], [OpenGL XLib])
900 if test "x$have_evas_engine_gl_xlib" != "xno" ; then
901 have_evas_engine_gl_x11="yes"
902 AC_DEFINE_UNQUOTED(BUILD_ENGINE_GL_X11, [1], [Build OpenGL X11 engine])
903 AC_DEFINE_UNQUOTED(BUILD_ENGINE_GL_XLIB, [1], [Build OpenGL Xlib backend])
904 if test "x$have_evas_engine_gl_xlib" = "xstatic" ; then
905 AC_DEFINE_UNQUOTED(EVAS_STATIC_BUILD_GL_X11, [1], [Build OpenGL X11 engine as part of libevas])
909 have_evas_engine_gl_xlib="no"
911 AC_SUBST(have_evas_engine_gl_xlib)
913 AM_CONDITIONAL([BUILD_ENGINE_GL_XLIB], [test "x${have_evas_engine_gl_xlib}" != "xno"])
914 AM_CONDITIONAL([BUILD_ENGINE_GL_XCB], [test "x${have_evas_engine_gl_xcb}" != "xno"])
915 AM_CONDITIONAL([BUILD_ENGINE_GL_X11], [test "x${have_evas_engine_gl_x11}" != "xno"])
917 AM_CONDITIONAL([EVAS_STATIC_BUILD_GL_X11], [test "x${have_evas_engine_gl_xcb}" = "xstatic" -o "x${have_evas_engine_gl_xlib}" = "xstatic"])
918 AM_CONDITIONAL([EVAS_STATIC_BUILD_GL_XLIB], [test "x${have_evas_engine_gl_xlib}" = "xstatic"])
919 AM_CONDITIONAL([EVAS_STATIC_BUILD_GL_XCB], [test "x${have_evas_engine_gl_xcb}" = "xstatic"])
921 AC_SUBST(have_evas_engine_gl_x11)
924 have_evas_engine_gl_common="no"
925 have_static_evas_engine_gl_common="no"
926 if test "x$have_evas_engine_gl_xlib" = "xyes" \
927 || test "x$have_evas_engine_gl_xcb" = "xyes" \
928 || test "x$have_evas_engine_gl_sdl" = "xyes" \
929 || test "x$have_evas_engine_gl_cocoa" = "xyes" \
930 || test "x$have_evas_engine_wayland_egl" = "xyes"; then
931 have_evas_engine_gl_common="yes"
933 if test "x$have_evas_engine_gl_xlib" = "xstatic" \
934 || test "x$have_evas_engine_gl_xcb" = "xstatic" \
935 || test "x$have_evas_engine_gl_sdl" = "xstatic" \
936 || test "x$have_evas_engine_gl_cocoa" = "xstatic" \
937 || test "x$have_evas_engine_wayland_egl" = "xstatic"; then
938 have_evas_engine_gl_common="yes"
939 have_static_evas_engine_gl_common="yes"
942 if test "x$have_evas_engine_gl_common" = "xyes"; then
943 evas_engine_gl_common_libs=""
944 AC_DEFINE(BUILD_ENGINE_GL_COMMON, [1], [Generic OpenGL Rendering Support])
947 AC_SUBST([evas_engine_gl_common_libs])
949 AM_CONDITIONAL(BUILD_ENGINE_GL_COMMON, [test "x$have_evas_engine_gl_common" = "xyes"])
951 AM_CONDITIONAL(EVAS_STATIC_BUILD_GL_COMMON, test "x${have_static_evas_engine_gl_common}" = "xyes")
952 if test "x${have_static_evas_engine_gl_common}" = "xyes"; then
953 AC_DEFINE(EVAS_STATIC_BUILD_GL_COMMON, [1], [Build GL generic engine as part of libevas])
957 if test "x$have_evas_engine_gl_sdl" = "xyes" || test "x$have_evas_engine_gl_sdl" = "xstatic" ; then
958 AC_CHECK_DECL(SDL_GL_CONTEXT_MAJOR_VERSION,
959 [AC_DEFINE(HAVE_SDL_GL_CONTEXT_VERSION, [1], [SDL_GL version attributes present])],,
960 [#include <SDL/SDL_video.h>])
963 if test "x$gl_flavor_gles" = "xyes"; then
964 AC_CHECK_DECL(SDL_OPENGLES,
965 [AC_DEFINE(HAVE_SDL_FLAG_OPENGLES, [1], [SDL_OPENGLES flag is present])],,
966 [#include <SDL/SDL_video.h>])
969 # if software 16 x11 is enabled - build software_16 (the generic 16bit
970 # engine). later enable it fb_16 or other "16" bit engines are enabled.
971 have_evas_engine_software_16="no"
972 if test "x$have_evas_engine_software_16_x11" = "xyes" -o "x$have_evas_engine_software_16_x11" = "xstatic"; then
973 have_evas_engine_software_16="yes"
975 if test "x$have_evas_engine_software_16_sdl" = "xyes" -o "x$have_evas_engine_software_16_sdl" = "xstatic"; then
976 have_evas_engine_software_16="yes"
978 if test "x$have_evas_engine_software_16_ddraw" = "xyes" -o "x$have_evas_engine_software_16_ddraw" = "xstatic"; then
979 have_evas_engine_software_16="yes"
981 if test "x$have_evas_engine_software_16_wince" = "xyes" -o "x$have_evas_engine_software_16_wince" = "xstatic"; then
982 have_evas_engine_software_16="yes"
984 AM_CONDITIONAL(BUILD_ENGINE_SOFTWARE_16, test "x$have_evas_engine_software_16" = "xyes")
986 # if software 16 need to be build as part of libevas.so
987 have_static_software_16="no"
988 AC_ARG_ENABLE([static-software-16],
989 [AC_HELP_STRING([--enable-static-software-16], [Build software 16 engine as part of libevas])],
990 [have_static_software_16=${enableval}]
992 AC_MSG_CHECKING([Whether to build software 16 engine as part of libevas])
993 AC_MSG_RESULT([${have_static_software_16}])
995 AM_CONDITIONAL(EVAS_STATIC_BUILD_SOFTWARE_16, test "x${have_static_software_16}" = "xyes")
996 if test "x${have_static_software_16}" = "xyes"; then
997 AC_DEFINE(EVAS_STATIC_BUILD_SOFTWARE_16, [1], [Build software 16 engine as part of libevas])
1000 # if software 8 x11 is enabled - build software_8 (the generic 8bit
1002 have_evas_engine_software_8="no"
1003 if test "x$have_evas_engine_software_8_x11" = "xyes" -o "x$have_evas_engine_software_8_x11" = "xstatic"; then
1004 have_evas_engine_software_8="yes"
1006 AM_CONDITIONAL(BUILD_ENGINE_SOFTWARE_8, test "x$have_evas_engine_software_8" = "xyes")
1008 # if software 8 need to be build as part of libevas.so
1009 have_static_software_8="no"
1010 AC_ARG_ENABLE([static-software-8],
1011 [AC_HELP_STRING([--enable-static-software-8], [Build software 8 engine as part of libevas])],
1012 [have_static_software_8=${enableval}]
1014 AC_MSG_CHECKING([Whether to build software 8 engine as part of libevas])
1015 AC_MSG_RESULT([${have_static_software_8}])
1017 AM_CONDITIONAL(EVAS_STATIC_BUILD_SOFTWARE_8, test "x${have_static_software_8}" = "xyes")
1018 if test "x${have_static_software_8}" = "xyes"; then
1019 AC_DEFINE(EVAS_STATIC_BUILD_SOFTWARE_8, [1], [Build software 8 engine as part of libevas])
1022 #####################################################################
1025 EVAS_CHECK_IMAGE_LOADER([Edb], [${want_evas_image_loader_edb}])
1027 EVAS_CHECK_IMAGE_LOADER([Eet], [${want_evas_image_loader_eet}])
1028 EVAS_CHECK_FONT_LOADER([${want_evas_font_loader_eet}])
1030 EVAS_CHECK_IMAGE_LOADER([Gif], [${want_evas_image_loader_gif}])
1032 have_evas_image_saver_jpeg="no"
1033 EVAS_CHECK_IMAGE_LOADER([Jpeg], [${want_evas_image_loader_jpeg}])
1035 dnl Windows has no sigsetjmp function, nor equivalent.
1036 dnl So we disable the jpeg saver.
1037 dnl TODO: must find a workaround
1042 if test "x${have_evas_image_loader_jpeg}" = "xyes" ; then
1043 AC_DEFINE(EVAS_BUILD_SAVER_JPEG, [1], [Build JPEG saver])
1044 have_evas_image_saver_jpeg="yes"
1048 AM_CONDITIONAL([BUILD_SAVER_JPEG], [test "x${have_evas_image_saver_jpeg}" = "xyes"])
1050 EVAS_CHECK_IMAGE_LOADER([PMAPS], [${want_evas_image_loader_pmaps}])
1052 EVAS_CHECK_IMAGE_LOADER([PNG], [${want_evas_image_loader_png}])
1054 EVAS_CHECK_IMAGE_LOADER([SVG], [${want_evas_image_loader_svg}])
1056 EVAS_CHECK_IMAGE_LOADER([Tiff], [${want_evas_image_loader_tiff}])
1058 EVAS_CHECK_IMAGE_LOADER([XPM], [${want_evas_image_loader_xpm}])
1060 EVAS_CHECK_IMAGE_LOADER([BMP], [${want_evas_image_loader_bmp}])
1062 EVAS_CHECK_IMAGE_LOADER([TGA], [${want_evas_image_loader_tga}])
1064 EVAS_CHECK_IMAGE_LOADER([WBMP], [${want_evas_image_loader_wbmp}])
1066 EVAS_CHECK_IMAGE_LOADER([ICO], [${want_evas_image_loader_ico}])
1068 EVAS_CHECK_IMAGE_LOADER([PSD], [${want_evas_image_loader_psd}])
1070 EVAS_CHECK_IMAGE_LOADER([GENERIC], [${want_evas_image_loader_generic}])
1072 #####################################################################
1073 ## Cpu based optimizations
1075 #######################################
1082 # basic pthread support
1083 AC_CHECK_HEADER(pthread.h,
1092 # sched_getaffinity pthread_attr_setaffinity_np
1093 AC_CHECK_HEADERS([pthread.h sched.h],
1095 CFLAGS_save="${CFLAGS}"
1096 CFLAGS="${CFLAGS} -pthread"
1098 LIBS="${LIBS} -pthread"
1101 #include <pthread.h>
1105 pthread_attr_setaffinity_np(NULL, 0, NULL);
1106 pthread_barrier_wait(NULL);
1108 [build_pthreads="yes"],
1109 [build_pthreads="no"])
1110 CFLAGS=${CFLAGS_save}
1113 [build_pthreads="no"])
1115 AC_MSG_CHECKING([whether pthread_attr_setaffinity_np() and pthread_barrier_wait() are supported])
1116 AC_MSG_RESULT([${build_pthreads}])
1118 #######################################
1120 AC_MSG_CHECKING(whether to build pthread code)
1121 AC_ARG_ENABLE(pthreads,
1122 AC_HELP_STRING([--enable-pthreads], [enable threaded rendering]),
1124 if test "x$enableval" = "xyes" ; then
1125 if test "x$build_pthreads" = "xyes"; then
1127 AC_DEFINE(BUILD_PTHREAD, 1, [Build Threaded Rendering])
1128 build_pthreads="yes"
1131 if "x$use_strict" = "xyes"; then
1132 AC_MSG_ERROR(pthreads headers or functions not found (strict dependencies checking))
1134 AC_MSG_RESULT(no: pthread headers or functions not found)
1143 AC_MSG_RESULT($build_pthreads)
1144 if test "x$build_pthreads" = "xyes" ; then
1145 AC_DEFINE(BUILD_PTHREAD, 1, [Build Threaded Rendering])
1151 #######################################
1153 build_pipe_render="no"
1155 AC_MSG_CHECKING(whether to build Threaded Pipe Rendering support)
1156 AC_ARG_ENABLE(pipe-render,
1157 AC_HELP_STRING([--enable-pipe-render], [enable threaded pipe rendering support]),
1158 [ build_pipe_render=$enableval ]
1160 AC_MSG_RESULT($build_pipe_render)
1162 AC_MSG_CHECKING(whether we can build Threaded Pipe Rendering support)
1163 if test \( "x$build_pipe_render" = "xyes" -o "x$build_pipe_render" = "xauto" \); then
1165 AC_DEFINE(BUILD_PIPE_RENDER, 1, [Build pipe render support])
1166 build_pipe_render="yes"
1170 build_pipe_render="no"
1173 #######################################
1175 build_async_render="no"
1177 AC_MSG_CHECKING(whether to build Asynchronously Threaded Pipe Rendering support)
1178 AC_ARG_ENABLE(async-render,
1179 AC_HELP_STRING([--enable-async-render], [enable asynchronously threaded pipe rendering support]),
1180 [ build_async_render=$enableval ]
1182 AC_MSG_RESULT($build_async_render)
1184 AC_MSG_CHECKING(whether we can build Asynchronously Threaded Pipe Rendering support)
1185 if test \( "x$build_async_render" = "xyes" \); then
1187 AC_DEFINE(EVAS_FRAME_QUEUING, 1, [Build async render support])
1188 build_async_render="yes"
1189 AC_DEFINE(BUILD_PIPE_RENDER, 1, [Build pipe render support])
1190 build_pipe_render="yes"
1193 PKG_CHECK_MODULES([XEXT],
1195 [ build_avoid_libXext_bug=yes ],
1196 [ build_avoid_libXext_bug=no ]
1198 if test \( "x$build_avoid_libXext_bug" = "xyes" \); then
1199 AC_DEFINE(LIBXEXT_VERSION_LOW, 1, [To avoid bug on old libXext version])
1203 build_async_render="no"
1206 #######################################
1208 build_async_events="auto"
1209 AC_MSG_CHECKING(whether to build Async Events support)
1210 AC_ARG_ENABLE(async-events,
1211 AC_HELP_STRING([--enable-async-events], [enable async events support]),
1212 [ build_async_events=$enableval ]
1214 AC_MSG_RESULT($build_async_events)
1216 AC_MSG_CHECKING(whether we can build Async Events support)
1217 if test "x$build_async_events" = "xyes" || test "x$build_async_events" = "xauto" ; then
1219 AC_DEFINE(BUILD_ASYNC_EVENTS, 1, [Build async events support])
1220 build_async_events="yes"
1223 build_async_events="no"
1226 #######################################
1227 ## Async image preload
1228 build_async_preload="auto"
1229 AC_MSG_CHECKING(whether to build Async Image Preload support)
1230 AC_ARG_ENABLE(async-preload,
1231 AC_HELP_STRING([--enable-async-preload], [enable async image preloading support]),
1232 [ build_async_preload=$enableval ]
1234 AC_MSG_RESULT($build_async_preload)
1236 AC_MSG_CHECKING(whether we can build Async Image Preload support)
1237 if test \( "x$build_async_preload" = "xyes" -o "x$build_async_preload" = "xauto" \) -a "x$build_async_events" = "xyes"; then
1239 AC_DEFINE(BUILD_ASYNC_PRELOAD, 1, [Build async image preload support])
1240 build_async_preload="yes"
1244 build_async_preload="no"
1247 #######################################
1248 ## Link with pthread if needed
1249 AC_MSG_CHECKING(whether we should link with pthread)
1250 if test "x$need_pthreads" = "xyes"; then
1252 pthread_cflags="-pthread"
1253 pthread_libs="-pthread"
1258 #######################################
1272 AC_MSG_CHECKING(whether to build mmx code)
1273 AC_ARG_ENABLE(cpu-mmx,
1274 AC_HELP_STRING([--enable-cpu-mmx], [enable mmx code]),
1276 if test "x$enableval" = "xyes" ; then
1278 AC_DEFINE(BUILD_MMX, 1, [Build MMX Code])
1286 AC_MSG_RESULT($build_cpu_mmx)
1287 if test "x$build_cpu_mmx" = "xyes" ; then
1288 AC_DEFINE(BUILD_MMX, 1, [Build MMX Code])
1293 #######################################
1307 AC_MSG_CHECKING(whether to build sse code)
1308 AC_ARG_ENABLE(cpu-sse,
1309 AC_HELP_STRING([--enable-cpu-sse], [enable sse code]),
1311 if test "x$enableval" = "xyes" ; then
1313 AC_DEFINE(BUILD_SSE, 1, [Build SSE Code])
1321 AC_MSG_RESULT($build_cpu_sse)
1322 if test "x$build_cpu_sse" = "xyes" ; then
1323 AC_DEFINE(BUILD_SSE, 1, [Build SSE Code])
1328 #######################################
1333 build_cpu_sse3="yes"
1336 build_cpu_sse3="yes"
1339 build_cpu_sse3="yes"
1342 AC_MSG_CHECKING(whether to build sse3 code)
1343 AC_ARG_ENABLE(cpu-sse3,
1344 AS_HELP_STRING([--enable-cpu-sse3], [enable sse3 code]),
1346 if test "x$enableval" = "xyes" ; then
1347 AC_CHECK_HEADER(immintrin.h,
1350 AC_DEFINE(BUILD_SSE3, 1, [Build SSE3 Code])
1351 build_cpu_sse3="yes"
1363 AC_MSG_RESULT($build_cpu_sse3)
1364 if test "x$build_cpu_sse3" = "xyes" ; then
1365 AC_CHECK_HEADER(immintrin.h,
1368 AC_DEFINE(BUILD_SSE3, 1, [Build SSE3 Code])
1369 build_cpu_sse3="yes"
1380 # as a big warning flag to anyone doing stuff like this...
1381 # NEVER EVER EVER EVER put **OPTIMIZATION** flags in
1382 # build flags in makefiles (from configure or anywhere else)
1383 # EVER as this screws your ability to build 1 binary and
1384 # cover ALL x86 arch's. This is the HEIGHT of WRONG. If the
1385 # person building choses to add optimization flags themselves
1386 # and decide the minimum baseline cpu arch is X then that's
1387 # their business, but NEVER should it be done here. NEVER.
1388 # I now have to do this due to the way this sse3 code was done - using
1389 # intrinsics and "functions" (opcodes) and types that only compile *IF*
1390 # you compile with -msse3. this ALSO tries to optimize REGULAR c code
1391 # with sse3 asm.. and this breaks things so badly. so... sse3 will be
1392 # off until further notice for 32bit x86.
1393 EVAS_SSE3_CFLAGS=" "
1394 if test "x$build_cpu_sse3" = "xyes" ; then
1395 EVAS_SSE3_CFLAGS="-msse3 "
1396 # CFLAGS="${CFLAGS} ${EVAS_SSE3_CFLAGS}"
1400 AC_SUBST(EVAS_SSE3_CFLAGS)
1402 #######################################
1404 build_cpu_altivec="no"
1407 build_cpu_altivec="auto"
1411 AC_MSG_CHECKING(whether to build altivec code)
1412 AC_ARG_ENABLE(cpu-altivec,
1413 AC_HELP_STRING([--enable-cpu-altivec], [enable altivec code]),
1414 [ build_cpu_altivec=$enableval ],
1416 if test ! "x$build_cpu_altivec" = "xauto"; then
1417 build_cpu_altivec="no"
1421 AC_MSG_RESULT($build_cpu_altivec)
1423 if test "x$build_cpu_altivec" = "xyes"; then
1424 AC_CHECK_HEADER(altivec.h,
1426 AC_DEFINE(BUILD_ALTIVEC, 1, [Build Altivec Code])
1427 AC_DEFINE(HAVE_ALTIVEC_H, 1, [Have altivec.h header file])
1428 build_cpu_altivec="yes"
1432 save_CPPFLAGS=$CPPFLAGS
1433 CFLAGS=$CFLAGS" -maltivec"
1434 CPPFLAGS=$CPPFLAGS" -maltivec"
1435 unset ac_cv_header_altivec_h
1436 AC_CHECK_HEADER(altivec.h,
1438 AC_DEFINE(BUILD_ALTIVEC, 1, [Build Altivec Code])
1439 AC_DEFINE(HAVE_ALTIVEC_H, 1, [Have altivec.h header file])
1440 build_cpu_altivec="yes"
1443 if test "x$build_cpu_altivec" = "xyes" -a "x$use_strict" = "xyes" ; then
1444 AC_MSG_ERROR(Altivec not found (strict dependencies checking))
1446 build_cpu_altivec="no"
1450 CPPFLAGS=$save_CPPFLAGS
1455 if test "x$build_cpu_altivec" = "xyes"; then
1456 AC_MSG_CHECKING(whether to use altivec compiler flag)
1457 if test "x$GCC" = "xyes"; then
1458 if echo "int main(){return 0;}" | ${CPP} -faltivec - > /dev/null 2>&1; then
1459 altivec_cflags="-faltivec"
1460 AC_DEFINE(BUILD_ALTIVEC, 1, [Build Altivec Code])
1461 elif echo "int main(){return 0;}" | ${CPP} -maltivec - > /dev/null 2>&1; then
1462 altivec_cflags="-maltivec"
1463 AC_DEFINE(BUILD_ALTIVEC, 1, [Build Altivec Code])
1466 AC_MSG_RESULT($altivec_cflags)
1467 CFLAGS="$CFLAGS $altivec_cflags"
1470 #######################################
1475 build_cpu_neon="yes"
1478 AC_MSG_CHECKING(whether to build neon code)
1479 AC_ARG_ENABLE(cpu-neon,
1480 AC_HELP_STRING([--enable-cpu-neon], [build neon code, the code will be
1481 checked at run time to see if the CPU supports it]),
1483 if test "x$enableval" = "xyes" ; then
1485 [asm volatile (".fpu neon\nvqadd.u8 d0, d1, d0\n")],
1488 AC_DEFINE(BUILD_NEON, 1, [Build NEON Code])
1489 build_cpu_neon="yes"
1500 if test "x$build_cpu_neon" = "xyes" ; then
1501 AC_TRY_COMPILE([#include <arm_neon.h>],
1502 [asm volatile ("vqadd.u8 d0, d1, d0\n")],
1505 AC_DEFINE(BUILD_NEON, 1, [Build NEON Code])
1506 build_cpu_neon="yes"
1515 #######################################
1518 AC_MSG_CHECKING(whether to build c code)
1519 AC_ARG_ENABLE(cpu-c,
1520 AC_HELP_STRING([--enable-cpu-c], [enable C code]),
1522 if test "x$enableval" = "xyes" ; then
1524 AC_DEFINE(BUILD_C, 1, [Build plain C code])
1531 AC_MSG_RESULT($build_cpu_c)
1532 if test "x$build_cpu_c" = "xyes" ; then
1533 AC_DEFINE(BUILD_C, 1, [Build plain C code])
1538 #######################################
1540 want_evas_magic_debug="yes"
1541 AC_MSG_CHECKING(whether to check magic for evas object)
1542 AC_ARG_ENABLE(evas-magic-debug,
1544 [--disable-evas-magic-debug],
1545 [disable MAGIC_DEBUG check when people pass in wrong object type. [[default=enabled]]]
1547 [ want_evas_magic_debug="$enableval" ]
1549 AC_MSG_RESULT($want_evas_magic_debug)
1551 AM_CONDITIONAL(EVAS_MAGIC_DEBUG, test "x$want_evas_magic_debug" = "xyes")
1552 if test "x$want_evas_magic_debug" = "xyes"; then
1553 AC_DEFINE(EVAS_MAGIC_DEBUG, 1, [complain when people pass in wrong object types etc.])
1557 #######################################
1559 want_word_cache="no"
1560 AC_MSG_CHECKING(whether to enable caching of rendered words)
1561 AC_ARG_ENABLE(word-cache,
1563 [--enable-word-cache],
1564 [Enable experimental word caching to speed up rendering [[default=disabled]]]
1566 [ want_word_cache="$enableval" ]
1568 AC_MSG_RESULT($want_word_cache)
1570 AM_CONDITIONAL(WORD_CACHE, test "x$want_word_cache" = "xyes")
1571 if test "x$want_word_cache" = "xyes"; then
1572 AC_DEFINE(WORD_CACHE, 1, [Experimental word caching to speed up text rendering.])
1575 #######################################
1577 want_metric_cache="no"
1578 AC_MSG_CHECKING(whether to enable caching of rendered metrics)
1579 AC_ARG_ENABLE(metric-cache,
1581 [--enable-metric-cache],
1582 [Enable experimental metric caching to speed up rendering [[default=disabled]]]
1584 [ want_metric_cache="$enableval" ]
1586 AC_MSG_RESULT($want_metric_cache)
1588 AM_CONDITIONAL(METRIC_CACHE, test "x$want_metric_cache" = "xyes")
1589 if test "x$want_metric_cache" = "xyes"; then
1590 AC_DEFINE(METRIC_CACHE, 1, [Experimental metric caching to speed up text rendering.])
1595 #####################################################################
1596 ## ARGB engine options
1598 #######################################
1599 ## Nearest sampling scaler
1600 EVAS_CHECK_SCALER([scale-sample], [sampling scaler], [scaler_sample="yes"], [scaler_sample="no"])
1601 ## Smooth super and sub sampling scaler
1602 EVAS_CHECK_SCALER([scale-smooth], [smooth scaler], [scaler_smooth="yes"], [scaler_smooth="no"])
1604 #######################################
1605 ## YUV -> ARGB converter
1608 AC_MSG_CHECKING(whether to build yuv converter code)
1609 AC_ARG_ENABLE(convert-yuv,
1610 AC_HELP_STRING([--enable-convert-yuv], [enable yuv converter code]),
1612 if test "x$enableval" = "xyes" ; then
1614 AC_DEFINE(BUILD_CONVERT_YUV, 1, [YUV Converter Support])
1621 AC_MSG_RESULT($conv_yuv)
1622 if test "x$conv_yuv" = "xyes" ; then
1623 AC_DEFINE(BUILD_CONVERT_YUV, 1, [YUV Converter Support])
1628 #####################################################################
1629 ## Output rendering features
1631 #######################################
1632 ## Small dither mask instead of big one (lower quality)
1633 EVAS_CHECK_DITHER([small-dither-mask], [small dither mask], [conv_small_dither="yes"], [conv_small_dither="no"])
1634 ## Alternate Line dither mask instead of big one (lower quality - but fastest)
1635 EVAS_CHECK_DITHER([line-dither-mask], [line dither mask], [conv_line_dither="yes"], [conv_line_dither="no"])
1636 ## No dither mask at all for 16bpp
1637 EVAS_CHECK_DITHER([no-dither-mask], [conversion to 16bpp without dither mask], [conv_no_dither="yes"], [conv_no_dither="no"])
1639 #######################################
1640 ## Convert to 8bpp RGB 332
1641 EVAS_CONVERT_COLOR(8, RGB, 332, [yes])
1642 ## Convert to 8bpp RGB 666
1643 EVAS_CONVERT_COLOR(8, RGB, 666, [yes])
1644 ## Convert to 8bpp RGB 232
1645 EVAS_CONVERT_COLOR(8, RGB, 232, [yes])
1646 ## Convert to 8bpp RGB 222
1647 EVAS_CONVERT_COLOR(8, RGB, 222, [yes])
1648 ## Convert to 8bpp RGB 221
1649 EVAS_CONVERT_COLOR(8, RGB, 221, [yes])
1650 ## Convert to 8bpp RGB 121
1651 EVAS_CONVERT_COLOR(8, RGB, 121, [yes])
1652 ## Convert to 8bpp RGB 111
1653 EVAS_CONVERT_COLOR(8, RGB, 111, [yes])
1654 ## Convert to 16bpp RGB 565
1655 EVAS_CONVERT_COLOR(16, RGB, 565)
1656 ## Convert to 16bpp BGR 565
1657 EVAS_CONVERT_COLOR(16, BGR, 565)
1658 ## Convert to 16bpp RGB 555
1659 EVAS_CONVERT_COLOR(16, RGB, 555)
1660 ## Convert to 16bpp RGB 444
1661 EVAS_CONVERT_COLOR(16, RGB, 444)
1663 #######################################
1664 ## Convert to 16bpp RGB 565 (444 ipaq)
1665 conv_16_rgb_ipq="yes"
1666 AC_MSG_CHECKING(whether to build 16bpp 565 (444 ipaq) converter code)
1667 AC_ARG_ENABLE(convert-16-rgb-ipq,
1668 AC_HELP_STRING([--disable-convert-16-rgb-ipq], [disable 16bpp 565 (444 ipaq) converter code]),
1670 if test "x$enableval" = "xyes" ; then
1671 AC_DEFINE(BUILD_CONVERT_16_RGB_454645, 1, [16bpp 565 (444 ipaq) Converter Support])
1672 conv_16_rgb_ipq="yes"
1674 conv_16_rgb_ipq="no"
1677 if test "x$conv_16_rgb_ipq" = "xyes" ; then
1678 AC_DEFINE(BUILD_CONVERT_16_RGB_454645, 1, [16bpp 565 (444 ipaq) Converter Support])
1682 AC_MSG_RESULT($conv_16_rgb_ipq)
1684 #######################################
1685 ## Convert to 16bpp RGB with rotation of 0
1686 EVAS_CONVERT_ROT(16, RGB, 0)
1687 ## Convert to 16bpp RGB with rotation of 180
1688 EVAS_CONVERT_ROT(16, RGB, 180)
1689 ## Convert to 16bpp RGB with rotation of 270
1690 EVAS_CONVERT_ROT(16, RGB, 270)
1691 ## Convert to 16bpp RGB with rotation of 90
1692 EVAS_CONVERT_ROT(16, RGB, 90)
1694 #######################################
1695 ## Convert to 24bpp RGB 888
1696 EVAS_CONVERT_COLOR(24, RGB, 888)
1697 ## Convert to 24bpp BGR 888
1698 EVAS_CONVERT_COLOR(24, BGR, 888)
1699 ## Convert to 32bpp RGB 8888
1700 EVAS_CONVERT_COLOR(32, RGB, 8888)
1701 ## Convert to 32bpp RGBX 8888
1702 EVAS_CONVERT_COLOR(32, RGBX, 8888)
1703 ## Convert to 32bpp BGR 8888
1704 EVAS_CONVERT_COLOR(32, BGR, 8888)
1705 ## Convert to 32bpp BGRX 8888
1706 EVAS_CONVERT_COLOR(32, BGRX, 8888)
1708 #######################################
1709 ## Convert to 24bpp RGB 666 (666 ezx)
1710 conv_24_rgb_ezx="yes"
1711 AC_MSG_CHECKING(whether to build 24bpp 666 (666 ezx) converter code)
1712 AC_ARG_ENABLE(convert-24-rgb-ezx,
1713 AC_HELP_STRING([--disable-convert-24-rgb-ezx], [disable 24bpp 666 (666 ezx) converter code]),
1715 if test "x$enableval" = "xyes" ; then
1716 AC_DEFINE(BUILD_CONVERT_24_RGB_666, 1, [24bpp 666 (666 ezx) Converter Support])
1717 conv_24_rgb_ezx="yes"
1719 conv_24_rgb_ezx="no"
1722 if test "x$conv_24_rgb_ezx" = "xyes" ; then
1723 AC_DEFINE(BUILD_CONVERT_24_RGB_666, 1, [24bpp 666 (666 ezx) Converter Support])
1727 AC_MSG_RESULT($conv_24_rgb_ezx)
1729 #######################################
1730 ## Convert to 32bpp RGB 666 (666 ezx)
1731 conv_32_rgb_ezx="yes"
1732 AC_MSG_CHECKING(whether to build 32bpp 666 (666 ezx) converter code)
1733 AC_ARG_ENABLE(convert-32-rgb-ezx,
1734 AC_HELP_STRING([--disable-convert-32-rgb-ezx], [disable 32bpp 666 (666 ezx) converter code]),
1736 if test "x$enableval" = "xyes" ; then
1737 AC_DEFINE(BUILD_CONVERT_32_RGB_666, 1, [32bpp 666 (666 ezx) Converter Support])
1738 conv_32_rgb_ezx="yes"
1740 conv_32_rgb_ezx="no"
1743 if test "x$conv_32_rgb_ezx" = "xyes" ; then
1744 AC_DEFINE(BUILD_CONVERT_32_RGB_666, 1, [32bpp 666 (666 ezx) Converter Support])
1748 AC_MSG_RESULT($conv_32_rgb_ezx)
1750 #######################################
1751 ## Convert to 32bpp RGB with rotation of 0
1752 EVAS_CONVERT_ROT(32, RGB, 0)
1753 ## Convert to 32bpp RGB with rotation of 180
1754 EVAS_CONVERT_ROT(32, RGB, 180)
1755 ## Convert to 32bpp RGB with rotation of 270
1756 EVAS_CONVERT_ROT(32, RGB, 270)
1757 ## Convert to 32bpp RGB with rotation of 90
1758 EVAS_CONVERT_ROT(32, RGB, 90)
1760 #######################################
1761 ## Convert to 8bpp grayscale with 256 value, no palette
1762 EVAS_CONVERT_COLOR(8, GRY, 1)
1763 ## Convert to 8bpp grayscale with 16 value, no palette
1764 EVAS_CONVERT_COLOR(8, GRY, 16)
1766 #######################################
1767 ## Convert to 8bpp grayscale, 64-palette
1768 conv_8_grayscale_64="yes"
1769 AC_MSG_CHECKING(whether to build 8bpp grayscale 64-palette converter code)
1770 AC_ARG_ENABLE(convert-8-grayscale-64,
1771 AC_HELP_STRING([--disable-convert-8-grayscale-64], [disable 8bpp grayscale 64-palette converter code]),
1773 if test "x$enableval" = "xyes"; then
1774 AC_DEFINE(BUILD_CONVERT_8_GRAYSCALE_64, 1, [8bpp Grayscale 64-palette Converter Support])
1775 conv_8_grayscale_64="yes"
1777 conv_8_grayscale_64="no"
1780 if test "x$conv_8_grayscale_64" = "xyes"; then
1781 AC_DEFINE(BUILD_CONVERT_8_GRAYSCALE_64, 1, [32bpp Grayscale 64-palette Converter Support])
1785 AC_MSG_RESULT($conv_8_grayscale_64)
1791 AC_MSG_CHECKING(whether to enable build with valgrind)
1792 AC_ARG_ENABLE(valgrind,
1793 AC_HELP_STRING([--enable-valgrind], [enable valgrind fixes to stop false reports]),
1794 [ want_valgrind=$enableval ]
1796 AC_MSG_RESULT($want_valgrind)
1798 if test x$want_valgrind = "xyes"; then
1799 PKG_CHECK_MODULES(VALGRIND, valgrind >= 2.4.0,
1801 AC_DEFINE(HAVE_VALGRIND, 1, [Valgrind support])
1803 requirement_evas="valgrind ${requirement_evas}"
1806 if test "x$want_valgrind" = "xyes" -a "x$use_strict" = "xyes" ; then
1807 AC_MSG_ERROR([Valgrind not found (strict dependencies checking)])
1815 install_examples="yes"
1816 AC_ARG_ENABLE([install-examples],
1817 AC_HELP_STRING([--disable-install-examples],
1818 [disable installing examples (compiled or just source).
1819 @<:@default==enabled@:>@]),
1821 if test "x${enableval}" = "xyes" ; then
1822 install_examples="yes"
1824 install_examples="no"
1827 [install_examples="yes"])
1828 AM_CONDITIONAL([INSTALL_EXAMPLES], [test "x${install_examples}" = "xyes"])
1831 AC_ARG_ENABLE([build-examples],
1832 AC_HELP_STRING([--enable-build-examples],
1833 [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@:>@]),
1835 if test "x${enableval}" = "xyes" ; then
1836 build_examples="yes"
1837 # put in here the dependencies for Evas' examples. they are
1838 # meant to be 'real world' usage examples, thus one will be
1839 # using higher level libraries on these programs
1840 PKG_CHECK_MODULES([ECORE_EVAS], [ecore-evas ecore], [], [build_examples="no"])
1841 PKG_CHECK_MODULES([EDJE], [edje],
1842 [edje_cc=$($PKG_CONFIG --variable=prefix edje)/bin/edje_cc],
1843 [build_examples="no"])
1849 [build_examples="no"])
1850 AM_CONDITIONAL([BUILD_EXAMPLES], [test "x${build_examples}" = "xyes"])
1852 ## Unit tests, coverage
1854 EFL_CHECK_TESTS([enable_tests="yes"], [enable_tests="no"])
1856 EFL_CHECK_COVERAGE([${enable_tests}], [enable_coverage="yes"], [enable_coverage="no"])
1857 EVAS_CFLAGS="${EVAS_CFLAGS} ${EFL_COVERAGE_CFLAGS}"
1858 EVAS_LIBS="${EVAS_LIBS} ${EFL_COVERAGE_LIBS}"
1859 if test "x$enable_coverage" = "xyes" ; then
1860 EVAS_CFLAGS="${EVAS_CFLAGS} ${EFL_DEBUG_CFLAGS}"
1863 AC_SUBST(EVAS_CFLAGS)
1866 #####################################################################
1869 AC_SUBST(altivec_cflags)
1870 AC_SUBST(pthread_cflags)
1871 AC_SUBST(pthread_libs)
1872 AC_SUBST(requirement_evas)
1875 #####################################################################
1884 evas-opengl-cocoa.pc
1885 evas-software-buffer.pc
1886 evas-software-x11.pc
1887 evas-software-8-x11.pc
1888 evas-software-16-x11.pc
1889 evas-software-gdi.pc
1890 evas-software-ddraw.pc
1891 evas-software-16-ddraw.pc
1893 evas-software-16-wince.pc
1894 evas-software-sdl.pc
1905 src/lib/canvas/Makefile
1906 src/lib/file/Makefile
1907 src/lib/cache/Makefile
1908 src/lib/cserve/Makefile
1909 src/lib/engines/Makefile
1910 src/lib/engines/common/Makefile
1911 src/lib/engines/common/evas_op_add/Makefile
1912 src/lib/engines/common/evas_op_blend/Makefile
1913 src/lib/engines/common/evas_op_copy/Makefile
1914 src/lib/engines/common/evas_op_mask/Makefile
1915 src/lib/engines/common/evas_op_mul/Makefile
1916 src/lib/engines/common/evas_op_sub/Makefile
1917 src/lib/engines/common_8/Makefile
1918 src/lib/engines/common_16/Makefile
1919 src/modules/Makefile
1920 src/modules/engines/Makefile
1921 src/modules/engines/software_generic/Makefile
1922 src/modules/engines/software_gdi/Makefile
1923 src/modules/engines/software_ddraw/Makefile
1924 src/modules/engines/direct3d/Makefile
1925 src/modules/engines/software_16_wince/Makefile
1926 src/modules/engines/software_x11/Makefile
1927 src/modules/engines/fb/Makefile
1928 src/modules/engines/buffer/Makefile
1929 src/modules/engines/directfb/Makefile
1930 src/modules/engines/gl_common/Makefile
1931 src/modules/engines/gl_x11/Makefile
1932 src/modules/engines/gl_sdl/Makefile
1933 src/modules/engines/gl_cocoa/Makefile
1934 src/modules/engines/psl1ght/Makefile
1935 src/modules/engines/software_sdl/Makefile
1936 src/modules/engines/software_8/Makefile
1937 src/modules/engines/software_8_x11/Makefile
1938 src/modules/engines/software_16/Makefile
1939 src/modules/engines/software_16_x11/Makefile
1940 src/modules/engines/software_16_ddraw/Makefile
1941 src/modules/engines/software_16_sdl/Makefile
1942 src/modules/engines/wayland_shm/Makefile
1943 src/modules/engines/wayland_egl/Makefile
1944 src/modules/loaders/Makefile
1945 src/modules/loaders/edb/Makefile
1946 src/modules/loaders/eet/Makefile
1947 src/modules/loaders/gif/Makefile
1948 src/modules/loaders/jpeg/Makefile
1949 src/modules/loaders/png/Makefile
1950 src/modules/loaders/tiff/Makefile
1951 src/modules/loaders/xpm/Makefile
1952 src/modules/loaders/bmp/Makefile
1953 src/modules/loaders/ico/Makefile
1954 src/modules/loaders/tga/Makefile
1955 src/modules/loaders/svg/Makefile
1956 src/modules/loaders/pmaps/Makefile
1957 src/modules/loaders/wbmp/Makefile
1958 src/modules/loaders/psd/Makefile
1959 src/modules/loaders/generic/Makefile
1960 src/modules/savers/Makefile
1961 src/modules/savers/edb/Makefile
1962 src/modules/savers/eet/Makefile
1963 src/modules/savers/jpeg/Makefile
1964 src/modules/savers/png/Makefile
1965 src/modules/savers/tiff/Makefile
1966 src/static_deps/Makefile
1967 src/static_deps/liblinebreak/Makefile
1968 src/lib/include/Makefile
1969 src/examples/Makefile
1974 #####################################################################
1977 if test "x$build_pthreads" = "xno" ; then
1978 if test "x$build_async_render" = "xyes" ; then
1979 echo "ERROR: PThreads off, but async rendering on. Async rendering"
1980 echo " needs thread support."
1983 if test "x$build_pipe_render" = "xyes" ; then
1984 echo "ERROR: PThreads off, but pipe rendering on. Pipe rendering"
1985 echo " needs thread support."
1990 if test "x${has_pthreads}" = "xno" ; then
1991 if test "x$build_async_preload" = "xyes" ; then
1992 echo "ERROR: PThreads off, but Async Preload on. Async Preload"
1993 echo " needs thread support."
1998 #####################################################################
2004 echo "------------------------------------------------------------------------"
2005 echo "$PACKAGE $VERSION"
2006 echo "------------------------------------------------------------------------"
2008 echo "Configuration Options Summary:"
2011 echo " Software Memory Buffer.....: $have_evas_engine_buffer"
2012 echo " Software X11...............: $have_evas_engine_software_x11 (Xlib: $have_evas_engine_software_xlib) (XCB: $have_evas_engine_software_xcb)"
2013 echo $ECHO_N " OpenGL X11.................: $have_evas_engine_gl_x11 (Xlib: $have_evas_engine_gl_xlib) (XCB: $have_evas_engine_gl_xcb) $ECHO_C"
2014 if test "x$have_evas_engine_gl_x11" = "xyes"; then
2015 echo "(GLES: $gl_flavor_gles) (SGX: $gles_variety_sgx) (s3c6410: $gles_variety_s3c6410)"
2019 echo " Software GDI...............: $have_evas_engine_software_gdi"
2020 echo " Software DirectDraw........: $have_evas_engine_software_ddraw"
2021 echo " Direct3d...................: $have_evas_engine_direct3d"
2022 echo " Software SDL...............: $have_evas_engine_software_sdl (primitive: $sdl_primitive)"
2023 echo $ECHO_N " OpenGL SDL.................: $have_evas_engine_gl_sdl $ECHO_C"
2024 if test "x$have_evas_engine_gl_sdl" = "xyes"; then
2025 echo "(GLES: $gl_flavor_gles) (SGX: $gles_variety_sgx) (s3c6410: $gles_variety_s3c6410)"
2029 echo " OpenGL Cocoa...............: $have_evas_engine_gl_cocoa"
2030 echo " Software Framebuffer.......: $have_evas_engine_fb"
2031 echo " DirectFB...................: $have_evas_engine_directfb"
2032 echo " PSL1GHT....................: $have_evas_engine_psl1ght"
2033 echo " Software 8bit grayscale....: $have_evas_engine_software_8"
2034 # FIXME: kill software 16bit
2035 echo " Software 16bit ............: $have_evas_engine_software_16"
2036 echo " Software 16bit X11.........: $have_evas_engine_software_16_x11"
2037 echo " Software 16bit Directdraw..: $have_evas_engine_software_16_ddraw"
2038 echo " Software 16bit WinCE.......: $have_evas_engine_software_16_wince"
2039 echo " Software 16bit SDL.........: $have_evas_engine_software_16_sdl (primitive: $sdl_primitive)"
2040 echo " Wayland Shm................: $have_evas_engine_wayland_shm"
2041 echo " Wayland Egl................: $have_evas_engine_wayland_egl"
2043 echo "Image Loaders:"
2044 echo " BMP.....................: $have_evas_image_loader_bmp"
2045 echo " EDB.....................: $have_evas_image_loader_edb"
2046 echo " EET.....................: $have_evas_image_loader_eet"
2047 echo " GENERIC.................: $have_evas_image_loader_generic"
2048 echo " GIF.....................: $have_evas_image_loader_gif"
2049 echo " ICO.....................: $have_evas_image_loader_ico"
2050 echo " JPEG....................: $have_evas_image_loader_jpeg (region: $have_jpeg_region)"
2051 echo " PMAPS...................: $have_evas_image_loader_pmaps"
2052 echo " PNG.....................: $have_evas_image_loader_png"
2053 echo " PSD.....................: $have_evas_image_loader_psd"
2054 echo " SVG.....................: $have_evas_image_loader_svg"
2055 echo " TGA.....................: $have_evas_image_loader_tga"
2056 echo " TIFF....................: $have_evas_image_loader_tiff"
2057 echo " WBMP....................: $have_evas_image_loader_wbmp"
2058 echo " XPM.....................: $have_evas_image_loader_xpm"
2060 echo "Font Sourcing Systems:"
2061 echo " EET.....................: $have_evas_font_loader_eet"
2063 echo "Font Searching Systems:"
2064 echo " Fontconfig..............: $have_fontconfig"
2066 echo "Font Rendering Helpers:"
2067 echo " Fribidi.................: $have_fribidi"
2068 echo " Harfbuzz................: $have_harfbuzz"
2069 echo " liblinebreak............: $have_linebreak"
2070 # FIXME: add non freetype2 font engine support
2071 # FIXME: make freetype2 optional
2073 echo "CPU Specific Extensions:"
2074 echo " Fallback C Code.........: $build_cpu_c"
2075 echo " MMX.....................: $build_cpu_mmx"
2076 echo " SSE.....................: $build_cpu_sse"
2077 echo " SSE3....................: $build_cpu_sse3"
2078 echo " ALTIVEC.................: $build_cpu_altivec"
2079 echo " NEON....................: $build_cpu_neon"
2080 echo " Thread Support..........: $build_pthreads"
2083 echo " MAGIC_DEBUG.............: $want_evas_magic_debug"
2084 echo " Cache Server............: $want_evas_cserve"
2087 dnl ... DISABLED! some testing has shown that this seems to have some
2088 dnl nasty bugs on both x86 and arm (tegra2 dual core tested), so just
2089 dnl disabling this for now until it can be fixed
2091 echo " Threaded Pipe Rendering.: $build_pipe_render"
2092 echo " Async Pipe Rendering....: $build_async_render"
2093 echo " Async Events............: $build_async_events"
2094 echo " Async Image Preload.....: $build_async_preload"
2096 echo " Word Cache..............: $want_word_cache"
2097 echo " Metric Cache............: $want_metric_cache"
2099 echo " Pixman..................: $have_pixman"
2100 echo " Pixman Fonts............: $have_pixman_font"
2101 echo " Pixman Rects............: $have_pixman_rect"
2102 echo " Pixman Lines............: $have_pixman_line"
2103 echo " Pixman Polygons.........: $have_pixman_poly"
2104 echo " Pixman Images...........: $have_pixman_image"
2105 echo " Pixman Image ScaleSample: $have_pixman_image_scale_sample"
2107 echo " Tiled 32BPP rotate......: $have_tile_rotate"
2109 echo "ARGB Software Engine Options:"
2110 echo " Sampling Scaler.........: $scaler_sample"
2111 echo " Smooth Scaler...........: $scaler_smooth"
2112 # FIXME: add an mmx scaler routine
2113 echo " YUV Converter...........: $conv_yuv"
2114 # FIXME: add more YUV format and colorvariant support
2116 echo "ARGB Conversion Options:"
2117 echo " Smaller Dither Mask.....: $conv_small_dither"
2118 echo " Line Dither Mask........: $conv_line_dither"
2119 echo " No Dither Mask for 16bpp: $conv_no_dither"
2120 echo " 8bpp RGB 332............: $conv_8_rgb_332"
2121 echo " 8bpp RGB 666............: $conv_8_rgb_666"
2122 echo " 8bpp RGB 232............: $conv_8_rgb_232"
2123 echo " 8bpp RGB 222............: $conv_8_rgb_222"
2124 echo " 8bpp RGB 221............: $conv_8_rgb_221"
2125 echo " 8bpp RGB 121............: $conv_8_rgb_121"
2126 echo " 8bpp RGB 111............: $conv_8_rgb_111"
2127 echo " 8bpp Grayscale (256)....: $conv_8_gry_1"
2128 echo " 8bpp Grayscale (16).....: $conv_8_gry_16"
2129 echo " 8bpp Grayscale 64-pal...: $conv_8_grayscale_64"
2130 # FIXME: add grayscale and B&W support to standard x converters
2131 echo " 16bpp RGB 565...........: $conv_16_rgb_565"
2132 echo " 16bpp BGR 565...........: $conv_16_bgr_565"
2133 echo " 16bpp RGB 555...........: $conv_16_rgb_555"
2134 echo " 16bpp RGB 444...........: $conv_16_rgb_444"
2135 echo " 16bpp RGB 565 (444 ipaq): $conv_16_rgb_ipq"
2136 # FIXME: add 555 (444 ipaq) support
2137 # FIXME: add 30bpp support
2138 # FIXME: add palletted support (ugh!)
2139 # FIXME: add 8bpp and below rotation
2140 echo " 16bpp Rotation 0........: $conv_16_rgb_rot_0"
2141 echo " 16bpp Rotation 90.......: $conv_16_rgb_rot_90"
2142 echo " 16bpp Rotation 180......: $conv_16_rgb_rot_180"
2143 echo " 16bpp Rotation 270......: $conv_16_rgb_rot_270"
2144 echo " 24bpp RGB 888...........: $conv_24_rgb_888"
2145 echo " 24bpp BGR 888...........: $conv_24_bgr_888"
2146 echo " 24bpp RGB 666 (666 ezx).: $conv_24_rgb_ezx"
2147 # FIXME: add 24bpp rotation
2148 echo " 32bpp RGB 8888..........: $conv_32_rgb_8888"
2149 echo " 32bpp RGBX 8888.........: $conv_32_rgbx_8888"
2150 echo " 32bpp BGR 8888..........: $conv_32_bgr_8888"
2151 echo " 32bpp BGRX 8888.........: $conv_32_bgrx_8888"
2152 echo " 32bpp RGB 666 (666 ezx).: $conv_32_rgb_ezx"
2153 echo " 32bpp Rotation 0........: $conv_32_rgb_rot_0"
2154 echo " 32bpp Rotation 90.......: $conv_32_rgb_rot_90"
2155 echo " 32bpp Rotation 180......: $conv_32_rgb_rot_180"
2156 echo " 32bpp Rotation 270......: $conv_32_rgb_rot_270"
2158 echo "Documentation.............: ${build_doc}"
2159 echo "Examples..................: install:${install_examples} build:${build_examples}"
2160 if test "x${enable_tests}" = "xyes" ; then
2161 echo "Tests.....................: ${enable_tests} (make check)"
2163 echo "Tests.....................: ${enable_tests}"
2165 if test "x${enable_coverage}" = "xyes" ; then
2166 echo "Coverage..................: ${enable_coverage} (make coverage)"
2168 echo "Coverage..................: ${enable_coverage}"
2171 echo "Compilation............: make (or gmake)"
2172 echo " CPPFLAGS.............: $CPPFLAGS"
2173 echo " CFLAGS...............: $CFLAGS"
2174 echo " CXXFLAGS.............: $CXXFLAGS"
2175 echo " LDFLAGS..............: $LDFLAGS"
2177 echo "Installation...........: make install (as root if needed, with 'su' or 'sudo')"
2178 echo " prefix...............: $prefix"
2180 if test "x${have_static_module}" = "xyes" ; then
2181 echo -e "\0033\01331;31mWarning\0033\01331;0m: You are trying to link statically one or more modules to Evas."
2182 echo " You must know what you are doing, or else you will have a lot of"
2183 echo " problems. And Kenny will be killed."
2184 echo " Think about that."