1 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
2 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
3 m4_define([v_maj], [1])
4 m4_define([v_min], [2])
5 m4_define([v_mic], [0])
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
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]-alpha, [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_8_x11="no"
102 want_evas_engine_software_16_x11="no"
103 want_evas_engine_software_16_ddraw="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_engine_software_16_ddraw="yes"
149 want_evas_image_loader_edb="no"
150 want_evas_image_loader_svg="no"
153 want_evas_engine_software_xlib="auto"
154 want_evas_engine_gl_cocoa="auto"
157 want_evas_engine_software_xlib="auto"
158 want_evas_engine_gl_xlib="auto"
159 want_evas_engine_software_xcb="no"
160 want_evas_engine_gl_xcb="no"
161 want_evas_engine_fb="auto"
162 want_evas_engine_wayland_shm="auto"
163 want_evas_engine_wayland_egl="auto"
164 ### no - not ready/usable/complete
165 # want_evas_engine_software_8_x11="auto"
166 # want_evas_engine_software_16_x11="auto"
170 case "$host_vendor" in
172 want_evas_engine_psl1ght="static"
179 ### Additional options to configure
181 # when used, that option makes configure script fails when
182 # a requirement is selected, but not met.
184 AC_ARG_ENABLE([strict],
185 AC_HELP_STRING([--enable-strict], [enable strict checking mode. @<:@default==disabled@:>@]),
189 # Simple X11 build/link
190 AC_ARG_ENABLE([simple-x11],
191 AC_HELP_STRING([--enable-simple-x11], [enable simple x11 linking]),
193 if test "x${enableval}" = "xyes" ; then
194 want_evas_simple_x11="yes"
196 want_evas_simple_x11="no"
201 ### Checks for programs
203 m4_ifdef([AC_PROG_OBJC],
206 _AM_DEPENDENCIES(OBJC)
209 dnl#AC_CHECK_TOOL([OBJC], [gcc])
211 dnl#AC_SUBST([OBJCFLAGS])
222 # Check whether pkg-config supports Requires.private
223 if $PKG_CONFIG --atleast-pkgconfig-version 0.22; then
224 pkgconfig_requires_private="Requires.private"
226 pkgconfig_requires_private="Requires"
228 AC_SUBST(pkgconfig_requires_private)
230 # doxygen program for documentation building
231 EFL_CHECK_DOXYGEN([build_doc="yes"], [build_doc="no"])
234 ### Checks for libraries
236 # Evil library for compilation on Windows CE
240 PKG_CHECK_MODULES([EVIL], [evil >= 1.0.0])
241 AC_DEFINE(HAVE_EVIL, 1, [Set to 1 if evil package is installed])
242 requirement_evas="evil ${requirement_evas}"
246 ### Checks for portability layer
248 PKG_CHECK_MODULES([EXOTIC],
250 [enable_exotic="yes"],
251 [enable_exotic="no"])
253 if test "x${enable_exotic}" = "xyes"; then
254 requirement_evas="exotic ${requirement_evas}"
256 AC_DEFINE([HAVE_EXOTIC], [1], [Define to 1 if you have Exotic.])
258 AM_CONDITIONAL([EVAS_HAVE_EXOTIC], [test "x${enable_exotic}" = "xyes"])
260 ## strong dependencies
263 PKG_CHECK_MODULES([EINA], [eina >= 1.1.0])
264 CPPFLAGS_SAVE="$CPPFLAGS"
265 CPPFLAGS="$CPPFLAGS $EINA_CFLAGS"
266 AC_CHECK_SIZEOF(Eina_Unicode,, [#include <Eina.h>])
267 CPPFLAGS="$CPPFLAGS_SAVE"
270 PKG_CHECK_MODULES([FREETYPE], [freetype2 >= 9.3.0])
272 requirement_evas="freetype2 eina >= 1.1.0 ${requirement_evas}"
274 ## optional dependencies
278 AC_ARG_ENABLE([fontconfig],
279 AC_HELP_STRING([--disable-fontconfig],
280 [disable fontconfig for finding fonts. @<:@default=enabled@:>@]),
282 if test "x${enableval}" = "xyes" ; then
283 want_fontconfig="yes"
290 if test "x${want_fontconfig}" = "xyes" -o "x${want_fontconfig}" = "xauto" ; then
291 PKG_CHECK_MODULES([FONTCONFIG],
292 [fontconfig >= 2.5.0],
294 have_fontconfig="yes"
295 AC_DEFINE(HAVE_FONTCONFIG, 1, [have fontconfig searching capabilities])
296 requirement_evas="fontconfig ${requirement_evas}"
299 if test "x${want_fontconfig}" = "xyes" -a "x${use_strict}" = "xyes" ; then
300 AC_MSG_ERROR([Fontconfig not found (strict dependencies checking)])
308 AC_ARG_ENABLE([liblinebreak],
309 AC_HELP_STRING([--disable-liblinebreak],
310 [disable linking against liblinebreak. @<:@default=enabled@:>@]),
312 if test "x${enableval}" = "xyes" ; then
320 AM_CONDITIONAL(EVAS_USE_LINEBREAK, test "x${want_linebreak}" = "xyes")
321 if test "x${want_linebreak}" = "xyes" ; then
323 LINEBREAK_CFLAGS='-I$(top_srcdir)/src/static_deps/liblinebreak'
324 LINEBREAK_LIBS='$(top_builddir)/src/static_deps/liblinebreak/liblinebreak.la'
325 AC_SUBST(LINEBREAK_CFLAGS)
326 AC_SUBST(LINEBREAK_LIBS)
327 AC_DEFINE(HAVE_LINEBREAK, 1, [have liblinebreak support])
334 AC_ARG_ENABLE([fribidi],
335 AC_HELP_STRING([--disable-fribidi],
336 [disable bidirectional text support. @<:@default=enabled@:>@]),
338 if test "x${enableval}" = "xyes" ; then
345 if test "x${want_fribidi}" = "xyes" -o "x${want_fribidi}" = "xauto" ; then
346 PKG_CHECK_MODULES([FRIBIDI],
350 AC_DEFINE(HAVE_FRIBIDI, 1, [have fribidi support])
351 requirement_evas="fribidi ${requirement_evas}"
352 CPPFLAGS_SAVE="$CPPFLAGS"
353 CPPFLAGS="$CPPFLAGS $FRIBIDI_CFLAGS"
354 AC_CHECK_SIZEOF(FriBidiChar,, [#include <fribidi/fribidi.h>])
355 CPPFLAGS="$CPPFLAGS_SAVE"
358 if test "x$want_fribidi" = "xyes" -a "x$use_strict" = "xyes" ; then
359 AC_MSG_ERROR([Fribidi not found (strict dependencies checking)])
364 if test "x${have_fribidi}" = "xno"; then
370 have_harfbuzz_ft="no"
371 AC_ARG_ENABLE([harfbuzz],
372 AC_HELP_STRING([--disable-harfbuzz],
373 [disable complex text shaping and layouting support. @<:@default=enabled@:>@]),
375 if test "x${enableval}" = "xyes" ; then
382 if test "x${want_harfbuzz}" = "xyes" -o "x${want_harfbuzz}" = "xauto" ; then
383 PKG_CHECK_MODULES([HARFBUZZ],
387 requirement_evas="harfbuzz ${requirement_evas}"
390 if test "x$want_harfbuzz" = "xyes" -a "x$use_strict" = "xyes" ; then
391 AC_MSG_ERROR([Harfbuzz not found (strict dependencies checking)])
394 if test "x$have_harfbuzz" = "xyes" ; then
396 CPPFLAGS_SAVE="$CPPFLAGS"
397 CPPFLAGS="$CPPFLAGS $HARFBUZZ_CFLAGS $FREETYPE_CFLAGS"
398 # must have for usage with harfbuzz although harfbuzz may not have it.
400 AC_CHECK_HEADER(hb-ft.h,
402 have_harfbuzz_ft="yes"
403 #Depend on harfbuzz ft for harfbuzz support
404 AC_DEFINE(HAVE_HARFBUZZ, 1, [have harfbuzz support])
407 if test "x$want_harfbuzz" = "xyes" -a "x$use_strict" = "xyes" ; then
408 AC_MSG_ERROR([Harfbuzz-ft not found (strict dependencies checking)])
412 CPPFLAGS="$CPPFLAGS_SAVE"
416 if test "x${have_harfbuzz}" = "xno"; then
422 AC_ARG_ENABLE([pixman],
423 AC_HELP_STRING([--enable-pixman],
424 [enable pixman for software rendering. @<:@default=enabled@:>@]),
426 if test "x${enableval}" = "xyes" ; then
434 if test "x${want_pixman}" = "xyes" -o "x${want_pixman}" = "xauto" ; then
435 PKG_CHECK_MODULES([PIXMAN],
439 AC_DEFINE(HAVE_PIXMAN, 1, [have pixman for rendering])
440 requirement_evas="pixman-1 ${requirement_evas}"
443 if test "x${want_pixman}" = "xyes" -a "x${use_strict}" = "xyes" ; then
444 AC_MSG_ERROR([Pixman not found (strict dependencies checking)])
449 have_pixman_font="no"
450 AC_ARG_ENABLE(pixman-font,
451 AC_HELP_STRING([--enable-pixman-font], [Allow pixman to render fonts]),
453 have_pixman_font="yes"
454 AC_DEFINE(PIXMAN_FONT, 1, [Allow pixman to render fonts])
458 have_pixman_rect="no"
459 AC_ARG_ENABLE(pixman-rect,
460 AC_HELP_STRING([--enable-pixman-rect], [Allow pixman to render rects]),
462 have_pixman_rect="yes"
463 AC_DEFINE(PIXMAN_RECT, 1, [Allow pixman to render rects])
467 have_pixman_line="no"
468 AC_ARG_ENABLE(pixman-line,
469 AC_HELP_STRING([--enable-pixman-line], [Allow pixman to render lines]),
471 have_pixman_line="yes"
472 AC_DEFINE(PIXMAN_LINE, 1, [Allow pixman to render lines])
476 have_pixman_poly="no"
477 AC_ARG_ENABLE(pixman-poly,
478 AC_HELP_STRING([--enable-pixman-poly], [Allow pixman to render polys]),
480 have_pixman_poly="yes"
481 AC_DEFINE(PIXMAN_POLY, 1, [Allow pixman to render polys])
485 have_pixman_image="no"
486 AC_ARG_ENABLE(pixman-image,
487 AC_HELP_STRING([--enable-pixman-image], [Allow pixman to render images]),
489 have_pixman_image="yes"
490 AC_DEFINE(PIXMAN_IMAGE, 1, [Allow pixman to render images])
494 have_pixman_image_scale_sample="no"
495 AC_ARG_ENABLE(pixman-image-scale-sample,
496 AC_HELP_STRING([--enable-pixman-image-scale-sample], [Allow pixman to render sampled scaled images]),
498 have_pixman_image_scale_sample="yes"
499 AC_DEFINE(PIXMAN_IMAGE_SCALE_SAMPLE, 1, [Allow pixman to render image sampled scaling])
503 have_tile_rotate="no"
504 AC_ARG_ENABLE(tile-rotate,
505 AC_HELP_STRING([--enable-tile-rotate], [Enable tiled rotate algorithm]),
507 have_tile_rotate="yes"
508 AC_DEFINE(TILE_ROTATE, 1, [Enable tiled rotate algorithm])
512 ### Checks for header files
514 AC_CHECK_HEADERS([unistd.h stdint.h sys/param.h netinet/in.h sys/mman.h])
518 AC_CHECK_TYPES([struct sigaction], [], [],
519 [[#include <signal.h>]])
522 ### Checks for structures
525 ### Checks for compiler characteristics
531 EFL_ATTRIBUTE_ALWAYS_INLINE
534 ### Checks for linker characteristics
535 lt_enable_auto_import=""
538 AC_DEFINE(EFL_EVAS_BUILD, 1, [Define to mention that evas is built])
539 lt_enable_auto_import="-Wl,--enable-auto-import"
542 AC_SUBST(lt_enable_auto_import)
545 ### Checks for library functions
548 AC_CHECK_FUNCS([siglongjmp])
554 EFL_CHECK_FNMATCH([], [AC_MSG_ERROR([Cannot find fnmatch()])])
561 AC_DEFINE(HAVE_DLSYM)
564 # nothing on mingw platform
567 AC_CHECK_FUNCS(dlsym, res=yes, res=no)
568 if test "x$res" = "xyes"; then
569 AC_DEFINE(HAVE_DLSYM)
571 AC_CHECK_LIB(dl, dlsym, res=yes, res=no)
572 if test "x$res" = "xyes"; then
574 AC_DEFINE(HAVE_DLSYM)
576 want_evas_engine_gl_xlib="no"
577 want_evas_engine_gl_xcb="no"
578 want_evas_engine_gl_sdl="no"
582 AC_SUBST(dlopen_libs)
585 AC_CHECK_LIB(m, lround, res=yes, res=no)
586 if test "x$res" = "xyes"; then
587 AC_DEFINE(HAVE_LROUND, 1, C99 lround function exists)
591 AC_MSG_CHECKING([whether shm_open() is present])
597 #include <sys/stat.h>
598 #include <sys/mman.h>
603 fd = shm_open("/", O_RDWR | O_CREAT, S_IRUSR | S_IWUSR);
608 AC_DEFINE(HAVE_SHM_OPEN, 1, [Have shm_open() call])
611 [have_shm_open="no"])
613 AC_MSG_RESULT([${have_shm_open}])
614 AC_SUBST(SHM_OPEN_LINK)
616 # (shm_open (for cache server)
617 AC_ARG_ENABLE([evas-cserve],
618 AC_HELP_STRING([--disable-evas-cserve],
619 [disable shared cache server support. @<:@default=enabled@:>@]),
621 if test "x${enableval}" = "xyes" ; then
622 want_evas_cserve="yes"
624 want_evas_cserve="no"
627 AC_MSG_CHECKING(whether to build shared cache server and support)
628 AC_MSG_RESULT(${want_evas_cserve})
630 if test "x${want_evas_cserve}" = "xyes" ; then
631 AC_MSG_CHECKING([whether shm_open() is present])
637 #include <sys/types.h>
638 #include <sys/mman.h>
643 fd = shm_open("/", O_RDWR | O_CREAT, S_IRUSR | S_IWUSR);
646 [want_evas_cserve="yes"],
647 [want_evas_cserve="no"])
649 AC_MSG_RESULT([${want_evas_cserve}])
652 if test "x${want_evas_cserve}" = "xyes" ; then
653 AC_DEFINE(EVAS_CSERVE, 1, [Shared caceh server.])
656 AM_CONDITIONAL([EVAS_CSERVE], [test "x${want_evas_cserve}" = "xyes"])
660 #######################################
661 ## GL force flavor gles
663 AC_MSG_CHECKING(whether to build GLES flavor of GL)
664 AC_ARG_ENABLE(gl-flavor-gles,
665 AC_HELP_STRING([--enable-gl-flavor-gles], [enable gles flavor of gl instead of standard]),
667 if test "x$enableval" = "xyes" ; then
680 #######################################
682 gles_variety_sgx="no"
683 AC_MSG_CHECKING(whether to build GLES variety for SGX)
684 AC_ARG_ENABLE(gles-variety-sgx,
685 AC_HELP_STRING([--enable-gles-variety-sgx], [GLES variety SGX 3D unit]),
687 if test "x$enableval" = "xyes" ; then
689 AC_DEFINE(GLES_VARIETY_SGX, 1, [Imagination SGX GLES2 support])
690 gles_variety_sgx="yes"
693 gles_variety_sgx="no"
697 gles_variety_sgx="no"
701 #######################################
702 ## GLES variety s3c6410
703 gles_variety_s3c6410="no"
704 AC_MSG_CHECKING(whether to build GLES variety for s3c6410)
705 AC_ARG_ENABLE(gles-variety-s3c6410,
706 AC_HELP_STRING([--enable-gles-variety-s3c6410], [GLES variety s3c6410 3D unit]),
708 if test "x$enableval" = "xyes" ; then
710 AC_DEFINE(GLES_VARIETY_S3C6410, 1, [Samsung S3c6410 GLES2 support])
711 gles_variety_s3c6410="yes"
714 gles_variety_s3c6410="no"
718 gles_variety_s3c6410="no"
722 if test "x$gl_flavor_gles" = "xyes"; then
724 if test "x$gles_variety_sgx" = "xyes"; then eng="x"$eng; fi
725 if test "x$gles_variety_s3c6410" = "xyes"; then eng="x"$eng; fi
726 if test "x$eng" = "xx"; then
730 [Please enable just 1 OpenGL-ES flavor. Choices are:
731 --enable-gles-variety-sgx (Most GL-ES2 GPUs with shader compiler)
732 --enable-gles-variety-s3c6410 (s3c6410 with offline shader compiler)
733 You will also need to enable the OpenGL engine for X11 with:
734 --enable-gl-xlib or --enable-gl-xcb
739 #####################################################################
742 EVAS_CHECK_ENGINE([buffer], [${want_evas_engine_buffer}], [yes], [Buffer])
744 EVAS_CHECK_ENGINE([software-gdi], [${want_evas_engine_software_gdi}], [no], [Software GDI])
746 EVAS_CHECK_ENGINE([software-ddraw], [${want_evas_engine_software_ddraw}], [no], [Software DirectDraw])
748 EVAS_CHECK_ENGINE([direct3d], [${want_evas_engine_direct3d}], [no], [Direct3D])
750 EVAS_CHECK_ENGINE([psl1ght], [${want_evas_engine_psl1ght}], [no], [PSL1GHT])
752 EVAS_CHECK_ENGINE([gl-sdl], [${want_evas_engine_gl_sdl}], [no], [OpenGL SDL])
754 EVAS_CHECK_ENGINE([gl-cocoa], [${want_evas_engine_gl_cocoa}], [no], [OpenGL Cocoa])
756 EVAS_CHECK_ENGINE([fb], [${want_evas_engine_fb}], [no], [Framebuffer])
758 EVAS_CHECK_ENGINE([directfb], [${want_evas_engine_directfb}], [no], [DirectFB])
760 EVAS_CHECK_ENGINE([software-8-x11], [${want_evas_engine_software_8_x11}], [no], [Software X11 8 bits grayscale])
762 EVAS_CHECK_ENGINE([software-16-x11], [${want_evas_engine_software_16_x11}], [no], [Software X11 16 bits])
764 EVAS_CHECK_ENGINE([software-16-ddraw], [${want_evas_engine_software_16_ddraw}], [no], [Software DirectDraw 16 bits])
766 EVAS_CHECK_ENGINE([software-16-wince], [${want_evas_engine_software_16_wince}], [no], [Software Windows CE 16 bits])
768 EVAS_CHECK_ENGINE([software-16-sdl], [${want_evas_engine_software_16_sdl}], [no], [Software SDL 16 bits])
770 EVAS_CHECK_ENGINE([wayland-shm], [${want_evas_engine_wayland_shm}], [no], [Wayland Shm])
772 EVAS_CHECK_ENGINE([wayland-egl], [${want_evas_engine_wayland_egl}], [no], [Wayland Egl])
777 AC_ARG_ENABLE([sdl-primitive],
778 [AC_HELP_STRING([--enable-sdl-primitive], [])],
779 [sdl_primitive=${enableval}]
781 AC_MSG_CHECKING([whether to use SDL primitive when possible])
782 AC_MSG_RESULT([${sdl_primitive}])
784 if test "x${sdl_primitive}" = "xyes" ; then
785 AC_DEFINE([ENGINE_SDL_PRIMITIVE], [1], [Use SDL primitive when possible])
788 # if software generic need to be build as part of libevas.so
789 have_static_software_generic="no"
790 AC_ARG_ENABLE([static-software-generic],
791 [AC_HELP_STRING([--enable-static-software-generic], [Build software generic engine as part of libevas])],
792 [have_static_software_generic=${enableval}]
794 AC_MSG_CHECKING([Whether to build software generic engine as part of libevas])
795 AC_MSG_RESULT([${have_static_software_generic}])
797 if test "x${have_static_module}" = "xyes" -a "x${have_static_software_generic}" = "xno"; then
798 AC_MSG_WARN([Forcing --enable-static-software-generic as engines must be compiled statically])
799 have_static_software_generic="yes"
802 AM_CONDITIONAL(EVAS_STATIC_BUILD_SOFTWARE_GENERIC, test "x${have_static_software_generic}" = "xyes")
803 if test "x${have_static_software_generic}" = "xyes"; then
804 AC_DEFINE(EVAS_STATIC_BUILD_SOFTWARE_GENERIC, [1], [Build software generic engine as part of libevas])
808 ######## Software Engine ########
809 have_evas_engine_software_x11="no"
810 have_evas_engine_software_xcb="no"
811 have_evas_engine_software_xlib="no"
816 AC_MSG_CHECKING(whether to build Software XCB Engine)
817 AC_ARG_ENABLE(software-xcb,
818 AC_HELP_STRING([--enable-software-xcb], [enable Software XCB Engine. @<:@default=disabled@:>@]), [want_xcb=$enableval]
820 if test "x$want_xcb" != "xno" ; then
821 EVAS_CHECK_ENGINE([software-xcb], [${want_evas_engine_software_xcb}], [no], [Software XCB])
822 if test "x$have_evas_engine_software_xcb" != "xno" ; then
823 build_software_xcb="yes"
824 have_evas_engine_software_x11="yes"
825 AC_DEFINE_UNQUOTED(BUILD_ENGINE_SOFTWARE_X11, [1], [Build software X11 engine])
826 AC_DEFINE_UNQUOTED(BUILD_ENGINE_SOFTWARE_XCB, [1], [Build software XCB backend])
830 build_software_xcb="no"
833 ## If we are not building XCB, then we can build XLib ##
835 if test "x$build_software_xcb" = "xno" ; then
836 EVAS_CHECK_ENGINE([software-xlib], [${want_evas_engine_software_xlib}], [no], [Software Xlib])
837 # if software_x11 is available, define everything needed for X11
838 if test "x$have_evas_engine_software_xlib" != "xno" ; then
839 have_evas_engine_software_x11="yes"
840 AC_DEFINE_UNQUOTED(BUILD_ENGINE_SOFTWARE_X11, [1], [Build software X11 engine])
841 AC_DEFINE_UNQUOTED(BUILD_ENGINE_SOFTWARE_XLIB, [1], [Build software Xlib backend])
844 have_evas_engine_software_xlib="no"
847 if test "x$have_evas_engine_software_xlib" = "xstatic" -o "x$have_evas_engine_software_xcb" = "xstatic"; then
848 AC_DEFINE_UNQUOTED(EVAS_STATIC_BUILD_SOFTWARE_X11, [1], [Build software X11 engine as part of libevas])
851 AC_SUBST(have_evas_engine_software_xcb)
852 AC_SUBST(have_evas_engine_software_xlib)
854 AM_CONDITIONAL([BUILD_ENGINE_SOFTWARE_XLIB], [test "x${have_evas_engine_software_xlib}" != "xno"])
855 AM_CONDITIONAL([BUILD_ENGINE_SOFTWARE_XCB], [test "x${have_evas_engine_software_xcb}" != "xno"])
856 AM_CONDITIONAL([BUILD_ENGINE_SOFTWARE_X11], [test "x${have_evas_engine_software_x11}" != "xno"])
858 AM_CONDITIONAL([EVAS_STATIC_BUILD_SOFTWARE_X11], [test "x${have_evas_engine_software_xcb}" = "xstatic" -o "x${have_evas_engine_software_xlib}" = "xstatic"])
859 AM_CONDITIONAL([EVAS_STATIC_BUILD_SOFTWARE_XLIB], [test "x${have_evas_engine_software_xlib}" = "xstatic"])
860 AM_CONDITIONAL([EVAS_STATIC_BUILD_SOFTWARE_XCB], [test "x${have_evas_engine_software_xcb}" = "xstatic"])
862 AC_SUBST(have_evas_engine_software_x11)
865 ######## OpenGL Engine ########
866 have_evas_engine_gl_x11="no"
867 have_evas_engine_gl_xcb="no"
872 AC_MSG_CHECKING(whether to build OpenGL XCB Engine)
873 AC_ARG_ENABLE(gl-xcb,
874 AC_HELP_STRING([--enable-gl-xcb], [enable OpenGL XCB Engine. @<:@default=disabled@:>@]), [want_gl_xcb=$enableval]
876 if test "x$want_gl_xcb" = "xyes" ; then
877 EVAS_CHECK_ENGINE([gl-xcb], [${want_evas_engine_gl_xcb}], [no], [OpenGL XCB])
878 if test "x$have_evas_engine_gl_xcb" != "xno" ; then
880 have_evas_engine_gl_x11="yes"
881 AC_DEFINE(BUILD_ENGINE_GL_X11, [1], [Build GL X11 engine])
882 AC_DEFINE(BUILD_ENGINE_GL_XCB, [1], [Build GL Xcb backend])
883 if test "x$have_evas_engine_gl_xcb" = "xstatic" ; then
884 AC_DEFINE(EVAS_STATIC_BUILD_GL_X11, [1], [Build GL X11 engine as part of libevas])
887 AC_SUBST(have_evas_engine_gl_xcb)
893 ## If we are not building XCB, then we can build XLib ##
895 if test "x$build_gl_xcb" = "xno" ; then
896 EVAS_CHECK_ENGINE([gl-xlib], [${want_evas_engine_gl_xlib}], [no], [OpenGL XLib])
897 if test "x$have_evas_engine_gl_xlib" != "xno" ; then
898 have_evas_engine_gl_x11="yes"
899 AC_DEFINE_UNQUOTED(BUILD_ENGINE_GL_X11, [1], [Build OpenGL X11 engine])
900 AC_DEFINE_UNQUOTED(BUILD_ENGINE_GL_XLIB, [1], [Build OpenGL Xlib backend])
901 if test "x$have_evas_engine_gl_xlib" = "xstatic" ; then
902 AC_DEFINE_UNQUOTED(EVAS_STATIC_BUILD_GL_X11, [1], [Build OpenGL X11 engine as part of libevas])
906 have_evas_engine_gl_xlib="no"
908 AC_SUBST(have_evas_engine_gl_xlib)
910 AM_CONDITIONAL([BUILD_ENGINE_GL_XLIB], [test "x${have_evas_engine_gl_xlib}" != "xno"])
911 AM_CONDITIONAL([BUILD_ENGINE_GL_XCB], [test "x${have_evas_engine_gl_xcb}" != "xno"])
912 AM_CONDITIONAL([BUILD_ENGINE_GL_X11], [test "x${have_evas_engine_gl_x11}" != "xno"])
914 AM_CONDITIONAL([EVAS_STATIC_BUILD_GL_X11], [test "x${have_evas_engine_gl_xcb}" = "xstatic" -o "x${have_evas_engine_gl_xlib}" = "xstatic"])
915 AM_CONDITIONAL([EVAS_STATIC_BUILD_GL_XLIB], [test "x${have_evas_engine_gl_xlib}" = "xstatic"])
916 AM_CONDITIONAL([EVAS_STATIC_BUILD_GL_XCB], [test "x${have_evas_engine_gl_xcb}" = "xstatic"])
918 AC_SUBST(have_evas_engine_gl_x11)
921 have_evas_engine_gl_common="no"
922 have_static_evas_engine_gl_common="no"
923 if test "x$have_evas_engine_gl_xlib" = "xyes" \
924 || test "x$have_evas_engine_gl_xcb" = "xyes" \
925 || test "x$have_evas_engine_gl_sdl" = "xyes" \
926 || test "x$have_evas_engine_gl_cocoa" = "xyes" \
927 || test "x$have_evas_engine_wayland_egl" = "xyes"; then
928 have_evas_engine_gl_common="yes"
930 if test "x$have_evas_engine_gl_xlib" = "xstatic" \
931 || test "x$have_evas_engine_gl_xcb" = "xstatic" \
932 || test "x$have_evas_engine_gl_sdl" = "xstatic" \
933 || test "x$have_evas_engine_gl_cocoa" = "xstatic" \
934 || test "x$have_evas_engine_wayland_egl" = "xstatic"; then
935 have_evas_engine_gl_common="yes"
936 have_static_evas_engine_gl_common="yes"
939 if test "x$have_evas_engine_gl_common" = "xyes"; then
940 evas_engine_gl_common_libs=""
941 AC_DEFINE(BUILD_ENGINE_GL_COMMON, [1], [Generic OpenGL Rendering Support])
944 AC_SUBST([evas_engine_gl_common_libs])
946 AM_CONDITIONAL(BUILD_ENGINE_GL_COMMON, [test "x$have_evas_engine_gl_common" = "xyes"])
948 AM_CONDITIONAL(EVAS_STATIC_BUILD_GL_COMMON, test "x${have_static_evas_engine_gl_common}" = "xyes")
949 if test "x${have_static_evas_engine_gl_common}" = "xyes"; then
950 AC_DEFINE(EVAS_STATIC_BUILD_GL_COMMON, [1], [Build GL generic engine as part of libevas])
954 if test "x$have_evas_engine_gl_sdl" = "xyes" || test "x$have_evas_engine_gl_sdl" = "xstatic" ; then
955 AC_CHECK_DECL(SDL_GL_CONTEXT_MAJOR_VERSION,
956 [AC_DEFINE(HAVE_SDL_GL_CONTEXT_VERSION, [1], [SDL_GL version attributes present])],,
957 [#include <SDL/SDL_video.h>])
960 if test "x$gl_flavor_gles" = "xyes"; then
961 AC_CHECK_DECL(SDL_OPENGLES,
962 [AC_DEFINE(HAVE_SDL_FLAG_OPENGLES, [1], [SDL_OPENGLES flag is present])],,
963 [#include <SDL/SDL_video.h>])
966 # if software 16 x11 is enabled - build software_16 (the generic 16bit
967 # engine). later enable it fb_16 or other "16" bit engines are enabled.
968 have_evas_engine_software_16="no"
969 if test "x$have_evas_engine_software_16_x11" = "xyes" -o "x$have_evas_engine_software_16_x11" = "xstatic"; then
970 have_evas_engine_software_16="yes"
972 if test "x$have_evas_engine_software_16_sdl" = "xyes" -o "x$have_evas_engine_software_16_sdl" = "xstatic"; then
973 have_evas_engine_software_16="yes"
975 if test "x$have_evas_engine_software_16_ddraw" = "xyes" -o "x$have_evas_engine_software_16_ddraw" = "xstatic"; then
976 have_evas_engine_software_16="yes"
978 if test "x$have_evas_engine_software_16_wince" = "xyes" -o "x$have_evas_engine_software_16_wince" = "xstatic"; then
979 have_evas_engine_software_16="yes"
981 AM_CONDITIONAL(BUILD_ENGINE_SOFTWARE_16, test "x$have_evas_engine_software_16" = "xyes")
983 # if software 16 need to be build as part of libevas.so
984 have_static_software_16="no"
985 AC_ARG_ENABLE([static-software-16],
986 [AC_HELP_STRING([--enable-static-software-16], [Build software 16 engine as part of libevas])],
987 [have_static_software_16=${enableval}]
989 AC_MSG_CHECKING([Whether to build software 16 engine as part of libevas])
990 AC_MSG_RESULT([${have_static_software_16}])
992 AM_CONDITIONAL(EVAS_STATIC_BUILD_SOFTWARE_16, test "x${have_static_software_16}" = "xyes")
993 if test "x${have_static_software_16}" = "xyes"; then
994 AC_DEFINE(EVAS_STATIC_BUILD_SOFTWARE_16, [1], [Build software 16 engine as part of libevas])
997 # if software 8 x11 is enabled - build software_8 (the generic 8bit
999 have_evas_engine_software_8="no"
1000 if test "x$have_evas_engine_software_8_x11" = "xyes" -o "x$have_evas_engine_software_8_x11" = "xstatic"; then
1001 have_evas_engine_software_8="yes"
1003 AM_CONDITIONAL(BUILD_ENGINE_SOFTWARE_8, test "x$have_evas_engine_software_8" = "xyes")
1005 # if software 8 need to be build as part of libevas.so
1006 have_static_software_8="no"
1007 AC_ARG_ENABLE([static-software-8],
1008 [AC_HELP_STRING([--enable-static-software-8], [Build software 8 engine as part of libevas])],
1009 [have_static_software_8=${enableval}]
1011 AC_MSG_CHECKING([Whether to build software 8 engine as part of libevas])
1012 AC_MSG_RESULT([${have_static_software_8}])
1014 AM_CONDITIONAL(EVAS_STATIC_BUILD_SOFTWARE_8, test "x${have_static_software_8}" = "xyes")
1015 if test "x${have_static_software_8}" = "xyes"; then
1016 AC_DEFINE(EVAS_STATIC_BUILD_SOFTWARE_8, [1], [Build software 8 engine as part of libevas])
1019 #####################################################################
1022 EVAS_CHECK_IMAGE_LOADER([Edb], [${want_evas_image_loader_edb}])
1024 EVAS_CHECK_IMAGE_LOADER([Eet], [${want_evas_image_loader_eet}])
1025 EVAS_CHECK_FONT_LOADER([${want_evas_font_loader_eet}])
1027 EVAS_CHECK_IMAGE_LOADER([Gif], [${want_evas_image_loader_gif}])
1029 have_evas_image_saver_jpeg="no"
1030 EVAS_CHECK_IMAGE_LOADER([Jpeg], [${want_evas_image_loader_jpeg}])
1032 dnl Windows has no sigsetjmp function, nor equivalent.
1033 dnl So we disable the jpeg saver.
1034 dnl TODO: must find a workaround
1039 if test "x${have_evas_image_loader_jpeg}" = "xyes" ; then
1040 AC_DEFINE(EVAS_BUILD_SAVER_JPEG, [1], [Build JPEG saver])
1041 have_evas_image_saver_jpeg="yes"
1045 AM_CONDITIONAL([BUILD_SAVER_JPEG], [test "x${have_evas_image_saver_jpeg}" = "xyes"])
1047 EVAS_CHECK_IMAGE_LOADER([PMAPS], [${want_evas_image_loader_pmaps}])
1049 EVAS_CHECK_IMAGE_LOADER([PNG], [${want_evas_image_loader_png}])
1051 EVAS_CHECK_IMAGE_LOADER([SVG], [${want_evas_image_loader_svg}])
1053 EVAS_CHECK_IMAGE_LOADER([Tiff], [${want_evas_image_loader_tiff}])
1055 EVAS_CHECK_IMAGE_LOADER([XPM], [${want_evas_image_loader_xpm}])
1057 EVAS_CHECK_IMAGE_LOADER([BMP], [${want_evas_image_loader_bmp}])
1059 EVAS_CHECK_IMAGE_LOADER([TGA], [${want_evas_image_loader_tga}])
1061 EVAS_CHECK_IMAGE_LOADER([WBMP], [${want_evas_image_loader_wbmp}])
1063 EVAS_CHECK_IMAGE_LOADER([ICO], [${want_evas_image_loader_ico}])
1065 EVAS_CHECK_IMAGE_LOADER([PSD], [${want_evas_image_loader_psd}])
1067 EVAS_CHECK_IMAGE_LOADER([GENERIC], [${want_evas_image_loader_generic}])
1069 #####################################################################
1070 ## Cpu based optimizations
1072 #######################################
1079 # basic pthread support
1080 AC_CHECK_HEADER(pthread.h,
1089 # sched_getaffinity pthread_attr_setaffinity_np
1090 AC_CHECK_HEADERS([pthread.h sched.h],
1092 CFLAGS_save="${CFLAGS}"
1093 CFLAGS="${CFLAGS} -pthread"
1095 LIBS="${LIBS} -pthread"
1098 #include <pthread.h>
1102 pthread_attr_setaffinity_np(NULL, 0, NULL);
1103 pthread_barrier_wait(NULL);
1105 [build_pthreads="yes"],
1106 [build_pthreads="no"])
1107 CFLAGS=${CFLAGS_save}
1110 [build_pthreads="no"])
1112 AC_MSG_CHECKING([whether pthread_attr_setaffinity_np() and pthread_barrier_wait() are supported])
1113 AC_MSG_RESULT([${build_pthreads}])
1115 #######################################
1117 AC_MSG_CHECKING(whether to build pthread code)
1118 AC_ARG_ENABLE(pthreads,
1119 AC_HELP_STRING([--enable-pthreads], [enable threaded rendering]),
1121 if test "x$enableval" = "xyes" ; then
1122 if test "x$build_pthreads" = "xyes"; then
1124 AC_DEFINE(BUILD_PTHREAD, 1, [Build Threaded Rendering])
1125 build_pthreads="yes"
1128 if "x$use_strict" = "xyes"; then
1129 AC_MSG_ERROR(pthreads headers or functions not found (strict dependencies checking))
1131 AC_MSG_RESULT(no: pthread headers or functions not found)
1140 AC_MSG_RESULT($build_pthreads)
1141 if test "x$build_pthreads" = "xyes" ; then
1142 AC_DEFINE(BUILD_PTHREAD, 1, [Build Threaded Rendering])
1148 #######################################
1150 build_pipe_render="no"
1152 AC_MSG_CHECKING(whether to build Threaded Pipe Rendering support)
1153 AC_ARG_ENABLE(pipe-render,
1154 AC_HELP_STRING([--enable-pipe-render], [enable threaded pipe rendering support]),
1155 [ build_pipe_render=$enableval ]
1157 AC_MSG_RESULT($build_pipe_render)
1159 AC_MSG_CHECKING(whether we can build Threaded Pipe Rendering support)
1160 if test \( "x$build_pipe_render" = "xyes" -o "x$build_pipe_render" = "xauto" \); then
1162 AC_DEFINE(BUILD_PIPE_RENDER, 1, [Build pipe render support])
1163 build_pipe_render="yes"
1167 build_pipe_render="no"
1170 #######################################
1172 build_async_render="no"
1174 AC_MSG_CHECKING(whether to build Asynchronously Threaded Pipe Rendering support)
1175 AC_ARG_ENABLE(async-render,
1176 AC_HELP_STRING([--enable-async-render], [enable asynchronously threaded pipe rendering support]),
1177 [ build_async_render=$enableval ]
1179 AC_MSG_RESULT($build_async_render)
1181 AC_MSG_CHECKING(whether we can build Asynchronously Threaded Pipe Rendering support)
1182 if test \( "x$build_async_render" = "xyes" \); then
1184 AC_DEFINE(EVAS_FRAME_QUEUING, 1, [Build async render support])
1185 build_async_render="yes"
1186 AC_DEFINE(BUILD_PIPE_RENDER, 1, [Build pipe render support])
1187 build_pipe_render="yes"
1190 PKG_CHECK_MODULES([XEXT],
1192 [ build_avoid_libXext_bug=yes ],
1193 [ build_avoid_libXext_bug=no ]
1195 if test \( "x$build_avoid_libXext_bug" = "xyes" \); then
1196 AC_DEFINE(LIBXEXT_VERSION_LOW, 1, [To avoid bug on old libXext version])
1200 build_async_render="no"
1203 #######################################
1205 build_async_events="auto"
1206 AC_MSG_CHECKING(whether to build Async Events support)
1207 AC_ARG_ENABLE(async-events,
1208 AC_HELP_STRING([--enable-async-events], [enable async events support]),
1209 [ build_async_events=$enableval ]
1211 AC_MSG_RESULT($build_async_events)
1213 AC_MSG_CHECKING(whether we can build Async Events support)
1214 if test "x$build_async_events" = "xyes" || test "x$build_async_events" = "xauto" ; then
1216 AC_DEFINE(BUILD_ASYNC_EVENTS, 1, [Build async events support])
1217 build_async_events="yes"
1220 build_async_events="no"
1223 #######################################
1224 ## Async image preload
1225 build_async_preload="auto"
1226 AC_MSG_CHECKING(whether to build Async Image Preload support)
1227 AC_ARG_ENABLE(async-preload,
1228 AC_HELP_STRING([--enable-async-preload], [enable async image preloading support]),
1229 [ build_async_preload=$enableval ]
1231 AC_MSG_RESULT($build_async_preload)
1233 AC_MSG_CHECKING(whether we can build Async Image Preload support)
1234 if test \( "x$build_async_preload" = "xyes" -o "x$build_async_preload" = "xauto" \) -a "x$build_async_events" = "xyes"; then
1236 AC_DEFINE(BUILD_ASYNC_PRELOAD, 1, [Build async image preload support])
1237 build_async_preload="yes"
1241 build_async_preload="no"
1244 #######################################
1245 ## Link with pthread if needed
1246 AC_MSG_CHECKING(whether we should link with pthread)
1247 if test "x$need_pthreads" = "xyes"; then
1249 pthread_cflags="-pthread"
1250 pthread_libs="-pthread"
1255 #######################################
1269 AC_MSG_CHECKING(whether to build mmx code)
1270 AC_ARG_ENABLE(cpu-mmx,
1271 AC_HELP_STRING([--enable-cpu-mmx], [enable mmx code]),
1273 if test "x$enableval" = "xyes" ; then
1275 AC_DEFINE(BUILD_MMX, 1, [Build MMX Code])
1283 AC_MSG_RESULT($build_cpu_mmx)
1284 if test "x$build_cpu_mmx" = "xyes" ; then
1285 AC_DEFINE(BUILD_MMX, 1, [Build MMX Code])
1290 #######################################
1304 AC_MSG_CHECKING(whether to build sse code)
1305 AC_ARG_ENABLE(cpu-sse,
1306 AC_HELP_STRING([--enable-cpu-sse], [enable sse code]),
1308 if test "x$enableval" = "xyes" ; then
1310 AC_DEFINE(BUILD_SSE, 1, [Build SSE Code])
1318 AC_MSG_RESULT($build_cpu_sse)
1319 if test "x$build_cpu_sse" = "xyes" ; then
1320 AC_DEFINE(BUILD_SSE, 1, [Build SSE Code])
1325 #######################################
1330 build_cpu_sse3="yes"
1333 build_cpu_sse3="yes"
1336 build_cpu_sse3="yes"
1339 AC_MSG_CHECKING(whether to build sse3 code)
1340 AC_ARG_ENABLE(cpu-sse3,
1341 AS_HELP_STRING([--enable-cpu-sse3], [enable sse3 code]),
1343 if test "x$enableval" = "xyes" ; then
1344 AC_CHECK_HEADER(immintrin.h,
1347 AC_DEFINE(BUILD_SSE3, 1, [Build SSE3 Code])
1348 build_cpu_sse3="yes"
1360 AC_MSG_RESULT($build_cpu_sse3)
1361 if test "x$build_cpu_sse3" = "xyes" ; then
1362 AC_CHECK_HEADER(immintrin.h,
1365 AC_DEFINE(BUILD_SSE3, 1, [Build SSE3 Code])
1366 build_cpu_sse3="yes"
1377 # as a big warning flag to anyone doing stuff like this...
1378 # NEVER EVER EVER EVER put **OPTIMIZATION** flags in
1379 # build flags in makefiles (from configure or anywhere else)
1380 # EVER as this screws your ability to build 1 binary and
1381 # cover ALL x86 arch's. This is the HEIGHT of WRONG. If the
1382 # person building choses to add optimization flags themselves
1383 # and decide the minimum baseline cpu arch is X then that's
1384 # their business, but NEVER should it be done here. NEVER.
1385 # I now have to do this due to the way this sse3 code was done - using
1386 # intrinsics and "functions" (opcodes) and types that only compile *IF*
1387 # you compile with -msse3. this ALSO tries to optimize REGULAR c code
1388 # with sse3 asm.. and this breaks things so badly. so... sse3 will be
1389 # off until further notice for 32bit x86.
1390 EVAS_SSE3_CFLAGS=" "
1391 if test "x$build_cpu_sse3" = "xyes" ; then
1392 EVAS_SSE3_CFLAGS="-msse3 "
1393 # CFLAGS="${CFLAGS} ${EVAS_SSE3_CFLAGS}"
1397 AC_SUBST(EVAS_SSE3_CFLAGS)
1399 #######################################
1401 build_cpu_altivec="no"
1404 build_cpu_altivec="auto"
1408 AC_MSG_CHECKING(whether to build altivec code)
1409 AC_ARG_ENABLE(cpu-altivec,
1410 AC_HELP_STRING([--enable-cpu-altivec], [enable altivec code]),
1411 [ build_cpu_altivec=$enableval ],
1413 if test ! "x$build_cpu_altivec" = "xauto"; then
1414 build_cpu_altivec="no"
1418 AC_MSG_RESULT($build_cpu_altivec)
1420 if test "x$build_cpu_altivec" = "xyes"; then
1421 AC_CHECK_HEADER(altivec.h,
1423 AC_DEFINE(BUILD_ALTIVEC, 1, [Build Altivec Code])
1424 AC_DEFINE(HAVE_ALTIVEC_H, 1, [Have altivec.h header file])
1425 build_cpu_altivec="yes"
1429 save_CPPFLAGS=$CPPFLAGS
1430 CFLAGS=$CFLAGS" -maltivec"
1431 CPPFLAGS=$CPPFLAGS" -maltivec"
1432 unset ac_cv_header_altivec_h
1433 AC_CHECK_HEADER(altivec.h,
1435 AC_DEFINE(BUILD_ALTIVEC, 1, [Build Altivec Code])
1436 AC_DEFINE(HAVE_ALTIVEC_H, 1, [Have altivec.h header file])
1437 build_cpu_altivec="yes"
1440 if test "x$build_cpu_altivec" = "xyes" -a "x$use_strict" = "xyes" ; then
1441 AC_MSG_ERROR(Altivec not found (strict dependencies checking))
1443 build_cpu_altivec="no"
1447 CPPFLAGS=$save_CPPFLAGS
1452 if test "x$build_cpu_altivec" = "xyes"; then
1453 AC_MSG_CHECKING(whether to use altivec compiler flag)
1454 if test "x$GCC" = "xyes"; then
1455 if echo "int main(){return 0;}" | ${CPP} -faltivec - > /dev/null 2>&1; then
1456 altivec_cflags="-faltivec"
1457 AC_DEFINE(BUILD_ALTIVEC, 1, [Build Altivec Code])
1458 elif echo "int main(){return 0;}" | ${CPP} -maltivec - > /dev/null 2>&1; then
1459 altivec_cflags="-maltivec"
1460 AC_DEFINE(BUILD_ALTIVEC, 1, [Build Altivec Code])
1463 AC_MSG_RESULT($altivec_cflags)
1464 CFLAGS="$CFLAGS $altivec_cflags"
1467 #######################################
1472 build_cpu_neon="yes"
1475 AC_MSG_CHECKING(whether to build neon code)
1476 AC_ARG_ENABLE(cpu-neon,
1477 AC_HELP_STRING([--enable-cpu-neon], [build neon code, the code will be
1478 checked at run time to see if the CPU supports it]),
1480 if test "x$enableval" = "xyes" ; then
1482 [asm volatile (".fpu neon\nvqadd.u8 d0, d1, d0\n")],
1485 AC_DEFINE(BUILD_NEON, 1, [Build NEON Code])
1486 build_cpu_neon="yes"
1497 if test "x$build_cpu_neon" = "xyes" ; then
1498 AC_TRY_COMPILE([#include <arm_neon.h>],
1499 [asm volatile ("vqadd.u8 d0, d1, d0\n")],
1502 AC_DEFINE(BUILD_NEON, 1, [Build NEON Code])
1503 build_cpu_neon="yes"
1512 #######################################
1515 AC_MSG_CHECKING(whether to build c code)
1516 AC_ARG_ENABLE(cpu-c,
1517 AC_HELP_STRING([--enable-cpu-c], [enable C code]),
1519 if test "x$enableval" = "xyes" ; then
1521 AC_DEFINE(BUILD_C, 1, [Build plain C code])
1528 AC_MSG_RESULT($build_cpu_c)
1529 if test "x$build_cpu_c" = "xyes" ; then
1530 AC_DEFINE(BUILD_C, 1, [Build plain C code])
1535 #######################################
1537 want_evas_magic_debug="yes"
1538 AC_MSG_CHECKING(whether to check magic for evas object)
1539 AC_ARG_ENABLE(evas-magic-debug,
1541 [--disable-evas-magic-debug],
1542 [disable MAGIC_DEBUG check when people pass in wrong object type. [[default=enabled]]]
1544 [ want_evas_magic_debug="$enableval" ]
1546 AC_MSG_RESULT($want_evas_magic_debug)
1548 AM_CONDITIONAL(EVAS_MAGIC_DEBUG, test "x$want_evas_magic_debug" = "xyes")
1549 if test "x$want_evas_magic_debug" = "xyes"; then
1550 AC_DEFINE(EVAS_MAGIC_DEBUG, 1, [complain when people pass in wrong object types etc.])
1554 #######################################
1556 want_word_cache="no"
1557 AC_MSG_CHECKING(whether to enable caching of rendered words)
1558 AC_ARG_ENABLE(word-cache,
1560 [--enable-word-cache],
1561 [Enable experimental word caching to speed up rendering [[default=disabled]]]
1563 [ want_word_cache="$enableval" ]
1565 AC_MSG_RESULT($want_word_cache)
1567 AM_CONDITIONAL(WORD_CACHE, test "x$want_word_cache" = "xyes")
1568 if test "x$want_word_cache" = "xyes"; then
1569 AC_DEFINE(WORD_CACHE, 1, [Experimental word caching to speed up text rendering.])
1572 #######################################
1574 want_metric_cache="no"
1575 AC_MSG_CHECKING(whether to enable caching of rendered metrics)
1576 AC_ARG_ENABLE(metric-cache,
1578 [--enable-metric-cache],
1579 [Enable experimental metric caching to speed up rendering [[default=disabled]]]
1581 [ want_metric_cache="$enableval" ]
1583 AC_MSG_RESULT($want_metric_cache)
1585 AM_CONDITIONAL(METRIC_CACHE, test "x$want_metric_cache" = "xyes")
1586 if test "x$want_metric_cache" = "xyes"; then
1587 AC_DEFINE(METRIC_CACHE, 1, [Experimental metric caching to speed up text rendering.])
1592 #####################################################################
1593 ## ARGB engine options
1595 #######################################
1596 ## Nearest sampling scaler
1597 EVAS_CHECK_SCALER([scale-sample], [sampling scaler], [scaler_sample="yes"], [scaler_sample="no"])
1598 ## Smooth super and sub sampling scaler
1599 EVAS_CHECK_SCALER([scale-smooth], [smooth scaler], [scaler_smooth="yes"], [scaler_smooth="no"])
1601 #######################################
1602 ## YUV -> ARGB converter
1605 AC_MSG_CHECKING(whether to build yuv converter code)
1606 AC_ARG_ENABLE(convert-yuv,
1607 AC_HELP_STRING([--enable-convert-yuv], [enable yuv converter code]),
1609 if test "x$enableval" = "xyes" ; then
1611 AC_DEFINE(BUILD_CONVERT_YUV, 1, [YUV Converter Support])
1618 AC_MSG_RESULT($conv_yuv)
1619 if test "x$conv_yuv" = "xyes" ; then
1620 AC_DEFINE(BUILD_CONVERT_YUV, 1, [YUV Converter Support])
1625 #####################################################################
1626 ## Output rendering features
1628 #######################################
1629 ## Small dither mask instead of big one (lower quality)
1630 EVAS_CHECK_DITHER([small-dither-mask], [small dither mask], [conv_small_dither="yes"], [conv_small_dither="no"])
1631 ## Alternate Line dither mask instead of big one (lower quality - but fastest)
1632 EVAS_CHECK_DITHER([line-dither-mask], [line dither mask], [conv_line_dither="yes"], [conv_line_dither="no"])
1633 ## No dither mask at all for 16bpp
1634 EVAS_CHECK_DITHER([no-dither-mask], [conversion to 16bpp without dither mask], [conv_no_dither="yes"], [conv_no_dither="no"])
1636 #######################################
1637 ## Convert to 8bpp RGB 332
1638 EVAS_CONVERT_COLOR(8, RGB, 332, [yes])
1639 ## Convert to 8bpp RGB 666
1640 EVAS_CONVERT_COLOR(8, RGB, 666, [yes])
1641 ## Convert to 8bpp RGB 232
1642 EVAS_CONVERT_COLOR(8, RGB, 232, [yes])
1643 ## Convert to 8bpp RGB 222
1644 EVAS_CONVERT_COLOR(8, RGB, 222, [yes])
1645 ## Convert to 8bpp RGB 221
1646 EVAS_CONVERT_COLOR(8, RGB, 221, [yes])
1647 ## Convert to 8bpp RGB 121
1648 EVAS_CONVERT_COLOR(8, RGB, 121, [yes])
1649 ## Convert to 8bpp RGB 111
1650 EVAS_CONVERT_COLOR(8, RGB, 111, [yes])
1651 ## Convert to 16bpp RGB 565
1652 EVAS_CONVERT_COLOR(16, RGB, 565)
1653 ## Convert to 16bpp BGR 565
1654 EVAS_CONVERT_COLOR(16, BGR, 565)
1655 ## Convert to 16bpp RGB 555
1656 EVAS_CONVERT_COLOR(16, RGB, 555)
1657 ## Convert to 16bpp RGB 444
1658 EVAS_CONVERT_COLOR(16, RGB, 444)
1660 #######################################
1661 ## Convert to 16bpp RGB 565 (444 ipaq)
1662 conv_16_rgb_ipq="yes"
1663 AC_MSG_CHECKING(whether to build 16bpp 565 (444 ipaq) converter code)
1664 AC_ARG_ENABLE(convert-16-rgb-ipq,
1665 AC_HELP_STRING([--disable-convert-16-rgb-ipq], [disable 16bpp 565 (444 ipaq) converter code]),
1667 if test "x$enableval" = "xyes" ; then
1668 AC_DEFINE(BUILD_CONVERT_16_RGB_454645, 1, [16bpp 565 (444 ipaq) Converter Support])
1669 conv_16_rgb_ipq="yes"
1671 conv_16_rgb_ipq="no"
1674 if test "x$conv_16_rgb_ipq" = "xyes" ; then
1675 AC_DEFINE(BUILD_CONVERT_16_RGB_454645, 1, [16bpp 565 (444 ipaq) Converter Support])
1679 AC_MSG_RESULT($conv_16_rgb_ipq)
1681 #######################################
1682 ## Convert to 16bpp RGB with rotation of 0
1683 EVAS_CONVERT_ROT(16, RGB, 0)
1684 ## Convert to 16bpp RGB with rotation of 180
1685 EVAS_CONVERT_ROT(16, RGB, 180)
1686 ## Convert to 16bpp RGB with rotation of 270
1687 EVAS_CONVERT_ROT(16, RGB, 270)
1688 ## Convert to 16bpp RGB with rotation of 90
1689 EVAS_CONVERT_ROT(16, RGB, 90)
1691 #######################################
1692 ## Convert to 24bpp RGB 888
1693 EVAS_CONVERT_COLOR(24, RGB, 888)
1694 ## Convert to 24bpp BGR 888
1695 EVAS_CONVERT_COLOR(24, BGR, 888)
1696 ## Convert to 32bpp RGB 8888
1697 EVAS_CONVERT_COLOR(32, RGB, 8888)
1698 ## Convert to 32bpp RGBX 8888
1699 EVAS_CONVERT_COLOR(32, RGBX, 8888)
1700 ## Convert to 32bpp BGR 8888
1701 EVAS_CONVERT_COLOR(32, BGR, 8888)
1702 ## Convert to 32bpp BGRX 8888
1703 EVAS_CONVERT_COLOR(32, BGRX, 8888)
1705 #######################################
1706 ## Convert to 24bpp RGB 666 (666 ezx)
1707 conv_24_rgb_ezx="yes"
1708 AC_MSG_CHECKING(whether to build 24bpp 666 (666 ezx) converter code)
1709 AC_ARG_ENABLE(convert-24-rgb-ezx,
1710 AC_HELP_STRING([--disable-convert-24-rgb-ezx], [disable 24bpp 666 (666 ezx) converter code]),
1712 if test "x$enableval" = "xyes" ; then
1713 AC_DEFINE(BUILD_CONVERT_24_RGB_666, 1, [24bpp 666 (666 ezx) Converter Support])
1714 conv_24_rgb_ezx="yes"
1716 conv_24_rgb_ezx="no"
1719 if test "x$conv_24_rgb_ezx" = "xyes" ; then
1720 AC_DEFINE(BUILD_CONVERT_24_RGB_666, 1, [24bpp 666 (666 ezx) Converter Support])
1724 AC_MSG_RESULT($conv_24_rgb_ezx)
1726 #######################################
1727 ## Convert to 32bpp RGB 666 (666 ezx)
1728 conv_32_rgb_ezx="yes"
1729 AC_MSG_CHECKING(whether to build 32bpp 666 (666 ezx) converter code)
1730 AC_ARG_ENABLE(convert-32-rgb-ezx,
1731 AC_HELP_STRING([--disable-convert-32-rgb-ezx], [disable 32bpp 666 (666 ezx) converter code]),
1733 if test "x$enableval" = "xyes" ; then
1734 AC_DEFINE(BUILD_CONVERT_32_RGB_666, 1, [32bpp 666 (666 ezx) Converter Support])
1735 conv_32_rgb_ezx="yes"
1737 conv_32_rgb_ezx="no"
1740 if test "x$conv_32_rgb_ezx" = "xyes" ; then
1741 AC_DEFINE(BUILD_CONVERT_32_RGB_666, 1, [32bpp 666 (666 ezx) Converter Support])
1745 AC_MSG_RESULT($conv_32_rgb_ezx)
1747 #######################################
1748 ## Convert to 32bpp RGB with rotation of 0
1749 EVAS_CONVERT_ROT(32, RGB, 0)
1750 ## Convert to 32bpp RGB with rotation of 180
1751 EVAS_CONVERT_ROT(32, RGB, 180)
1752 ## Convert to 32bpp RGB with rotation of 270
1753 EVAS_CONVERT_ROT(32, RGB, 270)
1754 ## Convert to 32bpp RGB with rotation of 90
1755 EVAS_CONVERT_ROT(32, RGB, 90)
1757 #######################################
1758 ## Convert to 8bpp grayscale with 256 value, no palette
1759 EVAS_CONVERT_COLOR(8, GRY, 1)
1760 ## Convert to 8bpp grayscale with 16 value, no palette
1761 EVAS_CONVERT_COLOR(8, GRY, 16)
1763 #######################################
1764 ## Convert to 8bpp grayscale, 64-palette
1765 conv_8_grayscale_64="yes"
1766 AC_MSG_CHECKING(whether to build 8bpp grayscale 64-palette converter code)
1767 AC_ARG_ENABLE(convert-8-grayscale-64,
1768 AC_HELP_STRING([--disable-convert-8-grayscale-64], [disable 8bpp grayscale 64-palette converter code]),
1770 if test "x$enableval" = "xyes"; then
1771 AC_DEFINE(BUILD_CONVERT_8_GRAYSCALE_64, 1, [8bpp Grayscale 64-palette Converter Support])
1772 conv_8_grayscale_64="yes"
1774 conv_8_grayscale_64="no"
1777 if test "x$conv_8_grayscale_64" = "xyes"; then
1778 AC_DEFINE(BUILD_CONVERT_8_GRAYSCALE_64, 1, [32bpp Grayscale 64-palette Converter Support])
1782 AC_MSG_RESULT($conv_8_grayscale_64)
1788 AC_MSG_CHECKING(whether to enable build with valgrind)
1789 AC_ARG_ENABLE(valgrind,
1790 AC_HELP_STRING([--enable-valgrind], [enable valgrind fixes to stop false reports]),
1791 [ want_valgrind=$enableval ]
1793 AC_MSG_RESULT($want_valgrind)
1795 if test x$want_valgrind = "xyes"; then
1796 PKG_CHECK_MODULES(VALGRIND, valgrind >= 2.4.0,
1798 AC_DEFINE(HAVE_VALGRIND, 1, [Valgrind support])
1800 requirement_evas="valgrind ${requirement_evas}"
1803 if test "x$want_valgrind" = "xyes" -a "x$use_strict" = "xyes" ; then
1804 AC_MSG_ERROR([Valgrind not found (strict dependencies checking)])
1812 install_examples="yes"
1813 AC_ARG_ENABLE([install-examples],
1814 AC_HELP_STRING([--disable-install-examples],
1815 [disable installing examples (compiled or just source).
1816 @<:@default==enabled@:>@]),
1818 if test "x${enableval}" = "xyes" ; then
1819 install_examples="yes"
1821 install_examples="no"
1824 [install_examples="yes"])
1825 AM_CONDITIONAL([INSTALL_EXAMPLES], [test "x${install_examples}" = "xyes"])
1828 AC_ARG_ENABLE([build-examples],
1829 AC_HELP_STRING([--enable-build-examples],
1830 [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@:>@]),
1832 if test "x${enableval}" = "xyes" ; then
1833 build_examples="yes"
1834 # put in here the dependencies for Evas' examples. they are
1835 # meant to be 'real world' usage examples, thus one will be
1836 # using higher level libraries on these programs
1837 PKG_CHECK_MODULES([ECORE_EVAS], [ecore-evas ecore], [], [build_examples="no"])
1838 PKG_CHECK_MODULES([EDJE], [edje],
1839 [edje_cc=$($PKG_CONFIG --variable=prefix edje)/bin/edje_cc],
1840 [build_examples="no"])
1846 [build_examples="no"])
1847 AM_CONDITIONAL([BUILD_EXAMPLES], [test "x${build_examples}" = "xyes"])
1849 ## Unit tests, coverage
1851 EFL_CHECK_TESTS([enable_tests="yes"], [enable_tests="no"])
1853 EFL_CHECK_COVERAGE([${enable_tests}], [enable_coverage="yes"], [enable_coverage="no"])
1854 EVAS_CFLAGS="${EVAS_CFLAGS} ${EFL_COVERAGE_CFLAGS} ${EXOTIC_CFLAGS}"
1855 EVAS_LIBS="${EVAS_LIBS} ${EFL_COVERAGE_LIBS} ${EXOTIC_LIBS}"
1856 if test "x$enable_coverage" = "xyes" ; then
1857 EVAS_CFLAGS="${EVAS_CFLAGS} ${EFL_DEBUG_CFLAGS}"
1860 AC_SUBST(EVAS_CFLAGS)
1863 #####################################################################
1866 AC_SUBST(altivec_cflags)
1867 AC_SUBST(pthread_cflags)
1868 AC_SUBST(pthread_libs)
1869 AC_SUBST(requirement_evas)
1872 #####################################################################
1881 evas-opengl-cocoa.pc
1882 evas-software-buffer.pc
1883 evas-software-x11.pc
1884 evas-software-8-x11.pc
1885 evas-software-16-x11.pc
1886 evas-software-gdi.pc
1887 evas-software-ddraw.pc
1888 evas-software-16-ddraw.pc
1890 evas-software-16-wince.pc
1891 evas-software-sdl.pc
1902 src/lib/canvas/Makefile
1903 src/lib/file/Makefile
1904 src/lib/cache/Makefile
1905 src/lib/cserve/Makefile
1906 src/lib/engines/Makefile
1907 src/lib/engines/common/Makefile
1908 src/lib/engines/common/evas_op_add/Makefile
1909 src/lib/engines/common/evas_op_blend/Makefile
1910 src/lib/engines/common/evas_op_copy/Makefile
1911 src/lib/engines/common/evas_op_mask/Makefile
1912 src/lib/engines/common/evas_op_mul/Makefile
1913 src/lib/engines/common/evas_op_sub/Makefile
1914 src/lib/engines/common_8/Makefile
1915 src/lib/engines/common_16/Makefile
1916 src/modules/Makefile
1917 src/modules/engines/Makefile
1918 src/modules/engines/software_generic/Makefile
1919 src/modules/engines/software_gdi/Makefile
1920 src/modules/engines/software_ddraw/Makefile
1921 src/modules/engines/direct3d/Makefile
1922 src/modules/engines/software_16_wince/Makefile
1923 src/modules/engines/software_x11/Makefile
1924 src/modules/engines/fb/Makefile
1925 src/modules/engines/buffer/Makefile
1926 src/modules/engines/directfb/Makefile
1927 src/modules/engines/gl_common/Makefile
1928 src/modules/engines/gl_x11/Makefile
1929 src/modules/engines/gl_sdl/Makefile
1930 src/modules/engines/gl_cocoa/Makefile
1931 src/modules/engines/psl1ght/Makefile
1932 src/modules/engines/software_8/Makefile
1933 src/modules/engines/software_8_x11/Makefile
1934 src/modules/engines/software_16/Makefile
1935 src/modules/engines/software_16_x11/Makefile
1936 src/modules/engines/software_16_ddraw/Makefile
1937 src/modules/engines/software_16_sdl/Makefile
1938 src/modules/engines/wayland_shm/Makefile
1939 src/modules/engines/wayland_egl/Makefile
1940 src/modules/loaders/Makefile
1941 src/modules/loaders/edb/Makefile
1942 src/modules/loaders/eet/Makefile
1943 src/modules/loaders/gif/Makefile
1944 src/modules/loaders/jpeg/Makefile
1945 src/modules/loaders/png/Makefile
1946 src/modules/loaders/tiff/Makefile
1947 src/modules/loaders/xpm/Makefile
1948 src/modules/loaders/bmp/Makefile
1949 src/modules/loaders/ico/Makefile
1950 src/modules/loaders/tga/Makefile
1951 src/modules/loaders/svg/Makefile
1952 src/modules/loaders/pmaps/Makefile
1953 src/modules/loaders/wbmp/Makefile
1954 src/modules/loaders/psd/Makefile
1955 src/modules/loaders/generic/Makefile
1956 src/modules/savers/Makefile
1957 src/modules/savers/edb/Makefile
1958 src/modules/savers/eet/Makefile
1959 src/modules/savers/jpeg/Makefile
1960 src/modules/savers/png/Makefile
1961 src/modules/savers/tiff/Makefile
1962 src/static_deps/Makefile
1963 src/static_deps/liblinebreak/Makefile
1964 src/lib/include/Makefile
1965 src/examples/Makefile
1970 #####################################################################
1973 if test "x$build_pthreads" = "xno" ; then
1974 if test "x$build_async_render" = "xyes" ; then
1975 echo "ERROR: PThreads off, but async rendering on. Async rendering"
1976 echo " needs thread support."
1979 if test "x$build_pipe_render" = "xyes" ; then
1980 echo "ERROR: PThreads off, but pipe rendering on. Pipe rendering"
1981 echo " needs thread support."
1986 if test "x${has_pthreads}" = "xno" ; then
1987 if test "x$build_async_preload" = "xyes" ; then
1988 echo "ERROR: PThreads off, but Async Preload on. Async Preload"
1989 echo " needs thread support."
1994 #####################################################################
2000 echo "------------------------------------------------------------------------"
2001 echo "$PACKAGE $VERSION"
2002 echo "------------------------------------------------------------------------"
2004 echo "Configuration Options Summary:"
2007 echo " Software Memory Buffer.....: $have_evas_engine_buffer"
2008 echo " Software X11...............: $have_evas_engine_software_x11 (Xlib: $have_evas_engine_software_xlib) (XCB: $have_evas_engine_software_xcb)"
2009 echo $ECHO_N " OpenGL X11.................: $have_evas_engine_gl_x11 (Xlib: $have_evas_engine_gl_xlib) (XCB: $have_evas_engine_gl_xcb) $ECHO_C"
2010 if test "x$have_evas_engine_gl_x11" = "xyes"; then
2011 echo "(GLES: $gl_flavor_gles) (SGX: $gles_variety_sgx) (s3c6410: $gles_variety_s3c6410)"
2015 echo " Software GDI...............: $have_evas_engine_software_gdi"
2016 echo " Software DirectDraw........: $have_evas_engine_software_ddraw"
2017 echo " Direct3d...................: $have_evas_engine_direct3d"
2018 echo " OpenGL SDL.................: $have_evas_engine_gl_sdl $ECHO_C"
2019 if test "x$have_evas_engine_gl_sdl" = "xyes"; then
2020 echo "(GLES: $gl_flavor_gles) (SGX: $gles_variety_sgx) (s3c6410: $gles_variety_s3c6410)"
2024 echo " OpenGL Cocoa...............: $have_evas_engine_gl_cocoa"
2025 echo " Software Framebuffer.......: $have_evas_engine_fb"
2026 echo " DirectFB...................: $have_evas_engine_directfb"
2027 echo " PSL1GHT....................: $have_evas_engine_psl1ght"
2028 echo " Software 8bit grayscale....: $have_evas_engine_software_8"
2029 # FIXME: kill software 16bit
2030 echo " Software 16bit ............: $have_evas_engine_software_16"
2031 echo " Software 16bit X11.........: $have_evas_engine_software_16_x11"
2032 echo " Software 16bit Directdraw..: $have_evas_engine_software_16_ddraw"
2033 echo " Software 16bit WinCE.......: $have_evas_engine_software_16_wince"
2034 echo " Software 16bit SDL.........: $have_evas_engine_software_16_sdl (primitive: $sdl_primitive)"
2035 echo " Wayland Shm................: $have_evas_engine_wayland_shm"
2036 echo " Wayland Egl................: $have_evas_engine_wayland_egl"
2038 echo "Image Loaders:"
2039 echo " BMP.....................: $have_evas_image_loader_bmp"
2040 echo " EDB.....................: $have_evas_image_loader_edb"
2041 echo " EET.....................: $have_evas_image_loader_eet"
2042 echo " GENERIC.................: $have_evas_image_loader_generic"
2043 echo " GIF.....................: $have_evas_image_loader_gif"
2044 echo " ICO.....................: $have_evas_image_loader_ico"
2045 echo " JPEG....................: $have_evas_image_loader_jpeg (region: $have_jpeg_region)"
2046 echo " PMAPS...................: $have_evas_image_loader_pmaps"
2047 echo " PNG.....................: $have_evas_image_loader_png"
2048 echo " PSD.....................: $have_evas_image_loader_psd"
2049 echo " SVG.....................: $have_evas_image_loader_svg"
2050 echo " TGA.....................: $have_evas_image_loader_tga"
2051 echo " TIFF....................: $have_evas_image_loader_tiff"
2052 echo " WBMP....................: $have_evas_image_loader_wbmp"
2053 echo " XPM.....................: $have_evas_image_loader_xpm"
2055 echo "Font Sourcing Systems:"
2056 echo " EET.....................: $have_evas_font_loader_eet"
2058 echo "Font Searching Systems:"
2059 echo " Fontconfig..............: $have_fontconfig"
2061 echo "Font Rendering Helpers:"
2062 echo " Fribidi.................: $have_fribidi"
2063 echo " Harfbuzz................: $have_harfbuzz"
2064 echo " liblinebreak............: $have_linebreak"
2065 # FIXME: add non freetype2 font engine support
2066 # FIXME: make freetype2 optional
2068 echo "CPU Specific Extensions:"
2069 echo " Fallback C Code.........: $build_cpu_c"
2070 echo " MMX.....................: $build_cpu_mmx"
2071 echo " SSE.....................: $build_cpu_sse"
2072 echo " SSE3....................: $build_cpu_sse3"
2073 echo " ALTIVEC.................: $build_cpu_altivec"
2074 echo " NEON....................: $build_cpu_neon"
2075 echo " Thread Support..........: $build_pthreads"
2078 echo " MAGIC_DEBUG.............: $want_evas_magic_debug"
2079 echo " Cache Server............: $want_evas_cserve"
2082 dnl ... DISABLED! some testing has shown that this seems to have some
2083 dnl nasty bugs on both x86 and arm (tegra2 dual core tested), so just
2084 dnl disabling this for now until it can be fixed
2086 echo " Threaded Pipe Rendering.: $build_pipe_render"
2087 echo " Async Pipe Rendering....: $build_async_render"
2088 echo " Async Events............: $build_async_events"
2089 echo " Async Image Preload.....: $build_async_preload"
2091 echo " Word Cache..............: $want_word_cache"
2092 echo " Metric Cache............: $want_metric_cache"
2094 echo " Pixman..................: $have_pixman"
2095 echo " Pixman Fonts............: $have_pixman_font"
2096 echo " Pixman Rects............: $have_pixman_rect"
2097 echo " Pixman Lines............: $have_pixman_line"
2098 echo " Pixman Polygons.........: $have_pixman_poly"
2099 echo " Pixman Images...........: $have_pixman_image"
2100 echo " Pixman Image ScaleSample: $have_pixman_image_scale_sample"
2102 echo " Tiled 32BPP rotate......: $have_tile_rotate"
2104 echo "ARGB Software Engine Options:"
2105 echo " Sampling Scaler.........: $scaler_sample"
2106 echo " Smooth Scaler...........: $scaler_smooth"
2107 # FIXME: add an mmx scaler routine
2108 echo " YUV Converter...........: $conv_yuv"
2109 # FIXME: add more YUV format and colorvariant support
2111 echo "ARGB Conversion Options:"
2112 echo " Smaller Dither Mask.....: $conv_small_dither"
2113 echo " Line Dither Mask........: $conv_line_dither"
2114 echo " No Dither Mask for 16bpp: $conv_no_dither"
2115 echo " 8bpp RGB 332............: $conv_8_rgb_332"
2116 echo " 8bpp RGB 666............: $conv_8_rgb_666"
2117 echo " 8bpp RGB 232............: $conv_8_rgb_232"
2118 echo " 8bpp RGB 222............: $conv_8_rgb_222"
2119 echo " 8bpp RGB 221............: $conv_8_rgb_221"
2120 echo " 8bpp RGB 121............: $conv_8_rgb_121"
2121 echo " 8bpp RGB 111............: $conv_8_rgb_111"
2122 echo " 8bpp Grayscale (256)....: $conv_8_gry_1"
2123 echo " 8bpp Grayscale (16).....: $conv_8_gry_16"
2124 echo " 8bpp Grayscale 64-pal...: $conv_8_grayscale_64"
2125 # FIXME: add grayscale and B&W support to standard x converters
2126 echo " 16bpp RGB 565...........: $conv_16_rgb_565"
2127 echo " 16bpp BGR 565...........: $conv_16_bgr_565"
2128 echo " 16bpp RGB 555...........: $conv_16_rgb_555"
2129 echo " 16bpp RGB 444...........: $conv_16_rgb_444"
2130 echo " 16bpp RGB 565 (444 ipaq): $conv_16_rgb_ipq"
2131 # FIXME: add 555 (444 ipaq) support
2132 # FIXME: add 30bpp support
2133 # FIXME: add palletted support (ugh!)
2134 # FIXME: add 8bpp and below rotation
2135 echo " 16bpp Rotation 0........: $conv_16_rgb_rot_0"
2136 echo " 16bpp Rotation 90.......: $conv_16_rgb_rot_90"
2137 echo " 16bpp Rotation 180......: $conv_16_rgb_rot_180"
2138 echo " 16bpp Rotation 270......: $conv_16_rgb_rot_270"
2139 echo " 24bpp RGB 888...........: $conv_24_rgb_888"
2140 echo " 24bpp BGR 888...........: $conv_24_bgr_888"
2141 echo " 24bpp RGB 666 (666 ezx).: $conv_24_rgb_ezx"
2142 # FIXME: add 24bpp rotation
2143 echo " 32bpp RGB 8888..........: $conv_32_rgb_8888"
2144 echo " 32bpp RGBX 8888.........: $conv_32_rgbx_8888"
2145 echo " 32bpp BGR 8888..........: $conv_32_bgr_8888"
2146 echo " 32bpp BGRX 8888.........: $conv_32_bgrx_8888"
2147 echo " 32bpp RGB 666 (666 ezx).: $conv_32_rgb_ezx"
2148 echo " 32bpp Rotation 0........: $conv_32_rgb_rot_0"
2149 echo " 32bpp Rotation 90.......: $conv_32_rgb_rot_90"
2150 echo " 32bpp Rotation 180......: $conv_32_rgb_rot_180"
2151 echo " 32bpp Rotation 270......: $conv_32_rgb_rot_270"
2153 echo "Documentation.............: ${build_doc}"
2154 echo "Examples..................: install:${install_examples} build:${build_examples}"
2155 if test "x${enable_tests}" = "xyes" ; then
2156 echo "Tests.....................: ${enable_tests} (make check)"
2158 echo "Tests.....................: ${enable_tests}"
2160 if test "x${enable_coverage}" = "xyes" ; then
2161 echo "Coverage..................: ${enable_coverage} (make coverage)"
2163 echo "Coverage..................: ${enable_coverage}"
2166 echo "Compilation............: make (or gmake)"
2167 echo " CPPFLAGS.............: $CPPFLAGS"
2168 echo " CFLAGS...............: $CFLAGS"
2169 echo " CXXFLAGS.............: $CXXFLAGS"
2170 echo " LDFLAGS..............: $LDFLAGS"
2172 echo "Installation...........: make install (as root if needed, with 'su' or 'sudo')"
2173 echo " prefix...............: $prefix"
2175 if test "x${have_static_module}" = "xyes" ; then
2176 echo -e "\0033\01331;31mWarning\0033\01331;0m: You are trying to link statically one or more modules to Evas."
2177 echo " You must know what you are doing, or else you will have a lot of"
2178 echo " problems. And Kenny will be killed."
2179 echo " Think about that."