Ecore: fix shm_open() check (can be in libc or librt)
[framework/uifw/ecore.git] / configure.ac
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' | sed 's/Unversioneddirectory/0/' | tr -d '\n']))
7 m4_if(v_rev, [0], [m4_define([v_rev], m4_esyscmd([git log 2> /dev/null | (grep -m1 git-svn-id || echo 0) | sed -e 's/.*@\([0-9]*\).*/\1/' | tr -d '\n']))])
8 ##--   When released, remove the dnl on the below line
9 m4_undefine([v_rev])
10 ##--   When doing snapshots - change soname. remove dnl on below line
11 dnl m4_define([relname], [ver-pre-svn-07])
12 dnl m4_define([v_rel], [-release relname])
13 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
14 m4_ifdef([v_rev], [m4_define([v_ver], [v_maj.v_min.v_mic.v_rev])], [m4_define([v_ver], [v_maj.v_min.v_mic])])
15 m4_define([lt_cur], m4_eval(v_maj + v_min))
16 m4_define([lt_rev], v_mic)
17 m4_define([lt_age], v_min)
18 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
19 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
20
21 AC_INIT([ecore], [v_ver]-alpha, [enlightenment-devel@lists.sourceforge.net])
22 AC_PREREQ([2.52])
23 AC_CONFIG_SRCDIR([configure.ac])
24 AC_CONFIG_MACRO_DIR([m4])
25
26 AC_CONFIG_HEADERS([config.h])
27 AH_TOP([
28 #ifndef EFL_CONFIG_H__
29 #define EFL_CONFIG_H__
30 ])
31 AH_BOTTOM([
32 #endif /* EFL_CONFIG_H__ */
33 ])
34
35 AM_INIT_AUTOMAKE([1.6 dist-bzip2])
36 m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
37
38 AC_GNU_SOURCE
39
40 AC_LIBTOOL_WIN32_DLL
41 define([AC_LIBTOOL_LANG_F77_CONFIG], [:])dnl
42 AC_PROG_LIBTOOL
43
44 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
45 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
46 m4_ifdef([v_rev], , [m4_define([v_rev], [0])])
47 m4_ifdef([v_rel], , [m4_define([v_rel], [])])
48 AC_DEFINE_UNQUOTED(VERS_MAJ, [v_maj], [Major version])
49 AC_DEFINE_UNQUOTED(VERS_MIN, [v_min], [Minor version])
50 AC_DEFINE_UNQUOTED(VERS_MIC, [v_mic], [Micro version])
51 AC_DEFINE_UNQUOTED(VERS_REV, [v_rev], [Revison])
52 version_info="lt_cur:lt_rev:lt_age"
53 release_info="v_rel"
54 AC_SUBST(version_info)
55 AC_SUBST(release_info)
56 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
57 ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
58 VMAJ=v_maj
59 AC_SUBST(VMAJ)
60
61 m4_ifdef([AM_GNU_GETTEXT_VERSION], [
62 AM_GNU_GETTEXT_VERSION([0.17])
63 ])
64
65 m4_ifdef([AM_GNU_GETTEXT], [
66 AM_GNU_GETTEXT([external])
67 po_makefile_in=po/Makefile.in
68 have_po="yes"
69 ],[
70 have_po="no"
71 ])
72 AC_SUBST(LTLIBINTL)
73
74 if test "x${POSUB}" = "x" ; then
75    have_po="no"
76 fi
77
78 AM_CONDITIONAL([HAVE_PO], [test "x${have_po}" = "xyes"])
79
80 with_max_log_level="<unset>"
81 AC_ARG_WITH(internal-maximum-log-level,
82    [AC_HELP_STRING([--with-internal-maximum-log-level=NUMBER],
83                    [limit ecore internal log level to the given number, any call to EINA_LOG() with values greater than this will be compiled out, ignoring runtime settings, but saving function calls.])],
84    [
85     if test "x${withval}" != "xno"; then
86        if echo "${withval}" | grep -E '^[[0-9]]+$' >/dev/null 2>/dev/null; then
87           AC_MSG_NOTICE([ignoring any EINA_LOG() with level greater than ${withval}])
88           AC_DEFINE_UNQUOTED(EINA_LOG_LEVEL_MAXIMUM, ${withval}, [if set, logging is limited to this amount.])
89           with_max_log_level="${withval}"
90        else
91           AC_MSG_ERROR([--with-internal-maximum-log-level takes a decimal number, got "${withval}" instead.])
92        fi
93     fi
94     ], [:])
95
96
97 ### Default options with respect to host
98
99 AC_CANONICAL_BUILD
100 AC_CANONICAL_HOST
101
102 # dependencies and options
103 want_curl="no"
104 want_local_sockets="yes"
105 want_abstract_sockets="no"
106 want_gnutls="no"
107 want_openssl="no"
108 want_cares="no"
109 want_cipher="no"
110 want_signature="no"
111 want_poll="yes"
112 want_inotify="no"
113 want_notify_win32="no"
114 want_tslib="no"
115 want_glib="no"
116
117 # core modules
118 want_ecore_con="yes"
119 want_ecore_ipc="yes"
120 want_ecore_file="yes"
121 #want_ecore_config="no"
122 want_ecore_imf="no"
123 want_ecore_input="yes"
124
125 # graphic system modules
126 want_evas_simple_x11="no"
127 want_ecore_x_xcb="no"
128 want_ecore_x="no"
129 want_ecore_win32="no"
130 want_ecore_cocoa="no"
131 want_ecore_sdl="no"
132 want_ecore_psl1ght="no"
133 want_ecore_fb="no"
134 want_ecore_directfb="no"
135 want_ecore_wince="no"
136 want_ecore_wayland="no"
137
138 # ecore_x options (both xlib and xcb)
139 want_ecore_x_composite="yes"
140 want_ecore_x_damage="yes"
141 want_ecore_x_dpms="yes"
142 want_ecore_x_randr="yes"
143 want_ecore_x_render="yes"
144 want_ecore_x_screensaver="yes"
145 want_ecore_x_shape="yes"
146 want_ecore_x_gesture="no"
147 want_ecore_x_sync="yes"
148 want_ecore_x_xfixes="yes"
149 want_ecore_x_xinerama="yes"
150 want_ecore_x_xprint="yes"
151 want_ecore_x_xtest="yes"
152 want_ecore_x_cursor="yes"
153 want_ecore_x_input="yes"
154 want_ecore_x_dri="yes"
155
156 # ecore_evas modules
157 want_ecore_evas="yes"
158 want_ecore_evas_software_buffer="yes"
159 want_ecore_evas_software_x11="no"
160 want_ecore_evas_opengl_x11="no"
161 want_ecore_evas_software_16_x11="no"
162 want_ecore_evas_software_8_x11="no"
163 want_ecore_evas_software_xcb="no"
164 want_ecore_evas_software_gdi="no"
165 want_ecore_evas_software_ddraw="no"
166 want_ecore_evas_direct3d="no"
167 want_ecore_evas_opengl_glew="no"
168 want_ecore_evas_software_16_ddraw="no"
169 want_ecore_evas_software_sdl="no"
170 want_ecore_evas_gl_sdl="no"
171 want_ecore_evas_gl_cocoa="no"
172 want_ecore_evas_psl1ght="no"
173 want_ecore_evas_directfb="no"
174 want_ecore_evas_fb="no"
175 want_ecore_evas_software_16_wince="no"
176 want_ecore_evas_ews="yes"
177 want_ecore_evas_extn="yes"
178 want_ecore_evas_wayland_shm="no"
179 want_ecore_evas_wayland_egl="no"
180
181 # ecore_imf modules
182 want_ecore_imf_xim="no"
183 want_ecore_imf_scim="no"
184
185 case "$host_os" in
186    mingw32ce*)
187       want_ecore_con="no"
188       want_ecore_ipc="no"
189       want_ecore_wince="yes"
190       want_ecore_evas_software_16_wince="yes"
191       want_ecore_evas_extn="no"
192       ;;
193    mingw*)
194       want_notify_win32="yes"
195       want_curl="yes"
196       want_glib="auto"
197       want_gnutls="auto"
198       want_openssl="auto"
199       want_ecore_imf="yes"
200       want_ecore_win32="yes"
201       want_ecore_evas_software_gdi="yes"
202       want_ecore_evas_software_ddraw="yes"
203       want_ecore_evas_direct3d="yes"
204       want_ecore_evas_opengl_glew="yes"
205       want_ecore_evas_software_16_ddraw="auto"
206       want_ecore_evas_software_sdl="yes"
207       want_ecore_evas_gl_sdl="yes"
208       ;;
209    darwin*)
210       want_curl="yes"
211       want_glib="auto"
212       want_gnutls="auto"
213       want_openssl="auto"
214       want_ecore_imf="yes"
215       want_ecore_cocoa="yes"
216       want_ecore_evas_software_sdl="yes"
217       want_ecore_evas_gl_sdl="yes"
218       want_ecore_evas_gl_cocoa="yes"
219       ;;
220    *)
221       want_curl="yes"
222       want_glib="auto"
223       want_abstract_sockets="yes"
224       want_gnutls="auto"
225       want_openssl="auto"
226       want_cipher="yes"
227       want_signature="yes"
228       want_inotify="yes"
229       want_tslib="yes"
230       want_ecore_fb="yes"
231       want_ecore_imf="yes"
232       want_ecore_x="yes"
233       want_ecore_wayland="yes"
234       want_ecore_evas_software_x11="yes"
235       want_ecore_evas_opengl_x11="yes"
236       want_ecore_evas_software_16_x11="yes"
237       want_ecore_evas_software_8_x11="yes"
238       want_ecore_evas_software_xcb="no"
239       want_ecore_evas_software_sdl="yes"
240       want_ecore_evas_gl_sdl="yes"
241       want_ecore_evas_gl_cocoa="no"
242       want_ecore_evas_directfb="yes"
243       want_ecore_evas_fb="yes"
244       want_ecore_evas_wayland_shm="yes"
245       want_ecore_evas_wayland_egl="yes"
246       want_ecore_imf_xim="yes"
247       want_ecore_imf_scim="yes"
248       ;;
249 esac
250
251 case "$host_vendor" in
252   ps3*)
253       want_local_sockets="no"
254       ;;
255 esac
256 requirements_ecore=""
257 requirements_ecore_con=""
258 #requirements_ecore_config=""
259 requirements_ecore_directfb=""
260 requirements_ecore_evas=""
261 requirements_ecore_fb=""
262 requirements_ecore_file=""
263 requirements_ecore_imf=""
264 requirements_ecore_imf_evas=""
265 requirements_ecore_input=""
266 requirements_ecore_input_evas=""
267 requirements_ecore_ipc=""
268 requirements_ecore_cocoa=""
269 requirements_ecore_sdl=""
270 requirements_ecore_psl1ght=""
271 requirements_ecore_x=""
272 requirements_ecore_win32=""
273 requirements_ecore_wince=""
274 requirements_ecore_imf_xim=""
275 requirements_ecore_imf_scim=""
276 requirements_ecore_wayland=""
277
278 ### Additional options to configure
279
280 want_glib_integration_always=no
281 AC_ARG_ENABLE(glib-integration-always,
282   AC_HELP_STRING([--enable-glib-integration-always], [enable glib integration when ecore_init() is called always]),
283   [want_glib_integration_always=$enableval])
284
285 if test "x${want_glib_integration_always}" = "xyes" ; then
286   AC_DEFINE([GLIB_INTEGRATION_ALWAYS], [1], [Always integrate glib if support compiled])
287   want_glib=yes
288 fi
289
290 want_g_main_loop=no
291 AC_ARG_ENABLE(g-main-loop,
292   AC_HELP_STRING([--enable-g-main-loop], [ecore_main_loop based on g_main_loop]),
293   [want_g_main_loop=$enableval])
294
295 if test "x${want_g_main_loop}" = "xyes" ; then
296   AC_DEFINE([USE_G_MAIN_LOOP], [1], [Use g_main_loop in ecore])
297   want_glib=yes
298 fi
299
300 if test "x${want_glib_integration_always}" = "xyes" -a "x${want_g_main_loop}" = "xyes"; then
301   AC_MSG_ERROR([--enable-glib-integration-always and --enable-glib-main-loop are mutually exclusive])
302 fi
303
304 # local sockets (ecore_con.c)
305 AC_ARG_ENABLE([local-sockets],
306    [AC_HELP_STRING([--disable-local-sockets], [disable local sockets.])],
307    [
308     if test "x${enableval}" = "xyes" ; then
309        want_ecore_con_local_sockets="yes"
310     else
311        want_ecore_con_local_sockets="no"
312     fi
313    ],
314    [want_ecore_con_local_sockets=${want_local_sockets}])
315
316 if test "x${want_ecore_con_local_sockets}" = "xyes" ; then
317    AC_DEFINE([HAVE_LOCAL_SOCKETS], [1], [Have local sockets support])
318 fi
319
320 # abstract sockets (ecore_con.c)
321 AC_ARG_ENABLE([abstract-sockets],
322    [AC_HELP_STRING([--disable-abstract-sockets], [disable abstract sockets.])],
323    [
324     if test "x${enableval}" = "xyes" ; then
325        want_ecore_con_abstract_sockets="yes"
326     else
327        want_ecore_con_abstract_sockets="no"
328     fi
329    ],
330    [want_ecore_con_abstract_sockets=${want_abstract_sockets}])
331
332 if test "x${want_ecore_con_abstract_sockets}" = "xyes" ; then
333    AC_DEFINE([HAVE_ABSTRACT_SOCKETS], [1], [Have abstract sockets namespace])
334 fi
335
336 # Simple X11 build/link
337
338 AC_ARG_ENABLE(simple-x11,
339   AC_HELP_STRING([--enable-simple-x11], [enable simple x11 linking]),
340   [want_evas_simple_x11=$enableval])
341
342 # XIM
343 AC_ARG_ENABLE([xim],
344    [AC_HELP_STRING([--disable-xim], [disable X Input Method.])],
345    [
346     if test "x${enableval}" = "xyes" ; then
347        want_xim="yes"
348     else
349        want_xim="no"
350     fi
351    ],
352    [want_xim="yes"])
353
354 if test "x${want_xim}" = "xyes" ; then
355    AC_DEFINE([ENABLE_XIM], [1], [Enable X Input Method])
356 fi
357
358 ### Checks for programs
359
360 m4_ifdef([AC_PROG_OBJC],
361    [
362     AC_PROG_OBJC
363     _AM_DEPENDENCIES(OBJC)
364    ],
365    [
366     AC_CHECK_TOOL([OBJC], [gcc])
367     AC_SUBST([OBJC])
368     AC_SUBST([OBJCFLAGS])
369    ])
370 m4_ifndef([am__fastdepOBJC], [
371     AM_CONDITIONAL([am__fastdepOBJC], [false])
372 ])
373
374 AC_PROG_CXX
375 AC_PROG_CC
376
377 have_gnu_objc=${ac_cv_objc_compiler_gnu}
378
379 # doxygen program for documentation building
380
381 EFL_CHECK_DOXYGEN([build_doc="yes"], [build_doc="no"])
382
383 m4_ifdef([v_mic],
384    [
385     EFL_COMPILER_FLAG([-Wall])
386     EFL_COMPILER_FLAG([-W])
387    ])
388
389 # The first call to PKG_CHECK_MODULES is done conditionally,
390 # so we should include this here:
391 PKG_PROG_PKG_CONFIG
392
393 # Check whether pkg-config supports Requires.private
394 if $PKG_CONFIG --atleast-pkgconfig-version 0.22; then
395    pkgconfig_requires_private="Requires.private"
396 else
397    pkgconfig_requires_private="Requires"
398 fi
399 AC_SUBST(pkgconfig_requires_private)
400
401 ### Checks for some build time option
402 have_backtrace="no"
403 AC_CHECK_FUNCS([backtrace], [have_backtrace="yes"], [])
404
405 want_ecore_timer_dump="no"
406
407 AC_ARG_ENABLE([ecore-timer-dump],
408    [AC_HELP_STRING([--disable-ecore-timer-dump], [disable tracking of timer allocation. @<:@default=enable@:>@])],
409    [want_ecore_timer_dump=$enableval], [])
410
411 if test "x$want_ecore_timer_dump" = "xyes" -a "x$have_backtrace" = "xyes"; then
412    AC_DEFINE(WANT_ECORE_TIMER_DUMP, [1], [Want Ecore_Timer dump infrastructure])
413 fi
414
415 ### Checks for libraries
416
417 # Evil library for compilation on Windows
418
419 case "$host_os" in
420    mingw*)
421       PKG_CHECK_MODULES([EVIL], [evil >= 1.0.0])
422       AC_DEFINE(HAVE_EVIL, 1, [Set to 1 if Evil library is installed])
423       requirements_ecore="evil ${requirements_ecore}"
424       requirements_ecore_evas="evil ${requirements_ecore_evas}"
425       requirements_ecore_file="evil ${requirements_ecore_file}"
426       requirements_ecore_imf="evil ${requirements_ecore_imf}"
427       requirements_ecore_imf_evas="evil ${requirements_ecore_imf_evas}"
428       EFL_ECORE_BUILD="-DEFL_ECORE_BUILD"
429       EFL_ECORE_CON_BUILD="-DEFL_ECORE_CON_BUILD"
430       EFL_ECORE_EVAS_BUILD="-DEFL_ECORE_EVAS_BUILD"
431       EFL_ECORE_FILE_BUILD="-DEFL_ECORE_FILE_BUILD"
432       EFL_ECORE_IMF_BUILD="-DEFL_ECORE_IMF_BUILD"
433       EFL_ECORE_IMF_EVAS_BUILD="-DEFL_ECORE_IMF_EVAS_BUILD"
434       EFL_ECORE_INPUT_BUILD="-DEFL_ECORE_INPUT_BUILD"
435       EFL_ECORE_INPUT_EVAS_BUILD="-DEFL_ECORE_INPUT_EVAS_BUILD"
436       EFL_ECORE_IPC_BUILD="-DEFL_ECORE_IPC_BUILD"
437       ;;
438 esac
439
440 have_win32=""
441 have_wince=""
442 case "$host_os" in
443    mingw32ce* | cegcc*)
444       EFL_ECORE_WINCE_BUILD="-DEFL_ECORE_WINCE_BUILD"
445       requirements_ecore_wince="evil ${requirements_ecore_wince}"
446       have_wince="yes"
447       ;;
448    mingw*)
449       EFL_ECORE_WIN32_BUILD="-DEFL_ECORE_WIN32_BUILD"
450       EFL_ECORE_SDL_BUILD="-DEFL_ECORE_SDL_BUILD"
451       requirements_ecore_win32="evil ${requirements_ecore_win32}"
452       requirements_ecore_sdl="evil ${requirements_ecore_sdl}"
453       have_win32="yes"
454       ;;
455 esac
456
457 have_ps3=""
458 case "$host_vendor" in
459   ps3*)
460       have_ps3="yes"
461       PKG_CHECK_MODULES([ESCAPE], [escape])
462       CFLAGS="$CFLAGS $ESCAPE_CFLAGS"
463       AC_DEFINE(HAVE_ESCAPE, 1, [Set to 1 if Escape library is installed])
464       EFL_ECORE_PSL1GHT_BUILD="-DEFL_ECORE_PSL1GHT_BUILD"
465       requirements_ecore="escape ${requirements_ecore}"
466       requirements_ecore_evas="escape ${requirements_ecore_evas}"
467       requirements_ecore_file="escape ${requirements_ecore_file}"
468       requirements_ecore_imf="escape ${requirements_ecore_imf}"
469       requirements_ecore_imf_evas="escape ${requirements_ecore_imf_evas}"
470       requirements_ecore_sdl="escape ${requirements_ecore_sdl}"
471       want_ecore_psl1ght="yes"
472       want_ecore_evas_psl1ght="yes"
473       ;;
474 esac
475
476
477 ### Checks for portability layer
478
479 PKG_CHECK_MODULES([EXOTIC],
480    [exotic],
481    [enable_exotic="yes"],
482    [enable_exotic="no"])
483
484 if test "x${enable_exotic}" = "xyes"; then
485     requirements_ecore="exotic ${requirements_ecore}"
486
487     AC_DEFINE([HAVE_EXOTIC], [1], [Define to 1 if you have Exotic.])
488 fi
489 AM_CONDITIONAL([ECORE_HAVE_EXOTIC], [test "x${enable_exotic}" = "xyes"])
490
491 AC_SUBST(EFL_ECORE_BUILD)
492 AC_SUBST(EFL_ECORE_CON_BUILD)
493 AC_SUBST(EFL_ECORE_EVAS_BUILD)
494 AC_SUBST(EFL_ECORE_FILE_BUILD)
495 AC_SUBST(EFL_ECORE_IMF_BUILD)
496 AC_SUBST(EFL_ECORE_IMF_EVAS_BUILD)
497 AC_SUBST(EFL_ECORE_INPUT_BUILD)
498 AC_SUBST(EFL_ECORE_INPUT_EVAS_BUILD)
499 AC_SUBST(EFL_ECORE_IPC_BUILD)
500 AC_SUBST(EFL_ECORE_WINCE_BUILD)
501 AC_SUBST(EFL_ECORE_WIN32_BUILD)
502 AC_SUBST(EFL_ECORE_SDL_BUILD)
503 AC_SUBST(EFL_ECORE_PSL1GHT_BUILD)
504
505 AM_CONDITIONAL(ECORE_HAVE_WINCE, test "x${have_wince}" = "xyes")
506 AM_CONDITIONAL(ECORE_HAVE_WIN32, test "x${have_win32}" = "xyes")
507 AM_CONDITIONAL(ECORE_HAVE_PS3, test "x${have_ps3}" = "xyes")
508
509 WIN32_LIBS=""
510 case "$host_os" in
511    mingw32ce* | cegcc*)
512       WIN32_LIBS="-lws2"
513       dlopen_libs="-ldl"
514       ;;
515    mingw*)
516       WIN32_LIBS="-lws2_32"
517       dlopen_libs="-ldl"
518       ;;
519    *)
520       AC_CHECK_LIB([c], [dlopen],
521          [],
522          [AC_CHECK_LIB([dl], [dlopen],
523              [dlopen_libs=-ldl])
524          ])
525       AC_CHECK_LIB([c], [clock_gettime],
526          [AC_DEFINE(HAVE_CLOCK_GETTIME, [1], [Have clock_gettime()])],
527          [AC_CHECK_LIB([rt], [clock_gettime],
528              [
529               rt_libs=-lrt
530               AC_DEFINE(HAVE_CLOCK_GETTIME, [1], [Have clock_gettime()])
531              ])
532          ])
533       ;;
534 esac
535 AC_SUBST(WIN32_LIBS)
536 AC_SUBST(dlopen_libs)
537 AC_SUBST(rt_libs)
538
539 # Eina library
540
541 PKG_CHECK_MODULES(EINA, [eina >= 1.2.0])
542 #FIXME check all the requirements when the eina move will be finished
543 requirements_ecore="eina >= 1.2.0 ${requirements_ecore}"
544 requirements_ecore_con="ecore >= 1.2.0 eina >= 1.2.0 ${requirements_ecore_con}"
545 #requirements_ecore_config="ecore >= 1.2.0 eina >= 1.2.0 ${requirements_ecore_config}"
546 requirements_ecore_directfb="ecore >= 1.2.0 eina >= 1.2.0 ${requirements_ecore_directfb}"
547 requirements_ecore_evas="ecore >= 1.2.0 eina >= 1.2.0 ${requirements_ecore_evas}"
548 requirements_ecore_fb="ecore >= 1.2.0 eina >= 1.2.0 ${requirements_ecore_fb}"
549 requirements_ecore_file="ecore >= 1.2.0 eina >= 1.2.0 ${requirements_ecore_file}"
550 requirements_ecore_imf="ecore >= 1.2.0 eina >= 1.2.0 ${requirements_ecore_imf}"
551 requirements_ecore_imf_evas="ecore >= 1.2.0 eina >= 1.2.0 ${requirements_ecore_imf_evas}"
552 requirements_ecore_input="ecore >= 1.2.0 eina >= 1.2.0 ${requirements_ecore_input}"
553 requirements_ecore_input_evas="ecore >= 1.2.0 eina >= 1.2.0 ${requirements_ecore_input_evas}"
554 requirements_ecore_ipc="ecore >= 1.2.0 eina >= 1.2.0 ${requirements_ecore_ipc}"
555 requirements_ecore_cocoa="ecore >= 1.2.0 eina >= 1.2.0 ${requirements_ecore_cocoa}"
556 requirements_ecore_sdl="ecore >= 1.2.0 eina >= 1.2.0 ${requirements_ecore_sdl}"
557 requirements_ecore_psl1ght="ecore >= 1.2.0 eina >= 1.2.0 ${requirements_ecore_sdl}"
558 requirements_ecore_win32="ecore >= 1.2.0 eina >= 1.2.0 ${requirements_ecore_win32}"
559 requirements_ecore_wince="ecore >= 1.2.0 eina >= 1.2.0 ${requirements_ecore_wince}"
560 requirements_ecore_x="ecore >= 1.2.0 eina >= 1.2.0 ${requirements_ecore_x}"
561
562
563 # glib support (main loop integration)
564 AC_ARG_ENABLE([glib],
565    [AC_HELP_STRING([--disable-glib], [disable glib support. @<:@default=detect@:>@])],
566    [want_glib=$enableval], [])
567
568 if test "x$want_glib" != "xno"; then
569    PKG_CHECK_MODULES([GLIB], [glib-2.0], [have_glib="yes"], [have_glib="no"])
570 else
571    have_glib="no"
572 fi
573 if test "x$want_glib" = "xyes" -a "x$have_glib" = "xno"; then
574    AC_MSG_ERROR([GLib support requested, but no GLib found by pkg-config.])
575 elif test "x$have_glib" = "xyes"; then
576    AC_DEFINE(HAVE_GLIB, [1], [Have GLib])
577    requirements_ecore="glib-2.0 ${requirements_ecore}"
578 fi
579
580
581 # SDL library (ecore_sdl)
582
583 have_sdl="no"
584 PKG_CHECK_MODULES([SDL], [sdl >= 1.2.0], [have_sdl="yes"], [have_sdl="no"])
585 if test "x${have_sdl}" != "xyes" ; then
586    SDL_CONFIG="sdl-config"
587    AC_ARG_WITH([sdl-config],
588       [AC_HELP_STRING([--with-sdl-config=PATH], [use sdl-config specified])],
589       [
590        SDL_CONFIG=$withval
591        AC_MSG_NOTICE([using ${SDL_CONFIG} for sdl-config])
592       ])
593
594    AC_PATH_PROG([SDL_CONFIG], ["sdl-config"], [""], [$PATH])
595
596    if test -n "$SDL_CONFIG" ; then
597       SDL_CFLAGS=`$SDL_CONFIG --cflags`
598       SDL_LIBS=`$SDL_CONFIG --libs`
599       AC_SUBST(SDL_CFLAGS)
600       AC_SUBST(SDL_LIBS)
601       have_sdl="yes"
602    fi
603 fi
604
605 if test "x${have_sdl}" = "xyes" ; then
606    PKG_CHECK_EXISTS([sdl >= 1.3.0],
607       [AC_DEFINE(BUILD_ECORE_EVAS_SDL_130, 1, [Support for SVN SDL])])
608 fi
609
610
611 # DirectFB library (ecore_directfb)
612
613 PKG_CHECK_MODULES([DIRECTFB],
614    [directfb >= 0.9.16],
615    [have_directfb="yes"],
616    [have_directfb="no"])
617
618
619 # Eet library (ecore_config)
620
621 #PKG_CHECK_MODULES([EET],
622 #   [eet >= 1.4.0],
623 #   [have_eet="yes"],
624 #   [have_eet="no"])
625
626
627 # Xlib and XCB (ecore_x)
628
629 AC_CHECK_DECL([MAXHOSTNAMELEN], [FOUND_MAXHOSTNAMELEN=yes])
630
631 if test "x${FOUND_MAXHOSTNAMELEN}" != "xyes" ; then
632    AC_MSG_CHECKING([for header that defines MAXHOSTNAMELEN])
633    FOUND_MAXHOSTNAMELEN="not found"
634
635    AC_COMPILE_IFELSE(
636       [
637        AC_LANG_PROGRAM(
638           [[
639 #include <sys/param.h>
640           ]],
641           [[
642 int h = MAXHOSTNAMELEN;
643           ]])
644       ],
645       [
646        FOUND_MAXHOSTNAMELEN="sys/param.h"
647        AC_DEFINE([NEED_SYS_PARAM_H], [1], [Define to 1 if you need <sys/param.h> to define MAXHOSTNAMELEN])
648       ])
649
650    AC_COMPILE_IFELSE(
651       [
652        AC_LANG_PROGRAM(
653           [[
654 #include <netdb.h>
655           ]],
656           [[
657 int h = MAXHOSTNAMELEN;
658           ]])
659       ],
660       [
661        FOUND_MAXHOSTNAMELEN="netdb.h"
662        AC_DEFINE([NEED_NETDB_H], [1], [Define to 1 if you need <netdb.h> to define MAXHOSTNAMELEN])
663       ])
664
665    AC_MSG_RESULT([$FOUND_MAXHOSTNAMELEN])
666 fi
667
668 have_x="no"
669 have_ecore_x="no"
670 have_ecore_x_xlib="no"
671 have_ecore_x_xcb="no"
672
673 x_dir="";
674 x_includes="";
675 x_cflags="";
676 x_libs="";
677
678 ecore_x_libs_private=""
679
680 AC_ARG_ENABLE(ecore-x-composite,
681    [AC_HELP_STRING([--disable-ecore-x-composite],
682        [disable the ecore_x support for Xcomposite extension.
683         @<:@default=detect@:>@])],
684    [want_ecore_x_composite=$enableval])
685
686 AC_ARG_ENABLE(ecore-x-damage,
687    [AC_HELP_STRING([--disable-ecore-x-damage],
688        [disable the ecore_x support for Xdamage extension.
689         @<:@default=detect@:>@])],
690    [want_ecore_x_damage=$enableval])
691
692 AC_ARG_ENABLE(ecore-x-dpms,
693    [AC_HELP_STRING([--disable-ecore-x-dpms],
694        [disable the ecore_x support for Xdpms extension.
695         @<:@default=detect@:>@])],
696    [want_ecore_x_dpms=$enableval])
697
698 AC_ARG_ENABLE(ecore-x-randr,
699    [AC_HELP_STRING([--disable-ecore-x-randr],
700        [disable the ecore_x support for Xrandr extension.
701         @<:@default=detect@:>@])],
702    [want_ecore_x_randr=$enableval])
703
704 AC_ARG_ENABLE(ecore-x-render,
705    [AC_HELP_STRING([--disable-ecore-x-render],
706        [disable the ecore_x support for Xrender extension.
707         @<:@default=detect@:>@])],
708    [want_ecore_x_render=$enableval])
709
710 AC_ARG_ENABLE(ecore-x-screensaver,
711    [AC_HELP_STRING([--disable-ecore-x-screensaver],
712        [disable the ecore_x support for Xscreensaver extension.
713         @<:@default=detect@:>@])],
714    [want_ecore_x_screensaver=$enableval])
715
716 AC_ARG_ENABLE(ecore-x-shape,
717    [AC_HELP_STRING([--disable-ecore-x-shape],
718        [disable the ecore_x support for Xshape extension.
719         @<:@default=detect@:>@])],
720    [want_ecore_x_shape=$enableval])
721
722 AC_ARG_ENABLE(ecore-x-gesture,
723    [AC_HELP_STRING([--enable-ecore-x-gesture],
724        [enable the ecore_x support for Xgesture extension.
725         @<:@default=detect@:>@])],
726    [want_ecore_x_gesture=$enableval])
727
728 AC_ARG_ENABLE(ecore-x-sync,
729    [AC_HELP_STRING([--disable-ecore-x-sync],
730        [disable the ecore_x support for Xsync extension.
731         @<:@default=detect@:>@])],
732    [want_ecore_x_sync=$enableval])
733
734 AC_ARG_ENABLE(ecore-x-xfixes,
735    [AC_HELP_STRING([--disable-ecore-x-xfixes],
736        [disable the ecore_x support for Xfixes extension.
737         @<:@default=detect@:>@])],
738    [want_ecore_x_xfixes=$enableval])
739
740 AC_ARG_ENABLE(ecore-x-xinerama,
741    [AC_HELP_STRING([--disable-ecore-x-xinerama],
742        [disable the ecore_x support for Xinerama extension.
743         @<:@default=detect@:>@])],
744    [want_ecore_x_xinerama=$enableval])
745
746 AC_ARG_ENABLE(ecore-x-xprint,
747    [AC_HELP_STRING([--disable-ecore-x-xprint],
748        [disable the ecore_x support for Xprint extension.
749         @<:@default=detect@:>@])],
750    [want_ecore_x_xprint=$enableval])
751
752 AC_ARG_ENABLE(ecore-x-xtest,
753    [AC_HELP_STRING([--disable-ecore-x-xtest],
754        [disable the ecore_x support for Xtest extension.
755         @<:@default=detect@:>@])],
756    [want_ecore_x_xtest=$enableval])
757
758 AC_ARG_ENABLE(ecore-x-cursor,
759    [AC_HELP_STRING([--disable-ecore-x-cursor],
760        [disable the ecore_x support for Xcursor extension.
761         @<:@default=detect@:>@])],
762    [want_ecore_x_cursor=$enableval])
763
764 AC_ARG_ENABLE(ecore-x-input,
765    [AC_HELP_STRING([--disable-ecore-x-input],
766        [disable the ecore_x support for Xinput/Xinput2 extension.
767         @<:@default=detect@:>@])],
768    [want_ecore_x_input=$enableval])
769
770 AC_ARG_ENABLE(ecore-x-dri,
771    [AC_HELP_STRING([--disable-ecore-x-dri],
772        [disable the ecore_x support for DRI extension.
773         @<:@default=detect@:>@])],
774    [want_ecore_x_dri=$enableval])
775
776 AC_ARG_ENABLE(ecore-x-xcb,
777    [AC_HELP_STRING([--enable-ecore-x-xcb],
778        [enable the ecore_x module with XCB backend. @<:@default=disabled@:>@])],
779    [want_ecore_x_xcb=$enableval])
780
781 AC_MSG_CHECKING(whether ecore_x with XCB backend is to be built)
782 AC_MSG_RESULT($want_ecore_x_xcb)
783
784 if test "x$want_ecore_x_xcb" = "xyes" ; then
785
786   AC_MSG_CHECKING([keysym definitions])
787   KEYSYMDEFDIR=`$PKG_CONFIG --variable=includedir xproto`/X11
788   FILES="keysymdef.h XF86keysym.h Sunkeysym.h DECkeysym.h HPkeysym.h"
789   for i in $FILES; do
790       if test -f "$KEYSYMDEFDIR/$i"; then
791         KEYSYMDEFS="$KEYSYMDEFS $KEYSYMDEFDIR/$i"
792       elif test "x$i" = "xkeysymdef.h"; then
793         AC_MSG_ERROR([Cannot find keysymdef.h])
794       fi
795   done
796   AC_MSG_RESULT([$KEYSYMDEFS])
797   AC_SUBST(KEYSYMDEFS)
798
799   have_iconv="no"
800   AC_ARG_WITH([iconv-link],
801     AC_HELP_STRING([--with-iconv-link=ICONV_LINK], [explicitly specify an iconv link option]),
802       [
803         LIBS="$withval $LIBS"
804         have_iconv="yes"
805       ])
806
807   AC_MSG_CHECKING(for explicit iconv link options)
808   if test "x${iconv_libs}" = "x" ; then
809     AC_MSG_RESULT([no explicit iconv link option])
810   else
811     AC_MSG_RESULT([$iconv_libs])
812   fi
813
814   if test "x${have_iconv}" = "xno" ; then
815     AC_CHECK_HEADERS([iconv.h], [have_iconv="yes"])
816
817     if test "x${have_iconv}" = "xyes" ; then
818       AC_MSG_CHECKING([whether iconv() is in libc])
819
820       AC_LINK_IFELSE(
821         [AC_LANG_PROGRAM(
822         [[
823           #include <stdlib.h>
824           #include <iconv.h>
825         ]],
826         [[
827           iconv_t ic;
828           size_t count = iconv(ic, NULL, NULL, NULL, NULL);
829         ]])],
830         [have_iconv="yes"],
831         [have_iconv="no"])
832
833       AC_MSG_RESULT([${have_iconv}])
834     fi
835
836     if test "x${have_iconv}" = "xno" ; then
837       AC_MSG_CHECKING([whether iconv() is in libiconv.a])
838
839       LIBS_save="${LIBS}"
840       LIBS="-liconv $LIBS"
841       AC_LINK_IFELSE(
842       [AC_LANG_PROGRAM(
843         [[
844           #include <stdlib.h>
845           #include <iconv.h>
846         ]],
847         [[
848           iconv_t ic;
849           size_t count;
850           count = iconv(ic, NULL, NULL, NULL, NULL);
851         ]])],
852         [have_iconv="yes"],
853         [
854           have_iconv="no"
855           LIBS=${LIBS_save}
856         ])
857
858       AC_MSG_RESULT([${have_iconv}])
859     fi
860
861     if test "x${have_iconv}" = "xno" ; then
862       AC_MSG_CHECKING([whether iconv() is in libiconv_plug.a])
863
864       LIBS_save="${LIBS}"
865       LIBS="-liconv_plug $LIBS"
866       AC_LINK_IFELSE(
867       [AC_LANG_PROGRAM(
868       [[
869         #include <stdlib.h>
870         #include <iconv.h>
871       ]],
872       [[
873         iconv_t ic;
874         size_t count = iconv(ic, NULL, NULL, NULL, NULL);
875       ]])],
876       [have_iconv="yes"],
877       [
878         have_iconv="no"
879         LIBS=${LIBS_save}
880       ])
881
882       AC_MSG_RESULT([${have_iconv}])
883     fi
884
885     if test "x${have_iconv}" = "xyes" ; then
886       AC_DEFINE([HAVE_ICONV], [1], [Set to 1 if iconv library is installed])
887     fi
888   fi
889
890   PKG_CHECK_MODULES(ECORE_XCB, x11-xcb xcb xcb-shm xcb-event xcb-icccm >= 0.3.8 xcb-util >= 0.3.8 xcb-image xcb-keysyms >= 0.3.8,
891     [ have_ecore_x_xcb="yes"
892       requirements_ecore_x="x11-xcb xcb xcb-shm xcb-event xcb-icccm xcb-util xcb-image xcb-keysyms ${requirements_ecore_x}"
893     ],
894     [ 
895         PKG_CHECK_MODULES(ECORE_XCB, x11-xcb xcb xcb-event xcb-shm xcb-icccm xcb-image xcb-keysyms, 
896           [ have_ecore_x_xcb="yes"
897             AC_DEFINE(OLD_XCB_VERSION, 1, [xcb version])
898             requirements_ecore_x="x11-xcb xcb xcb-event xcb-shm xcb-icccm xcb-image xcb-keysyms ${requirements_ecore_x}" ],
899           [ have_ecore_x_xcb="no" ])
900     ], 
901     [have_ecore_x_xcb="no" ])
902
903   if test "x$have_ecore_x_xcb" = "xyes" ; then
904
905    PKG_CHECK_MODULES([PIXMAN],
906       [pixman-1],
907       [
908        have_pixman="yes"
909        AC_DEFINE(HAVE_PIXMAN, 1, [have pixman for rendering])
910        requirements_ecore_x="pixman-1 ${requirements_ecore_x}"
911       ],
912       [
913        if test "x${want_pixman}" = "xyes" -a "x${use_strict}" = "xyes" ; then
914           AC_MSG_ERROR([Pixman not found (strict dependencies checking)])
915        fi
916       ])
917
918     if test "x$want_ecore_x_composite" != "xno"; then
919       PKG_CHECK_MODULES(XCB_COMPOSITE, xcb-composite,
920         [ have_ecore_x_xcb_composite="yes"
921           requirements_ecore_x="xcb-composite ${requirements_ecore_x}"
922           AC_DEFINE(ECORE_XCB_COMPOSITE, 1, [Build support for XCB composite]) ],
923         [ have_ecore_x_xcb_composite="no" ])
924     else
925       have_ecore_x_xcb_composite="no"
926       AC_MSG_NOTICE("composite extension explicitly disabled")
927     fi
928
929     if test "x$want_ecore_x_damage" != "xno"; then
930       PKG_CHECK_MODULES(XCB_DAMAGE, xcb-damage,
931         [ have_ecore_x_xcb_damage="yes"
932           requirements_ecore_x="xcb-damage ${requirements_ecore_x}"
933           AC_DEFINE(ECORE_XCB_DAMAGE, 1, [Build support for XCB damage]) ],
934         [ have_ecore_x_xcb_damage="no" ])
935     else
936       have_ecore_x_xcb_damage="no"
937       AC_MSG_NOTICE("damage extension explicitly disabled")
938     fi
939
940     if test "x$want_ecore_x_dpms" != "xno"; then
941       PKG_CHECK_MODULES(XCB_DPMS, xcb-dpms,
942         [ have_ecore_x_xcb_dpms="yes"
943           requirements_ecore_x="xcb-dpms ${requirements_ecore_x}"
944           AC_DEFINE(ECORE_XCB_DPMS, 1, [Build support for XCB dpms]) ],
945         [ have_ecore_x_xcb_dpms="no" ])
946     else
947       have_ecore_x_xcb_dpms="no"
948       AC_MSG_NOTICE("dpms extension explicitly disabled")
949     fi
950
951     if test "x$want_ecore_x_randr" != "xno"; then
952       PKG_CHECK_MODULES(XCB_RANDR, xcb-randr,
953         [ have_ecore_x_xcb_randr="yes"
954           requirements_ecore_x="xcb-randr ${requirements_ecore_x}"
955           AC_DEFINE(ECORE_XCB_RANDR, 1, [Build support for XCB randr]) ],
956         [ have_ecore_x_xcb_randr="no" ])
957     else
958       have_ecore_x_xcb_randr="no"
959       AC_MSG_NOTICE("randr extension explicitly disabled")
960     fi
961
962     if test "x$want_ecore_x_render" != "xno"; then
963       PKG_CHECK_MODULES(XCB_RENDER, xcb-render xcb-renderutil,
964         [ have_ecore_x_xcb_render="yes"
965           requirements_ecore_x="xcb-render xcb-renderutil ${requirements_ecore_x}"
966           AC_DEFINE(ECORE_XCB_RENDER, 1, [Build support for XCB render]) ],
967         [ have_ecore_x_xcb_render="no" ])
968     else
969       have_ecore_x_xcb_render="no"
970       AC_MSG_NOTICE("render extension explicitly disabled")
971     fi
972
973     if test "x$want_ecore_x_screensaver" != "xno"; then
974       PKG_CHECK_MODULES(XCB_SCREENSAVER, xcb-screensaver,
975         [ have_ecore_x_xcb_screensaver="yes"
976           requirements_ecore_x="xcb-screensaver ${requirements_ecore_x}"
977           AC_DEFINE(ECORE_XCB_SCREENSAVER, 1, [Build support for XCB screensaver]) ],
978         [ have_ecore_x_xcb_screensaver="no" ])
979     else
980       have_ecore_x_xcb_screensaver="no"
981       AC_MSG_NOTICE("screensaver extension explicitly disabled")
982     fi
983
984     if test "x$want_ecore_x_shape" != "xno"; then
985       PKG_CHECK_MODULES(XCB_SHAPE, xcb-shape,
986         [ have_ecore_x_xcb_shape="yes"
987           requirements_ecore_x="xcb-shape ${requirements_ecore_x}"
988           AC_DEFINE(ECORE_XCB_SHAPE, 1, [Build support for XCB shape]) ],
989         [ have_ecore_x_xcb_shape="no" ])
990     else
991       have_ecore_x_xcb_shape="no"
992       AC_MSG_NOTICE("shape extension explicitly disabled")
993     fi
994
995     if test "x$want_ecore_x_gesture" != "xno"; then
996       PKG_CHECK_MODULES(XCB_XGESTURE, xcb-gesture,
997         [ have_ecore_x_xcb_gesture="yes"
998           requirements_ecore_x="xcb-gesture ${requirements_ecore_x}"
999           AC_DEFINE(ECORE_XCB_XGESTURE, 1, [Build support for XCB gesture]) ],
1000         [ have_ecore_x_xcb_gesture="no" ])
1001     else
1002       have_ecore_x_xcb_gesture="no"
1003       AC_MSG_NOTICE("gesture extension explicitly disabled")
1004     fi
1005
1006     if test "x$want_ecore_x_sync" != "xno"; then
1007       PKG_CHECK_MODULES(XCB_SYNC, xcb-sync,
1008         [ have_ecore_x_xcb_sync="yes"
1009           requirements_ecore_x="xcb-sync ${requirements_ecore_x}"
1010           AC_DEFINE(ECORE_XCB_SYNC, 1, [Build support for XCB sync]) ],
1011         [ have_ecore_x_xcb_sync="no" ])
1012     else
1013       have_ecore_x_xcb_sync="no"
1014       AC_MSG_NOTICE("sync extension explicitly disabled")
1015     fi
1016
1017     if test "x$want_ecore_x_xfixes" != "xno"; then
1018       PKG_CHECK_MODULES(XCB_XFIXES, xcb-xfixes,
1019         [ have_ecore_x_xcb_xfixes="yes"
1020           requirements_ecore_x="xcb-xfixes ${requirements_ecore_x}"
1021           AC_DEFINE(ECORE_XCB_XFIXES, 1, [Build support for XCB xfixes]) ],
1022         [ have_ecore_x_xcb_xfixes="no" ])
1023     else
1024       have_ecore_x_xcb_xfixes="no"
1025       AC_MSG_NOTICE("xfixes extension explicitly disabled")
1026     fi
1027
1028     if test "x$want_ecore_x_xinerama" != "xno"; then
1029       PKG_CHECK_MODULES(XCB_XINERAMA, xcb-xinerama,
1030         [ have_ecore_x_xcb_xinerama="yes"
1031           requirements_ecore_x="xcb-xinerama ${requirements_ecore_x}"
1032           AC_DEFINE(ECORE_XCB_XINERAMA, 1, [Build support for XCB xinerama]) ],
1033         [ have_ecore_x_xcb_xinerama="no" ])
1034     else
1035       have_ecore_x_xcb_xinerama="no"
1036       AC_MSG_NOTICE("xinerama extension explicitly disabled")
1037     fi
1038
1039     if test "x$want_ecore_x_xprint" != "xno"; then
1040       PKG_CHECK_MODULES(XCB_XPRINT, xcb-xprint,
1041         [ have_ecore_x_xcb_xprint="yes"
1042           requirements_ecore_x="xcb-xprint ${requirements_ecore_x}"
1043           AC_DEFINE(ECORE_XCB_XPRINT, 1, [Build support for XCB xprint]) ],
1044         [ have_ecore_x_xcb_xprint="no" ])
1045     else
1046       have_ecore_x_xcb_xprint="no"
1047       AC_MSG_NOTICE("xprint extension explicitly disabled")
1048     fi
1049
1050     if test "x$want_ecore_x_xtest" != "xno"; then
1051       PKG_CHECK_MODULES(XCB_XTEST, xcb-xtest,
1052         [ have_ecore_x_xcb_xtest="yes"
1053           requirements_ecore_x="xcb-xtest ${requirements_ecore_x}"
1054           AC_DEFINE(ECORE_XCB_XTEST, 1, [Build support for XCB xtest]) ],
1055         [ have_ecore_x_xcb_xtest="no" ])
1056     else
1057       have_ecore_x_xcb_xtest="no"
1058       AC_MSG_NOTICE("xtest extension explicitly disabled")
1059     fi
1060
1061 # input extension disabled currently in xcb as xcb-input has some issues
1062     want_ecore_x_input="no"
1063     if test "x$want_ecore_x_input" != "xno"; then
1064       PKG_CHECK_MODULES(XCB_XINPUT, xcb-xinput,
1065         [ have_ecore_x_xcb_xinput="yes"
1066           requirements_ecore_x="xcb-xinput ${requirements_ecore_x}"
1067           AC_DEFINE(ECORE_XCB_XINPUT, 1, [Build support for XCB xinput]) ],
1068         [ have_ecore_x_xcb_xinput="no" ])
1069     else
1070       have_ecore_x_xcb_xinput="no"
1071       AC_MSG_NOTICE("xinput extension explicitly disabled")
1072     fi
1073
1074     if test "x$want_ecore_x_cursor" != "xno"; then
1075       PKG_CHECK_MODULES(XCB_CURSOR, xcb-render xcb-renderutil,
1076         [ have_ecore_x_xcb_cursor="yes"
1077           requirements_ecore_x="xcb-render xcb-renderutil ${requirements_ecore_x}"
1078           AC_DEFINE(ECORE_XCB_CURSOR, 1, [Build support for XCB cursor]) ],
1079         [ have_ecore_x_xcb_cursor="no" ])
1080     else
1081       have_ecore_x_xcb_cursor="no"
1082       AC_MSG_NOTICE("cursor extension explicitly disabled")
1083     fi
1084
1085 #    if test "x$want_ecore_x_dri" != "xno"; then
1086 #      PKG_CHECK_MODULES(XCB_DRI, xcb-dri2,
1087 #        [ have_ecore_x_xcb_dri="yes"
1088 #          requirements_ecore_x="xcb-dri2 ${requirements_ecore_x}"
1089 #          AC_DEFINE(ECORE_XCB_DRI, 1, [Build support for XCB dri/dri2]) ],
1090 #        [ have_ecore_x_xcb_dri="no" ])
1091 #    else
1092 #      have_ecore_x_xcb_dri="no"
1093 #      AC_MSG_NOTICE("dri extension explicitly disabled")
1094 #    fi
1095
1096     AC_DEFINE(HAVE_ECORE_X_XCB, 1, [Defined to 1 if XCB is enabled.])
1097
1098     x_cflags=$ECORE_XCB_CFLAGS
1099     x_libs=$ECORE_XCB_LIBS
1100     have_x="yes"
1101
1102     have_ecore_x_xcb_define="-DHAVE_ECORE_X_XCB"
1103     AC_SUBST(have_ecore_x_xcb_define)
1104   fi
1105 fi
1106
1107 if ! test "x$have_ecore_x_xcb" = "xyes" ; then
1108   AC_PATH_XTRA
1109   AC_CHECK_HEADER(X11/X.h,
1110     [
1111      if test "x$want_evas_simple_x11" = "xyes"; then
1112        x_libs="${x_libs} -lX11 -lXext"
1113      else
1114        x_dir=${x_dir:-/usr/X11R6}
1115        x_cflags=${x_cflags:--I${x_includes:-$x_dir/include}}
1116        x_libs="${x_libs:--L${x_libraries:-$x_dir/lib}} -lX11 -lXext"
1117      fi
1118      have_ecore_x_xlib="yes"
1119     ]
1120   )
1121
1122   if test "x$have_ecore_x_xlib" = "xyes"; then
1123     Xcursor_libs=""
1124     Xcursor_cflags=""
1125     use_Xcursor="no"
1126     PCFLAGS=$CFLAGS
1127     CFLAGS="$x_cflags $x_includes"
1128
1129     if test "x$want_ecore_x_cursor" = "xyes"; then
1130       AC_CHECK_HEADER(X11/Xcursor/Xcursor.h,
1131         [
1132           AC_CHECK_LIB(Xcursor, XcursorImageLoadCursor,
1133             [
1134               AC_DEFINE(ECORE_XCURSOR, 1, [Build support for Xcursor])
1135               Xcursor_cflags=""
1136               Xcursor_libs="-lXcursor"
1137               use_Xcursor="yes"
1138             ], [
1139               Xcursor_cflags=""
1140               Xcursor_libs=""
1141               use_Xcursor="no"
1142             ], [
1143               $x_libs -lXrender
1144             ]
1145           )
1146         ], [
1147           Xcursor_cflags=""
1148           Xcursor_libs=""
1149           use_Xcursor="no"
1150         ], [
1151           #include <X11/Xlib.h>
1152         ]
1153       )
1154       CFLAGS=$PCFLAGS
1155     else
1156       Xcursor_cflags=""
1157       Xcursor_libs=""
1158       use_Xcursor="no"
1159       AC_MSG_NOTICE("Xcursor explicitly disabled")
1160     fi
1161
1162     AC_SUBST(Xcursor_cflags)
1163     AC_SUBST(Xcursor_libs)
1164
1165     ECORE_CHECK_X_EXTENSION([Xkb], [XKB.h], [X11], [XkbSetDetectableAutoRepeat], [$want_ecore_x_xkb])
1166     ECORE_CHECK_X_EXTENSION([Xcomposite], [Xcomposite.h], [Xcomposite], [XCompositeQueryExtension], [$want_ecore_x_composite])
1167     ECORE_CHECK_X_EXTENSION([Xdamage], [Xdamage.h], [Xdamage], [XDamageSubtract], [$want_ecore_x_damage])
1168     ECORE_CHECK_X_EXTENSION([Xdpms], [dpms.h], [Xdpms], [DPMSQueryExtension], [$want_ecore_x_dpms])
1169     if test "x$use_xdpms" = "xno" ; then
1170       ECORE_CHECK_X_EXTENSION([Xdpms], [dpms.h], [Xext], [DPMSQueryExtension], [$want_ecore_x_dpms])
1171     fi
1172     ECORE_CHECK_X_EXTENSION([Xfixes], [Xfixes.h], [Xfixes], [XFixesExpandRegion], [$want_ecore_x_xfixes])
1173     ECORE_CHECK_X_EXTENSION([Xinerama], [Xinerama.h], [Xinerama], [XineramaQueryScreens], [$want_ecore_x_xinerama])
1174     ECORE_CHECK_X_EXTENSION([Xprint], [Print.h], [Xp], [XpQueryScreens], [$want_ecore_x_xprint])
1175     ECORE_CHECK_X_EXTENSION([Xrandr], [Xrandr.h], [Xrandr], [XRRGetScreenResourcesCurrent], [$want_ecore_x_randr])
1176     ECORE_CHECK_X_EXTENSION([Xgesture], [gesture.h], [Xgesture], [XGestureQueryExtension], [$want_ecore_x_gesture])
1177     ECORE_CHECK_X_EXTENSION([Xrender], [Xrender.h], [Xrender], [XRenderFindVisualFormat], [$want_ecore_x_render])
1178     ECORE_CHECK_X_EXTENSION([Xtest], [XTest.h], [Xtst], [XTestFakeKeyEvent], [$want_ecore_x_xtest])
1179     ECORE_CHECK_X_EXTENSION([Xss], [scrnsaver.h], [Xss], [XScreenSaverSelectInput], [$want_ecore_x_screensaver])
1180     ECORE_CHECK_X_EXTENSION([Xi2], [XInput2.h], [Xi], [XIQueryDevice], [$want_ecore_x_input])
1181
1182     ecore_x_libs_private="${Xcursor_libs} ${XKB_LIBS} ${XCOMPOSITE_LIBS} ${XGESTURE_LIBS} ${XDAMAGE_LIBS} ${XDPMS_LIBS} ${XFIXES_LIBS} ${XINERAMA_LIBS} ${XPRINT_LIBS} ${XRANDR_LIBS} ${XRENDER_LIBS} ${XTEST_LIBS} ${XSS_LIBS} ${XI2_LIBS}"
1183
1184     AC_DEFINE(HAVE_ECORE_X_XLIB, 1, [Defined to 1 if Xlib is enabled.])
1185     have_x="yes"
1186
1187     have_ecore_x_xlib="yes"
1188   fi
1189 fi
1190
1191 AC_SUBST(x_cflags)
1192 AC_SUBST(x_includes)
1193 AC_SUBST(x_libs)
1194 AC_SUBST(ecore_x_libs_private)
1195
1196 AM_CONDITIONAL(BUILD_ECORE_X_XLIB, test $have_ecore_x_xlib = yes)
1197 AM_CONDITIONAL(BUILD_ECORE_X_XCB, test $have_ecore_x_xcb = yes)
1198
1199
1200 # Evas library (ecore_config, ecore_input_evas, ecore_imf_evas and ecore_evas)
1201
1202 PKG_CHECK_MODULES([EVAS], [evas >= 1.2.0],
1203    [have_evas="yes"],
1204    [have_evas="no"])
1205
1206
1207 ### Checks for header files
1208
1209 AC_CHECK_HEADERS([sys/select.h sys/prctl.h])
1210
1211 EFL_CHECK_PATH_MAX
1212
1213 AC_HEADER_SYS_WAIT
1214 AC_SYS_LARGEFILE
1215
1216 have_addrinfo="no"
1217 case "$host_os" in
1218    mingw* | cegcc*)
1219       AC_DEFINE(HAVE_DLFCN_H, 1, [Define to 1 if you have the <dlfcn.h> header file.])
1220       AC_DEFINE(HAVE_SYS_MMAN_H, 1, [Define to 1 if you have the <sys/mman.h> header file.])
1221       AC_DEFINE(HAVE_SYS_TIME_H, 1, [Define to 1 if you have the <sys/time.h> header file.])
1222       have_addrinfo="yes"
1223       ;;
1224    *)
1225       AC_CHECK_HEADERS([dlfcn.h features.h langinfo.h locale.h sys/time.h sys/mman.h signal.h sys/resource.h])
1226       ;;
1227 esac
1228
1229 # ecore_con
1230
1231 AC_CHECK_HEADERS([sys/socket.h])
1232 AC_CHECK_HEADERS([net/if.h], [], [],
1233 [
1234 #include <stdio.h>
1235 #ifdef STDC_HEADERS
1236 # include <stdlib.h>
1237 # include <stddef.h>
1238 #else
1239 # ifdef HAVE_STDLIB_H
1240 #  include <stdlib.h>
1241 # endif
1242 #endif
1243 #ifdef HAVE_SYS_SOCKET_H
1244 # include <sys/socket.h>
1245 #endif
1246 ])
1247 AC_CHECK_HEADERS([sys/un.h arpa/inet.h arpa/nameser.h netinet/tcp.h netinet/in.h ws2tcpip.h netdb.h])
1248
1249 if test "x${ac_cv_header_netdb_h}" = "xyes" ; then
1250    have_addrinfo="yes"
1251 fi
1252
1253 # Framebuffer (ecore_fb)
1254 have_fb="no"
1255 AC_CHECK_HEADER([linux/fb.h],
1256    [AC_CHECK_HEADER([linux/input.h], [have_fb="yes"])])
1257
1258 # Cocoa header files (ecore_cocoa)
1259
1260 if test "x${want_ecore_cocoa}" = "xyes" ; then
1261    cocoa_ldflags=""
1262    have_cocoa="no"
1263    m4_ifdef([AC_PROG_OBJC],
1264       [
1265        if test "x${have_gnu_objc}" = "xyes" ; then
1266           AC_LANG_PUSH([Objective C])
1267           LIBS_save="$LIBS"
1268           LIBS="$LIBS -framework Cocoa"
1269           AC_LINK_IFELSE(
1270              [AC_LANG_PROGRAM(
1271                  [[
1272 #include <Cocoa/Cocoa.h>
1273                  ]],
1274                  [[
1275 NSWindow *window;
1276 window = [[NSWindow alloc]
1277            initWithContentRect:NSMakeRect(0, 0, 1, 1)
1278            styleMask:(NSTitledWindowMask)
1279            backing:NSBackingStoreBuffered
1280            defer:NO
1281            screen:nil
1282          ];
1283                  ]])],
1284              [
1285               have_cocoa="yes"
1286               cocoa_ldflags="-framework Cocoa"
1287              ],
1288              [have_cocoa="no"])
1289           LIBS="$LIBS_save"
1290           AC_MSG_CHECKING([whether Cocoa framework is supported])
1291           AC_MSG_RESULT([${have_cocoa}])
1292           AC_LANG_POP([Objective C])
1293        fi
1294    ])
1295 fi
1296 AC_SUBST(cocoa_ldflags)
1297
1298 want_epoll=yes
1299 AC_ARG_ENABLE(epoll,
1300   AC_HELP_STRING([--enable-epoll], [enable or disable epoll support]),
1301   [want_epoll=$enableval])
1302
1303 if test "x${want_epoll}" = "xyes" ; then
1304   # check for epoll support
1305   AC_CHECK_HEADERS([sys/epoll.h])
1306 fi
1307
1308 # timerfd_create
1309 AC_CHECK_HEADERS([sys/timerfd.h])
1310 AC_CHECK_FUNCS(timerfd_create)
1311
1312 # thread support
1313
1314 EFL_CHECK_THREADS(
1315    [
1316     if test "x${_efl_have_posix_threads}" = "xyes" ; then
1317        have_threads="POSIX"
1318     else
1319        if test "x${_efl_have_win32_threads}" = "xyes" ; then
1320           have_threads="Win32"
1321        else
1322           have_threads="no"
1323        fi
1324     fi
1325    ],
1326    [have_threads="no"])
1327
1328 ### enable thread safety if we have threads, unless specifically asked not to
1329 if test "x${have_threads}" = "xno"
1330 then
1331   want_thread_safety="no"
1332 else
1333   want_thread_safety="no"  # to be changed to yes when ready
1334   AC_ARG_ENABLE(thread-safety,
1335     AC_HELP_STRING([--enable-thread-safety], [enable or disable thread safety]),
1336     [want_thread_safety=$enableval])
1337 fi
1338
1339 if test "x${want_thread_safety}" = "xyes"
1340 then
1341    AC_DEFINE([HAVE_THREAD_SAFETY], [1], [Define to enable thread safety])
1342 fi
1343
1344 ### Checks for types
1345 AC_CHECK_SIZEOF(int, 4)
1346 AC_CHECK_SIZEOF(long, 4)
1347
1348
1349 ### Checks for structures
1350
1351
1352 ### Checks for compiler characteristics
1353 AC_PROG_CC_STDC
1354 AC_C_CONST
1355 AC_C_BIGENDIAN
1356 AC_HEADER_STDC
1357 AC_C___ATTRIBUTE__
1358
1359 WIN32_CPPFLAGS=""
1360 WIN32_CFLAGS=""
1361 case "$host_os" in
1362    mingw32ce*)
1363       WIN32_CPPFLAGS="-D_WIN32_WCE=0x0420"
1364       ;;
1365    cegcc*)
1366       WIN32_CPPFLAGS="-D_WIN32_WCE=0x0420"
1367       WIN32_CFLAGS="-mwin32"
1368       ;;
1369    mingw*)
1370       WIN32_CPPFLAGS="-D_WIN32_WINNT=0x0501"
1371       ;;
1372 esac
1373 AC_SUBST(WIN32_CPPFLAGS)
1374 AC_SUBST(WIN32_CFLAGS)
1375
1376
1377 ### Checks for linker characteristics
1378
1379 # use --enable-auto-import on Windows
1380
1381 lt_enable_auto_import=""
1382 case "$host_os" in
1383    mingw* | cegcc*)
1384       lt_enable_auto_import="-Wl,--enable-auto-import"
1385       ;;
1386 esac
1387 AC_SUBST(lt_enable_auto_import)
1388
1389 ### Checks for library functions
1390 AC_ISC_POSIX
1391 AC_FUNC_ALLOCA
1392 AC_CHECK_FUNCS([gettimeofday strlcpy execvp])
1393
1394 AC_COMPILE_IFELSE(
1395    [AC_LANG_PROGRAM(
1396        [[
1397 #include <math.h>
1398        ]],
1399        [[
1400 int i = isfinite(0);
1401        ]])],
1402    [
1403     AC_DEFINE(HAVE_ISFINITE, 1, [Define to 1 if you have `isfinite', as a function or macro.])
1404     have_isfinite="yes"
1405    ],
1406    [have_isfinite="no"])
1407
1408 AC_MSG_CHECKING([for isfinite])
1409 AC_MSG_RESULT([${have_isfinite}])
1410
1411 have_atfile_source=auto
1412 AC_ARG_ENABLE([atfile-source],
1413    [AC_HELP_STRING([--disable-atfile-source],
1414        [disable use of atfile source functions as openat and mkdirat @<:@default=detect@:>@])],
1415    [
1416     if test "x${enableval}" = "xyes" ; then
1417        have_atfile_source="yes"
1418     else
1419        have_atfile_source="no"
1420     fi],
1421    [have_atfile_source=auto])
1422
1423 if ! test "x${have_atfile_source}" = "xno" ; then
1424    AC_CHECK_FUNCS(mkdirat,
1425       [
1426        have_atfile_source="yes"
1427        AC_DEFINE(HAVE_ATFILE_SOURCE, 1, [mkdirat exists])
1428       ],
1429       [
1430        if test "x${have_atfile_source}" = "xyes" ; then
1431           AC_MSG_ERROR([required atfile-source but no mkdirat()])
1432        fi
1433        have_atfile_source="no"
1434       ])
1435 fi
1436
1437 # shm_open
1438 EFL_CHECK_SHM_OPEN([have_shm_open="yes"], [have_shm_open="no"])
1439
1440 ### Checks for optionnal feature
1441 AC_CHECK_FUNC([mallinfo],
1442    [
1443     have_mallinfo="yes"
1444     AC_DEFINE(HAVE_MALLINFO, 1, [Gather memory statistic])
1445    ],
1446    [have_mallinfo="no"])
1447
1448 ### Ecore modules
1449
1450 ## Core modules
1451
1452 # ecore_con
1453 ECORE_CHECK_MODULE([con], [${want_ecore_con}], [Con], [${have_addrinfo}])
1454
1455 have_curl="no"
1456 have_gnutls="no"
1457 have_openssl="no"
1458 have_cares="no"
1459 want_ipv6="yes"
1460 have_ipv6="no"
1461
1462 AC_ARG_ENABLE([ipv6],
1463    [AC_HELP_STRING([--disable-ipv6],
1464        [disable ipv6 functionality @<:@default=detect@:>@])],
1465    [
1466     if test "x${enableval}" = "xyes" ; then
1467        want_ipv6="yes"
1468     else
1469        want_ipv6="no"
1470     fi],
1471    [want_ipv6="auto"])
1472
1473 if test "x${have_ecore_con}" = "xyes" ; then
1474
1475    # Verify IPV6 availability in headers
1476    if test "x${want_ipv6}" != "xno" ; then
1477       AC_CHECK_TYPES([struct ipv6_mreq],
1478          [have_ipv6="yes"],
1479          [have_ipv6="no"],
1480          [[
1481 #ifdef HAVE_NETINET_IN_H
1482 # include <netinet/in.h>
1483 #endif
1484 #ifdef HAVE_WS2TCPIP_H
1485 # include <ws2tcpip.h>
1486 #endif
1487          ]])
1488    fi
1489
1490    if test "x${have_ipv6}" = "xyes" ; then
1491       AC_DEFINE(HAVE_IPV6, 1, [Define if IPV6 is supported])
1492    fi
1493
1494    ECORE_CHECK_CURL([${want_curl}],
1495       [
1496        have_curl="yes"
1497        requirements_ecore_con="libcurl ${requirements_ecore_con}"
1498       ],
1499       [have_curl="no"])
1500
1501    ECORE_CHECK_GNUTLS([${want_gnutls}],
1502       [have_gnutls="yes"],
1503       [have_gnutls="no"])
1504
1505    ECORE_CHECK_OPENSSL([${want_openssl}],
1506       [have_openssl="yes"],
1507       [have_openssl="no"])
1508
1509    if test "x${have_gnutls}" = "xyes" ; then
1510       requirements_ecore_con="gnutls ${requirements_ecore_con}"
1511       # no need to add it to req_ecore_ipc, since they
1512       # depends on ecore_con anyway.
1513    else
1514       if test "x${have_openssl}" = "xyes" ; then
1515          requirements_ecore_con="openssl ${requirements_ecore_con}"
1516          # no need to add it to req_ecore_ipc, since they
1517          # depends on ecore_con anyway.
1518       fi
1519    fi
1520
1521    ECORE_CHECK_CARES([${want_cares}],
1522       [
1523        have_cares="yes"
1524        requirements_ecore_con="libcares ${requirements_ecore_con}"
1525       ],
1526       [have_cares="no"])
1527
1528 fi
1529
1530 AM_CONDITIONAL([HAVE_CARES], [test "x${have_cares}" = "xyes"])
1531
1532 # ecore_ipc
1533 ECORE_CHECK_MODULE([ipc], [${want_ecore_ipc}], [Ipc], [${have_ecore_con}],
1534    [
1535      requirements_ecore_ipc="ecore-con >= 1.2.0 ${requirements_ecore_ipc}"
1536      requirements_ecore_evas="ecore-ipc >= 1.2.0 ${requirements_ecore_evas}"
1537    ])
1538
1539 # ecore_file
1540 ECORE_CHECK_MODULE([file], [${want_ecore_file}], [File])
1541
1542 have_poll="no"
1543 have_inotify="no"
1544 have_notify_win32="no"
1545 if test "x${have_ecore_file}" = "xyes" ; then
1546    ECORE_CHECK_POLL([${want_poll}], [have_poll="yes"], [have_poll="no"])
1547    ECORE_CHECK_INOTIFY([${want_inotify}], [have_inotify="yes"], [have_inotify="no"])
1548    ECORE_CHECK_NOTIFY_WIN32([${want_notify_win32}], [have_notify_win32="yes"], [have_notify_win32="no"])
1549
1550    if test "x${have_ecore_con}" = "xyes" ; then
1551       requirements_ecore_file="ecore-con >= 1.2.0 ${requirements_ecore_file}"
1552    else
1553       ECORE_CHECK_CURL([${want_curl}],
1554          [
1555           have_curl="yes"
1556           requirements_ecore_file="libcurl ${requirements_ecore_file}"
1557          ],
1558          [have_curl="no"])
1559    fi
1560
1561 fi
1562
1563 # ecore_config
1564 #ecore_config_deps="no"
1565 #if test "x${have_eet}" = "xyes" -a "x${have_evas}"  -a "x${have_ecore_ipc}" ; then
1566 #   ecore_config_deps="yes"
1567 #fi
1568
1569 #ECORE_CHECK_MODULE([config], [${want_ecore_config}], [Config], [${ecore_config_deps}],
1570 #   [requirements_ecore_config="ecore-ipc >= 1.2.0 evas >= 1.2.0 eet >= 1.6.0 ${requirements_ecore_config}"])
1571
1572 AM_CONDITIONAL(BUILD_ECORE_CONFIG, false)
1573
1574 # ecore_imf
1575
1576 ECORE_CHECK_MODULE([imf], [${want_ecore_imf}], [Imf])
1577
1578 # ecore_imf_evas
1579
1580 ecore_imf_evas_deps="no"
1581 if test "x${have_ecore_imf}" = "xyes" -a "x${have_evas}" = "xyes" ; then
1582    ecore_imf_evas_deps="yes"
1583 fi
1584
1585 ECORE_CHECK_MODULE([imf-evas], [${want_ecore_imf}], [Imf_Evas], [${ecore_imf_evas_deps}],
1586    [requirements_ecore_imf_evas="ecore-imf >= 1.2.0 evas >= 1.2.0 ${requirements_ecore_imf_evas}"])
1587
1588 # ecore_input{_evas}
1589 ECORE_CHECK_MODULE([input], [${want_ecore_input}], [Input])
1590 ECORE_CHECK_MODULE([input-evas], [${want_ecore_input}], [Input_Evas], [${have_evas}],
1591    [requirements_ecore_input_evas="ecore-input >= 1.2.0 evas >= 1.2.0 ${requirements_ecore_input}"])
1592
1593 # ecore_imf_xim
1594 AM_CONDITIONAL(BUILD_ECORE_IMF_XIM, false)
1595 ecore_imf_xim_deps="no"
1596 echo "have_ecore_x_xlib: ${have_ecore_x_xlib}"
1597 if test    "x${have_ecore_imf}" = "xyes" \
1598         -a "x${have_ecore_x_xlib}" = "xyes" \
1599         -a "x${have_ecore_input}" = "xyes" ; then
1600    ecore_imf_xim_deps="yes"
1601    AC_DEFINE(BUILD_ECORE_IMF_XIM, 1, [Ecore Imf XIM Support])
1602 fi
1603
1604 ECORE_CHECK_MODULE([imf-xim], [${want_ecore_imf}], [Imf_XIM], [${ecore_imf_xim_deps}],
1605    [requirements_ecore_imf_xim="ecore-imf >= 1.2.0 ecore-x >= 1.2.0 ecore-input >= 1.2.0 ${requirements_ecore_imf_xim}"])
1606
1607 # ecore_imf_scim
1608 PKG_CHECK_MODULES([SCIM], [scim], [have_scim="yes"], [have_scim="no"])
1609
1610 AM_CONDITIONAL(BUILD_ECORE_IMF_SCIM, false)
1611 ecore_imf_scim_deps="no"
1612 echo "have_ecore_x_xlib: ${have_ecore_x_xlib}"
1613 if test    "x${have_ecore_imf}" = "xyes" \
1614         -a "x${have_scim}" =  "xyes" \
1615         -a "x${have_ecore_input}" = "xyes" ; then
1616    ecore_imf_scim_deps="yes"
1617    AC_DEFINE(BUILD_ECORE_IMF_SCIM, 1, [Ecore Imf SCIM Support])
1618 fi
1619
1620 ECORE_CHECK_MODULE([imf-scim], [${want_ecore_imf}], [Imf_SCIM], [${ecore_imf_scim_deps}],
1621    [requirements_ecore_imf_scim="ecore-imf >= 1.2.0 ecore-x >= 1.2.0 ecore-input >= 1.2.0 ${requirements_ecore_imf_scim}"])
1622
1623 ## Graphic systems
1624
1625 # ecore_x{cb}
1626
1627 ecore_x_deps="no"
1628 if test "x${have_x}" = "xyes" -a \
1629         "x${have_ecore_input}" = "xyes" ; then
1630    ecore_x_deps="yes"
1631 fi
1632
1633 ECORE_CHECK_MODULE([x], [${want_ecore_x}], [X], [${ecore_x_deps}],
1634   [
1635    ecore_x_libs="$ecore_x_libs $x_libs"
1636    requirements_ecore_x="ecore-input >= 1.2.0 ${requirements_ecore_x}"
1637   ])
1638
1639 # ecore_win32
1640
1641 ECORE_CHECK_MODULE([win32], [${want_ecore_win32}], [Win32], [${have_ecore_input}],
1642    [
1643     ecore_win32_libs="-lole32 -lgdi32"
1644     requirements_ecore_win32="ecore-input >= 1.2.0 ${requirements_ecore_win32}"
1645    ])
1646 AC_SUBST(ecore_win32_libs)
1647
1648 # ecore_cocoa
1649
1650 ecore_cocoa_deps="no"
1651 if test "x${have_ecore_input}" = "xyes" -a "x${have_cocoa}" = "xyes" ; then
1652    ecore_cocoa_deps="yes"
1653 fi
1654
1655 ECORE_CHECK_MODULE([cocoa], [${want_ecore_cocoa}], [Cocoa], [${ecore_cocoa_deps}],
1656    [requirements_ecore_cocoa="ecore-input >= 1.2.0 ${requirements_ecore_cocoa}"])
1657
1658 # ecore_sdl
1659
1660 ecore_sdl_deps="no"
1661 if test "x${have_sdl}" = "xyes" -a "x${have_ecore_input}" = "xyes" ; then
1662    ecore_sdl_deps="yes"
1663 fi
1664
1665 ECORE_CHECK_MODULE([sdl], [${want_ecore_sdl}], [Sdl], [${ecore_sdl_deps}],
1666    [requirements_ecore_sdl="ecore-input >= 1.2.0 ${requirements_ecore_sdl}"])
1667
1668 ECORE_CHECK_MODULE([psl1ght], [${want_ecore_psl1ght}], [psl1ght], [${ecore_psl1ght_deps}],
1669    [requirements_ecore_psl1ght="ecore-input >= 1.2.0 ${requirements_ecore_psl1ght}"])
1670
1671 # ecore_fb
1672 ECORE_CHECK_MODULE([fb], [${want_ecore_fb}], [FB], [$have_fb])
1673
1674 if test "x${have_ecore_fb}" = "xyes" ; then
1675    ECORE_CHECK_TSLIB([${want_tslib}],
1676       [
1677        have_tslib="yes"
1678        requirements_ecore_fb="${_tslib_requirement} ${requirements_ecore_fb}"
1679       ],
1680       [have_tslib="no"])
1681 fi
1682
1683 # ecore_directfb
1684
1685 ECORE_CHECK_MODULE([directfb], [${want_ecore_directfb}], [DirectFB], [${have_directfb}],
1686    [requirements_ecore_directfb="directfb ${requirements_ecore_directfb}"])
1687
1688 # ecore_wince
1689
1690 ECORE_CHECK_MODULE([wince], [${want_ecore_wince}], [WinCE], [${have_ecore_input}],
1691    [requirements_ecore_win32="ecore-input >= 1.2.0 ${requirements_ecore_win32}"])
1692
1693 ## Ecore Evas
1694
1695 # ecore_evas
1696
1697 ecore_evas_deps="no"
1698 if test "x${have_evas}" = "xyes" && test "x${have_ecore_input}" = "xyes" && test "x${have_ecore_input_evas}" = "xyes" ; then
1699    ecore_evas_deps="yes"
1700 fi
1701
1702 ECORE_CHECK_MODULE([evas], [${want_ecore_evas}], [Evas], [${ecore_evas_deps}],
1703   [requirements_ecore_evas="ecore-input >= 1.2.0 ecore-input-evas >= 1.2.0 evas >= 1.2.0 ${requirements_ecore_evas}"])
1704
1705 # ecore_evas_buffer
1706
1707 ECORE_EVAS_CHECK_MODULE([software-buffer],
1708    [${want_ecore_evas_software_buffer}],
1709    [Software Buffer],
1710    [yes])
1711
1712 # ecore_evas_x11
1713
1714 # ecore_evas_software_x11
1715
1716 ECORE_EVAS_CHECK_MODULE([software-x11],
1717    [${want_ecore_evas_software_x11}],
1718    [Software X11],
1719    [${have_ecore_x}])
1720
1721 have_ecore_evas_software_xlib="no"
1722 have_ecore_evas_software_xcb="no"
1723 if test "x$have_ecore_evas_software_x11" = "xyes" ; then
1724    have_ecore_evas_software_xlib=`${PKG_CONFIG} --variable=Xlib evas-software-x11`
1725    if test "x${have_ecore_evas_software_xlib}" = "xstatic"; then
1726       have_ecore_evas_software_xlib="yes"
1727    fi
1728    if test "x${have_ecore_evas_software_xlib}" = "xyes" -a "x${have_ecore_x_xlib}" = "xyes" ; then
1729       AC_DEFINE(BUILD_ECORE_EVAS_SOFTWARE_XLIB, 1, [Evas Software Xlib Engine Support])
1730    fi
1731    have_ecore_evas_software_xcb=`${PKG_CONFIG} --variable=XCB evas-software-x11`
1732    if test "x$have_ecore_evas_software_xcb" = "xstatic"; then
1733       have_ecore_evas_software_xcb="yes"
1734    fi
1735    if test "x$have_ecore_evas_software_xcb" = "xyes" -a "x${have_ecore_x_xcb}" = "xyes" ; then
1736       AC_DEFINE(BUILD_ECORE_EVAS_SOFTWARE_XCB, 1, [Evas Software XCB Engine Support])
1737    fi
1738 fi
1739
1740 # ecore_evas_opengl_x11
1741
1742 ECORE_EVAS_CHECK_MODULE([opengl-x11],
1743    [${want_ecore_evas_opengl_x11}],
1744    [OpenGL Xlib],
1745    [${have_ecore_x}])
1746
1747 have_ecore_evas_opengl_xlib="no"
1748 have_ecore_evas_opengl_xcb="no"
1749 if test "x${have_ecore_evas_opengl_x11}" = "xyes" -o "x${have_ecore_evas_opengl_x11}" = "xstatic" ; then
1750    have_ecore_evas_opengl_xlib=`${PKG_CONFIG} --variable=Xlib evas-opengl-x11`
1751    if test "x${have_ecore_evas_opengl_xlib}" = "xyes" ; then
1752       AC_DEFINE(BUILD_ECORE_EVAS_OPENGL_XLIB, 1, [OpenGL Xlib rendering backend])
1753    fi
1754
1755 # opengl does not work with xcb (yet)
1756    have_ecore_evas_opengl_xcb=`${PKG_CONFIG} --variable=XCB evas-opengl-x11`
1757    if test "x${have_ecore_evas_opengl_xcb}" = "xstatic"; then
1758       have_ecore_evas_opengl_xcb="yes"
1759    fi
1760    if test "x${have_ecore_evas_opengl_xcb}" = "xyes" -a "x${have_ecore_x_xcb}" = "xyes" ; then
1761       PKG_CHECK_MODULES(XCB_X11, x11-xcb,
1762         [ have_ecore_x_opengl_xcb="yes"
1763           requirements_ecore_x="x11-xcb ${requirements_ecore_x}"
1764           AC_DEFINE(BUILD_ECORE_X_OPENGL_XCB, 1, [Build support for XCB-based OpenGL])
1765           AC_DEFINE(BUILD_ECORE_EVAS_OPENGL_XCB, 1, [OpenGL XCB rendering backend])
1766         ],
1767         [ have_ecore_x_opengl_xcb="no" ])
1768     else
1769       have_ecore_x_opengl_xcb="no"
1770       AC_MSG_NOTICE("XCB-based OpenGL explicitly disabled")
1771     fi
1772 fi
1773
1774 # ecore_evas_software_x11 16 bits
1775
1776 ECORE_EVAS_CHECK_MODULE([software-16-x11],
1777    [${want_ecore_evas_software_16_x11}],
1778    [Software Xlib 16 bits],
1779    [${have_ecore_x_xlib}])
1780
1781 ECORE_EVAS_CHECK_MODULE([software-8-x11],
1782     [$want_ecore_evas_software_8_x11],
1783     [Software 8bit X11],
1784     $have_ecore_x_xcb)
1785
1786
1787 if test "x$have_ecore_evas_software_x11" = "xyes" -o \
1788         "x$have_ecore_evas_opengl_x11" = "xyes" -o \
1789         "x$have_ecore_evas_software_8_x11" = "xyes" -o \
1790         "x$have_ecore_evas_software_16_x11" = "xyes" -o \
1791         "x$have_ecore_evas_software_xcb" = "xyes"; then
1792    AC_DEFINE(BUILD_ECORE_EVAS_X11, 1, [Support for X Window Engines in Ecore_Evas])
1793    requirements_ecore_evas="ecore-x >= 1.2.0 ${requirements_ecore_evas}"
1794 fi
1795
1796 # ecore_evas_win32
1797
1798 ECORE_EVAS_CHECK_MODULE([software-gdi],
1799    [${want_ecore_evas_software_gdi}],
1800    [Software GDI],
1801    [${have_ecore_win32}])
1802
1803 ECORE_EVAS_CHECK_MODULE([software-ddraw],
1804    [${want_ecore_evas_software_ddraw}],
1805    [Software DirectDraw],
1806    [${have_ecore_win32}])
1807
1808 ECORE_EVAS_CHECK_MODULE([direct3d],
1809    [${want_ecore_evas_direct3d}],
1810    [Direct3d],
1811    [${have_ecore_win32}])
1812
1813 ECORE_EVAS_CHECK_MODULE([opengl-glew],
1814    [${want_ecore_evas_opengl_glew}],
1815    [Glew OpenGL],
1816    [${have_ecore_win32}])
1817
1818 ECORE_EVAS_CHECK_MODULE([software-16-ddraw],
1819    [${want_ecore_evas_software_16_ddraw}],
1820    [16 bpp Software DirectDraw],
1821    [${have_ecore_win32}])
1822
1823 if test "x${have_ecore_evas_software_gdi}" = "xyes" -o \
1824         "x${have_ecore_evas_software_ddraw}" = "xyes" -o \
1825         "x${have_ecore_evas_direct3d}" = "xyes" -o \
1826         "x${have_ecore_evas_opengl_glew}" = "xyes" -o \
1827         "x${have_ecore_evas_software_16_ddraw}" = "xyes" ; then
1828    AC_DEFINE(BUILD_ECORE_EVAS_WIN32, 1, [Support for Win32 Engine in Ecore_Evas])
1829    requirements_ecore_evas="ecore-win32 >= 1.2.0 ${requirements_ecore_evas}"
1830 fi
1831
1832 # ecore_evas_software_sdl
1833
1834 have_ecore_evas_software_sdl="no"
1835 if test "x${have_ecore_sdl}" = "xyes"; then
1836    requirements_ecore_evas="ecore-sdl >= 1.2.0 ${requirements_ecore_evas}"
1837    have_ecore_evas_software_sdl="yes"
1838    AC_DEFINE(BUILD_ECORE_EVAS_SOFTWARE_SDL, 1, [Support for Software SDL Engine in Ecore_Evas])
1839    requirements_ecore_evas="ecore-sdl >= 1.2.0 ${requirements_ecore_evas}"
1840 fi
1841
1842 # ecore_evas_gl_sdl
1843
1844 ECORE_EVAS_CHECK_MODULE([opengl-sdl],
1845    [${want_ecore_evas_gl_sdl}],
1846    [OpenGL SDL],
1847    [${have_ecore_sdl}],
1848    [requirements_ecore_evas="ecore-sdl >= 1.2.0 ${requirements_ecore_evas}"])
1849
1850 # ecore_evas_cocoa
1851
1852 ECORE_EVAS_CHECK_MODULE([opengl-cocoa],
1853    [${want_ecore_evas_gl_cocoa}],
1854    [OpenGL Cocoa],
1855    [${have_ecore_cocoa}],
1856    [requirements_ecore_evas="ecore-cocoa >= 1.2.0 ${requirements_ecore_evas}"])
1857
1858 # ecore_evas_directfb
1859
1860 ECORE_EVAS_CHECK_MODULE([directfb],
1861    [${want_ecore_evas_directfb}],
1862    [DirectFB],
1863    [${have_ecore_directfb}],
1864    [requirements_ecore_evas="ecore-directfb >= 1.2.0 ${requirements_ecore_evas}"])
1865
1866 # ecore_evas_fb
1867
1868 ECORE_EVAS_CHECK_MODULE([fb],
1869    [${want_ecore_evas_fb}],
1870    [Linux Framebuffer],
1871    [${have_ecore_fb}],
1872    [requirements_ecore_evas="ecore-fb >= 1.2.0 ${requirements_ecore_evas}"])
1873
1874 # ecore_evas_wince
1875
1876 ECORE_EVAS_CHECK_MODULE([software-16-wince],
1877    [${want_ecore_evas_software_16_wince}],
1878    [16 bpp Software Windows CE],
1879    [${have_ecore_wince}],
1880    [requirements_ecore_evas="ecore-wince >= 1.2.0 ${requirements_ecore_evas}"])
1881
1882 # ecore_evas_ews
1883
1884 ECORE_EVAS_CHECK_MODULE_FULL([ews], [software-buffer],
1885    [${want_ecore_evas_ews}],
1886    [Ecore Evas Single Process Windowing System],
1887    [yes], [])
1888
1889 # ecore_evas_extn
1890
1891 have_extn="yes"
1892 if test "x${have_ecore_ipc}" = "xno" || \
1893    test "x${have_ecore_evas_software_buffer}" = "xno" || \
1894    test "x${have_shm_open}" = "xno" ; then
1895    have_extn="no"
1896 fi
1897
1898 dnl THIS IS SPECIAL - dont use normal ECORE_EVAS_CHECK_MODULE
1899 have_ecore_evas_extn="no"
1900 if test "x${want_ecore_evas_extn}" = "xyes" && \
1901    test "x${have_extn}" = "xyes" && \
1902    test "x${have_ecore_evas}" = "xyes"; then
1903    AC_DEFINE([BUILD_ECORE_EVAS_EXTN], [1], [Support for Extn Engine in Ecore_Evas])
1904    have_ecore_evas_extn="yes"
1905 fi
1906
1907 # ecore_evas_psl1ght
1908
1909 ECORE_EVAS_CHECK_MODULE([psl1ght],
1910    [${want_ecore_evas_psl1ght}],
1911    [PSL1GHT],
1912    [${have_ecore_psl1ght}],
1913    [requirements_ecore_evas="ecore-psl1ght >= 1.2.0 ${requirements_ecore_evas}"])
1914
1915 ### WAYLAND
1916
1917 ecore_wayland_deps="no"
1918 have_wayland="no"
1919 if test "x${want_ecore_wayland}" = "xyes" ; then
1920   PKG_CHECK_MODULES([WAYLAND], [egl wayland-egl wayland-client xkbcommon], [have_wayland="yes"], [have_wayland="no"])
1921 fi
1922 if test "x${have_ecore_input}" = "xyes" -a "x${have_wayland}" = "xyes" ; then
1923   ecore_wayland_deps="yes"
1924 fi
1925
1926 ECORE_CHECK_MODULE([wayland], [${want_ecore_wayland}], [Wayland], [${ecore_wayland_deps}])
1927 if test "x${have_ecore_wayland}" = "xyes" ; then
1928   requirements_ecore_wayland="ecore-input >= 1.2.0 egl wayland-egl wayland-client xkbcommon ${requirements_ecore_wayland}"
1929 fi
1930
1931 ECORE_EVAS_CHECK_MODULE_FULL([wayland-shm], [wayland-shm], 
1932    [${want_ecore_evas_wayland_shm}],
1933    [Wayland Shm],
1934    [${have_ecore_wayland}],
1935    [requirements_ecore_evas="${requirements_ecore_wayland} ${requirements_ecore_evas}"])
1936
1937 ECORE_EVAS_CHECK_MODULE_FULL([wayland-egl], [wayland-egl egl], 
1938    [${want_ecore_evas_wayland_egl}],
1939    [Wayland Egl],
1940    [${have_ecore_wayland}],
1941    [
1942       PKG_CHECK_MODULES([WAYLAND_EGL], [wayland-egl], [have_wayland_egl="yes"], [have_wayland_egl="no"])
1943       if test "x${have_wayland_egl}" = "xyes" ; then
1944          requirements_ecore_evas="wayland-egl egl ${requirements_ecore_wayland} ${requirements_ecore_evas}"
1945       fi
1946    ])
1947
1948 ### Unit tests
1949
1950 EFL_CHECK_TESTS([enable_tests="yes"], [enable_tests="no"])
1951
1952 ### install and build examples
1953
1954 EFL_CHECK_BUILD_EXAMPLES([enable_build_examples="yes"], [enable_build_examples="no"])
1955 EFL_CHECK_INSTALL_EXAMPLES([enable_install_examples="yes"], [enable_install_examples="no"])
1956
1957 ### requirements
1958
1959 AC_SUBST(requirements_ecore)
1960 AC_SUBST(requirements_ecore_con)
1961 #AC_SUBST(requirements_ecore_config)
1962 AC_SUBST(requirements_ecore_directfb)
1963 AC_SUBST(requirements_ecore_evas)
1964 AC_SUBST(requirements_ecore_fb)
1965 AC_SUBST(requirements_ecore_file)
1966 AC_SUBST(requirements_ecore_imf)
1967 AC_SUBST(requirements_ecore_imf_evas)
1968 AC_SUBST(requirements_ecore_input)
1969 AC_SUBST(requirements_ecore_input_evas)
1970 AC_SUBST(requirements_ecore_ipc)
1971 AC_SUBST(requirements_ecore_cocoa)
1972 AC_SUBST(requirements_ecore_sdl)
1973 AC_SUBST(requirements_ecore_psl1ght)
1974 AC_SUBST(requirements_ecore_x)
1975 AC_SUBST(requirements_ecore_win32)
1976 AC_SUBST(requirements_ecore_wince)
1977 AC_SUBST(requirements_ecore_imf_xim)
1978 AC_SUBST(requirements_ecore_imf_scim)
1979 AC_SUBST(requirements_ecore_wayland)
1980
1981 AC_CONFIG_FILES([
1982 Makefile
1983 ecore-con.pc
1984 ecore-config.pc
1985 ecore-directfb.pc
1986 ecore-evas.pc
1987 ecore-fb.pc
1988 ecore-file.pc
1989 ecore-imf.pc
1990 ecore-imf-evas.pc
1991 ecore-ipc.pc
1992 ecore-x.pc
1993 ecore-input.pc
1994 ecore-input-evas.pc
1995 ecore-win32.pc
1996 ecore-sdl.pc
1997 ecore-cocoa.pc
1998 ecore-psl1ght.pc
1999 ecore-wince.pc
2000 ecore-wayland.pc
2001 ecore.pc
2002 doc/ecore.dox
2003 doc/Makefile
2004 doc/Doxyfile
2005 src/Makefile
2006 src/util/Makefile
2007 src/bin/Makefile
2008 src/lib/Makefile
2009 src/lib/ecore/Makefile
2010 src/lib/ecore_con/Makefile
2011 src/lib/ecore_config/Makefile
2012 src/lib/ecore_directfb/Makefile
2013 src/lib/ecore_evas/Makefile
2014 src/lib/ecore_fb/Makefile
2015 src/lib/ecore_file/Makefile
2016 src/lib/ecore_cocoa/Makefile
2017 src/lib/ecore_sdl/Makefile
2018 src/lib/ecore_psl1ght/Makefile
2019 src/lib/ecore_imf/Makefile
2020 src/lib/ecore_imf_evas/Makefile
2021 src/lib/ecore_input/Makefile
2022 src/lib/ecore_input_evas/Makefile
2023 src/lib/ecore_ipc/Makefile
2024 src/lib/ecore_win32/Makefile
2025 src/lib/ecore_wince/Makefile
2026 src/lib/ecore_x/Makefile
2027 src/lib/ecore_x/xlib/Makefile
2028 src/lib/ecore_x/xcb/Makefile
2029 src/lib/ecore_wayland/Makefile
2030 src/examples/Makefile
2031 src/tests/Makefile
2032 src/modules/Makefile
2033 src/modules/immodules/Makefile
2034 src/modules/immodules/xim/Makefile
2035 src/modules/immodules/scim/Makefile
2036 ecore.spec
2037 $po_makefile_in
2038 ])
2039
2040 AC_OUTPUT
2041
2042 echo
2043 echo "$PACKAGE $VERSION"
2044 echo
2045 echo "Optional Modules:"
2046 echo
2047 echo " Core:"
2048 echo
2049 echo "  Ecore........................: always"
2050 echo "    Thread support.............: $have_threads"
2051 echo "    Thread safety..............: $want_thread_safety"
2052 echo "    GLib support...............: $have_glib"
2053 echo "    Always integrate GLib......: $want_glib_integration_always"
2054 echo "    Use g_main_loop............: $want_g_main_loop"
2055 echo "    Gathering memory statistic.: $have_mallinfo"
2056 echo "    Gathering timer allocation.: $want_ecore_timer_dump"
2057 echo "  Ecore_Con....................: $have_ecore_con"
2058 if test "x$have_ecore_con" = "xyes" ; then
2059   echo $ECHO_N "    OpenSSL....................: $have_openssl $ECHO_C"
2060 if test "x$have_gnutls" = "xyes" ; then
2061   echo " (disabled)"
2062 else
2063   echo
2064 fi
2065   echo "    IPv6.......................: $have_ipv6"
2066   echo "    GnuTLS.....................: $have_gnutls"
2067   echo "    CURL.......................: $have_curl"
2068   echo "    Local Sockets..............: $want_ecore_con_local_sockets"
2069 if test "x$want_ecore_con_local_sockets" = "xyes" ; then
2070   echo "      Abstract Sockets.........: $want_ecore_con_abstract_sockets"
2071 fi
2072   echo "    c-ares.....................: $have_cares"
2073 fi
2074 echo "  Ecore_Ipc....................: $have_ecore_ipc"
2075 if test "x$have_ecore_ipc" = "xyes" ; then
2076   echo $ECHO_N "    OpenSSL....................: $have_openssl $ECHO_C"
2077 if test "x$have_gnutls" = "xyes" ; then
2078   echo " (disabled)"
2079 else
2080   echo
2081 fi
2082   echo "    GnuTLS.....................: $have_gnutls"
2083 fi
2084 echo "  Ecore_File...................: $have_ecore_file"
2085 if test "x$have_ecore_file" = "xyes" ; then
2086   echo "    Inotify....................: $have_inotify"
2087   echo "    Windows notification.......: $have_notify_win32"
2088   echo "    Poll.......................: $have_poll"
2089   echo "    CURL.......................: $have_curl"
2090 fi
2091 #echo "  Ecore_Config.................: $have_ecore_config (deprecated)"
2092 echo "  Ecore_IMF....................: $have_ecore_imf"
2093 echo "    XIM........................: $have_ecore_imf_xim"
2094 echo "    SCIM.......................: $have_ecore_imf_scim"
2095 echo "  Ecore_IMF_Evas...............: $have_ecore_imf_evas"
2096 echo "  Ecore_Input..................: $have_ecore_input"
2097 echo "  Ecore_Input_Evas.............: $have_ecore_input_evas"
2098
2099 echo
2100 echo " Graphic systems:"
2101 echo
2102
2103 if test "x$have_ecore_x" = "xyes" ; then
2104   if test "x$have_ecore_x_xcb" = "xyes" ; then
2105     echo "  Ecore_X (XCB backend)........: $have_ecore_x_xcb"
2106     echo "    Xprint.....................: $have_ecore_x_xcb_xprint"
2107     echo "    Xinerama...................: $have_ecore_x_xcb_xinerama"
2108     echo "    Xrandr.....................: $have_ecore_x_xcb_randr"
2109     echo "    Xscreensaver...............: $have_ecore_x_xcb_screensaver"
2110     echo "    Xshape.....................: $have_ecore_x_xcb_shape"
2111     echo "    Xgesture...................: $have_ecore_x_xcb_gesture"
2112     echo "    Xsync......................: $have_ecore_x_xcb_sync"
2113     echo "    Xrender....................: $have_ecore_x_xcb_render"
2114     echo "    Xcomposite.................: $have_ecore_x_xcb_composite"
2115     echo "    Xfixes.....................: $have_ecore_x_xcb_xfixes"
2116     echo "    Xdamage....................: $have_ecore_x_xcb_damage"
2117     echo "    Xdpms......................: $have_ecore_x_xcb_dpms"
2118     echo "    Xtest......................: $have_ecore_x_xcb_xtest"
2119   else
2120     echo "  Ecore_X (Xlib backend).......: $have_ecore_x"
2121     echo "    Xcursor....................: $use_Xcursor"
2122     echo "    Xkb........................: $use_xkb"
2123     echo "    Xprint.....................: $use_xprint"
2124     echo "    Xinerama...................: $use_xinerama"
2125     echo "    Xrandr.....................: $use_xrandr"
2126     echo "    Xgesture...................: $use_xgesture"
2127     echo "    Xscreensaver...............: $use_xss"
2128     echo "    Xrender....................: $use_xrender"
2129     echo "    Xcomposite.................: $use_xcomposite"
2130     echo "    Xfixes.....................: $use_xfixes"
2131     echo "    Xdamage....................: $use_xdamage"
2132     echo "    Xdpms......................: $use_xdpms"
2133     echo "    Xtest......................: $use_xtest"
2134     echo "    XIM........................: $want_xim"
2135     echo "    Xi2........................: $use_xi2"
2136   fi
2137 else
2138   echo "  Ecore_X......................: $have_ecore_x"
2139 fi
2140 echo "  Ecore_Win32..................: $have_ecore_win32"
2141 echo "  Ecore_Cocoa..................: $have_ecore_cocoa"
2142 echo "  Ecore_SDL....................: $have_ecore_sdl"
2143 echo "  Ecore_FB.....................: $have_ecore_fb"
2144 if test "x${have_ecore_fb}" = "xyes" ; then
2145   echo "    Touchscreen................: $have_tslib"
2146 fi
2147 echo "  Ecore_DirectFB...............: $have_ecore_directfb"
2148 echo "  Ecore_WinCE..................: $have_ecore_wince"
2149 echo "  Ecore_PSL1GHT................: $have_ecore_psl1ght"
2150 echo "  Ecore_Wayland................: $have_ecore_wayland"
2151
2152 echo
2153 echo " Ecore Evas:"
2154 echo
2155
2156 echo "  Ecore_Evas...................: $have_ecore_evas"
2157 if test "x${have_ecore_evas}" = "xyes" ; then
2158   echo "    Software Memory Buffer.....: $have_ecore_evas_software_buffer"
2159   if test "x${have_ecore_evas_software_x11}" = "xyes" ; then
2160     echo "    Software X11...............: $have_ecore_evas_software_x11 (Xlib=${have_ecore_evas_software_xlib}) (XCB=${have_ecore_evas_software_xcb})"
2161   else
2162     echo "    Software X11...............: $have_ecore_evas_software_x11"
2163   fi
2164   if test "x${have_ecore_evas_opengl_x11}" = "xyes" ; then
2165     echo "    OpenGL X11.................: $have_ecore_evas_opengl_x11 (Xlib=${have_ecore_evas_opengl_xlib}) (XCB=${have_ecore_evas_opengl_xcb})"
2166   else
2167     echo "    OpenGL X11.................: $have_ecore_evas_opengl_x11"
2168   fi
2169   echo "    Software GDI...............: $have_ecore_evas_software_gdi"
2170   echo "    Software DirectDraw........: $have_ecore_evas_software_ddraw"
2171   echo "    Direct3D...................: $have_ecore_evas_direct3d"
2172   echo "    OpenGL Glew................: $have_ecore_evas_opengl_glew"
2173   echo "    Software SDL...............: $have_ecore_evas_software_sdl"
2174   echo "    OpenGL SDL.................: $have_ecore_evas_opengl_sdl"
2175   echo "    OpenGL Cocoa...............: $have_ecore_evas_opengl_cocoa"
2176   echo "    DirectFB...................: $have_ecore_evas_directfb"
2177   echo "    PSL1GHT....................: $have_ecore_evas_psl1ght"
2178   echo "    Software Framebuffer.......: $have_ecore_evas_fb"
2179   echo "    Software 8bit grayscale XCB: $have_ecore_evas_software_8_x11"
2180   echo "    Software 16bit X11.........: $have_ecore_evas_software_16_x11"
2181   echo "    Software 16bit DirectDraw..: $have_ecore_evas_software_16_ddraw"
2182   echo "    Software 16bit WinCE.......: $have_ecore_evas_software_16_wince"
2183   echo "    Sing.Proc. Windowing System: $have_ecore_evas_ews"
2184   echo "    Wayland Shm................: $have_ecore_evas_wayland_shm"
2185   echo "    Wayland Egl................: $have_ecore_evas_wayland_egl"
2186   echo "    Extn (Plug/socket Extn)....: $have_ecore_evas_extn"
2187 fi
2188 echo
2189 echo "  Tests................: ${enable_tests}"
2190 echo "  Maximum log level....: ${with_max_log_level}"
2191 echo "Documentation..........: ${build_doc}"
2192 echo
2193 echo "Compilation............: make (or gmake)"
2194 echo "  CPPFLAGS.............: $CPPFLAGS"
2195 echo "  CFLAGS...............: $CFLAGS"
2196 echo "  CXXFLAGS.............: $CXXFLAGS"
2197 echo "  LDFLAGS..............: $LDFLAGS"
2198 echo
2199 echo "Installation...........: make install (as root if needed, with 'su' or 'sudo')"
2200 echo "  prefix...............: $prefix"
2201 echo