1 # get rid of that stupid cache mechanism
4 AC_INIT(evas, 0.9.9.050, enlightenment-devel@lists.sourceforge.net)
6 AC_CONFIG_SRCDIR(configure.ac)
11 AM_INIT_AUTOMAKE(1.6 dist-bzip2)
12 AM_CONFIG_HEADER(config.h)
23 define([AC_LIBTOOL_LANG_F77_CONFIG], [:])dnl
26 VMAJ=`echo $PACKAGE_VERSION | awk -F. '{printf("%s", $1);}'`
27 VMIN=`echo $PACKAGE_VERSION | awk -F. '{printf("%s", $2);}'`
28 VMIC=`echo $PACKAGE_VERSION | awk -F. '{printf("%s", $3);}'`
29 SNAP=`echo $PACKAGE_VERSION | awk -F. '{printf("%s", $4);}'`
30 version_info=`expr $VMAJ + $VMIN`":$VMIC:$VMIN"
31 AC_SUBST(version_info)
34 want_fontconfig="auto"
36 want_evas_engine_buffer="yes"
37 want_evas_engine_software_x11="no"
38 want_evas_engine_xrender_x11="no"
39 want_evas_engine_gl_x11="no"
40 want_evas_engine_glitz_x11="no"
41 want_evas_engine_cairo_x11="no"
42 want_evas_engine_software_xcb="no"
43 want_evas_engine_xrender_xcb="no"
44 want_evas_engine_software_ddraw="no"
45 want_evas_engine_direct3d="no"
46 want_evas_engine_quartz="no"
47 want_evas_engine_gl_glew="no"
48 want_evas_engine_software_sdl="no"
49 want_evas_engine_fb="no"
50 want_evas_engine_directfb="no"
51 want_evas_engine_software_qtopia="no"
52 want_evas_engine_software_16_x11="no"
53 want_evas_engine_software_16_ddraw="no"
54 want_evas_engine_software_16_wince="no"
56 want_evas_image_loader_edb="yes"
57 want_evas_image_loader_eet="yes"
58 want_evas_image_loader_gif="yes"
59 want_evas_image_loader_jpeg="yes"
60 want_evas_image_loader_pmaps="yes"
61 want_evas_image_loader_png="yes"
62 want_evas_image_loader_svg="yes"
63 want_evas_image_loader_tiff="yes"
64 want_evas_image_loader_xpm="yes"
66 want_evas_font_loader_eet="yes"
71 want_evas_engine_software_16_wince="yes"
72 want_evas_image_loader_edb="no"
73 want_evas_image_loader_gif="no"
74 want_evas_image_loader_svg="no"
75 want_evas_image_loader_tiff="no"
78 want_evas_engine_software_ddraw="yes"
79 want_evas_engine_direct3d="yes"
80 want_evas_engine_software_16_ddraw="yes"
81 want_evas_image_loader_edb="no"
82 want_evas_image_loader_svg="no"
85 want_evas_engine_quartz="auto"
88 want_evas_engine_software_x11="auto"
89 want_evas_engine_xrender_x11="auto"
90 want_evas_engine_software_16_x11="auto"
97 MODULE_ARCH="$host_os-$host_cpu"
99 AC_DEFINE_UNQUOTED(MODULE_ARCH, "$MODULE_ARCH", "Module architecture")
103 dnl wierd debian etch bug where pthread_barrier doesn't work without adding
105 CFLAGS="${CFLAGS=} -D_GNU_SOURCE"
110 lt_enable_auto_import=""
113 PKG_CHECK_MODULES(EVIL, evil)
114 AC_DEFINE(HAVE_EVIL, 1, [Set to 1 if evil package is installed])
115 dnl needed for correct definition of EAPI
116 AC_DEFINE(EFL_EVAS_BUILD, 1, [Define to mention that evas is built])
117 if test "$host_os" = "cegcc" ; then
118 WIN32_CPPFLAGS="-D_WIN32_WCE=0x0420"
119 WIN32_CFLAGS="-mwin32"
120 lt_enable_auto_import="-Wl,--enable-auto-import"
122 if test "$host_os" = "mingw32ce" ; then
123 WIN32_CPPFLAGS="-D_WIN32_WCE=0x0420"
127 AC_SUBST(WIN32_CPPFLAGS)
128 AC_SUBST(WIN32_CFLAGS)
129 AC_SUBST(lt_enable_auto_import)
132 dnl when used, that option makes configure script fails when
133 dnl a requirement is selected, but not met.
134 AC_ARG_ENABLE(strict,
136 [enable strict mode]),
141 #####################################################################
142 # Check evas strong dependencie
144 PKG_CHECK_MODULES([EINA], [eina-0])
146 PKG_CHECK_MODULES([FREETYPE], [freetype2 >= 9.3.0])
148 #######################################
149 ## Simple X11 build/link
151 AC_ARG_ENABLE(simple-x11,
152 AC_HELP_STRING([--enable-simple-x11], [enable simple x11 linking]),
153 [ want_evas_simple_x11=$enableval ]
156 #######################################
160 AC_ARG_ENABLE(fontconfig,
162 [--disable-fontconfig],
163 [disable fontconfig for finding fonts. [[default=enabled]]]
165 [ want_fontconfig=$enableval ]
168 if test "x$want_fontconfig" = "xyes" -o "x$want_fontconfig" = "xauto" ; then
169 # Check if really available
170 PKG_CHECK_MODULES(FONTCONFIG, fontconfig,
172 have_fontconfig="yes"
173 AC_DEFINE(HAVE_FONTCONFIG, 1, [have fontconfig searching capabilities])
176 if test "x$want_fontconfig" = "xyes" -a "x$use_strict" = "xyes" ; then
177 AC_MSG_ERROR([Fontconfig not found (strict dependencies checking)])
189 AC_DEFINE(HAVE_DLADDR)
192 dnl nothing on mingw platform
195 AC_CHECK_FUNCS(dlopen, res=yes, res=no)
196 if test "x$res" = "xyes"; then
197 AC_CHECK_FUNCS(dladdr, AC_DEFINE(HAVE_DLADDR))
199 AC_CHECK_LIB(dl, dlopen, res=yes, res=no)
200 if test "x$res" = "xyes"; then
201 AC_CHECK_LIB(dl, dladdr, AC_DEFINE(HAVE_DLADDR))
204 AC_MSG_ERROR(Cannot find dlopen)
208 AC_SUBST(dlopen_libs)
210 AC_CHECK_HEADER([fnmatch.h],
212 [AC_MSG_ERROR([Cannot find fnmatch.h. Make sure your CFLAGS environment variable contains include lines for the location of this file. MinGW users: see the INSTALL file])])
214 AC_CHECK_FUNCS([fnmatch], [res="yes"], [res="no"])
215 if test "x$res" = "xno"; then
216 AC_SEARCH_LIBS([fnmatch],
217 [fnmatch evil iberty],
220 if test "x$res" = "xno"; then
221 AC_MSG_ERROR([Cannot find fnmatch() in neither libc nor libfnmatch, nor libiberty, nor libevil])
225 #####################################################################
228 EVAS_CHECK_ENGINE([buffer], [${want_evas_engine_buffer}], [no], [Buffer])
230 EVAS_CHECK_ENGINE([software-x11], [${want_evas_engine_software_x11}], [yes], [Software X11])
232 EVAS_CHECK_ENGINE([xrender-x11], [${want_evas_engine_xrender_x11}], [yes], [XRender X11])
234 EVAS_CHECK_ENGINE([gl-x11], [${want_evas_engine_gl_x11}], [yes], [OpenGL X11])
236 EVAS_CHECK_ENGINE([glitz-x11], [${want_evas_engine_glitz_x11}], [yes], [Glitz X11])
238 EVAS_CHECK_ENGINE([cairo-x11], [${want_evas_engine_cairo_x11}], [yes], [Cairo X11])
240 EVAS_CHECK_ENGINE([software-xcb], [${want_evas_engine_software_xcb}], [no], [Software XCB])
242 EVAS_CHECK_ENGINE([xrender-xcb], [${want_evas_engine_xrender_xcb}], [no], [XRender XCB])
244 EVAS_CHECK_ENGINE([software-ddraw], [${want_evas_engine_software_ddraw}], [no], [Software DirectDraw])
246 EVAS_CHECK_ENGINE([direct3d], [${want_evas_engine_direct3d}], [no], [Direct3D])
248 EVAS_CHECK_ENGINE([quartz], [${want_evas_engine_quartz}], [no], [Quartz])
250 EVAS_CHECK_ENGINE([gl-glew], [${want_evas_engine_gl_glew}], [no], [OpenGL Glew])
252 EVAS_CHECK_ENGINE([software-sdl], [${want_evas_engine_software_sdl}], [no], [Software SDL])
254 EVAS_CHECK_ENGINE([fb], [${want_evas_engine_fb}], [no], [Framebuffer])
256 EVAS_CHECK_ENGINE([directfb], [${want_evas_engine_directfb}], [no], [DirectFB])
258 EVAS_CHECK_ENGINE([software-qtopia], [${want_evas_engine_software_qtopia}], [no], [Qtopia])
260 EVAS_CHECK_ENGINE([software-16-x11], [${want_evas_engine_software_16_x11}], [yes], [Software X11 16 bits])
262 EVAS_CHECK_ENGINE([software-16-ddraw], [${want_evas_engine_software_16_ddraw}], [no], [Software DirectDraw 16 bits])
264 EVAS_CHECK_ENGINE([software-16-wince], [${want_evas_engine_software_16_wince}], [no], [Software Windows CE 16 bits])
267 have_evas_engine_cairo_common="no"
268 if test "x${have_evas_engine_cairo_x11}" = "xyes" ; then
269 have_evas_engine_cairo_common="yes"
270 AC_DEFINE([BUILD_ENGINE_CAIRO_COMMON], [1], [Generic Cairo Rendering Support])
272 AM_CONDITIONAL([BUILD_ENGINE_CAIRO_COMMON], [test "x$have_evas_engine_cairo_common" = "xyes"])
275 have_evas_engine_gl_common="no"
276 if test "x$have_evas_engine_gl_x11" = "xyes" -o "x$have_evas_engine_gl_glew" = "xyes"; then
277 AC_DEFINE(BUILD_ENGINE_GL_COMMON, 1, [Generic OpenGL Rendering Support])
278 have_evas_engine_gl_common="yes"
279 evas_engine_gl_common_libs="-lglu32"
282 if test "x$have_evas_engine_gl_x11" = "xyes" ; then
283 evas_engine_gl_common_libs="-lGL -lGLU -lpthread"
286 if test "x$have_evas_engine_gl_glew" = "xyes" ; then
287 evas_engine_gl_common_libs="-lglu32"
289 AC_SUBST([evas_engine_gl_common_libs])
291 AM_CONDITIONAL(BUILD_ENGINE_GL_COMMON, test "x$have_evas_engine_gl_common" = "xyes")
296 AC_ARG_ENABLE([sdl-primitive],
297 [AC_HELP_STRING([--enable-sdl-primitive], [])],
298 [sdl_primitive=${enableval}]
300 AC_MSG_CHECKING([whether to use SDL primitive when possible])
301 AC_MSG_RESULT([${sdl_primitive}])
303 if test "x${sdl_primitive}" = "xyes" ; then
304 AC_DEFINE([ENGINE_SDL_PRIMITIVE], [1], [Use SDL primitive when possible])
307 # if software 16 x11 is enabled - build software_16 (the generic 16bit
308 # engine). later enable it fb_16 or other "16" bit engines are enabled.
309 have_evas_engine_software_16="no"
310 if test "x$have_evas_engine_software_16_x11" = "xyes"; then
311 have_evas_engine_software_16="yes"
313 if test "x$have_evas_engine_software_sdl" = "xyes"; then
314 have_evas_engine_software_16="yes"
316 if test "x$have_evas_engine_software_16_ddraw" = "xyes"; then
317 have_evas_engine_software_16="yes"
319 if test "x$have_evas_engine_software_16_wince" = "xyes"; then
320 have_evas_engine_software_16="yes"
322 AM_CONDITIONAL(BUILD_ENGINE_SOFTWARE_16, test "x$have_evas_engine_software_16" = "xyes")
325 #####################################################################
328 EVAS_CHECK_IMAGE_LOADER([Edb], [${want_evas_image_loader_edb}])
330 EVAS_CHECK_IMAGE_LOADER([Eet], [${want_evas_image_loader_eet}])
331 EVAS_CHECK_FONT_LOADER([${want_evas_font_loader_eet}])
333 EVAS_CHECK_IMAGE_LOADER([Gif], [${want_evas_image_loader_gif}])
335 have_evas_image_saver_jpeg="no"
336 EVAS_CHECK_IMAGE_LOADER([Jpeg], [${want_evas_image_loader_jpeg}])
338 dnl Windows has no sigsetjmp function, nor equivalent.
339 dnl So we disable the jpeg saver.
340 dnl TODO: must find a workaround
345 if test "x${have_evas_image_loader_jpeg}" = "xyes" ; then
346 have_evas_image_saver_jpeg="yes"
350 AM_CONDITIONAL([BUILD_SAVER_JPEG], [test "x${have_evas_image_saver_jpeg}" = "xyes"])
352 EVAS_CHECK_IMAGE_LOADER([PMAPS], [${want_evas_image_loader_pmaps}])
354 EVAS_CHECK_IMAGE_LOADER([PNG], [${want_evas_image_loader_png}])
356 EVAS_CHECK_IMAGE_LOADER([SVG], [${want_evas_image_loader_svg}])
358 EVAS_CHECK_IMAGE_LOADER([Tiff], [${want_evas_image_loader_tiff}])
360 EVAS_CHECK_IMAGE_LOADER([XPM], [${want_evas_image_loader_xpm}])
363 #####################################################################
364 ## Cpu based optimizations
366 #######################################
373 # basic pthread support
374 AC_CHECK_HEADER(pthread.h,
383 # sched_getaffinity pthread_attr_setaffinity_np
384 AC_CHECK_HEADERS(pthread.h sched.h,
386 AC_CHECK_LIB(pthread, pthread_attr_setaffinity_np,
388 AC_CHECK_LIB(pthread, pthread_barrier_wait,
389 [ build_pthreads="yes" ],
390 [ build_pthreads="no" ]
393 [ build_pthreads="no" ]
396 [ build_pthreads="no" ]
398 ### disable pthreads by default for now - some wierd deadlock issue with
399 # barriers (makes no sense)
401 AC_MSG_CHECKING(whether to build pthread code)
402 AC_ARG_ENABLE(pthreads,
403 AC_HELP_STRING([--enable-pthreads], [enable threaded rendering]),
405 if test "x$enableval" = "xyes" ; then
406 if test "x$build_pthreads" = "xyes"; then
408 AC_DEFINE(BUILD_PTHREAD, 1, [Build Threaded Rendering])
412 if "x$use_strict" = "xyes"; then
413 AC_MSG_ERROR(pthreads headers or functions not found (strict dependencies checking))
415 AC_MSG_RESULT(no: pthread headers or functions not found)
424 AC_MSG_RESULT($build_pthreads)
425 if test "x$build_pthreads" = "xyes" ; then
426 AC_DEFINE(BUILD_PTHREAD, 1, [Build Threaded Rendering])
432 #######################################
434 build_async_events="auto"
435 AC_MSG_CHECKING(whether to build Async Events support)
436 AC_ARG_ENABLE(async-events,
437 AC_HELP_STRING([--enable-async-events], [enable async events support]),
438 [ build_async_events=$enableval ]
440 AC_MSG_RESULT($build_async_events)
442 AC_MSG_CHECKING(whether we can build Async Events support)
443 if test \( "x$build_async_events" = "xyes" -o "x$build_async_events" = "xauto" \) -a "x$has_pthreads" = "xyes"; then
445 AC_DEFINE(BUILD_ASYNC_EVENTS, 1, [Build async events support])
446 build_async_events="yes"
450 build_async_events="no"
453 #######################################
454 ## Async image preload
455 build_async_preload="auto"
456 AC_MSG_CHECKING(whether to build Async Image Preload support)
457 AC_ARG_ENABLE(async-preload,
458 AC_HELP_STRING([--enable-async-preload], [enable async image preloading support]),
459 [ build_async_preload=$enableval ]
461 AC_MSG_RESULT($build_async_preload)
463 AC_MSG_CHECKING(whether we can build Async Image Preload support)
464 if test \( "x$build_async_preload" = "xyes" -o "x$build_async_preload" = "xauto" \) -a "x$build_async_events" = "xyes"; then
466 AC_DEFINE(BUILD_ASYNC_PRELOAD, 1, [Build async image preload support])
467 build_async_preload="yes"
471 build_async_preload="no"
474 #######################################
475 ## Link with pthread if needed
476 AC_MSG_CHECKING(whether we should link with pthread)
477 if test "x$need_pthreads" = "xyes"; then
480 pthread_libs="-lpthread"
485 #######################################
496 AC_MSG_CHECKING(whether to build mmx code)
497 AC_ARG_ENABLE(cpu-mmx,
498 AC_HELP_STRING([--enable-cpu-mmx], [enable mmx code]),
500 if test "x$enableval" = "xyes" ; then
502 AC_DEFINE(BUILD_MMX, 1, [Build MMX Code])
510 AC_MSG_RESULT($build_cpu_mmx)
511 if test "x$build_cpu_mmx" = "xyes" ; then
512 AC_DEFINE(BUILD_MMX, 1, [Build MMX Code])
517 #######################################
528 AC_MSG_CHECKING(whether to build sse code)
529 AC_ARG_ENABLE(cpu-sse,
530 AC_HELP_STRING([--enable-cpu-sse], [enable sse code]),
532 if test "x$enableval" = "xyes" ; then
534 AC_DEFINE(BUILD_SSE, 1, [Build SSE Code])
542 AC_MSG_RESULT($build_cpu_sse)
543 if test "x$build_cpu_sse" = "xyes" ; then
544 AC_DEFINE(BUILD_SSE, 1, [Build SSE Code])
549 #######################################
551 build_cpu_altivec="no"
554 build_cpu_altivec="auto"
558 AC_MSG_CHECKING(whether to build altivec code)
559 AC_ARG_ENABLE(cpu-altivec,
560 AC_HELP_STRING([--enable-cpu-altivec], [enable altivec code]),
561 [ build_cpu_altivec=$enableval ],
563 if test ! "x$build_cpu_altivec" = "xauto"; then
564 build_cpu_altivec="no"
568 AC_MSG_RESULT($build_cpu_altivec)
570 if test "x$build_cpu_altivec" = "xyes"; then
571 AC_CHECK_HEADER(altivec.h,
573 AC_DEFINE(BUILD_ALTIVEC, 1, [Build Altivec Code])
574 AC_DEFINE(HAVE_ALTIVEC_H, 1, [Have altivec.h header file])
575 build_cpu_altivec="yes"
579 save_CPPFLAGS=$CPPFLAGS
580 CFLAGS=$CFLAGS" -maltivec"
581 CPPFLAGS=$CPPFLAGS" -maltivec"
582 unset ac_cv_header_altivec_h
583 AC_CHECK_HEADER(altivec.h,
585 AC_DEFINE(BUILD_ALTIVEC, 1, [Build Altivec Code])
586 AC_DEFINE(HAVE_ALTIVEC_H, 1, [Have altivec.h header file])
587 build_cpu_altivec="yes"
590 if test "x$build_cpu_altivec" = "xyes" -a "x$use_strict" = "xyes" ; then
591 AC_MSG_ERROR(Altivec not found (strict dependencies checking))
593 build_cpu_altivec="no"
597 CPPFLAGS=$save_CPPFLAGS
602 if test "x$build_cpu_altivec" = "xyes"; then
603 AC_MSG_CHECKING(whether to use altivec compiler flag)
604 if test "x$GCC" = "xyes"; then
605 if echo "int main(){return 0;}" | ${CPP} -faltivec - > /dev/null 2>&1; then
606 altivec_cflags="-faltivec"
607 AC_DEFINE(BUILD_ALTIVEC, 1, [Build Altivec Code])
608 elif echo "int main(){return 0;}" | ${CPP} -maltivec - > /dev/null 2>&1; then
609 altivec_cflags="-maltivec"
610 AC_DEFINE(BUILD_ALTIVEC, 1, [Build Altivec Code])
613 AC_MSG_RESULT($altivec_cflags)
614 CFLAGS="$CFLAGS $altivec_cflags"
617 #######################################
625 AC_MSG_CHECKING(whether to build neon code)
626 AC_ARG_ENABLE(cpu-neon,
627 AC_HELP_STRING([--enable-cpu-neon], [enable neon code]),
629 if test "x$enableval" = "xyes" ; then
631 AC_DEFINE(BUILD_NEON, 1, [Build NEON Code])
639 AC_MSG_RESULT($build_cpu_neon)
640 if test "x$build_cpu_neon" = "xyes" ; then
641 AC_DEFINE(BUILD_NEON, 1, [Build NEON Code])
646 #######################################
650 AC_MSG_CHECKING(whether to build c code)
652 AC_HELP_STRING([--enable-cpu-c], [enable C code]),
654 if test "x$enableval" = "xyes" ; then
656 AC_DEFINE(BUILD_C, 1, [Build plain C code])
663 AC_MSG_RESULT($build_cpu_c)
664 if test "x$build_cpu_c" = "xyes" ; then
665 AC_DEFINE(BUILD_C, 1, [Build plain C code])
670 #######################################
672 want_evas_magic_debug="yes"
673 AC_MSG_CHECKING(whether to check magic for evas object)
674 AC_ARG_ENABLE(evas-magic-debug,
676 [--disable-evas-magic-debug],
677 [disable MAGIC_DEBUG check when people pass in wrong object type. [[default=enabled]]]
679 [ want_evas_magic_debug="$enableval" ]
681 AC_MSG_RESULT($want_evas_magic_debug)
683 AM_CONDITIONAL(EVAS_MAGIC_DEBUG, test "x$want_evas_magic_debug" = "xyes")
684 if test "x$want_evas_magic_debug" = "xyes"; then
685 AC_DEFINE(EVAS_MAGIC_DEBUG, 1, [complain when peole pass in wrong object types etc.])
688 #####################################################################
689 ## ARGB engine options
691 #######################################
692 ## Nearest sampling scaler
695 AC_MSG_CHECKING(whether to build sampling scaler)
696 AC_ARG_ENABLE(scale-sample,
697 AC_HELP_STRING([--enable-scale-sample], [enable sampling scaler code]),
699 if test "x$enableval" = "xyes" ; then
701 AC_DEFINE(BUILD_SCALE_SAMPLE, 1, [Sampling Scaler Support])
708 AC_MSG_RESULT($scaler_sample)
709 if test "x$scaler_sample" = "xyes" ; then
710 AC_DEFINE(BUILD_SCALE_SAMPLE, 1, [Sampling Scaler Support])
715 #######################################
716 ## Smooth super and sub sampling scaler
719 AC_MSG_CHECKING(whether to build smooth scaler)
720 AC_ARG_ENABLE(scale-smooth,
721 AC_HELP_STRING([--enable-scale-smooth], [enable smooth scaler code]),
723 if test "x$enableval" = "xyes" ; then
725 AC_DEFINE(BUILD_SCALE_SMOOTH, 1, [Smooth Scaler Support])
732 AC_MSG_RESULT($scaler_smooth)
733 if test "x$scaler_smooth" = "xyes" ; then
734 AC_DEFINE(BUILD_SCALE_SMOOTH, 1, [Smooth Scaler Support])
739 #######################################
740 ## YUV -> ARGB converter
743 AC_MSG_CHECKING(whether to build yuv converter code)
744 AC_ARG_ENABLE(convert-yuv,
745 AC_HELP_STRING([--enable-convert-yuv], [enable yuv converter code]),
747 if test "x$enableval" = "xyes" ; then
749 AC_DEFINE(BUILD_CONVERT_YUV, 1, [YUV Converter Support])
756 AC_MSG_RESULT($conv_yuv)
757 if test "x$conv_yuv" = "xyes" ; then
758 AC_DEFINE(BUILD_CONVERT_YUV, 1, [YUV Converter Support])
763 #####################################################################
764 ## Output rendering features
766 #######################################
767 ## Small dither mask instead of big one (lower quality)
768 conv_small_dither="no"
769 AC_MSG_CHECKING(whether to build small dither mask code)
770 AC_ARG_ENABLE(small-dither-mask,
771 AC_HELP_STRING([--enable-small-dither-mask], [enable small dither mask code]),
773 if test "x$enableval" = "xyes" ; then
775 AC_DEFINE(BUILD_SMALL_DITHER_MASK, 1, [Small Dither Mask Support])
776 conv_small_dither="yes"
779 conv_small_dither="no"
782 AC_MSG_RESULT($conv_small_dither)
783 if test "x$conv_small_dither" = "xyes" ; then
784 AC_DEFINE(BUILD_SMALL_DITHER_MASK, 1, [Small Dither Mask Support])
789 #######################################
790 ## Alternate Line dither mask instead of big one (lower quality - but fastest)
791 conv_line_dither="no"
792 AC_MSG_CHECKING(whether to build line dither mask code)
793 AC_ARG_ENABLE(line-dither-mask,
794 AC_HELP_STRING([--enable-line-dither-mask], [enable line dither mask code]),
796 if test "x$enableval" = "xyes" ; then
798 AC_DEFINE(BUILD_LINE_DITHER_MASK, 1, [Line Dither Mask Support])
799 conv_line_dither="yes"
802 conv_line_dither="no"
805 AC_MSG_RESULT($conv_line_dither)
806 if test "x$conv_line_dither" = "xyes" ; then
807 AC_DEFINE(BUILD_LINE_DITHER_MASK, 1, [Line Dither Mask Support])
812 #######################################
813 ## No dither mask at all for 16bpp
815 AC_MSG_CHECKING(whether to build without dither mask for 16bpp)
816 AC_ARG_ENABLE(no-dither-mask,
817 AC_HELP_STRING([--enable-no-dither-mask], [enable conversion to 16bpp without dither mask]),
819 if test "x$enableval" = "xyes" ; then
821 AC_DEFINE(BUILD_NO_DITHER_MASK, 1, [No Dither Mask Support])
828 AC_MSG_RESULT($conv_no_dither)
829 if test "x$conv_no_dither" = "xyes" ; then
830 AC_DEFINE(BUILD_NO_DITHER_MASK, 1, [No Dither Mask Support])
835 #######################################
836 ## Convert to 8bpp RGB 332
837 EVAS_CONVERT_COLOR(8, RGB, 332, [yes])
838 ## Convert to 8bpp RGB 666
839 EVAS_CONVERT_COLOR(8, RGB, 666, [yes])
840 ## Convert to 8bpp RGB 232
841 EVAS_CONVERT_COLOR(8, RGB, 232, [yes])
842 ## Convert to 8bpp RGB 222
843 EVAS_CONVERT_COLOR(8, RGB, 222, [yes])
844 ## Convert to 8bpp RGB 221
845 EVAS_CONVERT_COLOR(8, RGB, 221, [yes])
846 ## Convert to 8bpp RGB 121
847 EVAS_CONVERT_COLOR(8, RGB, 121, [yes])
848 ## Convert to 8bpp RGB 111
849 EVAS_CONVERT_COLOR(8, RGB, 111, [yes])
850 ## Convert to 16bpp RGB 565
851 EVAS_CONVERT_COLOR(16, RGB, 565)
852 ## Convert to 16bpp BGR 565
853 EVAS_CONVERT_COLOR(16, BGR, 565)
854 ## Convert to 16bpp RGB 555
855 EVAS_CONVERT_COLOR(16, RGB, 555)
856 ## Convert to 16bpp RGB 444
857 EVAS_CONVERT_COLOR(16, RGB, 444)
859 #######################################
860 ## Convert to 16bpp RGB 565 (444 ipaq)
861 conv_16_rgb_ipq="yes"
862 AC_MSG_CHECKING(whether to build 16bpp 565 (444 ipaq) converter code)
863 AC_ARG_ENABLE(convert-16-rgb-ipq,
864 AC_HELP_STRING([--disable-convert-16-rgb-ipq], [disable 16bpp 565 (444 ipaq) converter code]),
866 if test "x$enableval" = "xyes" ; then
867 AC_DEFINE(BUILD_CONVERT_16_RGB_454645, 1, [16bpp 565 (444 ipaq) Converter Support])
868 conv_16_rgb_ipq="yes"
873 if test "x$conv_16_rgb_ipq" = "xyes" ; then
874 AC_DEFINE(BUILD_CONVERT_16_RGB_454645, 1, [16bpp 565 (444 ipaq) Converter Support])
878 AC_MSG_RESULT($conv_16_rgb_ipq)
880 #######################################
881 ## Convert to 16bpp RGB with rotation of 0
882 EVAS_CONVERT_ROT(16, RGB, 0)
883 ## Convert to 16bpp RGB with rotation of 180
884 EVAS_CONVERT_ROT(16, RGB, 180)
885 ## Convert to 16bpp RGB with rotation of 270
886 EVAS_CONVERT_ROT(16, RGB, 270)
887 ## Convert to 16bpp RGB with rotation of 90
888 EVAS_CONVERT_ROT(16, RGB, 90)
890 #######################################
891 ## Convert to 24bpp RGB 888
892 EVAS_CONVERT_COLOR(24, RGB, 888)
893 ## Convert to 24bpp BGR 888
894 EVAS_CONVERT_COLOR(24, BGR, 888)
895 ## Convert to 32bpp RGB 8888
896 EVAS_CONVERT_COLOR(32, RGB, 8888)
897 ## Convert to 32bpp RGBX 8888
898 EVAS_CONVERT_COLOR(32, RGBX, 8888)
899 ## Convert to 32bpp BGR 8888
900 EVAS_CONVERT_COLOR(32, BGR, 8888)
901 ## Convert to 32bpp BGRX 8888
902 EVAS_CONVERT_COLOR(32, BGRX, 8888)
904 #######################################
905 ## Convert to 32bpp RGB with rotation of 0
906 EVAS_CONVERT_ROT(32, RGB, 0)
907 ## Convert to 32bpp RGB with rotation of 180
908 EVAS_CONVERT_ROT(32, RGB, 180)
909 ## Convert to 32bpp RGB with rotation of 270
910 EVAS_CONVERT_ROT(32, RGB, 270)
911 ## Convert to 32bpp RGB with rotation of 90
912 EVAS_CONVERT_ROT(32, RGB, 90)
918 AC_MSG_CHECKING(whether to enable build with valgrind)
919 AC_ARG_ENABLE(valgrind,
920 AC_HELP_STRING([--enable-valgrind], [enable valgrind fixes to stop false reports]),
921 [ want_valgrind=$enableval ]
923 AC_MSG_RESULT($want_valgrind)
925 if test x$want_valgrind = "xyes"; then
926 PKG_CHECK_MODULES(VALGRIND, valgrind >= 2.4.0,
928 AC_DEFINE(HAVE_VALGRIND, 1, [Valgrind support])
932 if test "x$want_valgrind" = "xyes" -a "x$use_strict" = "xyes" ; then
933 AC_MSG_ERROR([Valgrind not found (strict dependencies checking)])
939 EFL_CHECK_DOXYGEN([build_doc="yes"], [build_doc="no"])
940 #####################################################################
943 AC_SUBST(altivec_cflags)
944 AC_SUBST(pthread_cflags)
945 AC_SUBST(pthread_libs)
948 #####################################################################
960 evas-software-buffer.pc
961 evas-software-qtopia.pc
963 evas-software-16-x11.pc
967 evas-software-ddraw.pc
968 evas-software-16-ddraw.pc
970 evas-software-16-wince.pc
977 src/lib/canvas/Makefile
978 src/lib/data/Makefile
979 src/lib/file/Makefile
980 src/lib/imaging/Makefile
981 src/lib/cache/Makefile
982 src/lib/engines/Makefile
983 src/lib/engines/common/Makefile
984 src/lib/engines/common/evas_op_add/Makefile
985 src/lib/engines/common/evas_op_blend/Makefile
986 src/lib/engines/common/evas_op_copy/Makefile
987 src/lib/engines/common/evas_op_mask/Makefile
988 src/lib/engines/common/evas_op_mul/Makefile
989 src/lib/engines/common/evas_op_sub/Makefile
990 src/lib/engines/common_16/Makefile
992 src/modules/engines/Makefile
993 src/modules/engines/software_generic/Makefile
994 src/modules/engines/software_ddraw/Makefile
995 src/modules/engines/direct3d/Makefile
996 src/modules/engines/software_16_wince/Makefile
997 src/modules/engines/software_x11/Makefile
998 src/modules/engines/fb/Makefile
999 src/modules/engines/buffer/Makefile
1000 src/modules/engines/software_win32_gdi/Makefile
1001 src/modules/engines/software_qtopia/Makefile
1002 src/modules/engines/directfb/Makefile
1003 src/modules/engines/gl_common/Makefile
1004 src/modules/engines/gl_glew/Makefile
1005 src/modules/engines/gl_x11/Makefile
1006 src/modules/engines/quartz/Makefile
1007 src/modules/engines/cairo_common/Makefile
1008 src/modules/engines/cairo_x11/Makefile
1009 src/modules/engines/xrender_x11/Makefile
1010 src/modules/engines/software_sdl/Makefile
1011 src/modules/engines/glitz_x11/Makefile
1012 src/modules/engines/software_16/Makefile
1013 src/modules/engines/software_16_x11/Makefile
1014 src/modules/engines/software_16_ddraw/Makefile
1015 src/modules/engines/software_16_sdl/Makefile
1016 src/modules/loaders/Makefile
1017 src/modules/loaders/edb/Makefile
1018 src/modules/loaders/eet/Makefile
1019 src/modules/loaders/gif/Makefile
1020 src/modules/loaders/jpeg/Makefile
1021 src/modules/loaders/png/Makefile
1022 src/modules/loaders/tiff/Makefile
1023 src/modules/loaders/xpm/Makefile
1024 src/modules/loaders/svg/Makefile
1025 src/modules/loaders/pmaps/Makefile
1026 src/modules/savers/Makefile
1027 src/modules/savers/edb/Makefile
1028 src/modules/savers/eet/Makefile
1029 src/modules/savers/jpeg/Makefile
1030 src/modules/savers/png/Makefile
1031 src/modules/savers/tiff/Makefile
1032 src/lib/include/Makefile
1037 #####################################################################
1043 echo "------------------------------------------------------------------------"
1044 echo "$PACKAGE $VERSION"
1045 echo "------------------------------------------------------------------------"
1047 echo "Configuration Options Summary:"
1050 echo " Software Memory Buffer.....: $have_evas_engine_buffer"
1051 echo " Software X11...............: $have_evas_engine_software_x11 (XCB: $have_evas_engine_software_xcb)"
1052 echo " XRender X11................: $have_evas_engine_xrender_x11 (XCB: $have_evas_engine_xrender_xcb)"
1053 echo " OpenGL X11.................: $have_evas_engine_gl_x11"
1054 echo " Glitz X11..................: $have_evas_engine_glitz_x11"
1055 echo " Cairo X11..................: $have_evas_engine_cairo_x11"
1056 echo " XRender XCB................: $have_evas_engine_xrender_xcb"
1057 echo " Software DirectDraw........: $have_evas_engine_software_ddraw"
1058 echo " Direct3d...................: $have_evas_engine_direct3d"
1059 echo " Quartz.....................: $have_evas_engine_quartz"
1060 echo " OpenGL Glew................: $have_evas_engine_gl_glew"
1061 echo " Software SDL...............: $have_evas_engine_software_sdl (primitive: $sdl_primitive)"
1062 echo " Software Framebuffer.......: $have_evas_engine_fb"
1063 echo " DirectFB...................: $have_evas_engine_directfb"
1064 echo " Software Qtopia............: $have_evas_engine_software_qtopia"
1065 echo " Software 16bit ............: $have_evas_engine_software_16"
1066 echo " Software 16bit X11.........: $have_evas_engine_software_16_x11"
1067 echo " Software 16bit Directdraw..: $have_evas_engine_software_16_ddraw"
1068 echo " Software 16bit WinCE.......: $have_evas_engine_software_16_wince"
1069 echo " Software 16bit SDL.........: $have_evas_engine_software_sdl (primitive: $sdl_primitive)"
1070 # FIXME: opengl engine needs to be fixed and tested lots for all drivers
1072 echo "Image Loaders:"
1073 echo " EDB.....................: $have_evas_image_loader_edb"
1074 echo " EET.....................: $have_evas_image_loader_eet"
1075 echo " GIF.....................: $have_evas_image_loader_gif"
1076 echo " JPEG....................: $have_evas_image_loader_jpeg"
1077 echo " PMAPS...................: $have_evas_image_loader_pmaps"
1078 echo " PNG.....................: $have_evas_image_loader_png"
1079 echo " SVG.....................: $have_evas_image_loader_svg"
1080 echo " TIFF....................: $have_evas_image_loader_tiff"
1081 echo " XPM.....................: $have_evas_image_loader_xpm"
1082 # FIXME: need to add modular image loader system
1083 # FIXME: add more image loader modules
1085 echo "Font Sourcing Systems:"
1086 echo " EET.....................: $have_evas_font_loader_eet"
1088 echo "Font Searching Systems:"
1089 echo " Fontconfig..............: $have_fontconfig"
1090 # FIXME: add non freetype2 font engine support
1091 # FIXME: make freetype2 optional
1093 echo "CPU Specific Extensions:"
1094 echo " Fallback C Code.........: $build_cpu_c"
1095 echo " MMX.....................: $build_cpu_mmx"
1096 echo " SSE.....................: $build_cpu_sse"
1097 echo " ALTIVEC.................: $build_cpu_altivec"
1098 echo " NEON....................: $build_cpu_neon"
1099 echo " Thread Support..........: $build_pthreads"
1100 echo " MAGIC_DEBUG.............: $want_evas_magic_debug"
1102 echo "Async Events..............: $build_async_events"
1103 echo "Async Image Preload.......: $build_async_preload"
1105 echo "ARGB Software Engine Options:"
1106 echo " Sampling Scaler.........: $scaler_sample"
1107 echo " Smooth Scaler...........: $scaler_smooth"
1108 # FIXME: add an mmx scaler routine
1109 echo " YUV Converter...........: $conv_yuv"
1110 # FIXME: add more YUV format and colorvariant support
1112 echo "ARGB Conversion Options:"
1113 echo " Smaller Dither Mask.....: $conv_small_dither"
1114 echo " Line Dither Mask........: $conv_line_dither"
1115 echo " No Dither Mask for 16bpp: $conv_no_dither"
1116 echo " 8bpp RGB 332............: $conv_8_rgb_332"
1117 echo " 8bpp RGB 666............: $conv_8_rgb_666"
1118 echo " 8bpp RGB 232............: $conv_8_rgb_232"
1119 echo " 8bpp RGB 222............: $conv_8_rgb_222"
1120 echo " 8bpp RGB 221............: $conv_8_rgb_221"
1121 echo " 8bpp RGB 121............: $conv_8_rgb_121"
1122 echo " 8bpp RGB 111............: $conv_8_rgb_111"
1123 # FIXME: add grayscale and B&W support
1124 echo " 16bpp RGB 565...........: $conv_16_rgb_565"
1125 echo " 16bpp BGR 565...........: $conv_16_bgr_565"
1126 echo " 16bpp RGB 555...........: $conv_16_rgb_555"
1127 echo " 16bpp RGB 444...........: $conv_16_rgb_444"
1128 echo " 16bpp RGB 565 (444 ipaq): $conv_16_rgb_ipq"
1129 # FIXME: add 555 (444 ipaq) support
1130 # FIXME: add 24bpp 666 support
1131 # FIXME: add 32bpp 666 support
1132 # FIXME: add 30bpp support
1133 # FIXME: add palletted support
1134 # FIXME: add 8bpp and below rotation
1135 echo " 16bpp Rotation 0........: $conv_16_rgb_rot_0"
1136 echo " 16bpp Rotation 90.......: $conv_16_rgb_rot_90"
1137 echo " 16bpp Rotation 180......: $conv_16_rgb_rot_180"
1138 echo " 16bpp Rotation 270......: $conv_16_rgb_rot_270"
1139 echo " 24bpp RGB 888...........: $conv_24_rgb_888"
1140 echo " 24bpp BGR 888...........: $conv_24_bgr_888"
1141 # FIXME: add 24bpp rotation
1142 echo " 32bpp RGB 8888..........: $conv_32_rgb_8888"
1143 echo " 32bpp RGBX 8888.........: $conv_32_rgbx_8888"
1144 echo " 32bpp BGR 8888..........: $conv_32_bgr_8888"
1145 echo " 32bpp BGRX 8888.........: $conv_32_bgrx_8888"
1146 echo " 32bpp Rotation 0........: $conv_32_rgb_rot_0"
1147 echo " 32bpp Rotation 90.......: $conv_32_rgb_rot_90"
1148 echo " 32bpp Rotation 180......: $conv_32_rgb_rot_180"
1149 echo " 32bpp Rotation 270......: $conv_32_rgb_rot_270"
1151 echo "Documentation.............: ${build_doc}"
1153 echo "------------------------------------------------------------------------"
1155 echo "Now type 'make' ('gmake' on some systems) to compile $PACKAGE,"
1156 echo "and then afterwards as root (or the user who will install this), type"
1157 echo "'make install'. Change users with 'su' or 'sudo' appropriately."