aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarcel Hollerbach <mail@marcel-hollerbach.de>2019-06-18 08:12:44 +0200
committerMarcel Hollerbach <mail@marcel-hollerbach.de>2019-06-18 08:12:53 +0200
commit4f8e15c16c4f68b6fae8708b177ce672daefc59c (patch)
tree8c1bf8d808e0939bbd83291855961512ee42e70c
parentautotools: REMOVAL! (diff)
downloadefl-4f8e15c16c4f68b6fae8708b177ce672daefc59c.tar.gz
Revert "autotools: REMOVAL!"
This reverts commit e8c69667b01e2795c1e4ead0536652f935ffa674. git push on a wrong branch, sorry. This will land today, but not now.
-rw-r--r--.travis.yml24
-rw-r--r--Makefile.am537
-rw-r--r--Makefile_Elm_Helpers.am21
-rwxr-xr-xautogen.sh39
-rw-r--r--configure.ac6337
-rw-r--r--data/Makefile.am308
-rw-r--r--data/elementary/config/Makefile.am18
-rw-r--r--data/elementary/config/mobile/Makefile.am22
-rw-r--r--data/elementary/config/standard/Makefile.am23
-rw-r--r--data/elementary/desktop/Makefile.am10
-rw-r--r--data/elementary/edje_externals/Makefile.am26
-rw-r--r--data/elementary/images/Makefile.am93
-rw-r--r--data/elementary/objects/Makefile.am29
-rw-r--r--data/elementary/themes/Makefile.am1528
-rw-r--r--doc/Makefile.am263
-rw-r--r--doc/previews/Makefile.am73
-rw-r--r--doc/widgets/Makefile.am196
-rw-r--r--m4/.gitignore36
-rw-r--r--m4/ac_define_if.m47
-rw-r--r--m4/ac_path_generic.m4137
-rw-r--r--m4/ax_cxx_compile_stdcxx_11.m4133
-rw-r--r--m4/ecore_check_c_extension.m425
-rw-r--r--m4/ecore_check_module.m435
-rw-r--r--m4/efl.m4509
-rw-r--r--m4/efl_attribute.m483
-rw-r--r--m4/efl_beta.m45
-rw-r--r--m4/efl_binary.m442
-rw-r--r--m4/efl_check_funcs.m4333
-rw-r--r--m4/efl_check_libs.m473
-rw-r--r--m4/efl_compiler.m490
-rw-r--r--m4/efl_define.m420
-rw-r--r--m4/efl_doxygen.m498
-rw-r--r--m4/efl_eo.m46
-rw-r--r--m4/efl_find_x.m4194
-rw-r--r--m4/efl_libunwind.m461
-rw-r--r--m4/efl_lua_old.m436
-rw-r--r--m4/efl_mono.m495
-rw-r--r--m4/efl_path_max.m436
-rw-r--r--m4/efl_pkg_config.m410
-rw-r--r--m4/efl_stdcxx_11.m4136
-rw-r--r--m4/efl_threads.m4163
-rw-r--r--m4/eina_check.m449
-rw-r--r--m4/eina_config.m48
-rw-r--r--m4/eio_check_options.m412
-rw-r--r--m4/elm_check_backend.m427
-rw-r--r--m4/elm_check_option.m460
-rw-r--r--m4/elm_quicklaunch.m424
-rw-r--r--m4/emotion_generic_players.m437
-rw-r--r--m4/emotion_module.m4133
-rw-r--r--m4/evas_check_engine.m4629
-rw-r--r--m4/evas_check_loader.m4678
-rw-r--r--m4/evil_windows.m453
-rw-r--r--m4/gcc_check_builtin.m413
-rw-r--r--m4/libgcrypt.m4123
-rw-r--r--m4/pkg_var.m414
-rw-r--r--src/Makefile.am223
-rw-r--r--src/Makefile_Cxx.am412
-rw-r--r--src/Makefile_EPhysics.am29
-rw-r--r--src/Makefile_Ecore.am456
-rw-r--r--src/Makefile_Ecore_Audio.am101
-rw-r--r--src/Makefile_Ecore_Avahi.am16
-rw-r--r--src/Makefile_Ecore_Buffer.am113
-rw-r--r--src/Makefile_Ecore_Cocoa.am26
-rw-r--r--src/Makefile_Ecore_Con.am278
-rw-r--r--src/Makefile_Ecore_Drm.am39
-rw-r--r--src/Makefile_Ecore_Drm2.am36
-rw-r--r--src/Makefile_Ecore_Evas.am317
-rw-r--r--src/Makefile_Ecore_FB.am23
-rw-r--r--src/Makefile_Ecore_File.am33
-rw-r--r--src/Makefile_Ecore_IMF.am165
-rw-r--r--src/Makefile_Ecore_IMF_Evas.am15
-rw-r--r--src/Makefile_Ecore_Input.am21
-rw-r--r--src/Makefile_Ecore_Input_Evas.am18
-rw-r--r--src/Makefile_Ecore_Ipc.am17
-rw-r--r--src/Makefile_Ecore_Js.am18
-rw-r--r--src/Makefile_Ecore_SDL.am20
-rw-r--r--src/Makefile_Ecore_Wayland.am33
-rw-r--r--src/Makefile_Ecore_Win32.am35
-rw-r--r--src/Makefile_Ecore_Wl2.am100
-rw-r--r--src/Makefile_Ecore_X.am62
-rw-r--r--src/Makefile_Ector.am219
-rw-r--r--src/Makefile_Edje.am404
-rw-r--r--src/Makefile_Edje_Helper.am13
-rw-r--r--src/Makefile_Eet.am94
-rw-r--r--src/Makefile_Eet_Helper.am13
-rw-r--r--src/Makefile_Eeze.am192
-rw-r--r--src/Makefile_Efl.am231
-rw-r--r--src/Makefile_Efl_Js.am337
-rw-r--r--src/Makefile_Efl_Mono.am549
-rw-r--r--src/Makefile_Efl_Mono_MSBuild_Gen_Helper.am17
-rw-r--r--src/Makefile_Efreet.am255
-rw-r--r--src/Makefile_Eina.am408
-rw-r--r--src/Makefile_Eio.am114
-rw-r--r--src/Makefile_Eldbus.am157
-rw-r--r--src/Makefile_Elementary.am2022
-rw-r--r--src/Makefile_Elocation.am45
-rw-r--r--src/Makefile_Elput.am63
-rw-r--r--src/Makefile_Elua.am139
-rw-r--r--src/Makefile_Elua_Helper.am28
-rw-r--r--src/Makefile_Embryo.am69
-rw-r--r--src/Makefile_Emile.am101
-rw-r--r--src/Makefile_Emotion.am392
-rw-r--r--src/Makefile_Eo.am255
-rw-r--r--src/Makefile_Eolian.am171
-rw-r--r--src/Makefile_Eolian_Cxx.am218
-rw-r--r--src/Makefile_Eolian_Cxx_Helper.am23
-rw-r--r--src/Makefile_Eolian_Files_Helper.am27
-rw-r--r--src/Makefile_Eolian_Helper.am9
-rw-r--r--src/Makefile_Eolian_Js.am138
-rw-r--r--src/Makefile_Eolian_Js_Helper.am18
-rw-r--r--src/Makefile_Eolian_Mono_Helper.am21
-rw-r--r--src/Makefile_Escape.am27
-rw-r--r--src/Makefile_Ethumb.am88
-rw-r--r--src/Makefile_Ethumb_Client.am57
-rw-r--r--src/Makefile_Evas.am2690
-rw-r--r--src/Makefile_Evil.am80
-rw-r--r--src/Makefile_Wayland_Protocols.am6
-rw-r--r--src/Makefile_efl_wl.am55
-rw-r--r--src/benchmarks/eina/Makefile.am60
-rw-r--r--src/benchmarks/eo/Makefile.am36
-rw-r--r--src/benchmarks/evas/Makefile.am35
-rw-r--r--src/bin/elementary/Makefile.am223
-rw-r--r--src/examples/Makefile.am287
-rw-r--r--src/examples/ecore/Makefile.examples60
-rw-r--r--src/examples/edje/Makefile.examples82
-rw-r--r--src/examples/eet/Makefile.examples20
-rw-r--r--src/examples/eina/Makefile.examples52
-rw-r--r--src/examples/eio/Makefile.examples15
-rw-r--r--src/examples/eldbus/Makefile.examples22
-rw-r--r--src/examples/elocation/Makefile.examples14
-rw-r--r--src/examples/emile/Makefile.examples14
-rw-r--r--src/examples/emotion/Makefile.examples18
-rw-r--r--src/examples/eolian_cxx/Makefile.examples47
-rw-r--r--src/examples/ethumb_client/Makefile.examples14
-rw-r--r--src/examples/evas/Makefile.examples43
-rw-r--r--src/tests/efreet/data/sub/Makefile.am8
136 files changed, 27171 insertions, 0 deletions
diff --git a/.travis.yml b/.travis.yml
index 9c51162333..647e1df343 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -19,8 +19,18 @@ jobs:
- os: osx
env: BUILDSYSTEM=ninja
- os: linux
+ env: DISTRO=Fedora30-mingw CI_BUILD_TYPE=mingw
+ - os: linux
env: DISTRO=Fedora30-mingw CI_BUILD_TYPE=mingw BUILDSYSTEM=ninja
- os: linux
+ env: DISTRO=Fedora30 CI_BUILD_TYPE=options-enabled
+ - os: linux
+ env: DISTRO=Fedora30 CI_BUILD_TYPE=options-disabled
+ - os: linux
+ env: DISTRO=Fedora29 CI_BUILD_TYPE=wayland
+ - os: linux
+ env: DISTRO=Fedora29 CI_BUILD_TYPE=default
+ - os: linux
env: DISTRO=Fedora30 CI_BUILD_TYPE=options-enabled BUILDSYSTEM=ninja
- os: linux
env: DISTRO=Fedora30 CI_BUILD_TYPE=options-disabled BUILDSYSTEM=ninja
@@ -28,11 +38,25 @@ jobs:
env: DISTRO=Fedora29 CI_BUILD_TYPE=wayland BUILDSYSTEM=ninja
- os: linux
env: DISTRO=Fedora29 CI_BUILD_TYPE=default BUILDSYSTEM=ninja
+ - os: osx
+ if: type = cron
+ - os: linux
+ if: type = cron
+ env: DISTRO=Fedora29 CI_BUILD_TYPE=release-ready
- os: linux
if: type = cron
env: DISTRO=Fedora29 CI_BUILD_TYPE=release-ready BUILDSYSTEM=ninja
- os: linux
if: type = cron
+ env: DISTRO=Ubuntu1804
+ - os: linux
+ if: type = cron
+ env: DISTRO=Ubuntu1904
+ - os: linux
+ if: type = cron
+ env: DISTRO=Debian99
+ - os: linux
+ if: type = cron
env: DISTRO=Ubuntu1804 BUILDSYSTEM=ninja
- os: linux
if: type = cron
diff --git a/Makefile.am b/Makefile.am
new file mode 100644
index 0000000000..9f2d6976f8
--- /dev/null
+++ b/Makefile.am
@@ -0,0 +1,537 @@
+ACLOCAL_AMFLAGS = -I m4
+AM_MAKEFLAGS = --no-print-directory
+AM_DISTCHECK_CONFIGURE_FLAGS = \
+--with-tests=regular \
+--with-systemdunitdir=. \
+--enable-always-build-examples \
+--disable-dependency-tracking
+
+SUBDIRS = src data doc
+
+if HAVE_PO
+
+SUBDIRS += po
+
+endif
+
+MAINTAINERCLEANFILES = \
+Makefile.in \
+aclocal.m4 \
+compile \
+config.cache-env \
+config.guess \
+config.h.in \
+config.h.in~ \
+config.sub \
+configure \
+depcomp \
+install-sh \
+ltmain.sh \
+missing \
+m4/libtool.m4 \
+m4/lt~obsolete.m4 \
+m4/ltoptions.m4 \
+m4/ltsugar.m4 \
+m4/ltversion.m4
+
+EXTRA_DIST = \
+m4/pkg_var.m4 \
+m4/ac_path_generic.m4 \
+m4/ecore_check_c_extension.m4 \
+m4/ecore_check_module.m4 \
+m4/efl_attribute.m4 \
+m4/efl_check_funcs.m4 \
+m4/efl_compiler.m4 \
+m4/efl_doxygen.m4 \
+m4/efl_path_max.m4 \
+m4/efl_threads.m4 \
+m4/efl_libunwind.m4 \
+m4/eina_check.m4 \
+m4/eina_config.m4 \
+m4/eio_check_options.m4 \
+m4/evas_check_engine.m4 \
+m4/evas_check_loader.m4 \
+m4/evil_windows.m4 \
+m4/libgcrypt.m4 \
+m4/gcc_check_builtin.m4
+
+EXTRA_DIST += \
+README \
+AUTHORS \
+COPYING \
+COMPLIANCE \
+licenses/COPYING.LGPL \
+licenses/COPYING.GPL \
+licenses/COPYING.BSD \
+licenses/COPYING.SMALL \
+licenses/COPYING.FTL \
+licenses/COPYING.NGINX-MIT \
+old/ChangeLog.ecore \
+old/ChangeLog.edje \
+old/ChangeLog.eet \
+old/ChangeLog.eeze \
+old/ChangeLog.efreet \
+old/ChangeLog.eina \
+old/ChangeLog.eio \
+old/ChangeLog.embryo \
+old/ChangeLog.emotion \
+old/ChangeLog.escape \
+old/ChangeLog.ethumb \
+old/ChangeLog.evas \
+old/ChangeLog.evil \
+old/ChangeLog.evil.0 \
+old/NEWS.ecore \
+old/NEWS.edje \
+old/NEWS.eet \
+old/NEWS.eeze \
+old/NEWS.efreet \
+old/NEWS.eina \
+old/NEWS.eio \
+old/NEWS.embryo \
+old/NEWS.emotion \
+old/NEWS.escape \
+old/NEWS.ethumb \
+old/NEWS.evas \
+old/NEWS.evil \
+old/README.ecore \
+old/README.eldbus \
+old/README.edje \
+old/README.eet \
+old/README.eeze \
+old/README.efreet \
+old/README.eina \
+old/README.eio \
+old/README.embryo \
+old/README.emotion \
+old/README.ephysics \
+old/README.escape \
+old/README.ethumb \
+old/README.evas \
+old/README.evil \
+spec/efl.spec \
+pkgbuild/PKGBUILD \
+pkgbuild/efl.install
+
+if HAVE_FREEBSD
+pkgconfigdir = $(libdir)data/pkgconfig
+else
+pkgconfigdir = $(libdir)/pkgconfig
+endif
+
+pkgconfig_DATA =
+
+if HAVE_WINDOWS
+pkgconfig_DATA += pc/evil.pc
+endif
+
+if HAVE_PS3
+pkgconfig_DATA += pc/escape.pc
+endif
+
+pkgconfig_DATA += \
+pc/eina.pc \
+pc/eo.pc \
+pc/eolian.pc \
+pc/efl.pc \
+pc/emile.pc \
+pc/eet.pc \
+pc/evas.pc \
+pc/ecore.pc \
+pc/efl-core.pc \
+pc/ecore-con.pc \
+pc/efl-net.pc \
+pc/ecore-ipc.pc \
+pc/ecore-file.pc \
+pc/ecore-input.pc \
+pc/ecore-input-evas.pc \
+pc/ecore-imf.pc \
+pc/ecore-imf-evas.pc \
+pc/ecore-evas.pc \
+pc/ecore-avahi.pc \
+pc/ector.pc \
+pc/embryo.pc \
+pc/eio.pc \
+pc/eldbus.pc \
+pc/efreet.pc \
+pc/efreet-mime.pc \
+pc/efreet-trash.pc \
+pc/edje.pc \
+pc/emotion.pc \
+pc/ethumb.pc \
+pc/ethumb_client.pc \
+pc/elocation.pc \
+pc/elementary.pc \
+pc/efl-ui.pc
+
+if HAVE_CXX
+pkgconfig_DATA += \
+pc/eina-cxx.pc \
+pc/evas-cxx.pc \
+pc/ecore-cxx.pc \
+pc/efl-cxx.pc \
+pc/eolian-cxx.pc \
+pc/edje-cxx.pc \
+pc/eet-cxx.pc \
+pc/eo-cxx.pc \
+pc/eio-cxx.pc \
+pc/elementary-cxx.pc
+endif
+
+if HAVE_ELUA
+pkgconfig_DATA += pc/elua.pc
+endif
+
+if HAVE_JS
+pkgconfig_DATA += \
+pc/eolian-js.pc \
+pc/efl-js.pc \
+pc/eo-js.pc \
+pc/eina-js.pc
+endif
+
+if HAVE_CSHARP
+pkgconfig_DATA += \
+pc/efl-mono.pc
+endif
+
+if BUILD_ENGINE_SOFTWARE_X11
+pkgconfig_DATA += pc/evas-software-x11.pc
+endif
+
+if BUILD_ENGINE_FB
+pkgconfig_DATA += pc/evas-fb.pc
+endif
+
+if BUILD_ENGINE_EGLFS
+pkgconfig_DATA += pc/evas-eglfs.pc
+endif
+
+if BUILD_ENGINE_BUFFER
+pkgconfig_DATA += pc/evas-software-buffer.pc
+endif
+
+if BUILD_ENGINE_GL_X11
+pkgconfig_DATA += pc/evas-opengl-x11.pc
+endif
+
+if BUILD_ENGINE_GL_SDL
+pkgconfig_DATA += pc/evas-opengl-sdl.pc
+endif
+
+if BUILD_ENGINE_GL_COCOA
+pkgconfig_DATA += pc/evas-opengl-cocoa.pc
+endif
+
+if BUILD_ENGINE_SOFTWARE_GDI
+pkgconfig_DATA += pc/evas-software-gdi.pc
+endif
+
+if BUILD_ENGINE_SOFTWARE_DDRAW
+pkgconfig_DATA += pc/evas-software-ddraw.pc
+endif
+
+if BUILD_ENGINE_WAYLAND_SHM
+pkgconfig_DATA += pc/evas-wayland-shm.pc
+endif
+
+if BUILD_ENGINE_WAYLAND_EGL
+pkgconfig_DATA += pc/evas-wayland-egl.pc
+endif
+
+if BUILD_ENGINE_DRM
+pkgconfig_DATA += pc/evas-drm.pc
+endif
+
+if HAVE_ECORE_COCOA
+pkgconfig_DATA += pc/ecore-cocoa.pc
+endif
+
+if HAVE_ECORE_FB
+pkgconfig_DATA += pc/ecore-fb.pc
+endif
+
+if HAVE_ECORE_DRM
+pkgconfig_DATA += pc/ecore-drm.pc
+endif
+
+if HAVE_ECORE_SDL
+pkgconfig_DATA += pc/ecore-sdl.pc
+endif
+
+if HAVE_ECORE_WAYLAND
+pkgconfig_DATA += pc/ecore-wayland.pc
+endif
+
+if HAVE_ECORE_WL2
+pkgconfig_DATA += pc/ecore-wl2.pc
+endif
+
+if HAVE_EFL_WL
+pkgconfig_DATA += pc/efl-wl.pc
+endif
+
+if HAVE_WIN32
+pkgconfig_DATA += pc/ecore-win32.pc
+endif
+
+if HAVE_ECORE_X
+pkgconfig_DATA += pc/ecore-x.pc
+endif
+
+if HAVE_EEZE
+pkgconfig_DATA += pc/eeze.pc
+endif
+
+if HAVE_EPHYSICS
+pkgconfig_DATA += pc/ephysics.pc
+endif
+
+if HAVE_ECORE_AUDIO
+pkgconfig_DATA += pc/ecore-audio.pc pc/ecore-audio-cxx.pc
+endif
+
+if HAVE_ECORE_BUFFER
+pkgconfig_DATA += pc/ecore-buffer.pc
+endif
+
+if HAVE_ELPUT
+pkgconfig_DATA += pc/elput.pc
+endif
+
+if HAVE_ECORE_DRM2
+pkgconfig_DATA += pc/ecore-drm2.pc
+endif
+
+# Cmake configs:
+efl_cmakeconfigdir = $(libdir)/cmake/Efl/
+efl_cmakeconfig_DATA = \
+cmakeconfig/EflConfig.cmake \
+cmakeconfig/EflConfigVersion.cmake
+
+eina_cmakeconfigdir = $(libdir)/cmake/Eina/
+eina_cmakeconfig_DATA = \
+cmakeconfig/EinaConfig.cmake \
+cmakeconfig/EinaConfigVersion.cmake
+
+eio_cmakeconfigdir = $(libdir)/cmake/Eio/
+eio_cmakeconfig_DATA = \
+cmakeconfig/EioConfig.cmake \
+cmakeconfig/EioConfigVersion.cmake
+
+eeze_cmakeconfigdir = $(libdir)/cmake/Eeze/
+eeze_cmakeconfig_DATA = \
+cmakeconfig/EezeConfig.cmake \
+cmakeconfig/EezeConfigVersion.cmake
+
+eo_cmakeconfigdir = $(libdir)/cmake/Eo/
+eo_cmakeconfig_DATA = \
+cmakeconfig/EoConfig.cmake \
+cmakeconfig/EoConfigVersion.cmake
+
+eolian_cmakeconfigdir = $(libdir)/cmake/Eolian/
+eolian_cmakeconfig_DATA = \
+cmakeconfig/EolianConfig.cmake \
+cmakeconfig/EolianConfigVersion.cmake \
+cmakeconfig/EolianHelper.cmake
+
+eolian_cxx_cmakeconfigdir = $(libdir)/cmake/EolianCxx/
+eolian_cxx_cmakeconfig_DATA = \
+cmakeconfig/EolianCxxConfig.cmake \
+cmakeconfig/EolianCxxConfigVersion.cmake
+
+eina_cxx_cmakeconfigdir = $(libdir)/cmake/EinaCxx/
+eina_cxx_cmakeconfig_DATA = \
+cmakeconfig/EinaCxxConfig.cmake \
+cmakeconfig/EinaCxxConfigVersion.cmake
+
+eo_cxx_cmakeconfigdir = $(libdir)/cmake/EoCxx/
+eo_cxx_cmakeconfig_DATA = \
+cmakeconfig/EoCxxConfig.cmake \
+cmakeconfig/EoCxxConfigVersion.cmake
+
+ecore_cxx_cmakeconfigdir = $(libdir)/cmake/EcoreCxx/
+ecore_cxx_cmakeconfig_DATA = \
+cmakeconfig/EcoreCxxConfig.cmake \
+cmakeconfig/EcoreCxxConfigVersion.cmake
+
+evas_cxx_cmakeconfigdir = $(libdir)/cmake/EvasCxx/
+evas_cxx_cmakeconfig_DATA = \
+cmakeconfig/EvasCxxConfig.cmake \
+cmakeconfig/EvasCxxConfigVersion.cmake
+
+eet_cxx_cmakeconfigdir = $(libdir)/cmake/EetCxx/
+eet_cxx_cmakeconfig_DATA = \
+cmakeconfig/EetCxxConfig.cmake \
+cmakeconfig/EetCxxConfigVersion.cmake
+
+eet_cmakeconfigdir = $(libdir)/cmake/Eet/
+eet_cmakeconfig_DATA = \
+cmakeconfig/EetConfig.cmake \
+cmakeconfig/EetConfigVersion.cmake
+
+evas_cmakeconfigdir = $(libdir)/cmake/Evas/
+evas_cmakeconfig_DATA = \
+cmakeconfig/EvasConfig.cmake \
+cmakeconfig/EvasConfigVersion.cmake
+
+ecore_cmakeconfigdir = $(libdir)/cmake/Ecore/
+ecore_cmakeconfig_DATA = \
+cmakeconfig/EcoreConfig.cmake \
+cmakeconfig/EcoreConfigVersion.cmake
+
+edje_cmakeconfigdir = $(libdir)/cmake/Edje/
+edje_cmakeconfig_DATA = \
+cmakeconfig/EdjeConfig.cmake \
+cmakeconfig/EdjeConfigVersion.cmake
+
+eldbus_cmakeconfigdir = $(libdir)/cmake/Eldbus/
+eldbus_cmakeconfig_DATA = \
+cmakeconfig/EldbusConfig.cmake \
+cmakeconfig/EldbusConfigVersion.cmake
+
+efreet_cmakeconfigdir = $(libdir)/cmake/Efreet/
+efreet_cmakeconfig_DATA = \
+cmakeconfig/EfreetConfig.cmake \
+cmakeconfig/EfreetConfigVersion.cmake
+
+ethumb_cmakeconfigdir = $(libdir)/cmake/Ethumb/
+ethumb_cmakeconfig_DATA = \
+cmakeconfig/EthumbConfig.cmake \
+cmakeconfig/EthumbConfigVersion.cmake
+
+ethumbclient_cmakeconfigdir = $(libdir)/cmake/EthumbClient/
+ethumbclient_cmakeconfig_DATA = \
+cmakeconfig/EthumbClientConfig.cmake \
+cmakeconfig/EthumbClientConfigVersion.cmake
+
+cmakeconfigdir = $(libdir)/cmake/Elementary
+cmakeconfig_DATA = \
+cmakeconfig/ElementaryConfig.cmake \
+cmakeconfig/ElementaryConfigVersion.cmake
+
+emotion_cmakeconfigdir = $(libdir)/cmake/Emotion/
+emotion_cmakeconfig_DATA = \
+cmakeconfig/EmotionConfig.cmake \
+cmakeconfig/EmotionConfigVersion.cmake
+
+elua_cmakeconfigdir = $(libdir)/cmake/Elua
+elua_cmakeconfig_DATA = \
+cmakeconfig/EluaConfig.cmake \
+cmakeconfig/EluaConfigVersion.cmake
+
+emile_cmakeconfigdir = $(libdir)/cmake/Emile
+emile_cmakeconfig_DATA = \
+cmakeconfig/EmileConfig.cmake \
+cmakeconfig/EmileConfigVersion.cmake
+
+# D-Bus services:
+
+servicedir = @dbusservicedir@
+service_DATA = \
+dbus-services/org.enlightenment.Ethumb.service
+
+if HAVE_SYSTEMD_USER_SESSION
+systemdunitsdir = @USER_SESSION_DIR@
+systemdunits_DATA = \
+systemd-services/ethumb.service
+endif
+EXTRA_DIST += $(systemdunits_DATA)
+
+
+.PHONY: doc benchmark examples install-examples
+
+# MSBuild C Sharp projects generation:
+
+if HAVE_CSHARP
+
+msbuildcsprojs:
+ @$(MAKE) $(AM_MAKEFLAGS) -C src msbuildcsprojs
+
+endif
+
+# Documentation
+
+doc:
+ @echo "entering doc/"
+ $(MAKE) $(AM_MAKEFLAGS) -C doc doc
+
+# Unit tests
+
+if EFL_ENABLE_COVERAGE
+
+lcov-reset:
+ @rm -rf $(abs_top_builddir)/coverage
+ @find $(abs_top_builddir) -name "*.gcda" -delete
+ @lcov --zerocounters --directory $(abs_top_builddir)
+
+lcov-baseline:
+ $(MKDIR_P) $(abs_top_builddir)/coverage
+ lcov --capture --initial --compat-libtool --no-external --output-file $(abs_top_builddir)/coverage/coverage-baseline.info --directory $(abs_top_builddir) --config-file .lcov-config
+
+lcov-report: lcov-baseline
+ lcov --capture --compat-libtool --no-external --output-file $(abs_top_builddir)/coverage/coverage-check.info --directory $(abs_top_builddir) --config-file .lcov-config
+ lcov --no-external --compat-libtool --add-tracefile $(abs_top_builddir)/coverage/coverage-baseline.info --add-tracefile $(abs_top_builddir)/coverage/coverage-check.info --output-file $(abs_top_builddir)/coverage/coverage.info --config-file .lcov-config
+ lcov --no-external --compat-libtool --remove $(abs_top_builddir)/coverage/coverage.info \
+ '*.h' '*/tests/*' '*NONE*' '*/doc/*' '*usr/include*' '*/bin*' '*/edje_external*' \
+ '*/generic/*' '*/modules/*' '*/static_libs/*' \
+ --output-file $(abs_top_builddir)/coverage/coverage.cleaned.info --config-file .lcov-config
+ genhtml --config-file .lcov-config --legend -t "$(PACKAGE_STRING)" -o $(abs_top_builddir)/coverage/html $(abs_top_builddir)/coverage/coverage.cleaned.info
+ @echo "Coverage Report at $(abs_top_builddir)/coverage/html"
+
+endif
+
+if EFL_ENABLE_TESTS
+
+lcov-check:
+if EFL_ENABLE_COVERAGE
+ @$(MAKE) $(AM_MAKEFLAGS) lcov-reset
+ @$(MAKE) $(AM_MAKEFLAGS) lcov-baseline
+endif
+ @$(MAKE) $(AM_MAKEFLAGS) check
+if EFL_ENABLE_COVERAGE
+ @$(MAKE) $(AM_MAKEFLAGS) lcov-report
+endif
+
+check-build:
+ @$(MAKE) $(AM_MAKEFLAGS) -C src check-build
+endif
+
+# benchmark
+
+benchmark:
+ @$(MAKE) $(AM_MAKEFLAGS) -C src benchmark
+ $(MKDIR_P) benchmark
+ @cd benchmark && ../src/benchmarks/eo/eo_bench$(EXEEXT) `date +%F_%s`
+
+# examples
+
+examples:
+ @$(MAKE) $(AM_MAKEFLAGS) -C src examples
+
+install-examples:
+ @$(MAKE) $(AM_MAKEFLAGS) -C src install-examples
+
+pkgbuild::
+ @echo "making arch packages"
+ makepkg -f -p $(top_builddir)/pkgbuild/PKGBUILD
+
+# cleaning
+
+clean-local:
+ rm -rf benchmark coverage
+ @find . -name '*.eo.legacy.c' -delete
+
+DISTCLEANFILES= \
+./src/lib/emile/Makefile \
+./src/lib/eo/Makefile \
+./src/lib/eet/Makefile \
+./src/lib/ecore/Makefile \
+./src/lib/efl/Makefile \
+./src/lib/eina/Makefile \
+./src/lib/eio/Makefile \
+./src/lib/elementary/Makefile \
+./src/lib/ector/Makefile \
+./src/lib/evil/Makefile \
+./src/lib/edje/Makefile \
+./src/lib/efl/Efl_Config.h \
+./src/lib/eina/eina_config.h
diff --git a/Makefile_Elm_Helpers.am b/Makefile_Elm_Helpers.am
new file mode 100644
index 0000000000..8acaab46f8
--- /dev/null
+++ b/Makefile_Elm_Helpers.am
@@ -0,0 +1,21 @@
+if HAVE_ELM_PREFS_CC
+ELM_PREFS_CC = @elm_prefs_cc@
+else
+ELM_PREFS_CC = $(top_builddir)/src/bin/elementary/elm_prefs_cc
+endif
+
+AM_V_EPB = $(am__v_EPB_@AM_V@)
+am__v_EPB_ = $(am__v_EPB_@AM_DEFAULT_V@)
+am__v_EPB_0 = @echo " EPB " $@;
+
+if HAVE_ELEMENTARY_CODEGEN
+ELEMENTARY_CODEGEN = @elementary_codegen@
+else
+ELEMENTARY_CODEGEN = $(top_builddir)/src/bin/elementary/elementary_codegen
+endif
+
+AM_V_CODEGEN = $(am__v_CODEGEN_@AM_V@)
+am__v_CODEGEN_ = $(am__v_CODEGEN_@AM_DEFAULT_V@)
+am__v_CODEGEN_0 = @echo " CODEGEN " $@;
+
+
diff --git a/autogen.sh b/autogen.sh
new file mode 100755
index 0000000000..0481d71613
--- /dev/null
+++ b/autogen.sh
@@ -0,0 +1,39 @@
+#!/bin/sh
+
+test -n "$srcdir" || srcdir=`dirname "$0"`
+test -n "$srcdir" || srcdir=.
+(
+ cd "$srcdir" &&
+ (
+ rm -rf autom4te.cache
+ rm -f aclocal.m4 ltmain.sh
+
+ autoreconf -vif
+ )
+
+ W=0
+
+ rm -f config.cache-env.tmp
+ echo "OLD_PARM=\"$@\"" >> config.cache-env.tmp
+ echo "OLD_CFLAGS=\"$CFLAGS\"" >> config.cache-env.tmp
+ echo "OLD_PATH=\"$PATH\"" >> config.cache-env.tmp
+ echo "OLD_PKG_CONFIG_PATH=\"$PKG_CONFIG_PATH\"" >> config.cache-env.tmp
+ echo "OLD_LDFLAGS=\"$LDFLAGS\"" >> config.cache-env.tmp
+
+ cmp config.cache-env.tmp config.cache-env >> /dev/null
+ if [ $? -ne 0 ]; then
+ W=1;
+ fi
+
+ if [ $W -ne 0 ]; then
+ echo "Cleaning configure cache...";
+ rm -f config.cache config.cache-env
+ mv config.cache-env.tmp config.cache-env
+ else
+ rm -f config.cache-env.tmp
+ fi
+)
+
+if [ -z "$NOCONFIGURE" ]; then
+ exec $srcdir/configure -C "$@"
+fi
diff --git a/configure.ac b/configure.ac
new file mode 100644
index 0000000000..4ca3d09e2b
--- /dev/null
+++ b/configure.ac
@@ -0,0 +1,6337 @@
+EFL_VERSION([1], [22], [99], [dev])
+AC_INIT([efl], [efl_version], [enlightenment-devel@lists.sourceforge.net])
+
+AC_PREREQ([2.60])
+AC_CONFIG_SRCDIR([configure.ac])
+AC_CONFIG_MACRO_DIR([m4])
+
+AC_CONFIG_HEADERS([config.h])
+AH_TOP([
+#ifndef EFL_CONFIG_H__
+#define EFL_CONFIG_H__
+])
+AH_BOTTOM([
+#endif /* EFL_CONFIG_H__ */
+])
+
+
+AM_INIT_AUTOMAKE([1.6 dist-xz no-dist-gzip -Wall color-tests subdir-objects])
+m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
+AM_CONDITIONAL([HAVE_AM_16], [test $(echo "${am__api_version}"|cut -d. -f2) -ge 16])
+# Due to a bug in automake 1.14 we need to use this after AM_INIT_AUTOMAKE
+# http://debbugs.gnu.org/cgi/bugreport.cgi?bug=15981
+AC_USE_SYSTEM_EXTENSIONS
+
+CFOPT_WARNING=""
+CXXFLAGS="${CXXFLAGS} -Wno-shadow" # No shadow warnings
+
+#### Apply configuring with legacy api's only, eo api's or both.
+
+EFL_API_LEGACY_DEF="#define EFL_NOLEGACY_API_SUPPORT"
+efl_api="both"
+
+#### For the moment the Eo EFL API is not ready you need to explicitly optin.
+EFL_ENABLE_EO_API_SUPPORT
+EFL_ENABLE_BETA_API_SUPPORT
+
+AC_ARG_WITH([api],
+ [AS_HELP_STRING([--with-api=@<:@eo/legacy/both@:>@],[Select the EFL API Model @<:@default=both@:>@])],
+ [efl_api=${withval}],
+ [efl_api="both"])
+
+case "$efl_api" in
+ eo)
+ EFL_API_LEGACY_DEF="#define EFL_NOLEGACY_API_SUPPORT"
+ CFOPT_WARNING="xyes"
+ ;;
+ legacy|both)
+ EFL_API_LEGACY_DEF=""
+ ;;
+ *) AC_MSG_ERROR([Invalid api (${efl_api}): must be eo, legacy or both]) ;;
+esac
+
+AC_SUBST(EFL_API_LEGACY_DEF)
+
+#### Additional options to configure
+
+# string to identify the build
+AC_ARG_WITH([id],
+ [AS_HELP_STRING([--with-id=BUILD_ID],[Specify a string to identify the build (vendor, maintainer, etc).
+ @<:@default=none@:>@])],
+ [EFL_BUILD_ID="${withval}"],
+ [EFL_BUILD_ID="none"])
+AC_SUBST(EFL_BUILD_ID)
+
+# profile
+AC_ARG_WITH([profile],
+ [AS_HELP_STRING([--with-profile=PROFILE],[use the predefined build profile, one of: dev, debug and release.
+ @<:@default=dev@:>@])],
+ [build_profile=${withval}],
+ [build_profile=def_build_profile])
+
+case "${build_profile}" in
+ dev|debug|release)
+ ;;
+ *)
+ AC_MSG_ERROR([Unknown build profile --with-profile=${build_profile}])
+ ;;
+esac
+
+prefer_assert="no"
+eina_log_backtrace="yes"
+efl_less_insane="no"
+case "${build_profile}" in
+ dev|debug)
+ prefer_assert="yes"
+ eina_log_backtrace="no"
+ efl_less_insane="yes"
+ ;;
+esac
+
+# Enable CRI & ERR backtrace by default for release but not for dev/debug
+AC_DEFINE_IF([EINA_LOG_BACKTRACE_ENABLE], [test "x${eina_log_backtrace}" = "xyes"], [1], [Default log level triggering backtraces])
+
+# Additional sanity checks only performed in debug builds
+AC_DEFINE_IF([EFL_EXTRA_SANITY_CHECKS], [test "x${efl_less_insane}" = "xyes"], [1], [Extra run time sanity checks])
+
+# TODO: add some build "profile" (server, full, etc...)
+
+AC_ARG_WITH([crypto],
+ [AS_HELP_STRING([--with-crypto=CRYPTO],[use the predefined build crypto, one of:
+ openssl, gnutls or none.
+ @<:@default=openssl@:>@])],
+ [build_crypto=${withval}],
+ [build_crypto=openssl])
+
+case "${build_crypto}" in
+ openssl|gnutls|none)
+ ;;
+ *)
+ AC_MSG_ERROR([Unknown build crypto option: --with-crypto=${build_crypto}])
+ ;;
+esac
+
+AC_ARG_WITH([tests],
+ [AS_HELP_STRING([--with-tests=none|regular|coverage],[choose testing method: regular, coverage or none.
+ @<:@default=auto@:>@])],
+ [build_tests=${withval}],
+ [build_tests=auto])
+
+want_coverage="no"
+want_tests="no"
+case "${build_tests}" in
+ auto)
+ if test "${build_profile}" = "dev"; then
+ want_tests="yes"
+ fi
+ ;;
+ regular)
+ want_tests="yes"
+ ;;
+ coverage)
+ want_tests="yes"
+ want_coverage="yes"
+ ;;
+ no*)
+ ;;
+ *)
+ AC_MSG_ERROR([Unknown build tests option: --with-tests=${build_tests}])
+ ;;
+esac
+
+install_eo_files="no"
+AC_ARG_ENABLE([install-eo-files],
+ [AS_HELP_STRING([--enable-install-eo-files],[Enable installing eo files. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ install_eo_files="yes"
+ else
+ install_eo_files="no"
+ fi
+ ],
+ [install_eo_files="no"])
+
+AM_CONDITIONAL([INSTALL_EO_FILES], [test "${install_eo_files}" = "yes"])
+
+AC_ARG_WITH([ecore-con-http-test-url],
+ [AS_HELP_STRING([--with-ecore-con-http-test-url=http://username:password@example.com],[Url of http server for testing with username and password])],[ECORE_CON_HTTP_TEST_URL=${withval}][AC_DEFINE_UNQUOTED([ECORE_CON_HTTP_TEST_URL],["$withval"],[Http url for testing])])
+
+AC_ARG_WITH([ecore-con-ftp-test-url],
+ [AS_HELP_STRING([--with-ecore-con-ftp-test-url=ftp://username:password@ftp.example.com?file=filename&directory=dir],[Url of ftp server for testing with username, password, complete filepath for upload with optional directory])],[ECORE_CON_FTP_TEST_URL=${withval}][AC_DEFINE_UNQUOTED([ECORE_CON_FTP_TEST_URL],["$withval"],[Ftp url for testing])])
+
+dbusservicedir="${datadir}/dbus-1/services"
+AC_ARG_WITH([dbus-services],
+ [AS_HELP_STRING([--with-dbus-services=DBUS_SERVICES],[specify a directory to store dbus service files.])],
+ [dbusservicedir=$withval])
+AC_SUBST(dbusservicedir)
+
+efl_deprecated_option="no"
+EFL_WITH_BIN([eet], [eet-eet])
+EFL_WITH_BIN([edje], [edje-cc])
+EFL_WITH_BIN([eolian], [eolian-gen])
+EFL_WITH_BIN([eolian_cxx], [eolian-cxx])
+EFL_WITH_BIN([eolian_mono], [eolian-mono])
+EFL_WITH_BIN([eolian-js], [eolian-js])
+EFL_WITH_BIN_SUFFIX([elua], [elua], [_bin])
+EFL_WITH_BIN([eldbus], [eldbus_codegen])
+EFL_WITH_BIN([elementary], [elementary-codegen])
+EFL_WITH_BIN([elementary], [elm-prefs-cc])
+
+#### Default values
+
+requirements_pc_eflall=""
+requirements_pc_deps_eflall=""
+requirements_libs_eflall=""
+requirements_cflags_eflall=""
+
+requirements_pc_crypto=""
+requirements_pc_deps_crypto=""
+requirements_libs_crypto=""
+requirements_cflags_crypto=""
+
+AC_CANONICAL_HOST
+
+# TODO: move me to m4 file that setups module/so related variables
+case "$host_os" in
+ cegcc*|mingw32ce*)
+ AC_MSG_ERROR([ceGCC compiler is not supported anymore. Exiting...])
+ ;;
+ mingw*)
+ have_win32="yes"
+ have_windows="yes"
+ MODULE_ARCH="v-v_maj.v_min"
+ MODULE_EXT=".dll"
+ ;;
+ cygwin*)
+ MODULE_ARCH="v-v_maj.v_min"
+ MODULE_EXT=".dll"
+ ;;
+ *solaris*)
+ have_solaris="yes"
+ MODULE_ARCH="v-v_maj.v_min"
+ MODULE_EXT=".so"
+ ;;
+ *)
+ MODULE_ARCH="v-v_maj.v_min"
+ MODULE_EXT=".so"
+ ;;
+esac
+
+EFL_VERSION_MAJOR="v_maj"
+EFL_VERSION_MINOR="v_min"
+AC_SUBST(EFL_VERSION_MAJOR)
+AC_SUBST(EFL_VERSION_MINOR)
+
+ELM_UNIX_DEF="#undef"
+ELM_WIN32_DEF="#undef"
+
+have_systemd_pkg="no"
+have_win32="no"
+have_windows="no"
+have_freebsd="no"
+have_darwin="no"
+have_linux="no"
+have_ps3="no"
+case "$host_os" in
+ mingw*|cygwin*)
+ # TODO: check cygwin* here
+ have_win32="yes"
+ have_windows="yes"
+ ELM_WIN32_DEF="#define"
+ EFLALL_CFLAGS="${EFLALL_CFLAGS} -D__USE_MINGW_ANSI_STDIO"
+ ;;
+ freebsd*)
+ have_freebsd="yes"
+ ELM_UNIX_DEF="#define"
+ ;;
+ darwin*)
+ have_darwin="yes"
+ ELM_UNIX_DEF="#define"
+ ;;
+ linux*)
+ have_linux="yes"
+ have_systemd_pkg="auto"
+ want_systemd="yes"
+ ELM_UNIX_DEF="#define"
+ ;;
+ *)
+ ELM_UNIX_DEF="#define"
+ ;;
+esac
+
+case "$host_vendor" in
+ ps3*)
+ have_ps3="yes"
+ ;;
+esac
+
+AC_SUBST([MODULE_ARCH])
+AC_DEFINE_UNQUOTED([MODULE_ARCH], ["${MODULE_ARCH}"], ["Module architecture"])
+AC_DEFINE_UNQUOTED([SHARED_LIB_SUFFIX], ["${MODULE_EXT}"], [Suffix for shared objects])
+AC_DEFINE_UNQUOTED([EXEEXT], ["${EXEEXT}"], [Suffix for binary objects])
+
+# TODO: move me to m4 file that setups the windows related variables
+AM_CONDITIONAL([HAVE_WIN32], [test "x${have_win32}" = "xyes"])
+AM_CONDITIONAL([HAVE_WINDOWS], [test "x${have_windows}" = "xyes"])
+AM_CONDITIONAL([HAVE_PS3], [test "x${have_ps3}" = "xyes"])
+
+AM_CONDITIONAL([HAVE_FREEBSD], [test "x${have_freebsd}" = "xyes"])
+AM_CONDITIONAL([HAVE_OSX], [test "x${have_darwin}" = "xyes"])
+AM_CONDITIONAL([HAVE_X86_64], [test "x${host_cpu}" = "xx86_64"])
+
+AC_SUBST([ELM_UNIX_DEF])
+AC_SUBST([ELM_WIN32_DEF])
+
+#### Checks for programs
+
+### libtool
+
+if test "x${have_windows}" = "xyes" ; then
+ lt_cv_deplibs_check_method='pass_all'
+fi
+m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
+LT_INIT([win32-dll disable-static pic-only])
+EFL_INIT
+
+if test "x${have_win32}" = "xyes" ; then
+ # We should be using ${CXX} here, but there is a bug in
+ # autotools macro and CXX is always set to g++ even if
+ # it's not found. So we are using an internal variable
+ # that does the work for now, may get broken in the future.
+ AC_DEFINE([_POSIX_C_SOURCE], [200809L], [Define the POSIX version])
+ if test "x${ac_ct_CXX}" = "x" -a "x${CXX}" = "xg++"; then
+ AC_MSG_ERROR([efl requires a C++ compiler got ${ac_ct_CXX} and ${CXX}.])
+ fi
+else
+ CXXFLAGS="${CXXFLAGS} -fPIC -DPIC"
+ LDFLAGS="${LDFLAGS} -fPIC -DPIC"
+fi
+
+### gettext
+
+AM_GNU_GETTEXT_VERSION([0.18])
+
+m4_ifdef([AC_GNU_GETTEXT], [
+AC_GNU_GETTEXT([external])
+po_makefile_in=po/Makefile.in
+have_po="yes"
+],
+[
+m4_ifdef([AM_GNU_GETTEXT], [
+AM_GNU_GETTEXT([external])
+po_makefile_in=po/Makefile.in
+have_po="yes"
+],
+[
+have_po="no"
+])
+])
+AC_SUBST([LTLIBINTL])
+LOCALE_DIR="${localedir}"
+AC_SUBST(LOCALE_DIR)
+
+if test "x${POSUB}" = "x" ; then
+ have_po="no"
+fi
+
+AM_CONDITIONAL([HAVE_PO], [test "x${have_po}" = "xyes"])
+
+### compilers
+
+AC_PROG_MKDIR_P
+AM_PROG_AS
+AC_PROG_CXX
+AC_PROG_OBJC
+AC_LANG(C)
+AC_PROG_CC_C99
+AM_PROG_CC_C_O
+AC_PROG_SED
+AC_PROG_MCS
+
+AM_CONDITIONAL([BUILD_EFL_NATIVE], [test "x${cross_compiling}" = "xno"])
+
+if test "x${ac_cv_prog_cc_c99}" = "xno" ; then
+ AC_MSG_ERROR([efl requires a c99-capable compiler])
+fi
+
+AC_SYS_LARGEFILE
+
+# pkg-config
+
+PKG_PROG_PKG_CONFIG
+if test "x${PKG_CONFIG}" = "x" ; then
+ AC_MSG_ERROR([pkg-config tool not found. Install it or set PKG_CONFIG environment variable to that path tool. Exiting...])
+fi
+
+# doxygen program for documentation building
+
+EFL_CHECK_DOXYGEN([build_doc="yes"], [build_doc="no"])
+
+# lcov
+
+if test "${want_coverage}" = "yes" ; then
+ AC_CHECK_PROG([have_lcov], [lcov], [yes], [no])
+ if test "x${have_lcov}" = "xyes" ; then
+ AC_SEARCH_LIBS([__gcov_init], [gcov])
+ EFL_CHECK_COMPILER_FLAGS([EFLALL], [-fprofile-arcs -ftest-coverage])
+ EFL_CHECK_COMPILER_FLAGS([EFLALL], [-fprofile-instr-generate -fcoverage-mapping])
+ EFL_CHECK_LINKER_FLAGS([EFLALL], [-fprofile-instr-generate -fcoverage-mapping])
+ if test "x${prefer_assert}" = "xno"; then
+ EFLALL_COV_CFLAGS="${EFLALL_COV_CFLAGS} -DNDEBUG"
+ else
+ EFLALL_COV_CFLAGS="${EFLALL_COV_CFLAGS} -g -O0"
+ fi
+ else
+ AC_MSG_ERROR([lcov is not found])
+ fi
+fi
+
+AM_CONDITIONAL([EFL_ENABLE_COVERAGE], [test "${want_coverage}" = "yes"])
+
+#### Checks for libraries
+
+# check unit testing library
+
+if test "${want_tests}" = "yes"; then
+ PKG_CHECK_MODULES([CHECK], [check >= 0.9.10])
+fi
+AM_CONDITIONAL([EFL_ENABLE_TESTS], [test "${want_tests}" = "yes"])
+
+
+# check for crypto/tls library to use
+case "$build_crypto" in
+ gnutls)
+ EFL_DEPEND_PKG([crypto], [GNUTLS], [gnutls >= 3.3.6])
+
+ AM_PATH_LIBGCRYPT([], [:],
+ [AC_MSG_ERROR([libgcrypt required but not found])])
+ requirements_libs_crypto="${LIBGCRYPT_LIBS} ${requirements_libs_crypto}"
+ requirements_cflags_crypto="${LIBGCRYPT_CFLAGS} ${requirements_cflags_crypto}"
+ ;;
+
+ openssl)
+ EFL_DEPEND_PKG([crypto], [OPENSSL], [openssl])
+ ;;
+esac
+AM_CONDITIONAL([HAVE_CRYPTO_GNUTLS], [test "${build_crypto}" = "gnutls"])
+AM_CONDITIONAL([HAVE_CRYPTO_OPENSSL], [test "${build_crypto}" = "openssl"])
+
+# check for lua old
+want_lua_old="no"
+AC_ARG_ENABLE([lua-old],
+ [AS_HELP_STRING([--enable-lua-old],[Enable interpreted Lua support (5.1 or 5.2). @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_lua_old="yes"
+ else
+ want_lua_old="no"
+ fi
+ ],
+ [want_lua_old="no"])
+
+AM_CONDITIONAL([ENABLE_LUA_OLD], [test "${want_lua_old}" = "yes"])
+AC_DEFINE_IF([ENABLE_LUA_OLD], [test "${want_lua_old}" = "yes"],
+ [1], [Use interpreted Lua (5.1 or 5.2)])
+AC_SUBST([want_lua_old])
+
+
+want_liblz4="no"
+AC_ARG_ENABLE([liblz4],
+ [AS_HELP_STRING([--enable-liblz4],[Enable usage of liblz4 instead of our embedded copy. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ # Only ships pc file since r120
+ PKG_CHECK_MODULES([LIBLZ4], [liblz4])
+ EFL_DEPEND_PKG([EET], [LIBLZ4], [liblz4])
+ EFL_DEPEND_PKG([EVAS], [LIBLZ4], [liblz4])
+ want_liblz4="yes"
+ else
+ want_liblz4="no"
+ fi
+ ],
+ [want_liblz4="no"])
+
+AM_CONDITIONAL([ENABLE_LIBLZ4], [test "${want_liblz4}" = "yes"])
+AC_DEFINE_IF([ENABLE_LIBLZ4], [test "${want_liblz4}" = "yes"], [1], [Use liblz4 external library instead of embedded copy])
+AC_SUBST([want_liblz4])
+AC_SUBST([ENABLE_LIBLZ4])
+
+
+want_vnc_server="no"
+AC_ARG_ENABLE([vnc-server],
+ [AS_HELP_STRING([--enable-vnc-server],[Build Ecore_Evas VNC module. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ PKG_CHECK_MODULES([LIBVNCSERVER], [libvncserver])
+ want_vnc_server="yes"
+ else
+ want_vnc_server="no"
+ fi
+ ],
+ [want_vnc_server="no"])
+
+#### Checks for header files
+
+# Common Checks (keep names sorted for ease of use):
+AC_HEADER_DIRENT
+AC_HEADER_TIME
+
+AC_CHECK_HEADERS([ \
+execinfo.h \
+mcheck.h \
+sys/signalfd.h \
+sys/types.h \
+sys/param.h \
+sys/mman.h \
+netinet/in.h \
+sys/auxv.h \
+asm/hwcap.h \
+])
+
+if test "x${have_linux}" = "xyes" ; then
+ AC_CHECK_HEADERS([sys/inotify.h])
+ AC_CHECK_HEADERS([sys/epoll.h])
+fi
+
+EFL_CHECK_PATH_MAX
+
+#### Checks for defines in headers
+
+EFL_CHECK_DEFINE(TCP_CORK, netinet/tcp.h)
+EFL_CHECK_DEFINE(TCP_NOPUSH, netinet/tcp.h)
+EFL_CHECK_DEFINE(UDP_CORK, netinet/udp.h)
+
+#### Checks for types
+
+# wchar_t
+AC_CHECK_SIZEOF([wchar_t])
+EINA_SIZEOF_WCHAR_T=$ac_cv_sizeof_wchar_t
+AC_SUBST([EINA_SIZEOF_WCHAR_T])
+
+AC_CHECK_SIZEOF(int, 4)
+AC_CHECK_SIZEOF(long, 4)
+
+AC_CHECK_SIZEOF([uintptr_t])
+EINA_SIZEOF_UINTPTR_T=$ac_cv_sizeof_uintptr_t
+AC_SUBST([EINA_SIZEOF_UINTPTR_T])
+
+AC_CHECK_TYPES([siginfo_t], [], [],
+ [[
+#include <signal.h>
+#if HAVE_SIGINFO_H
+# include <siginfo.h>
+#endif
+ ]])
+
+#### Checks for structures
+
+
+#### Checks for compiler characteristics
+
+AC_C_BIGENDIAN
+AC_C_INLINE
+EFL_CHECK_COMPILER_FLAGS([EFLALL], [-Wall -Wextra -Wpointer-arith -Wno-missing-field-initializers -fvisibility=hidden -fdata-sections -ffunction-sections])
+EFL_CHECK_LINKER_FLAGS([EFLALL], [-fvisibility=hidden -fdata-sections -ffunction-sections -Wl,--gc-sections -fno-strict-aliasing -Wl,--as-needed -Wl,--no-copy-dt-needed-entries])
+case "${build_profile}" in
+ dev)
+ dnl Check if compiler has a dodgy -Wshadow that emits errors when shadowing a global
+ AC_MSG_CHECKING([whether -Wshadow generates spurious warnings])
+ CFLAGS_save="${CFLAGS}"
+ CFLAGS="${CFLAGS} -Werror -Wshadow"
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[int x;]], [[int x = 0; (void)x;]])],[AC_MSG_RESULT([no])
+ EFL_CHECK_COMPILER_FLAGS([EFLALL], [-Wshadow])],[AC_MSG_RESULT([yes])])
+ CFLAGS="${CFLAGS_save}"
+ ;;
+
+ debug)
+ ;;
+
+ release)
+ ;;
+esac
+
+EFL_ATTRIBUTE_VECTOR
+EFL_ATTRIBUTE_ALWAYS_INLINE
+
+EFLALL_LIBS="${EFLALL_LIBS}"
+EFLALL_CFLAGS="${EFLALL_CFLAGS}"
+
+## CPU architecture specific assembly
+
+build_cpu_mmx="no"
+build_cpu_sse3="no"
+build_cpu_altivec="no"
+build_cpu_neon="no"
+
+want_neon="yes"
+AC_ARG_ENABLE([neon],
+ [AS_HELP_STRING([--disable-neon],[disable neon support @<:@default=enable@:>@])],
+ [
+ if test "x${enableval}" = "xyes"; then
+ want_neon="yes"
+ else
+ want_neon="no"
+ fi
+ ])
+
+SSE3_CFLAGS=""
+ALTIVEC_CFLAGS=""
+NEON_CFLAGS=""
+
+case $host_cpu in
+ i*86|x86_64|amd64)
+ AC_DEFINE([BUILD_MMX], [1], [Build MMX Code])
+ build_cpu_mmx="yes"
+ AC_CHECK_HEADER([immintrin.h],
+ [
+ AC_DEFINE(BUILD_SSE3, 1, [Build SSE3 Code])
+ build_cpu_sse3="yes"
+ ],
+ [build_cpu_sse3="no"])
+ AC_MSG_CHECKING([whether to build SSE3 code])
+ AC_MSG_RESULT([${build_cpu_sse3}])
+
+ if test "x$build_cpu_sse3" = "xyes" ; then
+ SSE3_CFLAGS="-msse3"
+ fi
+ ;;
+ *power* | *ppc*)
+ build_cpu_altivec="yes"
+ AC_CHECK_HEADER([altivec.h],
+ [
+ AC_DEFINE([BUILD_ALTIVEC], [1], [Build Altivec Code])
+ AC_DEFINE([HAVE_ALTIVEC_H], [1], [Have altivec.h header file])
+ build_cpu_altivec="yes"
+ ],
+ [
+ save_CFLAGS=$CFLAGS
+ save_CPPFLAGS=$CPPFLAGS
+ CFLAGS=$CFLAGS" -maltivec"
+ CPPFLAGS=$CPPFLAGS" -maltivec"
+ unset ac_cv_header_altivec_h
+ AC_CHECK_HEADER([altivec.h],
+ [
+ AC_DEFINE([BUILD_ALTIVEC], [1], [Build Altivec Code])
+ AC_DEFINE([HAVE_ALTIVEC_H], [1], [Have altivec.h header file])
+ build_cpu_altivec="yes"
+ ],
+ [build_cpu_altivec="no"]
+ )
+ CFLAGS=$save_CFLAGS
+ CPPFLAGS=$save_CPPFLAGS
+ ]
+ )
+ if test "x${build_cpu_altivec}" = "xyes"; then
+ AC_MSG_CHECKING([whether to use altivec compiler flag])
+ if test "x$GCC" = "xyes"; then
+ if echo "int main(){return 0;}" | ${CPP} -faltivec - > /dev/null 2>&1; then
+ altivec_cflags="-faltivec"
+ AC_DEFINE([BUILD_ALTIVEC], [1], [Build Altivec Code])
+ elif echo "int main(){return 0;}" | ${CPP} -maltivec - > /dev/null 2>&1; then
+ altivec_cflags="-maltivec"
+ AC_DEFINE([BUILD_ALTIVEC], [1], [Build Altivec Code])
+ fi
+ fi
+ AC_MSG_RESULT([${altivec_cflags}])
+ CFLAGS="$CFLAGS ${altivec_cflags}"
+ ALTIVEC_CFLAGS="-maltivec"
+ fi
+ ;;
+ arm*)
+ if test "x${want_neon}" = "xyes"; then
+ build_cpu_neon="yes"
+ AC_MSG_CHECKING([whether to use NEON instructions])
+ CFLAGS_save="${CFLAGS}"
+ CFLAGS="-mfpu=neon -ftree-vectorize ${CFLAGS}"
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <arm_neon.h>]], [[asm volatile ("vqadd.u8 d0, d1, d0\n")]])],[
+ AC_MSG_RESULT([yes])
+ AC_DEFINE([BUILD_NEON], [1], [Build NEON Code])
+ build_cpu_neon="yes"
+ NEON_CFLAGS="-mfpu=neon"
+ ],[
+ AC_MSG_RESULT([no])
+ build_cpu_neon="no"
+ ])
+ CFLAGS="${CFLAGS_save}"
+ fi
+ ;;
+ aarch64*)
+ if test "x${want_neon}" = "xyes"; then
+ build_cpu_neon="yes"
+ AC_MSG_CHECKING([whether to use NEON instructions])
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <arm_neon.h>]], [[volatile uint32x4_t test = vdupq_n_u32(0x1);]])],[
+ AC_MSG_RESULT([yes])
+ AC_DEFINE([BUILD_NEON], [1], [Build NEON Code])
+ AC_DEFINE([BUILD_NEON_INTRINSICS], [1], [Build NEON Intrinsics])
+ build_cpu_neon="yes"
+ build_cpu_neon_intrinsics="yes"
+ ],[
+ AC_MSG_RESULT([no])
+ build_cpu_neon="no"
+ ])
+ fi
+ ;;
+esac
+
+AM_CONDITIONAL([BUILD_NEON], [test "${build_cpu_neon}" = "yes"])
+AM_CONDITIONAL([BUILD_NEON_INTRINSICS], [test "${build_cpu_neon_intrinsics}" = "yes"])
+
+AC_SUBST([ALTIVEC_CFLAGS])
+AC_SUBST([SSE3_CFLAGS])
+AC_SUBST([NEON_CFLAGS])
+
+#### Checks for linker characteristics
+
+
+#### Checks for library functions
+
+AC_CHECK_FUNCS([\
+backtrace \
+backtrace_symbols \
+execvp \
+fpathconf \
+fstatat \
+malloc_usable_size \
+mkdirat \
+mtrace \
+realpath \
+strlcpy \
+geteuid \
+getuid \
+pause \
+gmtime_r \
+pthread_getcpuclockid \
+clock_gettime \
+clearenv
+])
+
+AC_FUNC_ALLOCA
+AC_FUNC_MMAP
+AC_FUNC_STRERROR_R
+
+EFL_CHECK_FUNCS([EFLALL], [fnmatch gettimeofday dirfd fcntl sched_getcpu])
+
+have_atfile_source="${ac_cv_func_fstatat}"
+AC_DEFINE_IF([HAVE_ATFILE_SOURCE],
+ [test "x${have_atfile_source}" = "xyes"],
+ [1], [Use fstatat and other -at file functions])
+
+
+
+###################### EFL ######################
+
+want_libeeze="yes"
+AC_ARG_ENABLE([libeeze],
+ [AS_HELP_STRING([--disable-libeeze],[disable Eeze device library @<:@default=enable@:>@])],
+ [
+ if test "x${enableval}" = "xyes"; then
+ want_libeeze="yes"
+ else
+ want_libeeze="no"
+ CFOPT_WARNING="yes"
+ fi
+ ])
+
+build_libeeze="yes"
+if test "x${want_libeeze}" = "xyes" ; then
+ if test "x${have_linux}" = "xyes" ; then
+ build_libeeze="yes"
+ else
+ build_libeeze="no"
+ want_libeeze="no"
+ fi
+else
+ build_libeeze="no"
+fi
+
+AC_ARG_ENABLE([systemd],
+ [AS_HELP_STRING([--disable-systemd],[Disable systemd support. @<:@default=enabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_systemd="yes"
+ else
+ want_systemd="no"
+ fi
+ ])
+
+systemd_dbus_prefix="# "
+if test "${want_systemd}" = "yes"; then
+ systemd_dbus_prefix=""
+fi
+AC_SUBST(systemd_dbus_prefix)
+
+AC_ARG_WITH([systemdunitdir],
+ AS_HELP_STRING([--with-systemdunitdir=DIR],[path to systemd user services directory]),
+ [USER_SESSION_DIR=${withval}])
+if test "$want_systemd" == "no"; then
+ have_systemd_user_session="no"
+elif test -n "${USER_SESSION_DIR}"; then
+ have_systemd_user_session="yes"
+ AC_MSG_NOTICE([Using systemd user services directory as ${USER_SESSION_DIR}])
+else
+ # Detect systemd user session directory properly
+ EFL_PKG_CHECK_VAR([USER_SESSION_DIR], [systemd >= 192], [systemduserunitdir],
+ [have_systemd_user_session="yes"], [have_systemd_user_session="no"])
+
+ if test "$want_systemd" = "yes" -a "$have_systemd_user_session" = "no"; then
+ AC_MSG_ERROR([systemd support wanted, but systemd was not found.])
+ fi
+fi
+
+AM_CONDITIONAL([HAVE_SYSTEMD_USER_SESSION], [test "x${have_systemd_user_session}" = "xyes"])
+AC_SUBST([USER_SESSION_DIR])
+
+if test "x${have_systemd_pkg}" = "xauto" -o "x${have_systemd_pkg}" = "xyes"; then
+ PKG_CHECK_MODULES([SYSTEMD], [libsystemd >= 209],
+ [
+ have_systemd_pkg="yes"
+ AC_DEFINE_UNQUOTED([HAVE_SYSTEMD_LOGIN_209],[1],[Defined if systemd >= 209])
+ ],
+ [have_systemd_pkg="no"])
+fi
+
+# check for systemd library if requested
+if test "x${want_systemd}" = "xyes" -a "x${have_systemd_pkg}" = "xno"; then
+ AC_MSG_ERROR([Systemd dependency requested but not found])
+fi
+
+AM_CONDITIONAL([WANT_SYSTEMD], [test "${want_systemd}" = "yes"])
+AM_CONDITIONAL([HAVE_SYSTEMD], [test "${want_systemd}" = "yes" -a "${have_systemd_pkg}" = "yes"])
+#### Platform-dependent
+
+#### Evil
+EFL_LIB_START_OPTIONAL([Evil], [test "${have_windows}" = "yes"])
+
+### Default values
+
+### Additional options to configure
+EFL_SELECT_WINDOWS_VERSION
+
+### Checks for programs
+
+### Checks for libraries
+
+EFL_ADD_LIBS([EVIL], [-lpsapi -lole32 -lws2_32 -lsecur32 -luuid -lregex])
+
+### Checks for header files
+
+AC_CHECK_HEADERS([regex.h fnmatch.h],
+ [],
+ [AC_MSG_ERROR([regex.h or fnmatch.h can not be found])])
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+EVIL_CPPFLAGS="-DPSAPI_VERSION=1"
+# TODO: should we have these at EFL (global?)
+# Note: these warnings should not be used with C++ code
+EVIL_CFLAGS_WRN="-Wdeclaration-after-statement -Wmissing-prototypes -Wstrict-prototypes -Wredundant-decls"
+EVIL_CXXFLAGS="${EVIL_CXXFLAGS}"
+
+if test "x${have_win32}" = "xyes" ; then
+ EVIL_CFLAGS="-DSECURITY_WIN32 ${EVIL_CFLAGS}"
+ EVIL_CXXFLAGS="-fno-rtti -fno-exceptions -DSECURITY_WIN32 ${EVIL_CXXFLAGS}"
+fi
+
+AC_SUBST([EVIL_CPPFLAGS])
+AC_SUBST([EVIL_CFLAGS_WRN])
+AC_SUBST([EVIL_CXXFLAGS])
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+AC_SEARCH_LIBS([regcomp], [regex],
+ [],
+ [AC_MSG_ERROR([regcomp() can not be found in libregex])])
+
+AC_SEARCH_LIBS([fnmatch], [regex],
+ [],
+ [AC_MSG_ERROR([fnmatch() can not be found in libregex])])
+
+EFL_LIB_END_OPTIONAL([Evil])
+
+AC_SUBST([USE_EVIL_CFLAGS])
+AC_SUBST([USE_EVIL_LIBS])
+#### End of Evil
+
+
+#### Escape
+EFL_LIB_START_OPTIONAL([Escape], [test "${have_ps3}" = "yes"])
+
+### Additional options to configure
+
+### Default values
+
+### Checks for programs
+
+### Checks for libraries
+EFL_ADD_LIBS([ESCAPE], [-llv2 -lm -lnet -lsysmodule -liberty])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END_OPTIONAL([Escape])
+#### End of Escape
+
+EFL_CHECK_FUNC([SHM], [shm_open])
+SHM_LIBS="${requirements_libs_shm}"
+AC_SUBST([SHM_LIBS])
+
+AC_SUBST([DL_LIBS])
+AC_SUBST([DL_INTERNAL_LIBS])
+#### End of Platform-dependent
+
+
+#### Eina
+
+EFL_LIB_START([Eina])
+
+### Default values
+
+have_safety_checks="yes"
+want_log="yes"
+case "${build_profile}" in
+ dev)
+ with_max_log_level=""
+ have_stringshare_usage="no"
+ want_valgrind="auto"
+ want_debug_malloc="no"
+ want_debug_threads="no"
+ want_default_mempool="no"
+ want_cow_magic="no"
+ ;;
+
+ debug)
+ with_max_log_level=""
+ have_stringshare_usage="yes"
+ want_valgrind="auto"
+ want_debug_malloc="yes"
+ want_debug_threads="yes"
+ want_default_mempool="yes"
+ want_cow_magic="yes"
+ ;;
+
+ release)
+ with_max_log_level=""
+ have_stringshare_usage="no"
+ want_valgrind="no"
+ want_debug_malloc="no"
+ want_debug_threads="no"
+ want_default_mempool="no"
+ want_cow_magic="no"
+ ;;
+esac
+
+EFL_CHECK_LIBUNWIND
+
+EINA_CONFIG([HAVE_ALLOCA_H], [test "x${ac_cv_working_alloca_h}" = "xyes"])
+EINA_CONFIG([SAFETY_CHECKS], [test "x${have_safety_checks}" = "xyes"])
+EINA_CONFIG([DEFAULT_MEMPOOL], [test "x${want_default_mempool}" = "xyes"])
+
+if test -n "${with_max_log_level}"; then
+ AC_MSG_NOTICE([ignoring any EINA_LOG() with level greater than ${with_max_log_level}])
+ AC_DEFINE_UNQUOTED([EINA_LOG_LEVEL_MAXIMUM], [${with_max_log_level}], [if set, logging is limited to this amount.])
+fi
+
+AC_DEFINE_IF([EINA_STRINGSHARE_USAGE],
+ [test "x${have_stringshare_usage}" = "xyes"],
+ [1], [Report Eina stringshare usage pattern])
+
+### Additional options to configure
+AC_ARG_ENABLE([magic-debug],
+ [AS_HELP_STRING([--disable-magic-debug],[disable magic debug of eina structure @<:@default=enabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ have_magic_debug="yes"
+ else
+ have_magic_debug="no"
+ fi
+ ],
+ [have_magic_debug="yes"])
+
+AC_ARG_ENABLE([debug-threads],
+ [AS_HELP_STRING([--enable-debug-threads], [enable debugging of eina threads @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_debug_threads="yes"
+ else
+ want_debug_threads="no"
+ fi
+ ])
+
+EINA_CONFIG([MAGIC_DEBUG], [test "x${have_magic_debug}" = "xyes"])
+
+AC_ARG_WITH([xattr-tests-path],
+ [AS_HELP_STRING([--with-xattr-tests-path=DIR],[path of xattr enabled directory to create test files])],[XATTR_TEST_DIR=${withval}][AC_DEFINE_UNQUOTED([XATTR_TEST_DIR],["$withval"], [xattr enabled directory])])
+
+evas_dicts_hyphen_dir="/usr/share/hyphen/"
+AC_ARG_WITH([dictionaries-hyphen-dir],
+ [AS_HELP_STRING([--with-dictionaries-hyphen-dir=DIR],[path of hunspell-compatible hyphen dictionaries])], [evas_dicts_hyphen_dir=$withval])
+AC_DEFINE_UNQUOTED([EVAS_DICTS_HYPHEN_DIR],["$evas_dicts_hyphen_dir"], [Hunspell-compatible hyphen dictionaries install directory])
+
+### Checks for programs
+
+### Checks for libraries
+
+# sockets
+
+case "$host_os" in
+ mingw*)
+ have_socket="no"
+ ;;
+ *solaris*)
+ AC_CHECK_LIB([socket], [connect],
+ [
+ have_socket="yes"
+ requirement_socket="-lsocket"
+ requirement_nsl="-lnsl"
+ ],
+ [have_socket="no"])
+ ;;
+ darwin*)
+ have_socket="yes"
+ ;;
+ *)
+ have_socket="yes"
+ ;;
+esac
+
+EFL_PLATFORM_DEPEND([EINA], [all])
+
+EFL_ADD_LIBS([EINA], [${requirement_socket} -lm])
+
+## Options
+
+# Valgrind
+AC_ARG_ENABLE([valgrind],
+ [AS_HELP_STRING([--disable-valgrind],[enable valgrind mempool declaration. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_valgrind="yes"
+ else
+ want_valgrind="no"
+ fi
+ ])
+
+if test "${want_valgrind}" = "auto"; then
+ PKG_CHECK_EXISTS([valgrind >= 2.4.0], [want_valgrind="yes"],
+ [want_valgrind="no"
+ AC_MSG_WARN([valgrind support desired by --with-profile=${build_profile} but not found. If your platform supports it, install valgrind.])])
+fi
+
+if test "${want_valgrind}" = "no"; then
+ AC_DEFINE([NVALGRIND], [1], [Valgrind support disabled])
+else
+ PKG_CHECK_MODULES([VALGRIND], [valgrind >= 2.4.0])
+ AC_DEFINE([HAVE_VALGRIND], [1], [Valgrind support enabled])
+fi
+
+AC_DEFINE_IF([EINA_DEBUG_MALLOC],
+ [test "x${ac_cv_func_malloc_usable_size}" = "xyes" && test "x${want_debug_malloc}" = "xyes"],
+ [1], [Turn on debugging overhead in mempool])
+
+AC_DEFINE_IF([EINA_COW_MAGIC_ON],
+ [test "x${want_cow_magic}" = "xyes" ],
+ [1], [Turn on Eina_Magic in Eina_Cow])
+
+EFL_OPTIONAL_DEPEND_PKG([EINA], [${want_systemd}], [SYSTEMD], [libsystemd])
+
+EFL_EVAL_PKGS([EINA])
+
+## Examples
+
+## Benchmarks
+
+PKG_CHECK_MODULES([GLIB],
+ [glib-2.0],
+ [have_glib="yes"],
+ [have_glib="no"])
+
+if test "x${have_glib}" = "xyes" ; then
+ GLIB_CFLAGS="${GLIB_CFLAGS} -DEINA_BENCH_HAVE_GLIB"
+fi
+
+### Checks for header files
+
+# sys/mman.h could be provided by evil/escape/exotic so we need to set CFLAGS accordingly
+CFLAGS_save="${CFLAGS}"
+CFLAGS="${CFLAGS} ${EINA_CFLAGS}"
+AC_CHECK_HEADERS([sys/mman.h])
+CFLAGS="${CFLAGS_save}"
+
+AC_CHECK_HEADER([byteswap.h], [have_byteswap="yes"], [have_byteswap="no"])
+
+### Checks for types
+
+EINA_CONFIG([HAVE_DIRENT_H], [test "x${have_dirent}" = "xyes"])
+AC_DEFINE_IF([HAVE_DIRENT_H], [test "x${have_dirent}" = "xyes"],
+ [1], [Define to 1 if you have a valid <dirent.h> header file.])
+
+### Checks for structures
+
+### Checks for compiler characteristics
+EINA_CONFIG([HAVE_BYTESWAP_H], [test "x${have_byteswap}" = "xyes"])
+
+EFL_CHECK_GCC_BUILTIN([bswap16], [HAVE_BSWAP16])
+EFL_CHECK_GCC_BUILTIN([bswap32], [HAVE_BSWAP32])
+EFL_CHECK_GCC_BUILTIN([bswap64], [HAVE_BSWAP64])
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+AC_CHECK_FUNCS([fchmod])
+
+EFL_CHECK_FUNCS([EINA], [dlopen dladdr iconv shm_open splice setxattr getpagesize prctl])
+
+enable_log="no"
+if test "x${efl_func_fnmatch}" = "xyes" && test "x${want_log}" = "xyes" ; then
+ enable_log="yes"
+fi
+
+AC_MSG_CHECKING([wether to build Eina_Log infrastructure])
+AC_MSG_RESULT([${enable_log}])
+
+EINA_CONFIG([ENABLE_LOG], [test "x${enable_log}" = "xyes"])
+
+EFL_CHECK_THREADS
+if test "x${efl_have_threads}" = "xno"; then
+ CFOPT_WARNING="xyes"
+fi
+
+AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[ ]],
+ [[
+ static __thread int a = 0;
+ ]])],
+ [have_thread_specifier="yes"],
+ [have_thread_specifier="no"])
+AC_MSG_CHECKING([for __thread specifier])
+AC_MSG_RESULT([${have_thread_specifier}])
+if test "x${have_thread_specifier}" = "xyes" ; then
+ AC_DEFINE([HAVE_THREAD_SPECIFIER], [1], [Have the __thread specifier])
+fi
+
+EFL_ADD_PUBLIC_LIBS([EINA], [${EFL_PTHREAD_LIBS}])
+EFL_ADD_CFLAGS([EINA], [${EFL_PTHREAD_CFLAGS}])
+
+EINA_CONFIG([HAVE_PTHREAD_BARRIER], [test "x${efl_have_pthread_barrier}" = "xyes"])
+EINA_CONFIG([HAVE_PTHREAD_AFFINITY], [test "x${efl_have_setaffinity}" = "xyes"])
+EINA_CONFIG([HAVE_PTHREAD_SETNAME], [test "x${efl_have_setname}" = "xyes"])
+EINA_CONFIG([HAVE_DEBUG_THREADS], [test "x${want_debug_threads}" = "xyes"])
+EINA_CONFIG([HAVE_POSIX_SPINLOCK], [test "x${efl_have_posix_threads_spinlock}" = "xyes"])
+EINA_CONFIG([HAVE_OSX_SPINLOCK], [test "x${efl_have_osx_spinlock}" = "xyes"])
+EINA_CONFIG([HAVE_OSX_SEMAPHORE], [test "x${have_darwin}" = "xyes"])
+EINA_CONFIG([HAVE_WORDS_BIGENDIAN], [test "x${ac_cv_c_bigendian}" = "xyes"])
+
+### Modules
+
+EINA_CHECK_MODULE([chained-pool], [static], [chained pool])
+EINA_CHECK_MODULE([pass-through], [static], [pass through])
+EINA_CHECK_MODULE([one-big], [static], [one big])
+
+EFL_ADD_FEATURE([EINA], [systemd-journal], [${want_systemd}])
+
+EFL_LIB_END([Eina])
+#### End of Eina
+
+#### Eina CXX
+EFL_LIB_START([Eina_Cxx])
+
+AC_ARG_ENABLE([cxx-bindings],
+ [AS_HELP_STRING([--disable-cxx-bindings],[disable C++11 bindings. @<:@default=enabled@:>@])],
+ [want_cxx11="${enableval}"], [want_cxx11="yes"])
+
+have_cxx11="no"
+if test "x${want_cxx11}" = "xyes"; then
+ EFL_CXX_COMPILE_STDCXX_11([ext])
+ if test "x${HAVE_CXX11}" = "x1" ; then
+
+ # We should be using ${CXX} here, but there is a bug in
+ # autotools macro and CXX is always set to g++ even if
+ # it's not found. So we are using an internal variable
+ # that does the work for now, may get broken in the future.
+ if test "x${ac_ct_CXX}" = "x" -a "x${CXX}" = "xg++"; then
+ AC_MSG_ERROR([efl requires a C++ compiler got ${ac_ct_CXX} and ${CXX}.])
+ fi
+
+ have_cxx11="yes"
+ fi
+fi
+
+AM_CONDITIONAL([HAVE_CXX], [test "x${have_cxx11}" = "xyes"])
+
+EFL_INTERNAL_DEPEND_PKG([EINA_CXX], [Eina])
+EFL_ADD_CFLAGS([EINA_CXX], [${EFL_PTHREAD_CFLAGS}])
+EFL_EVAL_PKGS([EINA_CXX])
+
+EFL_LIB_END([Eina_Cxx])
+#### End of Eina CXX
+
+AC_ARG_WITH([js],
+ [AS_HELP_STRING([--with-js=@<:@nodejs/libv8/libuv/none@:>@],[enable JavaScript bindings using nodejs or libv8/libuv as build dependencies. The libuv option implies libv8. @<:@default=none@:>@])],
+ [want_js="${withval}"], [want_js="none"])
+
+EFLJS_CXXFLAGS=""
+AC_LANG_PUSH([C++])
+case "$want_js" in
+ nodejs)
+ AC_CHECK_HEADERS([node/v8.h nodejs/deps/v8/v8.h nodejs/deps/v8/include/v8.h nodejs/src/v8.h v8.h],
+ [
+ v8_header=AC_header
+ v8_header_define=AS_TR_CPP([HAVE_]AC_header)
+ EFLJS_CXXFLAGS="$EFLJS_CXXFLAGS -D$v8_header_define"
+ break
+ ]
+ [AC_MSG_ERROR([Could not find v8 include headers from nodejs.])])
+ AC_CHECK_HEADERS([node/node.h nodejs/deps/node/node.h nodejs/deps/node/include/node.h nodejs/src/node.h node.h],
+ [
+ node_header_define=AS_TR_CPP([HAVE_]AC_header)
+ EFLJS_CXXFLAGS="$EFLJS_CXXFLAGS -D$node_header_define"
+ break
+ ]
+ [AC_MSG_ERROR([Could not find node include headers from nodejs.])])
+ AC_CHECK_HEADERS([node/uv.h nodejs/deps/uv/uv.h nodejs/deps/uv/include/uv.h nodejs/src/uv.h uv.h],
+ [
+ uv_header_define=AS_TR_CPP([HAVE_]AC_header)
+ EFLJS_CXXFLAGS="$EFLJS_CXXFLAGS -D$uv_header_define"
+ break
+ ]
+ [AC_MSG_ERROR([Could not find uv include headers from nodejs.])])
+ ;;
+ libv8)
+ AC_CHECK_HEADERS([v8.h],
+ [
+ v8_header=AC_header
+ break
+ ]
+ [AC_MSG_ERROR([Could not find v8 include headers from libv8.])])
+ ;;
+ libuv)
+ AC_CHECK_HEADERS([v8.h],
+ [
+ v8_header=AC_header
+ break
+ ]
+ [AC_MSG_ERROR([Could not find v8 include headers from libv8.])])
+ AC_CHECK_HEADERS([uv.h],
+ [break]
+ [AC_MSG_ERROR([Could not find uv include headers from libuv.])])
+ ;;
+ none)
+ ;;
+ *) AC_MSG_ERROR([Invalid javascript dependency (${want_js}): must be none, nodejs, libv8 or libuv]) ;;
+esac
+
+have_v8_global="no"
+have_v8_create_params="no"
+if test "$want_js" != "none" ; then
+AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[
+#include "$v8_header"
+ ]],
+ [[
+v8::Isolate::CreateParams create_params; create_params.array_buffer_allocator = nullptr;
+ ]])
+ ],
+ [
+ AC_DEFINE(HAVE_V8_CREATE_PARAMS, 1, [Define to 1 if you must pass create_params explicitly.])
+ have_v8_create_params="yes"
+ AC_MSG_NOTICE([checking for v8::Isolate::CreateParams... yes])
+ ],
+ [
+ AC_MSG_NOTICE([checking for v8::Isolate::CreateParams... no])
+ ])
+AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[
+#include "$v8_header"
+#include <type_traits>
+ ]],
+ [[
+ static_assert((std::is_same< ::v8::Global<void>, ::v8::UniquePersistent<void>>::value), "");
+ ]])
+ ],
+ [
+ AC_DEFINE(HAVE_V8_GLOBAL, 1, [Define to 1 if you must pass create_params explicitly.])
+ have_v8_global="yes"
+ AC_MSG_NOTICE([checking for v8::Global<T> class... yes])
+ ],
+ [
+ AC_MSG_NOTICE([checking for v8::Global<T> class... no])
+ ])
+fi
+AM_CONDITIONAL([HAVE_V8_CREATE_PARAMS], [test "x${have_v8_create_params}" = "xyes"])
+AM_CONDITIONAL([HAVE_V8_GLOBAL], [test "x${have_v8_global}" = "xyes"])
+AC_SUBST([HAVE_V8_CREATE_PARAMS])
+AC_SUBST([HAVE_V8_GLOBAL])
+AC_LANG_POP([C++])
+
+AM_CONDITIONAL([HAVE_NODEJS], [test "x${want_js}" = "xnodejs"])
+AC_DEFINE_IF([HAVE_NODEJS], [test "x${want_js}" = "xnodejs"],
+ [1], [Using NodeJS])
+AC_SUBST([want_js])
+AC_SUBST([HAVE_NODEJS])
+
+have_js="no"
+if test "x${want_js}" != "xnone" ; then
+ have_js="yes"
+fi
+AM_CONDITIONAL([HAVE_JS], [test "x${have_js}" = "xyes"])
+AC_DEFINE_IF([HAVE_JS], [test "x${have_js}" = "xyes"], [1], [Compiling bindings for JavaScript])
+AC_SUBST([HAVE_JS])
+
+AM_CONDITIONAL([HAVE_LIBUV], [test "x${want_js}" = "xnodejs" -o "x${want_js}" = "xlibuv"])
+AC_DEFINE_IF([HAVE_LIBUV], [test "x${want_js}" = "xnodejs" -o "x${want_js}" = "xlibuv"],
+ [1], [Compiling libuv event loop integration])
+AC_SUBST([HAVE_LIBUV])
+
+# For efljspack mime handling
+AM_CONDITIONAL([HAVE_XDG_DATA_HOME], [test "x${XDG_DATA_HOME}" != "x"])
+AM_COND_IF([HAVE_XDG_DATA_HOME], [AC_SUBST([XDG_DATA_HOME])], [AC_SUBST([XDG_DATA_HOME], "$HOME/.local/share")])
+
+#### Eina JS
+EFL_LIB_START_OPTIONAL([Eina_Js], [test "x${have_js}" = "xyes"])
+EFL_INTERNAL_DEPEND_PKG([EINA_JS], [Eina])
+EFL_INTERNAL_DEPEND_PKG([EINA_JS], [Eo])
+EFL_ADD_CFLAGS([EINA_JS], [${EFL_PTHREAD_CFLAGS}])
+EFL_EVAL_PKGS([EINA_JS])
+
+EFL_LIB_END_OPTIONAL([Eina_Js])
+#### End of Eina JS
+
+#### Ecore JS
+EFL_LIB_START_OPTIONAL([Ecore_Js], [test "x${have_js}" = "xyes"])
+
+EFL_INTERNAL_DEPEND_PKG([ECORE_JS], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ECORE_JS], [ecore_file])
+EFL_INTERNAL_DEPEND_PKG([ECORE_JS], [efl])
+EFL_ADD_CFLAGS([ECORE_JS], [${EFL_PTHREAD_CFLAGS}])
+EFL_EVAL_PKGS([ECORE_JS])
+
+EFL_LIB_END_OPTIONAL([Ecore_Js])
+#### End of Ecore JS
+
+#### Eio JS
+EFL_LIB_START_OPTIONAL([Eio_Js], [test "x${have_js}" = "xyes"])
+
+EFL_INTERNAL_DEPEND_PKG([EIO_JS], [eio])
+EFL_ADD_CFLAGS([EIO_JS], [${EFL_PTHREAD_CFLAGS}])
+EFL_EVAL_PKGS([EIO_JS])
+
+EFL_LIB_END_OPTIONAL([Eio_Js])
+#### End of Eio JS
+
+#### Ethumb JS
+EFL_LIB_START_OPTIONAL([Ethumb_Js], [test "x${have_js}" = "xyes"])
+
+EFL_INTERNAL_DEPEND_PKG([ETHUMB_JS], [ethumb])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB_JS], [ethumb_client])
+EFL_ADD_CFLAGS([ETHUMB_JS], [${EFL_PTHREAD_CFLAGS}])
+EFL_EVAL_PKGS([ETHUMB_JS])
+
+EFL_LIB_END_OPTIONAL([Ethumb_Js])
+#### End of Ethumb JS
+
+#### Eldbus JS
+EFL_LIB_START_OPTIONAL([Eldbus_Js], [test "x${have_js}" = "xyes"])
+
+EFL_INTERNAL_DEPEND_PKG([ELDBUS_JS], [eldbus])
+EFL_ADD_CFLAGS([ELDBUS_JS], [${EFL_PTHREAD_CFLAGS}])
+EFL_EVAL_PKGS([ELDBUS_JS])
+
+EFL_LIB_END_OPTIONAL([Eldbus_Js])
+#### End of Eldbus JS
+
+#### Eo JS
+EFL_LIB_START_OPTIONAL([Eo_Js], [test "x${have_js}" = "xyes"])
+
+EFL_INTERNAL_DEPEND_PKG([EO_JS], [eina])
+EFL_ADD_CFLAGS([EO_JS], [${EFL_PTHREAD_CFLAGS}])
+EFL_EVAL_PKGS([EO_JS])
+
+EFL_LIB_END_OPTIONAL([Eo_Js])
+#### End of Eo JS
+
+#### Efl C Sharp Bindings
+want_csharp_beta="no"
+AC_ARG_ENABLE([csharp-beta],
+ [AS_HELP_STRING([--enable-csharp-beta],[enable C Sharp bindings. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_csharp_beta="yes"
+ else
+ want_csharp_beta="no"
+ fi
+ ],
+ [want_csharp_beta="no"])
+
+want_csharp="no"
+AC_ARG_ENABLE([csharp-bindings],
+ [AS_HELP_STRING([--enable-csharp-bindings],[enable C Sharp bindings. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_csharp="yes"
+ else
+ want_csharp="no"
+ fi
+ ],
+ [want_csharp="no"])
+
+if test "x${want_csharp}" = "xyes" -a "x${HAVE_MCS}" != "x1"; then
+ want_csharp="no"
+ AC_MSG_ERROR([C Sharp bindings requested but C Sharp compiler could not be found])
+fi
+
+AM_CONDITIONAL([HAVE_CSHARP], [test "x${want_csharp}" = "xyes"])
+AC_DEFINE_IF([HAVE_CSHARP], [test "x${want_csharp}" = "xyes"],
+ [1], [Compiling bindings for C Sharp])
+AC_SUBST([want_csharp])
+
+AM_CONDITIONAL([HAVE_CSHARP_BETA], [test "x${want_csharp_beta}" = "xyes"])
+AC_DEFINE_IF([HAVE_CSHARP_BETA], [test "x${want_csharp_beta}" = "xyes"],
+ [1], [Compiling bindings for C Sharp with beta methods, properties and classes])
+AC_SUBST([want_csharp_beta])
+
+if test "x${have_windows}" = "xyes"; then
+ eflmonodlldir="$prefix/bin"
+else
+ eflmonodlldir="$libdir/efl-mono-${EFL_VERSION_MAJOR}"
+fi
+AC_SUBST([eflmonodlldir])
+
+# Efl Mono
+EFL_LIB_START_OPTIONAL([Efl_Mono], [test "x${want_csharp}" = "xyes"])
+
+EFL_PLATFORM_DEPEND([EFL_MONO], [evil])
+EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Eina])
+EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Eo])
+EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Ecore])
+EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Eet])
+EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Ecore_Evas])
+EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Ecore_Con])
+EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Ecore_Audio])
+EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Efl])
+EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Evas])
+EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Edje])
+EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Emotion])
+EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Eldbus])
+EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Emile])
+EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Ethumb])
+EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Ethumb_Client])
+EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Eio])
+EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Elementary])
+EFL_INTERNAL_DEPEND_PKG([EFL_MONO], [Efl_Custom_Exports_Mono])
+
+EFL_EVAL_PKGS([EFL_MONO])
+
+EFL_LIB_END_OPTIONAL([Efl_Mono])
+
+# Efl Custom Exports Mono
+EFL_LIB_START_OPTIONAL([Efl_Custom_Exports_Mono], [test "x${want_csharp}" = "xyes"])
+
+EFL_PLATFORM_DEPEND([EFL_CUSTOM_EXPORTS_MONO], [evil])
+EFL_INTERNAL_DEPEND_PKG([EFL_CUSTOM_EXPORTS_MONO], [Eina])
+EFL_INTERNAL_DEPEND_PKG([EFL_CUSTOM_EXPORTS_MONO], [Eo])
+EFL_INTERNAL_DEPEND_PKG([EFL_CUSTOM_EXPORTS_MONO], [Ecore])
+EFL_INTERNAL_DEPEND_PKG([EFL_CUSTOM_EXPORTS_MONO], [Efl])
+EFL_INTERNAL_DEPEND_PKG([EFL_CUSTOM_EXPORTS_MONO], [Eldbus])
+
+EFL_EVAL_PKGS([EFL_CUSTOM_EXPORTS_MONO])
+
+EFL_LIB_END_OPTIONAL([Efl_Custom_Exports_Mono])
+
+# Libtool versioning stuff.
+# On windows, the version of the library goes into the filename.
+# See https://autotools.io/libtool/windows.html#libtool.windows.version
+# Based on the current:revision:age string passed to libtool, the generated suffix
+# has the value of (current - age).
+# To get the current and age, we use the same calculation from m4/efl.m4 (lt_cur, lt_age)
+DLIB_PREFIX_MONO=""
+DLIB_SUFFIX_MONO=""
+if test "x${have_windows}" = "xyes"; then
+ DLIB_PREFIX_MONO="lib"
+ if test "x${EFL_VERSION_MAJOR}" = "x1"; then
+ DLIB_SUFFIX_MONO="-${EFL_VERSION_MAJOR}"
+ else
+ DLIB_SUFFIX_MONO="-${EFL_VERSION_MAJOR}00"
+ fi
+fi
+AC_SUBST([DLIB_PREFIX_MONO])
+AC_SUBST([DLIB_SUFFIX_MONO])
+
+EFL_DL_MONO="${DLIB_PREFIX_MONO}efl${DLIB_SUFFIX_MONO}";
+ECORE_DL_MONO="${DLIB_PREFIX_MONO}ecore${DLIB_SUFFIX_MONO}";
+EINA_DL_MONO="${DLIB_PREFIX_MONO}eina${DLIB_SUFFIX_MONO}"
+EO_DL_MONO="${DLIB_PREFIX_MONO}eo${DLIB_SUFFIX_MONO}"
+EVAS_DL_MONO="${DLIB_PREFIX_MONO}evas${DLIB_SUFFIX_MONO}"
+if test "x${have_windows}" = "xyes"; then
+ EVIL_DL_MONO="${DLIB_PREFIX_MONO}evil${DLIB_SUFFIX_MONO}"
+else
+ EVIL_DL_MONO="dl"
+fi
+EDJE_DL_MONO="${DLIB_PREFIX_MONO}edje${DLIB_SUFFIX_MONO}"
+ELEMENTARY_DL_MONO="${DLIB_PREFIX_MONO}elementary${DLIB_SUFFIX_MONO}"
+ELDBUS_DL_MONO="${DLIB_PREFIX_MONO}eldbus${DLIB_SUFFIX_MONO}"
+CUSTOM_EXPORTS_MONO_DL_MONO="${DLIB_PREFIX_MONO}eflcustomexportsmono${DLIB_SUFFIX_MONO}"
+
+AC_SUBST([EFL_DL_MONO])
+AC_SUBST([ECORE_DL_MONO])
+AC_SUBST([EINA_DL_MONO])
+AC_SUBST([EO_DL_MONO])
+AC_SUBST([EVAS_DL_MONO])
+AC_SUBST([EVIL_DL_MONO])
+AC_SUBST([EDJE_DL_MONO])
+AC_SUBST([ELEMENTARY_DL_MONO])
+AC_SUBST([ELDBUS_DL_MONO])
+AC_SUBST([CUSTOM_EXPORTS_MONO_DL_MONO])
+
+# Eos file/library mapping
+
+# Unescaped sed pattern: sed -n 's/src\/lib\/\([a-z0-9_]*\)\/[a-z\/]*\/\([a-z0-9\._]*\)/\2,\1/pg'
+AC_CHECK_PROG([have_realpath], [realpath], [yes], [no])
+if test "x${have_realpath}" = "xyes" ; then
+ _configure_path=`realpath $0`
+else
+ AC_CHECK_PROG([have_readlink], [readlink], [yes], [no])
+ if test "x${have_readlink}" = "xyes" ; then
+ _configure_path=`readlink -f $0`
+ fi
+fi
+efl_mono_top_srcdir=`dirname ${_configure_path}`
+EFL_MONO_LIBRARY_MAP=`find ${efl_mono_top_srcdir}/src/lib/ -iname "*\.eo" | sed -n 's/.*\/src\/lib\/\(@<:@a-z0-9_@:>@*\)@<:@\/a-z@:>@*\/\(@<:@a-z0-9\._@:>@*\)/\2,\1/pg'`
+
+AC_SUBST([EFL_MONO_LIBRARY_MAP])
+AM_SUBST_NOTMAKE([EFL_MONO_LIBRARY_MAP])
+
+#### End of Efl C Sharp Bindings
+
+#### Eo
+
+EFL_LIB_START([Eo])
+
+### Default values
+
+### Additional options to configure
+
+### Checks for programs
+
+## Compatibility layers
+EFL_PLATFORM_DEPEND([EO], [evil])
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([EO], [eina])
+
+# Example (evas one)
+
+# TODO: add once elementary is merged
+#PKG_CHECK_MODULES([ELM], [elementary >= 1.7.0], [have_elm="yes"], [have_elm="no"])
+AM_CONDITIONAL([EO_BUILD_EXAMPLE_EVAS], [test "x${have_elm}" = "xyes"])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+EFL_CHECK_FUNCS([EO], [dladdr])
+
+### Check availability
+
+EFL_LIB_END([Eo])
+#### End of Eo
+
+#### Eet CXX
+EFL_LIB_START([Eet_Cxx])
+
+EFL_INTERNAL_DEPEND_PKG([EET_CXX], [Eina_Cxx])
+EFL_INTERNAL_DEPEND_PKG([EET_CXX], [Eet])
+
+EFL_EVAL_PKGS([EET_CXX])
+
+EFL_LIB_END([Eet_Cxx])
+#### End of Eet CXX
+
+#### Emile
+
+EFL_LIB_START([Emile])
+
+### Default values
+
+### Additional options to configure
+
+### Checks for programs
+
+### Checks for libraries
+
+EFL_CHECK_LIBS([EMILE], [libjpeg])
+
+## Compatibility layers
+EFL_PLATFORM_DEPEND([EMILE], [evil])
+
+EFL_ADD_LIBS([EMILE], [-lm])
+
+# Cryptography support
+if test "$build_crypto" != "none" ; then
+ AC_DEFINE([HAVE_CIPHER], [1], [Have cipher support built in emile])
+ AC_DEFINE([HAVE_SIGNATURE], [1], [Have signature support in emile])
+ EFL_CRYPTO_DEPEND([EMILE])
+fi
+
+EFL_CHECK_LIBS([EMILE], [zlib])
+
+EFL_INTERNAL_DEPEND_PKG([EMILE], [eina])
+
+EFL_EVAL_PKGS([EMILE])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+### Check availability
+
+EFL_ADD_FEATURE([EMILE], [crypto], [${build_crypto}])
+
+EFL_LIB_END([Emile])
+#### End of Emile
+
+
+#### Eet
+
+EFL_LIB_START([Eet])
+
+### Default values
+
+### Additional options to configure
+
+### Checks for programs
+
+### Checks for libraries
+
+EFL_CHECK_LIBS([EET], [libjpeg])
+
+## Compatibility layers
+EFL_PLATFORM_DEPEND([EET], [evil])
+
+EFL_ADD_LIBS([EET], [-lm])
+
+# Cryptography support
+if test "$build_crypto" != "none" ; then
+ AC_DEFINE([HAVE_CIPHER], [1], [Have cipher support built in eet])
+ AC_DEFINE([HAVE_SIGNATURE], [1], [Have signature support for eet file])
+ EFL_CRYPTO_DEPEND([EET])
+fi
+
+EFL_INTERNAL_DEPEND_PKG([EET], [eina])
+EFL_INTERNAL_DEPEND_PKG([EET], [emile])
+
+EFL_EVAL_PKGS([EET])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+### Check availability
+
+EFL_LIB_END([Eet])
+#### End of Eet
+
+#### Eo CXX
+EFL_LIB_START([Eo_Cxx])
+
+EFL_EVAL_PKGS([EO_CXX])
+
+EFL_LIB_END([Eo_Cxx])
+#### End of Eo CXX
+
+#### Eolian
+
+EFL_LIB_START([Eolian])
+
+### Default values
+
+### Additional options to configure
+EFL_ADD_FEATURE([EOLIAN], [cxx], [${have_cxx11}])
+
+### Checks for programs
+
+## Compatibility layers
+EFL_PLATFORM_DEPEND([EOLIAN], [evil])
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([EOLIAN], [eina])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+### Check availability
+
+EFL_LIB_END([Eolian])
+#### End of Eolian
+
+EFL_LIB_START_OPTIONAL([Eolian_Js], [test "${have_js}" = "yes"])
+
+EFL_INTERNAL_DEPEND_PKG([EOLIAN_JS], [eina])
+EFL_INTERNAL_DEPEND_PKG([EOLIAN_JS], [eolian])
+
+EFL_LIB_END_OPTIONAL([Eolian_Js])
+#### End of Eolian
+
+
+EFL_LIB_START([Eolian_Cxx])
+### Default values
+
+### Additional options to configure
+
+### Checks for programs
+
+## Compatibility layers
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([EOLIAN_CXX], [eina])
+EFL_INTERNAL_DEPEND_PKG([EOLIAN_CXX], [eo])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+### Check availability
+EFL_LIB_END([Eolian_Cxx])
+
+#### Efl
+
+EFL_LIB_START([Efl])
+
+EFL_PLATFORM_DEPEND([EFL], [evil])
+EFL_INTERNAL_DEPEND_PKG([EFL], [eina])
+EFL_INTERNAL_DEPEND_PKG([EFL], [eo])
+
+EFL_ADD_LIBS([EFL], [-lm])
+
+EFL_LIB_END([Efl])
+#### End of Efl
+
+#### Ector
+
+EFL_LIB_START([Ector])
+
+
+### Default values
+
+### Additional options to configure
+
+### Checks for programs
+
+### Checks for libraries
+
+## Compatibility layers
+
+EFL_PLATFORM_DEPEND([ECTOR], [evil])
+
+EFL_INTERNAL_DEPEND_PKG([ECTOR], [eina])
+EFL_INTERNAL_DEPEND_PKG([ECTOR], [emile])
+EFL_INTERNAL_DEPEND_PKG([ECTOR], [eet])
+EFL_INTERNAL_DEPEND_PKG([ECTOR], [eo])
+EFL_INTERNAL_DEPEND_PKG([ECTOR], [efl])
+
+EFL_ADD_LIBS([ECTOR], [-lm])
+
+EFL_EVAL_PKGS([ECTOR])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+### Check availability
+
+EFL_LIB_END([ECTOR])
+
+#### End of Ector
+
+
+#### Ecore
+
+EFL_LIB_START([Ecore])
+
+### Additional options to configure
+
+# glib
+
+AC_ARG_WITH([glib],
+ [AS_HELP_STRING([--with-glib=yes|no|always],[add glib support. @<:@default=enabled@:>@])],
+ [
+ if test "x${withval}" = "xyes" ; then
+ with_glib="yes"
+ else
+ if test "x${withval}" = "xalways" ; then
+ with_glib="always"
+ else
+ with_glib="no"
+ fi
+ fi
+ ],
+ [with_glib="yes"])
+
+AC_ARG_ENABLE([g-main-loop],
+ [AS_HELP_STRING([--enable-g-main-loop],[enable ecore_main_loop based on g_main_loop. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_g_main_loop="yes"
+ CFOPT_WARNING="xyes"
+ else
+ want_g_main_loop="no"
+ fi
+ ],
+ [want_g_main_loop="no"])
+AC_ARG_ENABLE([libuv],
+ [AS_HELP_STRING([--enable-libuv],[enable ecore_main_loop based on libuv. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_libuv="yes"
+ CFOPT_WARNING="xyes"
+ else
+ want_libuv="no"
+ fi
+ ],
+ [want_libuv="no"])
+
+AC_ARG_ENABLE([gstreamer],
+ [AS_HELP_STRING([--enable-gstreamer],[enable gstreamer 0.10 support. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_gstreamer="yes"
+ CFOPT_WARNING="xyes"
+ else
+ want_gstreamer="no"
+ fi
+ ],
+ [want_gstreamer="no"])
+
+AC_ARG_ENABLE([gstreamer1],
+ [AS_HELP_STRING([--disable-gstreamer1],[disable gstreamer 1.0 support. @<:@default=enabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_gstreamer1="yes"
+ else
+ want_gstreamer1="no"
+ CFOPT_WARNING="xyes"
+ fi
+ ],
+ [want_gstreamer1="yes"])
+
+AC_ARG_ENABLE([tizen],
+ [AS_HELP_STRING([--enable-tizen],[enable tizen support. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_tizen="yes"
+ else
+ want_tizen="no"
+ fi
+ ],
+ [want_tizen="no"])
+
+if test "${want_tizen}" = "yes"; then
+ PKG_CHECK_MODULES([TIZEN_CONFIGURATION_MANAGER],
+ [vconf],
+ [have_tizen_vconf="yes"],
+ [have_tizen_vconf="no"])
+ PKG_CHECK_MODULES([TIZEN_CONFIGURATION_MANAGER], [vconf])
+fi
+
+AM_CONDITIONAL([HAVE_TIZEN_CONFIGURATION_MANAGER], [test "${have_tizen_vconf}" = "yes"])
+if test "${have_tizen_vconf}" = "yes"; then
+ AC_DEFINE(HAVE_TIZEN_CONFIGURATION_MANAGER, 1, [Define to 1 if you have Tizen configuration manager(vconf).])
+fi
+
+AC_ARG_ENABLE([ecore_wayland],
+ [AS_HELP_STRING([--enable-ecore-wayland],[enable legacy Ecore_Wayland support. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_ecore_wayland="yes"
+ else
+ want_ecore_wayland="no"
+ fi
+ ],
+ [want_ecore_wayland="no"])
+
+AC_ARG_ENABLE([ecore_drm],
+ [AS_HELP_STRING([--enable-ecore-drm],[enable legacy Ecore_Drm support. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_ecore_drm="yes"
+ else
+ want_ecore_drm="no"
+ fi
+ ],
+ [want_ecore_drm="no"])
+
+### Default values
+
+if test "${have_windows}" = "yes"; then
+ with_glib="no"
+fi
+
+want_glib="no"
+if test "x${with_glib}" = "xyes" || test "x${with_glib}" = "xalways" ; then
+ want_glib="yes"
+fi
+
+want_ecore_timer_dump="no"
+if test "x${build_profile}" = "xdebug" && test "x${ac_cv_func_backtrace}" = "xyes"; then
+ want_ecore_timer_dump="yes"
+ AC_DEFINE([WANT_ECORE_TIMER_DUMP], [1], [Want Ecore_Timer dump infrastructure])
+fi
+
+### Checks for programs
+
+### Checks for libraries
+EFL_PLATFORM_DEPEND([ECORE], [all])
+EFL_INTERNAL_DEPEND_PKG([ECORE], [eo])
+EFL_INTERNAL_DEPEND_PKG([ECORE], [eina])
+EFL_INTERNAL_DEPEND_PKG([ECORE], [efl])
+
+EFL_ADD_LIBS([ECORE], [-lm])
+
+# glib
+
+EFL_OPTIONAL_DEPEND_PKG([ECORE], [${want_glib}], [GLIB], [glib-2.0 gthread-2.0])
+if test "x${have_glib}" = "xno"; then
+ want_g_main_loop="no"
+fi
+
+EFL_OPTIONAL_DEPEND_PKG([ECORE], [${want_systemd}], [SYSTEMD], [libsystemd])
+
+EFL_ADD_FEATURE([ECORE], [systemd-daemon], [${want_systemd}])
+EFL_ADD_FEATURE([ECORE], [glib])
+EFL_ADD_FEATURE([ECORE], [g-main-loop])
+EFL_ADD_FEATURE([ECORE], [libuv])
+
+want_glib_integration_always=no
+if test "x${with_glib}" = "xalways" ; then
+ want_glib_integration_always="yes"
+ AC_DEFINE([GLIB_INTEGRATION_ALWAYS], [1], [Always integrate glib if support compiled])
+fi
+
+if test "x${want_g_main_loop}" = "xyes" ; then
+ AC_DEFINE([USE_G_MAIN_LOOP], [1], [Use g_main_loop in ecore])
+ if test "x${want_js}" = "xnodejs" -o "x${want_js}" = "xlibuv" ; then
+ AC_MSG_ERROR([Can't define glib and libuv integration together])
+ fi
+fi
+
+# not EFL_OPTIONAL_DEPEND_PKG() because it's only used for ecore examples
+if test "${want_gstreamer1}" = "yes" -a "${want_gstreamer}" = "yes"; then
+ AC_MSG_ERROR([You can only enable either GStreamer 1.0 or GStreamer 0.10 support])
+fi
+
+if test "${want_gstreamer1}" = "yes"; then
+ PKG_CHECK_MODULES([GSTREAMER], [gstreamer-1.0])
+fi
+if test "${want_gstreamer}" = "yes"; then
+ PKG_CHECK_MODULES([GSTREAMER], [gstreamer-0.10])
+fi
+
+AM_CONDITIONAL([HAVE_GSTREAMER], [test "x${want_gstreamer}" = "xyes" -o "x${want_gstreamer1}" = "xyes"])
+AM_CONDITIONAL([HAVE_GSTREAMER0], [test "x${want_gstreamer}" = "xyes"])
+AM_CONDITIONAL([HAVE_GSTREAMER1], [test "x${want_gstreamer1}" = "xyes"])
+
+EFL_EVAL_PKGS([ECORE])
+
+### Checks for header files
+
+AC_HEADER_SYS_WAIT
+
+AC_CHECK_HEADERS([sys/socket.h])
+
+AC_CHECK_HEADERS([ \
+arpa/inet.h \
+arpa/nameser.h \
+langinfo.h \
+features.h \
+netinet/in.h \
+netinet/tcp.h \
+netinet/udp.h \
+sys/prctl.h \
+sys/ioctl.h \
+sys/resource.h \
+sys/timerfd.h \
+sys/un.h \
+ieeefp.h \
+],[],[],
+[
+ #ifdef HAVE_SYS_SOCKET_H
+ # include <sys/socket.h>
+ #endif
+])
+
+AC_CHECK_HEADERS([net/if.h], [], [],
+[#include <stdio.h>
+#if STDC_HEADERS
+# include <stdlib.h>
+# include <stddef.h>
+#else
+# if HAVE_STDLIB_H
+# include <stdlib.h>
+# endif
+#endif
+#if HAVE_SYS_SOCKET_H
+# include <sys/socket.h>
+#endif
+])
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+## ecore
+
+# isfinite
+
+AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[
+#include <math.h>
+ ]],
+ [[
+int i = isfinite(0);
+ ]])],
+ [
+ AC_DEFINE(HAVE_ISFINITE, 1, [Define to 1 if you have 'isfinite', as a function or macro.])
+ have_isfinite="yes"
+ ],
+ [have_isfinite="no"])
+
+AC_MSG_CHECKING([for isfinite])
+AC_MSG_RESULT([${have_isfinite}])
+
+# mallinfo, timerfd_create, clock_gettime
+
+AC_CHECK_FUNCS_ONCE([mallinfo timerfd_create clock_gettime malloc_info])
+
+if ! test "x${ac_cv_func_clock_gettime}" = "xyes" ; then
+ AC_CHECK_LIB([rt], [clock_gettime],
+ [
+ EFL_ADD_LIBS([ECORE], [-lrt])
+ AC_DEFINE([HAVE_CLOCK_GETTIME], [1], [Have clock_gettime()])
+ ])
+fi
+
+EFL_ADD_LIBS([ECORE], [${LTLIBINTL}])
+
+# coroutine function specific
+
+AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[
+#include <ucontext.h>
+ ]],
+ [[
+ucontext_t test;
+getcontext(&test);
+ ]])],
+ [have_ucontext="yes"],
+ [have_ucontext="no"])
+
+AC_MSG_CHECKING([for ucontext])
+AC_MSG_RESULT([${have_ucontext}])
+
+AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[
+#include <setjmp.h>
+ ]],
+ [[
+jmp_buf context;
+setjmp(&context);
+ ]])],
+ [have_setjmp="yes"],
+ [have_setjmp="no"])
+
+AC_MSG_CHECKING([for setjmp])
+AC_MSG_RESULT([${have_setjmp}])
+
+if test "X${have_windows}" = "xyes"; then
+ AC_DEFINE(USE_FIBER, 1, [Define to 1 if you have Windows Fiber support.])
+ EFL_ADD_FEATURE([system], [coroutine], [fiber])
+elif test "x${have_ucontext}" = "xyes"; then
+ AC_DEFINE(USE_UCONTEXT, 1, [Define to 1 if you have posix ucontext functions.])
+ EFL_ADD_FEATURE([system], [coroutine], [ucontext])
+elif test "x${have_setjmp}" = "xyes"; then
+ AC_DEFINE(USE_SETJMP, 1, [Define to 1 if you have setjmp/longjmp functions.])
+ EFL_ADD_FEATURE([system], [coroutine], [setjmp])
+else
+ AC_MSG_ERROR([You do not have a working way to implement coroutine. Exiting...])
+fi
+
+### Check availability
+
+EFL_LIB_END([Ecore])
+#### End of Ecore
+
+#### Evas
+
+EFL_LIB_START([Evas])
+
+### Additional options to configure
+
+# X11
+AC_ARG_WITH([x11],
+ [AS_HELP_STRING([--with-x11=xlib|none],[Use X11 (Xlib) or not])])
+
+if test "x${have_windows}" = "xyes" || test "x${have_ps3}" = "xyes" || test "x${have_darwin}" = "xyes"; then
+ with_x11="none"
+elif test "x${with_x11}" = "x"; then
+ with_x11="xlib"
+fi
+
+want_x11_xlib="no"
+want_x11_none="no"
+want_x11_any="no"
+case "${with_x11}" in
+ xlib)
+ want_x11_xlib="yes"
+ want_x11_any="yes"
+ ;;
+ none)
+ want_x11_none="yes"
+ ;;
+ *)
+ AC_MSG_ERROR([Unknown build x11 --with-x11=${with_x11}])
+ ;;
+esac
+
+# OpenGL
+AC_ARG_WITH([opengl],
+ [AS_HELP_STRING([--with-opengl=full|es|none],[OpenGL method to use: full, es or none])])
+
+if test "x${have_windows}" = "xyes" || test "x${have_ps3}" = "xyes"; then
+ with_opengl="none"
+elif test "x${with_opengl}" = "x"; then
+ with_opengl="full"
+fi
+
+case "${with_opengl}" in
+ full|es|none)
+ ;;
+ *)
+ AC_MSG_ERROR([Unknown build opengl --with-opengl=${with_opengl}])
+ ;;
+esac
+
+want_x11_xlib_opengl="no"
+if test "${with_opengl}" != "none"; then
+ want_x11_xlib_opengl="${want_x11_xlib}"
+ want_x11_any_opengl="${want_x11_any}"
+fi
+
+# Wayland
+AC_ARG_ENABLE([wayland],
+ [AS_HELP_STRING([--enable-wayland],[enable wayland display server. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_wayland="yes"
+ else
+ want_wayland="no"
+ fi
+ ],
+ [want_wayland="no"])
+
+if test "${want_wayland}" = "yes"; then
+ EFL_PKG_CHECK_STRICT([wayland-client >= 1.11.0 wayland-scanner >= 1.11.0 wayland-protocols >= 1.12])
+ PKG_CHECK_MODULES([WAYLAND], [wayland-scanner >= 1.11.0],
+ [
+ AC_ARG_VAR([wayland_scanner], [The wayland-scanner executable])
+ AC_PATH_PROG([wayland_scanner], [wayland-scanner])
+ if test x$wayland_scanner = x; then
+ PKG_CHECK_MODULES(WAYLAND_SCANNER, [wayland-scanner])
+ wayland_scanner=`$PKG_CONFIG --variable=wayland_scanner wayland-scanner`
+ fi
+ ac_wayland_protocols_pkgdatadir=`$PKG_CONFIG --variable=pkgdatadir wayland-protocols`
+ AC_SUBST(WAYLAND_PROTOCOLS_DATADIR, $ac_wayland_protocols_pkgdatadir)
+ ])
+fi
+AM_CONDITIONAL([HAVE_WAYLAND_SCANNER], [test x$wayland_scanner != x])
+
+# Wayland IVI-Shell
+AC_ARG_ENABLE([wayland-ivi-shell],
+ [AS_HELP_STRING([--enable-wayland-ivi-shell],[enable ivi-shell support. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_wayland_ivi_shell="yes"
+ else
+ want_wayland_ivi_shell="no"
+ fi
+ ],
+ [want_wayland_ivi_shell="no"])
+
+# Fb
+AC_ARG_ENABLE([fb],
+ [AS_HELP_STRING([--enable-fb],[enable raw Framebuffer access. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_fb="yes"
+ else
+ want_fb="no"
+ fi
+ ],
+ [want_fb="no"])
+
+# Eglfs
+AC_ARG_ENABLE([eglfs],
+ [AS_HELP_STRING([--enable-eglfs],[enable hardware accelerated framebuffer access. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_eglfs="yes"
+ want_fb="yes"
+ else
+ want_eglfs="no"
+ fi
+ ],
+ [want_eglfs="no"])
+
+# SDL
+AC_ARG_ENABLE([sdl],
+ [AS_HELP_STRING([--enable-sdl],[enable SDL support. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_sdl="yes"
+ else
+ want_sdl="no"
+ fi
+ ],
+ [want_sdl="no"])
+
+if test "${want_sdl}" = "yes"; then
+ EFL_PKG_CHECK_STRICT([sdl2 >= 2.0.0])
+fi
+
+# We only enable SDL with opengl if it is the full version and not ES
+# This can be changed if we ported our SDL code over to SDL 2.0. For older
+# versions the SDL_opengles.h has never been released.
+want_gl_sdl="no"
+if test "${want_sdl}" = "yes" && test "${with_opengl}" = "es"; then
+ AC_MSG_ERROR([We currently do not support SDL with OpenGL ES. Please consider full OpenGL if you want to use it with SDL.])
+fi
+if test "${want_sdl}" = "yes" && test "${with_opengl}" = "full"; then
+ want_gl_sdl="yes"
+fi
+
+# Cocoa
+AC_ARG_ENABLE([cocoa],
+ [AS_HELP_STRING([--enable-cocoa],[enable Cocoa backend on Mac OS X. @<:@default=enabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_cocoa="yes"
+ else
+ want_cocoa="no"
+ fi
+ ],
+ [want_cocoa="yes"])
+
+if test "${want_cocoa}" = "yes"; then
+ #test cocoa requirements (objc and Cocoa/Cocoa.h)
+ cocoa_ldflags=""
+ have_cocoa="no"
+ m4_ifdef([AC_PROG_OBJC],
+ [
+ AC_LANG_PUSH([Objective C])
+ LIBS_save="$LIBS"
+ LIBS="$LIBS -framework Cocoa"
+ AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[
+#include <Cocoa/Cocoa.h>
+ ]],
+ [[
+NSWindow *window;
+window = [[NSWindow alloc]
+ initWithContentRect:NSMakeRect(0, 0, 1, 1)
+ styleMask:(NSTitledWindowMask)
+ backing:NSBackingStoreBuffered
+ defer:NO
+ screen:nil
+ ];
+ ]])],
+ [
+ have_cocoa="yes"
+ cocoa_ldflags="-framework Cocoa"
+ ],
+ [have_cocoa="no"])
+ LIBS="$LIBS_save"
+ AC_MSG_CHECKING([whether Cocoa framework is supported])
+ AC_MSG_RESULT([${have_cocoa}])
+ AC_LANG_POP([Objective C])
+ ])
+fi
+AC_SUBST(cocoa_ldflags)
+
+if test "x${have_cocoa}" = "xyes"; then
+ #test cocoa requirements (objc and Cocoa/Cocoa.h)
+ cocoa_coreservices_ldflags=""
+ have_cocoa_coreservices="no"
+ m4_ifdef([AC_PROG_OBJC],
+ [
+ AC_LANG_PUSH([Objective C])
+ LIBS_save="$LIBS"
+ LIBS="$LIBS -framework CoreServices"
+ AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[
+#include <CoreServices/CoreServices.h>
+ ]],
+ [[
+//test function here
+ ]])],
+ [
+ have_cocoa_coreservices="yes"
+ cocoa_coreservices_ldflags="-framework CoreServices"
+ ],
+ [have_cocoa_coreservices="no"])
+ LIBS="$LIBS_save"
+ AC_MSG_CHECKING([whether Cocoa CoreServices framework is supported])
+ AC_MSG_RESULT([${have_cocoa_coreservices}])
+ AC_LANG_POP([Objective C])
+ ])
+fi
+AC_SUBST(cocoa_coreservices_ldflags)
+
+AC_ARG_ENABLE([elput],
+ [AS_HELP_STRING([--enable-elput],[enable elput library. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_elput="yes"
+ else
+ want_elput="no"
+ fi
+ ],
+ [
+ if test "x${want_wayland}" = "xyes" ; then
+ want_elput="yes"
+ else
+ want_elput="no"
+ fi
+ ])
+
+# Drm
+AC_ARG_ENABLE([drm],
+ [AS_HELP_STRING([--enable-drm],[enable drm engine. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ if test "x${want_elput}" != "xyes" ; then
+ AC_MSG_ERROR([elput is required to build drm support])
+ fi
+ want_drm="yes"
+ else
+ want_drm="no"
+ fi
+ ],
+ [want_drm="no"])
+
+AC_ARG_ENABLE([gl-drm],
+ [AC_HELP_STRING([--enable-gl-drm],
+ [enable gl drm engine. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ if test "x${want_elput}" != "xyes" ; then
+ AC_MSG_ERROR([elput is required to build gl-drm support])
+ fi
+ want_gl_drm="yes"
+ else
+ want_gl_drm="no"
+ fi
+ ],
+ [want_gl_drm="no"])
+
+# Fontconfig
+AC_ARG_ENABLE([fontconfig],
+ [AS_HELP_STRING([--disable-fontconfig],[disable fontconfig for finding fonts. @<:@default=enabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_fontconfig="yes"
+ else
+ want_fontconfig="no"
+ CFOPT_WARNING="xyes"
+ fi
+ ],
+ [want_fontconfig="yes"])
+
+# Fribidi
+AC_ARG_ENABLE([fribidi],
+ [AS_HELP_STRING([--disable-fribidi],[disable bidirectional text support. @<:@default=enabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_fribidi="yes"
+ else
+ want_fribidi="no"
+ CFOPT_WARNING="xyes"
+ fi
+ ],
+ [want_fribidi="yes"])
+
+# Harfbuzz
+AC_ARG_ENABLE([harfbuzz],
+ [AS_HELP_STRING([--enable-harfbuzz],[enable complex text shaping and layouting support. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_harfbuzz="yes"
+ else
+ want_harfbuzz="no"
+ fi
+ ],
+ [want_harfbuzz="no"])
+
+# Hyphenation
+AC_ARG_ENABLE([hyphen],
+ [AS_HELP_STRING([--enable-hyphen],[enable text hyphenation support. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_hyphen="yes"
+ else
+ want_hyphen="no"
+ fi
+ ],
+ [want_hyphen="no"])
+
+# Egl
+AC_ARG_ENABLE([egl],
+ [AS_HELP_STRING([--enable-egl],[enable EGL rendering. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_egl="yes"
+ else
+ want_egl="no"
+ fi
+ ],
+ [want_egl="no"])
+
+# Verify OpenGL + EGL modes match (full+glx or es+egl)
+if test "x${want_egl}" = "xyes" && test "x${with_opengl}" != "xes" ; then
+ AC_MSG_ERROR([Full OpenGL with EGL is not supported, please add --with-opengl=es to your configure options to switch to EGL + OpenGL ES.])
+fi
+if test "x${want_egl}" = "xno" && test "x${with_opengl}" = "xes" ; then
+ AC_MSG_ERROR([OpenGL ES requires EGL, please add --enable-egl to your configure options to switch to EGL + OpenGL ES.])
+fi
+
+# Pixman
+AC_ARG_ENABLE([pixman],
+ [AS_HELP_STRING([--enable-pixman],[enable pixman for software rendering. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_pixman="yes"
+ CFOPT_WARNING="xyes"
+ else
+ want_pixman="no"
+ fi
+ ],
+ [want_pixman="no"])
+
+AC_ARG_ENABLE([pixman-font],
+ [AS_HELP_STRING([--enable-pixman-font],[Allow pixman to render fonts. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ have_pixman_font="yes"
+ else
+ have_pixman_font="no"
+ fi
+ ],
+ [have_pixman_font="no"])
+
+AC_ARG_ENABLE([pixman-rect],
+ [AS_HELP_STRING([--enable-pixman-rect],[Allow pixman to render rects. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ have_pixman_rect="yes"
+ else
+ have_pixman_rect="no"
+ fi
+ ],
+ [have_pixman_rect="no"])
+
+AC_ARG_ENABLE([pixman-line],
+ [AS_HELP_STRING([--enable-pixman-line],[Allow pixman to render lines. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ have_pixman_line="yes"
+ else
+ have_pixman_line="no"
+ fi
+ ],
+ [have_pixman_line="no"])
+
+AC_ARG_ENABLE(pixman-poly,
+ AS_HELP_STRING([--enable-pixman-poly],[Allow pixman to render polys. @<:@default=disabled@:>@]),
+ [
+ if test "x${enableval}" = "xyes" ; then
+ have_pixman_poly="yes"
+ else
+ have_pixman_poly="no"
+ fi
+ ],
+ [have_pixman_poly="no"])
+
+AC_ARG_ENABLE([pixman-image],
+ [AS_HELP_STRING([--enable-pixman-image],[Allow pixman to render images. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ have_pixman_image="yes"
+ else
+ have_pixman_image="no"
+ fi
+ ],
+ [have_pixman_image="no"])
+
+AC_ARG_ENABLE([pixman-image-scale-sample],
+ [AS_HELP_STRING([--enable-pixman-image-scale-sample],[Allow pixman to render sampled scaled images. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ have_pixman_image_scale_sample="yes"
+ else
+ have_pixman_image_scale_sample="no"
+ fi
+ ],
+ [have_pixman_image_scale_sample="no"])
+
+# Ecore Buffer
+AC_ARG_ENABLE([ecore-buffer],
+ [AS_HELP_STRING([--enable-ecore-buffer],[enable ecore-buffer. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_ecore_buffer="yes"
+ else
+ want_ecore_buffer="no"
+ fi
+ ],
+ [want_ecore_buffer="no"])
+
+# Image Loaders
+case "$host_os" in
+ cegcc*|mingw32ce*)
+ AC_MSG_ERROR([ceGCC compiler is not supported anymore. Exiting...])
+ ;;
+ mingw*)
+ want_generic="no"
+ want_poppler="no"
+ want_spectre="no"
+ want_libraw="no"
+ want_rsvg="no"
+ want_xcf="no"
+ ;;
+ cygwin*)
+ want_generic="no"
+ want_poppler="no"
+ want_spectre="no"
+ want_libraw="no"
+ want_rsvg="no"
+ want_xcf="no"
+ ;;
+ *)
+ want_generic="static"
+ want_poppler="yes"
+ want_spectre="yes"
+ want_libraw="yes"
+ want_rsvg="yes"
+ want_xcf="yes"
+ ;;
+esac
+
+ARG_ENABLE_EVAS_VG_LOADER(SVG, static)
+ARG_ENABLE_EVAS_VG_LOADER(EET, static)
+
+
+ARG_ENABLE_EVAS_IMAGE_LOADER(BMP, static)
+ARG_ENABLE_EVAS_IMAGE_LOADER(Eet, static)
+ARG_ENABLE_EVAS_IMAGE_LOADER(Generic, [${want_generic}])
+ARG_ENABLE_EVAS_IMAGE_LOADER(Gif, yes)
+ARG_ENABLE_EVAS_IMAGE_LOADER(ICO, static)
+ARG_ENABLE_EVAS_IMAGE_LOADER(JPEG, static)
+ARG_ENABLE_EVAS_IMAGE_LOADER(JP2K, auto)
+ARG_ENABLE_EVAS_IMAGE_LOADER(PMAPS, static)
+ARG_ENABLE_EVAS_IMAGE_LOADER(PNG, static)
+ARG_ENABLE_EVAS_IMAGE_LOADER(PSD, static)
+ARG_ENABLE_EVAS_IMAGE_LOADER(Tga, static)
+ARG_ENABLE_EVAS_IMAGE_LOADER(Tiff, yes)
+ARG_ENABLE_EVAS_IMAGE_LOADER(WBMP, static)
+ARG_ENABLE_EVAS_IMAGE_LOADER(WEBP, no)
+ARG_ENABLE_EVAS_IMAGE_LOADER(XPM, static)
+ARG_ENABLE_EVAS_IMAGE_LOADER(TGV, static)
+ARG_ENABLE_EVAS_IMAGE_LOADER(DDS, static)
+
+### Default values
+
+want_evas_engine_software_gdi="${have_win32}"
+want_evas_engine_software_ddraw="${have_win32}"
+want_evas_engine_gl_cocoa="${have_cocoa}"
+want_evas_engine_wayland_egl="no"
+if test "${want_wayland}" = "yes" && test "${want_egl}" = "yes" && test "${with_opengl}" = "es"; then
+ want_evas_engine_wayland_egl="yes"
+fi
+
+if test "${want_lua_old}" = "yes"; then
+ EFL_CHECK_LUA_OLD([EVAS])
+else
+ EFL_DEPEND_PKG([EVAS], [LUAJIT], [luajit >= 2.0.0])
+fi
+
+EFL_ADD_FEATURE([EVAS], [lua-old])
+
+EFL_CHECK_FUNC([EVAS], [dlsym])
+
+if test "x${efl_func_dlsym}" = "xno" && test "${with_opengl}" != "none"; then
+ AC_MSG_ERROR([OpenGL cannot work without dlsym()])
+fi
+
+### Checks for programs
+
+### Checks for libraries
+
+## Compatibility layers
+EFL_PLATFORM_DEPEND([EVAS], [all])
+EFL_INTERNAL_DEPEND_PKG([EVAS], [eo])
+EFL_INTERNAL_DEPEND_PKG([EVAS], [eet])
+EFL_INTERNAL_DEPEND_PKG([EVAS], [eina])
+EFL_INTERNAL_DEPEND_PKG([EVAS], [efl])
+EFL_INTERNAL_DEPEND_PKG([EVAS], [emile])
+EFL_INTERNAL_DEPEND_PKG([EVAS], [ector])
+EFL_INTERNAL_DEPEND_PKG([EVAS], [ecore])
+
+EFL_ADD_LIBS([EVAS], [-lm])
+
+# Freetype (the version 16.2.10 equals the freetype 2.5.0.1 release)
+EFL_DEPEND_PKG([EVAS], [FREETYPE], [freetype2 >= 16.2.10])
+
+## optional dependencies
+
+# FontConfig
+EFL_OPTIONAL_DEPEND_PKG([EVAS], [${want_fontconfig}],
+ [FONTCONFIG], [fontconfig >= 2.5.0])
+
+# fribidi support
+EFL_OPTIONAL_DEPEND_PKG([EVAS], [${want_fribidi}],
+ [FRIBIDI], [fribidi >= 0.19.2])
+
+# harfbuzz support
+have_harfbuzz_ft="no"
+EFL_OPTIONAL_DEPEND_PKG([EVAS], [${want_harfbuzz}],
+ [HARFBUZZ], [harfbuzz >= 0.9.0])
+
+# Pixman
+EFL_OPTIONAL_DEPEND_PKG([EVAS], [${want_pixman}], [PIXMAN], [pixman-1])
+
+if test "x${have_pixman}" = "xyes" ; then
+ if test "x${have_pixman_font}" = "xyes" ; then
+ AC_DEFINE(PIXMAN_FONT, 1, [Allow pixman to render fonts])
+ fi
+ EFL_ADD_FEATURE([EVAS_PIXMAN], [font], [${have_pixman_font}])
+
+ if test "x${have_pixman_rect}" = "xyes" ; then
+ AC_DEFINE(PIXMAN_RECT, 1, [Allow pixman to render rects])
+ fi
+ EFL_ADD_FEATURE([EVAS_PIXMAN], [rect], [${have_pixman_rect}])
+
+ if test "x${have_pixman_line}" = "xyes" ; then
+ AC_DEFINE(PIXMAN_LINE, 1, [Allow pixman to render lines])
+ fi
+ EFL_ADD_FEATURE([EVAS_PIXMAN], [line], [${have_pixman_line}])
+
+ if test "x${have_pixman_poly}" = "xyes" ; then
+ AC_DEFINE(PIXMAN_POLY, 1, [Allow pixman to render polys])
+ fi
+ EFL_ADD_FEATURE([EVAS_PIXMAN], [poly], [${have_pixman_poly}])
+
+ if test "x${have_pixman_image}" = "xyes" ; then
+ AC_DEFINE(PIXMAN_IMAGE, 1, [Allow pixman to render images])
+ fi
+ EFL_ADD_FEATURE([EVAS_PIXMAN], [image], [${have_pixman_image}])
+
+ if test "x${have_pixman_image_scale_sample}" = "xyes" ; then
+ AC_DEFINE(PIXMAN_IMAGE_SCALE_SAMPLE, 1, [Allow pixman to render image sampled scaling])
+ fi
+ EFL_ADD_FEATURE([EVAS_PIXMAN], [scale_sample], [${have_pixman_scale_sample}])
+fi
+
+## Engines
+
+define([EVAS_ENGINE_DEP_CHECK_FB], [
+AC_CHECK_HEADER([linux/fb.h], [:], [AC_MSG_ERROR([Missing linux/fb.h])])
+])
+
+EVAS_ENGINE([buffer], [static])
+EVAS_ENGINE([fb], [${want_fb}], [EVAS_ENGINE_DEP_CHECK_FB])
+
+# XXX TODO:
+EVAS_CHECK_ENGINE([gl-cocoa], [${want_evas_engine_gl_cocoa}], [no], [OpenGL Cocoa])
+EVAS_CHECK_ENGINE([gl-sdl], [${want_gl_sdl}], [no], [OpenGL SDL])
+EVAS_CHECK_ENGINE([software-gdi], [${want_evas_engine_software_gdi}], [no], [Software GDI])
+EVAS_CHECK_ENGINE([software-ddraw], [${want_evas_engine_software_ddraw}], [no], [Software DirectDraw])
+EVAS_CHECK_ENGINE([wayland-egl], [${want_evas_engine_wayland_egl}], [no], [Wayland Egl])
+EVAS_CHECK_ENGINE([wayland-shm], [${want_wayland}], [no], [Wayland Shm])
+EVAS_CHECK_ENGINE([drm], [${want_drm}], [no], [Drm])
+EVAS_CHECK_ENGINE([gl-drm], [${want_gl_drm}], [no], [OpenGL Drm])
+EVAS_CHECK_ENGINE([eglfs], [${want_eglfs}], [no], [OpenGL Fb])
+
+
+# Software Xlib
+
+have_evas_engine_software_xlib="no"
+EVAS_CHECK_ENGINE([software-xlib], [${want_x11_xlib}], [no], [Software Xlib])
+AC_MSG_CHECKING([whether to build Software Xlib Engine])
+AC_MSG_RESULT([${have_evas_engine_software_xlib}])
+
+# If software_x11 is available, define everything needed for X11
+
+have_evas_engine_software_x11="no"
+if test "x${have_evas_engine_software_xlib}" = "xyes" || test "x${have_evas_engine_software_xlib}" = "xstatic"; then
+ have_evas_engine_software_x11="yes"
+ AC_DEFINE_UNQUOTED([BUILD_ENGINE_SOFTWARE_X11], [1], [Build software X11 engine])
+fi
+AM_CONDITIONAL([BUILD_ENGINE_SOFTWARE_X11], [test "x${have_evas_engine_software_x11}" = "xyes"])
+
+if test "x${have_evas_engine_software_xlib}" = "xstatic"; then
+ AC_DEFINE_UNQUOTED([EVAS_STATIC_BUILD_SOFTWARE_X11], [1], [Build software X11 engine as part of libevas])
+fi
+AM_CONDITIONAL([EVAS_STATIC_BUILD_SOFTWARE_X11], [test "x${have_evas_engine_software_xlib}" = "xstatic"])
+
+# Needed for evas-software-x11.pc
+
+AC_SUBST([have_evas_engine_software_xlib])
+
+# Software generic
+AC_DEFINE([EVAS_STATIC_BUILD_SOFTWARE_GENERIC], [1], [Build software generic engine as part of libevas])
+AM_CONDITIONAL([EVAS_STATIC_BUILD_SOFTWARE_GENERIC], [true])
+
+# OpenGL
+
+if test "${with_opengl}" = "es" ; then
+ AC_DEFINE(GL_GLES, 1, [GLSL runtime shader GLES2 support])
+fi
+
+# OpenGL Xlib
+
+have_evas_engine_gl_xlib="no"
+EVAS_CHECK_ENGINE([gl-xlib], [${want_x11_xlib_opengl}], [no], [OpenGL XLib])
+
+AC_MSG_CHECKING([whether to build OpenGL Xlib Engine])
+AC_MSG_RESULT([${have_evas_engine_gl_xlib}])
+
+# If opengl_x11 is available, define everything needed for X11
+
+have_evas_engine_gl_x11="no"
+if test "x${have_evas_engine_gl_xlib}" = "xyes" || test "x${have_evas_engine_gl_xlib}" = "xstatic"; then
+ have_evas_engine_gl_x11="yes"
+ AC_DEFINE_UNQUOTED([BUILD_ENGINE_GL_X11], [1], [Build OpenGL X11 engine])
+fi
+AM_CONDITIONAL([BUILD_ENGINE_GL_X11], [test "x${have_evas_engine_gl_x11}" = "xyes"])
+
+if test "x${have_evas_engine_gl_xlib}" = "xstatic"; then
+ AC_DEFINE_UNQUOTED([EVAS_STATIC_BUILD_GL_X11], [1], [Build OpenGL X11 engine as part of libevas])
+fi
+AM_CONDITIONAL([EVAS_STATIC_BUILD_GL_X11], [test "x${have_evas_engine_gl_xlib}" = "xstatic"])
+
+# Needed for evas-opengl-x11.pc
+
+AC_SUBST([have_evas_engine_gl_xlib])
+
+# OpenGL SDL
+
+if test "x$have_evas_engine_gl_sdl" = "xyes" || test "x$have_evas_engine_gl_sdl" = "xstatic" ; then
+ AC_CHECK_DECL([SDL_GL_CONTEXT_MAJOR_VERSION],
+ [AC_DEFINE([HAVE_SDL_GL_CONTEXT_VERSION], [1], [SDL_GL version attributes present])],,
+ [#include <SDL2/SDL_video.h>])
+fi
+
+if test "${with_opengl}" = "es"; then
+ AC_CHECK_DECL([SDL_OPENGLES],
+ [AC_DEFINE([HAVE_SDL_FLAG_OPENGLES], [1], [SDL_OPENGLES flag is present])],,
+ [#include <SDL2/SDL_video.h>])
+fi
+
+# OpenGL common
+evas_engine_gl_common_cflags=""
+if test "x${have_egl}" = "xyes"; then
+ evas_engine_gl_common_libs="-lEGL -lGLESv2 -lm"
+else
+ evas_engine_gl_common_libs="-lGL -lm"
+fi
+
+# The lines below fix compiling/linking of gl_generic on OSX
+if test "x${have_darwin}" = "xyes"; then
+ if test "x${have_evas_engine_gl_cocoa}" = "xyes"; then
+ # If gl_cocoa is enabled, Apple's Core OpenGL (CGL) should be the default OpenGL.
+ # CFLAGS and LIBS are determined by evas-gl_cocoa.
+ evas_engine_gl_common_libs="${evas_engine_gl_cocoa_libs}"
+ evas_engine_gl_common_cflags="${evas_engine_gl_cocoa_cflags}"
+ else
+ # If evas-gl_cocoa is disabled, the only supported OpenGL engine on OSX (for now)
+ # is evas-gl_x11. Without its CFLAGS and LIBS explicitely set, gl_generic
+ # cannot compile (nor link).
+ evas_engine_gl_common_libs=""
+ evas_engine_gl_common_cflags=""
+
+ if test "x${have_evas_engine_gl_xlib}" = "xyes"; then
+ evas_engine_gl_common_libs="${evas_engine_gl_xlib_libs}"
+ evas_engine_gl_common_cflags="${evas_engine_gl_xlib_cflags}"
+ fi
+ ### XXX Check for other supported engines supported on OSX (dec. 2014: NONE)
+ fi
+fi
+
+AC_SUBST([evas_engine_gl_common_cflags])
+AC_SUBST([evas_engine_gl_common_libs])
+
+have_evas_engine_gl_common="no"
+have_static_evas_engine_gl_common="no"
+if test "x$have_evas_engine_gl_xlib" = "xyes" || \
+ test "x$have_evas_engine_gl_sdl" = "xyes" || \
+ test "x$have_evas_engine_gl_cocoa" = "xyes" || \
+ test "x$have_evas_engine_gl_drm" = "xyes" || \
+ test "x$have_evas_engine_eglfs" = "xyes" || \
+ test "x$have_evas_engine_wayland_egl" = "xyes"; then
+ have_evas_engine_gl_common="yes"
+fi
+if test "x$have_evas_engine_gl_xlib" = "xstatic" || \
+ test "x$have_evas_engine_gl_sdl" = "xstatic" || \
+ test "x$have_evas_engine_gl_cocoa" = "xstatic" || \
+ test "x$have_evas_engine_gl_drm" = "xstatic" || \
+ test "x$have_evas_engine_eglfs" = "xstatic" || \
+ test "x$have_evas_engine_wayland_egl" = "xstatic"; then
+ have_evas_engine_gl_common="yes"
+ have_static_evas_engine_gl_common="yes"
+fi
+
+if test "x${have_evas_engine_gl_common}" = "xyes"; then
+ AC_DEFINE([BUILD_ENGINE_GL_COMMON], [1], [Generic OpenGL Rendering Support])
+fi
+
+AM_CONDITIONAL([BUILD_ENGINE_GL_COMMON], [test "x$have_evas_engine_gl_common" = "xyes"])
+
+if test "x${have_static_evas_engine_gl_common}" = "xyes"; then
+ AC_DEFINE([EVAS_STATIC_BUILD_GL_COMMON], [1], [Build GL generic engine as part of libevas])
+fi
+
+AM_CONDITIONAL([EVAS_STATIC_BUILD_GL_COMMON], [test "x${have_static_evas_engine_gl_common}" = "xyes"])
+
+have_evas_engine_wayland_common="no"
+if test "x$have_evas_engine_wayland_egl" = "xstatic" || \
+ test "x$have_evas_engine_wayland_shm" = "xstatic" || \
+ test "x$have_evas_engine_wayland_egl" = "xyes" || \
+ test "x$have_evas_engine_wayland_shm" = "xyes"; then
+ have_evas_engine_wayland_common="yes"
+fi
+
+if test "x$have_evas_engine_wayland_common" = "xyes"; then
+ AC_DEFINE([BUILD_ENGINE_WAYLAND_COMMON], [1], [Building any wayland evas engine])
+fi
+AM_CONDITIONAL([BUILD_ENGINE_WAYLAND_COMMON], [test "x${have_evas_engine_wayland_common}" = "xyes"])
+
+## Vg Loaders
+
+EVAS_CHECK_VG_LOADER([SVG], [${want_evas_vg_loader_svg}])
+EVAS_CHECK_VG_LOADER([EET], [${want_evas_vg_loader_eet}])
+
+## Image Loaders
+
+EVAS_CHECK_IMAGE_LOADER([BMP], [${want_evas_image_loader_bmp}])
+EVAS_CHECK_IMAGE_LOADER([Eet], [${want_evas_image_loader_eet}])
+EVAS_CHECK_IMAGE_LOADER([Generic], [${want_evas_image_loader_generic}])
+EVAS_CHECK_IMAGE_LOADER([Gif], [${want_evas_image_loader_gif}])
+EVAS_CHECK_IMAGE_LOADER([ICO], [${want_evas_image_loader_ico}])
+EVAS_CHECK_IMAGE_LOADER([JPEG], [${want_evas_image_loader_jpeg}])
+EVAS_CHECK_IMAGE_LOADER([JP2K], [${want_evas_image_loader_jp2k}])
+EVAS_CHECK_IMAGE_LOADER([PMAPS], [${want_evas_image_loader_pmaps}])
+EVAS_CHECK_IMAGE_LOADER([PNG], [${want_evas_image_loader_png}])
+EVAS_CHECK_IMAGE_LOADER([PSD], [${want_evas_image_loader_psd}])
+EVAS_CHECK_IMAGE_LOADER([Tga], [${want_evas_image_loader_tga}])
+EVAS_CHECK_IMAGE_LOADER([Tiff], [${want_evas_image_loader_tiff}])
+EVAS_CHECK_IMAGE_LOADER([WBMP], [${want_evas_image_loader_wbmp}])
+EVAS_CHECK_IMAGE_LOADER([WEBP], [${want_evas_image_loader_webp}])
+EVAS_CHECK_IMAGE_LOADER([XPM], [${want_evas_image_loader_xpm}])
+EVAS_CHECK_IMAGE_LOADER([TGV], [${want_evas_image_loader_tgv}])
+EVAS_CHECK_IMAGE_LOADER([DDS], [${want_evas_image_loader_dds}])
+
+EFL_EVAL_PKGS([EVAS])
+
+### Checks for header files
+
+if test "x$want_hyphen" = "xyes" ; then
+
+ EFL_CHECK_LIB_CODE([EVAS], [-lhyphen], [have_fct], [[
+ #include <string.h>
+ #include <stdlib.h>
+ #include <ctype.h>
+ #include <stdio.h>
+ #include <hyphen.h>
+ ]], [[
+ HyphenDict *dict;
+ ]])
+
+ if test "${have_fct}" = "no"; then
+ AC_MSG_ERROR([Cannot find the hyphen library.])
+ else
+ AC_DEFINE([HAVE_HYPHEN], [1], [have hunspell hyphen support])
+ fi
+fi
+
+if test "x$have_harfbuzz" = "xyes" ; then
+
+ CPPFLAGS_SAVE="$CPPFLAGS"
+ CPPFLAGS="$CPPFLAGS $EVAS_CFLAGS"
+# must have for usage with harfbuzz although harfbuzz may not have it.
+
+ AC_CHECK_HEADER([hb-ft.h],
+ [
+ have_harfbuzz_ft="yes"
+ #Depend on harfbuzz ft for harfbuzz support
+ AC_DEFINE([HAVE_HARFBUZZ], [1], [have harfbuzz support])
+ ],
+ [AC_MSG_ERROR([Harfbuzz-ft (hb-ft.h) not found])])
+
+ CPPFLAGS="$CPPFLAGS_SAVE"
+fi
+
+### Checks for types
+
+CPPFLAGS_SAVE="$CPPFLAGS"
+CPPFLAGS="$CPPFLAGS $EVAS_CFLAGS -Isrc/lib/eina"
+AC_CHECK_SIZEOF([Eina_Unicode], [], [#include <Eina.h>])
+CPPFLAGS="$CPPFLAGS_SAVE"
+
+
+if test "x$have_fribidi" = "xyes" ; then
+ CPPFLAGS_SAVE="$CPPFLAGS"
+ CPPFLAGS="$CPPFLAGS $EVAS_CFLAGS"
+ AC_CHECK_SIZEOF([FriBidiChar], [], [#include <fribidi.h>])
+ CPPFLAGS="$CPPFLAGS_SAVE"
+fi
+
+### Checks for structures
+
+AC_CHECK_TYPES([struct sigaction], [], [],
+ [[#include <signal.h>]])
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+AC_CHECK_FUNCS([siglongjmp])
+
+AC_CHECK_LIB([m], [lround],
+[AC_DEFINE([HAVE_LROUND], [1], [C99 lround function exists])],
+[EFL_CHECK_GCC_BUILTIN([lround], [HAVE_LROUND])]
+)
+
+
+### Configuration
+
+## dither options
+
+AC_ARG_WITH([evas-dither-mask],
+ [AS_HELP_STRING([--with-evas-dither-mask=TYPE],[use the specified dither mask to convert bitdepths in Evas, one of: big, small, line or none.
+ @<:@default=big@:>@])],
+ [build_evas_dither_mask=${withval}],
+ [build_evas_dither_mask=big])
+
+case "${build_evas_dither_mask}" in
+ big)
+ AC_DEFINE([BUILD_BIG_DITHER_MASK], [1], [Use biggest dither mask while converting in Evas])
+ ;;
+ small)
+ AC_DEFINE([BUILD_SMALL_DITHER_MASK], [1], [Use smaller dither mask while converting in Evas])
+ ;;
+ line)
+ AC_DEFINE([BUILD_LINE_DITHER_MASK], [1], [Use simpler line-only dither mask while converting in Evas])
+ ;;
+ none)
+ AC_DEFINE([BUILD_NO_DITHER_MASK], [1], [Do not use dither masks while converting in Evas])
+ ;;
+ *)
+ AC_MSG_ERROR([Unknown Evas dither mask --with-evas-dither-mask=${build_evas_dither_mask}])
+ ;;
+esac
+EFL_ADD_FEATURE([EVAS], [fontconfig])
+EFL_ADD_FEATURE([EVAS], [fribidi])
+EFL_ADD_FEATURE([EVAS], [harfbuzz])
+EFL_ADD_FEATURE([EVAS], [tile-rotate])
+EFL_ADD_FEATURE([EVAS], [dither-mask], [${build_evas_dither_mask}])
+EFL_ADD_FEATURE([EVAS], [hyphen])
+
+#### Generic backend
+
+### Options to turn off generic loaders for evas
+AC_ARG_ENABLE([poppler],
+ [AS_HELP_STRING([--disable-poppler],[disable pdf support. @<:@default=enabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_poppler="yes"
+ else
+ want_poppler="no"
+ fi
+ ])
+
+AC_ARG_ENABLE([spectre],
+ [AS_HELP_STRING([--disable-spectre],[disable postscript support. @<:@default=enabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_spectre="yes"
+ else
+ want_spectre="no"
+ fi
+ ])
+
+AC_ARG_ENABLE([libraw],
+ [AS_HELP_STRING([--disable-libraw],[disable libraw support. @<:@default=enabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_libraw="yes"
+ else
+ want_libraw="no"
+ fi
+ ])
+
+AC_ARG_ENABLE([librsvg],
+ [AS_HELP_STRING([--disable-librsvg],[disable svg support. @<:@default=enabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_rsvg="yes"
+ else
+ want_rsvg="no"
+ fi
+ ])
+
+AC_ARG_ENABLE([xcf],
+ [AS_HELP_STRING([--disable-xcf],[disable xcf support. @<:@default=enabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_xcf="yes"
+ else
+ want_xcf="no"
+ fi
+ ])
+
+have_poppler="no"
+have_spectre="no"
+have_raw="no"
+have_rsvg="no"
+
+### Check needed dependency for each generic loader
+if test "x${want_poppler}" = "xyes"; then
+ PKG_CHECK_MODULES([POPPLER], [poppler-cpp >= 0.12], [have_poppler="yes"])
+fi
+
+if test "x${have_poppler}" = "xyes" ; then
+ # We should be using ${CXX} here, but there is a bug in
+ # autotools macro and CXX is always set to g++ even if
+ # it's not found. So we are using an internal variable
+ # that does the work for now, may get broken in the future.
+ if test "x${ac_ct_CXX}" = "x" -a "x${CXX}" = "xg++"; then
+ AC_MSG_ERROR([efl requires a C++ compiler got ${ac_ct_CXX} and ${CXX}.])
+ fi
+fi
+
+if test "x${want_spectre}" = "xyes"; then
+ PKG_CHECK_MODULES([SPECTRE], [libspectre], [have_spectre="yes"])
+fi
+
+if test "x${want_libraw}" = "xyes"; then
+ PKG_CHECK_MODULES([LIBRAW], [libraw], [have_raw="yes"])
+fi
+
+if test "x${want_rsvg}" = "xyes"; then
+ PKG_CHECK_MODULES([RSVG], [librsvg-2.0 >= 2.14.0 cairo >= 1.0.0], [have_rsvg="yes"])
+ PKG_CHECK_MODULES(
+ [SVG_2_36], [librsvg-2.0 >= 2.36.0 cairo >= 1.0.0],
+ [
+ have_rsvg_2_36="yes"
+ AC_DEFINE(HAVE_SVG_2_36, 1, [Have librsvg >= 2.36])
+ ],
+ [have_rsvg_2_36="no"])
+fi
+
+AM_CONDITIONAL([HAVE_POPPLER], [test "x${have_poppler}" = "xyes"])
+AM_CONDITIONAL([HAVE_SPECTRE], [test "x${have_spectre}" = "xyes"])
+AM_CONDITIONAL([HAVE_LIBRAW], [test "x${have_raw}" = "xyes"])
+AM_CONDITIONAL([HAVE_RSVG], [test "x${have_rsvg}" = "xyes"])
+AM_CONDITIONAL([HAVE_XCF], [test "x${want_xcf}" = "xyes"])
+
+EFL_ADD_FEATURE([EVAS_LOADER], [poppler], [${have_poppler}])
+EFL_ADD_FEATURE([EVAS_LOADER], [spectre], [${have_spectre}])
+EFL_ADD_FEATURE([EVAS_LOADER], [raw], [${have_raw}])
+EFL_ADD_FEATURE([EVAS_LOADER], [rsvg], [${have_rsvg}])
+EFL_ADD_FEATURE([EVAS_LOADER], [xcf], [${want_xcf}])
+
+EFL_LIB_END([Evas])
+#### End of Evas
+
+#### Edje CXX
+EFL_LIB_START([Evas_Cxx])
+
+EFL_EVAL_PKGS([EVAS_CXX])
+
+EFL_LIB_END([Evas_Cxx])
+#### End of Edje CXX
+
+#### Embryo
+
+EFL_LIB_START([Embryo])
+
+### Default values
+
+### Additional options to configure
+
+### Checks for programs
+
+### Checks for libraries
+EFL_PLATFORM_DEPEND([EMBRYO], [all])
+EFL_INTERNAL_DEPEND_PKG([EMBRYO], [eina])
+
+EFL_ADD_LIBS([EMBRYO], [-lm])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+if ! test "x${efl_func_fnmatch}" = "xyes" ; then
+ AC_MSG_ERROR([Cannot find fnmatch()])
+fi
+
+if ! test "x${efl_func_gettimeofday}" = "xyes" ; then
+ AC_MSG_ERROR([Cannot find gettimeofday()])
+fi
+
+### Check availability
+
+EFL_LIB_END([Embryo])
+#### End of Embryo
+
+
+#### Ecore CXX
+EFL_LIB_START([Ecore_Cxx])
+
+EFL_INTERNAL_DEPEND_PKG([ECORE_CXX], [Eina_Cxx])
+EFL_INTERNAL_DEPEND_PKG([ECORE_CXX], [Ecore])
+EFL_INTERNAL_DEPEND_PKG([ECORE_CXX], [Eina])
+EFL_INTERNAL_DEPEND_PKG([ECORE_CXX], [Eo])
+EFL_INTERNAL_DEPEND_PKG([ECORE_CXX], [Efl])
+
+EFL_EVAL_PKGS([ECORE_CXX])
+
+EFL_LIB_END([Ecore_Cxx])
+#### End of Ecore CXX
+
+#### Ecore_Con
+
+EFL_LIB_START([Ecore_Con])
+
+### Default values
+
+want_ecore_con_local_sockets="yes"
+want_ecore_con_abstract_sockets="yes"
+
+if test "${have_win32}" = "yes"; then
+ want_ecore_con_abstract_sockets="no"
+elif test "${have_darwin}" = "yes"; then
+ want_ecore_con_abstract_sockets="yes"
+elif test "${have_ps3}" = "yes"; then
+ want_ecore_con_local_sockets="no"
+ want_ecore_con_abstract_sockets="no"
+fi
+
+AC_DEFINE_IF([HAVE_LOCAL_SOCKETS],
+ [test "x${want_ecore_con_local_sockets}" = "xyes"],
+ [1], [Have local sockets support])
+AC_DEFINE_IF([HAVE_ABSTRACT_SOCKETS],
+ [test "x${want_ecore_con_abstract_sockets}" = "xyes"],
+ [1], [Have abstract sockets namespace])
+
+EFL_NET_CONTROL_BACKEND=none
+if test "${have_linux}" = "yes"; then
+ EFL_NET_CONTROL_BACKEND=connman
+fi
+
+AC_MSG_CHECKING([net-control backend to use])
+AC_ARG_WITH([net-control],
+ [AS_HELP_STRING([--with-net-control=BACKEND],[Specify which network control backend to be used by Efl.Net.Session and Efl.Net.Control. One of: connman or none])],
+ [EFL_NET_CONTROL_BACKEND="${withval}"])
+
+case "${EFL_NET_CONTROL_BACKEND}" in
+ connman|none)
+ ;;
+ *)
+ AC_MSG_ERROR([Unknown net-control backend --with-net-control=${EFL_NET_CONTROL_BACKEND}])
+ ;;
+esac
+AC_MSG_RESULT([${EFL_NET_CONTROL_BACKEND}])
+AC_SUBST(EFL_NET_CONTROL_BACKEND)
+
+### Checks for programs
+
+### Checks for libraries
+EFL_PLATFORM_DEPEND([ECORE_CON], [all])
+if test "$build_crypto" != "none" ; then
+ EFL_CRYPTO_DEPEND([ECORE_CON])
+fi
+EFL_INTERNAL_DEPEND_PKG([ECORE_CON], [eo])
+EFL_INTERNAL_DEPEND_PKG([ECORE_CON], [efl])
+EFL_INTERNAL_DEPEND_PKG([ECORE_CON], [eet])
+EFL_INTERNAL_DEPEND_PKG([ECORE_CON], [eina])
+EFL_INTERNAL_DEPEND_PKG([ECORE_CON], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ECORE_CON], [emile])
+
+if test "${EFL_NET_CONTROL_BACKEND}" = "connman"; then
+ EFL_INTERNAL_DEPEND_PKG([ECORE_CON], [eldbus])
+fi
+AM_CONDITIONAL([EFL_NET_CONTROL_BACKEND_CONNMAN], [test "${EFL_NET_CONTROL_BACKEND}" = "connman"])
+AM_CONDITIONAL([EFL_NET_CONTROL_BACKEND_NONE], [test "${EFL_NET_CONTROL_BACKEND}" = "none"])
+
+EFL_ADD_LIBS([ECORE_CON], [${requirement_nsl} -lm])
+
+EFL_OPTIONAL_DEPEND_PKG([ECORE_CON], [${want_systemd}], [SYSTEMD], [libsystemd])
+
+EFL_ADD_FEATURE([ECORE_CON], [local-sockets], [${want_ecore_con_local_sockets}])
+EFL_ADD_FEATURE([ECORE_CON], [abstract-sockets], [${want_ecore_con_abstract_sockets}])
+EFL_ADD_FEATURE([ECORE_CON], [systemd-daemon], [${want_systemd}])
+EFL_ADD_FEATURE([ECORE_CON], [net-control], [${EFL_NET_CONTROL_BACKEND}])
+
+EFL_EVAL_PKGS([ECORE_CON])
+
+### Checks for header files
+
+AC_CHECK_HEADERS([netdb.h sys/filio.h])
+
+if test "x${ac_cv_header_netdb_h}" = "xno" && test "x${have_windows}" = "xno"; then
+ AC_MSG_ERROR([netdb.h is requested to have Ecore_Con. Exiting...])
+fi
+
+### Checks for types
+
+if test "x${have_win32}" = "xyes" ; then
+ have_ipv6="yes"
+else
+ have_ipv6="no"
+ AC_CHECK_TYPES([struct ipv6_mreq],
+ [have_ipv6="yes"],
+ [have_ipv6="no"],
+ [[
+#ifdef HAVE_NETINET_IN_H
+# include <netinet/in.h>
+#endif
+ ]])
+fi
+
+AC_DEFINE_IF([HAVE_IPV6],
+ [test "x${have_ipv6}" = "xyes"],
+ [1], [Define if IPV6 is supported])
+AM_CONDITIONAL([HAVE_IPV6], [test "x${have_ipv6}" = "xyes"])
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+AC_CHECK_FUNCS([accept4], ,
+ [AC_CHECK_LIB([socket], [accept4],
+ [AC_DEFINE([HAVE_ACCEPT4], [1])])])
+
+EFL_LIB_END([Ecore_Con])
+#### End of Ecore_Con
+
+
+#### Ecore_Ipc
+
+EFL_LIB_START([Ecore_Ipc])
+
+### Default values
+
+### Additional options to configure
+
+### Checks for programs
+
+## Compatibility layers
+EFL_PLATFORM_DEPEND([ECORE_IPC], [evil])
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([ECORE_IPC], [ecore-con])
+EFL_INTERNAL_DEPEND_PKG([ECORE_IPC], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ECORE_IPC], [eo])
+EFL_INTERNAL_DEPEND_PKG([ECORE_IPC], [efl])
+EFL_INTERNAL_DEPEND_PKG([ECORE_IPC], [eina])
+
+EFL_ADD_LIBS([ECORE_IPC], [-lm])
+
+### Checks for header files
+
+AC_CHECK_HEADERS([winsock2.h])
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END([Ecore_Ipc])
+#### End of Ecore_Ipc
+
+
+#### Ecore_File
+
+EFL_LIB_START([Ecore_File])
+
+### Additional options to configure
+
+### Default values
+
+### Checks for programs
+
+## Compatibility layers
+EFL_PLATFORM_DEPEND([ECORE_FILE], [evil])
+
+### Checks for libraries
+EFL_PLATFORM_DEPEND([ECORE_FILE], [escape])
+EFL_INTERNAL_DEPEND_PKG([ECORE_FILE], [ecore-con])
+EFL_INTERNAL_DEPEND_PKG([ECORE_FILE], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ECORE_FILE], [eo])
+EFL_INTERNAL_DEPEND_PKG([ECORE_FILE], [efl])
+EFL_INTERNAL_DEPEND_PKG([ECORE_FILE], [eina])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END([Ecore_File])
+#### End of Ecore_File
+
+
+#### Eeze
+have_libmount_new="no"
+have_libmount_old="no"
+have_eeze_mount="no"
+
+EFL_LIB_START_OPTIONAL([Eeze], [test "x${build_libeeze}" = "xyes"])
+
+### Additional options to configure
+AC_ARG_WITH([mount],
+ [AS_HELP_STRING([--with-mount], [specify mount bin @<:@default=detect@:>@])],
+ [with_eeze_mount=$withval], [with_eeze_mount="detect"])
+AC_ARG_WITH([umount],
+ [AS_HELP_STRING([--with-umount], [specify umount bin @<:@default=detect@:>@])],
+ [with_eeze_umount=$withval], [with_eeze_umount="detect"])
+AC_ARG_WITH([eject],
+ [AS_HELP_STRING([--with-eject], [specify eject bin @<:@default=detect@:>@])],
+ [with_eeze_eject=$withval], [with_eeze_eject="detect"])
+
+### Default values
+
+### Checks for programs
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([EEZE], [eina])
+EFL_INTERNAL_DEPEND_PKG([EEZE], [ecore])
+EFL_INTERNAL_DEPEND_PKG([EEZE], [eo])
+EFL_INTERNAL_DEPEND_PKG([EEZE], [efl])
+EFL_INTERNAL_DEPEND_PKG([EEZE], [ecore-file])
+EFL_INTERNAL_DEPEND_PKG([EEZE], [ecore-con])
+EFL_INTERNAL_DEPEND_PKG([EEZE], [eet])
+EFL_INTERNAL_DEPEND_PKG([EEZE], [emile])
+
+EFL_DEPEND_PKG([EEZE], [UDEV], [libudev >= 148])
+
+AC_ARG_ENABLE([libmount],
+ [AS_HELP_STRING([--disable-libmount],[disable libmount support. @<:@default=enabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_libmount="yes"
+ else
+ want_libmount="no"
+ CFOPT_WARNING="xyes"
+ fi
+ ],
+ [want_libmount="yes"])
+
+EFL_OPTIONAL_DEPEND_PKG([EEZE], [${want_libmount}],
+ [EEZE_MOUNT], [mount >= 2.18.0])
+EFL_ADD_FEATURE([EEZE], [libmount], [${have_eeze_mount}])
+
+PKG_CHECK_EXISTS([libudev < 199],
+ [have_libudev_old="yes"],
+ [have_libudev_old="no"])
+AC_MSG_CHECKING([Use old libudev API (before 199)])
+AC_MSG_RESULT([${have_libudev_old}])
+
+PKG_CHECK_EXISTS([mount < 2.19.0],
+ [have_libmount_old="yes"],
+ [have_libmount_old="no"])
+AC_MSG_CHECKING([Use old libmount API (before 2.19.0)])
+AC_MSG_RESULT([${have_libmount_old}])
+
+PKG_CHECK_EXISTS([mount == 2.19.0],
+ [have_libmount_219="yes"],
+ [have_libmount_219="no"])
+AC_MSG_CHECKING([Use libmount 2.19.0 API])
+AC_MSG_RESULT([${have_libmount_219}])
+
+PKG_CHECK_EXISTS([mount > 2.19.0],
+ [have_libmount_new="yes"],
+ [have_libmount_new="no"])
+AC_MSG_CHECKING([Use new libmount API (newer than 2.19.0)])
+AC_MSG_RESULT([${have_libmount_new}])
+
+if test "x${have_libudev_old}" = "xyes"; then
+ AC_DEFINE_UNQUOTED([OLD_LIBUDEV], [1], [using older version of libudev])
+fi
+
+if test "x${have_libmount_old}" = "xyes"; then
+ AC_DEFINE_UNQUOTED([OLD_LIBMOUNT], [1], [using first version of libmount])
+fi
+
+## modules
+if test "${want_tizen}" = "yes"; then
+ PKG_CHECK_MODULES([TIZEN_SENSOR], [capi-system-sensor >= 0.1.17])
+fi
+EFL_ADD_FEATURE([EEZE], [tizen])
+
+EFL_EVAL_PKGS([EEZE])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+### Checks for binaries
+if test "x$with_eeze_mount" = "xdetect"; then
+ AC_PATH_PROG([with_eeze_mount], [mount], [])
+fi
+AC_DEFINE_UNQUOTED([EEZE_MOUNT_BIN], ["$with_eeze_mount"], [mount bin to use])
+
+if test "x$with_eeze_umount" = "xdetect";then
+ AC_PATH_PROG([with_eeze_umount], [umount], [])
+fi
+AC_DEFINE_UNQUOTED([EEZE_UNMOUNT_BIN], ["$with_eeze_umount"], [umount bin to use])
+
+if test "x$with_eeze_eject" = "xdetect";then
+ AC_PATH_PROG([with_eeze_eject], [eject], [])
+fi
+AC_DEFINE_UNQUOTED([EEZE_EJECT_BIN], ["$with_eeze_eject"], [eject bin to use])
+
+EFL_LIB_END_OPTIONAL([Eeze])
+
+AM_CONDITIONAL([EEZE_LIBMOUNT_AFTER_219],
+ [test "x${have_libmount_new}" = "xyes"])
+AM_CONDITIONAL([EEZE_LIBMOUNT_BEFORE_219],
+ [test "x${have_libmount_old}" = "xyes"])
+AM_CONDITIONAL([HAVE_EEZE_MOUNT], [test "x${have_eeze_mount}" = "xyes"])
+AM_CONDITIONAL([HAVE_EEZE_TIZEN], [test "x${want_tizen}" = "xyes"])
+#### End of Eeze
+
+
+#### Ecore_Input
+EFL_LIB_START([Ecore_Input])
+
+### Additional options to configure
+
+### Default values
+
+### Checks for programs
+
+## Compatibility layers
+EFL_PLATFORM_DEPEND([ECORE_INPUT], [evil])
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([ECORE_INPUT], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ECORE_INPUT], [eo])
+EFL_INTERNAL_DEPEND_PKG([ECORE_INPUT], [efl])
+EFL_INTERNAL_DEPEND_PKG([ECORE_INPUT], [eina])
+
+EFL_OPTIONAL_INTERNAL_DEPEND_PKG([ECORE_INPUT], [${efl_lib_optional_eeze}], [eeze])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END([Ecore_Input])
+#### End of Ecore_Input
+
+
+#### Ecore_Input_Evas
+EFL_LIB_START([Ecore_Input_Evas])
+
+### Additional options to configure
+
+### Default values
+
+### Checks for programs
+
+## Compatibility layers
+EFL_PLATFORM_DEPEND([ECORE_INPUT_EVAS], [evil])
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([ECORE_INPUT_EVAS], [ecore-input])
+EFL_INTERNAL_DEPEND_PKG([ECORE_INPUT_EVAS], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ECORE_INPUT_EVAS], [evas])
+EFL_INTERNAL_DEPEND_PKG([ECORE_INPUT_EVAS], [efl])
+EFL_INTERNAL_DEPEND_PKG([ECORE_INPUT_EVAS], [eo])
+EFL_INTERNAL_DEPEND_PKG([ECORE_INPUT_EVAS], [eina])
+EFL_INTERNAL_DEPEND_PKG([ECORE_INPUT_EVAS], [emile])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END([Ecore_Input_Evas])
+#### End of Ecore_Input_Evas
+
+
+#### Ecore_Cocoa
+EFL_LIB_START_OPTIONAL([Ecore_Cocoa], [test "${have_cocoa}" = "yes"])
+
+### Additional options to configure
+
+### Default values
+
+### Checks for programs
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([ECORE_COCOA], [ecore-input])
+EFL_INTERNAL_DEPEND_PKG([ECORE_COCOA], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ECORE_COCOA], [eo])
+EFL_INTERNAL_DEPEND_PKG([ECORE_COCOA], [efl])
+EFL_INTERNAL_DEPEND_PKG([ECORE_COCOA], [eina])
+
+### Checks for header files
+
+EFL_ADD_LIBS([ECORE_COCOA], [-framework Cocoa])
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END_OPTIONAL([Ecore_Cocoa])
+#### End of Ecore_Cocoa
+
+
+#### Ecore_FB
+EFL_LIB_START_OPTIONAL([Ecore_FB], [test "${want_fb}" = "yes"])
+
+### Additional options to configure
+AC_ARG_ENABLE([tslib],
+ [AS_HELP_STRING([--disable-tslib],[disable tslib for touchscreen events.])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_tslib="yes"
+ else
+ want_tslib="no"
+ fi
+ ], [want_tslib="yes"])
+
+### Default values
+
+### Checks for programs
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([ECORE_FB], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ECORE_FB], [ecore-input])
+EFL_INTERNAL_DEPEND_PKG([ECORE_FB], [eo])
+EFL_INTERNAL_DEPEND_PKG([ECORE_FB], [efl])
+EFL_INTERNAL_DEPEND_PKG([ECORE_FB], [eina])
+
+EFL_OPTIONAL_DEPEND_PKG([ECORE_FB], [${want_tslib}], [TSLIB], [tslib])
+EFL_ADD_FEATURE([ECORE_FB], [tslib])
+
+EFL_EVAL_PKGS([ECORE_FB])
+
+### Checks for header files
+
+have_ecore_fb="no"
+AC_CHECK_HEADER([linux/fb.h],
+ [AC_CHECK_HEADER([linux/input.h], [have_ecore_fb="yes"])])
+if test "${have_ecore_fb}" = "no"; then
+ AC_MSG_ERROR([Missing linux/input.h or linux/fb.h])
+fi
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END_OPTIONAL([Ecore_FB])
+#### End of Ecore_FB
+
+
+#### Ecore_SDL
+EFL_LIB_START_OPTIONAL([Ecore_SDL], [test "${want_sdl}" = "yes"])
+
+### Additional options to configure
+
+### Default values
+
+### Checks for programs
+
+### Checks for libraries
+EFL_PLATFORM_DEPEND([ECORE_SDL], [all])
+EFL_INTERNAL_DEPEND_PKG([ECORE_SDL], [ecore-input])
+EFL_INTERNAL_DEPEND_PKG([ECORE_SDL], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ECORE_SDL], [eo])
+EFL_INTERNAL_DEPEND_PKG([ECORE_SDL], [efl])
+EFL_INTERNAL_DEPEND_PKG([ECORE_SDL], [eina])
+
+EFL_DEPEND_PKG([ECORE_SDL], [SDL], [sdl2 >= 2.0.0])
+
+EFL_EVAL_PKGS([ECORE_SDL])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END_OPTIONAL([Ecore_SDL])
+#### End of Ecore_SDL
+
+
+#### Ecore_Wayland
+EFL_LIB_START_OPTIONAL([Ecore_Wayland], [test "${want_ecore_wayland}" = "yes"])
+
+if test "x${want_wayland_ivi_shell}" = "xyes" ; then
+ AC_DEFINE(USE_IVI_SHELL, 1, [Ecore_Wayland IVI-Shell Support])
+fi
+
+### Additional options to configure
+
+### Default values
+
+### Checks for programs
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([ECORE_WAYLAND], [ecore-input])
+EFL_INTERNAL_DEPEND_PKG([ECORE_WAYLAND], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ECORE_WAYLAND], [eo])
+EFL_INTERNAL_DEPEND_PKG([ECORE_WAYLAND], [efl])
+EFL_INTERNAL_DEPEND_PKG([ECORE_WAYLAND], [eina])
+
+EFL_DEPEND_PKG([ECORE_WAYLAND], [WAYLAND],
+ [wayland-client >= 1.8.0 wayland-cursor >= 1.8.0 xkbcommon >= 0.5.0 uuid])
+
+EFL_EVAL_PKGS([ECORE_WAYLAND])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END_OPTIONAL([Ecore_Wayland])
+#### End of Ecore_Wayland
+
+#### Ecore_Wl2
+EFL_LIB_START_OPTIONAL([Ecore_Wl2], [test "${want_wayland}" = "yes"])
+
+if test "x${want_wayland_ivi_shell}" = "xyes" ; then
+ AC_DEFINE(USE_IVI_SHELL, 1, [Ecore_Wl2 IVI-Shell Support])
+fi
+
+### Additional options to configure
+
+### Default values
+
+### Checks for programs
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([ECORE_WL2], [ecore-input])
+EFL_INTERNAL_DEPEND_PKG([ECORE_WL2], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ECORE_WL2], [eo])
+EFL_INTERNAL_DEPEND_PKG([ECORE_WL2], [efl])
+EFL_INTERNAL_DEPEND_PKG([ECORE_WL2], [eina])
+
+EFL_DEPEND_PKG([ECORE_WL2], [WAYLAND],
+ [wayland-server >= 1.11.0 wayland-client >= 1.11.0 xkbcommon >= 0.6.0])
+
+EFL_EVAL_PKGS([ECORE_WL2])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END_OPTIONAL([Ecore_Wl2])
+#### End of Ecore_Wl2
+
+#### Efl_Wl
+EFL_LIB_START_OPTIONAL([Efl_Wl], [test -n "${ECORE_WL2_CFLAGS}"])
+
+### Additional options to configure
+
+### Default values
+
+### Checks for programs
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([EFL_WL], [ecore-wl2])
+EFL_INTERNAL_DEPEND_PKG([EFL_WL], [ecore-input])
+EFL_INTERNAL_DEPEND_PKG([EFL_WL], [ecore])
+EFL_INTERNAL_DEPEND_PKG([EFL_WL], [ecore-evas])
+EFL_INTERNAL_DEPEND_PKG([EFL_WL], [evas])
+EFL_INTERNAL_DEPEND_PKG([EFL_WL], [emile])
+EFL_INTERNAL_DEPEND_PKG([EFL_WL], [eo])
+EFL_INTERNAL_DEPEND_PKG([EFL_WL], [efl])
+EFL_INTERNAL_DEPEND_PKG([EFL_WL], [eina])
+EFL_OPTIONAL_INTERNAL_DEPEND_PKG([EFL_WL], [${want_x11_any}], [ecore_x])
+
+EFL_DEPEND_PKG([EFL_WL], [WAYLAND],
+ [wayland-server >= 1.11.0 xkbcommon >= 0.6.0])
+EFL_OPTIONAL_DEPEND_PKG([EFL_WL], [${want_x11_any}], [XKBCOMMONX11], [xkbcommon-x11])
+
+EFL_EVAL_PKGS([EFL_WL])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END_OPTIONAL([Efl_Wl])
+#### End of Efl_Wl
+
+#### Eldbus
+EFL_LIB_START([Eldbus])
+
+### Additional options to configure
+
+### Default values
+
+### Checks for programs
+
+## Compatibility layers
+EFL_PLATFORM_DEPEND([ELDBUS], [evil])
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([ELDBUS], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ELDBUS], [efl])
+EFL_INTERNAL_DEPEND_PKG([ELDBUS], [eo])
+EFL_INTERNAL_DEPEND_PKG([ELDBUS], [eina])
+
+EFL_DEPEND_PKG([ELDBUS], [DBUS], [dbus-1])
+
+EFL_EVAL_PKGS([ELDBUS])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END([Eldbus])
+#### End of Eldbus
+
+
+
+#### Ecore_Drm
+EFL_LIB_START_OPTIONAL([Ecore_Drm], [test "${want_ecore_drm}" = "yes"])
+
+### Additional options to configure
+SUID_CFLAGS=-fPIE
+SUID_LDFLAGS=-pie
+AC_SUBST([SUID_CFLAGS])
+AC_SUBST([SUID_LDFLAGS])
+
+### Default values
+
+### Checks for programs
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([ECORE_DRM], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ECORE_DRM], [ecore-input])
+EFL_INTERNAL_DEPEND_PKG([ECORE_DRM], [eldbus])
+EFL_INTERNAL_DEPEND_PKG([ECORE_DRM], [eeze])
+EFL_INTERNAL_DEPEND_PKG([ECORE_DRM], [eo])
+EFL_INTERNAL_DEPEND_PKG([ECORE_DRM], [efl])
+EFL_INTERNAL_DEPEND_PKG([ECORE_DRM], [eina])
+
+EFL_DEPEND_PKG([ECORE_DRM], [DRM], [libdrm >= 2.4 xkbcommon >= 0.3.0 gbm])
+EFL_DEPEND_PKG([ECORE_DRM], [LIBINPUT], [libinput >= 1.6.0])
+
+EFL_ADD_LIBS([ECORE_DRM], [-lm])
+
+EFL_EVAL_PKGS([ECORE_DRM])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END_OPTIONAL([Ecore_Drm])
+#### End of Ecore_Drm
+
+
+#### Elput
+EFL_LIB_START_OPTIONAL([Elput], [test "${want_elput}" = "yes"])
+
+### Additional options to configure
+SUID_CFLAGS=-fPIE
+SUID_LDFLAGS=-pie
+AC_SUBST([SUID_CFLAGS])
+AC_SUBST([SUID_LDFLAGS])
+
+### Default values
+
+### Checks for programs
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([ELPUT], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ELPUT], [ecore-input])
+EFL_INTERNAL_DEPEND_PKG([ELPUT], [eldbus])
+EFL_INTERNAL_DEPEND_PKG([ELPUT], [eeze])
+EFL_INTERNAL_DEPEND_PKG([ELPUT], [eo])
+EFL_INTERNAL_DEPEND_PKG([ELPUT], [eina])
+
+EFL_DEPEND_PKG([ELPUT], [LIBINPUT], [libinput >= 1.7.0 xkbcommon >= 0.3.0 libudev])
+
+AC_ARG_ENABLE([elogind],
+ [AS_HELP_STRING([--enable-elogind],[enable elogind support.@<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_elogind="yes"
+ else
+ want_elogind="no"
+ fi
+ ], [
+ want_elogind="no"
+ ])
+
+EFL_OPTIONAL_DEPEND_PKG([ELPUT], [${want_systemd}], [SYSTEMD], [libsystemd])
+EFL_OPTIONAL_DEPEND_PKG([ELPUT], [${want_elogind}], [ELOGIND], [libelogind])
+EFL_ADD_FEATURE([ELPUT], [systemd-logind], [${want_systemd}])
+EFL_ADD_FEATURE([ELPUT], [elogind], [${want_elogind}])
+
+EFL_ADD_LIBS([ELPUT], [-lm])
+
+
+EFL_EVAL_PKGS([ELPUT])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END_OPTIONAL([Elput])
+#### End of Elput
+
+#### Ecore_Drm2
+EFL_LIB_START_OPTIONAL([Ecore_Drm2], [test "${want_drm}" = "yes"])
+
+### Additional options to configure
+SUID_CFLAGS=-fPIE
+SUID_LDFLAGS=-pie
+AC_SUBST([SUID_CFLAGS])
+AC_SUBST([SUID_LDFLAGS])
+
+### Default values
+
+### Checks for programs
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([ECORE_DRM2], [eo])
+EFL_INTERNAL_DEPEND_PKG([ECORE_DRM2], [efl])
+EFL_INTERNAL_DEPEND_PKG([ECORE_DRM2], [eina])
+EFL_INTERNAL_DEPEND_PKG([ECORE_DRM2], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ECORE_DRM2], [elput])
+EFL_INTERNAL_DEPEND_PKG([ECORE_DRM2], [eeze])
+
+EFL_DEPEND_PKG([ECORE_DRM2], [DRM], [gbm])
+
+EFL_ADD_LIBS([ECORE_DRM2], [-lm])
+EFL_ADD_LIBS([ECORE_DRM2], [-ldl])
+
+EFL_EVAL_PKGS([ECORE_DRM2])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END_OPTIONAL([Ecore_Drm2])
+#### End of Ecore_Drm2
+
+
+#### Ecore_Audio
+
+AC_ARG_ENABLE([audio],
+ [AS_HELP_STRING([--disable-audio],[disable audio support. @<:@default=enabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_audio="yes"
+ else
+ want_audio="no"
+ CFOPT_WARNING="xyes"
+ fi
+ ],
+ [want_audio="yes"])
+
+EFL_LIB_START_OPTIONAL([Ecore_Audio], [test "${want_audio}" = "yes"])
+
+### Additional options to configure
+
+# ALSA support is still not there, thus no option for it yet.
+want_alsa="no"
+
+# sndfile is mandatory otherwise it won't read from/write to files.
+# TODO: if confirmed sndfile is mandatory, remove this variable
+# TODO: and the EFL_OPTIONAL_DEPEND_PKG(), use EFL_DEPEND_PKG()
+want_sndfile="yes"
+
+want_wasapiaudio="no"
+
+AC_ARG_ENABLE([pulseaudio],
+ [AS_HELP_STRING([--disable-pulseaudio],[disable pulseaudio sound support. @<:@default=enabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_pulseaudio="yes"
+ else
+ want_pulseaudio="no"
+ if test "x${have_win32}" = "xyes" ; then
+ want_wasapiaudio="yes"
+ else
+ want_wasapiaudio="no"
+ CFOPT_WARNING="xyes"
+ fi
+ fi
+ ],
+ [want_pulseaudio="yes"])
+
+### Default values
+
+### Checks for programs
+
+## Compatibility layers
+EFL_PLATFORM_DEPEND([ECORE_AUDIO], [evil])
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([ECORE_AUDIO], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ECORE_AUDIO], [eet])
+EFL_INTERNAL_DEPEND_PKG([ECORE_AUDIO], [eo])
+EFL_INTERNAL_DEPEND_PKG([ECORE_AUDIO], [efl])
+EFL_INTERNAL_DEPEND_PKG([ECORE_AUDIO], [eina])
+EFL_INTERNAL_DEPEND_PKG([ECORE_AUDIO], [emile])
+
+EFL_ADD_LIBS([ECORE_AUDIO], [-lm])
+
+if test "x${want_alsa}" = "xyes" ; then
+ PKG_CHECK_MODULES([ECORE_AUDIO_ALSA], [alsa])
+ AC_DEFINE([HAVE_ALSA], [1], [Alsa support])
+fi
+if test "x${want_pulseaudio}" = "xyes" ; then
+ PKG_CHECK_MODULES([ECORE_AUDIO_PULSE], [libpulse])
+ AC_DEFINE([HAVE_PULSE], [1], [Pulseaudio support])
+fi
+if test "x${want_sndfile}" = "xyes" ; then
+ PKG_CHECK_MODULES([ECORE_AUDIO_SNDFILE], [sndfile])
+ AC_DEFINE([HAVE_SNDFILE], [1], [Sndfile support])
+fi
+if test "x${want_wasapiaudio}" = "xyes" ; then
+ EFL_ADD_LIBS([ECORE_AUDIO], [-luuid -lwinmm -lksuser])
+fi
+
+dnl EFL_OPTIONAL_DEPEND_PKG([ECORE_AUDIO_ALSA], [${want_alsa}], [ALSA], [alsa])
+dnl EFL_OPTIONAL_DEPEND_PKG([ECORE_AUDIO_PULSE], [${want_pulseaudio}], [PULSE], [libpulse])
+dnl EFL_OPTIONAL_DEPEND_PKG([ECORE_AUDIO_SNDFILE], [${want_sndfile}], [SNDFILE], [sndfile])
+
+EFL_EVAL_PKGS([ECORE_AUDIO])
+
+EFL_ADD_FEATURE([ECORE_AUDIO], [alsa])
+EFL_ADD_FEATURE([ECORE_AUDIO], [pulseaudio])
+EFL_ADD_FEATURE([ECORE_AUDIO], [sndfile])
+EFL_ADD_FEATURE([ECORE_AUDIO], [wasapiaudio])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END_OPTIONAL([Ecore_Audio])
+AM_CONDITIONAL([HAVE_ECORE_AUDIO_PULSE], [test "x${want_pulseaudio}" = "xyes"])
+AM_CONDITIONAL([HAVE_ECORE_AUDIO_SNDFILE], [test "x${want_sndfile}" = "xyes"])
+
+#### End of Ecore_Audio
+
+#### Ecore Audio CXX
+EFL_LIB_START([Ecore_Audio_Cxx])
+
+EFL_EVAL_PKGS([ECORE_AUDIO_CXX])
+
+EFL_LIB_END([Ecore_Audio_Cxx])
+#### End of Ecore Audio CXX
+
+#### Ecore_Win32
+EFL_LIB_START_OPTIONAL([Ecore_Win32], [test "${have_win32}" = "yes"])
+
+### Additional options to configure
+
+### Default values
+
+### Checks for programs
+
+### Checks for libraries
+EFL_PLATFORM_DEPEND([ECORE_WIN32], [evil])
+EFL_INTERNAL_DEPEND_PKG([ECORE_WIN32], [ecore-input])
+EFL_INTERNAL_DEPEND_PKG([ECORE_WIN32], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ECORE_WIN32], [eo])
+EFL_INTERNAL_DEPEND_PKG([ECORE_WIN32], [efl])
+EFL_INTERNAL_DEPEND_PKG([ECORE_WIN32], [eina])
+
+EFL_ADD_LIBS([ECORE_WIN32], [-lole32 -lgdi32])
+AC_SUBST([ECORE_WIN32_LIBS])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END_OPTIONAL([Ecore_Win32])
+#### End of Ecore_Win32
+
+#### Ecore_Avahi
+
+EFL_LIB_START([Ecore_Avahi])
+
+### Default values
+
+### Additional options to configure
+
+want_avahi="yes"
+
+AC_ARG_ENABLE([avahi],
+ [AS_HELP_STRING([--disable-avahi],[disable avahi support. @<:@default=enabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_avahi="yes"
+ else
+ want_avahi="no"
+ fi
+ ], [
+ want_avahi="yes"
+ ])
+
+### Checks for programs
+
+## Compatibility layers
+EFL_PLATFORM_DEPEND([ECORE_AVAHI], [evil])
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([ECORE_AVAHI], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ECORE_AVAHI], [eina])
+EFL_INTERNAL_DEPEND_PKG([ECORE_AVAHI], [eo])
+EFL_INTERNAL_DEPEND_PKG([ECORE_AVAHI], [efl])
+
+EFL_OPTIONAL_DEPEND_PKG([ECORE_AVAHI], [${want_avahi}], [AVAHI], [avahi-client], [have_avahi=yes], [have_avahi=no])
+
+EFL_ADD_FEATURE([ECORE_AVAHI], [avahi-client], [${have_avahi}])
+
+# Needed bu example as they use avahi directly in that case
+if test "x${have_avahi}" = "xyes"; then
+ PKG_CHECK_MODULES([AVAHI_CLIENT], [avahi-client])
+fi
+
+EFL_EVAL_PKGS([ECORE_AVAHI])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END([Ecore_Avahi])
+
+#### End of Ecore_Avahi
+
+
+#### Ecore_X
+EFL_LIB_START_OPTIONAL([Ecore_X], [test "${want_x11_any}" = "yes"])
+
+### Additional options to configure
+
+AC_ARG_ENABLE([gesture],
+ [AS_HELP_STRING([--enable-gesture],[enable X11 Gesture extension support])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_gesture="yes"
+ else
+ want_gesture="no"
+ fi
+ ],
+ [want_gesture="no"])
+
+AC_ARG_ENABLE([xpresent],
+ [AS_HELP_STRING([--enable-xpresent],[enable X11 XPresent extension support])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_xpresent="yes"
+ else
+ want_xpresent="no"
+ fi
+ ],
+ [want_xpresent="no"])
+
+AC_ARG_ENABLE([xinput2],
+ [AS_HELP_STRING([--disable-xinput2],[disable X11 XInput v2.x support])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_xinput2="yes"
+ else
+ want_xinput2="no"
+ CFOPT_WARNING="xyes"
+ fi
+ ],
+ [want_xinput2="yes"])
+
+AC_ARG_ENABLE([xinput22],
+ [AS_HELP_STRING([--enable-xinput22],[enable X11 XInput v2.2+ support])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_xinput22="yes"
+ else
+ want_xinput22="no"
+ fi
+ ],
+ [want_xinput22="no"])
+
+AC_ARG_ENABLE([xim],
+ [AS_HELP_STRING([--disable-xim],[disable X Input Method.])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_xim="yes"
+ else
+ want_xim="no"
+ CFOPT_WARNING="xyes"
+ fi
+ ],
+ [want_xim="yes"])
+
+AC_ARG_ENABLE([scim],
+ [AS_HELP_STRING([--disable-scim],[disable SCIM.])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_scim="yes"
+ else
+ want_scim="no"
+ CFOPT_WARNING="xyes"
+ fi
+ ],
+ [want_scim="yes"])
+
+AC_ARG_ENABLE([ibus],
+ [AS_HELP_STRING([--disable-ibus],[disable IBUS.])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_ibus="yes"
+ else
+ want_ibus="no"
+ fi
+ ],
+ [want_ibus="yes"])
+
+### Default values
+
+### Checks for programs
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([ECORE_X], [ecore-input])
+EFL_INTERNAL_DEPEND_PKG([ECORE_X], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ECORE_X], [eo])
+EFL_INTERNAL_DEPEND_PKG([ECORE_X], [efl])
+EFL_INTERNAL_DEPEND_PKG([ECORE_X], [eina])
+
+## Xlib
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+## Xlib
+if test "x${want_x11_xlib}" = "xyes"; then
+ EFL_FIND_X(ECORE_X_XLIB,
+ [X11/Xlib.h X11/Xcursor/Xcursor.h],
+ [X11 XOpenDisplay Xcursor XcursorImageLoadCursor],
+ [
+ use_Xcursor="yes"
+ AC_DEFINE([ECORE_XCURSOR], 1, [Build support for Xcursor])
+ EFL_ADD_LIBS([ECORE_X], [$ECORE_X_XLIB_libs])
+ EFL_ADD_CFLAGS([ECORE_X], [$ECORE_X_XLIB_cflags])
+ ],[
+ AC_MSG_ERROR([Xcursor is missing])
+ ])
+fi
+
+if test "x${want_x11_xlib}" = "xyes" ; then
+ ECORE_CHECK_X_EXTENSION([Xkb], [XKB.h], [X11], [XkbSetDetectableAutoRepeat])
+ ECORE_CHECK_X_EXTENSION([Xcomposite], [Xcomposite.h], [Xcomposite], [XCompositeQueryExtension])
+ ECORE_CHECK_X_EXTENSION([Xdamage], [Xdamage.h], [Xdamage], [XDamageSubtract])
+ ECORE_CHECK_X_EXTENSION([Xdpms], [dpms.h], [Xext], [DPMSQueryExtension])
+ ECORE_CHECK_X_EXTENSION([Xfixes], [Xfixes.h], [Xfixes], [XFixesExpandRegion])
+ ECORE_CHECK_X_EXTENSION([Xinerama], [Xinerama.h], [Xinerama], [XineramaQueryScreens])
+ ECORE_CHECK_X_EXTENSION([Xrandr], [Xrandr.h], [Xrandr], [XRRGetScreenResourcesCurrent])
+ ECORE_CHECK_X_EXTENSION([Xrender], [Xrender.h], [Xrender], [XRenderFindVisualFormat])
+ ECORE_CHECK_X_EXTENSION([Xtest], [XTest.h], [Xtst], [XTestFakeKeyEvent])
+ ECORE_CHECK_X_EXTENSION([Xss], [scrnsaver.h], [Xss], [XScreenSaverSelectInput])
+
+ PKG_CHECK_EXISTS([xrandr > 1.3.2], [AC_DEFINE([XRANDR_GOOD], [1], [good xrandr])], [])
+
+ if test "${want_xpresent}" = "yes"; then
+ ECORE_CHECK_X_EXTENSION([Xpresent], [Xpresent.h], [Xpresent], [XPresentQueryExtension])
+ fi
+ EFL_ADD_FEATURE([ECORE_X], [xpresent])
+
+ if test "${want_gesture}" = "yes"; then
+ ECORE_CHECK_X_EXTENSION([Xgesture], [gesture.h], [Xgesture], [XGestureQueryExtension])
+ fi
+ EFL_ADD_FEATURE([ECORE_X], [gesture])
+
+ if test "${want_xinput2}" = "yes"; then
+ ECORE_CHECK_X_EXTENSION([Xi2], [XInput2.h], [Xi], [XIQueryDevice])
+ fi
+ EFL_ADD_FEATURE([ECORE_X], [xinput2])
+
+ if test "${want_xinput22}" = "yes"; then
+ ECORE_CHECK_X_EXTENSION([Xi2_2], [XInput2.h], [Xi],[XIGrabTouchBegin])
+ fi
+ EFL_ADD_FEATURE([ECORE_X], [xinput22])
+
+ EFL_EVAL_PKGS([ECORE_X])
+ EFL_CHECK_FUNCS([ECORE_X], [dlopen dlsym])
+fi
+
+EFL_ADD_LIBS([ECORE_X], [${ECORE_X_LIBS}])
+
+EFL_LIB_END_OPTIONAL([Ecore_X])
+
+AM_CONDITIONAL([HAVE_ECORE_X_XLIB], [test "${want_x11_xlib}" = "yes"])
+#### End of Ecore_X
+
+
+#### Ecore_Imf
+EFL_LIB_START([Ecore_Imf])
+
+### Additional options to configure
+
+### Default values
+
+want_ecore_imf="yes"
+want_ecore_imf_xim="no"
+want_ecore_imf_scim="no"
+want_ecore_imf_ibus="no"
+want_ecore_imf_wayland="no"
+want_ecore_imf="yes"
+
+if test "${have_windows}" = "no" && test "${have_darwin}" = "no"; then
+ want_ecore_imf="yes"
+ want_ecore_imf_xim="yes"
+ want_ecore_imf_scim="yes"
+ want_ecore_imf_ibus="yes"
+ if test "${want_wayland}" = "yes"; then
+ want_ecore_imf_wayland="yes"
+ fi
+fi
+
+### Checks for programs
+
+## Compatibility layers
+EFL_PLATFORM_DEPEND([ECORE_IMF], [evil])
+
+### Checks for libraries
+EFL_PLATFORM_DEPEND([ECORE_IMF], [escape])
+EFL_INTERNAL_DEPEND_PKG([ECORE_IMF], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ECORE_IMF], [ecore-input])
+EFL_INTERNAL_DEPEND_PKG([ECORE_IMF], [eo])
+EFL_INTERNAL_DEPEND_PKG([ECORE_IMF], [efl])
+EFL_INTERNAL_DEPEND_PKG([ECORE_IMF], [eina])
+
+if test "x${want_ecore_imf}" = "xyes" ; then
+ AC_DEFINE([HAVE_ECORE_IMF], [1], [Ecore IMF Support])
+fi
+
+## modules
+
+# ibus
+
+have_ecore_imf_ibus="no"
+if test "x${want_ibus}" = "xyes" && test "x${want_ecore_imf_ibus}" = "xyes" && test "x${have_glib}" = "xyes" ; then
+ PKG_CHECK_MODULES([IBUS],
+ [ibus-1.0 >= 1.4 glib-2.0],
+ [
+ have_ecore_imf_ibus="yes"
+ AC_DEFINE([BUILD_ECORE_IMF_IBUS], [1], [Ecore Imf IBUS Support])
+ ],
+ [have_ecore_imf_ibus="no"])
+fi
+
+AM_CONDITIONAL([BUILD_ECORE_IMF_IBUS], [test "x${have_ecore_imf_ibus}" = "xyes"])
+EFL_ADD_FEATURE([ECORE_IMF], [ibus], [${have_ecore_imf_ibus}])
+
+# scim
+
+have_ecore_imf_scim="no"
+if test "x${want_scim}" = "xyes" && test "x${want_ecore_imf_scim}" = "xyes" ; then
+ PKG_CHECK_MODULES([SCIM],
+ [scim],
+ [
+ have_ecore_imf_scim="yes"
+ AC_DEFINE([BUILD_ECORE_IMF_SCIM], [1], [Ecore Imf SCIM Support])
+ ],
+ [have_ecore_imf_scim="no"])
+fi
+
+AM_CONDITIONAL([BUILD_ECORE_IMF_SCIM], [test "x${have_ecore_imf_scim}" = "xyes"])
+EFL_ADD_FEATURE([ECORE_IMF], [scim], [${have_ecore_imf_scim}])
+
+# xim
+
+have_ecore_imf_xim="no"
+if test "x${want_xim}" = "xyes" && test "x${want_ecore_imf_xim}" = "xyes" ; then
+
+ EFL_FIND_X(ecore_imf_xim,
+ [X11/Xlib.h],
+ [X11 XOpenIM],
+ [
+ have_ecore_imf_xim=yes
+ AC_DEFINE([BUILD_ECORE_IMF_XIM], [1], [Enable X Input Method])
+ ])
+fi
+
+AM_CONDITIONAL([BUILD_ECORE_IMF_XIM], [test "x${have_ecore_imf_xim}" = "xyes"])
+EFL_ADD_FEATURE([ECORE_IMF], [xim])
+
+# wayland
+if test "x${want_ecore_imf_wayland}" = "xyes" ; then
+ PKG_CHECK_MODULES([WAYLAND],
+ [wayland-client >= 1.11.0],
+ [
+ have_ecore_imf_wayland="yes"
+ AC_DEFINE([BUILD_ECORE_IMF_WAYLAND], [1], [Ecore Imf Wayland Support])
+ ],
+ [have_ecore_imf_wayland="no"])
+fi
+
+AM_CONDITIONAL([BUILD_ECORE_IMF_WAYLAND], [test "x${have_ecore_imf_wayland}" = "xyes"])
+EFL_ADD_FEATURE([ECORE_IMF], [wayland], [${want_ecore_imf_wayland}])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END([Ecore_Imf])
+#### End of Ecore_Imf
+
+
+#### Ecore_Imf_Evas
+EFL_LIB_START([Ecore_Imf_Evas])
+
+### Additional options to configure
+
+### Default values
+
+### Checks for programs
+
+## Compatibility layers
+EFL_PLATFORM_DEPEND([ECORE_IMF_EVAS], [evil])
+
+### Checks for libraries
+EFL_PLATFORM_DEPEND([ECORE_IMF_EVAS], [escape])
+EFL_INTERNAL_DEPEND_PKG([ECORE_IMF_EVAS], [ecore-imf])
+EFL_INTERNAL_DEPEND_PKG([ECORE_IMF_EVAS], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ECORE_IMF_EVAS], [evas])
+EFL_INTERNAL_DEPEND_PKG([ECORE_IMF_EVAS], [efl])
+EFL_INTERNAL_DEPEND_PKG([ECORE_IMF_EVAS], [eo])
+EFL_INTERNAL_DEPEND_PKG([ECORE_IMF_EVAS], [eina])
+EFL_INTERNAL_DEPEND_PKG([ECORE_IMF_EVAS], [emile])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END([Ecore_Imf_Evas])
+#### End of Ecore_Imf_Evas
+
+
+#### Ecore_Evas
+EFL_LIB_START([Ecore_Evas])
+
+### Additional options to configure
+
+### Default values
+
+want_ecore_evas_software_gdi="${have_evas_engine_software_gdi}"
+want_ecore_evas_software_ddraw="${have_evas_engine_software_ddraw}"
+want_ecore_evas_gl_cocoa="${have_evas_engine_gl_cocoa}"
+want_ecore_evas_wayland_egl="${have_evas_engine_wayland_egl}"
+want_ecore_evas_extn="yes"
+want_ecore_evas_drm="${have_evas_engine_drm}"
+
+if test "x${have_ecore_ipc}" = "xno" || \
+ test "x${efl_func_shm_open}" = "xno" || \
+ test "x${have_windows}" = "xyes" ; then
+ want_ecore_evas_extn="no"
+fi
+
+### Checks for programs
+
+## Compatibility layers
+EFL_PLATFORM_DEPEND([ECORE_EVAS], [evil])
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [ecore-input-evas])
+EFL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [ecore-input])
+EFL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [eet])
+EFL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [evas])
+EFL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [efl])
+EFL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [eo])
+EFL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [eina])
+EFL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [emile])
+
+## modules
+ECORE_EVAS_MODULE([extn], [${want_ecore_evas_extn}])
+ECORE_EVAS_MODULE([ews], [yes])
+ECORE_EVAS_MODULE([fb], [${want_fb}])
+ECORE_EVAS_MODULE([drm], [${want_drm}])
+ECORE_EVAS_MODULE([gl-drm], [${want_gl_drm}])
+
+ECORE_EVAS_MODULE([opengl-cocoa], [${want_ecore_evas_gl_cocoa}])
+
+ECORE_EVAS_MODULE([software-sdl], [${want_sdl}])
+ECORE_EVAS_MODULE([opengl-sdl], [${want_gl_sdl}])
+
+build_ecore_evas_sdl="no"
+if test "x${have_ecore_evas_software_sdl}" = "xyes" || \
+ test "x${have_ecore_evas_opengl_sdl}" = "xyes" ; then
+ build_ecore_evas_sdl="yes"
+ AC_DEFINE(BUILD_ECORE_EVAS_SDL, 1, [Support for SDL Engine in Ecore_Evas])
+fi
+AM_CONDITIONAL([BUILD_ECORE_EVAS_SDL],
+ [test "${build_ecore_evas_sdl}" = "yes"])
+
+ECORE_EVAS_MODULE([wayland-shm], [${want_wayland}])
+ECORE_EVAS_MODULE([wayland-egl], [${want_ecore_evas_wayland_egl}])
+
+build_ecore_evas_wayland="no"
+if test "x${have_ecore_evas_wayland_shm}" = "xyes" || \
+ test "x${have_ecore_evas_wayland_egl}" = "xyes" ; then
+ build_ecore_evas_wayland="yes"
+ AC_DEFINE(BUILD_ECORE_EVAS_WAYLAND, 1, [Support for Wayland Engine in Ecore_Evas])
+fi
+AM_CONDITIONAL([BUILD_ECORE_EVAS_WAYLAND],
+ [test "${build_ecore_evas_wayland}" = "yes"])
+
+ECORE_EVAS_MODULE([software-gdi], [${want_ecore_evas_software_gdi}])
+ECORE_EVAS_MODULE([software-ddraw], [${want_ecore_evas_software_ddraw}])
+
+build_ecore_evas_win32="no"
+if test "x${have_ecore_evas_software_gdi}" = "xyes" || \
+ test "x${have_ecore_evas_software_ddraw}" = "xyes" ; then
+ build_ecore_evas_win32="yes"
+ AC_DEFINE(BUILD_ECORE_EVAS_WIN32, 1, [Support for Win32 Engine in Ecore_Evas])
+fi
+AM_CONDITIONAL([BUILD_ECORE_EVAS_WIN32],
+ [test "${build_ecore_evas_win32}" = "yes"])
+
+
+# XXX TODO: ecore_evas_x11
+ECORE_EVAS_MODULE([software-x11], [${want_x11_any}])
+
+have_ecore_evas_software_xlib="no"
+if test "x$have_ecore_evas_software_x11" = "xyes" ; then
+ have_ecore_evas_software_xlib=${have_evas_engine_software_xlib}
+ if test "x${have_ecore_evas_software_xlib}" = "xstatic"; then
+ have_ecore_evas_software_xlib="yes"
+ fi
+ if test "x${have_ecore_evas_software_xlib}" = "xyes"; then
+ AC_DEFINE([BUILD_ECORE_EVAS_SOFTWARE_XLIB], [1], [Evas Software Xlib Engine Support])
+ fi
+fi
+
+# XXX TODO: ecore_evas_opengl_x11
+
+ECORE_EVAS_MODULE([opengl-x11], [${want_x11_any_opengl}])
+
+have_ecore_evas_opengl_xlib="no"
+if test "x${have_ecore_evas_opengl_x11}" = "xyes" || test "x${have_ecore_evas_opengl_x11}" = "xstatic" ; then
+ have_ecore_evas_opengl_xlib=${have_evas_engine_gl_xlib}
+ if test "x${have_ecore_evas_opengl_xlib}" = "xyes" ; then
+ AC_DEFINE([BUILD_ECORE_EVAS_OPENGL_XLIB], [1], [OpenGL Xlib rendering backend])
+ fi
+fi
+
+build_ecore_evas_x11="no"
+if test "x$have_ecore_evas_software_x11" = "xyes" || \
+ test "x$have_ecore_evas_opengl_x11" = "xyes"; then
+ AC_DEFINE([BUILD_ECORE_EVAS_X11], [1], [Support for X Window Engines in Ecore_Evas])
+ build_ecore_evas_x11="yes"
+fi
+
+AM_CONDITIONAL([BUILD_ECORE_EVAS_X11], [test "${build_ecore_evas_x11}" = "yes"])
+
+build_ecore_evas_vnc="no"
+if test "${want_vnc_server}" = "yes" && \
+ (test "${build_ecore_evas_x11}" = "yes" || \
+ test "${want_fb}" = "yes"); then
+ AC_DEFINE([BUILD_ECORE_EVAS_VNC_SERVER], [1], [Build Ecore_Evas VNC module])
+ build_ecore_evas_vnc="yes"
+fi
+
+AM_CONDITIONAL([BUILD_ECORE_EVAS_VNC_SERVER], [test "${build_ecore_evas_vnc}" = "yes"])
+AC_DEFINE_IF([BUILD_ECORE_EVAS_VNC_SERVER], [test "${build_ecore_evas_vnc}" = "yes"], [1], [Build Ecore_Evas VNC module])
+EFL_ADD_FEATURE([ECORE_EVAS], [vnc_server], [${build_ecore_evas_vnc}])
+
+EFL_EVAL_PKGS([ECORE_EVAS])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+if test "x${want_gl_drm}" = "xyes" ; then
+ EFL_CHECK_FUNCS([ECORE_EVAS], [dlopen])
+fi
+
+EFL_LIB_END([Ecore_Evas])
+#### End of Ecore_Evas
+
+#### Eio
+EFL_LIB_START([Eio])
+
+### Additional options to configure
+
+### Default values
+
+### Checks for programs
+
+## Compatibility layers
+EFL_PLATFORM_DEPEND([EIO], [evil])
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([EIO], [ecore])
+EFL_INTERNAL_DEPEND_PKG([EIO], [ecore-file])
+EFL_INTERNAL_DEPEND_PKG([EIO], [eet])
+EFL_INTERNAL_DEPEND_PKG([EIO], [eo])
+EFL_INTERNAL_DEPEND_PKG([EIO], [eina])
+EFL_INTERNAL_DEPEND_PKG([EIO], [efl])
+EFL_INTERNAL_DEPEND_PKG([EIO], [emile])
+EFL_INTERNAL_DEPEND_PKG([EIO], [efreet-mime])
+
+EFL_ADD_LIBS([EIO], [-lm])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+have_inotify="${ac_cv_header_sys_inotify_h}"
+AM_CONDITIONAL([HAVE_INOTIFY], [test "x${have_inotify}" = "xyes"])
+
+have_notify_win32="${have_win32}"
+AC_DEFINE_IF([HAVE_NOTIFY_WIN32],
+ [test "x${have_notify_win32}" = "xyes"], [1],
+ [File monitoring with Windows notification])
+AM_CONDITIONAL([HAVE_NOTIFY_WIN32], [test "x${have_notify_win32}" = "xyes"])
+
+AC_DEFINE_IF([HAVE_NOTIFY_COCOA],
+ [test "x${have_darwin}" = "xyes"], [1],
+ [File monitoring with fsevent notification])
+AM_CONDITIONAL([HAVE_NOTIFY_COCOA], [test "x${have_darwin}" = "xyes"])
+
+AC_CHECK_FUNC([kevent])
+have_notify_kevent="${ac_cv_func_kevent}"
+AC_DEFINE_IF([HAVE_NOTIFY_KEVENT],
+ [test "x${have_notify_kevent}" = "xyes"], [1],
+ [File monitoring with kqueue/kevent mechanism])
+AM_CONDITIONAL([HAVE_NOTIFY_KEVENT], [test "x${have_notify_kevent}" = "xyes"])
+
+
+EFL_LIB_END([Eio])
+dnl TODO: remove these ifdefs from code!
+AC_DEFINE([HAVE_EIO], [1], [Have eio library])
+#### End of Eio
+
+#### Efreet
+EFL_LIB_START([Efreet])
+
+### Additional options to configure
+
+### Default values
+
+AC_DEFINE([SLOPPY_SPEC], [1], [Sloppy Spec Compliance])
+
+### Checks for programs
+
+## Compatibility layers
+EFL_PLATFORM_DEPEND([EFREET], [evil])
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([EFREET], [eet])
+EFL_INTERNAL_DEPEND_PKG([EFREET], [ecore])
+EFL_INTERNAL_DEPEND_PKG([EFREET], [ecore-file])
+EFL_INTERNAL_DEPEND_PKG([EFREET], [eo])
+EFL_INTERNAL_DEPEND_PKG([EFREET], [efl])
+EFL_INTERNAL_DEPEND_PKG([EFREET], [eina])
+EFL_INTERNAL_DEPEND_PKG([EFREET], [emile])
+EFL_INTERNAL_DEPEND_PKG([EFREET], [ecore-con])
+EFL_INTERNAL_DEPEND_PKG([EFREET], [ecore-ipc])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END([Efreet])
+#### End of Efreet
+
+
+#### EPhysics
+AC_ARG_ENABLE([physics],
+ [AS_HELP_STRING([--disable-physics],[disable physics effects and support. @<:@default=enabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_physics="yes"
+ else
+ CFOPT_WARNING="xyes"
+ want_physics="no"
+ fi
+ ],
+ [want_physics="yes"])
+
+if test "x${want_physics}" = "xyes" ; then
+ # We should be using ${CXX} here, but there is a bug in
+ # autotools macro and CXX is always set to g++ even if
+ # it's not found. So we are using an internal variable
+ # that does the work for now, may get broken in the future.
+ if test "x${ac_ct_CXX}" = "x" -a "x${CXX}" = "xg++"; then
+ AC_MSG_ERROR([efl requires a C++ compiler got ${ac_ct_CXX} and ${CXX}.])
+ fi
+fi
+
+EFL_LIB_START_OPTIONAL([EPhysics], [test "${want_physics}" = "yes"])
+
+### Additional options to configure
+
+### Default values
+
+### Checks for programs
+
+### Checks for libraries
+EFL_PLATFORM_DEPEND([EPHYSICS], [evil])
+
+EFL_INTERNAL_DEPEND_PKG([EPHYSICS], [eina])
+EFL_INTERNAL_DEPEND_PKG([EPHYSICS], [evas])
+EFL_INTERNAL_DEPEND_PKG([EPHYSICS], [efl])
+EFL_INTERNAL_DEPEND_PKG([EPHYSICS], [ecore])
+EFL_INTERNAL_DEPEND_PKG([EPHYSICS], [eo])
+EFL_INTERNAL_DEPEND_PKG([EPHYSICS], [emile])
+
+EFL_DEPEND_PKG([EPHYSICS], [BULLET], [bullet >= 2.80])
+
+EFL_EVAL_PKGS([EPHYSICS])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END_OPTIONAL([EPhysics])
+#### End of EPhysics
+
+
+#### Edje
+EFL_LIB_START([Edje])
+
+### Additional options to configure
+
+### Default values
+
+AC_ARG_ENABLE([multisense],
+ [AS_HELP_STRING([--enable-multisense],[Enable multisense support. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_multisense="yes"
+ else
+ want_multisense="no"
+ CFOPT_WARNING="xyes"
+ fi
+ ],
+ [
+ if test "x${want_pulseaudio}" = "xyes"; then
+ want_multisense="yes"
+ else
+ if test "x${want_wasapiaudio}" = "xyes"; then
+ want_multisense="yes"
+ else
+ want_multisense="no"
+ fi
+ fi
+
+ ])
+
+# TODO: should we keep or remove these?
+want_edje_program_cache="no"
+want_edje_calc_cache="yes"
+want_fixed_point="no"
+
+### Checks for programs
+
+### Checks for libraries
+EFL_PLATFORM_DEPEND([EDJE], [evil])
+
+EFL_INTERNAL_DEPEND_PKG([EDJE], [eina])
+EFL_INTERNAL_DEPEND_PKG([EDJE], [eo])
+EFL_INTERNAL_DEPEND_PKG([EDJE], [efl])
+EFL_INTERNAL_DEPEND_PKG([EDJE], [eet])
+EFL_INTERNAL_DEPEND_PKG([EDJE], [evas])
+EFL_INTERNAL_DEPEND_PKG([EDJE], [ecore])
+EFL_INTERNAL_DEPEND_PKG([EDJE], [ecore-evas])
+EFL_INTERNAL_DEPEND_PKG([EDJE], [ecore-file])
+EFL_INTERNAL_DEPEND_PKG([EDJE], [ecore-input])
+EFL_INTERNAL_DEPEND_PKG([EDJE], [ecore-imf])
+EFL_INTERNAL_DEPEND_PKG([EDJE], [ecore-imf-evas])
+EFL_INTERNAL_DEPEND_PKG([EDJE], [embryo])
+EFL_INTERNAL_DEPEND_PKG([EDJE], [emile])
+EFL_INTERNAL_DEPEND_PKG([EDJE], [efreet])
+EFL_INTERNAL_DEPEND_PKG([EDJE], [eio])
+
+if test "x${want_physics}" = "xyes" ; then
+ AC_DEFINE([HAVE_EPHYSICS], [1], [EPhysics Support])
+ EDJE_CFLAGS="-I\$(top_srcdir)/src/lib/ephysics ${EDJE_CFLAGS}"
+fi
+dnl EFL_OPTIONAL_INTERNAL_DEPEND_PKG([EDJE], [${want_physics}], [ephysics])
+
+if test "x${want_lua_old}" = "xyes"; then
+ EFL_CHECK_LUA_OLD([EDJE])
+else
+ PKG_CHECK_MODULES([EDJE_LUA], [luajit >= 2.0.0])
+fi
+
+EFL_OPTIONAL_INTERNAL_DEPEND_PKG([EDJE], [${want_multisense}], [ecore-audio])
+
+EFL_ADD_FEATURE([EDJE], [physics])
+EFL_ADD_FEATURE([EDJE], [multisense])
+EFL_ADD_FEATURE([EDJE], [lua-old])
+
+EFL_ADD_LIBS([EDJE], [-lm])
+
+EFL_EVAL_PKGS([EDJE])
+
+AC_DEFINE_IF([EDJE_PROGRAM_CACHE], [test "${want_edje_program_cache}" = "yes"],
+ [1], [Cache result of program glob matches])
+AC_DEFINE_IF([EDJE_CALC_CACHE], [test "${want_edje_calc_cache}" = "yes"],
+ [1], [Cache result of calc glob matches])
+AC_DEFINE_IF([BUILD_EDJE_FP], [test "${want_fixed_point}" = "yes"],
+ [1], [Use Fixed Point instead of FPU])
+
+AM_CONDITIONAL([ENABLE_MULTISENSE], [test "${want_multisense}" = "yes"])
+AC_DEFINE_IF([ENABLE_MULTISENSE], [test "${want_multisense}" = "yes"],
+ [1], [Use Multisense])
+AC_SUBST([want_multisense])
+AC_SUBST([want_physics])
+
+### Checks for header files
+
+AC_CHECK_HEADERS([ \
+sys/wait.h \
+])
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+EFL_LIB_END([Edje])
+#### End of Edje
+
+#### Edje CXX
+EFL_LIB_START([Edje_Cxx])
+
+EFL_EVAL_PKGS([EDJE_CXX])
+
+EFL_LIB_END([Edje_Cxx])
+#### End of Edje CXX
+
+#### Emotion
+EFL_LIB_START([Emotion])
+
+## Compatibility layers
+EFL_PLATFORM_DEPEND([Emotion], [evil])
+
+### Default values
+if test "${efl_func_shm_open}" = "yes"; then
+ want_emotion_generic="static"
+else
+ want_emotion_generic="no"
+fi
+
+### Additional options to configure
+AC_ARG_ENABLE([xine],
+ [AS_HELP_STRING([--enable-xine],[enable xine support. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_xine="yes"
+ else
+ want_xine="no"
+ fi
+ ],
+ [want_xine="no"])
+
+AC_ARG_ENABLE([v4l2],
+ [AS_HELP_STRING([--enable-v4l2],[enable v4l2 support.])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_v4l2="yes"
+ else
+ want_v4l2="no"
+ fi
+ ],
+ [want_v4l2="${efl_lib_optional_eeze}"])
+
+AC_ARG_ENABLE([libvlc],
+ [AS_HELP_STRING([--enable-libvlc],[enable libvlc support. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_libvlc="yes"
+ else
+ want_libvlc="no"
+ fi
+ ],
+ [want_libvlc="no"])
+
+### Checks for programs
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([EMOTION], [eina])
+EFL_INTERNAL_DEPEND_PKG([EMOTION], [eo])
+EFL_INTERNAL_DEPEND_PKG([EMOTION], [ecore])
+EFL_INTERNAL_DEPEND_PKG([EMOTION], [eet])
+EFL_INTERNAL_DEPEND_PKG([EMOTION], [evas])
+EFL_INTERNAL_DEPEND_PKG([EMOTION], [efl])
+EFL_INTERNAL_DEPEND_PKG([EMOTION], [eio])
+EFL_INTERNAL_DEPEND_PKG([EMOTION], [emile])
+
+EFL_OPTIONAL_INTERNAL_DEPEND_PKG([EMOTION], [${efl_lib_optional_eeze}], [eeze])
+EFL_ADD_FEATURE([EMOTION], [v4l2])
+
+## modules
+
+have_gst_xoverlay="no"
+
+EMOTION_MODULE([xine], [${want_xine}])
+EMOTION_MODULE([gstreamer], [${want_gstreamer}])
+EMOTION_MODULE([gstreamer1], [${want_gstreamer1}])
+EMOTION_MODULE([libvlc], [${want_libvlc}])
+EMOTION_MODULE([generic], [${want_emotion_generic}])
+
+EFL_ADD_FEATURE([EMOTION], [xine])
+EFL_ADD_FEATURE([EMOTION], [gstreamer])
+EFL_ADD_FEATURE([EMOTION], [gstreamer1])
+EFL_ADD_FEATURE([EMOTION], [libvlc])
+EFL_ADD_FEATURE([EMOTION], [generic], [${want_emotion_generic}])
+
+EFL_EVAL_PKGS([EMOTION])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+if test "${want_v4l2}" = "yes"; then
+ AC_CHECK_DECL([V4L2_CAP_VIDEO_CAPTURE],
+ [AC_DEFINE([HAVE_V4L2], [1], [Define to 1 if you have Video4Linux 2 available])],
+ [AC_MSG_ERROR([Video4Linux 2 desired but not found. See --disable-v4l2.])],
+ [#include <linux/videodev2.h>])
+fi
+
+### Check availability
+
+## Generic player
+EMOTION_GENERIC_PLAYER([GENERIC_VLC], [no], [libvlc >= 2.0])
+EFL_ADD_FEATURE([EMOTION], [generic_vlc], [${with_generic_vlc}])
+
+EFL_LIB_END([Emotion])
+#### End of Emotion
+
+#### Ethumb
+EFL_LIB_START([Ethumb])
+
+### Default values
+
+### Additional options to configure
+
+### Checks for programs
+
+## Compatibility layers
+EFL_PLATFORM_DEPEND([ETHUMB], [evil])
+
+### Checks for libraries
+EFL_PLATFORM_DEPEND([EINA], [evil])
+
+EFL_INTERNAL_DEPEND_PKG([ETHUMB], [eina])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB], [eet])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB], [evas])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB], [efl])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB], [eo])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB], [ecore-evas])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB], [ecore-file])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB], [ecore-imf])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB], [edje])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB], [emile])
+
+## modules
+
+EFL_EVAL_PKGS([ETHUMB])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+### Check availability
+
+EFL_LIB_END([Ethumb])
+#### End of Ethumb
+
+#### Ethumb_Client
+EFL_LIB_START([Ethumb_Client])
+
+### Default values
+
+### Additional options to configure
+
+### Checks for programs
+
+## Compatibility layers
+EFL_PLATFORM_DEPEND([ETHUMB_CLIENT], [evil])
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [eina])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [eo])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [efl])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [eet])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [ecore-imf])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [edje])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [eldbus])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [ethumb])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [evas])
+EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [emile])
+
+EFL_EVAL_PKGS([ETHUMB_CLIENT])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+### Check availability
+
+EFL_LIB_END([Ethumb_Client])
+#### End of Ethumb_Client
+
+#### Elua
+AC_ARG_ENABLE([elua],
+ [AS_HELP_STRING([--enable-elua],[enable ELUA support. @<:@default=enabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_elua="yes"
+ else
+ want_elua="no"
+ fi
+ ],
+ [want_elua="yes"])
+
+# turn this into an AC_ARG_ENABLE when bindings are reenabled
+want_lua_bindings="no"
+
+have_elua="yes"
+have_lua_bindings="yes"
+
+if test "${want_lua_old}" = "yes" -o "x$want_elua" = "xno"; then
+ have_elua="no"
+fi
+
+if test "x$have_elua" = "xno" -o "x$want_lua_bindings" = "xno"; then
+ have_lua_bindings="no"
+fi
+
+AM_CONDITIONAL([HAVE_ELUA], [test "x${have_elua}" = "xyes"])
+AM_CONDITIONAL([HAVE_LUA_BINDINGS], [test "x${have_lua_bindings}" = "xyes"])
+
+EFL_LIB_START_OPTIONAL([Elua], [test "${have_elua}" = "yes"])
+
+### Default values
+
+### Additional options to configure
+
+### Checks for programs
+
+## Compatibility layers
+EFL_PLATFORM_DEPEND([ELUA], [evil])
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([ELUA], [eina])
+EFL_INTERNAL_DEPEND_PKG([ELUA], [eo])
+EFL_INTERNAL_DEPEND_PKG([ELUA], [efl])
+EFL_INTERNAL_DEPEND_PKG([ELUA], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ELUA], [ecore_file])
+
+EFL_DEPEND_PKG([ELUA], [LUAJIT], [luajit >= 2.0.0])
+
+EFL_EVAL_PKGS([ELUA])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+### Check availability
+
+EFL_LIB_END_OPTIONAL([Elua])
+#### End of Elua
+
+#### Elocation
+
+EFL_LIB_START([Elocation])
+
+### Default values
+
+### Additional options to configure
+
+### Checks for programs
+
+### Checks for libraries
+EFL_PLATFORM_DEPEND([ELOCATION], [evil])
+EFL_INTERNAL_DEPEND_PKG([ELOCATION], [eina])
+EFL_INTERNAL_DEPEND_PKG([ELOCATION], [eo])
+EFL_INTERNAL_DEPEND_PKG([ELOCATION], [efl])
+EFL_INTERNAL_DEPEND_PKG([ELOCATION], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ELOCATION], [eldbus])
+
+EFL_ADD_LIBS([ELOCATION], [-lm])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+### Check availability
+
+EFL_LIB_END([Elocation])
+#### End of Elocation
+
+
+
+#### Efl_Js
+EFL_LIB_START_OPTIONAL([Efl_Js], [test "x${have_js}" = "xyes"])
+
+### Default values
+
+### Additional options to configure
+
+### Checks for programs
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([EFL_JS], [Eina])
+EFL_INTERNAL_DEPEND_PKG([EFL_JS], [Eo])
+EFL_INTERNAL_DEPEND_PKG([EFL_JS], [Ecore])
+EFL_INTERNAL_DEPEND_PKG([EFL_JS], [Eet])
+EFL_INTERNAL_DEPEND_PKG([EFL_JS], [Ecore_Evas])
+EFL_INTERNAL_DEPEND_PKG([EFL_JS], [Ecore_Con])
+EFL_INTERNAL_DEPEND_PKG([EFL_JS], [Ecore_Audio])
+EFL_INTERNAL_DEPEND_PKG([EFL_JS], [Efl])
+EFL_INTERNAL_DEPEND_PKG([EFL_JS], [Evas])
+EFL_INTERNAL_DEPEND_PKG([EFL_JS], [Edje])
+EFL_INTERNAL_DEPEND_PKG([EFL_JS], [Emotion])
+EFL_INTERNAL_DEPEND_PKG([EFL_JS], [Eldbus])
+EFL_INTERNAL_DEPEND_PKG([EFL_JS], [Emile])
+EFL_INTERNAL_DEPEND_PKG([EFL_JS], [Ethumb_Client])
+EFL_INTERNAL_DEPEND_PKG([EFL_JS], [Eio])
+EFL_INTERNAL_DEPEND_PKG([EFL_JS], [Elementary])
+
+AM_COND_IF([HAVE_NODEJS], [], [ EFL_ADD_LIBS([EFL_JS], [-lv8]) ])
+
+EFL_EVAL_PKGS([EFL_JS])
+
+AM_COND_IF([HAVE_NODEJS], [EFLJS_CXXFLAGS="$EFLJS_CXXFLAGS -DHAVE_NODEJS"], [])
+AM_COND_IF([HAVE_LIBUV], [EFLJS_CXXFLAGS="$EFLJS_CXXFLAGS -DHAVE_LIBUV"], [])
+AM_COND_IF([HAVE_JS], [EFLJS_CXXFLAGS="$EFLJS_CXXFLAGS -DHAVE_JS"], [])
+
+AM_COND_IF([HAVE_V8_CREATE_PARAMS], [EFLJS_CXXFLAGS="$EFLJS_CXXFLAGS -DHAVE_V8_CREATE_PARAMS"], [])
+AM_COND_IF([HAVE_V8_GLOBAL], [EFLJS_CXXFLAGS="$EFLJS_CXXFLAGS -DHAVE_V8_GLOBAL"], [])
+AC_SUBST([EFLJS_CXXFLAGS])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+### Check availability
+
+EFL_LIB_END_OPTIONAL([Efl_Js])
+#### End of Efl_Js
+
+### Add Wayland server library if test is enabled
+if test "x${want_tests}" = "xyes" -a "x${want_wayland}" = "xyes"; then
+ EFL_DEPEND_PKG([ECORE_WAYLAND_SRV], [WAYLAND], [wayland-server >= 1.11.0])
+ EFL_EVAL_PKGS([ECORE_WAYLAND_SRV])
+fi
+
+AC_ARG_ENABLE([always-build-examples],
+ [AS_HELP_STRING([--enable-always-build-examples],[always build examples. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_always_build_examples="yes"
+ else
+ want_always_build_examples="no"
+ fi
+ ],
+ [want_always_build_examples="no"])
+AM_CONDITIONAL([ALWAYS_BUILD_EXAMPLES], [test "${want_always_build_examples}" = "yes"])
+
+#### Ecore_Buffer
+build_ecore_buffer_x11_dri2="no"
+build_ecore_buffer_x11_dri3="no"
+EFL_LIB_START_OPTIONAL([Ecore_Buffer], [test "${want_ecore_buffer}" = "yes"])
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([ECORE_BUFFER], [eina])
+EFL_INTERNAL_DEPEND_PKG([ECORE_BUFFER], [eo])
+EFL_INTERNAL_DEPEND_PKG([ECORE_BUFFER], [efl])
+EFL_INTERNAL_DEPEND_PKG([ECORE_BUFFER], [ecore])
+EFL_DEPEND_PKG([ECORE_BUFFER], [WAYLAND],
+ [wayland-server >= 1.11.0 wayland-client >= 1.11.0])
+
+PKG_CHECK_MODULES([X11_DRI_COMMON],
+ [
+ libtbm >= 1.1.0,
+ libdrm >= 2.4.35,
+ ],
+ [have_x11_dri_common_pkgs="yes"],
+ [have_x11_dri_common_pkgs="no"]
+)
+
+if test "x$have_x11_dri_common_pkgs" = "xyes" ; then
+ EFL_INTERNAL_DEPEND_PKG([ECORE_BUFFER], [ecore_x])
+
+ PKG_CHECK_MODULES([X11_DRI2], [libdri2],
+ [have_x11_dri2_pkgs="yes"],
+ [have_x11_dri2_pkgs="no"])
+ PKG_CHECK_MODULES([X11_DRI3],
+ [
+ xshmfence,
+ xcb,
+ x11-xcb,
+ xcb-sync,
+ xcb-dri3
+ ],
+ [have_x11_dri3_pkgs="yes"],
+ [have_x11_dri3_pkgs="no"])
+fi
+
+if test "x${have_x11_dri2_pkgs}" = "xyes" ; then
+ build_ecore_buffer_x11_dri2="yes"
+ AC_DEFINE(BUILD_ECORE_BUFFER_X11_DRI2, 1, [Support for X11_DRI2 Backend in Ecore_Buffer])
+fi
+
+if test "x${have_x11_dri3_pkgs}" = "xyes" ; then
+ build_ecore_buffer_x11_dri3="yes"
+ AC_DEFINE(BUILD_ECORE_BUFFER_X11_DRI3, 1, [Support for X11_DRI3 Backend in Ecore_Buffer])
+fi
+EFL_EVAL_PKGS([ECORE_BUFFER])
+
+EFL_ADD_FEATURE([ECORE_BUFFER], [shm], ["yes"])
+EFL_ADD_FEATURE([ECORE_BUFFER], [x11_dri2], [${build_ecore_buffer_x11_dri2}])
+EFL_ADD_FEATURE([ECORE_BUFFER], [x11_dri3], [${build_ecore_buffer_x11_dri3}])
+
+EFL_LIB_END_OPTIONAL([Ecore_Buffer])
+
+AM_CONDITIONAL([BUILD_ECORE_BUFFER_X11_DRI2], [test "${build_ecore_buffer_x11_dri2}" = "xyes"])
+AM_CONDITIONAL([BUILD_ECORE_BUFFER_X11_DRI3], [test "${build_ecore_buffer_x11_dri3}" = "xyes"])
+
+#### End of Ecore_Buffer
+
+
+#### Elementary
+
+EFL_LIB_START([Elementary])
+
+### Default values
+
+### Additional options to configure
+
+## Elementary base dir
+
+AC_ARG_WITH([elementary-base-dir],
+ [AS_HELP_STRING([--with-elementary-base-dir=PATH], [specify the subdirectory for all elementary data @<:@default=${elementary_base_dir}@:>@])],
+ [elementary_base_dir=${withval}],
+ [elementary_base_dir=".elementary"])
+
+AC_MSG_NOTICE([ELEMENTARY_BASE_DIR set to ${elementary_base_dir}])
+AC_DEFINE_UNQUOTED([ELEMENTARY_BASE_DIR], ["${elementary_base_dir}"], ["subdirectory for all elementary data"])
+
+## Debug mode
+
+AC_ARG_ENABLE([debug],
+ [AS_HELP_STRING([--enable-debug], [enable elementary debug support. @<:@default=disabled@:>@])],
+ [want_elementary_debug=$enableval],
+ [want_elementary_debug="no"])
+
+ELM_DEBUG_DEF="#undef"
+if test "x$want_elementary_debug" = "xyes"; then
+ AC_DEFINE([HAVE_ELEMENTARY_DEBUG], [1], [Elementary debug.])
+ ELM_DEBUG_DEF="#define"
+fi
+AC_SUBST([ELM_DEBUG_DEF])
+
+## quicklaunch support
+
+AC_ARG_ENABLE([quick-launch],
+ [AS_HELP_STRING([--disable-quick-launch], [disable quick-launch support, @<:@default=detect@:>@])],
+ [want_quicklaunch=$enableval],
+ [want_quicklaunch="auto"])
+
+### Checks for programs
+
+### Checks for libraries
+
+## Compatibility layers
+
+EFL_PLATFORM_DEPEND([ELEMENTARY], [evil])
+
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [eina])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [emile])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [eet])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [eo])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [efl])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [evas])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [ecore])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [ecore-evas])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [ecore-file])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [ecore-input])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [edje])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [ethumb])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [ethumb_client])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [emotion])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [ecore-imf])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [ecore-con])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [eldbus])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [efreet])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [efreet-mime])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [efreet-trash])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [eio])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [elocation])
+
+EFL_OPTIONAL_INTERNAL_DEPEND_PKG([ELEMENTARY], [${want_x11_any}], [ecore_x])
+EFL_OPTIONAL_INTERNAL_DEPEND_PKG([ELEMENTARY], [${want_fb}], [ecore_fb])
+EFL_OPTIONAL_INTERNAL_DEPEND_PKG([ELEMENTARY], [${want_sdl}], [ecore_sdl])
+EFL_OPTIONAL_INTERNAL_DEPEND_PKG([ELEMENTARY], [${want_ecore_evas_gl_cocoa}], [ecore_cocoa])
+EFL_OPTIONAL_INTERNAL_DEPEND_PKG([ELEMENTARY], [${build_ecore_evas_win32}], [ecore_win32])
+EFL_OPTIONAL_INTERNAL_DEPEND_PKG([ELEMENTARY], [${want_drm}], [ecore_drm2])
+EFL_OPTIONAL_INTERNAL_DEPEND_PKG([ELEMENTARY], [${build_ecore_evas_wayland}], [ecore_wl2])
+
+EFL_OPTIONAL_DEPEND_PKG([ELEMENTARY], [${want_elput}], [ELPUT], [xkbcommon])
+EFL_OPTIONAL_DEPEND_PKG([ELEMENTARY], [${want_wayland}], [WAYLAND], [wayland-client])
+
+dnl Special case deps for ecore_drm
+if test "${want_drm}" = "yes"; then
+ EFL_DEPEND_PKG([ELEMENTARY], [DRM], [libdrm])
+ EFL_INTERNAL_DEPEND_PKG([ELEMENTARY], [eeze])
+fi
+
+EFL_ADD_LIBS([ELEMENTARY], [-lm])
+
+ELM_CHECK_BACKEND([X], [${want_x11_any}])
+ELM_CHECK_BACKEND([FB], [${want_fb}])
+ELM_CHECK_BACKEND([SDL], [${want_sdl}])
+ELM_CHECK_BACKEND([Cocoa], [${want_ecore_evas_gl_cocoa}])
+ELM_CHECK_BACKEND([Win32], [${build_ecore_evas_win32}])
+ELM_CHECK_BACKEND([Wl2], [${build_ecore_evas_wayland}])
+ELM_CHECK_BACKEND([DRM], [${want_drm}])
+
+EFL_EVAL_PKGS([ELEMENTARY])
+
+### Checks for header files
+
+ELM_ALLOCA_H_DEF="#undef"
+AC_CHECK_HEADER([alloca.h], [ELM_ALLOCA_H_DEF="#define"])
+AC_SUBST([ELM_ALLOCA_H_DEF])
+
+ELM_LIBINTL_H_DEF="#undef"
+AC_CHECK_HEADER([libintl.h], [ELM_LIBINTL_H_DEF="#define"])
+AC_SUBST([ELM_LIBINTL_H_DEF])
+
+ELM_DIRENT_H_DEF="#undef"
+AC_CHECK_HEADER([dirent.h], [ELM_DIRENT_H_DEF="#define"])
+AC_SUBST([ELM_DIRENT_H_DEF])
+
+AC_CHECK_HEADER([sys/mman.h], [have_mman="yes"], [have_mman="no"])
+if test "x${have_mman}" = "xyes"; then
+ AC_DEFINE([HAVE_MMAN_H], [1], [Have sys/mman.h header file])
+fi
+
+AC_CHECK_HEADERS([locale.h langinfo.h sys/times.h])
+
+case "$host_os" in
+ darwin*)
+ AC_CHECK_HEADERS([crt_externs.h])
+ ;;
+esac
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+requirements_libs_elm="${requirement_socket} ${requirements_libs_elm}"
+
+AC_SUBST([requirements_libs_elm])
+
+AM_CONDITIONAL([BUILD_RUN], [test "x$have_socket" = "xyes"])
+
+# Check if we can build binary with quicklaunch support
+ELM_QUICKLAUNCH
+
+### Checks for library functions
+
+EFL_CHECK_FUNCS([ELEMENTARY], [dlopen])
+
+AC_FUNC_ALLOCA
+
+AC_CHECK_FUNCS([geteuid getuid getpwent])
+
+AC_CHECK_FUNCS([fork clearenv])
+
+build_quicklaunch="no"
+if test "x${ac_cv_func_fork}" = "xyes" -a "x${efl_func_dlopen}" = "xyes"; then
+ build_quicklaunch="yes"
+fi
+
+AM_CONDITIONAL([BUILD_QUICKLAUNCH], [test "x${build_quicklaunch}" = "xyes"])
+EFL_ADD_FEATURE([ELEMENTARY], [quicklaunch], [${build_quicklaunch}])
+
+# environ variable
+
+AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[
+# define _GNU_SOURCE 1
+#include <unistd.h>
+ ]],
+ [[
+extern char **environ;
+ ]])
+ ],
+ [AC_DEFINE([HAVE_ENVIRON], [1], [extern environ exists])])
+
+case "$host_os" in
+ darwin*)
+ AC_DEFINE([environ], [(*_NSGetEnviron())], ["apple doesn't follow POSIX in this case."])
+ ;;
+esac
+
+### Check availability
+
+EFL_LIB_END([Elementary])
+
+#### End of Elementary
+
+
+#### Elementary CXX
+EFL_LIB_START([Elementary_Cxx])
+
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_CXX], [Eina_Cxx])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_CXX], [Eet_Cxx])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_CXX], [Ecore_Cxx])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_CXX], [Ecore])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_CXX], [Eina])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_CXX], [Eo])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_CXX], [Efl])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_CXX], [Elementary])
+
+EFL_EVAL_PKGS([ELEMENTARY_CXX])
+
+EFL_LIB_END([Elementary_Cxx])
+#### End of Ecore CXX
+
+
+#### Elementary_Js
+EFL_LIB_START_OPTIONAL([Elementary_Js], [test "x${have_js}" = "xyes"])
+
+### Default values
+
+### Additional options to configure
+
+### Checks for programs
+
+### Checks for libraries
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_JS], [Eina])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_JS], [Eo])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_JS], [Ecore])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_JS], [Eet])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_JS], [Ecore_Evas])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_JS], [Ecore_Con])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_JS], [Ecore_Audio])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_JS], [Efl])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_JS], [Evas])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_JS], [Edje])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_JS], [Emotion])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_JS], [Eldbus])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_JS], [Emile])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_JS], [Ethumb_Client])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_JS], [Eio])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_JS], [Elementary])
+EFL_INTERNAL_DEPEND_PKG([ELEMENTARY_JS], [Efl_Js])
+
+AM_COND_IF([HAVE_NODEJS], [], [ EFL_ADD_LIBS([ELEMENTARY_JS], [-lv8]) ])
+
+EFL_EVAL_PKGS([ELEMENTARY_JS])
+
+AM_COND_IF([HAVE_NODEJS], [ELEMENTARYJS_CXXFLAGS="$ELEMENTARYJS_CXXFLAGS -DHAVE_NODEJS"], [])
+AM_COND_IF([HAVE_LIBUV], [ELEMENTARYJS_CXXFLAGS="$ELEMENTARYJS_CXXFLAGS -DHAVE_LIBUV"], [])
+AM_COND_IF([HAVE_JS], [ELEMENTARYJS_CXXFLAGS="$ELEMENTARYJS_CXXFLAGS -DHAVE_JS"], [])
+
+AM_COND_IF([HAVE_V8_CREATE_PARAMS], [ELEMENTARYJS_CXXFLAGS="$ELEMENTARYJS_CXXFLAGS -DHAVE_V8_CREATE_PARAMS"], [])
+AM_COND_IF([HAVE_V8_GLOBAL], [ELEMENTARYJS_CXXFLAGS="$ELEMENTARYJS_CXXFLAGS -DHAVE_V8_GLOBAL"], [])
+AC_SUBST([ELEMENTARYJS_CXXFLAGS])
+
+### Checks for header files
+
+### Checks for types
+
+### Checks for structures
+
+### Checks for compiler characteristics
+
+### Checks for linker characteristics
+
+### Checks for library functions
+
+### Check availability
+
+EFL_LIB_END_OPTIONAL([ELEMENTARY_JS])
+#### End of Efl_Js
+
+ELM_EDJE_DEFINES=""
+AC_ARG_ENABLE([cancel-ok],
+ [AS_HELP_STRING([--enable-cancel-ok],[Enable ordering of cancel and ok buttons to be cancel first, then ok instead of ok then cancel. @<:@default=disabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ ELM_EDJE_DEFINES="$ELM_EDJE_DEFINES -DELM_CANCEL_OK=1"
+ fi
+ ],[])
+AC_SUBST(ELM_EDJE_DEFINES)
+
+AC_DEFINE([NEED_RUN_IN_TREE], [1], [Need EFL_RUN_IN_TREE=1 trick])
+
+## Disable warning for OS that have a specifc configuration
+case "$host_os" in
+ mingw*|cygwin*)
+ CFOPT_WARNING=""
+ ;;
+ darwin*)
+ CFOPT_WARNING=""
+ ;;
+esac
+
+AC_CONFIG_FILES([
+Makefile
+data/Makefile
+data/elementary/config/Makefile
+data/elementary/config/default/Makefile
+data/elementary/config/default/base.src
+data/elementary/config/mobile/Makefile
+data/elementary/config/mobile/base.src
+data/elementary/config/standard/Makefile
+data/elementary/config/standard/base.src
+doc/Makefile
+doc/Doxyfile
+doc/previews/Makefile
+doc/widgets/Makefile
+src/Makefile
+src/bindings/mono/efl_mono/efl_libs.cs
+src/bindings/mono/efl_mono/efl_libs.csv
+src/benchmarks/eina/Makefile
+src/benchmarks/eo/Makefile
+src/benchmarks/evas/Makefile
+src/examples/Makefile
+src/lib/eina/eina_config.h
+src/lib/efl/Efl_Config.h
+src/lib/elementary/Elementary_Options.h
+src/scripts/eo/eo_debug
+elm_intro.h
+spec/efl.spec
+pc/evil.pc
+pc/escape.pc
+pc/eina.pc
+pc/eina-cxx.pc
+pc/emile.pc
+pc/eet.pc
+pc/eet-cxx.pc
+pc/eo.pc
+pc/eo-cxx.pc
+pc/eolian.pc
+pc/eolian-cxx.pc
+pc/eina-js.pc
+pc/efl-js.pc
+pc/eolian-js.pc
+pc/eo-js.pc
+pc/efl.pc
+pc/efl-cxx.pc
+pc/efl-mono.pc
+pc/efl-wl.pc
+pc/efl-core.pc
+pc/efl-net.pc
+pc/efl-ui.pc
+pc/evas-fb.pc
+pc/evas-eglfs.pc
+pc/evas-opengl-x11.pc
+pc/evas-opengl-sdl.pc
+pc/evas-opengl-cocoa.pc
+pc/evas-software-buffer.pc
+pc/evas-software-x11.pc
+pc/evas-software-gdi.pc
+pc/evas-software-ddraw.pc
+pc/evas-software-sdl.pc
+pc/evas-wayland-shm.pc
+pc/evas-wayland-egl.pc
+pc/evas-drm.pc
+pc/evas.pc
+pc/evas-cxx.pc
+pc/ecore.pc
+pc/ecore-cxx.pc
+pc/ecore-con.pc
+pc/ecore-ipc.pc
+pc/ecore-file.pc
+pc/ecore-input.pc
+pc/ecore-input-evas.pc
+pc/ecore-cocoa.pc
+pc/ecore-drm.pc
+pc/ecore-fb.pc
+pc/ecore-sdl.pc
+pc/ecore-wayland.pc
+pc/ecore-wl2.pc
+pc/ecore-win32.pc
+pc/ecore-x.pc
+pc/ecore-evas.pc
+pc/ecore-imf.pc
+pc/ecore-imf-evas.pc
+pc/ecore-audio.pc
+pc/ecore-audio-cxx.pc
+pc/ecore-avahi.pc
+pc/ecore-buffer.pc
+pc/ector.pc
+pc/embryo.pc
+pc/eio.pc
+pc/eio-cxx.pc
+pc/eldbus.pc
+pc/efreet.pc
+pc/efreet-mime.pc
+pc/efreet-trash.pc
+pc/eeze.pc
+pc/ephysics.pc
+pc/edje.pc
+pc/edje-cxx.pc
+pc/emotion.pc
+pc/ethumb.pc
+pc/ethumb_client.pc
+pc/elocation.pc
+pc/elua.pc
+pc/elementary.pc
+pc/elementary-cxx.pc
+pc/elput.pc
+pc/ecore-drm2.pc
+dbus-services/org.enlightenment.Ethumb.service
+systemd-services/ethumb.service
+$po_makefile_in
+cmakeconfig/EflConfig.cmake
+cmakeconfig/EflConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/EinaConfig.cmake
+cmakeconfig/EinaConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/EioConfig.cmake
+cmakeconfig/EioConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/EezeConfig.cmake
+cmakeconfig/EezeConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/EoConfig.cmake
+cmakeconfig/EoConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/EolianConfig.cmake
+cmakeconfig/EolianConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/EolianHelper.cmake
+cmakeconfig/EolianCxxConfig.cmake
+cmakeconfig/EolianCxxConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/EinaCxxConfig.cmake
+cmakeconfig/EinaCxxConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/EoCxxConfig.cmake
+cmakeconfig/EoCxxConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/EcoreCxxConfig.cmake
+cmakeconfig/EcoreCxxConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/EvasCxxConfig.cmake
+cmakeconfig/EvasCxxConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/EetCxxConfig.cmake
+cmakeconfig/EetCxxConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/EetConfig.cmake
+cmakeconfig/EetConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/EvasConfig.cmake
+cmakeconfig/EvasConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/EcoreConfig.cmake
+cmakeconfig/EcoreConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/EdjeConfig.cmake
+cmakeconfig/EdjeConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/EldbusConfig.cmake
+cmakeconfig/EldbusConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/EfreetConfig.cmake
+cmakeconfig/EfreetConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/EthumbConfig.cmake
+cmakeconfig/EthumbConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/EthumbClientConfig.cmake
+cmakeconfig/EthumbClientConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/EmotionConfig.cmake
+cmakeconfig/EmotionConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/EluaConfig.cmake
+cmakeconfig/EluaConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/EmileConfig.cmake
+cmakeconfig/EmileConfigVersion.cmake:cmakeconfig/EflConfigVersion.cmake.in
+cmakeconfig/ElementaryConfigVersion.cmake
+cmakeconfig/ElementaryConfig.cmake
+])
+
+AC_OUTPUT
+
+#### Info
+
+case $host_cpu in
+ i*86|x86_64|amd64)
+ EFL_ADD_FEATURE([cpu], [mmx], [${build_cpu_mmx}])
+ EFL_ADD_FEATURE([cpu], [sse3], [${build_cpu_sse3}])
+ ;;
+ *power* | *ppc*)
+ EFL_ADD_FEATURE([cpu], [altivec], [${build_cpu_altivec}])
+ ;;
+ arm*)
+ EFL_ADD_FEATURE([cpu], [neon], [${build_cpu_neon}])
+ ;;
+ aarch64*)
+ EFL_ADD_FEATURE([cpu], [neon], [${build_cpu_neon}])
+ ;;
+esac
+
+if test "${have_linux}" = "yes"; then
+ EFL_ADD_FEATURE([system], [inotify])
+ EFL_ADD_FEATURE([system], [atfile_source])
+elif test "${have_windows}" = "yes"; then
+ EFL_ADD_FEATURE([system], [notify_win32])
+fi
+EFL_ADD_FEATURE([system], [ipv6])
+
+if test "x${efl_have_posix_threads_spinlock}" = "xyes" || test "x${efl_have_osx_spinlock}" = "xyes"; then
+ efl_have_spinlock="yes"
+else
+ efl_have_spinlock="no"
+fi
+EFL_ADD_FEATURE([thread], [spinlocks], [${efl_have_spinlock}])
+EFL_ADD_FEATURE([thread], [barrier], [${efl_have_pthread_barrier}])
+EFL_ADD_FEATURE([thread], [affinity], [${efl_have_setaffinity}])
+EFL_ADD_FEATURE([thread], [setname], [${efl_have_setname}])
+EFL_ADD_FEATURE([thread], [__thread], [${have_thread_specifier}])
+
+echo
+echo
+echo
+echo "------------------------------------------------------------------------"
+echo "$PACKAGE_NAME $PACKAGE_VERSION"
+echo "------------------------------------------------------------------------"
+echo
+
+if test "x${have_windows}" = "xyes" ; then
+ osname="${host_os}(${_efl_windows_version})"
+else
+ osname="${host_os}"
+fi
+
+if test "x${want_egl}" = "xyes" ; then
+ opengl_egl="(EGL)"
+else
+ opengl_egl=""
+fi
+
+echo "Configuration...: ${COLOR_OTHER}profile=${build_profile} os=${osname}${COLOR_RESET}"
+echo " EFL API Set...: ${efl_api}"
+echo " CPU Extensions: ${host_cpu} (${features_cpu})"
+echo " System Feature: ${features_system}"
+echo " Threads.......: ${efl_have_threads} (${features_thread})"
+echo " Cryptography..: ${build_crypto}"
+echo " X11...........: ${with_x11}"
+echo " OpenGL........: ${with_opengl} ${opengl_egl}"
+echo " C++11.........: ${have_cxx11}"
+echo " C#............: ${want_csharp}"
+echo " JavaScript....: ${want_js}"
+echo " JavaScript flg: $EINA_JS_LIBS"
+echo "Eina............: yes (${features_eina} unwind=$have_unwind)"
+echo "Eo..............: yes (${features_eo})"
+echo "Eolian..........: yes (${features_eolian})"
+echo "Emile...........: yes (${features_emile})"
+echo "Eet.............: yes"
+echo "Evas............: yes (${features_evas})"
+echo " Engines.......: ${features_evas_engine}"
+echo " Vg Loaders : ${features_evas_vg_loader}"
+echo " Image Loaders.: ${features_evas_loader}"
+if test "x${have_pixman}" = "xyes" ; then
+echo " Pixman........: ${features_evas_pixman}"
+fi
+echo "Ecore...........: yes (${features_ecore})"
+echo "Ecore_Con.......: yes (${features_ecore_con})"
+echo "Ecore_File......: yes"
+echo "Ecore_IMF.......: yes (${features_ecore_imf})"
+echo "Ecore_X.........: ${with_x11} (${features_ecore_x})"
+echo "Ecore_SDL.......: $want_sdl"
+echo "Ecore_Drm.......: $want_ecore_drm"
+echo "Ecore_Drm2......: $want_drm"
+echo "Ecore_Wayland...: $want_ecore_wayland"
+echo "Ecore_Wl2.......: $want_wayland"
+echo "IVI-Shell.......: $want_wayland_ivi_shell"
+echo "Ecore_Buffer....: $want_ecore_buffer (${features_ecore_buffer})"
+if test "${have_linux}" = "yes"; then
+echo "Ecore_FB........: $want_fb (${features_ecore_fb})"
+elif test "${have_darwin}" = "yes"; then
+echo "Ecore_Cocoa.....: $efl_lib_optional_ecore_cocoa"
+elif test "${have_windows}" = "yes"; then
+echo "Ecore_Win32.....: $have_win32"
+fi
+echo "Ecore_Audio.....: ${efl_lib_optional_ecore_audio} (${features_ecore_audio})"
+echo "Ecore_Avahi.....: yes (${features_ecore_avahi})"
+echo "Ecore_Evas......: yes (${features_ecore_evas})"
+echo "Elput...........: $want_elput (${features_elput})"
+echo "Ector...........: yes"
+echo "Eeze............: ${efl_lib_optional_eeze} (${features_eeze})"
+echo "EPhysics........: ${efl_lib_optional_ephysics}"
+echo "Edje............: yes (${features_edje})"
+echo "Emotion.........: yes (${features_emotion})"
+echo "Ethumb..........: yes"
+echo "Ethumb_Client...: yes"
+echo "Elua............: $have_elua"
+echo "Elementary......: yes (${features_elementary})"
+echo
+
+echo
+
+if test "${build_tests}" = "none"; then
+echo "Tests...........: no"
+elif test "${build_tests}" = "auto"; then
+echo "Tests...........: make check (inexplicitly enabled)"
+elif test "${build_tests}" = "regular"; then
+echo "Tests...........: make check"
+elif test "${build_tests}" = "coverage"; then
+echo "Tests...........: make lcov-check"
+fi
+echo "Examples........: make examples (make install-examples)"
+if test "x${build_doc}" = "xyes"; then
+echo "Documentation...: make doc"
+else
+echo "Documentation...: no"
+fi
+echo "Compilation.....: make (or gmake)"
+echo " CPPFLAGS......: $CPPFLAGS"
+echo " CFLAGS........: $CFLAGS"
+echo " CXXFLAGS......: $CXXFLAGS"
+echo " LDFLAGS.......: $LDFLAGS"
+echo " EFLJS_CXXFLAGS: $EFLJS_CXXFLAGS"
+
+if test "x${with_binary_edje_cc}" != "x"; then
+echo " edje_cc.......: ${with_binary_edje_cc}"
+fi
+
+if test "x${with_binary_eolian_gen}" != "x"; then
+echo " eolian_gen....: ${with_binary_eolian_gen}"
+fi
+
+if test "x${with_binary_eolian_cxx}" != "x"; then
+echo " eolian_cxx....: ${with_binary_eolian_cxx}"
+fi
+
+if test "x${with_binary_elua_bin}" != "x"; then
+echo " elua..........: ${with_binary_elua_bin}"
+fi
+
+echo " "
+echo "Installation....: make install (as root if needed, with 'su' or 'sudo')"
+echo " prefix........: $prefix"
+echo " dbus units....: $dbusservicedir"
+if test "${have_systemd_user_session}" = "yes"; then
+echo " systemd units.: $USER_SESSION_DIR"
+fi
+echo
+
+if test -n "$CFOPT_WARNING"; then
+ echo "_____________________________________________________________________"
+ echo ""
+ echo "==-- WARNING --=="
+ echo ""
+ echo "_____________________________________________________________________"
+ if test "x${want_physics}" = "xno"; then
+ echo "_____________________________________________________________________"
+ echo "You have chosen to disable physics support. This disables lots of"
+ echo "core functionality and is effectively never tested. You are going"
+ echo "to find features that suddenly don't work and as a result cause"
+ echo "a series of breakages. This is simply not tested so you are on"
+ echo "your own in terms of ensuring everything works if you do this"
+ echo "_____________________________________________________________________"
+ fi
+ if test "x${efl_have_threads}" = "xno"; then
+ echo "_____________________________________________________________________"
+ echo "You have disabled threading support. A lot of code is literally"
+ echo "written to need threading. We never test or even build with"
+ echo "threading disabled, so doing this is entering uncharted territory."
+ echo "There is a very good chance things may not compile at all, or if"
+ echo "the do, they will break at runtime in weird and wonderful ways."
+ echo "Highly reconsider what you are doing here, or be prepared to deal"
+ echo "with the fallout yourself."
+ echo "_____________________________________________________________________"
+ fi
+ if test "x${want_fontconfig}" = "xno"; then
+ echo "_____________________________________________________________________"
+ echo "You have disabled fontconfig. This is going to make general font"
+ echo "searching not work, and only some very direct 'load /path/file.ttf'"
+ echo "will work alongside some old-school ttf file path searching. This"
+ echo "is very likely not what you want, so highly reconsider turning"
+ echo "fontconfig off. Having it off will lead to visual problems like"
+ echo "missing text in many UI areas etc."
+ echo "_____________________________________________________________________"
+ fi
+ if test "x${want_fribidi}" = "xno"; then
+ echo "_____________________________________________________________________"
+ echo "Fribidi is used for handling right-to-left text (like Arabic,"
+ echo "Hebrew, Farsi, Persian etc.) and is very likely not a feature"
+ echo "you want to disable unless you know for absolute certain you"
+ echo "will never encounter and have to display such scripts. Also"
+ echo "note that we don't test with fribidi disabled so you may also"
+ echo "trigger code paths with bugs that are never normally used."
+ echo "_____________________________________________________________________"
+ fi
+ if test "x${want_pixman}" = "xyes"; then
+ echo "_____________________________________________________________________"
+ echo "Pixman allows you to replace some rendering paths in Evas with"
+ echo "Pixman. Pixman may or may not be faster (probably slower), and"
+ echo "the rendering paths with Pixman enabled are not tested often so"
+ echo "this may introduce rendering bugs. Do not turn Pixman on unless"
+ echo "you wish to deal with these bugs."
+ echo "_____________________________________________________________________"
+ fi
+ if test "x${have_tile_rotate}" = "xyes"; then
+ echo "_____________________________________________________________________"
+ echo "Tiled rotation code is not tested much, so be aware that you"
+ echo "may introduce bugs by enabling this."
+ echo "_____________________________________________________________________"
+ fi
+ if test "x${want_g_main_loop}" = "xyes"; then
+ echo "_____________________________________________________________________"
+ echo "Using the Glib mainloop as the mainloop in Ecore is not tested"
+ echo "regularly, but the glib mainloop integration (on by default) is."
+ echo "You can use apps that use glib mainloop constructs by default"
+ echo "this way, but the Ecore mainloop is not built on top of glib."
+ echo "You have enabled ecore to be built on top of glib and thus you"
+ echo "may experience bugs that normally would not be there. Be prepared"
+ echo "to fix these if they arise."
+ echo "_____________________________________________________________________"
+ fi
+ if test "x${want_gstreamer}" = "xyes"; then
+ echo "_____________________________________________________________________"
+ echo "Gstreamer 0.10 is no longer supported, and EFL has moved to use"
+ echo "Gstreamer 1.x. The old Gstremaer code is not tested or maintained"
+ echo "and will eventually be removed entirely. Don't enable the old"
+ echo "Gstreamer support unless you want to deal with the issues yourself."
+ echo "_____________________________________________________________________"
+ fi
+ if test "x${want_gstreamer1}" = "xno"; then
+ echo "_____________________________________________________________________"
+ echo "You disabled Gstreamer 1.x support. You likely don't want to do"
+ echo "this as it will heavily limit your media support options and render"
+ echo "some functionality as useless, leading to visible application bugs."
+ echo "_____________________________________________________________________"
+ fi
+ if test "x${want_audio}" = "xno"; then
+ echo "_____________________________________________________________________"
+ echo "You disabled audio support in Ecore. This is not tested and may"
+ echo "Create bugs for you due to it creating untested code paths."
+ echo "Reconsider disabling audio."
+ echo "_____________________________________________________________________"
+ fi
+ if test "x${want_pulseaudio}" = "xno"; then
+ echo "_____________________________________________________________________"
+ echo "The only audio output method supported by Ecore right now on your"
+ echo "system is via Pulseaudio. You have disabled that and likely have"
+ echo "broken a whole bunch of things in the process. Reconsider your"
+ echo "configure options."
+ echo "_____________________________________________________________________"
+ fi
+ if test "x${want_xinput2}" = "xno"; then
+ echo "_____________________________________________________________________"
+ echo "You have disabled xinput2 support. This means a whole lot of input"
+ echo "devices in X11 will not work correctly. You likely do not want to"
+ echo "do this."
+ echo "_____________________________________________________________________"
+ fi
+ if test "x${want_xim}" = "xno"; then
+ echo "_____________________________________________________________________"
+ echo "You disabled XIM input method support. This is the most basic and"
+ echo "core input method protocol supported in X11 and you almost certainly"
+ echo "want the support for it. Input methods allow for complex text input"
+ echo "like for Chinese, Japanese and Korean as well as virtual keyboards"
+ echo "on touch/mobile devices."
+ echo "_____________________________________________________________________"
+ fi
+ if test "x${want_scim}" = "xno"; then
+ echo "_____________________________________________________________________"
+ echo "SCIM is a modern and very common input method framework and you"
+ echo "disabled support for it. You very likely want the support for"
+ echo "complex language input, so please reconsider this. Input methods"
+ echo "allow for complex text input like for Chinese, Japanese and Korean"
+ echo "as well as virtual keyboards on touch/mobile devices."
+ echo "_____________________________________________________________________"
+ fi
+ if test "x${want_libmount}" = "xno"; then
+ echo "_____________________________________________________________________"
+ echo "Libmount has been disabled, and it is used heavily inside Eeze"
+ echo "for support of removable devices etc. and disabling this will"
+ echo "hurt support for Enlightenment and its filemanager."
+ echo "_____________________________________________________________________"
+ fi
+ if test "x${want_multisense}" = "xno"; then
+ echo "_____________________________________________________________________"
+ echo "Multisense has been disabled. This causes Edje audio suport to"
+ echo "Simply not work, and will break applications and libraries"
+ echo "that rely on it with users then reporting bugs."
+ echo "If you want to mute audio, there are APIs and policies to do"
+ echo "that, as opposed to compiling it out."
+ echo "_____________________________________________________________________"
+ fi
+ if test "x${efl_api}" = "xeo"; then
+ echo "_____________________________________________________________________"
+ echo "Using the EO based EFL API only does not work at the moment. We still"
+ echo "have a lot code that depends on the legacy interfaces. We provide"
+ echo "this option for testing once we are able to migrate to the EO based"
+ echo "API."
+ echo "If you are not working on this migration please leave the option set"
+ echo "to both as it will break your build if set to eo."
+ echo "_____________________________________________________________________"
+ fi
+ if test "x${want_libeeze}" = "xno"; then
+ echo "_____________________________________________________________________"
+ echo "Libeeze has been disabled, and it is used heavily for support of"
+ echo "removable devices etc. and disabling this will hurt support for"
+ echo "Enlightenment and its filemanager."
+ echo "_____________________________________________________________________"
+ fi
+ echo "_____________________________________________________________________"
+ echo ""
+ echo "==-- WARNING --=="
+ echo ""
+ echo "_____________________________________________________________________"
+fi
+
+if test "x$prefix" != "x/usr"; then
+ old=
+ path=$dbusservicedir
+ while test "x$old" != "x$path"; do
+ old=$path
+ eval path="\"$path\""
+ done
+ resolved_dbusservicedir=$path
+
+ old=
+ path=$USER_SESSION_DIR
+ while test "x$old" != "x$path"; do
+ old=$path
+ eval path="\"$path\""
+ done
+ resolved_USER_SESSION_DIR=$path
+ base_USER_SESSION_DIR=`echo "$resolved_USER_SESSION_DIR" | sed -e 's:^\(.*\)/systemd/user/*$:\1:g'`
+
+ old=
+ path=$datadir
+ while test "x$old" != "x$path"; do
+ old=$path
+ eval path="\"$path\""
+ done
+ resolved_datadir=$path
+
+ needs_alert_dbus=0
+ if test "$resolved_dbusservicedir" = "${HOME}/.local/share/dbus-1/services"; then
+ AC_MSG_NOTICE([installing DBus services in user local "$resolved_dbusservicedir". Only accessible to user $USER])
+ elif echo "$resolved_dbusservicedir" | grep -e '^/usr/s' >/dev/null 2>/dev/null; then
+ AC_MSG_NOTICE([installing DBus serivces in $resolved_dbusservicedir])
+ else
+ needs_alert_dbus=1
+ fi
+
+ needs_alert_systemd=0
+ if test "$have_systemd_user_session" = "yes"; then
+ if test "$resolved_USER_SESSION_DIR" = "${HOME}/.config/systemd/user"; then
+ AC_MSG_NOTICE([installing systemd services in user local "$resolved_USER_SESSION_DIR". Only accessible to user $USER])
+ elif echo "$resolved_USER_SESSION_DIR" | grep -e '^/usr/s' >/dev/null 2>/dev/null; then
+ AC_MSG_NOTICE([installing systemd serivces in $resolved_USER_SESSION_DIR])
+ else
+ needs_alert_systemd=1
+ fi
+ fi
+
+ if test $needs_alert_dbus -eq 1 -o $needs_alert_systemd -eq 1; then
+ if test $needs_alert_dbus -eq 1 -a $needs_alert_systemd -eq 1; then
+ what_alert="dbus and systemd"
+ elif test $needs_alert_dbus -eq 1; then
+ what_alert="dbus"
+ else
+ what_alert="systemd"
+ fi
+
+ echo ""
+ echo "#-------------------------------------------------------------------#"
+ echo "##==-- ALERT --==##"
+ echo "#-------------------------------------------------------------------#"
+ echo ""
+ echo " Your installation prefix is *NOT* /usr so this means you need"
+ echo "to ensure some files are visible to $what_alert otherwise services cannot"
+ echo "be started when needed. You will need to do the following:"
+ if test $needs_alert_dbus -eq 1; then
+ echo ""
+ echo "System-wide installation:"
+ echo " ln -s ${resolved_dbusservicedir}/org.enlightenment.Ethumb.service /usr/share/dbus-1/services/org.enlightenment.Ethumb.service"
+ echo ""
+ echo " or add \"${resolved_datadir}\" to \$XDG_DATA_DIRS"
+ echo ""
+ echo "User installation:"
+ echo " ln -s ${resolved_dbusservicedir}/org.enlightenment.Ethumb.service ~/.local/share/dbus-1/services/org.enlightenment.Ethumb.service"
+ fi
+ if test $needs_alert_systemd -eq 1; then
+ echo ""
+ echo "System-wide installation:"
+ echo " ln -s ${resolved_USER_SESSION_DIR}/ethumb.service /usr/lib/systemd/user/ethumb.service"
+ echo ""
+ echo " or add \"${base_USER_SESSION_DIR}\" to \$XDG_DATA_DIRS or \$XDG_CONFIG_DIRS"
+ echo ""
+ echo "User installation:"
+ echo " ln -s ${resolved_USER_SESSION_DIR}/ethumb.service ~/.config/systemd/user/ethumb.service"
+ fi
+ echo ""
+ echo "#-------------------------------------------------------------------#"
+ fi
+
+elif test "x${have_darwin}" = "xyes"; then
+ echo ""
+ echo "#-------------------------------------------------------------------#"
+ echo "##==-- ALERT --==##"
+ echo "#-------------------------------------------------------------------#"
+ echo ""
+ echo " If you are running Mac OS X >= 10.11 (starting from El Capitan)"
+ echo " you will have TROUBLE with the prefix you have chosen (/usr)..."
+ echo " Don't make it double and consider to use the default prefix"
+ echo " (/usr/local). This is because of Apple's SIP that provides MAC"
+ echo " and prevents ANYONE modifying the system."
+ echo ""
+ echo "#-------------------------------------------------------------------#"
+fi
+
+if test "x${efl_deprecated_option}" = "xyes"; then
+ echo ""
+ echo "#-------------------------------------------------------------------#"
+ echo "##==-- ALERT --==##"
+ echo "#-------------------------------------------------------------------#"
+ echo ""
+ echo " Your build script is using a deprecated option. It will get b0rken"
+ echo "with the next release of EFL. You better update it now than later."
+ echo ""
+ echo "#-------------------------------------------------------------------#"
+fi
+
+
diff --git a/data/Makefile.am b/data/Makefile.am
new file mode 100644
index 0000000000..b1ba8de91a
--- /dev/null
+++ b/data/Makefile.am
@@ -0,0 +1,308 @@
+MAINTAINERCLEANFILES = Makefile.in
+
+EXTRA_DIST =
+CLEANFILES =
+SUBDIRS =
+
+########################################################################
+# Embryo
+embryofilesdir = $(datadir)/embryo/include
+embryofiles_DATA = embryo/default.inc
+EXTRA_DIST += $(embryofiles_DATA)
+
+########################################################################
+# Evas
+evasfilesdir = $(datadir)/evas
+evasfiles_DATA = evas/checkme
+EXTRA_DIST += $(evasfiles_DATA)
+
+########################################################################
+# Eeze
+eezefilesdir = $(datadir)/eeze
+eezefiles_DATA = eeze/checkme
+EXTRA_DIST += $(eezefiles_DATA)
+
+########################################################################
+# Ecore
+ecorefilesdir = $(datadir)/ecore
+ecorefiles_DATA = ecore/checkme
+EXTRA_DIST += $(ecorefiles_DATA)
+
+########################################################################
+# Ecore_X
+ecore_xfilesdir = $(datadir)/ecore_x
+ecore_xfiles_DATA = ecore_x/checkme
+EXTRA_DIST += $(ecore_xfiles_DATA)
+
+########################################################################
+# Ecore_Imf
+ecoreimffilesdir = $(datadir)/ecore_imf
+ecoreimffiles_DATA = ecore_imf/checkme
+EXTRA_DIST += $(ecoreimffiles_DATA)
+
+########################################################################
+# Efreet
+efreetfilesdir = $(datadir)/efreet
+efreetfiles_DATA = efreet/checkme
+EXTRA_DIST += $(efreetfiles_DATA)
+
+########################################################################
+# Eo
+eogdbdir = $(datadir)/eo/gdb
+eogdb_DATA = eo/eo_gdb.py
+EXTRA_DIST += $(eogdb_DATA)
+
+# Borrowed from gobject
+libeo.so.@VMAJ@.@VMIN@.@VMIC@-gdb.py: eo/libeo-gdb.py.in
+ $(AM_V_GEN) $(SED) -e "s|\@datadir\@|$(datadir)|" $(srcdir)/eo/libeo-gdb.py.in > $(builddir)/libeo.so.@VMAJ@.@VMIN@.@VMIC@-gdb.py
+
+eogdbloaddir = $(datadir)/gdb/auto-load/$(libdir)
+eogdbload_DATA = libeo.so.@VMAJ@.@VMIN@.@VMIC@-gdb.py
+EXTRA_DIST += $(eogdbload_DATA)
+
+CLEANFILES += libeo.so.@VMAJ@.@VMIN@.@VMIC@-gdb.py
+
+EXTRA_DIST += $(eogdb_SCRIPTS) eo/libeo-gdb.py.in
+
+########################################################################
+# Edje
+edjefilesdir = $(datadir)/edje/include
+edjefiles_DATA = edje/include/edje.inc
+EXTRA_DIST += $(edjefiles_DATA)
+
+mimedir = $(datadir)/mime/packages
+mime_DATA = edje/edje.xml
+EXTRA_DIST += $(mime_DATA)
+
+# Helper for people using EDJ
+include ../src/Makefile_Edje_Helper.am
+
+########################################################################
+# Emotion
+emotionfilesdir = $(datadir)/emotion
+emotionfiles_DATA = emotion/checkme
+EXTRA_DIST += $(emotionfiles_DATA)
+
+########################################################################
+# Ethumb
+ethumbfilesdir = $(datadir)/ethumb
+ethumbfiles_DATA = ethumb/checkme
+EXTRA_DIST += $(ethumbfiles_DATA)
+
+ethumbframesdir = $(datadir)/ethumb/frames
+ethumbframes_DATA = ethumb/frames/default.edj
+CLEANFILES += ethumb/frames/default.edj
+
+ethumb/frames/default.edj: ethumb/frames/default.edc
+ $(AM_V_EDJ) \
+ $(MKDIR_P) ethumb/frames/; \
+ $(EDJE_CC) $(EDJE_CC_FLAGS) -id $(srcdir)/ethumb/frames/ $< $@
+
+
+EXTRA_DIST += \
+ethumb/frames/default.edc \
+ethumb/frames/border-0.jpg
+
+########################################################################
+# Ethumb_Client
+ethumb_clientfilesdir = $(datadir)/ethumb_client
+ethumb_clientfiles_DATA = ethumb_client/checkme
+EXTRA_DIST += $(ethumb_clientfiles_DATA)
+
+########################################################################
+# Elua
+eluafilesdir = $(datadir)/elua
+eluafiles_DATA = elua/checkme
+EXTRA_DIST += $(eluafiles_DATA)
+
+#######################################################################
+# Elementary
+
+# themes
+
+SUBDIRS += elementary/config
+
+elementaryfilesdir = $(datadir)/elementary/themes
+elementaryfiles_DATA = elementary/themes/default.edj
+CLEANFILES += elementary/themes/default.edj
+
+include elementary/themes/Makefile.am
+
+elementary/themes/default.edj: elementary/themes/default.edc $(elementary_themes_files) $(efl_ui_themes_files) $(elementary_fdo_files) $(top_builddir)/src/bin/edje/edje_cc${EXEEXT}
+ $(AM_V_EDJ) \
+ $(MKDIR_P) elementary/themes/; \
+ $(EDJE_CC) $(EDJE_CC_FLAGS) $(EDJE_CC_ELM_FLAGS) -N $< $@
+
+# desktop files
+
+elementarydesktopdir = $(datadir)/applications
+elementarydesktop_DATA = elementary/desktop/elementary_test.desktop elementary/desktop/elementary_config.desktop
+
+elementaryicondir = $(datadir)/icons/hicolor/128x128/apps
+elementaryicon_DATA = elementary/desktop/elementary.png
+
+EXTRA_DIST += $(elementarydesktop_DATA) $(elementaryicon_DATA)
+
+# fdo icon theme
+
+elementaryfdodir = $(datadir)/icons/Enlightenment-X/
+elementaryfdo_DATA = elementary/themes/fdo/index.theme elementary/themes/fdo/README
+
+EXTRA_DIST += $(elementaryfdo_DATA)
+
+elementaryfdo_actions_128dir = $(datadir)/icons/Enlightenment-X/actions/128
+elementaryfdo_actions_128_DATA = $(elementary_fdo_actions_128_files)
+
+elementaryfdo_categories_16dir = $(datadir)/icons/Enlightenment-X/categories/16
+elementaryfdo_categories_16_DATA = $(elementary_fdo_categories_16_files)
+
+elementaryfdo_categories_128dir = $(datadir)/icons/Enlightenment-X/categories/128
+elementaryfdo_categories_128_DATA = $(elementary_fdo_categories_128_files)
+
+elementaryfdo_emblems_96dir = $(datadir)/icons/Enlightenment-X/emblems/96
+elementaryfdo_emblems_96_DATA = $(elementary_fdo_emblems_96_files)
+
+elementaryfdo_places_16dir = $(datadir)/icons/Enlightenment-X/places/16
+elementaryfdo_places_16_DATA = $(elementary_fdo_places_16_files)
+
+elementaryfdo_places_128dir = $(datadir)/icons/Enlightenment-X/places/128
+elementaryfdo_places_128_DATA = $(elementary_fdo_places_128_files)
+
+elementaryfdo_status_128dir = $(datadir)/icons/Enlightenment-X/status/128
+elementaryfdo_status_128_DATA = $(elementary_fdo_status_128_files)
+
+elementaryfdo_devices_128dir = $(datadir)/icons/Enlightenment-X/devices/128
+elementaryfdo_devices_128_DATA = $(elementary_fdo_devices_128_files)
+
+elementaryfdo_apps_64dir = $(datadir)/icons/Enlightenment-X/apps/64
+elementaryfdo_apps_64_DATA = $(elementary_fdo_apps_64_files)
+
+elementaryfdo_intl_128dir = $(datadir)/icons/Enlightenment-X/intl/128
+elementaryfdo_intl_128_DATA = $(elementary_fdo_intl_128_files)
+
+elementaryfdo_mimetypes_16dir = $(datadir)/icons/Enlightenment-X/mimetypes/16
+elementaryfdo_mimetypes_16_DATA = $(elementary_fdo_mimetypes_16_files)
+
+elementaryfdo_mimetypes_128dir = $(datadir)/icons/Enlightenment-X/mimetypes/128
+elementaryfdo_mimetypes_128_DATA = $(elementary_fdo_mimetypes_128_files)
+
+# edje_externals
+
+elementaryedje_externalsdir = $(datadir)/elementary/edje_externals
+elementaryedje_externals_DATA = elementary/edje_externals/icons.edj
+CLEANFILES += $(elementaryedje_externals_DATA)
+
+include elementary/edje_externals/Makefile.am
+
+elementary/edje_externals/icons.edj: elementary/edje_externals/icons.edc
+ $(AM_V_EDJ) \
+ $(MKDIR_P) elementary/edje_externals/; \
+ $(EDJE_CC) $(EDJE_CC_FLAGS) $< $@
+
+# images
+
+include elementary/images/Makefile.am
+
+elementaryimagesdir = $(datadir)/elementary/images
+elementaryimages_DATA = $(elementary_images_files)
+
+elementaryimages_glayerdir = $(datadir)/elementary/images/g_layer
+elementaryimages_glayer_DATA = $(elementary_images_glayer_files)
+
+EXTRA_DIST += $(elementary_images_files) $(elementary_images_glayer_files)
+
+# objects
+
+include ../Makefile_Elm_Helpers.am
+
+elementaryobjectsdir = $(datadir)/elementary/objects
+elementaryobjects_DATA = \
+elementary/objects/test.edj \
+elementary/objects/test_external.edj \
+elementary/objects/test_masking.edj \
+elementary/objects/multip.edj \
+elementary/objects/cursors.edj \
+elementary/objects/font_preview.edj \
+elementary/objects/postit_ent.edj \
+elementary/objects/multibuttonentry.edj \
+elementary/objects/test_pager.edj \
+elementary/objects/test_prefs.edj \
+elementary/objects/test_prefs.epb \
+elementary/objects/test_focus_style.edj \
+elementary/objects/test_tooltip.edj \
+elementary/objects/test_tab_pager.edj \
+$(NULL)
+
+CLEANFILES += $(elementaryobjects_DATA)
+
+include elementary/objects/Makefile.am
+
+elementary/objects/test.edj: elementary/objects/test.edc
+ $(AM_V_EDJ) \
+ $(MKDIR_P) elementary/objects/; \
+ $(EDJE_CC) $(EDJE_CC_FLAGS) $< $@
+
+elementary/objects/test_external.edj: elementary/objects/test_external.edc
+ $(AM_V_EDJ) \
+ $(MKDIR_P) elementary/objects/; \
+ $(EDJE_CC) $(EDJE_CC_FLAGS) $< $@
+
+elementary/objects/test_masking.edj: elementary/objects/test_masking.edc
+ $(AM_V_EDJ) \
+ $(MKDIR_P) elementary/objects/; \
+ $(EDJE_CC) $(EDJE_CC_FLAGS) $< $@
+
+elementary/objects/multip.edj: elementary/objects/multip.edc
+ $(AM_V_EDJ) \
+ $(MKDIR_P) elementary/objects/; \
+ $(EDJE_CC) $(EDJE_CC_FLAGS) $< $@
+
+elementary/objects/cursors.edj: elementary/objects/cursors.edc
+ $(AM_V_EDJ) \
+ $(MKDIR_P) elementary/objects/; \
+ $(EDJE_CC) $(EDJE_CC_FLAGS) $< $@
+
+elementary/objects/font_preview.edj: elementary/objects/font_preview.edc
+ $(AM_V_EDJ) \
+ $(MKDIR_P) elementary/objects/; \
+ $(EDJE_CC) $(EDJE_CC_FLAGS) $< $@
+
+elementary/objects/postit_ent.edj: elementary/objects/postit_ent.edc
+ $(AM_V_EDJ) \
+ $(MKDIR_P) elementary/objects/; \
+ $(EDJE_CC) $(EDJE_CC_FLAGS) $< $@
+
+elementary/objects/multibuttonentry.edj: elementary/objects/multibuttonentry.edc
+ $(AM_V_EDJ) \
+ $(MKDIR_P) elementary/objects/; \
+ $(EDJE_CC) $(EDJE_CC_FLAGS) $< $@
+
+elementary/objects/test_pager.edj: elementary/objects/test_pager.edc
+ $(AM_V_EDJ) \
+ $(MKDIR_P) elementary/objects/; \
+ $(EDJE_CC) $(EDJE_CC_FLAGS) $< $@
+
+elementary/objects/test_prefs.edj: elementary/objects/test_prefs.edc
+ $(AM_V_EDJ) \
+ $(MKDIR_P) elementary/objects/; \
+ $(EDJE_CC) $(EDJE_CC_FLAGS) $< $@
+
+elementary/objects/test_focus_style.edj: elementary/objects/test_focus_style.edc
+ $(AM_V_EDJ) \
+ $(MKDIR_P) elementary/objects/; \
+ $(EDJE_CC) $(EDJE_CC_FLAGS) -id $(top_srcdir)/data/elementary/themes/img $< $@
+
+elementary/objects/test_tooltip.edj: elementary/objects/test_tooltip.edc
+ $(AM_V_EDJ) \
+ $(MKDIR_P) elementary/objects/; \
+ $(EDJE_CC) $(EDJE_CC_FLAGS) -id $(top_srcdir)/data/elementary/themes/img $< $@
+
+elementary/objects/test_prefs.epb: elementary/objects/test_prefs.epc
+ $(AM_V_EPB) \
+ $(MKDIR_P) elementary/objects/; \
+ $(ELM_PREFS_CC) $(ELM_PREFS_FLAGS) $< $@
+
+elementary/objects/test_tab_pager.edj: elementary/objects/test_tab_pager.edc
+ $(AM_V_EDJ) \
+ $(MKDIR_P) elementary/objects/; \
+ $(EDJE_CC) $(EDJE_CC_FLAGS) $< $@
diff --git a/data/elementary/config/Makefile.am b/data/elementary/config/Makefile.am
new file mode 100644
index 0000000000..692651353e
--- /dev/null
+++ b/data/elementary/config/Makefile.am
@@ -0,0 +1,18 @@
+MAINTAINERCLEANFILES = Makefile.in
+SUBDIRS = default standard mobile
+
+include ../../../src/Makefile_Eet_Helper.am
+
+EXTRA_DIST = profile.src
+
+filesdir = $(datadir)/elementary/config
+
+files_DATA = profile.cfg
+
+%.cfg: %.src
+ $(AM_V_EET) \
+ $(MKDIR_P) $(top_builddir)/data/elementary/config/; \
+ $(EET) -i $(top_builddir)/data/elementary/config/$@ config $< 0
+
+clean-local:
+ rm -rf *.cfg *~
diff --git a/data/elementary/config/mobile/Makefile.am b/data/elementary/config/mobile/Makefile.am
new file mode 100644
index 0000000000..2c6c9e2ef7
--- /dev/null
+++ b/data/elementary/config/mobile/Makefile.am
@@ -0,0 +1,22 @@
+MAINTAINERCLEANFILES = Makefile.in
+
+include ../../../../src/Makefile_Eet_Helper.am
+
+EXTRA_DIST = \
+ profile.desktop \
+ icon.png \
+ base.src.in
+
+filesdir = $(datadir)/elementary/config/mobile
+files_DATA = \
+ profile.desktop \
+ icon.png \
+ base.cfg
+
+%.cfg: %.src
+ $(AM_V_EET) \
+ $(MKDIR_P) $(top_builddir)/data/elementary/config/; \
+ $(EET) -e $(top_builddir)/data/elementary/config/mobile/$@ config $< 1
+
+clean-local:
+ rm -rf *.cfg *~
diff --git a/data/elementary/config/standard/Makefile.am b/data/elementary/config/standard/Makefile.am
new file mode 100644
index 0000000000..7ab55d0f80
--- /dev/null
+++ b/data/elementary/config/standard/Makefile.am
@@ -0,0 +1,23 @@
+MAINTAINERCLEANFILES = Makefile.in
+
+include ../../../../src/Makefile_Eet_Helper.am
+
+EXTRA_DIST = \
+ profile.desktop \
+ icon.png \
+ base.src.in
+
+filesdir = $(datadir)/elementary/config/standard
+files_DATA = \
+ profile.desktop \
+ icon.png \
+ base.cfg
+
+%.cfg: %.src
+ $(AM_V_EET) \
+ $(MKDIR_P) $(top_builddir)/data/elementary/config/standard/; \
+ $(EET) -e $(top_builddir)/data/elementary/config/standard/$@ config $< 1
+
+clean-local:
+ rm -rf *.cfg *~
+
diff --git a/data/elementary/desktop/Makefile.am b/data/elementary/desktop/Makefile.am
new file mode 100644
index 0000000000..19d9f8c777
--- /dev/null
+++ b/data/elementary/desktop/Makefile.am
@@ -0,0 +1,10 @@
+AUTOMAKE_OPTIONS = 1.4 foreign
+MAINTAINERCLEANFILES = Makefile.in
+
+desktopdir = $(datadir)/applications
+desktop_DATA = elementary_test.desktop elementary_config.desktop
+
+icondir = $(datadir)/icons/hicolor/128x128/apps
+icon_DATA = elementary.png
+
+EXTRA_DIST = $(desktop_DATA) $(icon_DATA)
diff --git a/data/elementary/edje_externals/Makefile.am b/data/elementary/edje_externals/Makefile.am
new file mode 100644
index 0000000000..7042035629
--- /dev/null
+++ b/data/elementary/edje_externals/Makefile.am
@@ -0,0 +1,26 @@
+EDJE_CC_FLAGS += -id $(top_srcdir)/data/elementary/edje_externals -fd $(top_srcdir)/data/elementary/edje_externals
+
+EXTRA_DIST += \
+ elementary/edje_externals/icons.edc \
+ elementary/edje_externals/ico_anchorblock.png \
+ elementary/edje_externals/ico_anchorview.png \
+ elementary/edje_externals/ico_bubble.png \
+ elementary/edje_externals/ico_button.png \
+ elementary/edje_externals/ico_check.png \
+ elementary/edje_externals/ico_clock.png \
+ elementary/edje_externals/ico_fileselector.png \
+ elementary/edje_externals/ico_fileselector_button.png \
+ elementary/edje_externals/ico_genlist.png \
+ elementary/edje_externals/ico_hoversel.png \
+ elementary/edje_externals/ico_list.png \
+ elementary/edje_externals/ico_map.png \
+ elementary/edje_externals/ico_notepad.png \
+ elementary/edje_externals/ico_photocam.png \
+ elementary/edje_externals/ico_progressbar.png \
+ elementary/edje_externals/ico_radio.png \
+ elementary/edje_externals/ico_scrolled_entry.png \
+ elementary/edje_externals/ico_slider.png \
+ elementary/edje_externals/ico_slideshow.png \
+ elementary/edje_externals/ico_spinner.png \
+ elementary/edje_externals/ico_thumb.png \
+ elementary/edje_externals/ico_toolbar.png
diff --git a/data/elementary/images/Makefile.am b/data/elementary/images/Makefile.am
new file mode 100644
index 0000000000..6f028257cb
--- /dev/null
+++ b/data/elementary/images/Makefile.am
@@ -0,0 +1,93 @@
+elementary_images_files = \
+ elementary/images/insanely_huge_test_image.jpg \
+ elementary/images/panel_01.jpg \
+ elementary/images/plant_01.jpg \
+ elementary/images/pol_shadow.png \
+ elementary/images/pol_sky.png \
+ elementary/images/pol_twofish.png \
+ elementary/images/rock_01.jpg \
+ elementary/images/rock_02.jpg \
+ elementary/images/sky_01.jpg \
+ elementary/images/sky_02.jpg \
+ elementary/images/sky_03.jpg \
+ elementary/images/sky_04.jpg \
+ elementary/images/wood_01.jpg \
+ elementary/images/logo.png \
+ elementary/images/logo_small.png \
+ elementary/images/animated_logo.gif \
+ elementary/images/fire.gif \
+ elementary/images/parking.png \
+ elementary/images/icon_00.png \
+ elementary/images/icon_01.png \
+ elementary/images/icon_02.png \
+ elementary/images/icon_03.png \
+ elementary/images/icon_04.png \
+ elementary/images/icon_05.png \
+ elementary/images/icon_06.png \
+ elementary/images/icon_07.png \
+ elementary/images/icon_08.png \
+ elementary/images/icon_09.png \
+ elementary/images/icon_10.png \
+ elementary/images/icon_11.png \
+ elementary/images/icon_12.png \
+ elementary/images/icon_13.png \
+ elementary/images/icon_14.png \
+ elementary/images/icon_15.png \
+ elementary/images/icon_16.png \
+ elementary/images/icon_17.png \
+ elementary/images/icon_18.png \
+ elementary/images/icon_19.png \
+ elementary/images/icon_20.png \
+ elementary/images/icon_21.png \
+ elementary/images/icon_22.png \
+ elementary/images/icon_23.png \
+ elementary/images/icon_right_arrow.png \
+ elementary/images/bubble.png \
+ elementary/images/bubble_sh.png \
+ elementary/images/mystrale.jpg \
+ elementary/images/mystrale_2.jpg \
+ elementary/images/twofish.jpg \
+ elementary/images/pm_fill.png \
+ elementary/images/pt.png \
+ elementary/images/earth_normal.png \
+ elementary/images/space.png \
+ elementary/images/image_items.eet
+
+elementary_images_glayer_files = \
+ elementary/images/g_layer/double_tap_1.png \
+ elementary/images/g_layer/line_1.png \
+ elementary/images/g_layer/momentum_1.png \
+ elementary/images/g_layer/tap_5.png \
+ elementary/images/g_layer/double_tap_2.png \
+ elementary/images/g_layer/line_2.png \
+ elementary/images/g_layer/momentum_2.png \
+ elementary/images/g_layer/triple_tap_1.png \
+ elementary/images/g_layer/double_tap_3.png \
+ elementary/images/g_layer/line_3.png \
+ elementary/images/g_layer/momentum_3.png \
+ elementary/images/g_layer/triple_tap_2.png \
+ elementary/images/g_layer/double_tap_4.png \
+ elementary/images/g_layer/line_4.png \
+ elementary/images/g_layer/momentum_4.png \
+ elementary/images/g_layer/triple_tap_3.png \
+ elementary/images/g_layer/double_tap_5.png \
+ elementary/images/g_layer/line_5.png \
+ elementary/images/g_layer/momentum_5.png \
+ elementary/images/g_layer/triple_tap_4.png \
+ elementary/images/g_layer/flick_1.png \
+ elementary/images/g_layer/long_tap_1.png \
+ elementary/images/g_layer/rotate_1.png \
+ elementary/images/g_layer/triple_tap_5.png \
+ elementary/images/g_layer/flick_2.png \
+ elementary/images/g_layer/long_tap_2.png \
+ elementary/images/g_layer/tap_1.png \
+ elementary/images/g_layer/zoom_1.png \
+ elementary/images/g_layer/flick_3.png \
+ elementary/images/g_layer/long_tap_3.png \
+ elementary/images/g_layer/tap_2.png \
+ elementary/images/g_layer/flick_4.png \
+ elementary/images/g_layer/long_tap_4.png \
+ elementary/images/g_layer/tap_3.png \
+ elementary/images/g_layer/flick_5.png \
+ elementary/images/g_layer/long_tap_5.png \
+ elementary/images/g_layer/tap_4.png
diff --git a/data/elementary/objects/Makefile.am b/data/elementary/objects/Makefile.am
new file mode 100644
index 0000000000..c1325b8865
--- /dev/null
+++ b/data/elementary/objects/Makefile.am
@@ -0,0 +1,29 @@
+EDJE_CC_FLAGS += -id $(top_srcdir)/data/elementary/objects -fd $(top_srcdir)/data/elementary/objects
+
+EXTRA_DIST += \
+elementary/objects/test.edc \
+elementary/objects/test_external.edc \
+elementary/objects/test_masking.edc \
+elementary/objects/test_pager.edc \
+elementary/objects/test_prefs.edc \
+elementary/objects/test_prefs.epc \
+elementary/objects/test_tab_pager.edc \
+elementary/objects/multip.edc \
+elementary/objects/cursors.edc \
+elementary/objects/font_preview.edc \
+elementary/objects/postit_ent.edc \
+elementary/objects/multibuttonentry.edc \
+elementary/objects/test_focus_style.edc \
+elementary/objects/test_tooltip.edc \
+elementary/objects/over.png \
+elementary/objects/under.png \
+elementary/objects/sky.jpg \
+elementary/objects/clo.png \
+elementary/objects/cross.png \
+elementary/objects/border.png \
+elementary/objects/border2.png \
+elementary/objects/border3.png \
+elementary/objects/border4.png \
+elementary/objects/border5.png \
+elementary/objects/border6.png \
+elementary/objects/roundedrect.png
diff --git a/data/elementary/themes/Makefile.am b/data/elementary/themes/Makefile.am
new file mode 100644
index 0000000000..dc31d80805
--- /dev/null
+++ b/data/elementary/themes/Makefile.am
@@ -0,0 +1,1528 @@
+EDJE_CC_ELM_FLAGS = \
+@ELM_EDJE_DEFINES@ \
+-id $(top_srcdir)/data/elementary/themes/img \
+-id $(top_srcdir)/data/elementary/themes/fdo \
+-fd $(top_srcdir)/data/elementary/themes/fnt \
+-sd $(top_srcdir)/data/elementary/themes/snd \
+-l $(top_srcdir)/COPYING \
+-a $(top_srcdir)/AUTHORS \
+-fastcomp
+
+
+elementary_themes_files = \
+elementary/themes/default.edc \
+\
+elementary/themes/colorclasses.edc \
+elementary/themes/fonts.edc \
+elementary/themes/macros.edc \
+\
+elementary/themes/edc/about-e.edc \
+elementary/themes/edc/about-theme.edc \
+elementary/themes/edc/appmenu.edc \
+elementary/themes/edc/background.edc \
+elementary/themes/edc/backlight.edc \
+elementary/themes/edc/battery.edc \
+elementary/themes/edc/batman.edc \
+elementary/themes/edc/bluez4.edc \
+elementary/themes/edc/border.edc \
+elementary/themes/edc/border-icons.edc \
+elementary/themes/edc/bryce.edc \
+elementary/themes/edc/bryce_editor.edc \
+elementary/themes/edc/button.edc \
+elementary/themes/edc/check.edc \
+elementary/themes/edc/clock.edc \
+elementary/themes/edc/colors.edc \
+elementary/themes/edc/colorwell.edc \
+elementary/themes/edc/comp.edc \
+elementary/themes/edc/comp_compat.edc \
+elementary/themes/edc/comp_effects.edc \
+elementary/themes/edc/conf.edc \
+elementary/themes/edc/connman.edc \
+elementary/themes/edc/cpufreq.edc \
+elementary/themes/edc/cpumonitor.edc \
+elementary/themes/edc/cslider.edc \
+elementary/themes/edc/desklock.edc \
+elementary/themes/edc/deskmirror.edc \
+elementary/themes/edc/deskpreview.edc \
+elementary/themes/edc/dialog.edc \
+elementary/themes/edc/edgebindings.edc \
+elementary/themes/edc/entry.edc \
+elementary/themes/edc/evrything.edc \
+elementary/themes/edc/fileman.edc \
+elementary/themes/edc/fontpreview.edc \
+elementary/themes/edc/frame.edc \
+elementary/themes/edc/gadman.edc \
+elementary/themes/edc/ibar-ibox.edc \
+elementary/themes/edc/icons.edc \
+elementary/themes/edc/ilist.edc \
+elementary/themes/edc/illume.edc \
+elementary/themes/edc/init.edc \
+elementary/themes/edc/label.edc \
+elementary/themes/edc/luncher.edc \
+elementary/themes/edc/memusage.edc \
+elementary/themes/edc/menu.edc \
+elementary/themes/edc/mixer.edc \
+elementary/themes/edc/music_control.edc \
+elementary/themes/edc/netstatus.edc \
+elementary/themes/edc/notification.edc \
+elementary/themes/edc/packagekit.edc \
+elementary/themes/edc/pager.edc \
+elementary/themes/edc/pager16.edc \
+elementary/themes/edc/pointer.edc \
+elementary/themes/edc/preview.edc \
+elementary/themes/edc/radio.edc \
+elementary/themes/edc/randr.edc \
+elementary/themes/edc/scrollframe.edc \
+elementary/themes/edc/shelf.edc \
+elementary/themes/edc/slider.edc \
+elementary/themes/edc/spectrum.edc \
+elementary/themes/edc/start.edc \
+elementary/themes/edc/syscon.edc \
+elementary/themes/edc/sys.edc \
+elementary/themes/edc/systray.edc \
+elementary/themes/edc/tasks.edc \
+elementary/themes/edc/temperature.edc \
+elementary/themes/edc/textblock.edc \
+elementary/themes/edc/time.edc \
+elementary/themes/edc/toolbar.edc \
+elementary/themes/edc/transitions.edc \
+elementary/themes/edc/wallpaper.edc \
+elementary/themes/edc/winlist.edc \
+elementary/themes/edc/wireless.edc \
+elementary/themes/edc/wizard.edc \
+elementary/themes/edc/xkbswitch.edc \
+\
+elementary/themes/edc/elm/access.edc \
+elementary/themes/edc/elm/actionslider.edc \
+elementary/themes/edc/elm/bg.edc \
+elementary/themes/edc/elm/border.edc \
+elementary/themes/edc/elm/bubble.edc \
+elementary/themes/edc/elm/button.edc \
+elementary/themes/edc/elm/calendar.edc \
+elementary/themes/edc/elm/check.edc \
+elementary/themes/edc/elm/clock.edc \
+elementary/themes/edc/elm/code.edc \
+elementary/themes/edc/elm/colorsel.edc \
+elementary/themes/edc/elm/colorclass.edc \
+elementary/themes/edc/elm/conform.edc \
+elementary/themes/edc/elm/ctxpopup.edc \
+elementary/themes/edc/elm/cursor.edc \
+elementary/themes/edc/elm/dayselector.edc \
+elementary/themes/edc/elm/diskselector.edc \
+elementary/themes/edc/elm/entry.edc \
+elementary/themes/edc/elm/ews.edc \
+elementary/themes/edc/elm/fileselector.edc \
+elementary/themes/edc/elm/flipselector.edc \
+elementary/themes/edc/elm/focus.edc \
+elementary/themes/edc/elm/frame.edc \
+elementary/themes/edc/elm/gengrid.edc \
+elementary/themes/edc/elm/genlist.edc \
+elementary/themes/edc/elm/hover.edc \
+elementary/themes/edc/elm/icon.edc \
+elementary/themes/edc/elm/icon_fdo.edc \
+elementary/themes/edc/elm/index.edc \
+elementary/themes/edc/elm/inwin.edc \
+elementary/themes/edc/elm/label.edc \
+elementary/themes/edc/elm/layout.edc \
+elementary/themes/edc/elm/list.edc \
+elementary/themes/edc/elm/map.edc \
+elementary/themes/edc/elm/menu.edc \
+elementary/themes/edc/elm/multibuttonentry.edc \
+elementary/themes/edc/elm/naviframe.edc \
+elementary/themes/edc/elm/notify.edc \
+elementary/themes/edc/elm/panel.edc \
+elementary/themes/edc/elm/panes.edc \
+elementary/themes/edc/elm/photocam.edc \
+elementary/themes/edc/elm/photo.edc \
+elementary/themes/edc/elm/player.edc \
+elementary/themes/edc/elm/pointer.edc \
+elementary/themes/edc/elm/popup.edc \
+elementary/themes/edc/elm/progress.edc \
+elementary/themes/edc/elm/radio.edc \
+elementary/themes/edc/elm/scroller.edc \
+elementary/themes/edc/elm/segment_control.edc \
+elementary/themes/edc/elm/separator.edc \
+elementary/themes/edc/elm/slider.edc \
+elementary/themes/edc/elm/slideshow.edc \
+elementary/themes/edc/elm/spinner.edc \
+elementary/themes/edc/elm/textpath.edc \
+elementary/themes/edc/elm/thumb.edc \
+elementary/themes/edc/elm/toolbar.edc \
+elementary/themes/edc/elm/tooltip.edc \
+elementary/themes/edc/elm/uiclock.edc \
+elementary/themes/edc/elm/video.edc \
+elementary/themes/edc/elm/win.edc \
+\
+elementary/themes/edc/O/efm_icons.edc \
+elementary/themes/edc/O/icons.edc \
+\
+elementary/themes/img/access_glow.png \
+elementary/themes/img/add_glow_small.png \
+elementary/themes/img/ball_small_glow_intense.png \
+elementary/themes/img/ball_small_glow.png \
+elementary/themes/img/bar_shine.png \
+elementary/themes/img/bat_base.png \
+elementary/themes/img/bat_bottom0.png \
+elementary/themes/img/bat_bottom1.png \
+elementary/themes/img/bat_shadow.png \
+elementary/themes/img/bat_shine.png \
+elementary/themes/img/bat_top0.png \
+elementary/themes/img/bat_top1.png \
+elementary/themes/img/batman_overlay.png \
+elementary/themes/img/bevel_curved_horiz_out.png \
+elementary/themes/img/bevel_curved_vert_out.png \
+elementary/themes/img/bevel_dark_in.png \
+elementary/themes/img/bevel_dark_out.png \
+elementary/themes/img/bevel_horiz_out.png \
+elementary/themes/img/bevel_in.png \
+elementary/themes/img/bevel_out.png \
+elementary/themes/img/bg_glow_in.png \
+elementary/themes/img/bg_radgrad.png \
+elementary/themes/img/big_arrow_down.png \
+elementary/themes/img/big_arrow_down_shadow.png \
+elementary/themes/img/big_arrow_left.png \
+elementary/themes/img/big_arrow_left_shadow.png \
+elementary/themes/img/big_arrow_right.png \
+elementary/themes/img/big_arrow_right_shadow.png \
+elementary/themes/img/big_arrow_up.png \
+elementary/themes/img/big_arrow_up_shadow.png \
+elementary/themes/img/box_glow.png \
+elementary/themes/img/box_outline.png \
+elementary/themes/img/bt_base.png \
+elementary/themes/img/bt_sig_1.png \
+elementary/themes/img/bt_sig_2.png \
+elementary/themes/img/btn_round_0.png \
+elementary/themes/img/btn_round_1.png \
+elementary/themes/img/btn_round_2.png \
+elementary/themes/img/bub_base_b0.png \
+elementary/themes/img/bub_base_b1.png \
+elementary/themes/img/bub_base_b2.png \
+elementary/themes/img/bub_base_bl.png \
+elementary/themes/img/bub_base_br.png \
+elementary/themes/img/bub_base_tl.png \
+elementary/themes/img/bub_base_tr.png \
+elementary/themes/img/bub_over_bot.png \
+elementary/themes/img/bub_over_top.png \
+elementary/themes/img/bulb_glow.png \
+elementary/themes/img/bulb_off.png \
+elementary/themes/img/bulb_on.png \
+elementary/themes/img/bulb_over.png \
+elementary/themes/img/button_clicked.png \
+elementary/themes/img/button_normal.png \
+elementary/themes/img/cell_base.png \
+elementary/themes/img/cell_sig_1.png \
+elementary/themes/img/cell_sig_2.png \
+elementary/themes/img/cell_sig_3.png \
+elementary/themes/img/cell_sig_4.png \
+elementary/themes/img/clock_base.png \
+elementary/themes/img/color_picker_alpha.png \
+elementary/themes/img/color_picker_brightness.png \
+elementary/themes/img/color_picker_color.png \
+elementary/themes/img/color_picker_opacity.png \
+elementary/themes/img/col_sel_end_bottom.png \
+elementary/themes/img/col_sel_end_left.png \
+elementary/themes/img/col_sel_end_right.png \
+elementary/themes/img/col_sel_end_top.png \
+elementary/themes/img/cpu_bar.png \
+elementary/themes/img/cpu_green_on.png \
+elementary/themes/img/cpu_red_on.png \
+elementary/themes/img/cpu_yellow_on.png \
+elementary/themes/img/cpu_bar_vert.png \
+elementary/themes/img/cpu_green_on_vert.png \
+elementary/themes/img/cpu_red_on_vert.png \
+elementary/themes/img/cpu_yellow_on_vert.png \
+elementary/themes/img/darken_rounded_square_half_h.png \
+elementary/themes/img/darken_rounded_square_half.png \
+elementary/themes/img/darken_rounded_square.png \
+elementary/themes/img/darken_square.png \
+elementary/themes/img/day_left_normal.png \
+elementary/themes/img/day_left_press.png \
+elementary/themes/img/day_left_selected.png \
+elementary/themes/img/day_middle_normal.png \
+elementary/themes/img/day_middle_press.png \
+elementary/themes/img/day_middle_selected.png \
+elementary/themes/img/day_right_normal.png \
+elementary/themes/img/day_right_press.png \
+elementary/themes/img/day_right_selected.png \
+elementary/themes/img/day_single_normal.png \
+elementary/themes/img/day_single_press.png \
+elementary/themes/img/day_single_selected.png \
+elementary/themes/img/diagonal_stripes.png \
+elementary/themes/img/digit_0.png \
+elementary/themes/img/digit_1.png \
+elementary/themes/img/digit_2.png \
+elementary/themes/img/digit_3.png \
+elementary/themes/img/digit_4.png \
+elementary/themes/img/digit_5.png \
+elementary/themes/img/digit_6.png \
+elementary/themes/img/digit_7.png \
+elementary/themes/img/digit_8.png \
+elementary/themes/img/digit_9.png \
+elementary/themes/img/digit_am.png \
+elementary/themes/img/digit_na.png \
+elementary/themes/img/digit_nm.png \
+elementary/themes/img/digit_pm.png \
+elementary/themes/img/O/digit_0.png \
+elementary/themes/img/O/digit_1.png \
+elementary/themes/img/O/digit_2.png \
+elementary/themes/img/O/digit_3.png \
+elementary/themes/img/O/digit_4.png \
+elementary/themes/img/O/digit_5.png \
+elementary/themes/img/O/digit_6.png \
+elementary/themes/img/O/digit_7.png \
+elementary/themes/img/O/digit_8.png \
+elementary/themes/img/O/digit_9.png \
+elementary/themes/img/O/digit_am.png \
+elementary/themes/img/O/digit_na.png \
+elementary/themes/img/O/digit_nm.png \
+elementary/themes/img/O/digit_pm.png \
+elementary/themes/img/dot_pattern.png \
+elementary/themes/img/downlight_glow_left.png \
+elementary/themes/img/downlight_glow.png \
+elementary/themes/img/downlight_glow_right.png \
+elementary/themes/img/downlight_glow_up.png \
+elementary/themes/img/efm_generic_icon_base_empty.png \
+elementary/themes/img/efm_generic_icon_base.png \
+elementary/themes/img/efm_generic_icon_content_audio.png \
+elementary/themes/img/efm_generic_icon_content_cad.png \
+elementary/themes/img/efm_generic_icon_content_code.png \
+elementary/themes/img/efm_generic_icon_content_db.png \
+elementary/themes/img/efm_generic_icon_content_doc.png \
+elementary/themes/img/efm_generic_icon_content_draw.png \
+elementary/themes/img/efm_generic_icon_content_executable.png \
+elementary/themes/img/efm_generic_icon_content_font.png \
+elementary/themes/img/efm_generic_icon_content_formula.png \
+elementary/themes/img/efm_generic_icon_content_image.png \
+elementary/themes/img/efm_generic_icon_content_inode_block.png \
+elementary/themes/img/efm_generic_icon_content_inode_char.png \
+elementary/themes/img/efm_generic_icon_content_inode_dir.png \
+elementary/themes/img/efm_generic_icon_content_inode_fifo.png \
+elementary/themes/img/efm_generic_icon_content_inode_file.png \
+elementary/themes/img/efm_generic_icon_content_inode_socket.png \
+elementary/themes/img/efm_generic_icon_content_install.png \
+elementary/themes/img/efm_generic_icon_content_iso.png \
+elementary/themes/img/efm_generic_icon_content_lib.png \
+elementary/themes/img/efm_generic_icon_content_logo.png \
+elementary/themes/img/efm_generic_icon_content_lo.png \
+elementary/themes/img/efm_generic_icon_content_pdf.png \
+elementary/themes/img/efm_generic_icon_content_perl.png \
+elementary/themes/img/efm_generic_icon_content_pres.png \
+elementary/themes/img/efm_generic_icon_content_ps.png \
+elementary/themes/img/efm_generic_icon_content_python.png \
+elementary/themes/img/efm_generic_icon_content_ruby.png \
+elementary/themes/img/efm_generic_icon_content_script.png \
+elementary/themes/img/efm_generic_icon_content_spread.png \
+elementary/themes/img/efm_generic_icon_content_template.png \
+elementary/themes/img/efm_generic_icon_content_text.png \
+elementary/themes/img/efm_generic_icon_content_translate.png \
+elementary/themes/img/efm_generic_icon_content_trash.png \
+elementary/themes/img/efm_generic_icon_content_unknown.png \
+elementary/themes/img/efm_generic_icon_content_video.png \
+elementary/themes/img/efm_generic_icon_content_web.png \
+elementary/themes/img/efm_generic_icon_over_empty.png \
+elementary/themes/img/efm_generic_icon_over.png \
+elementary/themes/img/efm_generic_icon_shadow_empty.png \
+elementary/themes/img/efm_generic_icon_shadow.png \
+elementary/themes/img/efm_generic_icon_content_cad.png \
+elementary/themes/img/efm_generic_icon_content_iso.png \
+elementary/themes/img/efm_generic_icon_content_lib.png \
+elementary/themes/img/efm_generic_icon_content_ruby.png \
+elementary/themes/img/efm_generic_icon_content_trash.png \
+elementary/themes/img/emo-angry.png \
+elementary/themes/img/emo-angry-shout.png \
+elementary/themes/img/emo-crazy-laugh.png \
+elementary/themes/img/emo-evil-laugh.png \
+elementary/themes/img/emo-evil.png \
+elementary/themes/img/emo-goggle-smile.png \
+elementary/themes/img/emo-grumpy.png \
+elementary/themes/img/emo-grumpy-smile.png \
+elementary/themes/img/emo-guilty.png \
+elementary/themes/img/emo-guilty-smile.png \
+elementary/themes/img/emo-haha.png \
+elementary/themes/img/emo-half-smile.png \
+elementary/themes/img/emo-happy-panting.png \
+elementary/themes/img/emo-happy.png \
+elementary/themes/img/emo-indifferent.png \
+elementary/themes/img/emo-kiss.png \
+elementary/themes/img/emo-knowing-grin.png \
+elementary/themes/img/emo-laugh.png \
+elementary/themes/img/emo-little-bit-sorry.png \
+elementary/themes/img/emo-love-lots.png \
+elementary/themes/img/emo-love.png \
+elementary/themes/img/emo-minimal-smile.png \
+elementary/themes/img/emo-not-happy.png \
+elementary/themes/img/emo-not-impressed.png \
+elementary/themes/img/emo-omg.png \
+elementary/themes/img/emo-opensmile.png \
+elementary/themes/img/emo-smile.png \
+elementary/themes/img/emo-sorry.png \
+elementary/themes/img/emo-squint-laugh.png \
+elementary/themes/img/emo-surprised.png \
+elementary/themes/img/emo-suspicious.png \
+elementary/themes/img/emo-tongue-dangling.png \
+elementary/themes/img/emo-tongue-poke.png \
+elementary/themes/img/emo-uh.png \
+elementary/themes/img/emo-unhappy.png \
+elementary/themes/img/emo-very-sorry.png \
+elementary/themes/img/emo-what.png \
+elementary/themes/img/emo-wink.png \
+elementary/themes/img/emo-worried.png \
+elementary/themes/img/emo-wtf.png \
+elementary/themes/img/eth.png \
+elementary/themes/img/exlclam.png \
+elementary/themes/img/flip_base_shad.png \
+elementary/themes/img/flip_shad.png \
+elementary/themes/img/frame_rounded.png \
+elementary/themes/img/glow_exclam.png \
+elementary/themes/img/glow_lock_double.png \
+elementary/themes/img/glow_lock_locked.png \
+elementary/themes/img/glow_lock_unlocked.png \
+elementary/themes/img/glow_med_white.png \
+elementary/themes/img/glow_round_corners.png \
+elementary/themes/img/glow_round_corners_small.png \
+elementary/themes/img/glow_small.png \
+elementary/themes/img/handle_pick_up_left.png \
+elementary/themes/img/handle_pick_up_right.png \
+elementary/themes/img/hole_pixel.png \
+elementary/themes/img/holes_horiz.png \
+elementary/themes/img/holes_tiny_glow_horiz.png \
+elementary/themes/img/holes_tiny_glow_vert.png \
+elementary/themes/img/holes_tiny_horiz.png \
+elementary/themes/img/holes_tiny_vert.png \
+elementary/themes/img/holes_vert.png \
+elementary/themes/img/hole_tiny.png \
+elementary/themes/img/home_glow.png \
+elementary/themes/img/home_hilight.png \
+elementary/themes/img/home_inset.png \
+elementary/themes/img/horiz_bar_inset.png \
+elementary/themes/img/horiz_glow_run_big.png \
+elementary/themes/img/horiz_glow_run.png \
+elementary/themes/img/horiz_glow_range.png \
+elementary/themes/img/horiz_glow_run_rev.png \
+elementary/themes/img/horizontal_separated_bar_glow.png \
+elementary/themes/img/horizontal_separated_bar_small_glow.png \
+elementary/themes/img/icon_apps.png \
+elementary/themes/img/icon_arrow_down_left.png \
+elementary/themes/img/icon_arrow_down.png \
+elementary/themes/img/icon_arrow_down_right.png \
+elementary/themes/img/icon_arrow_left.png \
+elementary/themes/img/icon_arrow_right.png \
+elementary/themes/img/icon_arrow_up_left.png \
+elementary/themes/img/icon_arrow_up.png \
+elementary/themes/img/icon_arrow_up_right.png \
+elementary/themes/img/icon_border_border.png \
+elementary/themes/img/icon_border_close.png \
+elementary/themes/img/icon_border_kill.png \
+elementary/themes/img/icon_border_lock.png \
+elementary/themes/img/icon_border_maximize.png \
+elementary/themes/img/icon_border_minimize.png \
+elementary/themes/img/icon_border_more.png \
+elementary/themes/img/icon_border_move.png \
+elementary/themes/img/icon_border_pager.png \
+elementary/themes/img/icon_border_pin.png \
+elementary/themes/img/icon_border_properties.png \
+elementary/themes/img/icon_border_remember.png \
+elementary/themes/img/icon_border_resize.png \
+elementary/themes/img/icon_border_sendto.png \
+elementary/themes/img/icon_border_shaded.png \
+elementary/themes/img/icon_border_skip.png \
+elementary/themes/img/icon_border_stack_bot.png \
+elementary/themes/img/icon_border_stack_norm.png \
+elementary/themes/img/icon_border_stack_top.png \
+elementary/themes/img/icon_chat.png \
+elementary/themes/img/icon_check_flat.png \
+elementary/themes/img/icon_clock.png \
+elementary/themes/img/icon_close.png \
+elementary/themes/img/icon_delete.png \
+elementary/themes/img/icon_edit.png \
+elementary/themes/img/icon_eject_mono.png \
+elementary/themes/img/icon_eject.png \
+elementary/themes/img/icon_enlightenment.png \
+elementary/themes/img/icon_file.png \
+elementary/themes/img/icon_folder.png \
+elementary/themes/img/icon_forward_mono.png \
+elementary/themes/img/icon_forward.png \
+elementary/themes/img/icon_head.png \
+elementary/themes/img/icon_home.png \
+elementary/themes/img/icon_info_mono.png \
+elementary/themes/img/icon_info.png \
+elementary/themes/img/icon_mute_mono.png \
+elementary/themes/img/icon_mute.png \
+elementary/themes/img/icon_next_mono.png \
+elementary/themes/img/icon_next.png \
+elementary/themes/img/icon_pause_mono.png \
+elementary/themes/img/icon_pause.png \
+elementary/themes/img/icon_play_mono.png \
+elementary/themes/img/icon_play.png \
+elementary/themes/img/icon_preferences-applications-personal.png \
+elementary/themes/img/icon_preferences-applications-screen-lock.png \
+elementary/themes/img/icon_preferences-applications-screen-unlock.png \
+elementary/themes/img/icon_preferences-composite.png \
+elementary/themes/img/icon_preferences-desklock-locale.png \
+elementary/themes/img/icon_preferences-desktop-environments.png \
+elementary/themes/img/icon_preferences-desktop-signal-bindings.png \
+elementary/themes/img/icon_preferences-interaction.png \
+elementary/themes/img/icon_preferences-variables.png \
+elementary/themes/img/icon_prev_mono.png \
+elementary/themes/img/icon_prev.png \
+elementary/themes/img/icon_refresh.png \
+elementary/themes/img/icon_rewind_mono.png \
+elementary/themes/img/icon_rewind.png \
+elementary/themes/img/icon_search.png \
+elementary/themes/img/icon_spanner.png \
+elementary/themes/img/icon_splat.png \
+elementary/themes/img/icon_splat_half.png \
+elementary/themes/img/icon_stop_mono.png \
+elementary/themes/img/icon_stop.png \
+elementary/themes/img/icon_system-lock-screen.png \
+elementary/themes/img/icon_system-log-out.png \
+elementary/themes/img/icon_system.png \
+elementary/themes/img/icon_system-restart.png \
+elementary/themes/img/icon_system-shutdown.png \
+elementary/themes/img/icon_system-suspend-hibernate.png \
+elementary/themes/img/icon_system-suspend.png \
+elementary/themes/img/icon_volume_mono.png \
+elementary/themes/img/icon_volume.png \
+elementary/themes/img/icon_wallpaper_center.png \
+elementary/themes/img/icon_wallpaper_fill.png \
+elementary/themes/img/icon_wallpaper_pan.png \
+elementary/themes/img/icon_wallpaper_stretch.png \
+elementary/themes/img/icon_wallpaper_tile.png \
+elementary/themes/img/icon_wallpaper_within.png \
+elementary/themes/img/icon_warning.png \
+elementary/themes/img/ic_win_move.png \
+elementary/themes/img/ic_win_resize.png \
+elementary/themes/img/img_example_1.png \
+elementary/themes/img/img_example_2.png \
+elementary/themes/img/inset_bar_horiz_base.png \
+elementary/themes/img/inset_bar_horiz_glow_base_double.png \
+elementary/themes/img/inset_bar_horiz_glow_base.png \
+elementary/themes/img/inset_bar_horiz_glow_inv_base_double.png \
+elementary/themes/img/inset_bar_horiz_glow_inv_base.png \
+elementary/themes/img/inset_bar_horiz_glow_inv_light.png \
+elementary/themes/img/inset_bar_horiz_glow_light.png \
+elementary/themes/img/inset_bar_horiz_glow_mid_base.png \
+elementary/themes/img/inset_bar_horiz_glow_mid_light.png \
+elementary/themes/img/inset_bar_horiz_inside_base.png \
+elementary/themes/img/inset_bar_horiz_inside_light.png \
+elementary/themes/img/inset_bar_horiz_light.png \
+elementary/themes/img/inset_bar_vert_base.png \
+elementary/themes/img/inset_bar_vert_glow_base_double.png \
+elementary/themes/img/inset_bar_vert_glow_base.png \
+elementary/themes/img/inset_bar_vert_glow_inv_base_double.png \
+elementary/themes/img/inset_bar_vert_glow_inv_base.png \
+elementary/themes/img/inset_bar_vert_glow_inv_light.png \
+elementary/themes/img/inset_bar_vert_glow_light.png \
+elementary/themes/img/inset_bar_vert_glow_mid_base.png \
+elementary/themes/img/inset_bar_vert_glow_mid_light.png \
+elementary/themes/img/inset_bar_vert_inside_base.png \
+elementary/themes/img/inset_bar_vert_inside_light.png \
+elementary/themes/img/inset_bar_vert_light.png \
+elementary/themes/img/inset_circle_tiny.png \
+elementary/themes/img/inset_round_hilight.png \
+elementary/themes/img/inset_round_shading.png \
+elementary/themes/img/inset_round_shadow.png \
+elementary/themes/img/inset_shadow_circle_tiny.png \
+elementary/themes/img/inset_shadow.png \
+elementary/themes/img/inset_shadow_tiny.png \
+elementary/themes/img/kbd_glow.png \
+elementary/themes/img/kbd_hilight.png \
+elementary/themes/img/kbd_inset.png \
+elementary/themes/img/knob_round_busy.png \
+elementary/themes/img/knob_round_small_busy.png \
+elementary/themes/img/knob_round_small_normal.png \
+elementary/themes/img/knob_round_small_selected.png \
+elementary/themes/img/knob_sz_04.png \
+elementary/themes/img/knob_sz_06.png \
+elementary/themes/img/knob_sz_08.png \
+elementary/themes/img/knob_sz_10.png \
+elementary/themes/img/knob_sz_12.png \
+elementary/themes/img/knob_sz_14.png \
+elementary/themes/img/knob_sz_16.png \
+elementary/themes/img/knob_sz_18.png \
+elementary/themes/img/knob_sz_20.png \
+elementary/themes/img/knob_sz_22.png \
+elementary/themes/img/knob_sz_24.png \
+elementary/themes/img/led_dark.png \
+elementary/themes/img/led_dot_white.png \
+elementary/themes/img/led_light.png \
+elementary/themes/img/led_red_light.png \
+elementary/themes/img/led_square_base.png \
+elementary/themes/img/led_square_glow.png \
+elementary/themes/img/led_square_shading.png \
+elementary/themes/img/led_square_shadow.png \
+elementary/themes/img/led_square_shine.png \
+elementary/themes/img/led_strobe.png \
+elementary/themes/img/led_tiny_blue.png \
+elementary/themes/img/led_tiny_green.png \
+elementary/themes/img/led_tiny_orange.png \
+elementary/themes/img/lock_insecure.png \
+elementary/themes/img/lock_locked.png \
+elementary/themes/img/logo_blue_bottom.png \
+elementary/themes/img/logo_blue_small_glow.png \
+elementary/themes/img/logo_blue_small.png \
+elementary/themes/img/map_circle.png \
+elementary/themes/img/map_marker.png \
+elementary/themes/img/map_scale.png \
+elementary/themes/img/media_busy_progress.png \
+elementary/themes/img/mem_bar.png \
+elementary/themes/img/mem_on.png \
+elementary/themes/img/mem_bar_vert.png \
+elementary/themes/img/mem_on_vert.png \
+elementary/themes/img/mini_blue_glow_arrow_0.png \
+elementary/themes/img/mini_blue_glow_arrow_1.png \
+elementary/themes/img/mini_blue_glow_arrow_2.png \
+elementary/themes/img/mini_blue_glow_arrow_3.png \
+elementary/themes/img/mini_box_bevel_shadow.png \
+elementary/themes/img/mini_box_glow.png \
+elementary/themes/img/music_control_icon.png \
+elementary/themes/img/netstatus_base.png \
+elementary/themes/img/netstatus_over.png \
+elementary/themes/img/netstatus_tx.png \
+elementary/themes/img/netstatus_rx.png \
+elementary/themes/img/outline_glow.png \
+elementary/themes/img/packagekit_base.png \
+elementary/themes/img/pointer_entry_bar.png \
+elementary/themes/img/pointer_glow.png \
+elementary/themes/img/pointer_mono.png \
+elementary/themes/img/pointer.png \
+elementary/themes/img/pointer_hand1.png \
+elementary/themes/img/ring_shadow.png \
+elementary/themes/img/ring_white_blue_glow.png \
+elementary/themes/img/ring_white_middle.png \
+elementary/themes/img/rounded_square.png \
+elementary/themes/img/runner_glow_horiz.png \
+elementary/themes/img/runner_glow_vert.png \
+elementary/themes/img/runner_horiz.png \
+elementary/themes/img/runner_vert.png \
+elementary/themes/img/screen_base.png \
+elementary/themes/img/screen_bg.png \
+elementary/themes/img/screen_circular_shadow.png \
+elementary/themes/img/screen_fg.png \
+elementary/themes/img/separator_horiz.png \
+elementary/themes/img/shadow_angled_in_light.png \
+elementary/themes/img/shadow_angled_in_sides.png \
+elementary/themes/img/shadow_horiz.png \
+elementary/themes/img/shadow_inset_bevels.png \
+elementary/themes/img/shadow_inset_light.png \
+elementary/themes/img/shadow_rounded_horiz.png \
+elementary/themes/img/shadow_rounded_vert.png \
+elementary/themes/img/shadow_square_tiny.png \
+elementary/themes/img/shadow_vertical_dark.png \
+elementary/themes/img/shadow_vert.png \
+elementary/themes/img/shine.png \
+elementary/themes/img/slider_run_base_horiz.png \
+elementary/themes/img/slider_run_base_light_horiz.png \
+elementary/themes/img/slider_run_base_light_vert.png \
+elementary/themes/img/slider_run_base_vert.png \
+elementary/themes/img/slider_run_bevel_horiz.png \
+elementary/themes/img/slider_run_bevel_vert.png \
+elementary/themes/img/slot_horiz_bottom.png \
+elementary/themes/img/slot_horiz_top.png \
+elementary/themes/img/spanner_glow.png \
+elementary/themes/img/spanner_hilight.png \
+elementary/themes/img/spanner_inset.png \
+elementary/themes/img/speaker.png \
+elementary/themes/img/split_h_glow.png \
+elementary/themes/img/split_h_hilight.png \
+elementary/themes/img/split_h_inset.png \
+elementary/themes/img/split_none_glow.png \
+elementary/themes/img/split_none_hilight.png \
+elementary/themes/img/split_none_inset.png \
+elementary/themes/img/split_v_glow.png \
+elementary/themes/img/split_v_hilight.png \
+elementary/themes/img/split_v_inset.png \
+elementary/themes/img/sym_check_alum.png \
+elementary/themes/img/sym_close_dark_normal.png \
+elementary/themes/img/sym_close_dark_selected.png \
+elementary/themes/img/sym_close_light_normal.png \
+elementary/themes/img/sym_close_light_selected.png \
+elementary/themes/img/sym_down_dark_normal.png \
+elementary/themes/img/sym_down_dark_selected.png \
+elementary/themes/img/sym_down_glow_normal.png \
+elementary/themes/img/sym_down_light_normal.png \
+elementary/themes/img/sym_down_light_selected.png \
+elementary/themes/img/sym_heart_glow_normal.png \
+elementary/themes/img/sym_heart_light_normal.png \
+elementary/themes/img/sym_icon_op_ask.png \
+elementary/themes/img/sym_icon_op_copy.png \
+elementary/themes/img/sym_icon_op_move.png \
+elementary/themes/img/sym_left_dark_normal.png \
+elementary/themes/img/sym_left_glow_normal.png \
+elementary/themes/img/sym_left_light_normal.png \
+elementary/themes/img/sym_radio_alum.png \
+elementary/themes/img/sym_reload_glow_normal.png \
+elementary/themes/img/sym_reload_light_normal.png \
+elementary/themes/img/sym_right_dark_normal.png \
+elementary/themes/img/sym_right_glow_normal.png \
+elementary/themes/img/sym_right_light_normal.png \
+elementary/themes/img/sym_up_dark_normal.png \
+elementary/themes/img/sym_up_dark_selected.png \
+elementary/themes/img/sym_up_glow_normal.png \
+elementary/themes/img/sym_up_light_normal.png \
+elementary/themes/img/sym_up_light_selected.png \
+elementary/themes/img/tacho_base.png \
+elementary/themes/img/tacho_hand_big2.png \
+elementary/themes/img/tacho_hand_big3.png \
+elementary/themes/img/tacho_hand_big4.png \
+elementary/themes/img/tacho_hand_big.png \
+elementary/themes/img/tacho_hand_big_shadow.png \
+elementary/themes/img/tacho_hand_small_min2.png \
+elementary/themes/img/tacho_hand_small_min3.png \
+elementary/themes/img/tacho_hand_small_min4.png \
+elementary/themes/img/tacho_hand_small_min.png \
+elementary/themes/img/tacho_hand_small_shadow.png \
+elementary/themes/img/therm_content.png \
+elementary/themes/img/therm_shadow.png \
+elementary/themes/img/therm_shine.png \
+elementary/themes/img/tooltip-base.png \
+elementary/themes/img/tooltip-corner-bottom-left-tip.png \
+elementary/themes/img/tooltip-corner-bottom-right-tip.png \
+elementary/themes/img/tooltip-corner-top-left-tip.png \
+elementary/themes/img/tooltip-corner-top-right-tip.png \
+elementary/themes/img/tooltip-edge-bottom-tip.png \
+elementary/themes/img/tooltip-edge-left-tip.png \
+elementary/themes/img/tooltip-edge-right-tip.png \
+elementary/themes/img/tooltip-edge-top-tip.png \
+elementary/themes/img/vert_bar_inset.png \
+elementary/themes/img/vert_glow_run.png \
+elementary/themes/img/vert_glow_range.png \
+elementary/themes/img/vert_glow_run_rev.png \
+elementary/themes/img/vertical_separated_bar_glow.png \
+elementary/themes/img/vertical_separated_bar_disabled.png \
+elementary/themes/img/vgrad_med_curved.png \
+elementary/themes/img/vgrad_med_darker.png \
+elementary/themes/img/vgrad_med_dark.png \
+elementary/themes/img/vgrad_med_dark_sparkle.png \
+elementary/themes/img/vgrad_med_lighter.png \
+elementary/themes/img/vgrad_med_lighter_sparkle.png \
+elementary/themes/img/vgrad_med.png \
+elementary/themes/img/vgrad_shadow_bi.png \
+elementary/themes/img/vgrad_tall.png \
+elementary/themes/img/white_bar_vert_glow.png \
+elementary/themes/img/wifi_base.png \
+elementary/themes/img/wifi_shadow.png \
+elementary/themes/img/wifi_sig_1.png \
+elementary/themes/img/wifi_sig_2.png \
+elementary/themes/img/wifi_sig_3.png \
+elementary/themes/img/win_glow.png \
+elementary/themes/img/win_shadow.png \
+elementary/themes/img/win_menu_shadow.png \
+\
+elementary/themes/img/O/about_bot.png \
+elementary/themes/img/O/about_mid.png \
+elementary/themes/img/O/about_top.png \
+elementary/themes/img/O/arrow_down.png \
+elementary/themes/img/O/arrow_up.png \
+elementary/themes/img/O/batt_base.png \
+elementary/themes/img/O/batt_level.png \
+elementary/themes/img/O/batt_over.png \
+elementary/themes/img/O/batt_power.png \
+elementary/themes/img/O/bg_shadow.png \
+elementary/themes/img/O/big_arrow_up.png \
+elementary/themes/img/O/bnw.png \
+elementary/themes/img/O/bt_base1.png \
+elementary/themes/img/O/bt_base2.png \
+elementary/themes/img/O/bt_dis_base.png \
+elementary/themes/img/O/bt_dis_hilight.png \
+elementary/themes/img/O/bt_dis_shine.png \
+elementary/themes/img/O/bt_glow.png \
+elementary/themes/img/O/bt_hilight.png \
+elementary/themes/img/O/bt_shine.png \
+elementary/themes/img/O/bt_sm_base1.png \
+elementary/themes/img/O/bt_sm_base2.png \
+elementary/themes/img/O/bt_sm_hilight.png \
+elementary/themes/img/O/bt_sm_shine.png \
+elementary/themes/img/O/bulb-0.png \
+elementary/themes/img/O/bulb-1.png \
+elementary/themes/img/O/bulb-2.png \
+elementary/themes/img/O/busy-1.png \
+elementary/themes/img/O/busy-2.png \
+elementary/themes/img/O/busy-3.png \
+elementary/themes/img/O/busy-4.png \
+elementary/themes/img/O/busy-5.png \
+elementary/themes/img/O/busy-6.png \
+elementary/themes/img/O/busy-7.png \
+elementary/themes/img/O/busy-8.png \
+elementary/themes/img/O/busy-9.png \
+elementary/themes/img/O/dia_botshad.png \
+elementary/themes/img/O/dia_grad.png \
+elementary/themes/img/O/e17_mini_button_shadow2.png \
+elementary/themes/img/O/everything_box.png \
+elementary/themes/img/O/everything_item_bg.png \
+elementary/themes/img/O/exq-bglight.png \
+elementary/themes/img/O/exq-dot-glow.png \
+elementary/themes/img/O/exq-dot.png \
+elementary/themes/img/O/exq-logo.png \
+elementary/themes/img/O/exq-vgrad.png \
+elementary/themes/img/O/gadman_border.png \
+elementary/themes/img/O/gadman_bottom.png \
+elementary/themes/img/O/gadman_frame.png \
+elementary/themes/img/O/gadman_left.png \
+elementary/themes/img/O/gadman_right.png \
+elementary/themes/img/O/gadman_top.png \
+elementary/themes/img/O/glow.png \
+elementary/themes/img/O/icon_active.png \
+elementary/themes/img/O/icon_add_fav.png \
+elementary/themes/img/O/icon_add.png \
+elementary/themes/img/O/icon_advanced.png \
+elementary/themes/img/O/icon_applications_ibar.png \
+elementary/themes/img/O/icon_applications_new.png \
+elementary/themes/img/O/icon_applications.png \
+elementary/themes/img/O/icon_applications_restart.png \
+elementary/themes/img/O/icon_applications_startup.png \
+elementary/themes/img/O/icon_autoscroll.png \
+elementary/themes/img/O/icon_behavior.png \
+elementary/themes/img/O/icon_border_border.png \
+elementary/themes/img/O/icon_border_close.png \
+elementary/themes/img/O/icon_border_kill.png \
+elementary/themes/img/O/icon_border_lock.png \
+elementary/themes/img/O/icon_border_maximize.png \
+elementary/themes/img/O/icon_border_minimize.png \
+elementary/themes/img/O/icon_border_more.png \
+elementary/themes/img/O/icon_border_pager.png \
+elementary/themes/img/O/icon_border_pin.png \
+elementary/themes/img/O/icon_border_properties.png \
+elementary/themes/img/O/icon_border_remember.png \
+elementary/themes/img/O/icon_border_sendto.png \
+elementary/themes/img/O/icon_border_shaded.png \
+elementary/themes/img/O/icon_border_skip.png \
+elementary/themes/img/O/icon_border_stack_bot.png \
+elementary/themes/img/O/icon_border_stack_norm.png \
+elementary/themes/img/O/icon_border_stack_top.png \
+elementary/themes/img/O/icon_check.png \
+elementary/themes/img/O/icon_close.png \
+elementary/themes/img/O/icon_colors.png \
+elementary/themes/img/O/icon_config.png \
+elementary/themes/img/O/icon_configuration.png \
+elementary/themes/img/O/icon_del.png \
+elementary/themes/img/O/icon_desklock_menu.png \
+elementary/themes/img/O/icon_desklock.png \
+elementary/themes/img/O/icon_desktops.png \
+elementary/themes/img/O/icon_directories.png \
+elementary/themes/img/O/icon_down_arrow.png \
+elementary/themes/img/O/icon_dummy.png \
+elementary/themes/img/O/icon_efm_arrange_name.png \
+elementary/themes/img/O/icon_efm_arrange.png \
+elementary/themes/img/O/icon_efm_arrange_time.png \
+elementary/themes/img/O/icon_efm_cd.png \
+elementary/themes/img/O/icon_efm_copy.png \
+elementary/themes/img/O/icon_efm_cut.png \
+elementary/themes/img/O/icon_efm_delete.png \
+elementary/themes/img/O/icon_efm_desktop.png \
+elementary/themes/img/O/icon_efm_dnd_ask.png \
+elementary/themes/img/O/icon_efm_dnd_copy.png \
+elementary/themes/img/O/icon_efm_dnd_move.png \
+elementary/themes/img/O/icon_efm_eject.png \
+elementary/themes/img/O/icon_efm_file_del.png \
+elementary/themes/img/O/icon_efm_file.png \
+elementary/themes/img/O/icon_efm_flash.png \
+elementary/themes/img/O/icon_efm_folder.png \
+elementary/themes/img/O/icon_efm_hdd.png \
+elementary/themes/img/O/icon_efm_home.png \
+elementary/themes/img/O/icon_efm_new_dir.png \
+elementary/themes/img/O/icon_efm_new.png \
+elementary/themes/img/O/icon_efm_open.png \
+elementary/themes/img/O/icon_efm_paste.png \
+elementary/themes/img/O/icon_efm_properties.png \
+elementary/themes/img/O/icon_efm_refresh.png \
+elementary/themes/img/O/icon_efm_rename.png \
+elementary/themes/img/O/icon_efm_root.png \
+elementary/themes/img/O/icon_efm_select.png \
+elementary/themes/img/O/icon_efm_sort.png \
+elementary/themes/img/O/icon_efm_tmp.png \
+elementary/themes/img/O/icon_efm_usbmedia.png \
+elementary/themes/img/O/icon_efm_view_details.png \
+elementary/themes/img/O/icon_efm_view_name.png \
+elementary/themes/img/O/icon_efm_view.png \
+elementary/themes/img/O/icon_efm_vol_mounted.png \
+elementary/themes/img/O/icon_efm_vol_unmounted.png \
+elementary/themes/img/O/icon_engine.png \
+elementary/themes/img/O/icon_evry_clipboard.png \
+elementary/themes/img/O/icon_extensions.png \
+elementary/themes/img/O/icon_favorites.png \
+elementary/themes/img/O/icon_file_icons.png \
+elementary/themes/img/O/icon_fonts.png \
+elementary/themes/img/O/icon_gadget.png \
+elementary/themes/img/O/icon_globe.png \
+elementary/themes/img/O/icon_gradient.png \
+elementary/themes/img/O/icon_halt.png \
+elementary/themes/img/O/icon_hibernate.png \
+elementary/themes/img/O/icon_icon_theme.png \
+elementary/themes/img/O/icon_illume.png \
+elementary/themes/img/O/icon_imc.png \
+elementary/themes/img/O/icon_interaction.png \
+elementary/themes/img/O/icon_intl.png \
+elementary/themes/img/O/icon_keyboard.png \
+elementary/themes/img/O/icon_keys.png \
+elementary/themes/img/O/icon_left_arrow.png \
+elementary/themes/img/O/icon_logout.png \
+elementary/themes/img/O/icon_look.png \
+elementary/themes/img/O/icon_lost_windows.png \
+elementary/themes/img/O/icon_menu_settings.png \
+elementary/themes/img/O/icon_menus.png \
+elementary/themes/img/O/icon_mime_audio_generic.png \
+elementary/themes/img/O/icon_mime_bdf.png \
+elementary/themes/img/O/icon_mime_c.png \
+elementary/themes/img/O/icon_mime_css.png \
+elementary/themes/img/O/icon_mime_deb.png \
+elementary/themes/img/O/icon_mime_doc.png \
+elementary/themes/img/O/icon_mime_executable_generic.png \
+elementary/themes/img/O/icon_mime_font_generic.png \
+elementary/themes/img/O/icon_mime_h.png \
+elementary/themes/img/O/icon_mime_html.png \
+elementary/themes/img/O/icon_mime_image_generic.png \
+elementary/themes/img/O/icon_mime_o.png \
+elementary/themes/img/O/icon_mime_package.png \
+elementary/themes/img/O/icon_mime_patch.png \
+elementary/themes/img/O/icon_mime_pcf.png \
+elementary/themes/img/O/icon_mime_pdf.png \
+elementary/themes/img/O/icon_mime_plain.png \
+elementary/themes/img/O/icon_mime_sh.png \
+elementary/themes/img/O/icon_mime_text_generic.png \
+elementary/themes/img/O/icon_mime_ttf.png \
+elementary/themes/img/O/icon_mime_video_generic.png \
+elementary/themes/img/O/icon_mime_xcf.png \
+elementary/themes/img/O/icon_mixer.png \
+elementary/themes/img/O/icon_modules.png \
+elementary/themes/img/O/icon_mouse_clean.png \
+elementary/themes/img/O/icon_mouse_extra.png \
+elementary/themes/img/O/icon_mouse_left.png \
+elementary/themes/img/O/icon_mouse_middle.png \
+elementary/themes/img/O/icon_mouse.png \
+elementary/themes/img/O/icon_mouse_right.png \
+elementary/themes/img/O/icon_mouse_wheel.png \
+elementary/themes/img/O/icon_new.png \
+elementary/themes/img/O/icon_pager.png \
+elementary/themes/img/O/icon_performance.png \
+elementary/themes/img/O/icon_power_management.png \
+elementary/themes/img/O/icon_profiles.png \
+elementary/themes/img/O/icon_reboot.png \
+elementary/themes/img/O/icon_reset.png \
+elementary/themes/img/O/icon_resize.png \
+elementary/themes/img/O/icon_right_arrow.png \
+elementary/themes/img/O/icon_run.png \
+elementary/themes/img/O/icon_scale.png \
+elementary/themes/img/O/icon_screen_around.png \
+elementary/themes/img/O/icon_screen_hflip.png \
+elementary/themes/img/O/icon_screen_left.png \
+elementary/themes/img/O/icon_screen_normal.png \
+elementary/themes/img/O/icon_screen_resolution.png \
+elementary/themes/img/O/icon_screen_right.png \
+elementary/themes/img/O/icon_screensaver.png \
+elementary/themes/img/O/icon_screen_setup.png \
+elementary/themes/img/O/icon_screenshot.png \
+elementary/themes/img/O/icon_screen_vflip.png \
+elementary/themes/img/O/icon_shelf_bottom_desk.png \
+elementary/themes/img/O/icon_shelf_bottom_left.png \
+elementary/themes/img/O/icon_shelf_bottom.png \
+elementary/themes/img/O/icon_shelf_bottom_right.png \
+elementary/themes/img/O/icon_shelf_custom.png \
+elementary/themes/img/O/icon_shelf_dock.png \
+elementary/themes/img/O/icon_shelf_left_bottom.png \
+elementary/themes/img/O/icon_shelf_left.png \
+elementary/themes/img/O/icon_shelf_left_top.png \
+elementary/themes/img/O/icon_shelf_menu_bar.png \
+elementary/themes/img/O/icon_shelf_panel.png \
+elementary/themes/img/O/icon_shelf.png \
+elementary/themes/img/O/icon_shelf_right_bottom.png \
+elementary/themes/img/O/icon_shelf_right.png \
+elementary/themes/img/O/icon_shelf_right_top.png \
+elementary/themes/img/O/icon_shelf_top_desk.png \
+elementary/themes/img/O/icon_shelf_top_left.png \
+elementary/themes/img/O/icon_shelf_top.png \
+elementary/themes/img/O/icon_shelf_top_right.png \
+elementary/themes/img/O/icon_startup.png \
+elementary/themes/img/O/icon_suspend.png \
+elementary/themes/img/O/icon_swap.png \
+elementary/themes/img/O/icon_system.png \
+elementary/themes/img/O/icon_theme.png \
+elementary/themes/img/O/icon_toolbar.png \
+elementary/themes/img/O/icon_transitions.png \
+elementary/themes/img/O/icon_up_arrow.png \
+elementary/themes/img/O/icon_wallpaper_center_flat.png \
+elementary/themes/img/O/icon_wallpaper_center.png \
+elementary/themes/img/O/icon_wallpaper_grad_screen.png \
+elementary/themes/img/O/icon_wallpaper.png \
+elementary/themes/img/O/icon_wallpaper_screen.png \
+elementary/themes/img/O/icon_warning.png \
+elementary/themes/img/O/icon_window_focus.png \
+elementary/themes/img/O/icon_window_geometry.png \
+elementary/themes/img/O/icon_window_manipulation.png \
+elementary/themes/img/O/icon_window_process_management.png \
+elementary/themes/img/O/icon_window_remembers.png \
+elementary/themes/img/O/icon_windows.png \
+elementary/themes/img/O/icon_winlist.png \
+elementary/themes/img/O/icon_win_move.png \
+elementary/themes/img/O/icon_win_resize.png \
+elementary/themes/img/O/illume-home.png \
+elementary/themes/img/O/illume-kbd-on.png \
+elementary/themes/img/O/illume-kbd.png \
+elementary/themes/img/O/illume-mode-dual-left.png \
+elementary/themes/img/O/illume-mode-dual-top.png \
+elementary/themes/img/O/illume-mode-single.png \
+elementary/themes/img/O/inset_raised.png \
+elementary/themes/img/O/inset_sunk.png \
+elementary/themes/img/O/logo_black_128.png \
+elementary/themes/img/O/logo_white_128.png \
+elementary/themes/img/O/mixer_high_left.png \
+elementary/themes/img/O/mixer_high_right.png \
+elementary/themes/img/O/mixer_low_left.png \
+elementary/themes/img/O/mixer_low_right.png \
+elementary/themes/img/O/mixer_med_left.png \
+elementary/themes/img/O/mixer_med_right.png \
+elementary/themes/img/O/mixer.png \
+elementary/themes/img/O/outline.png \
+elementary/themes/img/O/randr_icon_off.png \
+elementary/themes/img/O/randr_icon_on.png \
+elementary/themes/img/O/randr_monitor.png \
+elementary/themes/img/O/randr_stand.png \
+elementary/themes/img/O/sb_runnerh.png \
+elementary/themes/img/O/sb_runnerv.png \
+elementary/themes/img/O/silk.png \
+elementary/themes/img/O/t0.png \
+elementary/themes/img/O/t0-sh.png \
+elementary/themes/img/O/t1.png \
+elementary/themes/img/O/t1-sh.png \
+elementary/themes/img/O/t2.png \
+elementary/themes/img/O/tacho_bg.png \
+elementary/themes/img/O/tacho_fg.png \
+elementary/themes/img/O/temp_base.png \
+elementary/themes/img/O/temp_mid.png \
+elementary/themes/img/O/temp_over.png \
+elementary/themes/img/O/theme-label.png \
+elementary/themes/img/O/toolbar_sel.png \
+elementary/themes/img/O/topsh.png \
+elementary/themes/img/O/transition_vswipe.png \
+elementary/themes/img/O/vgrad_dark.png \
+elementary/themes/img/O/vgrad_light.png \
+elementary/themes/img/O/wizard_bt1.png \
+elementary/themes/img/O/wizard_bt2.png \
+elementary/themes/img/O/wizard_pattern.png \
+elementary/themes/img/O/wp-bot1.png \
+elementary/themes/img/O/wp-bot2.png \
+elementary/themes/img/O/wp-tb1.png \
+elementary/themes/img/O/wp-tb2.png \
+elementary/themes/img/O/wp-tb3.png \
+elementary/themes/img/O/wp-tbs.png \
+\
+elementary/themes/snd/kbd-tap2.wav \
+elementary/themes/snd/kbd-tap3.wav \
+elementary/themes/snd/kbd-tap4.wav \
+elementary/themes/snd/kbd-tap5.wav \
+elementary/themes/snd/kbd-tap.wav
+
+efl_ui_themes_files = \
+elementary/themes/edc/efl/bg.edc \
+elementary/themes/edc/efl/border.edc \
+elementary/themes/edc/efl/button.edc \
+elementary/themes/edc/efl/calendar.edc \
+elementary/themes/edc/efl/check.edc \
+elementary/themes/edc/efl/uiclock.edc \
+elementary/themes/edc/efl/cursor.edc \
+elementary/themes/edc/efl/focus.edc \
+elementary/themes/edc/efl/frame.edc \
+elementary/themes/edc/efl/grid.edc \
+elementary/themes/edc/efl/navigation_bar.edc \
+elementary/themes/edc/efl/navigation_layout.edc \
+elementary/themes/edc/efl/tags.edc \
+elementary/themes/edc/efl/panel.edc \
+elementary/themes/edc/efl/nstate.edc \
+elementary/themes/edc/efl/panes.edc \
+elementary/themes/edc/efl/photocam.edc \
+elementary/themes/edc/efl/popup.edc \
+elementary/themes/edc/efl/pointer.edc \
+elementary/themes/edc/efl/progress.edc \
+elementary/themes/edc/efl/radio.edc \
+elementary/themes/edc/efl/scroller.edc \
+elementary/themes/edc/efl/slider.edc \
+elementary/themes/edc/efl/spin.edc \
+elementary/themes/edc/efl/spin_button.edc \
+elementary/themes/edc/efl/datepicker.edc \
+elementary/themes/edc/efl/timepicker.edc \
+elementary/themes/edc/efl/text.edc \
+elementary/themes/edc/efl/textpath.edc \
+elementary/themes/edc/efl/tooltip.edc \
+elementary/themes/edc/efl/video.edc \
+elementary/themes/edc/efl/list.edc \
+elementary/themes/edc/efl/win.edc \
+elementary/themes/edc/efl/pager.edc \
+elementary/themes/edc/efl/tab_pager.edc \
+elementary/themes/edc/efl/tab_bar.edc \
+elementary/themes/edc/efl/tab_page.edc
+
+elementary_fdo_actions_128_files = \
+ elementary/themes/fdo/actions/128/address-book-new.png \
+ elementary/themes/fdo/actions/128/application-exit.png \
+ elementary/themes/fdo/actions/128/appointment-new.png \
+ elementary/themes/fdo/actions/128/call-start.png \
+ elementary/themes/fdo/actions/128/call-stop.png \
+ elementary/themes/fdo/actions/128/contact-new.png \
+ elementary/themes/fdo/actions/128/document-close.png \
+ elementary/themes/fdo/actions/128/document-export.png \
+ elementary/themes/fdo/actions/128/document-import.png \
+ elementary/themes/fdo/actions/128/document-new.png \
+ elementary/themes/fdo/actions/128/document-open.png \
+ elementary/themes/fdo/actions/128/document-open-recent.png \
+ elementary/themes/fdo/actions/128/document-page-setup.png \
+ elementary/themes/fdo/actions/128/document-print.png \
+ elementary/themes/fdo/actions/128/document-print-preview.png \
+ elementary/themes/fdo/actions/128/document-properties.png \
+ elementary/themes/fdo/actions/128/document-revert.png \
+ elementary/themes/fdo/actions/128/document-save-as.png \
+ elementary/themes/fdo/actions/128/document-save.png \
+ elementary/themes/fdo/actions/128/document-send.png \
+ elementary/themes/fdo/actions/128/edit-clear.png \
+ elementary/themes/fdo/actions/128/edit-copy.png \
+ elementary/themes/fdo/actions/128/edit-cut.png \
+ elementary/themes/fdo/actions/128/edit-delete.png \
+ elementary/themes/fdo/actions/128/edit-find.png \
+ elementary/themes/fdo/actions/128/edit-find-replace.png \
+ elementary/themes/fdo/actions/128/edit-paste.png \
+ elementary/themes/fdo/actions/128/edit-redo.png \
+ elementary/themes/fdo/actions/128/edit-select-all.png \
+ elementary/themes/fdo/actions/128/edit-undo.png \
+ elementary/themes/fdo/actions/128/folder-copy.png \
+ elementary/themes/fdo/actions/128/folder-move.png \
+ elementary/themes/fdo/actions/128/folder-new.png \
+ elementary/themes/fdo/actions/128/format-indent-less.png \
+ elementary/themes/fdo/actions/128/format-indent-more.png \
+ elementary/themes/fdo/actions/128/format-justify-center.png \
+ elementary/themes/fdo/actions/128/format-justify-fill.png \
+ elementary/themes/fdo/actions/128/format-justify-left.png \
+ elementary/themes/fdo/actions/128/format-justify-right.png \
+ elementary/themes/fdo/actions/128/format-text-bold.png \
+ elementary/themes/fdo/actions/128/format-text-direction-ltr.png \
+ elementary/themes/fdo/actions/128/format-text-direction-rtl.png \
+ elementary/themes/fdo/actions/128/format-text-italic.png \
+ elementary/themes/fdo/actions/128/format-text-strikethrough.png \
+ elementary/themes/fdo/actions/128/format-text-underline.png \
+ elementary/themes/fdo/actions/128/go-bottom.png \
+ elementary/themes/fdo/actions/128/go-down.png \
+ elementary/themes/fdo/actions/128/go-first.png \
+ elementary/themes/fdo/actions/128/go-home.png \
+ elementary/themes/fdo/actions/128/go-jump.png \
+ elementary/themes/fdo/actions/128/go-last.png \
+ elementary/themes/fdo/actions/128/go-next.png \
+ elementary/themes/fdo/actions/128/go-previous.png \
+ elementary/themes/fdo/actions/128/go-top.png \
+ elementary/themes/fdo/actions/128/go-up.png \
+ elementary/themes/fdo/actions/128/help-about.png \
+ elementary/themes/fdo/actions/128/help-contents.png \
+ elementary/themes/fdo/actions/128/help-faq.png \
+ elementary/themes/fdo/actions/128/insert-image.png \
+ elementary/themes/fdo/actions/128/insert-link.png \
+ elementary/themes/fdo/actions/128/insert-object.png \
+ elementary/themes/fdo/actions/128/insert-text.png \
+ elementary/themes/fdo/actions/128/list-add.png \
+ elementary/themes/fdo/actions/128/list-remove.png \
+ elementary/themes/fdo/actions/128/mail-forward.png \
+ elementary/themes/fdo/actions/128/mail-mark-important.png \
+ elementary/themes/fdo/actions/128/mail-mark-junk.png \
+ elementary/themes/fdo/actions/128/mail-mark-notjunk.png \
+ elementary/themes/fdo/actions/128/mail-mark-read.png \
+ elementary/themes/fdo/actions/128/mail-mark-unread.png \
+ elementary/themes/fdo/actions/128/mail-message-new.png \
+ elementary/themes/fdo/actions/128/mail-reply-all.png \
+ elementary/themes/fdo/actions/128/mail-reply-sender.png \
+ elementary/themes/fdo/actions/128/mail-send.png \
+ elementary/themes/fdo/actions/128/mail-send-receive.png \
+ elementary/themes/fdo/actions/128/media-eject.png \
+ elementary/themes/fdo/actions/128/media-playback-pause.png \
+ elementary/themes/fdo/actions/128/media-playback-start.png \
+ elementary/themes/fdo/actions/128/media-playback-stop.png \
+ elementary/themes/fdo/actions/128/media-record.png \
+ elementary/themes/fdo/actions/128/media-seek-backward.png \
+ elementary/themes/fdo/actions/128/media-seek-forward.png \
+ elementary/themes/fdo/actions/128/media-skip-backward.png \
+ elementary/themes/fdo/actions/128/media-skip-forward.png \
+ elementary/themes/fdo/actions/128/object-flip-horizontal.png \
+ elementary/themes/fdo/actions/128/object-flip-vertical.png \
+ elementary/themes/fdo/actions/128/object-rotate-left.png \
+ elementary/themes/fdo/actions/128/object-rotate-right.png \
+ elementary/themes/fdo/actions/128/process-stop.png \
+ elementary/themes/fdo/actions/128/system-lock-screen.png \
+ elementary/themes/fdo/actions/128/system-log-out.png \
+ elementary/themes/fdo/actions/128/system-reboot.png \
+ elementary/themes/fdo/actions/128/system-run.png \
+ elementary/themes/fdo/actions/128/system-search.png \
+ elementary/themes/fdo/actions/128/system-shutdown.png \
+ elementary/themes/fdo/actions/128/tools-check-spelling.png \
+ elementary/themes/fdo/actions/128/view-close.png \
+ elementary/themes/fdo/actions/128/view-fullscreen.png \
+ elementary/themes/fdo/actions/128/view-list-compact.png \
+ elementary/themes/fdo/actions/128/view-list-details.png \
+ elementary/themes/fdo/actions/128/view-list-icons.png \
+ elementary/themes/fdo/actions/128/view-refresh.png \
+ elementary/themes/fdo/actions/128/view-restore.png \
+ elementary/themes/fdo/actions/128/view-sort-ascending.png \
+ elementary/themes/fdo/actions/128/view-sort-descending.png \
+ elementary/themes/fdo/actions/128/window-close.png \
+ elementary/themes/fdo/actions/128/window-new.png \
+ elementary/themes/fdo/actions/128/zoom-fill.png \
+ elementary/themes/fdo/actions/128/zoom-fit-best.png \
+ elementary/themes/fdo/actions/128/zoom-fit.png \
+ elementary/themes/fdo/actions/128/zoom-in.png \
+ elementary/themes/fdo/actions/128/zoom-original.png \
+ elementary/themes/fdo/actions/128/zoom-out.png
+
+elementary_fdo_categories_16_files = \
+ elementary/themes/fdo/categories/16/applications-accessories.png \
+ elementary/themes/fdo/categories/16/applications-development.png \
+ elementary/themes/fdo/categories/16/applications-games.png \
+ elementary/themes/fdo/categories/16/applications-graphics.png \
+ elementary/themes/fdo/categories/16/applications-internet.png \
+ elementary/themes/fdo/categories/16/applications-multimedia.png \
+ elementary/themes/fdo/categories/16/applications-office.png \
+ elementary/themes/fdo/categories/16/applications-other.png \
+ elementary/themes/fdo/categories/16/applications-science.png \
+ elementary/themes/fdo/categories/16/applications-system.png \
+ elementary/themes/fdo/categories/16/applications-utilities.png \
+ elementary/themes/fdo/categories/16/preferences-desktop.png \
+ elementary/themes/fdo/categories/16/preferences-other.png \
+ elementary/themes/fdo/categories/16/preferences-system.png
+
+elementary_fdo_categories_128_files = \
+ elementary/themes/fdo/categories/128/applications-accessories.png \
+ elementary/themes/fdo/categories/128/applications-development.png \
+ elementary/themes/fdo/categories/128/applications-games.png \
+ elementary/themes/fdo/categories/128/applications-graphics.png \
+ elementary/themes/fdo/categories/128/applications-internet.png \
+ elementary/themes/fdo/categories/128/applications-multimedia.png \
+ elementary/themes/fdo/categories/128/applications-office.png \
+ elementary/themes/fdo/categories/128/applications-other.png \
+ elementary/themes/fdo/categories/128/applications-science.png \
+ elementary/themes/fdo/categories/128/applications-system.png \
+ elementary/themes/fdo/categories/128/applications-utilities.png \
+ elementary/themes/fdo/categories/128/preferences-desktop.png \
+ elementary/themes/fdo/categories/128/preferences-other.png \
+ elementary/themes/fdo/categories/128/preferences-system.png
+
+elementary_fdo_emblems_96_files = \
+ elementary/themes/fdo/emblems/96/emblem-default.png \
+ elementary/themes/fdo/emblems/96/emblem-documents.png \
+ elementary/themes/fdo/emblems/96/emblem-downloads.png \
+ elementary/themes/fdo/emblems/96/emblem-favorite.png \
+ elementary/themes/fdo/emblems/96/emblem-important.png \
+ elementary/themes/fdo/emblems/96/emblem-mail.png \
+ elementary/themes/fdo/emblems/96/emblem-photos.png \
+ elementary/themes/fdo/emblems/96/emblem-readonly.png \
+ elementary/themes/fdo/emblems/96/emblem-shared.png \
+ elementary/themes/fdo/emblems/96/emblem-symbolic-link.png \
+ elementary/themes/fdo/emblems/96/emblem-synchronized.png \
+ elementary/themes/fdo/emblems/96/emblem-synchronizing.png \
+ elementary/themes/fdo/emblems/96/emblem-system.png \
+ elementary/themes/fdo/emblems/96/emblem-unreadable.png
+
+elementary_fdo_places_16_files = \
+ elementary/themes/fdo/places/16/folder-documents.png \
+ elementary/themes/fdo/places/16/folder-download.png \
+ elementary/themes/fdo/places/16/folder-drag-accept.png \
+ elementary/themes/fdo/places/16/folder-home.png \
+ elementary/themes/fdo/places/16/folder-music.png \
+ elementary/themes/fdo/places/16/folder-open.png \
+ elementary/themes/fdo/places/16/folder-pictures.png \
+ elementary/themes/fdo/places/16/folder.png \
+ elementary/themes/fdo/places/16/folder-recent.png \
+ elementary/themes/fdo/places/16/folder-remote.png \
+ elementary/themes/fdo/places/16/folder-videos.png \
+ elementary/themes/fdo/places/16/folder-visiting.png \
+ elementary/themes/fdo/places/16/network-server.png \
+ elementary/themes/fdo/places/16/network-workgroup.png \
+ elementary/themes/fdo/places/16/start-here.png \
+ elementary/themes/fdo/places/16/user-desktop.png
+
+elementary_fdo_places_128_files = \
+ elementary/themes/fdo/places/128/folder-documents.png \
+ elementary/themes/fdo/places/128/folder-drag-accept.png \
+ elementary/themes/fdo/places/128/folder-download.png \
+ elementary/themes/fdo/places/128/folder-home.png \
+ elementary/themes/fdo/places/128/folder-music.png \
+ elementary/themes/fdo/places/128/folder-open.png \
+ elementary/themes/fdo/places/128/folder-pictures.png \
+ elementary/themes/fdo/places/128/folder.png \
+ elementary/themes/fdo/places/128/folder-publicshare.png \
+ elementary/themes/fdo/places/128/folder-recent.png \
+ elementary/themes/fdo/places/128/folder-remote.png \
+ elementary/themes/fdo/places/128/folder-templates.png \
+ elementary/themes/fdo/places/128/folder-videos.png \
+ elementary/themes/fdo/places/128/folder-visiting.png \
+ elementary/themes/fdo/places/128/network-server.png \
+ elementary/themes/fdo/places/128/network-workgroup.png \
+ elementary/themes/fdo/places/128/start-here.png \
+ elementary/themes/fdo/places/128/user-bookmarks.png \
+ elementary/themes/fdo/places/128/user-desktop.png \
+ elementary/themes/fdo/places/128/user-home.png \
+ elementary/themes/fdo/places/128/user-trash.png
+
+elementary_fdo_status_128_files = \
+ elementary/themes/fdo/status/128/appointment-missed.png \
+ elementary/themes/fdo/status/128/appointment-soon.png \
+ elementary/themes/fdo/status/128/audio-volume-high.png \
+ elementary/themes/fdo/status/128/audio-volume-low.png \
+ elementary/themes/fdo/status/128/audio-volume-medium.png \
+ elementary/themes/fdo/status/128/audio-volume-muted.png \
+ elementary/themes/fdo/status/128/audio-volume.png \
+ elementary/themes/fdo/status/128/battery-caution-charging.png \
+ elementary/themes/fdo/status/128/battery-caution.png \
+ elementary/themes/fdo/status/128/battery-empty-charging.png \
+ elementary/themes/fdo/status/128/battery-empty.png \
+ elementary/themes/fdo/status/128/battery-full-charging.png \
+ elementary/themes/fdo/status/128/battery-full.png \
+ elementary/themes/fdo/status/128/battery-good-charging.png \
+ elementary/themes/fdo/status/128/battery-good.png \
+ elementary/themes/fdo/status/128/battery-low-charging.png \
+ elementary/themes/fdo/status/128/battery-low.png \
+ elementary/themes/fdo/status/128/bluetooth-active.png \
+ elementary/themes/fdo/status/128/bluetooth-disabled.png \
+ elementary/themes/fdo/status/128/changes-allow.png \
+ elementary/themes/fdo/status/128/changes-prevent.png \
+ elementary/themes/fdo/status/128/dialog-error.png \
+ elementary/themes/fdo/status/128/dialog-information.png \
+ elementary/themes/fdo/status/128/dialog-password.png \
+ elementary/themes/fdo/status/128/dialog-question.png \
+ elementary/themes/fdo/status/128/dialog-warning.png \
+ elementary/themes/fdo/status/128/mail-attachment.png \
+ elementary/themes/fdo/status/128/mail-read.png \
+ elementary/themes/fdo/status/128/mail-replied.png \
+ elementary/themes/fdo/status/128/mail-unread.png \
+ elementary/themes/fdo/status/128/mail-signed.png \
+ elementary/themes/fdo/status/128/mail-signed-verified.png \
+ elementary/themes/fdo/status/128/media-playlist-repeat.png \
+ elementary/themes/fdo/status/128/media-playlist-shuffle.png \
+ elementary/themes/fdo/status/128/network-cellular-3g.png \
+ elementary/themes/fdo/status/128/network-cellular-4g.png \
+ elementary/themes/fdo/status/128/network-cellular-connected.png \
+ elementary/themes/fdo/status/128/network-cellular-edge.png \
+ elementary/themes/fdo/status/128/network-cellular-gprs.png \
+ elementary/themes/fdo/status/128/network-cellular-signal-acquiring.png \
+ elementary/themes/fdo/status/128/network-cellular-signal-excellent.png \
+ elementary/themes/fdo/status/128/network-cellular-signal-good.png \
+ elementary/themes/fdo/status/128/network-cellular-signal-none.png \
+ elementary/themes/fdo/status/128/network-cellular-signal-ok.png \
+ elementary/themes/fdo/status/128/network-cellular-signal-weak.png \
+ elementary/themes/fdo/status/128/network-cellular-umts.png \
+ elementary/themes/fdo/status/128/network-error.png \
+ elementary/themes/fdo/status/128/network-idle.png \
+ elementary/themes/fdo/status/128/network-offline.png \
+ elementary/themes/fdo/status/128/network-receive.png \
+ elementary/themes/fdo/status/128/network-transmit.png \
+ elementary/themes/fdo/status/128/network-transmit-receive.png \
+ elementary/themes/fdo/status/128/network-vpn-acquiring.png \
+ elementary/themes/fdo/status/128/network-vpn.png \
+ elementary/themes/fdo/status/128/network-wireless-acquiring.png \
+ elementary/themes/fdo/status/128/network-wireless-encrypted.png \
+ elementary/themes/fdo/status/128/network-wireless-signal-excellent.png \
+ elementary/themes/fdo/status/128/network-wireless-signal-good.png \
+ elementary/themes/fdo/status/128/network-wireless-signal-none.png \
+ elementary/themes/fdo/status/128/network-wireless-signal-ok.png \
+ elementary/themes/fdo/status/128/network-wireless-signal-weak.png \
+ elementary/themes/fdo/status/128/non-starred.png \
+ elementary/themes/fdo/status/128/printer-error.png \
+ elementary/themes/fdo/status/128/printer-printing.png \
+ elementary/themes/fdo/status/128/printer-warning.png \
+ elementary/themes/fdo/status/128/security-high.png \
+ elementary/themes/fdo/status/128/security-low.png \
+ elementary/themes/fdo/status/128/security-medium.png \
+ elementary/themes/fdo/status/128/software-update-available.png \
+ elementary/themes/fdo/status/128/software-update-urgent.png \
+ elementary/themes/fdo/status/128/task-due.png \
+ elementary/themes/fdo/status/128/task-past-due.png \
+ elementary/themes/fdo/status/128/starred.png \
+ elementary/themes/fdo/status/128/user-available.png \
+ elementary/themes/fdo/status/128/user-away.png \
+ elementary/themes/fdo/status/128/user-busy.png \
+ elementary/themes/fdo/status/128/user-idle.png \
+ elementary/themes/fdo/status/128/user-invisible.png \
+ elementary/themes/fdo/status/128/user-offline.png \
+ elementary/themes/fdo/status/128/user-trash-full.png \
+ elementary/themes/fdo/status/128/weather-clear-night.png \
+ elementary/themes/fdo/status/128/weather-clear.png \
+ elementary/themes/fdo/status/128/weather-clouds-night.png \
+ elementary/themes/fdo/status/128/weather-clouds.png \
+ elementary/themes/fdo/status/128/weather-few-clouds-night.png \
+ elementary/themes/fdo/status/128/weather-few-clouds.png \
+ elementary/themes/fdo/status/128/weather-fog.png \
+ elementary/themes/fdo/status/128/weather-overcast.png \
+ elementary/themes/fdo/status/128/weather-severe-alert.png \
+ elementary/themes/fdo/status/128/weather-showers.png \
+ elementary/themes/fdo/status/128/weather-showers-scattered.png \
+ elementary/themes/fdo/status/128/weather-snow.png \
+ elementary/themes/fdo/status/128/weather-storm.png
+
+elementary_fdo_devices_128_files = \
+ elementary/themes/fdo/devices/128/audio-card.png \
+ elementary/themes/fdo/devices/128/audio-input-microphone.png \
+ elementary/themes/fdo/devices/128/battery.png \
+ elementary/themes/fdo/devices/128/camera-photo.png \
+ elementary/themes/fdo/devices/128/camera.png \
+ elementary/themes/fdo/devices/128/camera-web.png \
+ elementary/themes/fdo/devices/128/camera-video.png \
+ elementary/themes/fdo/devices/128/computer-laptop.png \
+ elementary/themes/fdo/devices/128/computer.png \
+ elementary/themes/fdo/devices/128/drive-harddisk-ieee1394.png \
+ elementary/themes/fdo/devices/128/drive-harddisk.png \
+ elementary/themes/fdo/devices/128/drive-harddisk-usb.png \
+ elementary/themes/fdo/devices/128/drive-optical.png \
+ elementary/themes/fdo/devices/128/drive-removable-media-ieee1394.png \
+ elementary/themes/fdo/devices/128/drive-removable-media.png \
+ elementary/themes/fdo/devices/128/drive-removable-media-usb.png \
+ elementary/themes/fdo/devices/128/input-gaming.png \
+ elementary/themes/fdo/devices/128/input-keyboard.png \
+ elementary/themes/fdo/devices/128/input-mouse.png \
+ elementary/themes/fdo/devices/128/input-tablet.png \
+ elementary/themes/fdo/devices/128/media-flash-cf.png \
+ elementary/themes/fdo/devices/128/media-flash-ms.png \
+ elementary/themes/fdo/devices/128/media-flash.png \
+ elementary/themes/fdo/devices/128/media-flash-sd.png \
+ elementary/themes/fdo/devices/128/media-flash-sm.png \
+ elementary/themes/fdo/devices/128/media-floppy.png \
+ elementary/themes/fdo/devices/128/media-memory.png \
+ elementary/themes/fdo/devices/128/media-optical-audio.png \
+ elementary/themes/fdo/devices/128/media-optical-bd.png \
+ elementary/themes/fdo/devices/128/media-optical-cd.png \
+ elementary/themes/fdo/devices/128/media-optical-dvd.png \
+ elementary/themes/fdo/devices/128/media-optical.png \
+ elementary/themes/fdo/devices/128/media-tape.png \
+ elementary/themes/fdo/devices/128/media-zip.png \
+ elementary/themes/fdo/devices/128/modem.png \
+ elementary/themes/fdo/devices/128/multimedia-player.png \
+ elementary/themes/fdo/devices/128/network-wired.png \
+ elementary/themes/fdo/devices/128/network-wireless.png \
+ elementary/themes/fdo/devices/128/pda.png \
+ elementary/themes/fdo/devices/128/phone.png \
+ elementary/themes/fdo/devices/128/printer.png \
+ elementary/themes/fdo/devices/128/processor.png \
+ elementary/themes/fdo/devices/128/scanner.png \
+ elementary/themes/fdo/devices/128/video-display.png
+
+elementary_fdo_apps_64_files = \
+ elementary/themes/fdo/apps/64/preferences-color.png \
+ elementary/themes/fdo/apps/64/preferences-desktop-display.png \
+ elementary/themes/fdo/apps/64/preferences-desktop-font.png \
+ elementary/themes/fdo/apps/64/preferences-desktop-keyboard.png \
+ elementary/themes/fdo/apps/64/preferences-desktop-locale.png \
+ elementary/themes/fdo/apps/64/preferences-desktop-multimedia.png \
+ elementary/themes/fdo/apps/64/preferences-desktop-screensaver.png \
+ elementary/themes/fdo/apps/64/preferences-desktop-theme.png \
+ elementary/themes/fdo/apps/64/preferences-desktop-wallpaper.png \
+ elementary/themes/fdo/apps/64/preferences-profile.png \
+ elementary/themes/fdo/apps/64/system-file-manager.png
+
+elementary_fdo_intl_128_files = \
+ elementary/themes/fdo/intl/128/flag-ad.png \
+ elementary/themes/fdo/intl/128/flag-af.png \
+ elementary/themes/fdo/intl/128/flag-al.png \
+ elementary/themes/fdo/intl/128/flag-am.png \
+ elementary/themes/fdo/intl/128/flag-ar.png \
+ elementary/themes/fdo/intl/128/flag-at.png \
+ elementary/themes/fdo/intl/128/flag-au.png \
+ elementary/themes/fdo/intl/128/flag-az.png \
+ elementary/themes/fdo/intl/128/flag-ba.png \
+ elementary/themes/fdo/intl/128/flag-bd.png \
+ elementary/themes/fdo/intl/128/flag-be.png \
+ elementary/themes/fdo/intl/128/flag-bg.png \
+ elementary/themes/fdo/intl/128/flag-br.png \
+ elementary/themes/fdo/intl/128/flag-bt.png \
+ elementary/themes/fdo/intl/128/flag-bw.png \
+ elementary/themes/fdo/intl/128/flag-by.png \
+ elementary/themes/fdo/intl/128/flag-ca.png \
+ elementary/themes/fdo/intl/128/flag-cd.png \
+ elementary/themes/fdo/intl/128/flag-ch.png \
+ elementary/themes/fdo/intl/128/flag-cm.png \
+ elementary/themes/fdo/intl/128/flag-cn.png \
+ elementary/themes/fdo/intl/128/flag-cz.png \
+ elementary/themes/fdo/intl/128/flag-de.png \
+ elementary/themes/fdo/intl/128/flag-dk.png \
+ elementary/themes/fdo/intl/128/flag-ee.png \
+ elementary/themes/fdo/intl/128/flag-es.png \
+ elementary/themes/fdo/intl/128/flag-et.png \
+ elementary/themes/fdo/intl/128/flag-fi.png \
+ elementary/themes/fdo/intl/128/flag-fo.png \
+ elementary/themes/fdo/intl/128/flag-fr.png \
+ elementary/themes/fdo/intl/128/flag-gb.png \
+ elementary/themes/fdo/intl/128/flag-ge.png \
+ elementary/themes/fdo/intl/128/flag-gh.png \
+ elementary/themes/fdo/intl/128/flag-gn.png \
+ elementary/themes/fdo/intl/128/flag-gr.png \
+ elementary/themes/fdo/intl/128/flag-hr.png \
+ elementary/themes/fdo/intl/128/flag-hu.png \
+ elementary/themes/fdo/intl/128/flag-ie.png \
+ elementary/themes/fdo/intl/128/flag-il.png \
+ elementary/themes/fdo/intl/128/flag-in.png \
+ elementary/themes/fdo/intl/128/flag-iq.png \
+ elementary/themes/fdo/intl/128/flag-ir.png \
+ elementary/themes/fdo/intl/128/flag-is.png \
+ elementary/themes/fdo/intl/128/flag-it.png \
+ elementary/themes/fdo/intl/128/flag-jp.png \
+ elementary/themes/fdo/intl/128/flag-ke.png \
+ elementary/themes/fdo/intl/128/flag-kg.png \
+ elementary/themes/fdo/intl/128/flag-kh.png \
+ elementary/themes/fdo/intl/128/flag-kr.png \
+ elementary/themes/fdo/intl/128/flag-ku.png \
+ elementary/themes/fdo/intl/128/flag-kz.png \
+ elementary/themes/fdo/intl/128/flag-la.png \
+ elementary/themes/fdo/intl/128/flag-lk.png \
+ elementary/themes/fdo/intl/128/flag-lt.png \
+ elementary/themes/fdo/intl/128/flag-lv.png \
+ elementary/themes/fdo/intl/128/flag-ma.png \
+ elementary/themes/fdo/intl/128/flag-md.png \
+ elementary/themes/fdo/intl/128/flag-me.png \
+ elementary/themes/fdo/intl/128/flag-mk.png \
+ elementary/themes/fdo/intl/128/flag-ml.png \
+ elementary/themes/fdo/intl/128/flag-mm.png \
+ elementary/themes/fdo/intl/128/flag-mn.png \
+ elementary/themes/fdo/intl/128/flag-mt.png \
+ elementary/themes/fdo/intl/128/flag-mv.png \
+ elementary/themes/fdo/intl/128/flag-my.png \
+ elementary/themes/fdo/intl/128/flag-ng.png \
+ elementary/themes/fdo/intl/128/flag-nl.png \
+ elementary/themes/fdo/intl/128/flag-no.png \
+ elementary/themes/fdo/intl/128/flag-np.png \
+ elementary/themes/fdo/intl/128/flag-ph.png \
+ elementary/themes/fdo/intl/128/flag-pk.png \
+ elementary/themes/fdo/intl/128/flag-pl.png \
+ elementary/themes/fdo/intl/128/flag-pt.png \
+ elementary/themes/fdo/intl/128/flag-ro.png \
+ elementary/themes/fdo/intl/128/flag-rs.png \
+ elementary/themes/fdo/intl/128/flag-ru.png \
+ elementary/themes/fdo/intl/128/flag-se.png \
+ elementary/themes/fdo/intl/128/flag-si.png \
+ elementary/themes/fdo/intl/128/flag-sk.png \
+ elementary/themes/fdo/intl/128/flag-sn.png \
+ elementary/themes/fdo/intl/128/flag-sy.png \
+ elementary/themes/fdo/intl/128/flag-th.png \
+ elementary/themes/fdo/intl/128/flag-tj.png \
+ elementary/themes/fdo/intl/128/flag-tm.png \
+ elementary/themes/fdo/intl/128/flag-tr.png \
+ elementary/themes/fdo/intl/128/flag-tw.png \
+ elementary/themes/fdo/intl/128/flag-tz.png \
+ elementary/themes/fdo/intl/128/flag-ua.png \
+ elementary/themes/fdo/intl/128/flag-us.png \
+ elementary/themes/fdo/intl/128/flag-uz.png \
+ elementary/themes/fdo/intl/128/flag-vn.png \
+ elementary/themes/fdo/intl/128/flag-za.png
+
+elementary_fdo_mimetypes_16_files = \
+ elementary/themes/fdo/mimetypes/16/inode-directory.png
+
+elementary_fdo_mimetypes_128_files = \
+ elementary/themes/fdo/mimetypes/128/inode-directory.png
+
+
+elementary_fdo_files = \
+ $(elementary_fdo_actions_128_files) \
+ $(elementary_fdo_categories_16_files) \
+ $(elementary_fdo_categories_128_files) \
+ $(elementary_fdo_emblems_96_files) \
+ $(elementary_fdo_places_16_files) \
+ $(elementary_fdo_places_128_files) \
+ $(elementary_fdo_status_128_files) \
+ $(elementary_fdo_devices_128_files) \
+ $(elementary_fdo_apps_64_files) \
+ $(elementary_fdo_intl_128_files) \
+ $(elementary_fdo_mimetypes_16_files) \
+ $(elementary_fdo_mimetypes_128_files)
+
+
+EXTRA_DIST += $(elementary_themes_files) $(efl_ui_themes_files) $(elementary_fdo_files)
diff --git a/doc/Makefile.am b/doc/Makefile.am
new file mode 100644
index 0000000000..17adf520c1
--- /dev/null
+++ b/doc/Makefile.am
@@ -0,0 +1,263 @@
+SUBDIRS = previews widgets
+
+MAINTAINERCLEANFILES = Makefile.in
+
+.PHONY: doc
+
+PACKAGE_DOCNAME = $(PACKAGE_TARNAME)-$(PACKAGE_VERSION)-doc
+
+if EFL_BUILD_DOC
+
+doc-clean:
+ rm -rf html/ latex/ man/ xml/ $(top_builddir)/$(PACKAGE_DOCNAME).tar*
+
+previews-build:
+ @$(MAKE) -C previews
+
+previews-data:
+ @$(MAKE) -C previews doc
+# dir:file name:executable:width:height
+WGT_PREVIEW = \
+ actionslider:preview-00.png:widget_preview_actionslider:120:30 \
+ bg:preview-00.png:widget_preview_bg:50:50 \
+ box:preview-00.png:widget_preview_box:200:160 \
+ bubble:preview-00.png:widget_preview_bubble1:160:50 \
+ bubble:preview-01.png:widget_preview_bubble2:160:50 \
+ bubble:preview-02.png:widget_preview_bubble3:160:50 \
+ button:preview-00.png:widget_preview_button1:160:50 \
+ button:preview-01.png:widget_preview_button2:160:50 \
+ button:preview-02.png:widget_preview_button3:160:50 \
+ calendar:preview-00.png:widget_preview_calendar:300:300 \
+ check:preview-00.png:widget_preview_check1:160:50 \
+ check:preview-01.png:widget_preview_check2:160:50 \
+ check:preview-02.png:widget_preview_check3:160:50 \
+ clock:preview-00.png:widget_preview_clock:200:100 \
+ colorselector:preview-00.png:widget_preview_colorselector:320:300 \
+ conformant:preview-00.png:widget_preview_conformant:200:400 \
+ combobox:preview-00.png:widget_preview_combobox:300:300 \
+ ctxpopup:preview-00.png:widget_preview_ctxpopup:200:130 \
+ datetime:preview-00.png:widget_preview_datetime1:360:60 \
+ datetime:preview-01.png:widget_preview_datetime2:200:60 \
+ datetime:preview-02.png:widget_preview_datetime3:200:60 \
+ dayselector:preview-00.png:widget_preview_dayselector:350:50 \
+ diskselector:preview-00.png:widget_preview_diskselector:120:50 \
+ entry:preview-00.png:widget_preview_entry1:160:50 \
+ entry:preview-01.png:widget_preview_entry2:160:50 \
+ entry:preview-02.png:widget_preview_entry3:160:50 \
+ entry:preview-03.png:widget_preview_entry4:160:50 \
+ fileselector:preview-00.png:widget_preview_fileselector:300:300 \
+ fileselector_button:preview-00.png:widget_preview_fileselector_button1:200:50 \
+ fileselector_button:preview-01.png:widget_preview_fileselector_button2:200:50 \
+ fileselector_button:preview-02.png:widget_preview_fileselector_button3:160:50 \
+ fileselector_entry:preview-00.png:widget_preview_fileselector_entry:70:50 \
+ flip:preview-00.png:widget_preview_flip:100:100 \
+ flipselector:preview-00.png:widget_preview_flipselector:100:60 \
+ frame:preview-00.png:widget_preview_frame:100:50 \
+ gengrid:preview-00.png:widget_preview_gengrid:200:160 \
+ genlist:preview-00.png:widget_preview_genlist1:200:200 \
+ genlist:preview-01.png:widget_preview_genlist2:200:160 \
+ genlist:preview-02.png:widget_preview_genlist3:200:160 \
+ genlist:preview-03.png:widget_preview_genlist4:200:160 \
+ genlist:preview-04.png:widget_preview_genlist5:200:160 \
+ hover:preview-00.png:widget_preview_hover:90:170 \
+ hoversel:preview-00.png:widget_preview_hoversel:90:170 \
+ icon:preview-00.png:widget_preview_icon:50:50 \
+ image:preview-00.png:widget_preview_image:50:50 \
+ index:preview-00.png:widget_preview_index:200:160 \
+ inwin:preview-00.png:widget_preview_inwin1:200:160 \
+ inwin:preview-01.png:widget_preview_inwin2:200:160 \
+ inwin:preview-02.png:widget_preview_inwin3:200:160 \
+ label:preview-00.png:widget_preview_label:70:30 \
+ layout:preview-00.png:widget_preview_layout:200:160 \
+ list:preview-00.png:widget_preview_list:200:200 \
+ map:preview-00.png:widget_preview_map:256:256 \
+ mapbuf:preview-00.png:widget_preview_mapbuf:200:200 \
+ menu:preview-00.png:widget_preview_menu:100:100 \
+ notify:preview-00.png:widget_preview_notify:60:30 \
+ nstate:preview-00.png:widget_preview_nstate:45:28 \
+ panel:preview-00.png:widget_preview_panel:150:50 \
+ panes:preview-00.png:widget_preview_panes:200:100 \
+ photocam:preview-00.png:widget_preview_photocam:243:162 \
+ popup:preview-00.png:widget_preview_popup:480:400 \
+ prefs:preview-00.png:widget_preview_prefs:200:160 \
+ prefs:preview-00.png:widget_preview_prefs:280:250 \
+ progressbar:preview-00.png:widget_preview_progressbar:150:50 \
+ radio:preview-00.png:widget_preview_radio:60:20 \
+ scroller:preview-00.png:widget_preview_scroller:100:30 \
+ segment_control:preview-00.png:widget_preview_segment_control:240:120 \
+ separator:preview-00.png:widget_preview_separator:10:80 \
+ slider:preview-00.png:widget_preview_slider:200:100 \
+ slideshow:preview-00.png:widget_preview_slideshow:50:50 \
+ spinner:preview-00.png:widget_preview_spinner:160:30 \
+ table::preview-00.png:widget_preview_table:100:100 \
+ table:preview-00.png:widget_preview_table:100:100 \
+ thumb:preview-00.png:widget_preview_thumb:100:100 \
+ toolbar:preview-00.png:widget_preview_toolbar:300:100 \
+ web:preview-00.png:widget_preview_web:300:300 \
+ win:preview-00.png:widget_preview_win:200:200
+
+# put in here every elm widget, so that it gets its hierarchy tree built
+# then, make a reference to the generated image, in the form
+# @image html <WGTNAME>_inheritance_tree.{png,eps}
+WGT_TREE = \
+ actionslider \
+ bg \
+ box \
+ bubble \
+ button \
+ calendar \
+ check \
+ clock \
+ colorselector \
+ conformant \
+ container \
+ combobox \
+ ctxpopup \
+ datetime \
+ dayselector \
+ diskselector \
+ entry \
+ fileselector \
+ fileselector_button \
+ fileselector_entry \
+ flip \
+ flipselector \
+ frame \
+ gengrid \
+ genlist \
+ gesture_layer \
+ glview \
+ grid \
+ hover \
+ hoversel \
+ icon \
+ image \
+ index \
+ inwin \
+ label \
+ layout \
+ list \
+ map \
+ mapbuf \
+ menu \
+ multibuttonentry \
+ naviframe \
+ notify \
+ panel \
+ panes \
+ photo \
+ photocam \
+ player \
+ plug \
+ popup \
+ prefs \
+ progressbar \
+ radio \
+ route \
+ scroller \
+ segment_control \
+ separator \
+ slider \
+ slideshow \
+ spinner \
+ table \
+ thumb \
+ toolbar \
+ video \
+ web \
+ win
+
+widget-build:
+ @$(MAKE) -C widgets
+
+widget-preview: widget-build
+ @for ss in $(WGT_PREVIEW); do \
+ ENTRY=($${ss//:/ }) ; \
+ DIR=$${ENTRY[0]} ; \
+ SS=$${ENTRY[1]} ; \
+ BIN=$${ENTRY[2]} ; \
+ X=$${ENTRY[3]} ; \
+ Y=$${ENTRY[4]} ; \
+ echo "Generating widget preview image" $${SS} "for widget" $${DIR}; \
+ $(top_srcdir)/doc/shot.sh $(top_builddir)/doc/html/img/widget/$${DIR} $${SS} $(top_builddir)/doc/widgets/$${BIN} $${X} $${Y} ; \
+ mkdir -p $(top_builddir)/doc/latex/img/widget/$${DIR} ; \
+ convert $(top_builddir)/doc/html/img/widget/$${DIR}/$${SS} $(top_builddir)/doc/latex/img/widget/$${DIR}/$${SS/.png/.eps} ; \
+ done
+
+widget-tree-figures: doc
+ $(srcdir)/widget_hierarchy.py --scan $(top_srcdir)/src/lib -o $(builddir)/widget_tree.p;
+ $(srcdir)/widget_hierarchy.py --tree -i $(builddir)/widget_tree.p > $(builddir)/widgets_tree.dot;
+ dot -Tpng -o $(top_srcdir)/doc/img/elm-widget-tree.png $(top_builddir)/doc/widgets_tree.dot;
+ convert $(top_srcdir)/doc/img/elm-widget-tree.png $(top_srcdir)/doc/img/"elm-widget-tree.eps";
+ @for wgt in $(WGT_TREE); do \
+ WGT_FILE_NAME="WNAME_inheritance_tree.dot"; \
+ WGT_FILE_NAME=$${WGT_FILE_NAME/WNAME/$${wgt}}; \
+ echo "Generating widget inheritance tree image for widget" $${wgt}; \
+ $(srcdir)/widget_hierarchy.py --widget=$${wgt} -i $(top_builddir)/doc/widget_tree.p > $(top_builddir)/doc/$${WGT_FILE_NAME}; \
+ dot -Tpng -o $(top_srcdir)/doc/img/$${WGT_FILE_NAME/.dot/.png} $(top_builddir)/doc/$${WGT_FILE_NAME}; \
+ convert $(top_srcdir)/doc/img/$${WGT_FILE_NAME/.dot/.png} $(top_srcdir)/doc/img/$${WGT_FILE_NAME/.dot/.eps}; \
+ rm $${WGT_FILE_NAME}; \
+ done
+
+doc: all previews-build previews-data widget-preview
+ $(efl_doxygen)
+ @echo "$(efl_doxygen) done !"
+ @echo "copying $(srcdir)/img/*.png to html/"
+ cp $(srcdir)/img/*.png html/
+ @echo "copying $(srcdir)/img/*.eps to latex/"
+ cp $(srcdir)/img/*.eps latex/
+ @echo "Removing older tarball $(PACKAGE_DOCNAME).tar*"
+ rm -rf $(PACKAGE_DOCNAME).tar*
+ @echo "Generating new tarball"
+ $(MKDIR_P) $(PACKAGE_DOCNAME)/doc
+ cp -R html/ latex/ man/ $(PACKAGE_DOCNAME)/doc
+ tar cf $(PACKAGE_DOCNAME).tar $(PACKAGE_DOCNAME)/
+ bzip2 -9 $(PACKAGE_DOCNAME).tar
+ @echo "Removing temporary directory"
+ rm -rf $(PACKAGE_DOCNAME)/
+ @echo "Moving tarball $(PACKAGE_DOCNAME).tar.bz2 to $(top_builddir)"
+ mv $(PACKAGE_DOCNAME).tar.bz2 $(top_builddir)
+ @echo "Documentation Package: doc/$(PACKAGE_DOCNAME).tar.bz2"
+ @echo "Documentation HTML: doc/html"
+
+clean-local: doc-clean
+
+else
+
+doc:
+ @echo "Documentation not built. Run ./configure --help"
+
+endif
+
+EXTRA_DIST = \
+Doxyfile.in \
+e.css \
+head.html \
+foot.html \
+ecore_examples.dox \
+eldbus_examples.dox \
+edje_examples.dox \
+eet_examples.dox \
+eina_examples.dox \
+eio_examples.dox \
+emotion_examples.dox \
+eo_tutorial.dox \
+ephysics_examples.dox \
+evas_examples.dox \
+main.dox \
+pkgconfig.dox \
+shot.sh
+
+include images.mk
+
+all-local:
+ @rm -f images.tmp; \
+ echo 'EXTRA_DIST += \' > images.tmp; \
+ (cd $(srcdir) && find ./img -type f -print | cut -d/ -f2- | grep -v '~' | LANG=C LANGUAGE=C LC_ALL=C LC_CTYPE=C LC_NUMERIC=C LC_TIME=C LC_COLLATE=C LC_MONETARY=C LC_MESSAGES=C LC_PAPER=C LC_NAME=C LC_ADDRESS=C LC_TELEPHONE=C LC_MEASUREMENT=C LC_IDENTIFICATION=C sort | tr '\n' ' ') >> images.tmp && \
+ echo >> images.tmp && \
+ if ! cmp "$(srcdir)/images.mk" images.tmp >/dev/null; then \
+ echo "warning: new images added to '$(srcdir)/images.mk'"; \
+ mv -f images.tmp "$(srcdir)/images.mk"; \
+ else \
+ rm images.tmp; \
+ fi
diff --git a/doc/previews/Makefile.am b/doc/previews/Makefile.am
new file mode 100644
index 0000000000..ba952dd154
--- /dev/null
+++ b/doc/previews/Makefile.am
@@ -0,0 +1,73 @@
+if EFL_BUILD_DOC
+
+.PHONY: doc
+
+AM_CPPFLAGS = \
+-I$(top_builddir)/src/lib/efl \
+-I$(top_srcdir)/src/lib/efl \
+-I. \
+-I$(builddir) \
+-I$(top_srcdir)/src/lib/evil \
+-I$(top_builddir)/src/lib/evil \
+-I$(top_srcdir)/src/lib/eina \
+-I$(top_builddir)/src/lib/eina \
+-I$(top_srcdir)/src/lib/eo \
+-I$(top_builddir)/src/lib/eo \
+-I$(top_srcdir)/src/lib/eet \
+-I$(top_builddir)/src/lib/eet \
+-I$(top_srcdir)/src/lib/evas \
+-I$(top_builddir)/src/lib/evas \
+-I$(top_srcdir)/src/lib/ecore \
+-I$(top_builddir)/src/lib/ecore \
+-I$(top_srcdir)/src/lib/ecore_evas \
+-I$(top_builddir)/src/lib/ecore_evas \
+-DEFL_BETA_API_SUPPORT=1 \
+-DEFL_EO_API_SUPPORT=1 \
+@ECORE_EVAS_CFLAGS@
+
+LDADD = \
+$(top_builddir)/src/lib/eina/libeina.la \
+$(top_builddir)/src/lib/eo/libeo.la \
+$(top_builddir)/src/lib/efl/libefl.la \
+$(top_builddir)/src/lib/eet/libeet.la \
+$(top_builddir)/src/lib/evas/libevas.la \
+$(top_builddir)/src/lib/ecore/libecore.la \
+$(top_builddir)/src/lib/ecore_evas/libecore_evas.la \
+@ECORE_EVAS_LDFLAGS@
+
+noinst_PROGRAMS = preview_text_filter
+
+DATADIR = ${abs_top_srcdir}/doc/previews/img
+HTMLDIR = ${abs_top_srcdir}/doc/html
+
+PREVIEWS = blend blur bump curve grow mask transform \
+example_1 padding
+
+previews-data: preview_text_filter
+ $(MKDIR_P) $(DATADIR)
+ $(MKDIR_P) $(HTMLDIR)
+ @for a in $(PREVIEWS) ; do \
+ echo " GEN filter_$${a}.png" ; \
+ FONT="Sans" ; \
+ SIZE=24 ; \
+ TEXT="TEXT" ; \
+ FILTER=`cat ${top_srcdir}/src/examples/evas/filters/filter_$${a}.lua` ; \
+ if [ -e ${top_srcdir}/doc/previews/filter_$${a}.sh ] ; then \
+ source ${top_srcdir}/doc/previews/filter_$${a}.sh ; \
+ fi ; \
+ EVAS_DATA_DIR="$(top_srcdir)/src/lib/evas" $(top_builddir)/doc/previews/preview_text_filter "$${TEXT}" "$${FILTER}" "$(DATADIR)/filter_$${a}.png" "$${FONT}" "$${SIZE}" ; \
+ cp "$(DATADIR)/filter_$${a}.png" "$(HTMLDIR)/" ; \
+ done
+
+if BUILD_EFL_NATIVE
+doc: Makefile previews-data
+endif
+
+
+endif
+
+EXTRA_DIST = preview_text_filter.c
+
+clean-local:
+ rm -rf $(DATADIR)
+
diff --git a/doc/widgets/Makefile.am b/doc/widgets/Makefile.am
new file mode 100644
index 0000000000..e2e75b5ac4
--- /dev/null
+++ b/doc/widgets/Makefile.am
@@ -0,0 +1,196 @@
+MAINTAINERCLEANFILES = Makefile.in
+
+if EFL_BUILD_DOC
+
+include ../../Makefile_Elm_Helpers.am
+
+AM_CPPFLAGS = \
+-I$(top_srcdir) \
+-I$(top_srcdir)/src/lib/elementary \
+-I$(top_builddir)/src/lib/elementary \
+-I$(top_srcdir)/src/bin/elementary \
+-DPACKAGE_BIN_DIR=\"$(bindir)\" \
+-DPACKAGE_DATA_DIR=\"$(datadir)/elementary\" \
+-DDOCW_DIR=\"$(abs_top_builddir)/doc/widgets\" \
+@ELEMENTARY_CFLAGS@
+
+noinst_DATA = widget_preview_prefs.epb
+
+widget_preview_prefs.epb: Makefile widget_preview_prefs.epc
+ $(AM_V_EPB)$(ELM_PREFS_CC) $(ELM_PREFS_FLAGS) \
+ $(top_srcdir)/doc/widgets/widget_preview_prefs.epc \
+ $(top_builddir)/doc/widgets/widget_preview_prefs.epb
+
+noinst_PROGRAMS = \
+widget_preview_actionslider \
+widget_preview_bg \
+widget_preview_box \
+widget_preview_bubble1 \
+widget_preview_bubble2 \
+widget_preview_bubble3 \
+widget_preview_button1 \
+widget_preview_button2 \
+widget_preview_button3 \
+widget_preview_calendar \
+widget_preview_check1 \
+widget_preview_check2 \
+widget_preview_check3 \
+widget_preview_clock \
+widget_preview_colorselector \
+widget_preview_combobox \
+widget_preview_conformant \
+widget_preview_ctxpopup \
+widget_preview_datetime1 \
+widget_preview_datetime2 \
+widget_preview_datetime3 \
+widget_preview_dayselector \
+widget_preview_diskselector \
+widget_preview_entry1 \
+widget_preview_entry2 \
+widget_preview_entry3 \
+widget_preview_entry4 \
+widget_preview_fileselector \
+widget_preview_fileselector_button1 \
+widget_preview_fileselector_button2 \
+widget_preview_fileselector_button3 \
+widget_preview_fileselector_entry \
+widget_preview_flip \
+widget_preview_flipselector \
+widget_preview_frame \
+widget_preview_gengrid \
+widget_preview_genlist1 \
+widget_preview_genlist2 \
+widget_preview_genlist3 \
+widget_preview_genlist4 \
+widget_preview_genlist5 \
+widget_preview_hover \
+widget_preview_hoversel \
+widget_preview_icon \
+widget_preview_image \
+widget_preview_index \
+widget_preview_inwin1 \
+widget_preview_inwin2 \
+widget_preview_inwin3 \
+widget_preview_label \
+widget_preview_layout \
+widget_preview_list \
+widget_preview_map \
+widget_preview_mapbuf \
+widget_preview_menu \
+widget_preview_notify \
+widget_preview_nstate \
+widget_preview_panel \
+widget_preview_panes \
+widget_preview_photocam \
+widget_preview_popup \
+widget_preview_prefs \
+widget_preview_progressbar \
+widget_preview_radio \
+widget_preview_scroller \
+widget_preview_segment_control \
+widget_preview_separator \
+widget_preview_slider \
+widget_preview_slideshow \
+widget_preview_spinner \
+widget_preview_table \
+widget_preview_thumb \
+widget_preview_toolbar \
+widget_preview_web \
+widget_preview_win
+
+LDADD = \
+$(top_builddir)/src/lib/eina/libeina.la \
+$(top_builddir)/src/lib/eo/libeo.la \
+$(top_builddir)/src/lib/efl/libefl.la \
+$(top_builddir)/src/lib/eet/libeet.la \
+$(top_builddir)/src/lib/evas/libevas.la \
+$(top_builddir)/src/lib/ecore/libecore.la \
+$(top_builddir)/src/lib/ecore_evas/libecore_evas.la \
+$(top_builddir)/src/lib/edje/libedje.la \
+$(top_builddir)/src/lib/elementary/libelementary.la \
+@ECORE_EVAS_LDFLAGS@
+
+endif
+
+EXTRA_DIST = \
+ widget_preview_actionslider.c \
+ widget_preview_bg.c \
+ widget_preview_bubble1.c \
+ widget_preview_bubble2.c \
+ widget_preview_bubble3.c \
+ widget_preview_button1.c \
+ widget_preview_button2.c \
+ widget_preview_button3.c \
+ widget_preview_calendar.c \
+ widget_preview_check1.c \
+ widget_preview_check2.c \
+ widget_preview_check3.c \
+ widget_preview_spinner.c \
+ widget_preview_clock.c \
+ widget_preview_colorselector.c \
+ widget_preview_conformant.c \
+ widget_preview_combobox.c \
+ widget_preview_slider.c \
+ widget_preview_panes.c \
+ widget_preview_toolbar.c \
+ widget_preview_mapbuf.c \
+ widget_preview_map.c \
+ widget_preview_ctxpopup.c \
+ widget_preview_datetime1.c \
+ widget_preview_datetime2.c \
+ widget_preview_datetime3.c \
+ widget_preview_dayselector.c \
+ widget_preview_diskselector.c \
+ widget_preview_entry1.c \
+ widget_preview_entry2.c \
+ widget_preview_entry3.c \
+ widget_preview_entry4.c \
+ widget_preview_fileselector_button1.c \
+ widget_preview_fileselector_button2.c \
+ widget_preview_fileselector_button3.c \
+ widget_preview_fileselector.c \
+ widget_preview_fileselector_entry.c \
+ widget_preview_flip.c \
+ widget_preview_flipselector.c \
+ widget_preview_frame.c \
+ widget_preview_hover.c \
+ widget_preview_hoversel.c \
+ widget_preview_icon.c \
+ widget_preview_image.c \
+ widget_preview_index.c \
+ widget_preview_label.c \
+ widget_preview_layout.c \
+ widget_preview_list.c \
+ widget_preview_segment_control.c \
+ widget_preview_popup.c \
+ widget_preview_separator.c \
+ widget_preview_radio.c \
+ widget_preview_panel.c \
+ widget_preview_gengrid.c \
+ widget_preview_genlist1.c \
+ widget_preview_genlist2.c \
+ widget_preview_genlist3.c \
+ widget_preview_genlist4.c \
+ widget_preview_genlist5.c \
+ widget_preview_prefs.c \
+ widget_preview_prefs.epc \
+ widget_preview_progressbar.c \
+ widget_preview_box.c \
+ widget_preview_notify.c \
+ widget_preview_nstate.c \
+ widget_preview_slideshow.c \
+ widget_preview_photocam.c \
+ widget_preview_inwin1.c \
+ widget_preview_inwin2.c \
+ widget_preview_inwin3.c \
+ widget_preview_scroller.c \
+ widget_preview_table.c \
+ widget_preview_win.c \
+ widget_preview_menu.c \
+ widget_preview_thumb.c \
+ widget_preview_web.c \
+ widget_preview_tmpl_foot.c \
+ widget_preview_tmpl_head.c
+
+clean-local:
+ rm -f widget_preview_prefs.epb
diff --git a/m4/.gitignore b/m4/.gitignore
new file mode 100644
index 0000000000..53b4209599
--- /dev/null
+++ b/m4/.gitignore
@@ -0,0 +1,36 @@
+/libtool.m4
+/ltoptions.m4
+/ltsugar.m4
+/ltversion.m4
+/lt~obsolete.m4
+/codeset.m4
+/fcntl-o.m4
+/gettext.m4
+/glibc2.m4
+/glibc21.m4
+/iconv.m4
+/intdiv0.m4
+/intl.m4
+/intldir.m4
+/intlmacosx.m4
+/intmax.m4
+/inttypes-pri.m4
+/inttypes_h.m4
+/lcmessage.m4
+/lib-ld.m4
+/lib-link.m4
+/lib-prefix.m4
+/lock.m4
+/longlong.m4
+/nls.m4
+/po.m4
+/printf-posix.m4
+/progtest.m4
+/size_max.m4
+/stdint_h.m4
+/uintmax_t.m4
+/visibility.m4
+/threadlib.m4
+/wchar_t.m4
+/wint_t.m4
+/xsize.m4
diff --git a/m4/ac_define_if.m4 b/m4/ac_define_if.m4
new file mode 100644
index 0000000000..961ca64452
--- /dev/null
+++ b/m4/ac_define_if.m4
@@ -0,0 +1,7 @@
+dnl use: AC_DEFINE_IF(id, testcond, val, comment)
+AC_DEFUN([AC_DEFINE_IF],
+[
+if $2; then
+ AC_DEFINE($1, $3, $4)
+fi
+])
diff --git a/m4/ac_path_generic.m4 b/m4/ac_path_generic.m4
new file mode 100644
index 0000000000..d42724115f
--- /dev/null
+++ b/m4/ac_path_generic.m4
@@ -0,0 +1,137 @@
+dnl @synopsis AC_PATH_GENERIC(LIBRARY [, MINIMUM-VERSION [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
+dnl
+dnl Runs a LIBRARY-config script and defines LIBRARY_CFLAGS and LIBRARY_LIBS
+dnl
+dnl The script must support `--cflags' and `--libs' args.
+dnl If MINIMUM-VERSION is specified, the script must also support the
+dnl `--version' arg.
+dnl If the `--with-library-[exec-]prefix' arguments to ./configure are given,
+dnl it must also support `--prefix' and `--exec-prefix'.
+dnl (In other words, it must be like gtk-config.)
+dnl
+dnl For example:
+dnl
+dnl AC_PATH_GENERIC(Foo, 1.0.0)
+dnl
+dnl would run `foo-config --version' and check that it is at least 1.0.0
+dnl
+dnl If so, the following would then be defined:
+dnl
+dnl FOO_CFLAGS to `foo-config --cflags`
+dnl FOO_LIBS to `foo-config --libs`
+dnl
+dnl At present there is no support for additional "MODULES" (see AM_PATH_GTK)
+dnl (shamelessly stolen from gtk.m4 and then hacked around a fair amount)
+dnl
+dnl @author Angus Lees <gusl@cse.unsw.edu.au>
+
+AC_DEFUN([AC_PATH_GENERIC],
+[dnl
+dnl we're going to need uppercase, lowercase and user-friendly versions of the
+dnl string `LIBRARY'
+pushdef([UP], translit([$1], [a-z], [A-Z]))dnl
+pushdef([DOWN], translit([$1], [A-Z], [a-z]))dnl
+
+dnl
+dnl Get the cflags and libraries from the LIBRARY-config script
+dnl
+AC_ARG_WITH(DOWN-prefix,
+ [ --with-]DOWN[-prefix=PFX Prefix where $1 is installed (optional)],
+ DOWN[]_config_prefix="$withval", DOWN[]_config_prefix="")
+AC_ARG_WITH(DOWN-exec-prefix,
+ [ --with-]DOWN[-exec-prefix=PFX Exec prefix where $1 is installed (optional)],
+ DOWN[]_config_exec_prefix="$withval", DOWN[]_config_exec_prefix="")
+
+ if test x$DOWN[]_config_exec_prefix != x ; then
+ DOWN[]_config_args="$DOWN[]_config_args --exec-prefix=$DOWN[]_config_exec_prefix"
+ if test x${UP[]_CONFIG+set} != xset ; then
+ UP[]_CONFIG=$DOWN[]_config_exec_prefix/bin/DOWN-config
+ fi
+ fi
+ if test x$DOWN[]_config_prefix != x ; then
+ DOWN[]_config_args="$DOWN[]_config_args --prefix=$DOWN[]_config_prefix"
+ if test x${UP[]_CONFIG+set} != xset ; then
+ UP[]_CONFIG=$DOWN[]_config_prefix/bin/DOWN-config
+ fi
+ fi
+
+ AC_PATH_PROG(UP[]_CONFIG, DOWN-config, no)
+ ifelse([$2], ,
+ AC_MSG_CHECKING(for $1),
+ AC_MSG_CHECKING(for $1 - version >= $2)
+ )
+ no_[]DOWN=""
+ if test "$UP[]_CONFIG" = "no" ; then
+ no_[]DOWN=yes
+ else
+ UP[]_CFLAGS="`$UP[]_CONFIG $DOWN[]_config_args --cflags`"
+ UP[]_LIBS="`$UP[]_CONFIG $DOWN[]_config_args --libs`"
+ ifelse([$2], , ,[
+ DOWN[]_config_major_version=`$UP[]_CONFIG $DOWN[]_config_args \
+ --version | sed 's/[[^0-9]]*\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\).*/\1/'`
+ DOWN[]_config_minor_version=`$UP[]_CONFIG $DOWN[]_config_args \
+ --version | sed 's/[[^0-9]]*\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\).*/\2/'`
+ DOWN[]_config_micro_version=`$UP[]_CONFIG $DOWN[]_config_args \
+ --version | sed 's/[[^0-9]]*\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\).*/\3/'`
+ DOWN[]_wanted_major_version="regexp($2, [\<\([0-9]*\)], [\1])"
+ DOWN[]_wanted_minor_version="regexp($2, [\<\([0-9]*\)\.\([0-9]*\)], [\2])"
+ DOWN[]_wanted_micro_version="regexp($2, [\<\([0-9]*\).\([0-9]*\).\([0-9]*\)], [\3])"
+
+ # Compare wanted version to what config script returned.
+ # If I knew what library was being run, i'd probably also compile
+ # a test program at this point (which also extracted and tested
+ # the version in some library-specific way)
+ if test "$DOWN[]_config_major_version" -lt \
+ "$DOWN[]_wanted_major_version" \
+ -o \( "$DOWN[]_config_major_version" -eq \
+ "$DOWN[]_wanted_major_version" \
+ -a "$DOWN[]_config_minor_version" -lt \
+ "$DOWN[]_wanted_minor_version" \) \
+ -o \( "$DOWN[]_config_major_version" -eq \
+ "$DOWN[]_wanted_major_version" \
+ -a "$DOWN[]_config_minor_version" -eq \
+ "$DOWN[]_wanted_minor_version" \
+ -a "$DOWN[]_config_micro_version" -lt \
+ "$DOWN[]_wanted_micro_version" \) ; then
+ # older version found
+ no_[]DOWN=yes
+ echo -n "*** An old version of $1 "
+ echo -n "($DOWN[]_config_major_version"
+ echo -n ".$DOWN[]_config_minor_version"
+ echo ".$DOWN[]_config_micro_version) was found."
+ echo -n "*** You need a version of $1 newer than "
+ echo -n "$DOWN[]_wanted_major_version"
+ echo -n ".$DOWN[]_wanted_minor_version"
+ echo ".$DOWN[]_wanted_micro_version."
+ echo "***"
+ echo "*** If you have already installed a sufficiently new version, this error"
+ echo "*** probably means that the wrong copy of the DOWN-config shell script is"
+ echo "*** being found. The easiest way to fix this is to remove the old version"
+ echo "*** of $1, but you can also set the UP[]_CONFIG environment to point to the"
+ echo "*** correct copy of DOWN-config. (In this case, you will have to"
+ echo "*** modify your LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf"
+ echo "*** so that the correct libraries are found at run-time)"
+ fi
+ ])
+ fi
+ if test "x$no_[]DOWN" = x ; then
+ AC_MSG_RESULT(yes)
+ ifelse([$3], , :, [$3])
+ else
+ AC_MSG_RESULT(no)
+ if test "$UP[]_CONFIG" = "no" ; then
+ echo "*** The DOWN-config script installed by $1 could not be found"
+ echo "*** If $1 was installed in PREFIX, make sure PREFIX/bin is in"
+ echo "*** your path, or set the UP[]_CONFIG environment variable to the"
+ echo "*** full path to DOWN-config."
+ fi
+ UP[]_CFLAGS=""
+ UP[]_LIBS=""
+ ifelse([$4], , :, [$4])
+ fi
+ AC_SUBST(UP[]_CFLAGS)
+ AC_SUBST(UP[]_LIBS)
+
+ popdef([UP])
+ popdef([DOWN])
+])
diff --git a/m4/ax_cxx_compile_stdcxx_11.m4 b/m4/ax_cxx_compile_stdcxx_11.m4
new file mode 100644
index 0000000000..af37acdb5c
--- /dev/null
+++ b/m4/ax_cxx_compile_stdcxx_11.m4
@@ -0,0 +1,133 @@
+# ============================================================================
+# http://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx_11.html
+# ============================================================================
+#
+# SYNOPSIS
+#
+# AX_CXX_COMPILE_STDCXX_11([ext|noext],[mandatory|optional])
+#
+# DESCRIPTION
+#
+# Check for baseline language coverage in the compiler for the C++11
+# standard; if necessary, add switches to CXXFLAGS to enable support.
+#
+# The first argument, if specified, indicates whether you insist on an
+# extended mode (e.g. -std=gnu++11) or a strict conformance mode (e.g.
+# -std=c++11). If neither is specified, you get whatever works, with
+# preference for an extended mode.
+#
+# The second argument, if specified 'mandatory' or if left unspecified,
+# indicates that baseline C++11 support is required and that the macro
+# should error out if no mode with that support is found. If specified
+# 'optional', then configuration proceeds regardless, after defining
+# HAVE_CXX11 if and only if a supporting mode is found.
+#
+# LICENSE
+#
+# Copyright (c) 2008 Benjamin Kosnik <bkoz@redhat.com>
+# Copyright (c) 2012 Zack Weinberg <zackw@panix.com>
+# Copyright (c) 2013 Roy Stogner <roystgnr@ices.utexas.edu>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice
+# and this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+#serial 3
+
+m4_define([_AX_CXX_COMPILE_STDCXX_11_testbody], [
+ template <typename T>
+ struct check
+ {
+ static_assert(sizeof(int) <= sizeof(T), "not big enough");
+ };
+
+ typedef check<check<bool>> right_angle_brackets;
+
+ int a;
+ decltype(a) b;
+
+ typedef check<int> check_type;
+ check_type c;
+ check_type&& cr = static_cast<check_type&&>(c);
+
+ auto d = a;
+])
+
+AC_DEFUN([AX_CXX_COMPILE_STDCXX_11], [dnl
+ m4_if([$1], [], [],
+ [$1], [ext], [],
+ [$1], [noext], [],
+ [m4_fatal([invalid argument `$1' to AX_CXX_COMPILE_STDCXX_11])])dnl
+ m4_if([$2], [], [ax_cxx_compile_cxx11_required=true],
+ [$2], [mandatory], [ax_cxx_compile_cxx11_required=true],
+ [$2], [optional], [ax_cxx_compile_cxx11_required=false],
+ [m4_fatal([invalid second argument `$2' to AX_CXX_COMPILE_STDCXX_11])])dnl
+ AC_LANG_PUSH([C++])dnl
+ ac_success=no
+ AC_CACHE_CHECK(whether $CXX supports C++11 features by default,
+ ax_cv_cxx_compile_cxx11,
+ [AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_11_testbody])],
+ [ax_cv_cxx_compile_cxx11=yes],
+ [ax_cv_cxx_compile_cxx11=no])])
+ if test x$ax_cv_cxx_compile_cxx11 = xyes; then
+ ac_success=yes
+ fi
+
+ m4_if([$1], [noext], [], [dnl
+ if test x$ac_success = xno; then
+ for switch in -std=gnu++11 -std=gnu++0x; do
+ cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx11_$switch])
+ AC_CACHE_CHECK(whether $CXX supports C++11 features with $switch,
+ $cachevar,
+ [ac_save_CXXFLAGS="$CXXFLAGS"
+ CXXFLAGS="$CXXFLAGS $switch"
+ AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_11_testbody])],
+ [eval $cachevar=yes],
+ [eval $cachevar=no])
+ CXXFLAGS="$ac_save_CXXFLAGS"])
+ if eval test x\$$cachevar = xyes; then
+ CXXFLAGS="$CXXFLAGS $switch"
+ ac_success=yes
+ break
+ fi
+ done
+ fi])
+
+ m4_if([$1], [ext], [], [dnl
+ if test x$ac_success = xno; then
+ for switch in -std=c++11 -std=c++0x; do
+ cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx11_$switch])
+ AC_CACHE_CHECK(whether $CXX supports C++11 features with $switch,
+ $cachevar,
+ [ac_save_CXXFLAGS="$CXXFLAGS"
+ CXXFLAGS="$CXXFLAGS $switch"
+ AC_COMPILE_IFELSE([AC_LANG_SOURCE([_AX_CXX_COMPILE_STDCXX_11_testbody])],
+ [eval $cachevar=yes],
+ [eval $cachevar=no])
+ CXXFLAGS="$ac_save_CXXFLAGS"])
+ if eval test x\$$cachevar = xyes; then
+ CXXFLAGS="$CXXFLAGS $switch"
+ ac_success=yes
+ break
+ fi
+ done
+ fi])
+ AC_LANG_POP([C++])
+ if test x$ax_cxx_compile_cxx11_required = xtrue; then
+ if test x$ac_success = xno; then
+ AC_MSG_ERROR([*** A compiler with support for C++11 language features is required.])
+ fi
+ else
+ if test x$ac_success = xno; then
+ HAVE_CXX11=0
+ AC_MSG_NOTICE([No compiler with C++11 support was found])
+ else
+ HAVE_CXX11=1
+ AC_DEFINE(HAVE_CXX11,1,
+ [define if the compiler supports basic C++11 syntax])
+ fi
+
+ AC_SUBST(HAVE_CXX11)
+ fi
+])
diff --git a/m4/ecore_check_c_extension.m4 b/m4/ecore_check_c_extension.m4
new file mode 100644
index 0000000000..da4b44fe0c
--- /dev/null
+++ b/m4/ecore_check_c_extension.m4
@@ -0,0 +1,25 @@
+dnl use: ECORE_CHECK_X_EXTENSION(Foo, header, lib, func)
+AC_DEFUN([ECORE_CHECK_X_EXTENSION],
+[
+pushdef([UP], translit([$1], [a-z], [A-Z]))dnl
+
+ SAVE_CFLAGS=$CFLAGS
+ CFLAGS="$CFLAGS $ECORE_X_XLIB_cflags"
+ AC_CHECK_HEADER(X11/extensions/$2,
+ [
+ SAVE_LIBS=$LIBS
+ LIBS="$LIBS $ECORE_X_XLIB_libs"
+ AC_CHECK_LIB($3, $4,
+ [AC_DEFINE(ECORE_[]UP, 1, [Build support for $1])],
+ [AC_MSG_ERROR([Missing support for X extension: $1])])
+ LIBS=$SAVE_LIBS
+ ],
+ [AC_MSG_ERROR([Missing X11/extensions/$2])],
+ [ #include <X11/Xlib.h> ]
+ )
+ CFLAGS=$SAVE_CFLAGS
+
+ECORE_X_LIBS="${ECORE_X_LIBS} -l$3"
+
+popdef([UP])
+])
diff --git a/m4/ecore_check_module.m4 b/m4/ecore_check_module.m4
new file mode 100644
index 0000000000..8fdec9bdc4
--- /dev/null
+++ b/m4/ecore_check_module.m4
@@ -0,0 +1,35 @@
+dnl use: ECORE_EVAS_MODULE(name, want, [DEPENDENCY-CHECK-CODE])
+AC_DEFUN([ECORE_EVAS_MODULE],
+[dnl
+m4_pushdef([UP], m4_translit([[$1]], [-a-z], [_A-Z]))dnl
+m4_pushdef([DOWN], m4_translit([[$1]], [-A-Z], [_a-z]))dnl
+
+have_ecore_evas_[]m4_defn([DOWN])="no"
+want_module="$2"
+
+ecore_evas_engines_[]m4_defn([DOWN])[]_cflags=""
+ecore_evas_engines_[]m4_defn([DOWN])[]_libs=""
+
+if test "x$want_module" = "xyes" || test "x$want_module" = "xstatic"; then
+ $3
+
+ AC_DEFINE([BUILD_ECORE_EVAS_]m4_defn([UP]), [1], [Support for $1 Engine in Ecore_Evas])
+ have_ecore_evas_[]m4_defn([DOWN])="yes"
+
+ case "$1" in
+ xgl-drm)
+ PKG_CHECK_MODULES([GBM], [gbm])
+ ecore_evas_engines_[]m4_defn([DOWN])[]_cflags="${GBM_CFLAGS}"
+ ecore_evas_engines_[]m4_defn([DOWN])[]_libs="${GBM_LIBS}"
+ ;;
+ esac
+fi
+
+AC_SUBST([ecore_evas_engines_]m4_defn([DOWN])[_cflags])
+AC_SUBST([ecore_evas_engines_]m4_defn([DOWN])[_libs])
+
+EFL_ADD_FEATURE([ECORE_EVAS], [$1], [${want_module}])dnl
+AM_CONDITIONAL([BUILD_ECORE_EVAS_]UP, [test "x$have_ecore_evas_]m4_defn([DOWN])[" = "xyes"])dnl
+m4_popdef([UP])dnl
+m4_popdef([DOWN])dnl
+])
diff --git a/m4/efl.m4 b/m4/efl.m4
new file mode 100644
index 0000000000..a01c5b401c
--- /dev/null
+++ b/m4/efl.m4
@@ -0,0 +1,509 @@
+dnl file to manage modules in efl
+
+dnl EFL_VERSION(major, minor, micro, release)
+dnl This setup EFL version information and should be called BEFORE AC_INIT().
+dnl
+dnl release parameter is 'dev' to use from SVN or libtool -release field.
+dnl It may be empty if not dev (svn/live build) and no -release is to be used.
+dnl
+dnl Examples:
+dnl EFL_VERSION(1, 7, 99, dev)
+dnl EFL_VERSION(1, 7, 99, ver-1234)
+dnl This will define couple of m4 symbols:
+dnl v_maj = given major number (first parameter)
+dnl v_min = given minor number (second parameter)
+dnl v_mic = given micro number (third parameter)
+dnl v_rev = if release, it's 0, otherwise it's dev_version.
+dnl v_rel = if release, it's -release followed by fourth parameter,
+dnl otherwise it's empty. (mostly for libtool)
+dnl efl_version = if release, it's major.minor.micro, otherwise it's
+dnl major.minor.micro.dev_version
+dnl dev_version = development version (svn revision).
+dnl def_build_profile = dev or release based on 'dev' release parameter.
+AC_DEFUN([EFL_VERSION],
+[dnl
+m4_define([v_maj], [$1])dnl
+m4_define([v_min], [$2])dnl
+m4_define([v_mic], [$3])dnl
+m4_define([dev_version], m4_esyscmd([(git rev-list --count HEAD 2>/dev/null || echo 0) | tr -d '\n']))dnl
+m4_define([v_rev], m4_if($4, dev, [dev_version], [0]))dnl
+m4_define([v_rel], [])dnl
+m4_define([def_build_profile], m4_if($4, dev, [dev], [release]))dnl
+m4_define([efl_version], m4_if($4, dev, [v_maj.v_min.v_mic.v_rev], [v_maj.v_min.v_mic]))dnl
+dnl m4_define([efl_version], [v_maj.v_min.v_mic])dnl
+])
+
+dnl EFL_COLOR
+dnl will check if terminal supports color and if color is wanted by user.
+dnl
+dnl Used Variables:
+dnl WANT_COLOR: if no, forces no color output.
+dnl TERM: used to check if color should be enabled.
+dnl
+dnl Defined Variables:
+dnl COLOR_YES: to be used in positive/yes conditions
+dnl COLOR_NO: to be used in negative/no conditions
+dnl COLOR_OTHER: to be used to highlight some other condition
+dnl COLOR_RESET: to reset color
+dnl want_color: yes or no
+AC_DEFUN([EFL_COLOR],
+[dnl
+case "$TERM" in
+ xterm|xterm-color|xterm-256color|Eterm|aterm|kterm|rxvt*|screen|gnome|interix)
+ want_color="${WANT_COLOR:-yes}"
+ ;;
+ *)
+ want_color="no"
+ ;;
+esac
+
+### echo compatibility
+
+## the BSD echo does not have the -e option (it is the default behaviour)
+echo_e=
+if test "`echo -e x`" = "x"; then
+ echo_e=-e
+fi
+AC_SUBST([ECHO_E], [${echo_e}])
+
+if test "${want_color}" = "yes"; then
+ COLOR_YES=`echo $echo_e "\033@<:@1;32m"`
+ COLOR_NO=`echo $echo_e "\033@<:@1;31m"`
+ COLOR_OTHER=`echo $echo_e "\033@<:@1;36m"`
+ COLOR_RESET=`echo $echo_e "\033@<:@0m"`
+else
+ COLOR_YES=""
+ COLOR_NO=""
+ COLOR_OTHER=""
+ COLOR_RESET=""
+fi
+])
+
+dnl EFL_INIT()
+dnl Will AC_DEFINE() the following:
+dnl VMAJ = v_maj
+dnl VMIN = v_min
+dnl VMIC = v_mic
+dnl VREV = v_rev
+dnl Will AC_SUBST() the following:
+dnl VMAJ = v_maj
+dnl VMIN = v_min
+dnl VMIC = v_mic
+dnl EFL_LTLIBRARY_FLAGS="-no-undefined -version-info ..."
+dnl EFL_LTMODULE_FLAGS="-no-undefined -avoid-version"
+dnl Will define the following m4:
+dnl lt_cur = libtool 'current' field of libtool's -version-info
+dnl lt_rev = libtool 'revision' field of libtool's -version-info
+dnl lt_age = libtool 'age' field of libtool's -version-info
+AC_DEFUN([EFL_INIT],
+[dnl
+AC_REQUIRE([EFL_COLOR])dnl
+AC_DEFINE_UNQUOTED([VMAJ], [v_maj], [Major version])dnl
+AC_DEFINE_UNQUOTED([VMIN], [v_min], [Minor version])dnl
+AC_DEFINE_UNQUOTED([VMIC], [v_mic], [Micro version])dnl
+AC_DEFINE_UNQUOTED([VREV], [v_rev], [Revison])dnl
+VMAJ=v_maj
+VMIN=v_min
+VMIC=v_mic
+AC_SUBST([VMAJ])dnl
+AC_SUBST([VMIN])dnl
+AC_SUBST([VMIC])dnl
+dnl
+dnl TODO: warning - lt_cur:
+dnl the previous code assumed v_maj + v_min, but this will be a problem when
+dnl we bump v_maj and reset v_min. 1 + 7 == 7 + 1, so if v_maj is bumped
+dnl we multiply it by 100.
+m4_define([lt_cur], m4_if(m4_cmp(v_maj, 1), 0, m4_eval(v_maj + v_min), m4_eval(v_maj * 100 + v_min)))dnl
+m4_define([lt_rev], v_mic)dnl
+m4_define([lt_age], v_min)dnl
+dnl
+EFL_LTLIBRARY_FLAGS="-no-undefined -version-info lt_cur:lt_rev:lt_age v_rel"
+AC_SUBST(EFL_LTLIBRARY_FLAGS)dnl
+EFL_LTMODULE_FLAGS="-no-undefined -avoid-version"
+AC_SUBST([EFL_LTMODULE_FLAGS])dnl
+AC_MSG_NOTICE([Initialized AC_PACKAGE_NAME (AC_PACKAGE_VERSION) development=dev_version v_rel])
+])
+
+dnl EFL_EVAL_PKGS(EFL)
+dnl does PKG_CHECK_MODULES() for given EFL
+AC_DEFUN([EFL_EVAL_PKGS],
+[dnl
+m4_pushdef([DOWNEFL], m4_translit([$1], [-A-Z], [_a-z]))dnl
+if test "x${requirements_pc_deps_[]m4_defn([DOWNEFL])}" != "x"; then
+ PKG_CHECK_MODULES([$1], [${requirements_pc_deps_[]m4_defn([DOWNEFL])}])
+fi
+m4_popdef([DOWNEFL])dnl
+])
+
+dnl EFL_INTERNAL_DEPEND_PKG(EFL, OTHEREFL)
+dnl Adds a pkg-config dependency on another EFL.
+AC_DEFUN([EFL_INTERNAL_DEPEND_PKG],
+[dnl
+m4_pushdef([DOWNEFL], m4_translit([$1], [-A-Z], [_a-z]))dnl
+m4_pushdef([DOWNOTHER], m4_translit([$2], [-A-Z], [_a-z]))dnl
+dnl TODO: we need to fix the package config names for 2.0
+dnl TODO: and make them uniform in scheme.
+depname="$2"
+libdirname="m4_defn([DOWNOTHER])"
+libname="m4_defn([DOWNOTHER])"
+case "m4_defn([DOWNOTHER])" in
+ ethumb_client)
+ depname="ethumb_client"
+ ;;
+ efreet_mime)
+ libdirname="efreet"
+ ;;
+ efreet_trash)
+ libdirname="efreet"
+ ;;
+ ecore_x)
+ depname="ecore-x"
+ ;;
+ ecore_wl2)
+ depname="ecore-wl2"
+ ;;
+ ecore_fb)
+ depname="ecore-fb"
+ ;;
+ ecore_drm)
+ depname="ecore-drm"
+ ;;
+ ecore_cocoa)
+ depname="ecore-cocoa"
+ ;;
+ ecore_win32)
+ depname="ecore-win32"
+ ;;
+ ecore_drm2)
+ depname="ecore-drm2"
+ ;;
+ ecore_sdl)
+ depname="ecore-sdl"
+ ;;
+ ecore_file)
+ depname="ecore-file"
+ ;;
+esac
+requirements_pc_[]m4_defn([DOWNEFL])="${depname} >= ${PACKAGE_VERSION} ${requirements_pc_[][]m4_defn([DOWNEFL])}"
+requirements_cflags_[]m4_defn([DOWNEFL])="${requirements_cflags_[][]m4_defn([DOWNEFL])} -I\$(top_srcdir)/src/lib/${libdirname} -I\$(top_builddir)/src/lib/${libdirname}"
+requirements_internal_libs_[]m4_defn([DOWNEFL])="${requirements_internal_libs_[][]m4_defn([DOWNEFL])} lib/${libdirname}/lib${libname}.la"
+requirements_internal_deps_libs_[]m4_defn([DOWNEFL])="${requirements_internal_deps_libs_[][]m4_defn([DOWNEFL])} ${requirements_public_libs_[]m4_defn([DOWNOTHER])}"
+m4_popdef([DOWNOTHER])dnl
+m4_popdef([DOWNEFL])dnl
+])
+
+dnl EFL_PLATFORM_DEPEND(EFL, PLATFORM)
+dnl PLATFORM is one of: all, evil, escape, exotic
+AC_DEFUN([EFL_PLATFORM_DEPEND],
+[dnl
+m4_pushdef([DOWNOTHER], m4_translit([$2], [-A-Z], [_a-z]))dnl
+case "m4_defn([DOWNOTHER])" in
+ all)
+ if test "x${efl_lib_optional_evil}" = "xyes"; then
+ EFL_INTERNAL_DEPEND_PKG([$1], [evil])
+ elif test "x${efl_lib_optional_escape}" = "xyes"; then
+ EFL_INTERNAL_DEPEND_PKG([$1], [escape])
+ elif test "x${efl_lib_optional_exotic}" = "xyes"; then
+ EFL_INTERNAL_DEPEND_PKG([$1], [exotic])
+ fi
+ ;;
+ *)
+ if test "x${efl_lib_optional_[]m4_defn([DOWNOTHER])}" = "xyes"; then
+ EFL_INTERNAL_DEPEND_PKG([$1], [$2])
+ fi
+ ;;
+esac
+m4_popdef([DOWNOTHER])dnl
+])
+
+dnl EFL_CRYPTO_DEPEND(EFL)
+dnl the given EFL will use/depend on system crypto settings
+AC_DEFUN([EFL_CRYPTO_DEPEND],
+[dnl
+m4_pushdef([DOWNEFL], m4_translit([$1], [-A-Z], [_a-z]))dnl
+requirements_pc_[]m4_defn([DOWNEFL])="${requirements_pc_[][]m4_defn([DOWNEFL])} ${requirements_pc_crypto}"
+requirements_pc_deps_[]m4_defn([DOWNEFL])="${requirements_pc_deps_[][]m4_defn([DOWNEFL])} ${requirements_pc_deps_crypto}"
+requirements_libs_[]m4_defn([DOWNEFL])="${requirements_libs_[][]m4_defn([DOWNEFL])} ${requirements_libs_crypto}"
+requirements_cflags_[]m4_defn([DOWNEFL])="${requirements_cflags_[][]m4_defn([DOWNEFL])} ${requirements_cflags_crypto}"
+m4_popdef([DOWNEFL])dnl
+])
+
+dnl EFL_DEPEND_PKG(EFL, NAME, PACKAGE, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+dnl Adds a pkg-config dependency to an efl, AC_DEFINE() HAVE_NAME,
+dnl and inserts dependencies in proper variables
+AC_DEFUN([EFL_DEPEND_PKG],
+[dnl
+m4_pushdef([UPEFL], m4_translit([$1], [-a-z], [_A-Z]))dnl
+m4_pushdef([DOWNEFL], m4_translit([$1], [-A-Z], [_a-z]))dnl
+m4_pushdef([UPNAME], m4_translit([$2], [-a-z], [_A-Z]))dnl
+m4_pushdef([DOWNNAME], m4_translit([$2], [-A-Z], [_a-z]))dnl
+
+ have_[]m4_defn([DOWNNAME])="no"
+
+ EFL_PKG_CHECK_STRICT([$3], [
+ AC_DEFINE([HAVE_]m4_defn([UPNAME]), [1], [Have `]m4_defn([DOWNNAME])[' pkg-config installed.])
+ requirements_pc_[]m4_defn([DOWNEFL])="${requirements_pc_[][]m4_defn([DOWNEFL])} $3"
+ requirements_pc_deps_[]m4_defn([DOWNEFL])="${requirements_pc_deps_[]m4_defn([DOWNEFL])} $3"
+ have_[]m4_defn([DOWNNAME])="yes"
+
+ $4
+
+ ], [$5])
+
+m4_popdef([DOWNNAME])
+m4_popdef([UPNAME])
+m4_popdef([DOWNEFL])
+m4_popdef([UPEFL])
+])
+
+dnl EFL_OPTIONAL_DEPEND_PKG(EFL, VARIABLE, NAME, PACKAGE, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+AC_DEFUN([EFL_OPTIONAL_DEPEND_PKG],
+[dnl
+m4_pushdef([DOWN], m4_translit([$3], [-A-Z], [_a-z]))dnl
+
+ have_[]m4_defn([DOWN])="no"
+ if test "x$2" = "xyes"; then
+ EFL_DEPEND_PKG([$1], [$3], [$4], [$5], [$6])
+ fi
+m4_popdef([DOWN])dnl
+])
+
+dnl EFL_OPTIONAL_INTERNAL_DEPEND_PKG(EFL, VARIABLE, NAME)
+AC_DEFUN([EFL_OPTIONAL_INTERNAL_DEPEND_PKG],
+[dnl
+ if test "x$2" = "xyes"; then
+ EFL_INTERNAL_DEPEND_PKG([$1], [$3])
+ fi
+])
+
+dnl EFL_ADD_LIBS(PKG, LIBS)
+dnl Add libraries that the EFL library will depend on
+dnl See EFL_DEPEND_PKG() for pkg-config version.
+AC_DEFUN([EFL_ADD_LIBS],
+[dnl
+m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
+requirements_libs_[]m4_defn([DOWN])="${requirements_libs_[]m4_defn([DOWN])} $2"
+m4_popdef([DOWN])dnl
+])
+
+dnl EFL_ADD_PUBLIC_LIBS(PKG, PUBLIC_LIBS)
+dnl Add libraries that the EFL library will depend on when used.
+dnl
+dnl Unlike EFL_ADD_LIBS(), that is only used when generating PKG,
+dnl this one is used when linking PKG to other libraries or applications.
+dnl
+dnl For instance if you use some other library in your header that user
+dnl inclues.
+AC_DEFUN([EFL_ADD_PUBLIC_LIBS],
+[dnl
+m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
+requirements_public_libs_[]m4_defn([DOWN])="${requirements_public_libs_[]m4_defn([DOWN])} $2"
+m4_popdef([DOWN])dnl
+])
+
+dnl EFL_ADD_CFLAGS(PKG, CFLAGS)
+dnl Add CFLAGS that the EFL library will use
+dnl See EFL_DEPEND_PKG() for pkg-config version.
+AC_DEFUN([EFL_ADD_CFLAGS],
+[dnl
+m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
+requirements_cflags_[]m4_defn([DOWN])="${requirements_cflags_[]m4_defn([DOWN])} $2"
+m4_popdef([DOWN])dnl
+])
+
+dnl EFL_LIB_START(PKG)
+dnl start the setup of an EFL library, defines variables and prints a notice
+dnl
+dnl Exports (AC_SUBST)
+dnl PKG_CFLAGS: what to use for CFLAGS
+dnl
+dnl PKG_LDFLAGS: what to use for LDFLAGS
+dnl
+dnl PKG_LIBS: what to use in automake's _LIBADD or _LDADD. Includes
+dnl everything else.
+dnl
+dnl PKG_INTERNAL_LIBS: all other EFL as lib/name/libname.la that this
+dnl package depend. Used in automake's _DEPENDENCIES.
+dnl
+dnl USE_PKG_LIBS: what to use in automake's _LIBADD or _LDADD when using
+dnl this PKG (PKG_LIBS + libpkg.la)
+dnl
+dnl USE_PKG_INTERNAL_LIBS: extends PKG_INTERNAL_LIBS with lib/pkg/libpkg.la
+dnl
+dnl requirements_pc_pkg: all pkg-config (pc) files used by this pkg,
+dnl includes internal EFL (used in 'Requires.private' in pkg.pc)
+dnl
+dnl requirements_libs_pkg: external libraries this package needs when
+dnl linking (used in 'Libs.private' in pkg.pc)
+dnl
+dnl requirements_public_libs_pkg: external libraries other packages need
+dnl when using this (used in 'Libs' in pkg.pc)
+dnl
+dnl requirements_cflags_pkg: what to use for CFLAGS (same as PKG_CFLAGS).
+dnl
+dnl Variables:
+dnl requirements_pc_deps_pkg: external pkg-config (pc) files used by this
+dnl pkg (used in EFL_EVAL_PKGS())
+dnl
+dnl requirements_internal_libs_pkg: all other EFL as lib/name/libname.la
+dnl that this package depend.
+dnl
+dnl requirements_internal_deps_libs_pkg: external libraries that are public
+dnl dependencies (due internal libs).
+dnl
+AC_DEFUN([EFL_LIB_START],
+[dnl
+m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
+m4_pushdef([UP], m4_translit([$1], [-a-z], [_A-Z]))dnl
+
+requirements_internal_libs_[]m4_defn([DOWN])=""
+requirements_internal_deps_libs_[]m4_defn([DOWN])=""
+requirements_libs_[]m4_defn([DOWN])=""
+requirements_public_libs_[]m4_defn([DOWN])=""
+requirements_cflags_[]m4_defn([DOWN])=""
+requirements_pc_[]m4_defn([DOWN])=""
+requirements_pc_deps_[]m4_defn([DOWN])=""
+
+m4_defn([UP])_LIBS="${m4_defn([UP])_LIBS}"
+m4_defn([UP])_INTERNAL_LIBS="${m4_defn([UP])_INTERNAL_LIBS}"
+USE_[]m4_defn([UP])_LIBS="${USE_[]m4_defn([UP])_LIBS}"
+USE_[]m4_defn([UP])_INTERNAL_LIBS="${USE_[]m4_defn([UP])_INTERNAL_LIBS}"
+m4_defn([UP])_LDFLAGS="${m4_defn([UP])_LDFLAGS}"
+m4_defn([UP])_CFLAGS="${m4_defn([UP])_CFLAGS}"
+
+AC_SUBST([requirements_libs_]m4_defn([DOWN]))dnl
+AC_SUBST([requirements_public_libs_]m4_defn([DOWN]))dnl
+AC_SUBST([requirements_cflags_]m4_defn([DOWN]))dnl
+AC_SUBST([requirements_pc_]m4_defn([DOWN]))dnl
+AC_SUBST(m4_defn([UP])[_LIBS])dnl
+AC_SUBST(m4_defn([UP])[_INTERNAL_LIBS])dnl
+AC_SUBST([USE_]m4_defn([UP])[_LIBS])dnl
+AC_SUBST([USE_]m4_defn([UP])[_INTERNAL_LIBS])dnl
+AC_SUBST(m4_defn([UP])[_LDFLAGS])dnl
+AC_SUBST(m4_defn([UP])[_CFLAGS])dnl
+AC_MSG_NOTICE([Start $1 checks])dnl
+m4_popdef([UP])dnl
+m4_popdef([DOWN])dnl
+])
+
+dnl EFL_LIBS_SUBBUILD(TARGET, DEPENDENCIES)
+dnl Make TARGET contain all DEPENDENCIES relative to SUBDIR build
+AC_DEFUN([EFL_LIBS_SUBBUILD],
+[dnl
+$1=""
+_SUBDIR="../../"
+
+for dep in $2; do
+ case $dep in
+ lib*.la)
+ _DEPENDENCY=$_SUBDIR$dep
+ ;;
+ *)
+ _DEPENDENCY=$dep
+ ;;
+ esac
+
+ $1=${$1}" ${_DEPENDENCY}"
+done
+
+AC_SUBST([$1])
+])
+
+dnl EFL_LIB_END(PKG)
+dnl finishes the setup of an EFL library
+AC_DEFUN([EFL_LIB_END],
+[dnl
+m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
+m4_pushdef([UP], m4_translit([$1], [-a-z], [_A-Z]))dnl
+
+libdirname="m4_defn([DOWN])"
+libname="m4_defn([DOWN])"
+
+m4_defn([UP])_LDFLAGS="${EFLALL_COV_LDFLAGS} ${EFLALL_LDFLAGS} ${m4_defn([UP])_LDFLAGS}"
+m4_defn([UP])_LIBS=" ${m4_defn([UP])_LDFLAGS} ${EFLALL_COV_LIBS} ${EFLALL_LIBS} ${m4_defn([UP])_LIBS} ${requirements_internal_libs_[]m4_defn([DOWN])} ${requirements_internal_deps_libs_[]m4_defn([DOWN])} ${requirements_public_libs_[]m4_defn([DOWN])} ${requirements_libs_[]m4_defn([DOWN])} ${requirements_libs_eflall} "
+m4_defn([UP])_INTERNAL_LIBS="${m4_defn([UP])_INTERNAL_LIBS} ${requirements_internal_libs_[]m4_defn([DOWN])}"
+USE_[]m4_defn([UP])_LIBS="${m4_defn([UP])_LIBS} lib/${libdirname}/lib${libname}.la"
+USE_[]m4_defn([UP])_INTERNAL_LIBS="${m4_defn([UP])_INTERNAL_LIBS} lib/${libdirname}/lib${libname}.la"
+m4_defn([UP])_CFLAGS="${EFL_WINDOWS_VERSION_CFLAGS} ${EFLALL_COV_CFLAGS} ${EFLALL_CFLAGS} ${m4_defn([UP])_CFLAGS} -I\$(top_srcdir)/src/lib/${libdirname} -I\$(top_builddir)/src/lib/${libdirname} -I\$(top_srcdir)/src/bindings/cxx/${libdirname} -I\$(top_builddir)/src/bindings/${libdirname} ${requirements_cflags_[]m4_defn([DOWN])} ${requirements_cflags_eflall}"
+requirements_pc_[]m4_defn([DOWN])="${requirements_pc_[]m4_defn([DOWN])} ${requirements_pc_eflall}"
+requirements_pc_deps_[]m4_defn([DOWN])="${requirements_pc_deps_[]m4_defn([DOWN])} ${requirements_pc_deps_eflall}"
+
+EFL_LIBS_SUBBUILD(m4_defn([UP])_SUBBUILD_LIBS, ${m4_defn([UP])_LIBS})
+EFL_LIBS_SUBBUILD(m4_defn([UP])_SUBBUILD_INTERNAL_LIBS, ${m4_defn([UP])_INTERNAL_LIBS})
+EFL_LIBS_SUBBUILD(USE_[]m4_defn([UP])_SUBBUILD_LIBS, "USE_[]m4_defn([UP])_LIBS")
+
+AC_MSG_NOTICE([Finished $1 checks])dnl
+m4_popdef([UP])dnl
+m4_popdef([DOWN])dnl
+])
+
+dnl EFL_LIB_START_OPTIONAL(PKG, TEST)
+dnl test if library should be build and then EFL_LIB_START()
+dnl must call EFL_LIB_END_OPTIONAL() to close it.
+AC_DEFUN([EFL_LIB_START_OPTIONAL],
+[dnl
+m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
+m4_pushdef([UP], m4_translit([$1], [-a-z], [_A-Z]))dnl
+
+if $2; then
+ efl_lib_optional_[]m4_defn([DOWN])="yes"
+else
+ efl_lib_optional_[]m4_defn([DOWN])="no"
+ AC_MSG_NOTICE([Skipping $1 checks (disabled)])
+fi
+
+if test "$efl_lib_optional_[]m4_defn([DOWN])" = "yes"; then
+ EFL_LIB_START([$1])
+ AC_DEFINE([HAVE_]m4_defn([UP]), [1], [optional EFL $1 is enabled])
+dnl closed at EFL_LIB_END_OPTIONAL()
+m4_popdef([UP])dnl
+m4_popdef([DOWN])dnl
+])
+
+dnl EFL_LIB_END_OPTIONAL(PKG)
+dnl closes block started by EFL_LIB_START_OPTIONAL() and then
+dnl defines AM_CONDITIONAL([HAVE_PKG]) and AC_DEFINE([HAVE_PKG])
+AC_DEFUN([EFL_LIB_END_OPTIONAL],
+[dnl
+m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
+m4_pushdef([UP], m4_translit([$1], [-a-z], [_A-Z]))dnl
+
+dnl close if started at EFL_LIB_START_OPTIONAL()
+ EFL_LIB_END([$1])
+fi
+
+AM_CONDITIONAL([HAVE_]m4_defn([UP]), [test "$efl_lib_optional_[]m4_defn([DOWN])" = "yes"])dnl
+m4_popdef([UP])dnl
+m4_popdef([DOWN])dnl
+])
+
+dnl EFL_ADD_FEATURE(PKG, NAME, [VALUE])
+dnl if VALUE is not specified, will use ${have_name} instead.
+dnl
+dnl Defined Variables:
+dnl features_pkg
+AC_DEFUN([EFL_ADD_FEATURE],
+[dnl
+m4_pushdef([DOWNPKG], m4_translit([$1], [-A-Z], [_a-z]))dnl
+m4_pushdef([DOWNNAME], m4_translit([$2], [-A-Z], [_a-z]))dnl
+
+value="m4_if($3, , [${have_]m4_defn([DOWNNAME])[:-${want_]m4_defn([DOWNNAME])[}}], [$3])"
+case "${value}" in
+ yes)
+ tmp="${COLOR_YES}+$2${COLOR_RESET}"
+ ;;
+ no)
+ tmp="${COLOR_NO}-$2${COLOR_RESET}"
+ ;;
+ *)
+ tmp="${COLOR_OTHER}$2=${value}${COLOR_RESET}"
+ ;;
+esac
+if test -z "${features_[]m4_defn([DOWNPKG])}"; then
+ features_[]m4_defn([DOWNPKG])="${tmp}"
+else
+ features_[]m4_defn([DOWNPKG])="${features_[]m4_defn([DOWNPKG])} ${tmp}"
+fi
+m4_popdef([DOWNNAME])dnl
+m4_popdef([DOWNPKG])dnl
+])
diff --git a/m4/efl_attribute.m4 b/m4/efl_attribute.m4
new file mode 100644
index 0000000000..4f31d93175
--- /dev/null
+++ b/m4/efl_attribute.m4
@@ -0,0 +1,83 @@
+dnl Copyright (C) 2011 Vincent Torri <vtorri at univ-evry dot fr>
+dnl That code is public domain and can be freely used or copied.
+
+dnl Macros for checking if the compiler supports some __attribute__ uses
+
+dnl Usage: EFL_ATTRIBUTE_VECTOR
+dnl call AC_DEFINE for HAVE_GCC_ATTRIBUTE_VECTOR if __attribute__((vector)) is available
+
+AC_DEFUN([EFL_ATTRIBUTE_VECTOR],
+[
+AC_MSG_CHECKING([for __attribute__ ((vector))])
+AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[
+typedef int v4si __attribute__ ((vector_size (16)));
+ ]],
+ [[
+if (sizeof(v4si) == 16)
+ return 0;
+else
+ return -1;
+ ]])],
+ [have_attribute_vector="yes"],
+ [have_attribute_vector="no"])
+AC_MSG_RESULT([${have_attribute_vector}])
+
+if test "x${have_attribute_vector}" = "xyes" ; then
+ AC_DEFINE([HAVE_GCC_ATTRIBUTE_VECTOR], [1], [Define to 1 if your compiler supports __attribute__ ((vector)).])
+fi
+])
+
+dnl Usage: EFL_ATTRIBUTE_ALWAYS_INLINE
+dnl call AC_DEFINE for alway_inline if __attribute__((always_inline)) is available
+
+AC_DEFUN([EFL_ATTRIBUTE_ALWAYS_INLINE],
+[
+
+have_attribute_forceinline="no"
+
+AC_MSG_CHECKING([for __forceinline])
+
+AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[
+#include <windows.h>
+static __forceinline void foo(void) {}
+ ]],
+ [[
+ ]])],
+ [
+ have_attribute_always_inline="yes"
+ have_attribute_forceinline="yes"
+ ],
+ [have_attribute_always_inline="no"])
+
+AC_MSG_RESULT([${have_attribute_always_inline}])
+
+if test "x${have_attribute_always_inline}" = "xno" ; then
+ AC_MSG_CHECKING([for __attribute__ ((__always_inline__))])
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[
+static __attribute__((__always_inline__)) inline void foo(void) {}
+ ]],
+ [[
+ ]])],
+ [have_attribute_always_inline="yes"],
+ [have_attribute_always_inline="no"])
+ AC_MSG_RESULT([${have_attribute_always_inline}])
+fi
+
+if test "x${have_attribute_always_inline}" = "xyes" ; then
+ if test "x${have_attribute_forceinline}" = "xyes" ; then
+ AC_DEFINE([EFL_ALWAYS_INLINE], [__forceinline], [Macro declaring a function to always be inlined.])
+ else
+ AC_DEFINE([EFL_ALWAYS_INLINE], [__attribute__ ((__always_inline__)) inline], [Macro declaring a function to always be inlined.])
+ fi
+else
+ AC_DEFINE([EFL_ALWAYS_INLINE], [static inline], [Macro declaring a function to always be inlined.])
+fi
+])
+
+dnl End of efl_attribute.m4
diff --git a/m4/efl_beta.m4 b/m4/efl_beta.m4
new file mode 100644
index 0000000000..c8047299f7
--- /dev/null
+++ b/m4/efl_beta.m4
@@ -0,0 +1,5 @@
+dnl use: EFL_ENABLE_BETA_API_SUPPORT
+AC_DEFUN([EFL_ENABLE_BETA_API_SUPPORT],
+[
+ AC_DEFINE([EFL_BETA_API_SUPPORT], [1], [Enable access to unstable EFL API that are still in beta])
+])
diff --git a/m4/efl_binary.m4 b/m4/efl_binary.m4
new file mode 100644
index 0000000000..d11e1db297
--- /dev/null
+++ b/m4/efl_binary.m4
@@ -0,0 +1,42 @@
+dnl Usage: EFL_WITH_BIN_SUFFIX(package, binary, suffix)
+dnl Call AC_SUBST(_binary) (_binary is the lowercase of binary, - being transformed into _ by default, or the value set by the user)
+
+AC_DEFUN([EFL_WITH_BIN_SUFFIX],
+[
+
+m4_pushdef([DOWN], m4_translit([[$2]], [-A-Z], [_a-z]))dnl
+m4_pushdef([UP], m4_translit([[$2]], [-a-z], [_A-Z]))dnl
+dnl configure option
+
+_efl_with_binary=""
+_efl_binary_define="no"
+
+AC_ARG_WITH([$2],
+ [AC_HELP_STRING([--with-$2=PATH], [specify a specific path to ]DOWN[ @<:@default=]DOWN[@:>@])],
+ [
+ _efl_with_binary=${withval}
+ _efl_binary_define="yes"
+ ], [])
+
+AC_ARG_WITH([bin-$2],
+ [AC_HELP_STRING([--with-bin-$2=PATH], [specify a specific path to ]DOWN[ @<:@default=]DOWN[@:>@ DEPRECATED])],
+ [
+ _efl_with_binary=${withval}
+ _efl_binary_define="yes"
+ efl_deprecated_option="yes"
+ ], [])
+
+DOWN[]$3=${_efl_with_binary}
+AC_MSG_NOTICE(DOWN[ set to ${_efl_with_binary}])
+
+with_binary_[]m4_defn([DOWN])[]$3=${_efl_with_binary}
+
+AM_CONDITIONAL(HAVE_[]UP[]m4_translit([[$3]], [a-z], [A-Z]), [test "x${_efl_binary_define}" = "xyes"])
+AC_SUBST(DOWN[]$3)
+
+])
+
+dnl Usage: EFL_WITH_BIN(package, binary)
+dnl Call AC_SUBST(_binary) (_binary is the lowercase of binary, - being transformed into _ by default, or the value set by the user)
+
+AC_DEFUN([EFL_WITH_BIN], [EFL_WITH_BIN_SUFFIX([$1], [$2], [])])
diff --git a/m4/efl_check_funcs.m4 b/m4/efl_check_funcs.m4
new file mode 100644
index 0000000000..b44f20bc55
--- /dev/null
+++ b/m4/efl_check_funcs.m4
@@ -0,0 +1,333 @@
+dnl Copyright (C) 2012 Vincent Torri <vincent dot torri at gmail dot com>
+dnl This code is public domain and can be freely used or copied.
+
+dnl Macros that check functions availability for the EFL:
+
+dnl dirfd
+dnl dladdr
+dnl dlopen
+dnl fcntl
+dnl fnmatch
+dnl gettimeofday
+dnl iconv
+dnl setxattr (an al.)
+dnl shm_open
+
+dnl EFL_CHECK_LIB_CODE(EFL, LIB, VARIABLE, HEADER, BODY)
+dnl wrapper around AC_LINK_IFELSE(AC_LANG_PROGRAM()) to check
+dnl if some code would work with the given lib.
+dnl If the code work, EFL_ADD_LIBS(EFL, LIB) will be called
+dnl At the end VARIABLE will be "yes" or "no"
+AC_DEFUN([EFL_CHECK_LIB_CODE],
+[
+LIBS_save="${LIBS}"
+LIBS="${LIBS} $2"
+AC_LINK_IFELSE([AC_LANG_PROGRAM([$4], [$5])],
+ [EFL_ADD_LIBS([$1], [$2])
+ $3="yes"], [$3="no"])
+LIBS="${LIBS_save}"
+])
+
+dnl EFL_FIND_LIB_FOR_CODE(EFL, LIBS, VARIABLE, HEADER, BODY)
+AC_DEFUN([EFL_FIND_LIB_FOR_CODE],
+[
+dnl first try without lib (libc)
+EFL_CHECK_LIB_CODE([$1], [], [$3], [$4], [$5])
+
+if test "${$3}" = "no" && test "x$2" != "x"; then
+dnl loop through given libraries
+ for trylib in $2; do
+ EFL_CHECK_LIB_CODE([$1], [${trylib}], [$3], [$4], [$5])
+ if test "${$3}" = "yes"; then
+ break
+ fi
+ done
+fi
+])
+
+dnl _EFL_CHECK_FUNC_DIRFD is for internal use
+dnl _EFL_CHECK_FUNC_DIRFD(EFL, VARIABLE)
+
+AC_DEFUN([_EFL_CHECK_FUNC_DIRFD],
+[EFL_CHECK_LIB_CODE([$1], [], [$2], [[
+#ifdef HAVE_DIRENT_H
+# include <dirent.h>
+#endif
+]], [[DIR *dirp; return dirfd(dirp);]])
+])
+
+dnl _EFL_CHECK_FUNC_DLADDR is for internal use
+dnl _EFL_CHECK_FUNC_DLADDR(EFL, VARIABLE)
+AC_DEFUN([_EFL_CHECK_FUNC_DLADDR],
+[
+dllibs=""
+case "$host_os" in
+ linux*)
+ dllibs="-ldl"
+ ;;
+ *)
+ ;;
+esac
+case "$host_os" in
+ mingw*)
+ $2="yes"
+ ;;
+ *)
+ EFL_FIND_LIB_FOR_CODE([$1], [$dllibs], [$2], [[
+#ifndef _GNU_SOURCE
+# define _GNU_SOURCE
+#endif
+#include <stdlib.h>
+#include <dlfcn.h>
+]], [[int res = dladdr(NULL, NULL);]])
+ ;;
+esac
+])
+
+dnl _EFL_CHECK_FUNC_DLOPEN is for internal use
+dnl _EFL_CHECK_FUNC_DLOPEN(EFL, VARIABLE)
+AC_DEFUN([_EFL_CHECK_FUNC_DLOPEN],
+[
+dllibs=""
+case "$host_os" in
+ linux*)
+ dllibs="-ldl"
+ ;;
+ *)
+ ;;
+esac
+case "$host_os" in
+ mingw*)
+ $2="yes"
+ ;;
+ *)
+ EFL_FIND_LIB_FOR_CODE([$1], [$dllibs], [$2], [[
+#include <dlfcn.h>
+]], [[void *h = dlopen(0, 0);]])
+ ;;
+esac
+])
+
+dnl _EFL_CHECK_FUNC_DLSYM is for internal use
+dnl _EFL_CHECK_FUNC_DLSYM(EFL, VARIABLE)
+AC_DEFUN([_EFL_CHECK_FUNC_DLSYM],
+[
+dllibs=""
+case "$host_os" in
+ linux*)
+ dllibs="-ldl"
+ ;;
+ *)
+ ;;
+esac
+case "$host_os" in
+ mingw*)
+ $2="yes"
+ ;;
+ *)
+ EFL_FIND_LIB_FOR_CODE([$1], [$dllibs], [$2], [[
+#ifndef _GNU_SOURCE
+# define _GNU_SOURCE
+#endif
+#include <stdlib.h>
+#include <dlfcn.h>
+]], [[void *res = dlsym(NULL, NULL);]])
+ ;;
+esac
+])
+
+dnl _EFL_CHECK_FUNC_FCNTL is for internal use
+dnl _EFL_CHECK_FUNC_FCNTL(EFL, VARIABLE)
+AC_DEFUN([_EFL_CHECK_FUNC_FCNTL],
+[
+case "$host_os" in
+ mingw*)
+ $2="yes"
+ ;;
+ *)
+ EFL_FIND_LIB_FOR_CODE([$1], [], [$2], [[
+#include <fcntl.h>
+]], [[int g = fcntl(0, 0);]])
+ ;;
+esac
+])
+
+dnl _EFL_CHECK_FUNC_FNMATCH is for internal use
+dnl _EFL_CHECK_FUNC_FNMATCH(EFL, VARIABLE)
+AC_DEFUN([_EFL_CHECK_FUNC_FNMATCH],
+[
+case "$host_os" in
+ mingw*)
+ $2="yes"
+ ;;
+ *)
+ EFL_FIND_LIB_FOR_CODE([$1], [-lfnmatch -liberty], [$2], [[
+#include <stdlib.h>
+#include <fnmatch.h>
+]], [[int g = fnmatch(NULL, NULL, 0);]])
+ ;;
+esac
+])
+
+dnl _EFL_CHECK_FUNC_SCHED_GETCPU is for internal use
+dnl _EFL_CHECK_FUNC_SCHED_GETCPU(EFL, VARIABLE)
+AC_DEFUN([_EFL_CHECK_FUNC_SCHED_GETCPU],
+[
+ EFL_CHECK_LIB_CODE([$1], [], [$2], [[
+#include <sched.h>
+]], [[int cpu = sched_getcpu();]])
+])
+
+dnl _EFL_CHECK_FUNC_GETTIMEOFDAY is for internal use
+dnl _EFL_CHECK_FUNC_GETTIMEOFDAY(EFL, VARIABLE)
+AC_DEFUN([_EFL_CHECK_FUNC_GETTIMEOFDAY],
+[
+case "$host_os" in
+ mingw*)
+ $2="yes"
+ ;;
+ *)
+ EFL_CHECK_LIB_CODE([$1], [], [$2], [[
+#include <stdlib.h>
+#include <sys/time.h>
+]], [[int res = gettimeofday(NULL, NULL);]])
+
+ if test "${$2}" = "no" && test "x${enable_exotic}" = "xyes"; then
+ SAVE_CFLAGS="${CFLAGS}"
+ CFLAGS="${CFLAGS} ${EXOTIC_CFLAGS}"
+ EFL_CHECK_LIB_CODE([$1], [${EXOTIC_LIBS}], [$2], [[
+#include <Exotic.h>
+]], [[int res = gettimeofday(NULL, NULL);]])
+ CFLAGS="${SAVE_CFLAGS}"
+ fi
+ ;;
+esac
+])
+
+dnl _EFL_CHECK_FUNC_ICONV is for internal use
+dnl _EFL_CHECK_FUNC_ICONV(EFL, VARIABLE)
+AC_DEFUN([_EFL_CHECK_FUNC_ICONV],
+[dnl
+AC_ARG_WITH([iconv-link],
+ AC_HELP_STRING([--with-iconv-link=ICONV_LINK], [explicitly specify an iconv link option]),
+ [
+ $2="yes"
+ iconv_libs=${withval}
+ ],
+ [$2="no"])
+
+if test "x${iconv_libs}" = "x" ; then
+ EFL_FIND_LIB_FOR_CODE([$1], [-liconv -liconv_plug], [$2], [[
+#include <stdlib.h>
+#include <iconv.h>
+]], [[iconv_t ic; size_t count = iconv(ic, NULL, NULL, NULL, NULL);]])
+fi
+])
+
+dnl _EFL_CHECK_FUNC_SETXATTR is for internal use
+dnl _EFL_CHECK_FUNC_SETXATTR(EFL, VARIABLE)
+AC_DEFUN([_EFL_CHECK_FUNC_SETXATTR],
+[EFL_CHECK_LIB_CODE([$1], [], [$2], [[
+#include <stdlib.h>
+#include <sys/types.h>
+#include <sys/xattr.h>
+]], [[
+size_t tmp = listxattr("/", NULL, 0);
+tmp = getxattr("/", "user.ethumb.md5", NULL, 0);
+setxattr("/", "user.ethumb.md5", NULL, 0, 0);
+]])
+
+if test "${$2}" = "yes"; then
+ AC_DEFINE([HAVE_XATTR], [1], [Define to 1 if you have the `listxattr', `setxattr' and `getxattr' functions.])
+fi
+])
+
+dnl _EFL_CHECK_FUNC_SHM_OPEN is for internal use
+dnl _EFL_CHECK_FUNC_SHM_OPEN(EFL, VARIABLE)
+AC_DEFUN([_EFL_CHECK_FUNC_SHM_OPEN],
+[
+shmlibs=""
+case "$host_os" in
+ linux*)
+ shmlibs="-lrt"
+ ;;
+ *)
+ ;;
+esac
+EFL_FIND_LIB_FOR_CODE([$1], [$shmlibs], [$2], [[
+#include <sys/mman.h>
+#include <sys/stat.h> /* For mode constants */
+#include <fcntl.h> /* For O_* constants */
+]], [[
+int fd = shm_open("/dev/null", O_RDONLY, S_IRWXU | S_IRWXG | S_IRWXO);
+]])
+])
+
+dnl _EFL_CHECK_FUNC_SPLICE is for internal use
+dnl _EFL_CHECK_FUNC_SPLICE(EFL, VARIABLE)
+AC_DEFUN([_EFL_CHECK_FUNC_SPLICE],
+[EFL_FIND_LIB_FOR_CODE([$1], [], [$2], [[
+#include <unistd.h>
+#include <fcntl.h>
+]], [[
+long ret = splice(0, 0, 1, 0, 400, 0);
+]])
+])
+
+dnl _EFL_CHECK_FUNC_GETPAGESIZE is for internal use
+dnl _EFL_CHECK_FUNC_GETPAGESIZE(EFL, VARIABLE)
+AC_DEFUN([_EFL_CHECK_FUNC_GETPAGESIZE],
+[EFL_FIND_LIB_FOR_CODE([$1], [], [$2], [[
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#endif
+]],
+[[
+long sz;
+sz = getpagesize();
+]])
+])
+
+dnl _EFL_CHECK_FUNC_PRCTL is for internal use
+dnl _EFL_CHECK_FUNC_PRCTL(EFL, VARIABLE)
+AC_DEFUN([_EFL_CHECK_FUNC_PRCTL],
+[EFL_FIND_LIB_FOR_CODE([$1], [], [$2], [[
+#include <sys/prctl.h>
+]],
+[[
+prctl(PR_SET_TIMERSLACK, 1, 0, 0, 0);
+]])
+])
+
+dnl Macro that checks function availability
+dnl
+dnl EFL_CHECK_FUNC(EFL, FUNCTION)
+dnl AC_SUBST : EFL_CFLAGS and EFL_LIBS (EFL being replaced by its value)
+dnl AC_DEFINE : HAVE_FUNCTION (FUNCTION being replaced by its value)
+dnl result in efl_func_function (function being replaced by its value)
+
+AC_DEFUN([EFL_CHECK_FUNC],
+[dnl
+m4_pushdef([UP], m4_translit([$2], [-a-z], [_A-Z]))dnl
+m4_pushdef([DOWN], m4_translit([$2], [-A-Z], [_a-z]))dnl
+
+m4_default([_EFL_CHECK_FUNC_]m4_defn([UP]))($1, [have_fct])
+AC_MSG_CHECKING([for $2])
+AC_MSG_RESULT([${have_fct}])
+
+if test "x${have_fct}" = "xyes" ; then
+ AC_DEFINE([HAVE_]m4_defn([UP]), [1], [Define to 1 if you have the `]m4_defn([DOWN])[' function.])
+fi
+
+efl_func_[]m4_defn([DOWN])="${have_fct}"
+m4_popdef([DOWN])dnl
+m4_popdef([UP])dnl
+])
+
+dnl Macro that iterates over a sequence of space separated functions
+dnl and that calls EFL_CHECK_FUNC() for each of these functions
+dnl
+dnl EFL_CHECK_FUNCS(EFL, FUNCTIONS)
+
+AC_DEFUN([EFL_CHECK_FUNCS],
+[m4_foreach_w([fct], [$2], [EFL_CHECK_FUNC($1, m4_defn([fct]))])])
diff --git a/m4/efl_check_libs.m4 b/m4/efl_check_libs.m4
new file mode 100644
index 0000000000..c64013bf7c
--- /dev/null
+++ b/m4/efl_check_libs.m4
@@ -0,0 +1,73 @@
+dnl Copyright (C) 2012 Vincent Torri <vincent dot torri at gmail dot com>
+dnl This code is public domain and can be freely used or copied.
+
+dnl Macro that check dependencies libraries for the EFL:
+
+dnl libjpeg
+dnl zlib
+
+dnl _EFL_CHECK_LIB_LIBJPEG is for internal use
+dnl _EFL_CHECK_LIB_LIBJPEG(EFL)
+dnl it will abort (AC_MSG_ERROR) if libjpeg is not found.
+
+AC_DEFUN([_EFL_CHECK_LIB_LIBJPEG],
+[dnl
+EFL_CHECK_LIB_CODE([$1], [-ljpeg], [have_fct], [[
+#include <stdio.h>
+#include <jpeglib.h>
+]], [[
+struct jpeg_error_mgr er; void *error = jpeg_std_error(&er);
+]])
+
+if test "${have_fct}" = "no"; then
+ AC_MSG_ERROR([Cannot find libjpeg. Make sure your CFLAGS and LDFLAGS environment variable are set properly.])
+fi
+])
+
+dnl _EFL_CHECK_LIB_ZLIB is for internal use
+dnl _EFL_CHECK_LIB_ZLIB(EFL)
+dnl it will abort (AC_MSG_ERROR) if zlib is not found.
+
+AC_DEFUN([_EFL_CHECK_LIB_ZLIB],
+[dnl
+m4_pushdef([DOWNEFL], m4_translit([$1], [-A-Z], [_a-z]))dnl
+
+PKG_CHECK_EXISTS([zlib >= 1.2.3], [_efl_have_lib="yes"], [_efl_have_lib="no"])
+
+if test "${_efl_have_lib}" = "yes"; then
+ requirements_pc_[]m4_defn([DOWNEFL])="${requirements_pc_[]m4_defn([DOWNEFL])} zlib >= 1.2.3"
+ requirements_pc_deps_[]m4_defn([DOWNEFL])="${requirements_pc_deps_[]m4_defn([DOWNEFL])} zlib >= 1.2.3"
+else
+ EFL_CHECK_LIB_CODE([$1], [-lz], [have_fct], [[
+#include <zlib.h>
+]], [[const char *v = zlibVersion();]])
+
+ if test "${have_fct}" = "no"; then
+ AC_MSG_ERROR([Cannot find zlib. Make sure your CFLAGS and LDFLAGS environment variable are set properly.])
+ fi
+fi
+m4_popdef([DOWNEFL])dnl
+])
+
+dnl Macro that checks for a library
+dnl
+dnl EFL_CHECK_LIB(EFL, LIBRARY)
+dnl it will abort if library is not found
+
+AC_DEFUN([EFL_CHECK_LIB],
+[dnl
+m4_pushdef([UP], m4_translit([$2], [-a-z], [_A-Z]))dnl
+m4_default([_EFL_CHECK_LIB_]m4_defn([UP]))($1)
+AC_MSG_CHECKING([for $2])
+AC_MSG_RESULT([yes])
+m4_popdef([UP])dnl
+])
+
+dnl Macro that iterates over a sequence of white separated libraries
+dnl and that calls EFL_CHECK_LIB() for each of these libraries
+dnl
+dnl EFL_CHECK_LIBS(EFL, LIBRARIES)
+dnl it will abort if libraries are not found
+
+AC_DEFUN([EFL_CHECK_LIBS],
+[m4_foreach_w([lib], [$2], [EFL_CHECK_LIB($1, m4_defn([lib]))])])
diff --git a/m4/efl_compiler.m4 b/m4/efl_compiler.m4
new file mode 100644
index 0000000000..1d3499222f
--- /dev/null
+++ b/m4/efl_compiler.m4
@@ -0,0 +1,90 @@
+dnl Copyright (C) 2012 Vincent Torri <vincent dot torri at gmail dot com>
+dnl This code is public domain and can be freely used or copied.
+
+dnl Macro that check if compiler of linker flags are available
+
+
+dnl Macro that checks for a compiler flag availability
+dnl
+dnl _EFL_CHECK_COMPILER_FLAGS(EFL, FLAGS)
+dnl AC_SUBST : EFL_CFLAGS (EFL being replaced by its value)
+dnl have_flag: yes or no.
+AC_DEFUN([_EFL_CHECK_COMPILER_FLAGS],
+[dnl
+m4_pushdef([UPEFL], m4_translit([[$1]], [-a-z], [_A-Z]))dnl
+
+dnl store in options -Wfoo if -Wno-foo is passed
+option="m4_bpatsubst([[$2]], [-Wno-], [-W])"
+CFLAGS_save="${CFLAGS}"
+CFLAGS="${CFLAGS} ${option}"
+AC_LANG_PUSH([C])
+
+AC_MSG_CHECKING([whether the compiler supports $2])
+AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[]])],
+ [have_flag="yes"],
+ [have_flag="no"])
+AC_MSG_RESULT([${have_flag}])
+
+AC_LANG_POP([C])
+CFLAGS="${CFLAGS_save}"
+if test "x${have_flag}" = "xyes" ; then
+ UPEFL[_CFLAGS]="${UPEFL[_CFLAGS]} [$2]"
+fi
+AC_SUBST(UPEFL[_CFLAGS])dnl
+m4_popdef([UPEFL])dnl
+])
+
+dnl EFL_CHECK_COMPILER_FLAGS(EFL, FLAGS)
+dnl Checks if FLAGS are supported and add to EFL_CLFAGS.
+dnl
+dnl It will first try every flag at once, if one fails will try them one by one.
+AC_DEFUN([EFL_CHECK_COMPILER_FLAGS],
+[dnl
+_EFL_CHECK_COMPILER_FLAGS([$1], [$2])
+if test "${have_flag}" != "yes"; then
+m4_foreach_w([flag], [$2], [_EFL_CHECK_COMPILER_FLAGS([$1], m4_defn([flag]))])
+fi
+])
+
+
+dnl Macro that checks for a linker flag availability
+dnl
+dnl _EFL_CHECK_LINKER_FLAGS(EFL, FLAGS)
+dnl AC_SUBST : EFL_LDFLAGS (EFL being replaced by its value)
+dnl have_flag: yes or no
+AC_DEFUN([_EFL_CHECK_LINKER_FLAGS],
+[dnl
+m4_pushdef([UPEFL], m4_translit([[$1]], [-a-z], [_A-Z]))dnl
+
+LDFLAGS_save="${LDFLAGS}"
+LDFLAGS="${LDFLAGS} $2"
+AC_LANG_PUSH([C])
+
+AC_MSG_CHECKING([whether the linker supports $2])
+AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM([[]])],
+ [have_flag="yes"],
+ [have_flag="no"])
+AC_MSG_RESULT([${have_flag}])
+
+AC_LANG_POP([C])
+LDFLAGS="${LDFLAGS_save}"
+if test "x${have_flag}" = "xyes" ; then
+ UPEFL[_LDFLAGS]="${UPEFL[_LDFLAGS]} [$2]"
+fi
+AC_SUBST(UPEFL[_LDFLAGS])dnl
+m4_popdef([UPEFL])dnl
+])
+
+dnl EFL_CHECK_LINKER_FLAGS(EFL, FLAGS)
+dnl Checks if FLAGS are supported and add to EFL_LDLFAGS.
+dnl
+dnl It will first try every flag at once, if one fails will try them one by one.
+AC_DEFUN([EFL_CHECK_LINKER_FLAGS],
+[dnl
+_EFL_CHECK_LINKER_FLAGS([$1], [$2])
+if test "${have_flag}" != "yes"; then
+m4_foreach_w([flag], [$2], [_EFL_CHECK_LINKER_FLAGS([$1], m4_defn([flag]))])
+fi
+])dnl
diff --git a/m4/efl_define.m4 b/m4/efl_define.m4
new file mode 100644
index 0000000000..2b73a691e8
--- /dev/null
+++ b/m4/efl_define.m4
@@ -0,0 +1,20 @@
+dnl
+dnl EFL_CHECK_DEFINE(symbol, header_file)
+dnl
+dnl NOTE: EFL_CHECK_DEFINE is strongly inspired by
+dnl APR_CHECK_DEFINE which can be found in the
+dnl sources of Apache's APR (under Apache Licence)
+dnl
+AC_DEFUN([EFL_CHECK_DEFINE], [
+ AC_CACHE_CHECK([for $1 in $2],ac_cv_define_$1,[
+ AC_EGREP_CPP(YES_IS_DEFINED, [
+#include <$2>
+#ifdef $1
+YES_IS_DEFINED
+#endif
+ ], ac_cv_define_$1=yes, ac_cv_define_$1=no)
+ ])
+ if test "$ac_cv_define_$1" = "yes"; then
+ AC_DEFINE(HAVE_$1, 1, [Define if $1 is defined in $2])
+ fi
+])
diff --git a/m4/efl_doxygen.m4 b/m4/efl_doxygen.m4
new file mode 100644
index 0000000000..0c1452fee0
--- /dev/null
+++ b/m4/efl_doxygen.m4
@@ -0,0 +1,98 @@
+dnl Copyright (C) 2008 Vincent Torri <vtorri at univ-evry dot fr>
+dnl That code is public domain and can be freely used or copied.
+
+dnl Macro that check if doxygen is available or not.
+
+dnl EFL_CHECK_DOXYGEN([ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
+dnl Test for the doxygen program
+dnl Defines efl_doxygen
+dnl Defines the automake conditionnal EFL_BUILD_DOC
+dnl
+AC_DEFUN([EFL_CHECK_DOXYGEN],
+[
+
+dnl
+dnl Disable the build of the documentation
+dnl
+AC_ARG_ENABLE([doc],
+ [AC_HELP_STRING(
+ [--disable-doc],
+ [Disable documentation build @<:@default=enabled@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ efl_enable_doc="yes"
+ else
+ efl_enable_doc="no"
+ fi
+ ],
+ [efl_enable_doc="yes"]
+)
+
+if test "x${efl_enable_doc}" = "xyes" ; then
+
+dnl
+dnl Specify the full file name, with path
+dnl
+
+ efl_doxygen="doxygen"
+
+ AC_ARG_WITH([doxygen],
+ [AC_HELP_STRING(
+ [--with-doxygen=FILE],
+ [doxygen program to use @<:@default=doxygen@:>@])],
+dnl
+dnl Check the given doxygen program.
+dnl
+ [efl_doxygen=${withval}
+ AC_CHECK_PROG([efl_have_doxygen],
+ [${efl_doxygen}],
+ [yes],
+ [no])
+ if test "x${efl_have_doxygen}" = "xno" ; then
+ echo "WARNING:"
+ echo "The doxygen program you specified:"
+ echo "$efl_doxygen"
+ echo "was not found. Please check the path and make sure "
+ echo "the program exists and is executable."
+ AC_MSG_WARN([Warning: no doxygen detected. Documentation will not be built])
+ fi
+ ],
+ [AC_CHECK_PROG([efl_have_doxygen],
+ [${efl_doxygen}],
+ [yes],
+ [no])
+ if test "x${efl_have_doxygen}" = "xno" ; then
+ echo "WARNING:"
+ echo "The doxygen program was not found in your execute"
+ echo "You may have doxygen installed somewhere not covered by your path."
+ echo ""
+ echo "If this is the case make sure you have the packages installed, AND"
+ echo "that the doxygen program is in your execute path (see your"
+ echo "shell manual page on setting the \$PATH environment variable), OR"
+ echo "alternatively, specify the program to use with --with-doxygen."
+ AC_MSG_WARN([Warning: no doxygen detected. Documentation will not be built])
+ fi
+ ]
+ )
+fi
+
+dnl
+dnl Substitution
+dnl
+AC_SUBST([efl_doxygen])
+
+if ! test "x${efl_have_doxygen}" = "xyes" ; then
+ efl_enable_doc="no"
+fi
+
+AM_CONDITIONAL(EFL_BUILD_DOC, test "x${efl_enable_doc}" = "xyes")
+
+if test "x${efl_enable_doc}" = "xyes" ; then
+ ifelse([$1], , :, [$1])
+else
+ ifelse([$2], , :, [$2])
+fi
+
+])
+
+dnl End of doxygen.m4
diff --git a/m4/efl_eo.m4 b/m4/efl_eo.m4
new file mode 100644
index 0000000000..864baf5fc1
--- /dev/null
+++ b/m4/efl_eo.m4
@@ -0,0 +1,6 @@
+dnl use: EFL_ENABLE_EO_API_SUPPORT
+AC_DEFUN([EFL_ENABLE_EO_API_SUPPORT],
+[
+ AC_DEFINE([EFL_EO_API_SUPPORT], [1], [Enable access to unstable EFL Eo API])
+])
+
diff --git a/m4/efl_find_x.m4 b/m4/efl_find_x.m4
new file mode 100644
index 0000000000..8c9f5c3677
--- /dev/null
+++ b/m4/efl_find_x.m4
@@ -0,0 +1,194 @@
+# efl_find.x.m4 - Macros to locate X11. -*- Autoconf -*-
+# EFL_FIND_X(VARIABLE-PREFIX, [headers = "X11/Xlib.h"],
+# [libs-and-functions = "X11 XOpenDisplay"],
+# [action-if-found], [action-if-not-found])
+# checks for X11 using, in order:
+# 1) Xorg pkg-config files (using enviroment variables EFL_X11_CFLAGS
+# and EFL_X11_LIBS if set, but only if x11.pc exists)
+# 2) command line options: --x-includes=dir, --x-libraries=dir
+# assume there is an X11 in the given directories
+# 3) XMKMF environment variable if set
+# 4) xmkmf executable if found
+# 5) list of "standard" directories
+#
+# 2-5 is handled by A_PATH_X
+#
+# If a X11 is found, [action-if-success] is run and VARIABLE_cflags and
+# VARIABLE_libs and VARIABLE_libdirs are defined and substituted.
+# VARIABLE_libs will contain all of the libs listed in libs-and-functions.
+# VARIABLE_libdirs will contain all -Lpath:s found in VARIABLE_libs
+#
+# headers is a list of headers to look for. libs-and-functions is a list of
+# library and function pairs to look for.
+# Each lib and function is checked in pairs, example:
+# EFL_FIND_X([EVAS_X11], [X11/X.h], [X11 XCreateImage Xext XShmCreateImage])
+# will look for XCreateImage in X11 and XShmCreateImage in Xext and include
+# both -lX11 and -lXext in VARIABLE_libs
+#
+# action-if-found is only called if X11, all headers, all libraries and
+# all functions are found.
+# You can call EFL_FIND_X multiple times with different lists of headers, libs
+# and functions.
+
+AC_DEFUN([EFL_FIND_X],
+[
+ # Must print something as AC_CACHE_VAL writes (cached) if the value is cached
+ AC_MSG_CHECKING([how to find X])
+ efl_x11_need_result=1
+ AC_CACHE_VAL(efl_cv_x11_cache,
+ [
+ # this is ugly and breaks that AC_CACHE_VAL may not have side effects
+ # but I can't think of a better way right now
+ efl_x11_need_result=0
+ PKG_CHECK_EXISTS([x11],
+ [
+ AC_MSG_RESULT([use pkg-config])
+ PKG_CHECK_MODULES([EFL_X11],[x11],
+ [
+ efl_cv_have_x11=yes
+ efl_cv_x11_pkgconf=yes
+ efl_cv_x11_cflags=$EFL_X11_CFLAGS
+ efl_cv_x11_libs_pre=$EFL_X11_LIBS
+ efl_cv_x11_libs_post=
+ ])
+ ],
+ [
+ AC_MSG_RESULT([use xmkmf])
+ # Fallback to old AC_PATH_XTRA
+ AC_PATH_X
+ AC_PATH_XTRA
+ if test "$no_x" = yes; then
+ efl_cv_have_x11=no
+ else
+ efl_cv_have_x11=yes
+ efl_cv_x11_pkgconf=no
+ efl_cv_x11_cflags=$X_CFLAGS
+ efl_cv_x11_libs_pre="$X_PRE_LIBS $X_LIBS"
+ efl_cv_x11_libs_post=$X_EXTRA_LIBS
+ fi
+ ])
+ # Record where we found X for the cache.
+ if test "x$efl_cv_have_x11" = "xno"; then
+ efl_cv_x11_cache="efl_cv_have_x11=no"
+ else
+ efl_cv_x11_cache="efl_cv_have_x11=yes\
+ efl_cv_x11_pkgconf='$efl_cv_x11_pkgconf'\
+ efl_cv_x11_cflags='$efl_cv_x11_cflags'\
+ efl_cv_x11_libs_pre='$efl_cv_x11_libs_pre'\
+ efl_cv_x11_libs_post='$efl_cv_x11_libs_post'"
+ fi
+ ])
+ if test "x$efl_x11_need_result" = "x1"; then
+ AC_MSG_RESULT([already found])
+ fi
+ eval "$efl_cv_x11_cache"
+
+ if test "x$efl_cv_have_x11" = "xyes"; then
+ ELF_X11_CFLAGS_save="$CFLAGS"
+ ELF_X11_CPPFLAGS_save="$CPPFLAGS"
+ CFLAGS="$CFLAGS $efl_cv_x11_cflags"
+ CPPFLAGS="$CPPFLAGS $efl_cv_x11_cflags"
+ efl_x11_found_all=1
+ for efl_x11_header in ifelse([$2], , "X11/Xlib.h", [$2]); do
+ AC_CHECK_HEADER([$efl_x11_header],,[
+ efl_x11_found_all=0
+ break])
+ done
+ CPPFLAGS="$ELF_X11_CPPFLAGS_save"
+ CFLAGS="$ELF_X11_CFLAGS_save"
+
+ if test "x$efl_x11_found_all" = "x1"; then
+ EFL_X11_LIBS_save="$LIBS"
+ if test "x$efl_cv_x11_pkgconf" = "xyes"; then
+ efl_x11_modules="x11"
+ efl_x11_lib=""
+ for efl_x11_lib_function in ifelse([$3], , "X11 XOpenDisplay", [$3]); do
+ if test -z "$efl_x11_lib"; then
+ efl_x11_lib="$efl_x11_lib_function"
+ case $efl_x11_lib in
+ X11)
+ ;;
+ Xss)
+ efl_x11_modules="$efl_x11_modules xscrnsaver"
+ ;;
+ *)
+ efl_x11_lib=`echo $efl_x11_lib | tr '[A-Z]' '[a-z]'`
+ efl_x11_modules="$efl_x11_modules $efl_x11_lib"
+ ;;
+ esac
+ else
+ efl_x11_lib=
+ fi
+ done
+ efl_x11_modules="$efl_x11_modules x11-xcb"
+
+ PKG_CHECK_EXISTS([$efl_x11_modules],
+ [
+ PKG_CHECK_MODULES([$1],[$efl_x11_modules],
+ [
+ efl_x11_cflags=$[]$1[]_CFLAGS
+ efl_x11_libs=$[]$1[]_LIBS
+
+ LIBS="$LIBS $[]$1[]_LIBS"
+ efl_x11_lib=""
+ for efl_x11_lib_function in ifelse([$3], , "X11 XOpenDisplay", [$3]); do
+ if test -z "$efl_x11_lib"; then
+ efl_x11_lib="$efl_x11_lib_function"
+ else
+ # This is a ugly way of using AC_CHECK_FUNC with different
+ # LIBS
+ eval "unset ac_cv_func_$efl_x11_lib_function"
+ AC_CHECK_FUNC([$efl_x11_lib_function],,
+ [
+ efl_x11_found_all=0
+ break])
+ efl_x11_lib=
+ fi
+ done
+ ])
+ ],[efl_x11_found_all=0])
+ else
+ LIBS="$LIBS $efl_cv_x11_libs_pre"
+ efl_x11_libs="$efl_cv_x11_libs_pre"
+ efl_x11_lib=""
+ for efl_x11_lib_function in ifelse([$3], , "X11 XOpenDisplay", [$3]); do
+ if test -z "$efl_x11_lib"; then
+ efl_x11_lib="$efl_x11_lib_function"
+ else
+ AC_CHECK_LIB([$efl_x11_lib], [$efl_x11_lib_function],,[
+ efl_x11_found_all=0
+ break],["$efl_cv_x11_libs_post"])
+ efl_x11_libs="$efl_x11_libs -l$efl_x11_lib"
+ efl_x11_lib=
+ fi
+ done
+ if test -n "$efl_cv_x11_libs_post"; then
+ efl_x11_libs="$efl_x11_libs $efl_cv_x11_libs_post"
+ fi
+ fi
+ LIBS="$EFL_X11_LIBS_save"
+ fi
+ fi
+
+ if test "x$efl_x11_found_all" = "x1"; then
+ efl_x11_libdirs=""
+ for efl_x11_option in "$efl_x11_libs"; do
+ case $efl_x11_option in
+ -L*)
+ efl_x11_libdirs="$efl_x11_libdirs $efl_x11_option"
+ ;;
+ *)
+ ;;
+ esac
+ done
+
+ AC_SUBST([$1][_cflags],[$efl_cv_x11_cflags])
+ AC_SUBST([$1][_libs],[$efl_x11_libs])
+ AC_SUBST([$1][_libdirs],[$efl_x11_libdirs])
+
+ ifelse([$4], , :, [$4])
+ else
+ ifelse([$5], , :, [$5])
+ fi
+])
+
diff --git a/m4/efl_libunwind.m4 b/m4/efl_libunwind.m4
new file mode 100644
index 0000000000..e9ca682cfb
--- /dev/null
+++ b/m4/efl_libunwind.m4
@@ -0,0 +1,61 @@
+dnl This code is public domain and can be freely used or copied.
+dnl File to auto-detect libunwind
+
+dnl Macro that checks for libunwind, first by using
+dnl pkg-config, then by trying to compile and link a simple
+dnl program, to see if libunwind is distributed on the system
+dnl but has no pkg-config support
+dnl
+dnl The biggest usecase is on Mac OS X, where there are no
+dnl pkg-config files, and the libunwind headers are lost
+dnl in an obscure place on the system (but whom the compilers
+dnl distributed by Apple are aware of).
+dnl
+dnl Usage: EFL_CHECK_LIBUNWIND
+dnl will inconditionaly set UNWIND_CFLAGS and UNWIND_LIBS
+dnl to follow pkg-config fashion.
+dnl
+AC_DEFUN([EFL_CHECK_LIBUNWIND],
+[dnl
+ dnl First, check with pkg-config
+ PKG_CHECK_MODULES([UNWIND], [libunwind libunwind-generic],
+ [have_unwind=yes], [have_unwind=no])
+
+ dnl No pkg-config file... maybe system built-in?
+ if test "x${have_unwind}" = "xno"; then
+ AC_LANG_PUSH([C])
+ AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[
+#include <libunwind.h>
+ ]],
+ [[
+ unw_context_t ctx;
+ unw_getcontext(&ctx);
+ ]]
+ )],
+ [
+ have_unwind="yes"
+ ],
+ [
+ have_unwind="no"
+ ]
+ )
+ AC_MSG_CHECKING([for native libunwind])
+ AC_MSG_RESULT([${have_unwind}])
+ AC_LANG_POP([C])
+
+ dnl Provide dummy variables to automake.
+ dnl In case pkg-config succeeded, these will be set and
+ dnl used in other automake files. To avoid, problems,
+ dnl we define empty variables.
+ UNWIND_CFLAGS=""
+ UNWIND_LIBS=""
+ AC_SUBST([UNWIND_CFLAGS])
+ AC_SUBST([UNWIND_LIBS])
+ fi
+
+ AS_IF([test "x$have_unwind" = "xyes"],
+ [AC_DEFINE([HAVE_UNWIND], [1], [Have libunwind])])
+ AM_CONDITIONAL(HAVE_UNWIND, test "x$have_unwind" = "xyes")
+])
diff --git a/m4/efl_lua_old.m4 b/m4/efl_lua_old.m4
new file mode 100644
index 0000000000..537a6f336b
--- /dev/null
+++ b/m4/efl_lua_old.m4
@@ -0,0 +1,36 @@
+dnl EFL_CHECK_LUA_OLD(EFL)
+dnl checks for lua 5.1 or 5.2 in pkg-config (multiple names) and -llua directly
+dnl will call EFL_ADD_LIBS() or EFL_DEPEND_PKG() as required.
+dnl this is a strict call and will abort if lua is not found
+dnl keep in mind that this is only executed if --enable-lua-old is set
+AC_DEFUN([EFL_CHECK_LUA_OLD],
+[dnl
+requirement_lua=""
+PKG_CHECK_EXISTS([lua >= 5.1.0], [requirement_lua="lua >= 5.1.0"],
+ [PKG_CHECK_EXISTS([lua5.1 >= 5.1.0], [requirement_lua="lua5.1 >= 5.1.0"],
+ [PKG_CHECK_EXISTS([lua-5.1 >= 5.1.0], [requirement_lua="lua-5.1 >= 5.1.0"],
+ [PKG_CHECK_EXISTS([lua51 >= 5.1.0], [requirement_lua="lua51 >= 5.1.0"],
+ [PKG_CHECK_EXISTS([lua5.2 >= 5.2.0], [requirement_lua="lua5.2 >= 5.2.0"],
+ [PKG_CHECK_EXISTS([lua-5.2 >= 5.2.0], [requirement_lua="lua-5.2 >= 5.2.0"],
+ [PKG_CHECK_EXISTS([lua52 >= 5.2.0], [requirement_lua="lua52 >= 5.2.0"])])])])])])])
+
+if test "x${requirement_lua}" = "x"; then
+ AC_MSG_CHECKING([whether lua_newstate() is in liblua])
+ AC_CHECK_LIB([lua], [lua_newstate],
+ [have_lua="yes"
+ EFL_ADD_LIBS([$1], [-llua])],
+ [have_lua="no"])
+ AC_MSG_RESULT([${have_lua}])
+ if test "${have_lua}" = "no"; then
+ AC_MSG_ERROR([Missing lua 5.1 or 5.2 support])
+ fi
+else
+ req_found="no"
+ EFL_DEPEND_PKG([$1], [LUA], [${requirement_lua}],
+ [ req_found="yes" ],
+ [ req_found="no" ])
+ if test "x${req_found}" = "xyes"; then
+ PKG_CHECK_MODULES([$1]_LUA, [${requirement_lua}])
+ fi
+fi
+])
diff --git a/m4/efl_mono.m4 b/m4/efl_mono.m4
new file mode 100644
index 0000000000..807526ee24
--- /dev/null
+++ b/m4/efl_mono.m4
@@ -0,0 +1,95 @@
+# # ============================================================================
+# # http://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx_11.html
+# # ============================================================================
+# #
+# # SYNOPSIS
+# #
+# # AX_CXX_COMPILE_STDCXX_11([ext|noext],[mandatory|optional])
+# #
+# # DESCRIPTION
+# #
+# # Check for baseline language coverage in the compiler for the C++11
+# # standard; if necessary, add switches to CXXFLAGS to enable support.
+# #
+# # The first argument, if specified, indicates whether you insist on an
+# # extended mode (e.g. -std=gnu++11) or a strict conformance mode (e.g.
+# # -std=c++11). If neither is specified, you get whatever works, with
+# # preference for an extended mode.
+# #
+# # The second argument, if specified 'mandatory' or if left unspecified,
+# # indicates that baseline C++11 support is required and that the macro
+# # should error out if no mode with that support is found. If specified
+# # 'optional', then configuration proceeds regardless, after defining
+# # HAVE_CXX11 if and only if a supporting mode is found.
+# #
+# # LICENSE
+# #
+# # Copyright (c) 2016 Felipe Magno de Almeida <felipe@expertisesolutions.com.br>
+# #
+# # Copying and distribution of this file, with or without modification, are
+# # permitted in any medium without royalty provided the copyright notice
+# # and this notice are preserved. This file is offered as-is, without any
+# # warranty.
+
+# AC_LANG(CSHARP)
+# -----------
+AC_LANG_DEFINE([CSHARP], [csharp], [MCS], [],
+[ac_ext=cs
+ac_compile='$MCS $MCSFLAGS conftest.$ac_ext >&AS_MESSAGE_LOG_FD'
+])
+
+AU_DEFUN([AC_LANG_CSHARP], [AC_LANG(CSHARP)])
+
+m4_define([AC_LANG_PROGRAM(CSHARP)],
+[$1
+class MyClass
+{
+ static void Main(string[] args)
+ {
+ $2
+ }
+}])
+
+AC_DEFUN([AC_LANG_COMPILER(CSHARP)],
+[AC_REQUIRE([AC_PROG_MCS])])
+
+AN_MAKEVAR([MCS], [AC_PROG_MCS])
+AN_PROGRAM([mcs], [AC_PROG_MCS])
+AC_DEFUN([AC_PROG_MCS],
+[AC_LANG_PUSH(CSHARP)dnl
+AC_ARG_VAR([MCS], [MCS (C#) compiler command])dnl
+AC_ARG_VAR([MCSFLAGS], [MCS (C#) compiler flags])dnl
+dnl _AC_ARG_VAR_LDFLAGS()dnl
+m4_ifval([$1],
+ [AC_CHECK_TOOLS(MCS, [$1])],
+[AC_CHECK_TOOL(MCS, mcs)
+if test -z "$MCS"; then
+ if test -n "$ac_tool_prefix"; then
+ AC_CHECK_PROG(MCS, [${ac_tool_prefix}mcs], [$ac_tool_prefix}mcs])
+ fi
+fi
+if test -z "$MCS"; then
+ AC_CHECK_PROG(MCS, mcs, mcs, , , false)
+fi
+if test -z "$MCS"; then
+ HAVE_MCS=0
+ AC_MSG_NOTICE([No C sharp compiler was found])
+else
+ HAVE_MCS=1
+ AC_DEFINE(HAVE_MCS,1,
+ [define if the MCS compiler is available])
+fi
+AC_SUBST(HAVE_MCS)
+])
+
+# Provide some information about the compiler.
+_AS_ECHO_LOG([checking for _AC_LANG compiler version])
+set X $ac_compile
+ac_compiler=$[2]
+_AC_DO_LIMIT([$ac_compiler --version >&AS_MESSAGE_LOG_FD])
+m4_expand_once([_AC_COMPILER_EXEEXT])[]dnl
+m4_expand_once([_AC_COMPILER_OBJEXT])[]dnl
+AC_LANG_POP(CSHARP)dnl
+])# AC_PROG_MCS
+
+
diff --git a/m4/efl_path_max.m4 b/m4/efl_path_max.m4
new file mode 100644
index 0000000000..f57bfd2ab5
--- /dev/null
+++ b/m4/efl_path_max.m4
@@ -0,0 +1,36 @@
+dnl Check for PATH_MAX in limits.h, and define a default value if not found
+dnl This is a workaround for systems not providing PATH_MAX, like GNU/Hurd
+
+dnl EFL_CHECK_PATH_MAX([DEFAULT_VALUE_IF_NOT_FOUND])
+dnl
+dnl If PATH_MAX is not defined in <limits.h>, defines it
+dnl to DEFAULT_VALUE_IF_NOT_FOUND if it exists, or fallback
+dnl to using 4096
+
+AC_DEFUN([EFL_CHECK_PATH_MAX],
+[
+
+default_max=m4_default([$1], "4096")
+AC_LANG_PUSH([C])
+
+AC_MSG_CHECKING([for PATH_MAX in limits.h])
+AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[
+#include <limits.h>
+ ]],
+ [[
+int i = PATH_MAX;
+ ]])],
+ [AC_MSG_RESULT([yes])],
+ [
+ AC_DEFINE_UNQUOTED([PATH_MAX],
+ [${default_max}],
+ [default value since PATH_MAX is not defined])
+ AC_MSG_RESULT([no: using ${default_max}])
+ ])
+
+AC_LANG_POP([C])
+
+])
+dnl end of efl_path_max.m4
diff --git a/m4/efl_pkg_config.m4 b/m4/efl_pkg_config.m4
new file mode 100644
index 0000000000..13a9516e90
--- /dev/null
+++ b/m4/efl_pkg_config.m4
@@ -0,0 +1,10 @@
+dnl file with extensions to pkg-config module
+dnl
+dnl EFL_PKG_CHECK_STRICT(MODULE, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+dnl similar to PKG_CHECK_EXISTS() that will AC_MSG_ERROR() if not found
+AC_DEFUN([EFL_PKG_CHECK_STRICT],
+[
+ PKG_CHECK_EXISTS([$1], [$2],
+ [m4_ifval([$3], [$3], [AC_MSG_ERROR([pkg-config missing $1])])]
+ )
+])
diff --git a/m4/efl_stdcxx_11.m4 b/m4/efl_stdcxx_11.m4
new file mode 100644
index 0000000000..f606bc0379
--- /dev/null
+++ b/m4/efl_stdcxx_11.m4
@@ -0,0 +1,136 @@
+# ============================================================================
+# http://www.gnu.org/software/autoconf-archive/ax_cxx_compile_stdcxx_11.html
+# ============================================================================
+#
+# SYNOPSIS
+#
+# AX_CXX_COMPILE_STDCXX_11([ext|noext],[mandatory|optional])
+#
+# DESCRIPTION
+#
+# Check for baseline language coverage in the compiler for the C++11
+# standard; if necessary, add switches to CXXFLAGS to enable support.
+#
+# The first argument, if specified, indicates whether you insist on an
+# extended mode (e.g. -std=gnu++11) or a strict conformance mode (e.g.
+# -std=c++11). If neither is specified, you get whatever works, with
+# preference for an extended mode.
+#
+# The second argument, if specified 'mandatory' or if left unspecified,
+# indicates that baseline C++11 support is required and that the macro
+# should error out if no mode with that support is found. If specified
+# 'optional', then configuration proceeds regardless, after defining
+# HAVE_CXX11 if and only if a supporting mode is found.
+#
+# LICENSE
+#
+# Copyright (c) 2008 Benjamin Kosnik <bkoz@redhat.com>
+# Copyright (c) 2012 Zack Weinberg <zackw@panix.com>
+# Copyright (c) 2013 Roy Stogner <roystgnr@ices.utexas.edu>
+#
+# Copying and distribution of this file, with or without modification, are
+# permitted in any medium without royalty provided the copyright notice
+# and this notice are preserved. This file is offered as-is, without any
+# warranty.
+
+#serial 3
+
+m4_define([_EFL_CXX_COMPILE_STDCXX_11_testbody], [
+ template <typename T>
+ struct check
+ {
+ static_assert(sizeof(int) <= sizeof(T), "not big enough");
+ };
+
+ typedef check<check<bool>> right_angle_brackets;
+
+ int a;
+ decltype(a) b;
+
+ typedef check<int> check_type;
+ check_type c;
+ check_type&& cr = static_cast<check_type&&>(c);
+
+ struct A { A(int); };
+ struct B : A { using A::A; }; // inheriting constructors
+
+ auto d = a;
+])
+
+AC_DEFUN([EFL_CXX_COMPILE_STDCXX_11], [dnl
+ m4_if([$1], [], [],
+ [$1], [ext], [],
+ [$1], [noext], [],
+ [m4_fatal([invalid argument `$1' to AX_CXX_COMPILE_STDCXX_11])])dnl
+ m4_if([$2], [], [ax_cxx_compile_cxx11_required=true],
+ [$2], [mandatory], [ax_cxx_compile_cxx11_required=true],
+ [$2], [optional], [ax_cxx_compile_cxx11_required=false],
+ [m4_fatal([invalid second argument `$2' to AX_CXX_COMPILE_STDCXX_11])])dnl
+ AC_LANG_PUSH([C++])dnl
+ ac_success=no
+ AC_CACHE_CHECK(whether $CXX supports C++11 features by default,
+ ax_cv_cxx_compile_cxx11,
+ [AC_COMPILE_IFELSE([AC_LANG_SOURCE([_EFL_CXX_COMPILE_STDCXX_11_testbody])],
+ [ax_cv_cxx_compile_cxx11=yes],
+ [ax_cv_cxx_compile_cxx11=no])])
+ if test x$ax_cv_cxx_compile_cxx11 = xyes; then
+ ac_success=yes
+ fi
+
+ m4_if([$1], [noext], [], [dnl
+ if test x$ac_success = xno; then
+ for switch in -std=gnu++11; do
+ cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx11_$switch])
+ AC_CACHE_CHECK(whether $CXX supports C++11 features with $switch,
+ $cachevar,
+ [ac_save_CXXFLAGS="$CXXFLAGS"
+ CXXFLAGS="$CXXFLAGS $switch"
+ AC_COMPILE_IFELSE([AC_LANG_SOURCE([_EFL_CXX_COMPILE_STDCXX_11_testbody])],
+ [eval $cachevar=yes],
+ [eval $cachevar=no])
+ CXXFLAGS="$ac_save_CXXFLAGS"])
+ if eval test x\$$cachevar = xyes; then
+ CXXFLAGS="$CXXFLAGS $switch"
+ ac_success=yes
+ break
+ fi
+ done
+ fi])
+
+ m4_if([$1], [ext], [], [dnl
+ if test x$ac_success = xno; then
+ for switch in -std=c++11; do
+ cachevar=AS_TR_SH([ax_cv_cxx_compile_cxx11_$switch])
+ AC_CACHE_CHECK(whether $CXX supports C++11 features with $switch,
+ $cachevar,
+ [ac_save_CXXFLAGS="$CXXFLAGS"
+ CXXFLAGS="$CXXFLAGS $switch"
+ AC_COMPILE_IFELSE([AC_LANG_SOURCE([_EFL_CXX_COMPILE_STDCXX_11_testbody])],
+ [eval $cachevar=yes],
+ [eval $cachevar=no])
+ CXXFLAGS="$ac_save_CXXFLAGS"])
+ if eval test x\$$cachevar = xyes; then
+ CXXFLAGS="$CXXFLAGS $switch"
+ ac_success=yes
+ break
+ fi
+ done
+ fi])
+ AC_LANG_POP([C++])
+ if test x$ax_cxx_compile_cxx11_required = xtrue; then
+ if test x$ac_success = xno; then
+ AC_MSG_ERROR([*** A compiler with support for C++11 language features is required.])
+ fi
+ else
+ if test x$ac_success = xno; then
+ HAVE_CXX11=0
+ AC_MSG_NOTICE([No compiler with C++11 support was found])
+ else
+ HAVE_CXX11=1
+ AC_DEFINE(HAVE_CXX11,1,
+ [define if the compiler supports basic C++11 syntax])
+ fi
+
+ AC_SUBST(HAVE_CXX11)
+ fi
+])
diff --git a/m4/efl_threads.m4 b/m4/efl_threads.m4
new file mode 100644
index 0000000000..54a5fc6d77
--- /dev/null
+++ b/m4/efl_threads.m4
@@ -0,0 +1,163 @@
+dnl Copyright (C) 2010 Vincent Torri <vtorri at univ-evry dot fr>
+dnl rwlock code added by Mike Blumenkrantz <mike at zentific dot com>
+dnl This code is public domain and can be freely used or copied.
+
+dnl Macro that check if POSIX or Win32 threads library is available or not.
+
+dnl Usage: EFL_CHECK_THREADS(ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND])
+dnl Call AC_SUBST(EFL_PTHREAD_CFLAGS)
+dnl Call AC_SUBST(EFL_PTHREAD_LIBS)
+dnl Defines EFL_HAVE_THREADS
+
+AC_DEFUN([EFL_CHECK_THREADS],
+[
+
+dnl Generic thread detection
+
+EFL_PTHREAD_CFLAGS="-D_REENTRANT"
+EFL_PTHREAD_LIBS=""
+
+_efl_have_posix_threads="no"
+
+dnl Use generic infrastructure for pthread detection (What a hell of a mess !)
+gl_LOCK
+
+AC_DEFINE([EFL_HAVE_THREADS], [1], [Define to mention that POSIX or Win32 threads are supported])
+
+_efl_have_posix_threads="${gl_use_threads}"
+
+dnl System specific CFLAGS
+if test "x${_efl_have_posix_threads}" = "xyes"; then
+ case "$host_os" in
+ osf*) EFL_PTHREAD_CFLAGS="-D_REENTRANT" ;;
+ aix* | freebsd*) EFL_PTHREAD_CFLAGS="-D_THREAD_SAFE" ;;
+ solaris*) EFL_PTHREAD_CFLAGS="-D_REENTRANT" ;;
+ esac
+fi
+
+dnl check if the compiler supports POSIX threads
+if test "x${_efl_have_posix_threads}" = "xyes" ; then
+
+ SAVE_LIBS=${LIBS}
+ LIBS="${LIBS} ${LIBMULTITHREAD}"
+ AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM([[
+#include <pthread.h>
+ ]],
+ [[
+pthread_barrier_t barrier;
+pthread_barrier_init(&barrier, NULL, 1);
+ ]])],
+ [efl_have_pthread_barrier="yes"],
+ [efl_have_pthread_barrier="no"])
+ AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM([[
+#include <stdlib.h>
+#include <pthread.h>
+#include <sched.h>
+#ifndef __linux__
+#include <pthread_np.h>
+#endif
+ ]],
+ [[
+pthread_attr_setaffinity_np(NULL, 0, NULL);
+ ]])],
+ [efl_have_setaffinity="yes"],
+ [efl_have_setaffinity="no"])
+ AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM([[
+#define _GNU_SOURCE
+#include <stdlib.h>
+#include <pthread.h>
+#ifndef __linux__
+#include <pthread_np.h>
+#endif
+ ]],
+ [[
+#ifndef __linux__
+pthread_set_name_np(NULL, NULL);
+#else
+pthread_setname_np(NULL, NULL);
+#endif
+ ]])],
+ [efl_have_setname="yes"],
+ [efl_have_setname="no"])
+ LIBS=${SAVE_LIBS}
+fi
+
+AC_MSG_CHECKING([which threads API is used])
+if test "x${_efl_have_posix_threads}" = "xyes" ; then
+ efl_have_threads="POSIX"
+fi
+AC_MSG_RESULT([${efl_have_threads}])
+
+EFL_PTHREAD_LIBS="${LTLIBMULTITHREAD}"
+
+AC_SUBST(EFL_PTHREAD_CFLAGS)
+AC_SUBST(EFL_PTHREAD_LIBS)
+
+dnl check if the compiler supports pthreads spinlock
+
+efl_have_posix_threads_spinlock="no"
+
+if test "x${_efl_have_posix_threads}" = "xyes" ; then
+ SAVE_LIBS=${LIBS}
+ LIBS="${LIBS} ${LIBMULTITHREAD}"
+ AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM([[
+#include <pthread.h>
+#include <sched.h>
+ ]],
+ [[
+pthread_spinlock_t lock;
+int res;
+res = pthread_spin_init(&lock, PTHREAD_PROCESS_PRIVATE);
+sched_yield();
+ ]])],
+ [efl_have_posix_threads_spinlock="yes"],
+ [efl_have_posix_threads_spinlock="no"])
+ LIBS=${SAVE_LIBS}
+
+fi
+
+AC_MSG_CHECKING([whether to build POSIX threads spinlock code])
+AC_MSG_RESULT([${efl_have_posix_threads_spinlock}])
+
+if test "x${efl_have_posix_threads_spinlock}" = "xyes" ; then
+ AC_DEFINE([EFL_HAVE_POSIX_THREADS_SPINLOCK], [1], [Define to mention that POSIX threads spinlocks are supported])
+fi
+
+
+dnl checks if the compiler supports OSX spinlock
+
+efl_have_osx_spinlock="no"
+
+if test "x${_efl_have_posix_threads}" = "xyes" ; then
+ AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM([[
+#include <libkern/OSAtomic.h>
+ ]],
+ [[
+OSSpinLock spin_lock = 0;
+OSSpinLockTry(&spin_lock);
+ ]])],
+ [efl_have_osx_spinlock="yes"],
+ [efl_have_osx_spinlock="no"])
+fi
+
+AC_MSG_CHECKING([whether to build OSX spinlock code])
+AC_MSG_RESULT([${efl_have_osx_spinlock}])
+
+if test "x${efl_have_osx_spinlock}" = "xyes" ; then
+ AC_DEFINE([EFL_HAVE_OSX_SPINLOCK], [1], [Define to mention that OSX spinlocks are supported])
+fi
+
+
+
+AS_IF([test "x$_efl_have_posix_threads" = "xyes"],
+ [$1],
+ [m4_if([$2], [$2], [AC_MSG_ERROR([Threads are required.])])])
+
+
+])
+
diff --git a/m4/eina_check.m4 b/m4/eina_check.m4
new file mode 100644
index 0000000000..251d4cb559
--- /dev/null
+++ b/m4/eina_check.m4
@@ -0,0 +1,49 @@
+dnl use: EINA_CHECK_MODULE(foo-bar, have_dependency, description)
+AC_DEFUN([EINA_CHECK_MODULE],
+[
+m4_pushdef([UP], m4_translit([$1], [-a-z], [_A-Z]))dnl
+m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
+
+# AC_ARG_ENABLE([mempool-$1],
+# [AC_HELP_STRING([--enable-mempool-$1], [enable build of $3 @<:@default=$2@:>@])],
+# [
+# if test "x${enableval}" = "xyes" ; then
+# enable_module="yes"
+# else
+# if test "x${enableval}" = "xstatic" ; then
+# enable_module="static"
+# else
+# enable_module="no"
+# fi
+# fi
+# ],
+# [enable_module=$2])
+enable_module=$2
+
+have_module="no"
+if test "x${enable_module}" = "xyes" || test "x${enable_module}" = "xstatic" ; then
+ have_module="yes"
+fi
+
+AC_MSG_CHECKING([whether to enable $3 built])
+AC_MSG_RESULT([${have_module}])
+
+static_module="no"
+if test "x${enable_module}" = "xstatic" ; then
+ static_module="yes"
+ have_static_module="yes"
+ AC_DEFINE(EINA_STATIC_BUILD_[]UP, 1, [Set to 1 if $2 is statically built])
+fi
+
+if ! test "x${enable_module}" = "xno" ; then
+ AC_DEFINE(EINA_BUILD_[]UP, 1, [Set to 1 if $2 is built])
+fi
+
+AM_CONDITIONAL(EINA_BUILD_[]UP, [test "x${have_module}" = "xyes"])
+AM_CONDITIONAL(EINA_STATIC_BUILD_[]UP, [test "x${static_module}" = "xyes"])
+
+enable_[]DOWN=${enable_module}
+
+m4_popdef([UP])
+m4_popdef([DOWN])
+])
diff --git a/m4/eina_config.m4 b/m4/eina_config.m4
new file mode 100644
index 0000000000..609e4f9c74
--- /dev/null
+++ b/m4/eina_config.m4
@@ -0,0 +1,8 @@
+dnl use: EINA_CONFIG(configsuffix, testcond)
+AC_DEFUN([EINA_CONFIG],
+[
+if $2; then
+ EINA_CONFIGURE_$1="#define EINA_$1"
+fi
+AC_SUBST([EINA_CONFIGURE_$1])
+])
diff --git a/m4/eio_check_options.m4 b/m4/eio_check_options.m4
new file mode 100644
index 0000000000..5fb901273c
--- /dev/null
+++ b/m4/eio_check_options.m4
@@ -0,0 +1,12 @@
+dnl use: EIO_CHECK_NOTIFY_WIN32([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+AC_DEFUN([EIO_CHECK_NOTIFY_WIN32],
+[
+if test "x${have_win32}" = "xyes" ; then
+ AC_DEFINE([HAVE_NOTIFY_WIN32], [1], [ File monitoring with Windows notification ])
+fi
+
+AC_MSG_CHECKING([whether Windows notification is to be used for filemonitoring])
+AC_MSG_RESULT([${have_win32}])
+
+AS_IF([test "x${have_win32}" = "xyes"], [$1], [$2])
+])
diff --git a/m4/elm_check_backend.m4 b/m4/elm_check_backend.m4
new file mode 100644
index 0000000000..a51235718a
--- /dev/null
+++ b/m4/elm_check_backend.m4
@@ -0,0 +1,27 @@
+
+dnl use: ELM_CHECK_BACKEND(engine)
+AC_DEFUN([ELM_CHECK_BACKEND],
+[dnl
+m4_pushdef([UP], m4_translit([$1], [-a-z], [_A-Z]))dnl
+m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
+
+have_elementary_[]DOWN="no"
+want_backend="$2"
+
+AC_MSG_CHECKING([whether to enable $1 backend])
+AC_MSG_RESULT([${want_backend}])
+
+if test "x${want_backend}" != "xno"; then
+ AC_DEFINE([HAVE_ELEMENTARY_]UP, [1], [$1 support for Elementary])
+ have_elementary_[]DOWN="yes"
+ requirement_elm_pc="ecore-[]DOWN >= efl_version ${requirement_elm_pc}"
+fi
+
+AC_MSG_CHECKING([whether to build $1 backend])
+AC_MSG_RESULT([${have_elementary_[]DOWN}])
+
+EFL_ADD_FEATURE([ELEMENTARY], [$1], [${want_backend}])
+
+m4_popdef([UP])dnl
+m4_popdef([DOWN])dnl
+])
diff --git a/m4/elm_check_option.m4 b/m4/elm_check_option.m4
new file mode 100644
index 0000000000..999636ad32
--- /dev/null
+++ b/m4/elm_check_option.m4
@@ -0,0 +1,60 @@
+
+dnl use: ELM_CHECK_OPTION_DEP(option, pkgver)
+AC_DEFUN([ELM_CHECK_OPTION_DEP],
+[dnl
+
+m4_pushdef([UP], m4_translit([$1], [-a-z], [_A-Z]))dnl
+m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
+
+ELM_[]UP[]_DEF="#undef"
+have_elementary_[]DOWN="no"
+
+AC_ARG_ENABLE(DOWN,
+ [AS_HELP_STRING([--disable-]DOWN, [disable ]DOWN[ support. @<:@default=detect@:>@])],
+ [want_option=$enableval],
+ [want_option="auto"])
+
+AC_MSG_CHECKING([whether to enable $1 option])
+AC_MSG_RESULT([${want_option}])
+
+if test "x${want_option}" != "xno"; then
+ PKG_CHECK_EXISTS(DOWN[ >= $2],
+ [
+ AC_DEFINE([HAVE_ELEMENTARY_]UP, [1], [$1 support for Elementary])
+ have_elementary_[]DOWN="yes"
+ ELM_[]UP[]_DEF="#define"
+ requirement_elm_pc="[]DOWN >= $2 ${requirement_elm_pc}"
+ ],
+ [have_elementary_]DOWN[="no"]
+ )
+fi
+
+AC_MSG_CHECKING([whether to build $1 option])
+AC_MSG_RESULT([${have_elementary_[]DOWN}])
+
+if test "x${want_elementary_[]DOWN}" = "xyes" && test "x${have_elementary_[]DOWN}" = "xno"; then
+ AC_MSG_ERROR([$1 support requested, but $1 was not found by pkg-config.])
+fi
+
+AC_SUBST([ELM_]UP[_DEF])
+
+m4_popdef([UP])dnl
+m4_popdef([DOWN])dnl
+])
+
+dnl use: ELM_CHECK_OPTION(option, pkgver)
+AC_DEFUN([ELM_CHECK_OPTION],
+[dnl
+
+m4_pushdef([UP], m4_translit([$1], [-a-z], [_A-Z]))dnl
+m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
+
+if test "x$1" = "xeweb" ; then
+ ELM_CHECK_OPTION_DEP_EWK2
+else
+ ELM_CHECK_OPTION_DEP($1, $2)
+fi
+
+m4_popdef([UP])dnl
+m4_popdef([DOWN])dnl
+])
diff --git a/m4/elm_quicklaunch.m4 b/m4/elm_quicklaunch.m4
new file mode 100644
index 0000000000..b51ff0f516
--- /dev/null
+++ b/m4/elm_quicklaunch.m4
@@ -0,0 +1,24 @@
+dnl Copyright (C) 2013 Cedric Bail <cedric dot bail at samsung dot com>
+dnl That code is public domain and can be freely used or copied
+
+dnl Macro that check if -pie -rdynamic can be given to ld
+
+dnl Usage: ELM_QUICKLAUNCH
+dnl add -pie -rdynamic to LDFLAGS and -fpie to CFLAGS
+
+AC_DEFUN([ELM_QUICKLAUNCH],
+[
+AC_MSG_CHECKING([If the compiler has what it takes to do quicklaunch (-pie -rdynamic)])
+old_LDFLAGS="$LDFLAGS"
+old_CFLAGS="$CFLAGS"
+
+LDFLAGS="$LDFLAGS -pie -rdynamic"
+CFLAGS="$CFLAGS -fpie"
+
+AC_LINK_IFELSE([AC_LANG_SOURCE([int main(){}])],
+ [AC_MSG_RESULT([yes])],
+ [LDFLAGS="$old_LDFLAGS"
+ CFLAGS="$old_CFLAGS"
+ AC_MSG_RESULT([no])
+ ])
+])
diff --git a/m4/emotion_generic_players.m4 b/m4/emotion_generic_players.m4
new file mode 100644
index 0000000000..d852dbaa29
--- /dev/null
+++ b/m4/emotion_generic_players.m4
@@ -0,0 +1,37 @@
+dnl EMOTION_GENERIC_PLAYER(NAME, DEFAULT_STATE, [PKG_CONFIG_DEPS])
+dnl Does the following:
+dnl * AC_ARG_WITH(NAME)
+dnl * define with_name to yes or no
+dnl * PKG_CHECK_MODULES(NAME, PKG_CONFIG_DEPS)
+dnl * AC_DEFINE([HAVE_NAME])
+dnl * AM_CONDITIONAL([HAVE_NAME])
+AC_DEFUN([EMOTION_GENERIC_PLAYER],
+[dnl
+m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
+m4_pushdef([UP], m4_translit([$1], [-a-z], [_A-Z]))dnl
+
+AC_ARG_WITH([DOWN],
+ [AC_HELP_STRING([--with-]m4_defn([DOWN]),
+ [build generic player ]m4_defn([UP])[. @<:@default=$2@:>@])],
+ [], [with_]m4_defn([DOWN])[="$2"])
+
+if test "${with_[]m4_defn([DOWN])}" = "yes"; then
+ m4_ifval([$3], [dnl
+ PKG_CHECK_MODULES(m4_defn([UP]), [$3])
+ ], [dnl
+ m4_defn([UP])_LIBS="${m4_defn([UP])_LIBS}"
+ m4_defn([UP])_CFLAGS="${m4_defn([UP])_CFLAGS}"
+ AC_SUBST(m4_defn([UP])[_LIBS])
+ AC_SUBST(m4_defn([UP])[_CFLAGS])
+ ])
+
+ AC_SEARCH_LIBS([shm_open], [rt], [], [AC_MSG_ERROR([unable to find the shm_open() function])])
+ if test "${ac_cv_search_shm_open}" != "none required"; then
+ m4_defn([UP])_LIBS="${m4_defn([UP])_LIBS} ${ac_cv_search_shm_open}"
+ fi
+fi
+AM_CONDITIONAL([HAVE_]m4_defn([UP]), [test "$with_[]m4_defn([DOWN])" = "yes"])
+
+m4_popdef([UP])dnl
+m4_popdef([DOWN])dnl
+])
diff --git a/m4/emotion_module.m4 b/m4/emotion_module.m4
new file mode 100644
index 0000000000..184533fcdc
--- /dev/null
+++ b/m4/emotion_module.m4
@@ -0,0 +1,133 @@
+dnl use: EMOTION_MODULE_DEP_CHECK_XINE(want_engine)
+dnl where want_engine = yes or static
+AC_DEFUN([EMOTION_MODULE_DEP_CHECK_XINE],
+[dnl
+ requirements="libxine >= 1.1.1"
+ if test "$1" = "static"; then
+ EFL_DEPEND_PKG([EMOTION], [EMOTION_MODULE_XINE], [${requirements}])
+ else
+ PKG_CHECK_MODULES([EMOTION_MODULE_XINE], [${requirements}])
+ fi
+])
+
+dnl use: EMOTION_MODULE_DEP_CHECK_GSTREAMER(want_static)
+dnl where want_engine = yes or static
+AC_DEFUN([EMOTION_MODULE_DEP_CHECK_GSTREAMER],
+[dnl
+ GST_VER=0.10.2
+ requirements="gstreamer-0.10 >= ${GST_VER} gstreamer-plugins-base-0.10 >= ${GST_VER} gstreamer-video-0.10 >= ${GST_VER} gstreamer-interfaces-0.10 >= ${GST_VER}"
+ have_gst_xoverlay="no"
+ if test "$1" = "static"; then
+ EFL_DEPEND_PKG([EMOTION], [EMOTION_MODULE_GSTREAMER], [${requirements}])
+ else
+ PKG_CHECK_MODULES([EMOTION_MODULE_GSTREAMER], [${requirements}])
+ fi
+
+ if test "${want_x11_any}" = "yes"; then
+ if test "$1" = "static"; then # we need gstreamer cflags and libs to test xoverlay support
+ PKG_CHECK_MODULES([EMOTION_MODULE_GSTREAMER], [${requirements}])
+ fi
+ CFLAGS_save="${CFLAGS}"
+ CFLAGS="${CFLAGS} ${EMOTION_MODULE_GSTREAMER_CFLAGS}"
+ AC_CHECK_HEADER([gst/interfaces/xoverlay.h],
+ [have_gst_xoverlay="old" # will check for "new" later with AC_CHECK_LIB()
+ AC_DEFINE(HAVE_XOVERLAY_H, 1, [Build with Gstreamer Xoverlay support])],
+ [AC_MSG_WARN([Building Gstreamer with X11 but no gst/interfaces/xoverlay.h found])],
+ [#include <gst/gst.h>])
+ CFLAGS="${CFLAGS_save}"
+
+ LDFLAGS_save=${LDFLAGS}
+ LDFLAGS="${LDFLAGS} ${EMOTION_MODULE_GSTREAMER_LIBS}"
+ AC_CHECK_LIB([gstinterfaces-0.10], [gst_x_overlay_set_window_handle],
+ [have_gst_xoverlay="new"
+ AC_DEFINE([HAVE_X_OVERLAY_SET], [1], [Use gst_x_overlay_set_window_handle instead of old deprecated gst_x_overlay_set_xwindow_id])])
+ LDFLAGS="${LDFLAGS_save}"
+ fi
+])
+
+dnl use: EMOTION_MODULE_DEP_CHECK_GSTREAMER_1(want_static)
+dnl where want_engine = yes or static
+AC_DEFUN([EMOTION_MODULE_DEP_CHECK_GSTREAMER1],
+[dnl
+ GST_VER=1.0
+ requirements="gstreamer-1.0 >= ${GST_VER} gstreamer-plugins-base-1.0 >= ${GST_VER} gstreamer-video-1.0 >= ${GST_VER} gstreamer-audio-1.0 >= ${GST_VER} gstreamer-tag-1.0 >= ${GST_VER} gstreamer-pbutils-1.0 >= ${GST_VER}"
+ if test "$1" = "static"; then
+ EFL_DEPEND_PKG([EMOTION], [EMOTION_MODULE_GSTREAMER1], [${requirements}])
+ else
+ PKG_CHECK_MODULES([EMOTION_MODULE_GSTREAMER1], [${requirements}])
+ fi
+])
+
+
+dnl use: EMOTION_MODULE_DEP_CHECK_LIBVLC(want_static)
+dnl where want_engine = yes or static
+AC_DEFUN([EMOTION_MODULE_DEP_CHECK_LIBVLC],
+[dnl
+ LIBVLC_VER=3.0
+ requirements="libvlc >= ${LIBVLC_VER}"
+ if test "$1" = "static"; then
+ EFL_DEPEND_PKG([EMOTION], [EMOTION_MODULE_LIBVLC], [${requirements}])
+ else
+ PKG_CHECK_MODULES([EMOTION_MODULE_LIBVLC], [${requirements}])
+ fi
+])
+
+dnl use: EMOTION_MODULE_DEP_CHECK_GENERIC(want_static)
+dnl where want_engine = yes or static
+AC_DEFUN([EMOTION_MODULE_DEP_CHECK_GENERIC],
+[dnl
+ if test "$1" = "static"; then
+ EFL_ADD_LIBS([EMOTION], [${requirements_libs_shm}])
+ else
+ EMOTION_MODULE_GENERIC_CFLAGS=""
+ EMOTION_MODULE_GENERIC_LIBS="${requirements_libs_shm}"
+ AC_SUBST([EMOTION_MODULE_GENERIC_CFLAGS])
+ AC_SUBST([EMOTION_MODULE_GENERIC_LIBS])
+ fi
+])
+
+dnl use: EMOTION_MODULE(name, want_engine)
+dnl
+dnl defines EMOTION_BUILD_NAME if it should be built
+dnl defines EMOTION_STATIC_BUILD_NAME if should be built statically
+dnl
+AC_DEFUN([EMOTION_MODULE],
+[
+m4_pushdef([UP], m4_translit([$1], [-a-z], [_A-Z]))dnl
+m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
+
+want_engine="$2"
+want_static_engine="no"
+have_engine="no"
+have_emotion_module_[]DOWN="no"
+
+EMOTION_MODULE_[]m4_defn([UP])[]_CFLAGS=""
+EMOTION_MODULE_[]m4_defn([UP])[]_LIBS=""
+
+if test "x${want_engine}" = "xyes" -o "x${want_engine}" = "xstatic"; then
+
+ m4_default([EMOTION_MODULE_DEP_CHECK_]m4_defn([UP]))([${want_engine}])
+
+ have_engine="yes"
+ if test "x${want_engine}" = "xstatic" ; then
+ have_emotion_module_[]DOWN="static"
+ want_static_engine="yes"
+ else
+ have_emotion_module_[]DOWN="yes"
+ fi
+fi
+
+AC_DEFINE_IF(EMOTION_BUILD_[]UP, [test "${have_engine}" = "yes"],
+ [1], [Build $1 Evas engine])
+AM_CONDITIONAL(EMOTION_BUILD_[]UP, [test "${have_engine}" = "yes"])
+
+AC_DEFINE_IF(EMOTION_STATIC_BUILD_[]UP, [test "${want_static_engine}" = "yes"],
+ [1], [Build $1 Evas engine inside libevas])
+AM_CONDITIONAL(EMOTION_STATIC_BUILD_[]UP, [test "${want_static_engine}" = "yes"])
+
+AC_SUBST([EMOTION_MODULE_]m4_defn([UP])[_CFLAGS])
+AC_SUBST([EMOTION_MODULE_]m4_defn([UP])[_LIBS])
+
+m4_popdef([UP])
+m4_popdef([DOWN])
+])
diff --git a/m4/evas_check_engine.m4 b/m4/evas_check_engine.m4
new file mode 100644
index 0000000000..d15c8d5f01
--- /dev/null
+++ b/m4/evas_check_engine.m4
@@ -0,0 +1,629 @@
+AC_DEFUN([REQUIRED_WAYLAND_VERSION], [1.11.0])
+
+dnl use: EVAS_CHECK_ENGINE_DEP_SOFTWARE_XLIB(engine, simple, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_ENGINE_DEP_SOFTWARE_XLIB],
+[
+
+EFL_FIND_X(evas_engine_[]$1,
+ [X11/X.h], [X11 XCreateImage Xext XShmCreateImage],
+ [
+ if test "x$3" = "xstatic"; then
+ requirements_libs_evas="$evas_engine_[]$1[]_libs $requirements_libs_evas"
+ fi
+ ifelse([$4], , :, [$4])
+ ],[
+ ifelse([$5], , :, [$5])
+ ])
+])
+
+dnl use: EVAS_CHECK_ENGINE_DEP_GL_XLIB(engine, simple, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_ENGINE_DEP_GL_XLIB],
+[
+
+EFL_FIND_X(evas_engine_[]$1,
+ [X11/Xlib.h X11/Xatom.h X11/Xutil.h X11/extensions/Xrender.h X11/Xresource.h],
+ [X11 XCreateColormap Xrender XRenderCreatePicture],
+ [
+ CFLAGS_save="$CFLAGS"
+ CFLAGS="$evas_engine_[]$1[]_cflags $CFLAGS"
+ CPPFLAGS_save="$CPPFLAGS"
+ CPPFLAGS="$evas_engine_[]$1[]_cflags $CPPFLAGS"
+
+ AC_CHECK_HEADER([GL/gl.h],
+ [have_dep="yes"],
+ [have_dep="no"],
+ [
+#include <GL/gl.h>
+#include <GL/glext.h>
+#include <GL/glx.h>
+#include <X11/Xlib.h>
+#include <X11/Xatom.h>
+#include <X11/Xutil.h>
+#include <X11/extensions/Xrender.h>
+#include <X11/Xresource.h>
+ ])
+
+ gl_pt_lib=""
+ have_gl_pt="no"
+
+ AC_MSG_CHECKING([whether pthread_create() is supported])
+ CFLAGS_pt_save="$CFLAGS"
+ CFLAGS="$CFLAGS -pthread"
+ LIBS_pt_save="$LIBS"
+ LIBS="$LIBS -pthread"
+ AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM([[
+#include <pthread.h>
+ ]],
+ [[
+pthread_create(NULL, NULL, NULL, NULL);
+ ]])],
+ [have_gl_pt="yes"],
+ [have_gl_pt="no"])
+ CFLAGS=$CFLAGS_pt_save
+ LIBS=$LIBS_pt_save
+ AC_MSG_RESULT([$have_gl_pt])
+
+ if test "x$have_gl_pt" = "xyes" ; then
+ gl_pt_lib=" -pthread"
+ fi
+
+ if test "x$have_dep" = "xyes"; then
+ LIBS_save="$LIBS"
+ LIBS="$LIBS $evas_engine_[]$1[]_libs"
+ AC_CHECK_LIB([GL], [glXCreateContext], [have_dep="yes"], [have_dep="no"], [-lm $gl_pt_lib])
+ LIBS="$LIBS_save"
+ fi
+
+ if test "x${with_opengl}" = "xes" ; then
+ have_dep=no
+ fi
+
+ if test "x$have_dep" = "xyes" ; then
+ evas_engine_[]$1[]_libs="$evas_engine_[]$1[]_libs -lGL $gl_pt_lib"
+ evas_engine_gl_common_libs="$evas_engine_[]$1[]_libdirs -lGL $gl_pt_lib"
+ else
+ AC_CHECK_HEADER([GLES2/gl2.h],
+ [have_egl="yes"],
+ [have_egl="no"],
+ [
+#include <GLES2/gl2.h>
+#include <GLES2/gl2ext.h>
+#include <EGL/egl.h>
+#include <X11/Xlib.h>
+#include <X11/Xatom.h>
+#include <X11/Xutil.h>
+#include <X11/extensions/Xrender.h>
+#include <X11/Xresource.h>
+ ])
+ if test "x${have_egl}" = "xyes" ; then
+ AC_CHECK_LIB(GLESv2, glTexImage2D, [have_glesv2="yes"], , -lEGL -lm $gl_pt_lib)
+ if test "x${have_glesv2}" = "xyes" ; then
+ evas_engine_[]$1[]_libs="$evas_engine_[]$1[]_libs -lGLESv2 -lEGL -lm $gl_pt_lib"
+ evas_engine_gl_common_libs="$evas_engine_[]$1[]_libdirs -lGLESv2 -lm $gl_pt_lib"
+ have_dep="yes"
+ AC_DEFINE(GL_GLES, 1, [GLSL runtime shader GLES2 support])
+ gles_variety_sgx="yes"
+ fi
+ fi
+ fi
+
+ CPPFLAGS="$CPPFLAGS_save"
+ CFLAGS="$CFLAGS_save"
+
+ if test "x$3" = "xstatic" && test "x${have_dep}" = "xyes" ; then
+ requirements_libs_evas="$evas_engine_[]$1[]_libs $requirements_libs_evas"
+ fi
+
+ AS_IF([test "x${have_dep}" = "xyes"], [$4], [$5])
+ ],[
+ ifelse([$5], , :, [$5])
+ ])
+])
+
+dnl use: EVAS_CHECK_ENGINE_DEP_SOFTWARE_GDI(engine, simple, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_ENGINE_DEP_SOFTWARE_GDI],
+[
+
+have_dep="no"
+evas_engine_[]$1[]_cflags=""
+evas_engine_[]$1[]_libs=""
+
+AC_CHECK_HEADER([windows.h],
+ [
+ have_dep="yes"
+ evas_engine_[]$1[]_libs="-lgdi32"
+ ])
+
+if test "x$3" = "xstatic" && test "x${have_dep}" = "xyes" ; then
+ requirements_libs_evas="${evas_engine_[]$1[]_libs} ${requirements_libs_evas}"
+fi
+
+AC_SUBST([evas_engine_$1_cflags])
+AC_SUBST([evas_engine_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$4], [$5])
+
+])
+
+dnl use: EVAS_CHECK_ENGINE_DEP_SOFTWARE_DDRAW(engine, simple, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_ENGINE_DEP_SOFTWARE_DDRAW],
+[
+
+have_dep="no"
+evas_engine_[]$1[]_cflags=""
+evas_engine_[]$1[]_libs=""
+
+AC_CHECK_HEADER([ddraw.h],
+ [
+ have_dep="yes"
+ evas_engine_[]$1[]_libs="-lddraw"
+ ])
+
+if test "x$3" = "xstatic" && test "x${have_dep}" = "xyes" ; then
+ requirements_libs_evas="${evas_engine_[]$1[]_libs} ${requirements_libs_evas}"
+fi
+
+AC_SUBST([evas_engine_$1_cflags])
+AC_SUBST([evas_engine_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$4], [$5])
+
+])
+
+dnl use: EVAS_CHECK_ENGINE_DEP_GL_COCOA(engine, simple, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_ENGINE_DEP_GL_COCOA],
+[
+
+evas_engine_[]$1[]_cflags=""
+evas_engine_[]$1[]_libs=""
+
+AC_LANG_PUSH([Objective C])
+
+LIBS_save="$LIBS"
+LIBS="$LIBS -framework Cocoa"
+AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[
+#include <Cocoa/Cocoa.h>
+ ]],
+ [[
+NSWindow *window;
+window = [[NSWindow alloc]
+ initWithContentRect:NSMakeRect(0, 0, 1, 1)
+ styleMask:(NSTitledWindowMask)
+ backing:NSBackingStoreBuffered
+ defer:NO
+ screen:nil
+ ];
+ ]])],
+ [
+ have_dep="yes"
+ evas_engine_[]$1[]_libs="-framework Cocoa -framework OpenGL"
+ evas_engine_gl_common_libs="$evas_engine_[]$1[]_libdirs"
+ ],
+ [have_dep="no"])
+LIBS="$LIBS_save"
+
+AC_LANG_POP([Objective C])
+
+if test "x$3" = "xstatic" && test "x${have_dep}" = "xyes" ; then
+ requirements_libs_evas="${evas_engine_[]$1[]_libs} ${requirements_libs_evas}"
+fi
+
+AC_SUBST([evas_engine_$1_cflags])
+AC_SUBST([evas_engine_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$4], [$5])
+
+])
+
+dnl use: EVAS_CHECK_ENGINE_DEP_GL_SDL(engine, simple, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_ENGINE_DEP_GL_SDL],
+[
+
+requirement=""
+have_dep="no"
+evas_engine_[]$1[]_cflags=""
+evas_engine_[]$1[]_libs=""
+
+PKG_CHECK_EXISTS([sdl2 >= 2.0.0],
+ [
+ have_dep="yes"
+ requirement="sdl2 >= 2.0.0"
+ ],
+ [have_dep="no"])
+
+if test "x${have_dep}" = "xyes" ; then
+ if test "x$3" = "xstatic" ; then
+ requirements_pc_evas="${requirement} ${requirements_pc_evas}"
+ requirements_pc_deps_evas="${requirement} ${requirements_pc_deps_evas}"
+ else
+ PKG_CHECK_MODULES([SDL], [${requirement}])
+ evas_engine_[]$1[]_cflags="${SDL_CFLAGS}"
+ evas_engine_[]$1[]_libs="${SDL_LIBS}"
+ fi
+fi
+
+gl_pt_lib="";
+have_gl_pt="no"
+
+AC_MSG_CHECKING([whether pthread_create() is supported])
+CFLAGS_save="${CFLAGS}"
+CFLAGS="${CFLAGS} -pthread"
+LIBS_save="${LIBS}"
+LIBS="${LIBS} -pthread"
+AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM([[
+#include <pthread.h>
+ ]],
+ [[
+pthread_create(NULL, NULL, NULL, NULL);
+ ]])],
+ [have_gl_pt="yes"],
+ [have_gl_pt="no"])
+CFLAGS=${CFLAGS_save}
+LIBS=${LIBS_save}
+AC_MSG_RESULT([${have_gl_pt}])
+
+if test "x$have_gl_pt" = "xyes" ; then
+ gl_pt_lib=" -pthread"
+fi
+
+AC_CHECK_HEADER([GL/gl.h],
+ [have_dep="yes"],
+ [have_dep="no"],
+ [
+#include <GL/gl.h>
+#include <GL/glext.h>
+ ])
+
+if test "x${with_opengl}" = "xes" ; then
+ have_dep=no
+fi
+
+if test "x${have_dep}" = "xyes" ; then
+ evas_engine_[]$1[]_libs="${evas_engine_[]$1[]_libs} -lGL -lm $gl_pt_lib"
+ evas_engine_gl_common_libs="-lGL -lm $gl_pt_lib"
+else
+ AC_CHECK_HEADER([SDL2/SDL_opengles.h],
+ [have_egl="yes"],
+ [have_egl="no"],
+ [
+#include <SDL2/SDL_opengles.h>
+#include <EGL/egl.h>
+ ])
+ if test "x${have_egl}" = "xyes" ; then
+ AC_CHECK_LIB(GLESv2, glTexImage2D, [have_glesv2="yes"], , -lEGL -lm $gl_pt_lib)
+ if test "x${have_glesv2}" = "xyes" ; then
+ evas_engine_[]$1[]_libs="${evas_engine_[]$1[]_libs} -lGLESv2 -lEGL -lm $gl_pt_lib"
+ evas_engine_gl_common_libs="-lGLESv2 -lm $gl_pt_lib"
+ have_dep="yes"
+ AC_DEFINE(GLES_VARIETY_SGX, 1, [Imagination SGX GLES2 support])
+ gles_variety_sgx="yes"
+ fi
+ fi
+fi
+
+AC_SUBST([evas_engine_$1_cflags])
+AC_SUBST([evas_engine_$1_libs])
+
+if test "x$3" = "xstatic" ; then
+ requirement_evas="${requirement} ${requirement_evas}"
+fi
+
+AS_IF([test "x${have_dep}" = "xyes"], [$4], [$5])
+
+])
+
+
+dnl use: EVAS_CHECK_ENGINE_DEP_WAYLAND_SHM(engine, simple, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_ENGINE_DEP_WAYLAND_SHM],
+[
+
+requirement=""
+have_dep="no"
+evas_engine_[]$1[]_cflags=""
+evas_engine_[]$1[]_libs=""
+
+PKG_CHECK_EXISTS([wayland-client >= REQUIRED_WAYLAND_VERSION],
+ [
+ have_dep="yes"
+ requirement="wayland-client"
+ ],
+ [have_dep="no"])
+
+if test "x${have_dep}" = "xyes" ; then
+ if test "x$3" = "xstatic" ; then
+ requirements_pc_evas="${requirement} ${requirements_pc_evas}"
+ requirements_pc_deps_evas="${requirement} ${requirements_pc_deps_evas}"
+ else
+ PKG_CHECK_MODULES([WAYLAND_SHM], [${requirement}])
+ evas_engine_[]$1[]_cflags="${WAYLAND_SHM_CFLAGS}"
+ evas_engine_[]$1[]_libs="${WAYLAND_SHM_LIBS}"
+ fi
+fi
+
+AC_SUBST([evas_engine_$1_cflags])
+AC_SUBST([evas_engine_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$4], [$5])
+
+])
+
+dnl use: EVAS_CHECK_ENGINE_DEP_WAYLAND_EGL(engine, simple, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_ENGINE_DEP_WAYLAND_EGL],
+[
+
+requirement=""
+have_dep="no"
+evas_engine_[]$1[]_cflags=""
+evas_engine_[]$1[]_libs=""
+
+if test "x${with_opengl}" = "xes" ; then
+ gl_library="glesv2"
+else
+ gl_library="gl"
+fi
+
+PKG_CHECK_EXISTS([egl ${gl_library} wayland-client >= REQUIRED_WAYLAND_VERSION wayland-egl],
+ [
+ have_dep="yes"
+ requirement="egl ${gl_library} wayland-client wayland-egl"
+ ],
+ [have_dep="no"])
+
+if test "x${have_dep}" = "xyes" ; then
+ if test "${gl_library}" != "gl" ; then
+ have_egl="yes"
+ fi
+ if test "x$3" = "xstatic" ; then
+ requirements_pc_evas="${requirement} ${requirements_pc_evas}"
+ requirements_pc_deps_evas="${requirement} ${requirements_pc_deps_evas}"
+ else
+ PKG_CHECK_MODULES([WAYLAND_EGL], [${requirement}])
+ evas_engine_[]$1[]_cflags="${WAYLAND_EGL_CFLAGS}"
+ evas_engine_[]$1[]_libs="${WAYLAND_EGL_LIBS}"
+ evas_engine_gl_common_libs="$evas_engine_[]$1[]_libdirs -lGLESv2 -lm -lEGL"
+ fi
+fi
+
+AC_SUBST([evas_engine_$1_cflags])
+AC_SUBST([evas_engine_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$4], [$5])
+
+])
+
+
+dnl use: EVAS_CHECK_ENGINE_DEP_DRM(engine, simple, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_ENGINE_DEP_DRM],
+[
+
+requirement=""
+have_dep="no"
+have_hw_dep="no"
+evas_engine_[]$1[]_cflags=""
+evas_engine_[]$1[]_libs=""
+
+PKG_CHECK_EXISTS([libdrm],
+ [
+ have_dep="yes"
+ requirement="libdrm"
+ ], [have_dep="no"])
+
+if test "x${have_dep}" = "xyes" ; then
+ if test "x$3" = "xstatic" ; then
+ requirements_pc_evas="${requirement} ${requirements_pc_evas}"
+ requirements_pc_deps_evas="${requirement} ${requirements_pc_deps_evas}"
+ else
+ PKG_CHECK_MODULES([DRM], [${requirement}])
+ evas_engine_[]$1[]_cflags="${DRM_CFLAGS}"
+ evas_engine_[]$1[]_libs="${DRM_LIBS}"
+ fi
+fi
+
+AC_SUBST([evas_engine_$1_cflags])
+AC_SUBST([evas_engine_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$4], [$5])
+
+])
+
+dnl use: EVAS_CHECK_ENGINE_DEP_GL_DRM(engine, simple, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_ENGINE_DEP_GL_DRM],
+[
+
+requirement=""
+have_dep="no"
+have_hw_dep="no"
+evas_engine_[]$1[]_cflags=""
+evas_engine_[]$1[]_libs=""
+
+if test "x${with_opengl}" = "xes" ; then
+ gl_library="glesv2"
+else
+ AC_MSG_ERROR([We currently do not support GL DRM without OpenGL ES. Please consider OpenGL ES if you want to use it.])
+fi
+
+PKG_CHECK_EXISTS([egl ${gl_library} libdrm gbm wayland-client >= REQUIRED_WAYLAND_VERSION],
+ [
+ have_dep="yes"
+ requirement="egl ${gl_library} libdrm gbm wayland-client >= REQUIRED_WAYLAND_VERSION"
+ ],
+ [have_dep="no"])
+
+if test "x${have_dep}" = "xyes" ; then
+ if test "x$3" = "xstatic" ; then
+ requirements_pc_evas="${requirement} ${requirements_pc_evas}"
+ requirements_pc_deps_evas="${requirement} ${requirements_pc_deps_evas}"
+ else
+ PKG_CHECK_MODULES([GL_DRM], [${requirement}])
+ evas_engine_[]$1[]_cflags="${GL_DRM_CFLAGS}"
+ evas_engine_[]$1[]_libs="${GL_DRM_LIBS}"
+ evas_engine_gl_common_libs="$evas_engine_[]$1[]_libdirs -lGLESv2 -lm -lEGL"
+ fi
+fi
+
+AC_SUBST([evas_engine_$1_cflags])
+AC_SUBST([evas_engine_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$4], [$5])
+
+])
+
+dnl use: EVAS_CHECK_ENGINE_DEP_EGLFS(engine, simple, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_ENGINE_DEP_EGLFS],
+[
+
+requirement=""
+have_dep="no"
+have_hw_dep="no"
+evas_engine_[]$1[]_cflags=""
+evas_engine_[]$1[]_libs=""
+
+if test "x${with_opengl}" = "xes" ; then
+ gl_library="glesv2"
+else
+ AC_MSG_ERROR([We do not support Eglfs without OpenGL ES. Please consider OpenGL ES if you want to use it.])
+fi
+
+PKG_CHECK_EXISTS([egl >= 7.10 ${gl_library}],
+ [
+ have_dep="yes"
+ requirement="egl >= 7.10 ${gl_library}"
+ ],
+ [have_dep="no"])
+
+if test "x${have_dep}" = "xyes" ; then
+ if test "x$3" = "xstatic" ; then
+ requirements_pc_evas="${requirement} ${requirements_pc_evas}"
+ requirements_pc_deps_evas="${requirement} ${requirements_pc_deps_evas}"
+ else
+ PKG_CHECK_MODULES([EGLFS], [${requirement}])
+ evas_engine_[]$1[]_cflags="${EGLFS_CFLAGS}"
+ evas_engine_[]$1[]_libs="${EGLFS_LIBS}"
+ evas_engine_gl_common_libs="$evas_engine_[]$1[]_libdirs -lGLESv2 -lm -lEGL"
+ fi
+fi
+
+AC_SUBST([evas_engine_$1_cflags])
+AC_SUBST([evas_engine_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$4], [$5])
+
+])
+
+
+dnl use: EVAS_ENGINE(name, want_engine, [DEPENDENCY-CHECK-CODE])
+dnl
+dnl defines BUILD_ENGINE_NAME if it should be built
+dnl defines BUILD_STATIC_BUILD_NAME if should be built statically
+dnl
+dnl will call DEPENDENCY-CHECK-CODE if it should be built,
+dnl if some dependency fail just call AC_MSG_ERROR() to abort.
+
+AC_DEFUN([EVAS_ENGINE],
+[dnl
+m4_pushdef([UP], m4_translit([$1], [-a-z], [_A-Z]))dnl
+m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
+
+want_engine="$2"
+want_static_engine="no"
+have_engine="no"
+have_evas_engine_[]DOWN="no"
+
+evas_engine_[]m4_defn([DOWN])[]_cflags=""
+evas_engine_[]m4_defn([DOWN])[]_libs=""
+
+if test "x${want_engine}" = "xyes" -o "x${want_engine}" = "xstatic"; then
+ $3
+
+ have_engine="yes"
+ if test "x${want_engine}" = "xstatic" ; then
+ have_evas_engine_[]DOWN="static"
+ want_static_engine="yes"
+ else
+ have_evas_engine_[]DOWN="yes"
+ fi
+fi
+
+AC_DEFINE_IF(BUILD_ENGINE_[]UP, [test "${have_engine}" = "yes"],
+ [1], [Build $1 Evas engine])
+AM_CONDITIONAL(BUILD_ENGINE_[]UP, [test "${have_engine}" = "yes"])
+
+AC_DEFINE_IF(EVAS_STATIC_BUILD_[]UP, [test "${want_static_engine}" = "yes"],
+ [1], [Build $1 Evas engine inside libevas])
+AM_CONDITIONAL(EVAS_STATIC_BUILD_[]UP, [test "${want_static_engine}" = "yes"])
+
+AC_SUBST([evas_engine_]m4_defn([DOWN])[_cflags])
+AC_SUBST([evas_engine_]m4_defn([DOWN])[_libs])
+
+EFL_ADD_FEATURE([EVAS_ENGINE], [$1], [${have_evas_engine_]DOWN[}])dnl
+m4_popdef([UP])dnl
+m4_popdef([DOWN])dnl
+])
+
+
+
+dnl use: EVAS_CHECK_ENGINE(engine, want_engine, simple, description)
+AC_DEFUN([EVAS_CHECK_ENGINE],
+[dnl
+m4_pushdef([UP], m4_translit([$1], [-a-z], [_A-Z]))dnl
+m4_pushdef([DOWN], m4_translit([$1], [-A-Z], [_a-z]))dnl
+
+want_engine="$2"
+want_static_engine="no"
+have_engine="no"
+have_evas_engine_[]DOWN="no"
+
+AC_MSG_CHECKING([whether to enable $4 rendering backend])
+AC_MSG_RESULT([${want_engine}])
+
+if test "x${want_engine}" = "xyes" -o "x${want_engine}" = "xstatic"; then
+ m4_default([EVAS_CHECK_ENGINE_DEP_]m4_defn([UP]))(DOWN, $3, ${want_engine}, [have_engine="yes"], [have_engine="no"])
+fi
+
+if test "x${have_engine}" = "xno" -a "x${want_engine}" = "xyes"; then
+ AC_MSG_ERROR([$4 dependencies not found])
+fi
+
+AC_MSG_CHECKING([whether $4 rendering backend will be built])
+AC_MSG_RESULT([${have_engine}])
+
+if test "x${have_engine}" = "xyes" ; then
+ if test "x${want_engine}" = "xstatic" ; then
+ have_evas_engine_[]DOWN="static"
+ want_static_engine="yes"
+ else
+ have_evas_engine_[]DOWN="yes"
+ fi
+fi
+
+if test "x${have_engine}" = "xyes" ; then
+ AC_DEFINE(BUILD_ENGINE_[]UP, [1], [$4 rendering backend])
+fi
+
+AM_CONDITIONAL(BUILD_ENGINE_[]UP, [test "x${have_engine}" = "xyes"])
+
+if test "x${want_static_engine}" = "xyes" ; then
+ AC_DEFINE(EVAS_STATIC_BUILD_[]UP, [1], [Build $1 engine inside libevas])
+ have_static_module="yes"
+fi
+
+EFL_ADD_FEATURE([EVAS_ENGINE], [$1], [${have_evas_engine_]DOWN[}])
+AM_CONDITIONAL(EVAS_STATIC_BUILD_[]UP, [test "x${want_static_engine}" = "xyes"])dnl
+m4_popdef([UP])dnl
+m4_popdef([DOWN])dnl
+])
diff --git a/m4/evas_check_loader.m4 b/m4/evas_check_loader.m4
new file mode 100644
index 0000000000..ff48c3c388
--- /dev/null
+++ b/m4/evas_check_loader.m4
@@ -0,0 +1,678 @@
+
+dnl use: ARG_ENABLE_EVAS_VG_LOADER(loader, default_value)
+
+AC_DEFUN([ARG_ENABLE_EVAS_VG_LOADER],
+[dnl
+m4_pushdef([DOWN], m4_tolower([$1]))dnl
+
+AC_ARG_ENABLE([vg-loader-[]DOWN],
+ [AC_HELP_STRING([--enable-vg-loader-[]DOWN], [enable $1 vg loader. @<:@default=$2@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_evas_vg_loader_[]DOWN="yes"
+ else
+ if test "x${enableval}" = "xstatic" ; then
+ want_evas_vg_loader_[]DOWN="static"
+ else
+ if test "x${enableval}" = "xauto" ; then
+ want_evas_vg_loader_[]DOWN="auto"
+ else
+ want_evas_vg_loader_[]DOWN="no"
+ fi
+ fi
+ fi
+ ],
+ [want_evas_vg_loader_[]DOWN="$2"])
+m4_popdef([DOWN])dnl
+])
+
+dnl use: EVAS_CHECK_VG_LOADER_DEP_SVG(loader, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_VG_LOADER_DEP_SVG],
+[
+
+have_dep="yes"
+evas_vg_loader_[]$1[]_cflags=""
+evas_vg_loader_[]$1[]_libs=""
+
+AC_SUBST([evas_vg_loader_$1_cflags])
+AC_SUBST([evas_vg_loader_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$3], [$4])
+
+])
+
+dnl use: EVAS_CHECK_VG_LOADER_DEP_EET(loader, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_VG_LOADER_DEP_EET],
+[
+
+have_dep="yes"
+evas_vg_loader_[]$1[]_cflags=""
+evas_vg_loader_[]$1[]_libs=""
+
+AC_SUBST([evas_vg_loader_$1_cflags])
+AC_SUBST([evas_vg_loader_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$3], [$4])
+
+])
+
+dnl use: ARG_ENABLE_EVAS_IMAGE_LOADER(loader, default_value)
+
+AC_DEFUN([ARG_ENABLE_EVAS_IMAGE_LOADER],
+[dnl
+m4_pushdef([DOWN], m4_tolower([$1]))dnl
+
+AC_ARG_ENABLE([image-loader-[]DOWN],
+ [AC_HELP_STRING([--enable-image-loader-[]DOWN], [enable $1 image loader. @<:@default=$2@:>@])],
+ [
+ if test "x${enableval}" = "xyes" ; then
+ want_evas_image_loader_[]DOWN="yes"
+ else
+ if test "x${enableval}" = "xstatic" ; then
+ want_evas_image_loader_[]DOWN="static"
+ else
+ if test "x${enableval}" = "xauto" ; then
+ want_evas_image_loader_[]DOWN="auto"
+ else
+ want_evas_image_loader_[]DOWN="no"
+ fi
+ fi
+ fi
+ ],
+ [want_evas_image_loader_[]DOWN="$2"])
+m4_popdef([DOWN])dnl
+])
+
+dnl use: EVAS_CHECK_LOADER_DEP_BMP(loader, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_LOADER_DEP_BMP],
+[
+
+have_dep="yes"
+evas_image_loader_[]$1[]_cflags=""
+evas_image_loader_[]$1[]_libs=""
+
+AC_SUBST([evas_image_loader_$1_cflags])
+AC_SUBST([evas_image_loader_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$3], [$4])
+
+])
+
+dnl use: EVAS_CHECK_LOADER_DEP_DDS(loader, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_LOADER_DEP_DDS],
+[
+
+have_dep="yes"
+evas_image_loader_[]$1[]_cflags=""
+evas_image_loader_[]$1[]_libs=""
+
+AC_SUBST([evas_image_loader_$1_cflags])
+AC_SUBST([evas_image_loader_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$3], [$4])
+
+])
+
+dnl use: EVAS_CHECK_LOADER_DEP_EET(loader, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_LOADER_DEP_EET],
+[
+
+requirement=""
+have_dep="no"
+evas_image_loader_[]$1[]_cflags=""
+evas_image_loader_[]$1[]_libs=""
+
+dnl Eet is required
+have_dep="yes"
+
+AC_SUBST([evas_image_loader_$1_cflags])
+AC_SUBST([evas_image_loader_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$3], [$4])
+
+])
+
+dnl use: EVAS_CHECK_LOADER_DEP_GENERIC(loader, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_LOADER_DEP_GENERIC],
+[
+
+have_dep="yes"
+evas_image_loader_[]$1[]_cflags=""
+evas_image_loader_[]$1[]_libs=""
+
+AC_SUBST([evas_image_loader_$1_cflags])
+AC_SUBST([evas_image_loader_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$3], [$4])
+
+])
+
+dnl use: EVAS_CHECK_LOADER_DEP_GIF(loader, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_LOADER_DEP_GIF],
+[
+
+have_dep="no"
+evas_image_loader_[]$1[]_cflags=""
+evas_image_loader_[]$1[]_libs=""
+
+AC_CHECK_HEADER([gif_lib.h], [have_dep="yes"])
+
+if test "x${have_dep}" = "xyes" ; then
+ AC_CHECK_LIB([gif],
+ [DGifOpenFileName],
+ [
+ evas_image_loader_[]$1[]_libs="-lgif"
+ ],
+ [have_dep="no"]
+ )
+
+ if test "x${have_dep}" = "xno" ; then
+ AC_CHECK_LIB([ungif],
+ [DGifOpenFileName],
+ [
+ have_dep="yes"
+ evas_image_loader_[]$1[]_libs="-lungif"
+ ]
+ )
+ fi
+fi
+
+if test "x$2" = "xstatic" && test "x${have_dep}" = "xyes" ; then
+ requirements_libs_evas="${evas_image_loader_[]$1[]_libs} ${requirements_libs_evas}"
+fi
+
+AC_SUBST([evas_image_loader_$1_cflags])
+AC_SUBST([evas_image_loader_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$3], [$4])
+
+])
+
+dnl use: EVAS_CHECK_LOADER_DEP_ICO(loader, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_LOADER_DEP_ICO],
+[
+
+have_dep="yes"
+evas_image_loader_[]$1[]_cflags=""
+evas_image_loader_[]$1[]_libs=""
+
+AC_SUBST([evas_image_loader_$1_cflags])
+AC_SUBST([evas_image_loader_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$3], [$4])
+
+])
+
+dnl use: EVAS_CHECK_LOADER_DEP_JPEG(loader, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_LOADER_DEP_JPEG],
+[
+
+have_dep="no"
+evas_image_loader_[]$1[]_cflags=""
+evas_image_loader_[]$1[]_libs=""
+
+AC_CHECK_HEADER([jpeglib.h], [have_dep="yes"])
+
+if test "x${have_dep}" = "xyes" ; then
+ AC_CHECK_LIB([jpeg],
+ [jpeg_CreateDecompress],
+ [
+ evas_image_loader_[]$1[]_libs="-ljpeg"
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[
+#include <stdio.h>
+#include <jpeglib.h>
+#include <setjmp.h>
+ ]],
+ [[
+struct jpeg_decompress_struct decomp;
+decomp.region_x = 0;
+ ]])],
+ [have_jpeg_region="yes"],
+ [have_jpeg_region="no"])
+ ],
+ [have_dep="no"]
+ )
+ if test "x${have_jpeg_region}" = "xyes" ; then
+ AC_DEFINE(BUILD_LOADER_JPEG_REGION, [1], [JPEG Region Decode Support])
+ fi
+fi
+
+if test "x$2" = "xstatic" && test "x${have_dep}" = "xyes" ; then
+ requirements_libs_evas="${evas_image_loader_[]$1[]_libs} ${requirements_libs_evas}"
+fi
+
+AC_SUBST([evas_image_loader_$1_cflags])
+AC_SUBST([evas_image_loader_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$3], [$4])
+
+])
+
+dnl use: EVAS_CHECK_LOADER_DEP_JP2K(loader, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_LOADER_DEP_JP2K],
+[
+
+requirement=""
+have_dep="no"
+evas_image_loader_[]$1[]_cflags=""
+evas_image_loader_[]$1[]_libs=""
+
+PKG_CHECK_EXISTS([libopenjp2 >= 2.0],
+ [
+ have_dep="yes"
+ requirement="libopenjp2 >= 2.0"
+ ],
+ [have_dep="no"])
+
+if test "x${have_dep}" = "xyes" ; then
+ if test "x$2" = "xstatic" ; then
+ requirements_pc_evas="${requirement} ${requirements_pc_evas}"
+ requirements_pc_deps_evas="${requirement} ${requirements_pc_deps_evas}"
+ fi
+ PKG_CHECK_MODULES([JP2K], [${requirement}])
+ evas_image_loader_[]$1[]_cflags="${JP2K_CFLAGS}"
+ evas_image_loader_[]$1[]_libs="${JP2K_LIBS}"
+fi
+
+AC_SUBST([evas_image_loader_$1_cflags])
+AC_SUBST([evas_image_loader_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$3], [$4])
+
+])
+
+dnl use: EVAS_CHECK_LOADER_DEP_PMAPS(loader, want_static[[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_LOADER_DEP_PMAPS],
+[
+
+have_dep="yes"
+evas_image_loader_[]$1[]_cflags=""
+evas_image_loader_[]$1[]_libs=""
+
+AC_SUBST([evas_image_loader_$1_cflags])
+AC_SUBST([evas_image_loader_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$3], [$4])
+
+])
+
+dnl use: EVAS_CHECK_LOADER_DEP_PNG(loader, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_LOADER_DEP_PNG],
+[
+
+requirement=""
+have_dep="no"
+evas_image_loader_[]$1[]_cflags=""
+evas_image_loader_[]$1[]_libs=""
+
+dnl libpng.pc is the latest version of libpng that ahs been installed.
+dnl We check it first.
+PKG_CHECK_EXISTS([libpng >= 1.2.10],
+ [
+ have_dep="yes"
+ requirement="libpng >= 1.2.10"
+ ],
+ [have_dep="no"])
+
+if test "x${have_dep}" = "xno" ; then
+ PKG_CHECK_EXISTS([libpng15],
+ [
+ have_dep="yes"
+ requirement="libpng15"
+ ],
+ [have_dep="no"])
+fi
+
+if test "x${have_dep}" = "xno" ; then
+ PKG_CHECK_EXISTS([libpng14],
+ [
+ have_dep="yes"
+ requirement="libpng14"
+ ],
+ [have_dep="no"])
+fi
+
+if test "x${have_dep}" = "xno" ; then
+ PKG_CHECK_EXISTS([libpng12 >= 1.2.10],
+ [
+ have_dep="yes"
+ requirement="libpng12 >= 1.2.10"
+ ],
+ [have_dep="no"])
+fi
+
+if test "x${have_dep}" = "xyes" ; then
+ if test "x$2" = "xstatic" ; then
+ requirements_pc_evas="${requirement} ${requirements_pc_evas}"
+ requirements_pc_deps_evas="${requirement} ${requirements_pc_deps_evas}"
+ fi
+ PKG_CHECK_MODULES([PNG], [${requirement}])
+ evas_image_loader_[]$1[]_cflags="${PNG_CFLAGS}"
+ evas_image_loader_[]$1[]_libs="${PNG_LIBS}"
+fi
+
+AC_SUBST([evas_image_loader_$1_cflags])
+AC_SUBST([evas_image_loader_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$3], [$4])
+
+])
+
+dnl use: EVAS_CHECK_LOADER_DEP_PSD(loader, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_LOADER_DEP_PSD],
+[
+
+have_dep="yes"
+evas_image_loader_[]$1[]_cflags=""
+evas_image_loader_[]$1[]_libs=""
+
+AC_SUBST([evas_image_loader_$1_cflags])
+AC_SUBST([evas_image_loader_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$3], [$4])
+
+])
+
+dnl use: EVAS_CHECK_LOADER_DEP_TGV(loader, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_LOADER_DEP_TGV],
+[
+
+have_dep="yes"
+evas_image_loader_[]$1[]_cflags=""
+evas_image_loader_[]$1[]_libs=""
+
+AC_SUBST([evas_image_loader_$1_cflags])
+AC_SUBST([evas_image_loader_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$3], [$4])
+
+])
+
+dnl use: EVAS_CHECK_LOADER_DEP_SVG(loader, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_LOADER_DEP_SVG],
+[
+
+requirement=""
+evas_image_loader_[]$1[]_cflags=""
+evas_image_loader_[]$1[]_libs=""
+version_esvg="0.0.18"
+version_ender="0.0.6"
+
+PKG_CHECK_EXISTS([esvg >= ${version_esvg} ender >= ${version_ender}],
+ [
+ have_dep="yes"
+ requirement="esvg >= ${version_esvg} ender >= ${version_ender}"
+ ],
+ [have_dep="no"])
+
+if test "x${have_dep}" = "xyes" ; then
+ if test "x$2" = "xstatic" ; then
+ requirements_pc_evas="${requirement} ${requirements_pc_evas}"
+ requirements_pc_deps_evas="${requirement} ${requirements_pc_deps_evas}"
+ fi
+ PKG_CHECK_MODULES([SVG], [${requirement}])
+ evas_image_loader_[]$1[]_cflags="${SVG_CFLAGS}"
+ evas_image_loader_[]$1[]_libs="${SVG_LIBS}"
+fi
+
+AC_SUBST([evas_image_loader_$1_cflags])
+AC_SUBST([evas_image_loader_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$3], [$4])
+
+])
+
+dnl use: EVAS_CHECK_LOADER_DEP_TGA(loader, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_LOADER_DEP_TGA],
+[
+
+have_dep="yes"
+evas_image_loader_[]$1[]_cflags=""
+evas_image_loader_[]$1[]_libs=""
+
+AC_SUBST([evas_image_loader_$1_cflags])
+AC_SUBST([evas_image_loader_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$3], [$4])
+
+])
+
+dnl use: EVAS_CHECK_LOADER_DEP_TIFF(loader, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_LOADER_DEP_TIFF],
+[
+
+have_dep="no"
+evas_image_loader_[]$1[]_cflags=""
+evas_image_loader_[]$1[]_libs=""
+
+AC_CHECK_HEADER([tiffio.h], [have_dep="yes"])
+
+if test "x${have_dep}" = "xyes" ; then
+ AC_CHECK_LIB([tiff],
+ [TIFFReadScanline],
+ [
+ evas_image_loader_[]$1[]_libs="-ltiff"
+ ],
+ [have_dep="no"]
+ )
+
+ if test "x${have_dep}" = "xno" ; then
+ AC_CHECK_LIB([tiff],
+ [TIFFReadScanline],
+ [
+ have_dep="yes"
+ evas_image_loader_[]$1[]_libs="-ltiff -ljpeg -lz -lm"
+ ]
+ )
+ fi
+
+ if test "x${have_dep}" = "xno" ; then
+ AC_CHECK_LIB([tiff34],
+ [TIFFReadScanline],
+ [
+ have_dep="yes"
+ evas_image_loader_[]$1[]_libs="-ltiff34 -ljpeg -lz -lm"
+ ]
+ )
+ fi
+fi
+
+if test "x$2" = "xstatic" && test "x${have_dep}" = "xyes" ; then
+ requirements_libs_evas="${evas_image_loader_[]$1[]_libs} ${requirements_libs_evas}"
+fi
+
+AC_SUBST([evas_image_loader_$1_cflags])
+AC_SUBST([evas_image_loader_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$3], [$4])
+
+])
+
+dnl use: EVAS_CHECK_LOADER_DEP_WBMP(loader, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_LOADER_DEP_WBMP],
+[
+
+have_dep="yes"
+evas_image_loader_[]$1[]_cflags=""
+evas_image_loader_[]$1[]_libs=""
+
+AC_SUBST([evas_image_loader_$1_cflags])
+AC_SUBST([evas_image_loader_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$3], [$4])
+
+])
+
+dnl use: EVAS_CHECK_LOADER_DEP_WEBP(loader, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_LOADER_DEP_WEBP],
+[
+
+have_dep="no"
+evas_image_loader_[]$1[]_cflags=""
+evas_image_loader_[]$1[]_libs=""
+
+AC_CHECK_HEADER([webp/decode.h], [have_dep="yes"])
+
+if test "x${have_dep}" = "xyes" ; then
+ AC_CHECK_LIB([webp],
+ [WebPDecodeRGBA],
+ [
+ evas_image_loader_[]$1[]_libs="-lwebp"
+ ],
+ [have_dep="no"]
+ )
+fi
+
+if test "x$2" = "xstatic" && test "x${have_dep}" = "xyes" ; then
+ requirements_libs_evas="${evas_image_loader_[]$1[]_libs} ${requirements_libs_evas}"
+fi
+
+AC_SUBST([evas_image_loader_$1_cflags])
+AC_SUBST([evas_image_loader_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$3], [$4])
+
+])
+
+dnl use: EVAS_CHECK_LOADER_DEP_XPM(loader, want_static[, ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
+
+AC_DEFUN([EVAS_CHECK_LOADER_DEP_XPM],
+[
+
+have_dep="yes"
+evas_image_loader_[]$1[]_cflags=""
+evas_image_loader_[]$1[]_libs=""
+
+AC_SUBST([evas_image_loader_$1_cflags])
+AC_SUBST([evas_image_loader_$1_libs])
+
+AS_IF([test "x${have_dep}" = "xyes"], [$3], [$4])
+
+])
+
+dnl use: EVAS_CHECK_IMAGE_LOADER(loader, want_loader, macro)
+AC_DEFUN([EVAS_CHECK_IMAGE_LOADER],
+[dnl
+m4_pushdef([UP], m4_toupper([$1]))dnl
+m4_pushdef([DOWN], m4_tolower([$1]))dnl
+
+want_loader="$2"
+want_static_loader="no"
+have_loader="no"
+have_evas_image_loader_[]DOWN="no"
+
+AC_MSG_CHECKING([whether to enable $1 image loader])
+AC_MSG_RESULT([${want_loader}])
+
+if test "x${want_loader}" = "xyes" -o "x${want_loader}" = "xstatic" -o "x${want_loader}" = "xauto"; then
+ m4_default([EVAS_CHECK_LOADER_DEP_]m4_defn([UP]))(DOWN, ${want_loader}, [have_loader="yes"], [have_loader="no"])
+fi
+
+if test "x${have_loader}" = "xno"; then
+ if test "x${want_loader}" = "xyes" -o "x${want_loader}" = "xstatic"; then
+ AC_MSG_ERROR([$1 dependencies not found])
+ fi
+fi
+
+AC_MSG_CHECKING([whether $1 image loader will be built])
+AC_MSG_RESULT([${have_loader}])
+
+if test "x${have_loader}" = "xyes" ; then
+ if test "x${want_loader}" = "xstatic" ; then
+ have_evas_image_loader_[]DOWN="static"
+ want_static_loader="yes"
+ else
+ have_evas_image_loader_[]DOWN="yes"
+ fi
+fi
+
+if test "x${have_loader}" = "xyes" ; then
+ AC_DEFINE(BUILD_LOADER_[]UP, [1], [UP Image Loader Support])
+fi
+
+AM_CONDITIONAL(BUILD_LOADER_[]UP, [test "x${have_loader}" = "xyes"])
+
+if test "x${want_static_loader}" = "xyes" ; then
+ AC_DEFINE(EVAS_STATIC_BUILD_[]UP, [1], [Build $1 image loader inside libevas])
+ have_static_module="yes"
+fi
+
+EFL_ADD_FEATURE([EVAS_LOADER], DOWN, [${have_evas_image_loader_]DOWN[}])dnl
+AM_CONDITIONAL(EVAS_STATIC_BUILD_[]UP, [test "x${want_static_loader}" = "xyes"])dnl
+m4_popdef([UP])dnl
+m4_popdef([DOWN])dnl
+])
+
+dnl use: EVAS_CHECK_VG_LOADER(loader, want_loader, macro)
+AC_DEFUN([EVAS_CHECK_VG_LOADER],
+[dnl
+m4_pushdef([UP], m4_toupper([$1]))dnl
+m4_pushdef([DOWN], m4_tolower([$1]))dnl
+
+want_loader="$2"
+want_static_loader="no"
+have_loader="no"
+have_evas_vg_loader_[]DOWN="no"
+
+AC_MSG_CHECKING([whether to enable $1 vg loader])
+AC_MSG_RESULT([${want_loader}])
+
+if test "x${want_loader}" = "xyes" -o "x${want_loader}" = "xstatic" -o "x${want_loader}" = "xauto"; then
+ m4_default([EVAS_CHECK_VG_LOADER_DEP_]m4_defn([UP]))(DOWN, ${want_loader}, [have_loader="yes"], [have_loader="no"])
+fi
+
+if test "x${have_loader}" = "xno"; then
+ if test "x${want_loader}" = "xyes" -o "x${want_loader}" = "xstatic"; then
+ AC_MSG_ERROR([$1 dependencies not found])
+ fi
+fi
+
+AC_MSG_CHECKING([whether $1 vg loader will be built])
+AC_MSG_RESULT([${have_loader}])
+
+if test "x${have_loader}" = "xyes" ; then
+ if test "x${want_loader}" = "xstatic" ; then
+ have_evas_vg_loader_[]DOWN="static"
+ want_static_loader="yes"
+ else
+ have_evas_vg_loader_[]DOWN="yes"
+ fi
+fi
+
+if test "x${have_loader}" = "xyes" ; then
+ AC_DEFINE(BUILD_VG_LOADER_[]UP, [1], [UP Image Loader Support])
+fi
+
+AM_CONDITIONAL(BUILD_VG_LOADER_[]UP, [test "x${have_loader}" = "xyes"])
+
+if test "x${want_static_loader}" = "xyes" ; then
+ AC_DEFINE(EVAS_STATIC_BUILD_VG_[]UP, [1], [Build $1 vg loader inside libevas])
+ have_static_module="yes"
+fi
+
+EFL_ADD_FEATURE([EVAS_VG_LOADER], DOWN, [${have_evas_vg_loader_]DOWN[}])dnl
+AM_CONDITIONAL(EVAS_STATIC_BUILD_VG_[]UP, [test "x${want_static_loader}" = "xyes"])dnl
+m4_popdef([UP])dnl
+m4_popdef([DOWN])dnl
+])
diff --git a/m4/evil_windows.m4 b/m4/evil_windows.m4
new file mode 100644
index 0000000000..b3fb94e06b
--- /dev/null
+++ b/m4/evil_windows.m4
@@ -0,0 +1,53 @@
+dnl Copyright (C) 2011 Vincent Torri <vincent dot torri at gmail dot com>
+dnl This code is public domain and can be freely used or copied.
+
+dnl Macro that select the Windows version (XP (default), Vista, 7)
+
+dnl Usage: EFL_SELECT_WINDOWS_VERSION()
+dnl Update CPPFLAGS accordingly
+
+AC_DEFUN([EFL_SELECT_WINDOWS_VERSION],
+[
+
+dnl configure option
+
+AC_ARG_WITH([windows-version],
+ [AC_HELP_STRING([--with-windows-version], [select the target Windows version (vista, win7, win8, win81 or win10) @<:@default=win7@:>@])],
+ [_winver=${with_windows_version}],
+ [_winver="win7"])
+
+AC_MSG_CHECKING([which Windows version to target])
+AC_MSG_RESULT([${_winver}])
+
+case "${_winver}" in
+ vista)
+ EFL_WINDOWS_VERSION_CFLAGS="-D_WIN32_WINNT=0x0600 -DWINVER=0x0600"
+ _efl_windows_version="Windows Vista"
+ ;;
+ win7)
+ EFL_WINDOWS_VERSION_CFLAGS="-D_WIN32_WINNT=0x0601 -DWINVER=0x0601"
+ _efl_windows_version="Windows 7"
+ ;;
+ win8)
+ EFL_WINDOWS_VERSION_CFLAGS="-D_WIN32_WINNT=0x0602 -DWINVER=0x0602"
+ _efl_windows_version="Windows 8"
+ ;;
+ win81)
+ EFL_WINDOWS_VERSION_CFLAGS="-D_WIN32_WINNT=0x0603 -DWINVER=0x0603"
+ _efl_windows_version="Windows 8.1"
+ ;;
+ win10)
+ EFL_WINDOWS_VERSION_CFLAGS="-D_WIN32_WINNT=0x0A00 -DWINVER=0x0A00"
+ _efl_windows_version="Windows 10"
+ ;;
+ *)
+ AC_MSG_ERROR([Wrong Windows version passed to configure. Run ./configure --help])
+ ;;
+esac
+
+EFL_CFLAGS="${EFL_CFLAGS} ${EFL_WINDOWS_VERSION_CFLAGS}"
+AC_SUBST([EFL_WINDOWS_VERSION_CFLAGS])
+AC_SUBST([_efl_windows_version])
+AC_MSG_NOTICE([Targetting ${_efl_windows_version}])
+
+])
diff --git a/m4/gcc_check_builtin.m4 b/m4/gcc_check_builtin.m4
new file mode 100644
index 0000000000..d5122502a6
--- /dev/null
+++ b/m4/gcc_check_builtin.m4
@@ -0,0 +1,13 @@
+AC_DEFUN([EFL_CHECK_GCC_BUILTIN],
+[efl_check_gcc_builtin_save_libs=$LIBS
+EINA_CONFIGURE_$2=""
+LIBS="-lm $LIBS"
+AC_LINK_IFELSE(
+[AC_LANG_PROGRAM(
+[[]], [[return __builtin_$1(42);]]
+)],
+[EINA_CONFIGURE_$2="#define EINA_$2"
+AC_DEFINE([$2], [1], [GCC builtin $1 exists])])
+AC_SUBST(EINA_CONFIGURE_$2)
+LIBS=$efl_check_gcc_builtin_save_libs])
+
diff --git a/m4/libgcrypt.m4 b/m4/libgcrypt.m4
new file mode 100644
index 0000000000..831dc0c6f4
--- /dev/null
+++ b/m4/libgcrypt.m4
@@ -0,0 +1,123 @@
+dnl Autoconf macros for libgcrypt
+dnl Copyright (C) 2002, 2004 Free Software Foundation, Inc.
+dnl
+dnl This file is free software; as a special exception the author gives
+dnl unlimited permission to copy and/or distribute it, with or without
+dnl modifications, as long as this notice is preserved.
+dnl
+dnl This file is distributed in the hope that it will be useful, but
+dnl WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
+dnl implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+
+dnl AM_PATH_LIBGCRYPT([MINIMUM-VERSION,
+dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]])
+dnl Test for libgcrypt and define LIBGCRYPT_CFLAGS and LIBGCRYPT_LIBS.
+dnl MINIMUN-VERSION is a string with the version number optionalliy prefixed
+dnl with the API version to also check the API compatibility. Example:
+dnl a MINIMUN-VERSION of 1:1.2.5 won't pass the test unless the installed
+dnl version of libgcrypt is at least 1.2.5 *and* the API number is 1. Using
+dnl this features allows to prevent build against newer versions of libgcrypt
+dnl with a changed API.
+dnl
+AC_DEFUN([AM_PATH_LIBGCRYPT],
+[ AC_ARG_WITH(libgcrypt-prefix,
+ AC_HELP_STRING([--with-libgcrypt-prefix=PFX],
+ [prefix where LIBGCRYPT is installed (optional)]),
+ libgcrypt_config_prefix="$withval", libgcrypt_config_prefix="")
+ if test x$libgcrypt_config_prefix != x ; then
+ if test x${LIBGCRYPT_CONFIG+set} != xset ; then
+ LIBGCRYPT_CONFIG=$libgcrypt_config_prefix/bin/libgcrypt-config
+ fi
+ fi
+
+ AC_PATH_TOOL(LIBGCRYPT_CONFIG, libgcrypt-config, no)
+ tmp=ifelse([$1], ,1:1.2.0,$1)
+ if echo "$tmp" | grep ':' >/dev/null 2>/dev/null ; then
+ req_libgcrypt_api=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\1/'`
+ min_libgcrypt_version=`echo "$tmp" | sed 's/\(.*\):\(.*\)/\2/'`
+ else
+ req_libgcrypt_api=0
+ min_libgcrypt_version="$tmp"
+ fi
+
+ AC_MSG_CHECKING(for LIBGCRYPT - version >= $min_libgcrypt_version)
+ ok=no
+ if test "$LIBGCRYPT_CONFIG" != "no" ; then
+ req_major=`echo $min_libgcrypt_version | \
+ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\1/'`
+ req_minor=`echo $min_libgcrypt_version | \
+ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\2/'`
+ req_micro=`echo $min_libgcrypt_version | \
+ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\3/'`
+ libgcrypt_config_version=`$LIBGCRYPT_CONFIG --version`
+ major=`echo $libgcrypt_config_version | \
+ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'`
+ minor=`echo $libgcrypt_config_version | \
+ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\2/'`
+ micro=`echo $libgcrypt_config_version | \
+ sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\3/'`
+ if test "$major" -gt "$req_major"; then
+ ok=yes
+ else
+ if test "$major" -eq "$req_major"; then
+ if test "$minor" -gt "$req_minor"; then
+ ok=yes
+ else
+ if test "$minor" -eq "$req_minor"; then
+ if test "$micro" -ge "$req_micro"; then
+ ok=yes
+ fi
+ fi
+ fi
+ fi
+ fi
+ fi
+ if test $ok = yes; then
+ AC_MSG_RESULT([yes ($libgcrypt_config_version)])
+ else
+ AC_MSG_RESULT(no)
+ fi
+ if test $ok = yes; then
+ # If we have a recent libgcrypt, we should also check that the
+ # API is compatible
+ if test "$req_libgcrypt_api" -gt 0 ; then
+ tmp=`$LIBGCRYPT_CONFIG --api-version 2>/dev/null || echo 0`
+ if test "$tmp" -gt 0 ; then
+ AC_MSG_CHECKING([LIBGCRYPT API version])
+ if test "$req_libgcrypt_api" -eq "$tmp" ; then
+ AC_MSG_RESULT([okay])
+ else
+ ok=no
+ AC_MSG_RESULT([does not match. want=$req_libgcrypt_api got=$tmp])
+ fi
+ fi
+ fi
+ fi
+ if test $ok = yes; then
+ LIBGCRYPT_CFLAGS=`$LIBGCRYPT_CONFIG --cflags`
+ LIBGCRYPT_LIBS=`$LIBGCRYPT_CONFIG --libs`
+ ifelse([$2], , :, [$2])
+ if test x"$host" != x ; then
+ libgcrypt_config_host=`$LIBGCRYPT_CONFIG --host 2>/dev/null || echo none`
+ if test x"$libgcrypt_config_host" != xnone ; then
+ if test x"$libgcrypt_config_host" != x"$host" ; then
+ AC_MSG_WARN([[
+***
+*** The config script $LIBGCRYPT_CONFIG was
+*** built for $libgcrypt_config_host and thus may not match the
+*** used host $host.
+*** You may want to use the configure option --with-libgcrypt-prefix
+*** to specify a matching config script.
+***]])
+ fi
+ fi
+ fi
+ else
+ LIBGCRYPT_CFLAGS=""
+ LIBGCRYPT_LIBS=""
+ ifelse([$3], , :, [$3])
+ fi
+ AC_SUBST(LIBGCRYPT_CFLAGS)
+ AC_SUBST(LIBGCRYPT_LIBS)
+])
diff --git a/m4/pkg_var.m4 b/m4/pkg_var.m4
new file mode 100644
index 0000000000..3d0a309bcb
--- /dev/null
+++ b/m4/pkg_var.m4
@@ -0,0 +1,14 @@
+# PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE,
+# [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
+# -------------------------------------------
+# Retrieves the value of the pkg-config variable for the given module.
+AC_DEFUN([EFL_PKG_CHECK_VAR],
+[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
+AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl
+
+_PKG_CONFIG([$1], [variable="][$3]["], [$2])
+AS_VAR_COPY([$1], [pkg_cv_][$1])
+
+AS_VAR_IF([$1], [""], [$5], [$4])dnl
+])# PKG_CHECK_VAR
+
diff --git a/src/Makefile.am b/src/Makefile.am
new file mode 100644
index 0000000000..9675fc193b
--- /dev/null
+++ b/src/Makefile.am
@@ -0,0 +1,223 @@
+AUTOMAKE_OPTIONS= -Wno-portability
+MAINTAINERCLEANFILES = Makefile.in
+CLEANFILES =
+BUILT_SOURCES =
+PHONIES =
+
+EOLIAN_FLAGS = -I$(srcdir)
+EOLIAN_GEN_FLAGS = -S
+
+LOG_COMPILER = dbus-run-session
+AM_LOG_FLAGS = --
+
+DIST_SUBDIRS =
+SUBDIRS =
+
+AM_TESTS_ENVIRONMENT =
+
+lib_LTLIBRARIES =
+bin_PROGRAMS =
+bin_SCRIPTS =
+noinst_PROGRAMS =
+check_PROGRAMS =
+TESTS =
+EXTRA_DIST2 =
+
+noinst_LTLIBRARIES =
+noinst_DATA =
+noinst_HEADERS =
+
+GENERATED_JS_BINDINGS =
+GENERATED_LUA_BINDINGS =
+
+EFL_INSTALL_EXEC_HOOK=
+
+include Makefile_Evil.am
+include Makefile_Escape.am
+
+include Makefile_Eina.am
+include Makefile_Eo.am
+include Makefile_Efl.am
+include Makefile_Emile.am
+include Makefile_Eet.am
+include Makefile_Eolian.am
+include Makefile_Ector.am
+include Makefile_Ecore.am
+include Makefile_Evas.am
+include Makefile_Eldbus.am
+include Makefile_Ecore_Con.am
+include Makefile_Ecore_Ipc.am
+include Makefile_Ecore_File.am
+include Makefile_Eeze.am
+include Makefile_Ecore_Input.am
+include Makefile_Ecore_Input_Evas.am
+include Makefile_Ecore_Cocoa.am
+include Makefile_Ecore_FB.am
+include Makefile_Ecore_SDL.am
+include Makefile_Ecore_Wayland.am
+include Makefile_Ecore_Wl2.am
+include Makefile_Ecore_Win32.am
+include Makefile_Ecore_X.am
+include Makefile_Ecore_IMF.am
+include Makefile_Ecore_IMF_Evas.am
+include Makefile_Elput.am
+include Makefile_Ecore_Drm.am
+include Makefile_Ecore_Drm2.am
+include Makefile_Ecore_Evas.am
+include Makefile_Ecore_Audio.am
+include Makefile_Ecore_Avahi.am
+include Makefile_Embryo.am
+include Makefile_Efreet.am
+include Makefile_Eio.am
+include Makefile_Ecore_Buffer.am
+include Makefile_EPhysics.am
+include Makefile_Edje.am
+include Makefile_Emotion.am
+include Makefile_Ethumb.am
+include Makefile_Ethumb_Client.am
+include Makefile_Elocation.am
+include Makefile_Elementary.am
+include Makefile_efl_wl.am
+
+include Makefile_Cxx.am
+include Makefile_Eolian_Cxx.am
+include Makefile_Efl_Mono.am
+
+include Makefile_Elua.am
+
+include Makefile_Wayland_Protocols.am
+
+if HAVE_JS
+AM_V_CP = $(am__v_CP_@AM_V@)
+am__v_CP_ = $(am__v_CP_@AM_DEFAULT_V@)
+am__v_CP_0 = @echo " CP " $@;
+CP = cp
+if EFL_ENABLE_TESTS
+if HAVE_NODEJS
+AM_TESTS_ENVIRONMENT += NODE_PATH='$(abs_builddir)/bin/efl_js:$(abs_builddir)/tests/eolian_js:$(abs_builddir)/tests/efl_js'; export NODE_PATH;
+endif
+endif
+endif
+
+include Makefile_Eolian_Js.am
+include Makefile_Efl_Js.am
+
+.PHONY: benchmark examples $(PHONIES)
+
+BENCHMARK_SUBDIRS = \
+benchmarks/eina \
+benchmarks/eo \
+benchmarks/evas
+DIST_SUBDIRS += $(BENCHMARK_SUBDIRS)
+
+benchmark: all
+ @for d in $(BENCHMARK_SUBDIRS); do \
+ echo "Making benchmark in $$d"; \
+ $(MAKE) $(AM_MAKEFLAGS) -C $$d benchmark; \
+ done
+
+EXAMPLES_SUBDIRS = \
+examples
+
+if ALWAYS_BUILD_EXAMPLES
+SUBDIRS += . $(EXAMPLES_SUBDIRS)
+endif
+
+DIST_SUBDIRS += $(EXAMPLES_SUBDIRS)
+
+if EFL_ENABLE_TESTS
+noinst_PROGRAMS += tests/timeout
+
+$(check_PROGRAMS): tests/timeout
+
+check-build: all
+ @$(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS)
+endif
+
+examples: all
+ @for d in $(EXAMPLES_SUBDIRS); do \
+ echo "Making examples in $$d"; \
+ $(MAKE) $(AM_MAKEFLAGS) -C $$d examples || exit 1; \
+ done
+
+install-examples:
+ @for d in $(EXAMPLES_SUBDIRS); do \
+ echo "Making install-examples in $$d"; \
+ $(MAKE) $(AM_MAKEFLAGS) -C $$d install-examples || exit 1; \
+ done
+
+dist-hook:
+ @mkdir -p $(distdir)/tests/elua/data/apps $(distdir)/tests/eolian/data
+ @mkdir -p $(distdir)/tests/evas/images $(distdir)/tests/evas/meshes
+ @mkdir -p $(distdir)/tests/evas/fonts $(distdir)/tests/eolian/data_aux
+ @mkdir -p $(distdir)/tests/efreet/data $(distdir)/tests/edje/data
+ @mkdir -p $(distdir)/tests/emotion/data $(distdir)/tests/evas/meshes/md2
+ @mkdir -p $(distdir)/tests/evas/meshes/obj $(distdir)/tests/efreet/data/sub
+ @mkdir -p $(distdir)/tests/efl_mono
+ @mkdir -p $(distdir)/scripts/eina $(distdir)/scripts/elua/modules
+ @mkdir -p $(distdir)/scripts/elua/core $(distdir)/scripts/elua/apps/docgen
+ @mkdir -p $(distdir)/lib/evas/common/evas_op_add $(distdir)/lib/evas/common/evas_op_copy
+ @mkdir -p $(distdir)/lib/evas/common/evas_op_mask $(distdir)/lib/evas/common/evas_op_mul
+ @mkdir -p $(distdir)/lib/evas/common/evas_op_sub $(distdir)/lib/evas/filters/blur
+ @mkdir -p $(distdir)/static_libs/http-parser/contrib $(distdir)/bindings/luajit/eina
+ @mkdir -p $(distdir)/wayland_protocol $(distdir)/lib/efl_wl/
+ @mkdir -p $(distdir)/modules/evas/engines/software_generic/filters/blur
+ @mkdir -p $(distdir)/bindings/mono/efl_mono
+ @mkdir -p $(distdir)/bindings/mono/eina_mono
+ @mkdir -p $(distdir)/bindings/mono/eldbus_mono
+ @mkdir -p $(distdir)/bindings/mono/eo_mono
+ for F in $(EXTRA_DIST2); do cp -f $(srcdir)/$$F $(distdir)/$$F; done
+
+clean-local:
+ find . -type f -name '*.gcno' -delete
+ find . -type f -name '*.gcda' -delete
+ find . -type f -name check-results*.xml -delete
+ rm -f $(GENERATED_JS_BINDINGS)
+ rm -f $(GENERATED_LUA_BINDINGS)
+ rm -f $(BUILT_SOURCES)
+
+install-exec-hook:
+ $(MKDIR_P) $(DESTDIR)$(libdir)
+ for i in $(lib_LTLIBRARIES); do \
+ FNAME="$(DESTDIR)$(libdir)/`echo $$i | sed "s#lib/.*/##"`"; \
+ FNAMEEXT="$$FNAME.$$$$"; \
+ sed "s/-luuid//" $$FNAME > $$FNAMEEXT; \
+ mv $$FNAMEEXT $$FNAME; \
+ done
+ $(EFL_INSTALL_EXEC_HOOK)
+
+#At the bottom because .SECONDEXPANSION is applied to all following rules.
+if HAVE_WAYLAND_SCANNER
+#Stolen from weston's Makefile.am and modified for Enlightenment
+.SECONDEXPANSION:
+
+define protostability
+$(if $(findstring unstable,$1),unstable,stable)
+endef
+
+define protoname
+$(shell echo $1 | sed 's/\([a-z\-]\+\)-[a-z]\+-v[0-9]\+/\1/')
+endef
+
+#rules for generating protocol from wayland_protocols
+%-protocol.c : $(WAYLAND_PROTOCOLS_DATADIR)/$$(call protostability,$$*)/$$(call protoname,$$*)/$$*.xml
+ $(AM_V_GEN)$(MKDIR_P) $(dir $@) && $(wayland_scanner) code < $< > $@
+
+%-server-protocol.h : $(WAYLAND_PROTOCOLS_DATADIR)/$$(call protostability,$$*)/$$(call protoname,$$*)/$$*.xml
+ $(AM_V_GEN)$(MKDIR_P) $(dir $@) && $(wayland_scanner) server-header < $< > $@
+
+%-client-protocol.h : $(WAYLAND_PROTOCOLS_DATADIR)/$$(call protostability,$$*)/$$(call protoname,$$*)/$$*.xml
+ $(AM_V_GEN)$(MKDIR_P) $(dir $@) && $(wayland_scanner) client-header < $< > $@
+
+#rules for generating local protocols which must be in src/wayland_protocol
+%-protocol.c : $(top_srcdir)/src/wayland_protocol/$(notdir $$*).xml
+ $(AM_V_GEN)$(MKDIR_P) $(dir $@) && $(wayland_scanner) code < $< > $@
+
+%-server-protocol.h : $(top_srcdir)/src/wayland_protocol/$(notdir $$*).xml
+ $(AM_V_GEN)$(MKDIR_P) $(dir $@) && $(wayland_scanner) server-header < $< > $@
+
+%-client-protocol.h : $(top_srcdir)/src/wayland_protocol/$(notdir $$*).xml
+ $(AM_V_GEN)$(MKDIR_P) $(dir $@) && $(wayland_scanner) client-header < $< > $@
+
+#End of weston stuff
+endif
diff --git a/src/Makefile_Cxx.am b/src/Makefile_Cxx.am
new file mode 100644
index 0000000000..da656af993
--- /dev/null
+++ b/src/Makefile_Cxx.am
@@ -0,0 +1,412 @@
+
+### Eo C++
+installed_eetcxxheadersdir = $(includedir)/eet-cxx-@VMAJ@
+dist_installed_eetcxxheaders_DATA = \
+bindings/cxx/eet_cxx/eet_composite.hh \
+bindings/cxx/eet_cxx/eet_register.hh \
+bindings/cxx/eet_cxx/eet_type.hh \
+bindings/cxx/eet_cxx/Eet.hh
+
+installed_eocxxheadersdir = $(includedir)/eo-cxx-@VMAJ@/
+dist_installed_eocxxheaders_DATA = \
+bindings/cxx/eo_cxx/eo_concrete.hh \
+bindings/cxx/eo_cxx/eo_cxx_interop.hh \
+bindings/cxx/eo_cxx/eo_event.hh \
+bindings/cxx/eo_cxx/Eo.hh \
+bindings/cxx/eo_cxx/eo_init.hh \
+bindings/cxx/eo_cxx/eo_ops.hh \
+bindings/cxx/eo_cxx/eo_wref.hh \
+bindings/cxx/eo_cxx/eo_private.hh \
+bindings/cxx/eo_cxx/efl_object_impl.hh
+
+installed_eflcxxmainheadersdir = $(includedir)/efl-cxx-@VMAJ@/
+dist_installed_eflcxxmainheaders_DATA = lib/efl/Efl.hh
+
+installed_eflcxxextraheadersdir = $(includedir)/efl-cxx-@VMAJ@/cxx
+dist_installed_eflcxxextraheaders_DATA = lib/efl/cxx/efl_part_impl.hh
+
+installed_elementarycxxmainheadersdir = $(includedir)/elementary-cxx-@VMAJ@/
+dist_installed_elementarycxxmainheaders_DATA = lib/elementary/Efl_Ui.hh
+
+installed_evascxxmainheadersdir = $(includedir)/evas-cxx-@VMAJ@/
+dist_installed_evascxxmainheaders_DATA = lib/evas/Evas.hh
+
+installed_eldbuscxxmainheadersdir = $(includedir)/eldbus_cxx-@VMAJ@
+dist_installed_eldbuscxxmainheaders_DATA = \
+bindings/cxx/eldbus_cxx/eldbus_basic.hh \
+bindings/cxx/eldbus_cxx/eldbus_error.hh \
+bindings/cxx/eldbus_cxx/eldbus_freedesktop.hh \
+bindings/cxx/eldbus_cxx/Eldbus.hh \
+bindings/cxx/eldbus_cxx/eldbus_integer_sequence.hh \
+bindings/cxx/eldbus_cxx/eldbus_message_arguments.hh \
+bindings/cxx/eldbus_cxx/eldbus_message.hh \
+bindings/cxx/eldbus_cxx/eldbus_proxy_call.hh \
+bindings/cxx/eldbus_cxx/eldbus_raw_tuple.hh \
+bindings/cxx/eldbus_cxx/eldbus_service.hh \
+bindings/cxx/eldbus_cxx/eldbus_signature_traits.hh \
+bindings/cxx/eldbus_cxx/Eldbus_Model.hh
+
+installed_edjecxxmainheadersdir = $(includedir)/edje-cxx-@VMAJ@/
+
+installed_ecorecxxheadersdir = $(includedir)/ecore-cxx-@VMAJ@
+dist_installed_ecorecxxheaders_DATA = \
+bindings/cxx/ecore_cxx/Ecore.hh \
+bindings/cxx/ecore_cxx/Ecore_Manual.hh
+
+installed_einacxxheadersdir = $(includedir)/eina-cxx-@VMAJ@
+dist_installed_einacxxheaders_DATA = \
+bindings/cxx/eina_cxx/eina_accessor.hh \
+bindings/cxx/eina_cxx/eina_aligned_union.hh \
+bindings/cxx/eina_cxx/eina_array.hh \
+bindings/cxx/eina_cxx/eina_clone_allocators.hh \
+bindings/cxx/eina_cxx/eina_deleter.hh \
+bindings/cxx/eina_cxx/eina_error.hh \
+bindings/cxx/eina_cxx/eina_future.hh \
+bindings/cxx/eina_cxx/eina_eo_concrete_fwd.hh \
+bindings/cxx/eina_cxx/eina_fold.hh \
+bindings/cxx/eina_cxx/eina_function.hh \
+bindings/cxx/eina_cxx/eina_inarray.hh \
+bindings/cxx/eina_cxx/eina_inlist.hh \
+bindings/cxx/eina_cxx/eina_integer_sequence.hh \
+bindings/cxx/eina_cxx/eina_iterator.hh \
+bindings/cxx/eina_cxx/eina_lists_auxiliary.hh \
+bindings/cxx/eina_cxx/eina_list.hh \
+bindings/cxx/eina_cxx/eina_log.hh \
+bindings/cxx/eina_cxx/eina_logical.hh \
+bindings/cxx/eina_cxx/eina_optional.hh \
+bindings/cxx/eina_cxx/eina_pp.hh \
+bindings/cxx/eina_cxx/eina_ptrarray.hh \
+bindings/cxx/eina_cxx/eina_ptrlist.hh \
+bindings/cxx/eina_cxx/eina_range_types.hh \
+bindings/cxx/eina_cxx/eina_ref.hh \
+bindings/cxx/eina_cxx/eina_stringshare.hh \
+bindings/cxx/eina_cxx/eina_strbuf.hh \
+bindings/cxx/eina_cxx/eina_string_view.hh \
+bindings/cxx/eina_cxx/eina_thread.hh \
+bindings/cxx/eina_cxx/eina_throw.hh \
+bindings/cxx/eina_cxx/eina_tuple.hh \
+bindings/cxx/eina_cxx/eina_tuple_c.hh \
+bindings/cxx/eina_cxx/eina_tuple_unwrap.hh \
+bindings/cxx/eina_cxx/eina_type_traits.hh \
+bindings/cxx/eina_cxx/eina_value.hh \
+bindings/cxx/eina_cxx/eina_workarounds.hh \
+bindings/cxx/eina_cxx/eina_copy_traits.hh \
+bindings/cxx/eina_cxx/eina_variant.hh \
+bindings/cxx/eina_cxx/Eina.hh
+
+installed_eiocxxmainheadersdir = $(includedir)/eio-cxx-@VMAJ@/
+dist_installed_eiocxxmainheaders_DATA = lib/eio/Eio.hh
+
+if HAVE_CXX
+nodist_installed_edjecxxmainheaders_DATA = $(edje_eolian_cxx_hh) $(edje_eolian_cxx_impl_hh) lib/edje/Edje.eo.hh
+nodist_installed_eocxxheaders_DATA = $(eo_eolian_cxx_hh) $(eo_eolian_cxx_impl_hh)
+nodist_installed_eflcxxmainheaders_DATA = $(efl_eolian_cxx_hh) $(efl_eolian_cxx_impl_hh) lib/efl/Efl.eo.hh
+nodist_installed_elementarycxxmainheaders_DATA = $(elementary_eolian_cxx_hh) $(elementary_eolian_cxx_impl_hh) \
+lib/elementary/Elementary.eo.hh
+nodist_installed_eldbuscxxmainheaders_DATA = $(eldbus_eolian_cxx_hh) $(eldbus_eolian_cxx_impl_hh) lib/eldbus/Eldbus.eo.hh
+
+CLEANFILES += $(eo_eolian_cxx_hh) $(eo_eolian_cxx_impl_hh)
+
+### Elementary C++
+
+lib/elementary/Elementary.eo.hh: $(elm_public_eolian_files) $(_EOLIAN_CXX_DEP)
+ $(AM_V_EOLCXX) \
+ $(MKDIR_P) $(dir $@); \
+ $(EOLIAN_CXX) $(EOLIAN_FLAGS) -m -o $@ $(filter %.eo, $^)
+
+CLEANFILES += $(elementary_eolian_cxx_hh) $(elementary_eolian_cxx_impl_hh) lib/elementary/Elementary.eo.hh
+
+### Efl C++
+lib/efl/Efl.eo.hh: $(efl_eolian_files) $(_EOLIAN_CXX_DEP)
+ $(AM_V_EOLCXX) \
+ $(MKDIR_P) $(dir $@); \
+ $(EOLIAN_CXX) $(EOLIAN_FLAGS) -m -o $@ $(filter %.eo, $^)
+
+CLEANFILES += $(efl_eolian_cxx_hh) $(efl_eolian_cxx_impl_hh) lib/efl/Efl.eo.hh
+
+### Evas C++
+nodist_installed_evascxxmainheaders_DATA = lib/evas/Evas.eo.hh
+
+installed_evascxxcanvasheadersdir = $(includedir)/evas-cxx-@VMAJ@/canvas
+nodist_installed_evascxxcanvasheaders_DATA = $(evas_canvas_eolian_cxx_hh) $(evas_canvas_eolian_cxx_impl_hh)
+
+installed_evascxxgestureheadersdir = $(includedir)/evas-cxx-@VMAJ@/gesture
+nodist_installed_evascxxgestureheaders_DATA = $(evas_gesture_eolian_cxx_hh) $(evas_gesture_eolian_cxx_impl_hh)
+
+
+lib/evas/Evas.eo.hh: $(evas_canvas_eolian_pub_files) $(evas_gesture_eolian_pub_files) $(_EOLIAN_CXX_DEP)
+ $(AM_V_EOLCXX) \
+ $(MKDIR_P) $(dir $@); \
+ $(EOLIAN_CXX) $(EOLIAN_FLAGS) -m -o $@ $(filter %.eo, $^)
+
+CLEANFILES += $(evas_canvas_eolian_cxx_hh) $(evas_canvas_eolian_cxx_impl_hh) \
+ $(evas_gesture_eolian_cxx_hh) $(evas_gesture_eolian_cxx_impl_hh) \
+ lib/evas/Evas.eo.hh
+
+
+lib/eldbus/Eldbus.eo.hh: $(eldbus_eolian_files) $(_EOLIAN_CXX_DEP)
+ $(AM_V_EOLCXX) \
+ $(MKDIR_P) $(dir $@); \
+ $(EOLIAN_CXX) $(EOLIAN_FLAGS) -m -o $@ $(filter %.eo, $^)
+
+CLEANFILES += $(eldbus_eolian_cxx_hh) $(eldbus_eolian_cxx_impl_hh) lib/eldbus/Eldbus.eo.hh
+
+### Eet C++
+
+### Generated headers src/lib/edje
+dist_installed_edjecxxmainheaders_DATA = lib/edje/Edje.hh
+
+lib/edje/Edje.eo.hh: $(edje_eolian_files) $(_EOLIAN_CXX_DEP)
+ $(AM_V_EOLCXX) \
+ $(MKDIR_P) $(dir $@); \
+ $(EOLIAN_CXX) $(EOLIAN_FLAGS) -m -o $@ $(filter %.eo, $^)
+
+CLEANFILES += $(edje_eolian_cxx_hh) $(edje_eolian_cxx_impl_hh) lib/edje/Edje.eo.hh
+
+### Ecore src/lib/ecore
+nodist_installed_ecorecxxheaders_DATA = $(ecore_eolian_cxx_hh) $(ecore_eolian_cxx_impl_hh) \
+lib/ecore/Ecore.eo.hh
+
+lib/ecore/Ecore.eo.hh: $(ecore_eolian_files_public) $(_EOLIAN_CXX_DEP)
+ $(AM_V_EOLCXX) \
+ $(MKDIR_P) $(dir $@); \
+ $(EOLIAN_CXX) $(EOLIAN_FLAGS) -m -o $@ $(filter %.eo, $^)
+
+CLEANFILES += $(ecore_eolian_cxx_hh) $(ecore_eolian_cxx_impl_hh) lib/ecore/Ecore.eo.hh
+
+## Eina src/lib/eina
+
+### Eio
+nodist_installed_eiocxxmainheaders_DATA = $(eio_eolian_cxx_hh) $(eio_eolian_cxx_impl_hh) lib/eio/Eio.eo.hh
+
+lib/eio/Eio.eo.hh: $(eio_eolian_files) $(_EOLIAN_CXX_DEP)
+ $(AM_V_EOLCXX) \
+ $(MKDIR_P) $(dir $@); \
+ $(EOLIAN_CXX) $(EOLIAN_FLAGS) -m -o $@ $(filter %.eo, $^)
+
+CLEANFILES += $(eio_eolian_cxx_hh) $(eio_eolian_cxx_impl_hh) lib/eio/Eio.eo.hh
+
+### Tests
+
+if EFL_ENABLE_TESTS
+
+### Tests for Eina and Eo
+check_PROGRAMS += tests/eina_cxx/eina_cxx_suite tests/eo_cxx/eo_cxx_suite
+TESTS += tests/eina_cxx/eina_cxx_suite tests/eo_cxx/eo_cxx_suite
+
+tests_eina_cxx_eina_cxx_suite_SOURCES = \
+tests/eina_cxx/eina_cxx_suite.cc \
+tests/eina_cxx/eina_cxx_test_inlist.cc \
+tests/eina_cxx/eina_cxx_test_log.cc \
+tests/eina_cxx/eina_cxx_test_inarray.cc \
+tests/eina_cxx/eina_cxx_test_iterator.cc \
+tests/eina_cxx/eina_cxx_test_ptrarray.cc \
+tests/eina_cxx/eina_cxx_test_ptrlist.cc \
+tests/eina_cxx/eina_cxx_test_stringshare.cc \
+tests/eina_cxx/eina_cxx_test_error.cc \
+tests/eina_cxx/eina_cxx_test_accessor.cc \
+tests/eina_cxx/eina_cxx_test_thread.cc \
+tests/eina_cxx/eina_cxx_test_optional.cc \
+tests/eina_cxx/eina_cxx_test_value.cc \
+tests/eina_cxx/simple.c \
+tests/eina_cxx/eina_cxx_suite.h
+
+if HAVE_AM_16
+TESTS_EINA_CXX_OBJNAME =
+else
+TESTS_EINA_CXX_OBJNAME = tests_eina_cxx_
+endif
+
+
+tests/eina_cxx/$(TESTS_EINA_CXX_OBJNAME)eina_cxx_suite-eina_cxx_test_accessor.$(OBJEXT): tests/eina_cxx/eina_simple.eo.hh tests/eina_cxx/eina_simple.eo.h
+tests/eina_cxx/$(TESTS_EINA_CXX_OBJNAME)eina_cxx_suite-eina_cxx_test_ptrarray.$(OBJEXT): tests/eina_cxx/eina_simple.eo.hh tests/eina_cxx/eina_simple.eo.h
+tests/eina_cxx/$(TESTS_EINA_CXX_OBJNAME)eina_cxx_suite-eina_cxx_test_ptrlist.$(OBJEXT): tests/eina_cxx/eina_simple.eo.hh tests/eina_cxx/eina_simple.eo.h
+tests/eina_cxx/$(TESTS_EINA_CXX_OBJNAME)eina_cxx_suite-eina_cxx_test_iterator.$(OBJEXT): tests/eina_cxx/eina_simple.eo.hh tests/eina_cxx/eina_simple.eo.h
+
+tests/eina_cxx/$(TESTS_EINA_CXX_OBJNAME)eina_cxx_suite-simple.$(OBJEXT): tests/eina_cxx/eina_simple.eo.c tests/eina_cxx/eina_simple.eo.h
+
+CLEANFILES += \
+tests/eina_cxx/eina_simple.eo.c \
+tests/eina_cxx/eina_simple.eo.h \
+tests/eina_cxx/eina_simple.eo.hh \
+tests/eina_cxx/eina_simple.eo.impl.hh
+
+tests_eina_cxx_eina_cxx_suite_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+-DTESTS_WD=\"`pwd`\" \
+-DTESTS_SRC_DIR=\"$(top_srcdir)/src/tests/eina_cxx\" \
+-DPACKAGE_BUILD_DIR=\"$(abs_top_builddir)\" \
+-DTESTS_BUILD_DIR=\"$(top_builddir)/src/tests/eina_cxx\" \
+-I$(top_builddir)/src/lib/efl \
+-I$(top_builddir)/src/lib/efl/interfaces \
+-I$(top_srcdir)/src/bin/eina_cxx \
+-I$(top_builddir)/src/tests/eina_cxx \
+@CHECK_CFLAGS@ \
+@EO_CFLAGS@ \
+@ECORE_CFLAGS@ \
+@ECORE_CXX_CFLAGS@ \
+@EO_CXX_CFLAGS@ \
+@EINA_CXX_CFLAGS@
+tests_eina_cxx_eina_cxx_suite_LDADD = @CHECK_LIBS@ @USE_EINA_LIBS@ @USE_EO_LIBS@
+tests_eina_cxx_eina_cxx_suite_DEPENDENCIES = @USE_EINA_INTERNAL_LIBS@ @USE_EO_INTERNAL_LIBS@
+
+tests_eo_cxx_eo_cxx_suite_SOURCES = \
+tests/eo_cxx/eo_cxx_suite.cc \
+tests/eo_cxx/eo_cxx_suite.h
+
+tests_eo_cxx_eo_cxx_suite_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+-DTESTS_WD=\"`pwd`\" \
+-DTESTS_SRC_DIR=\"$(top_srcdir)/src/tests/eo_cxx\" \
+-DPACKAGE_BUILD_DIR=\"$(abs_top_builddir)\" \
+-DTESTS_BUILD_DIR=\"$(top_builddir)/src/tests/eo_cxx\" \
+-I$(top_builddir)/src/lib/efl \
+-I$(top_builddir)/src/lib/efl/interfaces \
+-I$(top_srcdir)/src/bin/eina_cxx \
+-I$(top_builddir)/src/tests/eina_cxx \
+@CHECK_CFLAGS@ \
+@EO_CFLAGS@ \
+@ECORE_CFLAGS@ \
+@ECORE_CXX_CFLAGS@ \
+@EO_CXX_CFLAGS@ \
+@EINA_CXX_CFLAGS@
+tests_eo_cxx_eo_cxx_suite_LDADD = @CHECK_LIBS@ @USE_EINA_LIBS@ @USE_EO_LIBS@ @USE_ECORE_LIBS@
+tests_eo_cxx_eo_cxx_suite_DEPENDENCIES = @USE_EINA_INTERNAL_LIBS@ @USE_EO_INTERNAL_LIBS@ @USE_ECORE_INTERNAL_LIBS@
+
+### Tests for ecore
+
+check_PROGRAMS += tests/ecore_cxx/ecore_cxx_suite tests/ecore_cxx/cxx_compile_test
+TESTS += tests/ecore_cxx/ecore_cxx_suite tests/ecore_cxx/cxx_compile_test
+
+tests_ecore_cxx_ecore_cxx_suite_SOURCES = \
+tests/ecore_cxx/ecore_cxx_suite.cc \
+tests/ecore_cxx/ecore_cxx_test_safe_call.cc \
+tests/ecore_cxx/ecore_cxx_suite.h
+
+tests_ecore_cxx_ecore_cxx_suite_CPPFLAGS = \
+-I$(top_builddir)/src/lib/efl \
+-I$(top_builddir)/src/lib/efl/interfaces \
+-I$(top_builddir)/src/lib/ecore \
+-DPACKAGE_BUILD_DIR=\"$(abs_top_builddir)\" \
+-DTESTS_SRC_DIR=\"$(top_srcdir)/src/tests/ecore_cxx\" \
+-DTESTS_BUILD_DIR=\"$(top_builddir)/src/tests/ecore_cxx\" \
+@CHECK_CFLAGS@ @ECORE_CXX_CFLAGS@ @EINA_CXX_CFLAGS@ @EVAS_CXX_CFLAGS@ @EINA_CFLAGS@ \
+@ECORE_CFLAGS@ @EVAS_CFLAGS@ @EO_CFLAGS@ @EO_CXX_CFLAGS@
+
+tests_ecore_cxx_ecore_cxx_suite_LDADD = @CHECK_LIBS@ @USE_ECORE_LIBS@
+tests_ecore_cxx_ecore_cxx_suite_DEPENDENCIES = @USE_ECORE_INTERNAL_LIBS@
+
+tests_ecore_cxx_cxx_compile_test_SOURCES = tests/ecore_cxx/cxx_compile_test.cc
+tests_ecore_cxx_cxx_compile_test_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+-I$(top_builddir)/src/lib/efl \
+-I$(top_builddir)/src/lib/efl/interfaces \
+-I$(top_builddir)/src/lib/ecore \
+-DTESTS_SRC_DIR=\"$(top_srcdir)/src/tests/ecore_cxx\" \
+-DTESTS_BUILD_DIR=\"$(top_builddir)/src/tests/ecore_cxx\" \
+@CHECK_CFLAGS@ @ECORE_CXX_CFLAGS@ @EINA_CXX_CFLAGS@ @EINA_CFLAGS@ \
+@ECORE_CFLAGS@ @EO_CFLAGS@ @EO_CXX_CFLAGS@
+
+tests_ecore_cxx_cxx_compile_test_LDADD = @CHECK_LIBS@ @USE_ECORE_LIBS@
+tests_ecore_cxx_cxx_compile_test_DEPENDENCIES = @USE_ECORE_INTERNAL_LIBS@
+
+### Tests for Eet
+check_PROGRAMS += tests/eet_cxx/eet_cxx_suite
+TESTS += tests/eet_cxx/eet_cxx_suite
+
+tests_eet_cxx_eet_cxx_suite_SOURCES = \
+tests/eet_cxx/eet_cxx_suite.cc \
+tests/eet_cxx/eet_cxx_test_descriptors.cc \
+tests/eet_cxx/eet_cxx_suite.h
+
+tests_eet_cxx_eet_cxx_suite_CPPFLAGS = \
+-I$(top_builddir)/src/lib/efl \
+-DTESTS_WD=\"`pwd`\" \
+-DTESTS_SRC_DIR=\"$(top_srcdir)/src/tests/eet_cxx\" \
+-DPACKAGE_BUILD_DIR=\"$(abs_top_builddir)\" \
+-DTESTS_BUILD_DIR=\"$(top_builddir)/src/tests/eet_cxx\" \
+@EO_CFLAGS@ @CHECK_CFLAGS@ @EET_CXX_CFLAGS@ @EINA_CXX_CFLAGS@ @EET_CFLAGS@ @EINA_CFLAGS@
+tests_eet_cxx_eet_cxx_suite_LDADD = @CHECK_LIBS@ @USE_EET_LIBS@
+tests_eet_cxx_eet_cxx_suite_DEPENDENCIES = @USE_EET_INTERNAL_LIBS@
+
+### Tests for eldbus
+check_PROGRAMS += tests/eldbus_cxx/eldbus_cxx_suite
+TESTS += tests/eldbus_cxx/eldbus_cxx_suite
+
+tests_eldbus_cxx_eldbus_cxx_suite_SOURCES = \
+tests/eldbus_cxx/eldbus_cxx_suite.cc \
+tests/eldbus_cxx/eldbus_cxx_test_eldbus_connect.cc \
+tests/eldbus_cxx/eldbus_cxx_test_eldbus_client.cc \
+tests/eldbus_cxx/eldbus_cxx_suite.h
+
+tests_eldbus_cxx_eldbus_cxx_suite_CPPFLAGS = \
+-I$(top_builddir)/src/bindings/cxx/eina_cxx \
+-I$(top_srcdir)/src/bindings/cxx/eina_cxx \
+-I$(top_builddir)/src/bindings/cxx/ecore_cxx \
+-I$(top_srcdir)/src/bindings/cxx/ecore_cxx \
+-I$(top_builddir)/src/bindings/cxx/eldbus_cxx \
+-I$(top_srcdir)/src/bindings/cxx/eldbus_cxx \
+-I$(top_builddir)/src/lib/efl \
+-I$(top_builddir)/src/lib/efl/interfaces \
+-I$(top_builddir)/src/lib/ecore \
+-DPACKAGE_BUILD_DIR=\"$(abs_top_builddir)\" \
+-DTESTS_BUILD_DIR=\"$(top_builddir)/src/tests/eldbus\" \
+@CHECK_CFLAGS@ @ECORE_CXX_CFLAGS@ @EINA_CXX_CFLAGS@ @EINA_CFLAGS@ \
+@ECORE_CFLAGS@ @EO_CFLAGS@ @EO_CXX_CFLAGS@ @ELDBUS_CFLAGS@
+
+tests_eldbus_cxx_eldbus_cxx_suite_LDADD = @CHECK_LIBS@ @USE_ELDBUS_LIBS@
+tests_eldbus_cxx_eldbus_cxx_suite_DEPENDENCIES = @USE_ELDBUS_INTERNAL_LIBS@
+
+### Tests for Evas
+check_PROGRAMS += tests/evas_cxx/cxx_compile_test
+TESTS += tests/evas_cxx/cxx_compile_test
+
+tests_evas_cxx_cxx_compile_test_SOURCES = tests/evas_cxx/cxx_compile_test.cc
+tests_evas_cxx_cxx_compile_test_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+ -I$(top_builddir)/src/lib/efl/interfaces/ \
+ -I$(top_builddir)/src/lib/evas/canvas/ \
+ -I$(top_builddir)/src/lib/evas/gesture/ \
+ -I$(top_builddir)/src/lib/evas/include/ \
+ -DTESTS_SRC_DIR=\"$(top_srcdir)/src/tests/evas_cxx\" \
+ -DTESTS_BUILD_DIR=\"$(top_builddir)/src/tests/evas_cxx\" \
+ @CHECK_CFLAGS@ @ECORE_CXX_CFLAGS@ @EINA_CXX_CFLAGS@ @EVAS_CXX_CFLAGS@ @EO_CXX_CFLAGS@ \
+ @ECORE_CFLAGS@ @EINA_CFLAGS@ @EVAS_CFLAGS@ @EO_CFLAGS@
+tests_evas_cxx_cxx_compile_test_LDADD = @CHECK_LIBS@ @USE_EVAS_LIBS@
+tests_evas_cxx_cxx_compile_test_DEPENDENCIES = @USE_EVAS_INTERNAL_LIBS@
+
+### Tests for Elementary
+check_PROGRAMS += tests/elementary_cxx/cxx_dummy_compile_test
+TESTS += tests/elementary_cxx/cxx_dummy_compile_test
+
+check_LIBRARIES = tests/elementary_cxx/libcxx_compile_test.a
+tests_elementary_cxx_libcxx_compile_test_a_SOURCES = tests/elementary_cxx/cxx_compile_test.cc
+tests_elementary_cxx_libcxx_compile_test_a_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+-I$(top_builddir)/src/lib/evas/canvas/ \
+ -I$(top_builddir)/src/lib/evas/gesture/ \
+-I$(top_builddir)/src/lib/efl/interfaces/ \
+-DTESTS_SRC_DIR=\"$(top_srcdir)/src/tests/elementary_cxx\" \
+-DTESTS_BUILD_DIR=\"$(top_builddir)/src/tests/elementary_cxx\" \
+@CHECK_CFLAGS@ @ECORE_CXX_CFLAGS@ @EINA_CXX_CFLAGS@ @EVAS_CXX_CFLAGS@ @ELEMENTARY_CXX_CFLAGS@ @EO_CXX_CFLAGS@ \
+@ECORE_CFLAGS@ @EINA_CFLAGS@ @EVAS_CFLAGS@ @ELEMENTARY_CFLAGS@ @EO_CFLAGS@
+
+if HAVE_AM_16
+TESTS_ELM_CXX_OBJNAME =
+else
+TESTS_ELM_CXX_OBJNAME = tests_elementary_cxx_
+endif
+
+tests/elementary_cxx/$(TESTS_ELM_CXX_OBJNAME)cxx_dummy_compile_test-cxx_dummy_compile_test.$(OBJEXT): tests/elementary_cxx/libcxx_compile_test.a
+
+tests_elementary_cxx_cxx_dummy_compile_test_SOURCES = tests/elementary_cxx/cxx_dummy_compile_test.cc
+tests_elementary_cxx_cxx_dummy_compile_test_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+-I$(top_builddir)/src/lib/evas/canvas/ \
+ -I$(top_builddir)/src/lib/evas/gesture/ \
+-I$(top_builddir)/src/lib/efl/interfaces/ \
+-DTESTS_SRC_DIR=\"$(top_srcdir)/src/tests/elementary_cxx\" \
+-DTESTS_BUILD_DIR=\"$(top_builddir)/src/tests/elementary_cxx\" \
+@CHECK_CFLAGS@ @ECORE_CXX_CFLAGS@ @EINA_CXX_CFLAGS@ @EVAS_CXX_CFLAGS@ @ELEMENTARY_CXX_CFLAGS@ @EO_CXX_CFLAGS@ \
+@ECORE_CFLAGS@ @EINA_CFLAGS@ @EVAS_CFLAGS@ @ELEMENTARY_CFLAGS@ @EO_CFLAGS@
+
+endif
+
+endif
+
+EXTRA_DIST2 += \
+tests/eina_cxx/eina_simple.eo
diff --git a/src/Makefile_EPhysics.am b/src/Makefile_EPhysics.am
new file mode 100644
index 0000000000..78d28d9f77
--- /dev/null
+++ b/src/Makefile_EPhysics.am
@@ -0,0 +1,29 @@
+if HAVE_EPHYSICS
+
+### Library
+
+lib_LTLIBRARIES += \
+lib/ephysics/libephysics.la
+
+installed_ephysicsmainheadersdir = $(includedir)/ephysics-@VMAJ@
+dist_installed_ephysicsmainheaders_DATA = \
+lib/ephysics/EPhysics.h
+
+lib_ephysics_libephysics_la_SOURCES = \
+lib/ephysics/ephysics_private.h \
+lib/ephysics/ephysics_trimesh.h \
+lib/ephysics/ephysics_body_materials.h \
+lib/ephysics/ephysics_body.cpp \
+lib/ephysics/ephysics_camera.cpp \
+lib/ephysics/ephysics_constraints.cpp \
+lib/ephysics/ephysics_main.cpp \
+lib/ephysics/ephysics_quaternion.cpp \
+lib/ephysics/ephysics_shape.cpp \
+lib/ephysics/ephysics_world.cpp
+
+lib_ephysics_libephysics_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl @EPHYSICS_CFLAGS@ -DEFL_BUILD
+lib_ephysics_libephysics_la_LIBADD = @EPHYSICS_LIBS@
+lib_ephysics_libephysics_la_DEPENDENCIES = @EPHYSICS_INTERNAL_LIBS@
+lib_ephysics_libephysics_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
+
+endif
diff --git a/src/Makefile_Ecore.am b/src/Makefile_Ecore.am
new file mode 100644
index 0000000000..4c3b5fd937
--- /dev/null
+++ b/src/Makefile_Ecore.am
@@ -0,0 +1,456 @@
+
+### Library
+
+ecore_eolian_files_priv = \
+ lib/ecore/ecore_event_message.eo \
+ lib/ecore/ecore_event_message_handler.eo
+
+ecore_eolian_files_public = \
+ lib/ecore/efl_app.eo \
+ lib/ecore/efl_loop.eo \
+ lib/ecore/efl_loop_consumer.eo \
+ lib/ecore/efl_loop_fd.eo \
+ lib/ecore/efl_loop_handler.eo \
+ lib/ecore/efl_loop_message.eo \
+ lib/ecore/efl_loop_message_handler.eo \
+ lib/ecore/efl_loop_message_future.eo \
+ lib/ecore/efl_loop_message_future_handler.eo \
+ lib/ecore/efl_loop_timer.eo \
+ lib/ecore/efl_exe.eo \
+ lib/ecore/efl_thread.eo \
+ lib/ecore/efl_threadio.eo \
+ lib/ecore/efl_appthread.eo \
+ lib/ecore/efl_task.eo \
+ lib/ecore/efl_io_closer_fd.eo \
+ lib/ecore/efl_io_positioner_fd.eo \
+ lib/ecore/efl_io_reader_fd.eo \
+ lib/ecore/efl_io_sizer_fd.eo \
+ lib/ecore/efl_io_writer_fd.eo \
+ lib/ecore/efl_io_stdin.eo \
+ lib/ecore/efl_io_stdout.eo \
+ lib/ecore/efl_io_stderr.eo \
+ lib/ecore/efl_io_file.eo \
+ lib/ecore/efl_io_copier.eo \
+ lib/ecore/efl_io_buffered_stream.eo \
+ lib/ecore/efl_linear_interpolator.eo \
+ lib/ecore/efl_accelerate_interpolator.eo \
+ lib/ecore/efl_decelerate_interpolator.eo \
+ lib/ecore/efl_sinusoidal_interpolator.eo \
+ lib/ecore/efl_divisor_interpolator.eo \
+ lib/ecore/efl_bounce_interpolator.eo \
+ lib/ecore/efl_spring_interpolator.eo \
+ lib/ecore/efl_cubic_bezier_interpolator.eo \
+ lib/ecore/efl_loop_model.eo \
+ lib/ecore/efl_generic_model.eo \
+ lib/ecore/efl_container_model.eo \
+ lib/ecore/efl_boolean_model.eo \
+ lib/ecore/efl_select_model.eo \
+ lib/ecore/efl_composite_model.eo \
+ lib/ecore/efl_view_model.eo \
+ lib/ecore/efl_core_env.eo \
+ lib/ecore/efl_core_proc_env.eo \
+ lib/ecore/efl_core_command_line.eo \
+ lib/ecore/efl_filter_model.eo
+
+ecore_test_eolian_files = \
+ tests/ecore/efl_app_test_cml.eo \
+ tests/ecore/ecore_audio_out_test.eo
+
+ecore_eolian_files = \
+ $(ecore_eolian_files_public)
+
+ecore_eolian_c = $(ecore_eolian_files:%.eo=%.eo.c)
+ecore_eolian_h = $(ecore_eolian_files:%.eo=%.eo.h)
+ecore_test_c = $(ecore_test_eolian_files:%.eo=%.eo.c)
+ecore_test_h = $(ecore_test_eolian_files:%.eo=%.eo.h)
+
+ecore_priv_c = $(ecore_eolian_files_priv:%.eo=%.eo.c)
+ecore_priv_h = $(ecore_eolian_files_priv:%.eo=%.eo.h)
+
+BUILT_SOURCES += \
+ $(ecore_eolian_c) \
+ $(ecore_eolian_h) \
+ $(ecore_test_c) \
+ $(ecore_test_h) \
+ $(ecore_priv_c) \
+ $(ecore_priv_h)
+
+if INSTALL_EO_FILES
+ecoreeolianfilesdir = $(datadir)/eolian/include/ecore-@VMAJ@
+ecoreeolianfiles_DATA = $(ecore_eolian_files_public) lib/ecore/efl_loop_timer.eo
+endif
+
+ecore_legacy_eo_c = \
+lib/ecore/ecore_exe_eo.c \
+lib/ecore/ecore_exe_eo.h \
+lib/ecore/efl_loop_timer_eo.legacy.c
+
+ecore_legacy_eo_h = \
+lib/ecore/ecore_exe_eo.legacy.h \
+lib/ecore/efl_loop_timer_eo.legacy.h
+
+EXTRA_DIST2 += $(ecore_eolian_files)
+EXTRA_DIST2 += $(ecore_eolian_files_priv)
+EXTRA_DIST2 += $(ecore_test_eolian_files)
+EXTRA_DIST2 += $(ecore_legacy_eo_c)
+
+lib_LTLIBRARIES += lib/ecore/libecore.la
+
+installed_ecoremainheadersdir = $(includedir)/ecore-@VMAJ@
+dist_installed_ecoremainheaders_DATA = \
+lib/ecore/Ecore.h \
+lib/ecore/Ecore_Common.h \
+lib/ecore/Ecore_Legacy.h \
+lib/ecore/Ecore_Eo.h \
+lib/ecore/Efl_Core.h \
+lib/ecore/efl_general.h \
+lib/ecore/Ecore_Getopt.h \
+$(ecore_legacy_eo_h)
+
+nodist_installed_ecoremainheaders_DATA = \
+ $(ecore_eolian_h)
+
+lib_ecore_libecore_la_SOURCES = \
+lib/ecore/ecore.c \
+lib/ecore/ecore_alloc.c \
+lib/ecore/ecore_anim.c \
+lib/ecore/ecore_app.c \
+lib/ecore/ecore_events.c \
+lib/ecore/ecore_getopt.c \
+lib/ecore/ecore_glib.c \
+lib/ecore/ecore_idle_enterer.c \
+lib/ecore/ecore_idle_exiter.c \
+lib/ecore/ecore_idler.c \
+lib/ecore/ecore_job.c \
+lib/ecore/ecore_main.c \
+lib/ecore/ecore_event_message.c \
+lib/ecore/ecore_event_message_handler.c \
+lib/ecore/efl_core_command_line.c \
+lib/ecore/efl_core_env.c \
+lib/ecore/efl_core_proc_env.c \
+lib/ecore/efl_app.c \
+lib/ecore/efl_loop.c \
+lib/ecore/efl_loop_consumer.c \
+lib/ecore/efl_loop_fd.c \
+lib/ecore/efl_loop_handler.c \
+lib/ecore/efl_loop_message.c \
+lib/ecore/efl_loop_message_handler.c \
+lib/ecore/efl_loop_message_future.c \
+lib/ecore/efl_loop_message_future_handler.c \
+lib/ecore/efl_io_closer_fd.c \
+lib/ecore/efl_io_positioner_fd.c \
+lib/ecore/efl_io_reader_fd.c \
+lib/ecore/efl_io_sizer_fd.c \
+lib/ecore/efl_io_writer_fd.c \
+lib/ecore/efl_io_stdin.c \
+lib/ecore/efl_io_stdout.c \
+lib/ecore/efl_io_stderr.c \
+lib/ecore/efl_io_file.c \
+lib/ecore/efl_io_copier.c \
+lib/ecore/efl_io_buffered_stream.c \
+lib/ecore/efl_loop_model.c \
+lib/ecore/efl_generic_model.c \
+lib/ecore/efl_container_model.c \
+lib/ecore/efl_composite_model.c \
+lib/ecore/efl_boolean_model.c \
+lib/ecore/efl_select_model.c \
+lib/ecore/efl_composite_model_private.h \
+lib/ecore/efl_model_accessor_view.c \
+lib/ecore/efl_model_accessor_view_private.h \
+lib/ecore/efl_view_model.c \
+lib/ecore/efl_filter_model.c \
+lib/ecore/efl_linear_interpolator.c \
+lib/ecore/efl_accelerate_interpolator.c \
+lib/ecore/efl_decelerate_interpolator.c \
+lib/ecore/efl_sinusoidal_interpolator.c \
+lib/ecore/efl_divisor_interpolator.c \
+lib/ecore/efl_bounce_interpolator.c \
+lib/ecore/efl_spring_interpolator.c \
+lib/ecore/efl_cubic_bezier_interpolator.c \
+lib/ecore/efl_task.c \
+lib/ecore/efl_exe.c \
+lib/ecore/efl_thread.c \
+lib/ecore/efl_threadio.c \
+lib/ecore/efl_appthread.c \
+lib/ecore/ecore_main_timechanges.c \
+lib/ecore/ecore_pipe.c \
+lib/ecore/ecore_poller.c \
+lib/ecore/ecore_time.c \
+lib/ecore/ecore_timer.c \
+lib/ecore/ecore_thread.c \
+lib/ecore/ecore_throttle.c \
+lib/ecore/ecore_exe.c \
+lib/ecore/ecore_exe_private.h \
+lib/ecore/ecore_private.h \
+lib/ecore/ecore_internal.h \
+lib/ecore/ecore_main_common.h \
+static_libs/buildsystem/buildsystem.h \
+static_libs/buildsystem/buildsystem_autotools.c
+
+
+if HAVE_WIN32
+lib_ecore_libecore_la_SOURCES += lib/ecore/ecore_exe_win32.c
+else
+EXTRA_DIST2 += lib/ecore/ecore_exe_ps3.c
+#if ECORE_HAVE_PS3
+#libecore_la_SOURCES += ecore_exe_ps3.c
+#else
+#if ECORE_HAVE_EXOTIC
+#libecore_la_SOURCES +=
+#else
+lib_ecore_libecore_la_SOURCES += lib/ecore/ecore_signal.c lib/ecore/ecore_exe_posix.c
+#endif
+#endif
+endif
+
+lib_ecore_libecore_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+-DPACKAGE_BIN_DIR=\"$(bindir)\" \
+-DPACKAGE_LIB_DIR=\"$(libdir)\" \
+-DPACKAGE_DATA_DIR=\"$(datadir)/ecore\" \
+-DPACKAGE_BUILD_DIR=\"$(abs_top_builddir)\" \
+-DPACKAGE_SRC_DIR=\"$(abs_top_srcdir)\" \
+-DEFL_BUILD \
+@ECORE_CFLAGS@
+lib_ecore_libecore_la_LIBADD = @ECORE_LIBS@ @EVIL_LIBS@
+lib_ecore_libecore_la_DEPENDENCIES = @ECORE_INTERNAL_LIBS@
+lib_ecore_libecore_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
+
+
+### Modules
+
+# systemd
+
+if WANT_SYSTEMD
+ecoresystemdpkgdir = $(libdir)/ecore/system/systemd/$(MODULE_ARCH)
+ecoresystemdpkg_LTLIBRARIES = modules/ecore/system/systemd/module.la
+
+# Workaround for broken parallel install support in automake (relink issue)
+# http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328
+install_ecoresystemdpkgLTLIBRARIES = install-ecoresystemdpkgLTLIBRARIES
+$(install_ecoresystemdpkgLTLIBRARIES): install-libLTLIBRARIES
+
+modules_ecore_system_systemd_module_la_SOURCES = \
+modules/ecore/system/systemd/ecore_system_systemd.c
+modules_ecore_system_systemd_module_la_CPPFLAGS = \
+-I$(top_builddir)/src/lib/efl \
+@ECORE_CFLAGS@ \
+@ELDBUS_CFLAGS@
+modules_ecore_system_systemd_module_la_LIBADD = \
+@USE_ECORE_LIBS@ \
+@USE_ELDBUS_LIBS@
+modules_ecore_system_systemd_module_la_DEPENDENCIES = \
+@USE_ECORE_INTERNAL_LIBS@ \
+@USE_ELDBUS_INTERNAL_LIBS@
+modules_ecore_system_systemd_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
+modules_ecore_system_systemd_module_la_LIBTOOLFLAGS = --tag=disable-static
+endif
+
+# upower
+if ! HAVE_WIN32
+ecoreupowerpkgdir = $(libdir)/ecore/system/upower/$(MODULE_ARCH)
+ecoreupowerpkg_LTLIBRARIES = modules/ecore/system/upower/module.la
+
+# Workaround for broken parallel install support in automake (relink issue)
+# http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328
+install_ecoreupowerpkgLTLIBRARIES = install-ecoreupowerpkgLTLIBRARIES
+$(install_ecoreupowerpkgLTLIBRARIES): install-libLTLIBRARIES
+
+modules_ecore_system_upower_module_la_SOURCES = \
+modules/ecore/system/upower/ecore_system_upower.c
+modules_ecore_system_upower_module_la_CPPFLAGS = \
+-I$(top_builddir)/src/lib/efl \
+@ECORE_CFLAGS@ \
+@ELDBUS_CFLAGS@
+modules_ecore_system_upower_module_la_LIBADD = \
+@USE_ECORE_LIBS@ \
+@USE_ELDBUS_LIBS@
+modules_ecore_system_upower_module_la_DEPENDENCIES = \
+@USE_ECORE_INTERNAL_LIBS@ \
+@USE_ELDBUS_INTERNAL_LIBS@
+modules_ecore_system_upower_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
+modules_ecore_system_upower_module_la_LIBTOOLFLAGS = --tag=disable-static
+endif
+
+# tizen
+
+if HAVE_TIZEN_CONFIGURATION_MANAGER
+ecoretizenpkgdir = $(libdir)/ecore/system/tizen/$(MODULE_ARCH)
+ecoretizenpkg_LTLIBRARIES = modules/ecore/system/tizen/module.la
+
+# Workaround for broken parallel install support in automake (relink issue)
+# http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328
+install_ecoretizenpkgLTLIBRARIES = install-ecoretizenpkgLTLIBRARIES
+$(install_ecoretizenpkgLTLIBRARIES): install-libLTLIBRARIES
+
+modules_ecore_system_tizen_module_la_SOURCES = \
+modules/ecore/system/tizen/ecore_system_tizen.c
+modules_ecore_system_tizen_module_la_CPPFLAGS = \
+-I$(top_builddir)/src/lib/efl \
+@ECORE_CFLAGS@ \
+@TIZEN_CONFIGURATION_MANAGER_CFLAGS@
+modules_ecore_system_tizen_module_la_LIBADD = \
+@USE_ECORE_LIBS@ \
+@TIZEN_CONFIGURATION_MANAGER_LIBS@
+modules_ecore_system_tizen_module_la_DEPENDENCIES = \
+@USE_ECORE_INTERNAL_LIBS@
+modules_ecore_system_tizen_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
+modules_ecore_system_tizen_module_la_LIBTOOLFLAGS = --tag=disable-static
+endif
+
+### Unit tests
+
+if EFL_ENABLE_TESTS
+
+check_PROGRAMS += tests/ecore/ecore_suite tests/ecore/efl_app_suite
+TESTS += tests/ecore/ecore_suite tests/ecore/efl_app_suite
+
+tests_ecore_ecore_suite_SOURCES = \
+tests/ecore/ecore_suite.c \
+tests/ecore/ecore_test_ecore.c \
+tests/ecore/ecore_test_ecore_imf.c \
+tests/ecore/ecore_test_idle.c \
+tests/ecore/ecore_test_poller.c \
+tests/ecore/ecore_test_timer.c \
+tests/ecore/ecore_test_ecore_evas.c \
+tests/ecore/ecore_test_animator.c \
+tests/ecore/ecore_test_ecore_thread_eina_thread_queue.c \
+tests/ecore/ecore_test_ecore_input.c \
+tests/ecore/ecore_test_ecore_file.c \
+tests/ecore/ecore_test_job.c \
+tests/ecore/ecore_test_args.c \
+tests/ecore/ecore_test_pipe.c \
+tests/ecore/ecore_suite.h
+
+tests_ecore_ecore_suite_CPPFLAGS = -I$(top_builddir)/src/lib/efl -I$(top_builddir)/src/tests/ecore \
+-DPACKAGE_BUILD_DIR=\"$(abs_top_builddir)\" \
+-DTESTS_SRC_DIR=\"$(top_srcdir)/src/tests/ecore\" \
+-DTESTS_BUILD_DIR=\"$(top_builddir)/src/tests/ecore\" \
+@CHECK_CFLAGS@ \
+@ECORE_CFLAGS@ \
+@ECORE_AUDIO_CFLAGS@ \
+@ECORE_FILE_CFLAGS@ \
+@ECORE_IMF_CFLAGS@ \
+@ECORE_EVAS_CFLAGS@ \
+@ECORE_FB_CFLAGS@ \
+@ECORE_INPUT_CFLAGS@ \
+@ECORE_X_CFLAGS@ \
+@ECORE_WAYLAND_CFLAGS@ \
+@ECORE_WAYLAND_SRV_CFLAGS@
+
+tests_ecore_ecore_suite_LDADD = \
+@CHECK_LIBS@ \
+@USE_ECORE_LIBS@ \
+@USE_ECORE_AUDIO_LIBS@ \
+@USE_ECORE_FILE_LIBS@ \
+@USE_ECORE_IMF_LIBS@ \
+@USE_ECORE_EVAS_LIBS@ \
+@USE_ECORE_FB_LIBS@ \
+@USE_ECORE_INPUT_LIBS@ \
+@USE_ECORE_X_LIBS@ \
+@USE_ECORE_WAYLAND_LIBS@ \
+@ECORE_WAYLAND_SRV_LIBS@
+tests_ecore_ecore_suite_DEPENDENCIES = \
+@USE_ECORE_INTERNAL_LIBS@ \
+@USE_ECORE_AUDIO_INTERNAL_LIBS@ \
+@USE_ECORE_FILE_INTERNAL_LIBS@ \
+@USE_ECORE_IMF_INTERNAL_LIBS@ \
+@USE_ECORE_EVAS_INTERNAL_LIBS@ \
+@USE_ECORE_FB_INTERNAL_LIBS@ \
+@USE_ECORE_INPUT_INTERNAL_LIBS@ \
+@USE_ECORE_X_INTERNAL_LIBS@ \
+@USE_ECORE_WAYLAND_INTERNAL_LIBS@
+
+tests_ecore_efl_app_suite_SOURCES = \
+tests/ecore/efl_app_test_loop.c \
+tests/ecore/efl_app_test_loop_fd.c \
+tests/ecore/efl_app_test_loop_timer.c \
+tests/ecore/efl_app_test_promise.c \
+tests/ecore/efl_app_test_cml.c \
+tests/ecore/efl_app_test_env.c \
+tests/ecore/efl_app_suite.c \
+tests/ecore/efl_app_suite.h
+
+tests_ecore_efl_app_suite_CPPFLAGS = -I$(top_builddir)/src/lib/efl -I$(top_builddir)/src/tests/ecore \
+-DPACKAGE_BUILD_DIR=\"$(abs_top_builddir)\" \
+-DTESTS_SRC_DIR=\"$(top_srcdir)/src/tests/ecore\" \
+-DTESTS_BUILD_DIR=\"$(top_builddir)/src/tests/ecore\" \
+@CHECK_CFLAGS@ \
+@ECORE_CFLAGS@ \
+@ECORE_AUDIO_CFLAGS@ \
+@ECORE_FILE_CFLAGS@ \
+@ECORE_IMF_CFLAGS@ \
+@ECORE_EVAS_CFLAGS@ \
+@ECORE_FB_CFLAGS@ \
+@ECORE_INPUT_CFLAGS@ \
+@ECORE_X_CFLAGS@ \
+@ECORE_WAYLAND_CFLAGS@ \
+@ECORE_WAYLAND_SRV_CFLAGS@
+
+tests_ecore_efl_app_suite_LDADD = \
+@CHECK_LIBS@ \
+@USE_ECORE_LIBS@ \
+@USE_ECORE_AUDIO_LIBS@ \
+@USE_ECORE_FILE_LIBS@ \
+@USE_ECORE_IMF_LIBS@ \
+@USE_ECORE_EVAS_LIBS@ \
+@USE_ECORE_FB_LIBS@ \
+@USE_ECORE_INPUT_LIBS@ \
+@USE_ECORE_X_LIBS@ \
+@USE_ECORE_WAYLAND_LIBS@ \
+@ECORE_WAYLAND_SRV_LIBS@
+tests_ecore_efl_app_suite_DEPENDENCIES = \
+@USE_ECORE_INTERNAL_LIBS@ \
+@USE_ECORE_AUDIO_INTERNAL_LIBS@ \
+@USE_ECORE_FILE_INTERNAL_LIBS@ \
+@USE_ECORE_IMF_INTERNAL_LIBS@ \
+@USE_ECORE_EVAS_INTERNAL_LIBS@ \
+@USE_ECORE_FB_INTERNAL_LIBS@ \
+@USE_ECORE_INPUT_INTERNAL_LIBS@ \
+@USE_ECORE_X_INTERNAL_LIBS@ \
+@USE_ECORE_WAYLAND_INTERNAL_LIBS@
+
+if HAVE_ECORE_X
+tests_ecore_ecore_suite_SOURCES += tests/ecore/ecore_test_ecore_x.c
+endif
+
+if HAVE_ECORE_AUDIO
+tests_ecore_ecore_suite_SOURCES += tests/ecore/ecore_test_ecore_audio.c
+endif
+
+if HAVE_ECORE_FB
+tests_ecore_ecore_suite_SOURCES += tests/ecore/ecore_test_ecore_fb.c
+endif
+
+endif
+
+EXTRA_DIST2 += \
+tests/ecore/sample.wav \
+tests/ecore/sample.ogg
+
+if HAVE_LUA_BINDINGS
+
+ecore_eolian_lua = $(ecore_eolian_files:%.eo=%.eo.lua)
+
+generated_ecore_lua_all = $(ecore_eolian_lua)
+
+GENERATED_LUA_BINDINGS += $(generated_ecore_lua_all)
+
+installed_ecoreluadir = $(datadir)/elua/modules/ecore
+nodist_installed_ecorelua_DATA = $(generated_ecore_lua_all)
+
+endif
+
+if HAVE_JS
+
+generated_ecore_js_bindings = $(ecore_eolian_files_public:%.eo=%.eo.js.cc)
+
+GENERATED_JS_BINDINGS += $(generated_ecore_js_bindings)
+
+endif
+
+if HAVE_CXX
+
+ecore_eolian_cxx_hh = $(ecore_eolian_files_public:%.eo=%.eo.hh)
+ecore_eolian_cxx_impl_hh = $(ecore_eolian_files_public:%.eo=%.eo.impl.hh)
+
+endif
diff --git a/src/Makefile_Ecore_Audio.am b/src/Makefile_Ecore_Audio.am
new file mode 100644
index 0000000000..695879f170
--- /dev/null
+++ b/src/Makefile_Ecore_Audio.am
@@ -0,0 +1,101 @@
+if HAVE_ECORE_AUDIO
+
+### Library
+
+ecore_audio_eolian_files = \
+ lib/ecore_audio/ecore_audio.eo \
+ lib/ecore_audio/ecore_audio_in.eo \
+ lib/ecore_audio/ecore_audio_out.eo \
+ lib/ecore_audio/ecore_audio_in_sndfile.eo \
+ lib/ecore_audio/ecore_audio_out_sndfile.eo \
+ lib/ecore_audio/ecore_audio_out_pulse.eo \
+ lib/ecore_audio/ecore_audio_in_tone.eo \
+ lib/ecore_audio/ecore_audio_out_wasapi.eo
+
+
+ecore_audio_eolian_c = $(ecore_audio_eolian_files:%.eo=%.eo.c)
+ecore_audio_eolian_h = $(ecore_audio_eolian_files:%.eo=%.eo.h)
+
+BUILT_SOURCES += \
+ $(ecore_audio_eolian_c) \
+ $(ecore_audio_eolian_h)
+
+if INSTALL_EO_FILES
+ecore_audioeolianfilesdir = $(datadir)/eolian/include/ecore-@VMAJ@
+ecore_audioeolianfiles_DATA = $(ecore_audio_eolian_files)
+endif
+
+EXTRA_DIST2 += \
+ $(ecore_audio_eolian_files)
+
+lib_LTLIBRARIES += lib/ecore_audio/libecore_audio.la
+
+installed_ecoreaudiomainheadersdir = $(includedir)/ecore-audio-@VMAJ@
+dist_installed_ecoreaudiomainheaders_DATA = \
+lib/ecore_audio/Ecore_Audio.h \
+lib/ecore_audio/ecore_audio_obj.h \
+lib/ecore_audio/ecore_audio_obj_in.h \
+lib/ecore_audio/ecore_audio_obj_out.h \
+lib/ecore_audio/ecore_audio_obj_in_tone.h \
+lib/ecore_audio/ecore_audio_protected.h \
+lib/ecore_audio/ecore_audio_obj_out_pulse.h \
+lib/ecore_audio/ecore_audio_obj_in_sndfile.h \
+lib/ecore_audio/ecore_audio_obj_out_sndfile.h \
+lib/ecore_audio/ecore_audio_obj_out_wasapi.h
+
+nodist_installed_ecoreaudiomainheaders_DATA = $(ecore_audio_eolian_h)
+
+lib_ecore_audio_libecore_audio_la_SOURCES = \
+lib/ecore_audio/ecore_audio.c \
+lib/ecore_audio/ecore_audio_obj.c \
+lib/ecore_audio/ecore_audio_obj_in.c \
+lib/ecore_audio/ecore_audio_obj_out.c \
+lib/ecore_audio/ecore_audio_obj_in_tone.c \
+lib/ecore_audio/ecore_audio_private.h
+
+lib_ecore_audio_libecore_audio_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl @ECORE_AUDIO_CFLAGS@ @ECORE_AUDIO_ALSA_CFLAGS@ @ECORE_AUDIO_PULSE_CFLAGS@ @ECORE_AUDIO_SNDFILE_CFLAGS@ -DEFL_BUILD
+lib_ecore_audio_libecore_audio_la_LIBADD = @ECORE_AUDIO_LIBS@ @ECORE_AUDIO_ALSA_LIBS@
+lib_ecore_audio_libecore_audio_la_DEPENDENCIES = @ECORE_AUDIO_INTERNAL_LIBS@
+lib_ecore_audio_libecore_audio_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
+
+if HAVE_ECORE_AUDIO_PULSE
+lib_ecore_audio_libecore_audio_la_SOURCES += \
+lib/ecore_audio/ecore_audio_pulse_ml.c \
+lib/ecore_audio/ecore_audio_obj_out_pulse.c
+endif
+
+if HAVE_WIN32
+lib_ecore_audio_libecore_audio_la_SOURCES += \
+lib/ecore_audio/ecore_audio_obj_out_wasapi.c
+endif
+
+if HAVE_ECORE_AUDIO_SNDFILE
+lib_ecore_audio_libecore_audio_la_SOURCES += \
+lib/ecore_audio/ecore_audio_obj_in_sndfile.c \
+lib/ecore_audio/ecore_audio_obj_out_sndfile.c \
+lib/ecore_audio/ecore_audio_sndfile_vio.c
+endif
+
+
+if HAVE_LUA_BINDINGS
+
+ecore_audio_eolian_lua = $(ecore_audio_eolian_files:%.eo=%.eo.lua)
+
+generated_ecore_audio_lua_all = $(ecore_audio_eolian_lua)
+
+GENERATED_LUA_BINDINGS += $(generated_ecore_audio_lua_all)
+
+installed_ecoreaudioluadir = $(datadir)/elua/modules/ecore_audio
+nodist_installed_ecoreaudiolua_DATA = $(generated_ecore_audio_lua_all)
+
+endif
+
+if HAVE_JS
+
+generated_ecore_audio_js_bindings = $(ecore_audio_eolian_files:%.eo=%.eo.js.cc)
+
+GENERATED_JS_BINDINGS += $(generated_ecore_audio_js_bindings)
+
+endif
+
+endif
diff --git a/src/Makefile_Ecore_Avahi.am b/src/Makefile_Ecore_Avahi.am
new file mode 100644
index 0000000000..0390020c78
--- /dev/null
+++ b/src/Makefile_Ecore_Avahi.am
@@ -0,0 +1,16 @@
+
+### Library
+
+lib_LTLIBRARIES += lib/ecore_avahi/libecore_avahi.la
+
+installed_ecoreavahimainheadersdir = $(includedir)/ecore-avahi-@VMAJ@
+dist_installed_ecoreavahimainheaders_DATA = \
+lib/ecore_avahi/Ecore_Avahi.h
+
+lib_ecore_avahi_libecore_avahi_la_SOURCES = \
+lib/ecore_avahi/ecore_avahi.c
+
+lib_ecore_avahi_libecore_avahi_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl @ECORE_AVAHI_CFLAGS@ -DEFL_BUILD
+lib_ecore_avahi_libecore_avahi_la_LIBADD = @ECORE_AVAHI_LIBS@
+lib_ecore_avahi_libecore_avahi_la_DEPENDENCIES = @ECORE_AVAHI_INTERNAL_LIBS@
+lib_ecore_avahi_libecore_avahi_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
diff --git a/src/Makefile_Ecore_Buffer.am b/src/Makefile_Ecore_Buffer.am
new file mode 100644
index 0000000000..c357c5cd00
--- /dev/null
+++ b/src/Makefile_Ecore_Buffer.am
@@ -0,0 +1,113 @@
+if HAVE_ECORE_BUFFER
+
+### Library
+
+lib_LTLIBRARIES += lib/ecore_buffer/libecore_buffer.la
+
+installed_ecorebuffermainheadersdir = $(includedir)/ecore-buffer-@VMAJ@
+dist_installed_ecorebuffermainheaders_DATA = \
+lib/ecore_buffer/Ecore_Buffer.h \
+lib/ecore_buffer/Ecore_Buffer_Queue.h
+
+lib_ecore_buffer_libecore_buffer_la_SOURCES = \
+lib/ecore_buffer/bq_mgr_protocol.c \
+lib/ecore_buffer/buffer_queue.c \
+lib/ecore_buffer/shared_buffer.c \
+lib/ecore_buffer/ecore_buffer.c \
+lib/ecore_buffer/ecore_buffer_queue_main.c \
+lib/ecore_buffer/ecore_buffer_con.c \
+lib/ecore_buffer/ecore_buffer_provider.c \
+lib/ecore_buffer/ecore_buffer_consumer.c
+
+lib_ecore_buffer_libecore_buffer_la_CPPFLAGS = \
+-I$(top_builddir)/src/lib/efl \
+-DPACKAGE_BUILD_DIR=\"$(abs_top_builddir)\" \
+-DPACKAGE_LIB_DIR=\"$(libdir)\" \
+@ECORE_BUFFER_CFLAGS@
+
+lib_ecore_buffer_libecore_buffer_la_LIBADD = @ECORE_BUFFER_LIBS@
+lib_ecore_buffer_libecore_buffer_la_DEPENDENCIES = @ECORE_BUFFER_INTERNAL_LIBS@
+lib_ecore_buffer_libecore_buffer_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
+
+### Binary
+bqmgr_bindir=$(libdir)/ecore_buffer/bin/$(MODULE_ARCH)
+bqmgr_bin_PROGRAMS = bin/ecore_buffer/bq_mgr
+
+bin_ecore_buffer_bq_mgr_SOURCES = \
+bin/ecore_buffer/bq_mgr_protocol.c \
+bin/ecore_buffer/bq_mgr.c
+
+bin_ecore_buffer_bq_mgr_CPPFLAGS = \
+-I$(top_builddir)/src/lib/efl \
+@ECORE_BUFFER_CFLAGS@
+bin_ecore_buffer_bq_mgr_LDADD = @USE_ECORE_INTERNAL_LIBS@ @USE_ECORE_BUFFER_LIBS@
+bin_ecore_buffer_bq_mgr_DEPENDENCIES = @USE_ECORE_INTERNAL_LIBS@ @USE_ECORE_BUFFER_INTERNAL_LIBS@
+
+### Backends
+
+ecorebuffershmdir = $(libdir)/ecore_buffer/modules/shm/$(MODULE_ARCH)
+ecorebuffershm_LTLIBRARIES = modules/ecore_buffer/shm/module.la
+
+modules_ecore_buffer_shm_module_la_SOURCES = \
+ modules/ecore_buffer/shm/ecore_buffer_shm.c
+modules_ecore_buffer_shm_module_la_CPPFLAGS = \
+ -I$(top_builddir)/src/lib/efl \
+ @ECORE_BUFFER_CFLAGS@ \
+ -I$(top_srcdir)/src/modules/ecore_buffer/shm
+modules_ecore_buffer_shm_module_la_LIBADD = \
+ @ECORE_BUFFER_LIBS@ \
+ @USE_ECORE_BUFFER_INTERNAL_LIBS@
+modules_ecore_buffer_shm_module_la_DEPENDENCIES = \
+ @USE_ECORE_BUFFER_INTERNAL_LIBS@
+modules_ecore_buffer_shm_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
+modules_ecore_buffer_shm_module_la_LIBTOOLFLAGS = --tag=disable-static
+
+if BUILD_ECORE_BUFFER_X11_DRI2
+ecorebufferx11dri2dir = $(libdir)/ecore_buffer/modules/x11_dri2/$(MODULE_ARCH)
+ecorebufferx11dri2_LTLIBRARIES = modules/ecore_buffer/x11_dri2/module.la
+
+modules_ecore_buffer_x11_dri2_module_la_SOURCES = \
+ modules/ecore_buffer/x11_dri2/ecore_buffer_x11_dri2.c
+modules_ecore_buffer_x11_dri2_module_la_CPPFLAGS = \
+ -I$(top_builddir)/src/lib/efl \
+ @ECORE_BUFFER_CFLAGS@ \
+ @X11_DRI_COMMON_CFLAGS@ \
+ @X11_DRI2_CFLAGS@ \
+ -I$(top_srcdir)/src/modules/ecore_buffer/x11_dri2
+modules_ecore_buffer_x11_dri2_module_la_LIBADD = \
+ @ECORE_BUFFER_LIBS@ \
+ @USE_ECORE_BUFFER_INTERNAL_LIBS@ \
+ @X11_DRI_COMMON_LIBS@ \
+ @X11_DRI2_LIBS@
+modules_ecore_buffer_x11_dri2_module_la_DEPENDENCIES = \
+ @USE_ECORE_X_INTERNAL_LIBS@ \
+ @USE_ECORE_BUFFER_INTERNAL_LIBS@
+modules_ecore_buffer_x11_dri2_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
+modules_ecore_buffer_x11_dri2_module_la_LIBTOOLFLAGS = --tag=disable-static
+endif
+
+if BUILD_ECORE_BUFFER_X11_DRI3
+ecorebufferx11dri3dir = $(libdir)/ecore_buffer/modules/x11_dri3/$(MODULE_ARCH)
+ecorebufferx11dri3_LTLIBRARIES = modules/ecore_buffer/x11_dri3/module.la
+
+modules_ecore_buffer_x11_dri3_module_la_SOURCES = \
+ modules/ecore_buffer/x11_dri3/ecore_buffer_x11_dri3.c
+modules_ecore_buffer_x11_dri3_module_la_CPPFLAGS = \
+ -I$(top_builddir)/src/lib/efl \
+ @ECORE_BUFFER_CFLAGS@ \
+ @X11_DRI_COMMON_CFLAGS@ \
+ @X11_DRI3_CFLAGS@ \
+ -I$(top_srcdir)/src/modules/ecore_buffer/x11_dri3
+modules_ecore_buffer_x11_dri3_module_la_LIBADD = \
+ @ECORE_BUFFER_LIBS@ \
+ @USE_ECORE_BUFFER_INTERNAL_LIBS@ \
+ @X11_DRI_COMMON_LIBS@ \
+ @X11_DRI3_LIBS@
+modules_ecore_buffer_x11_dri3_module_la_DEPENDENCIES = \
+ @USE_ECORE_X_INTERNAL_LIBS@ \
+ @USE_ECORE_BUFFER_INTERNAL_LIBS@
+modules_ecore_buffer_x11_dri3_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
+modules_ecore_buffer_x11_dri3_module_la_LIBTOOLFLAGS = --tag=disable-static
+endif
+
+endif
diff --git a/src/Makefile_Ecore_Cocoa.am b/src/Makefile_Ecore_Cocoa.am
new file mode 100644
index 0000000000..1283125d4f
--- /dev/null
+++ b/src/Makefile_Ecore_Cocoa.am
@@ -0,0 +1,26 @@
+if HAVE_ECORE_COCOA
+
+### Library
+
+lib_LTLIBRARIES += lib/ecore_cocoa/libecore_cocoa.la
+
+installed_ecorecocoamainheadersdir = $(includedir)/ecore-cocoa-@VMAJ@
+dist_installed_ecorecocoamainheaders_DATA = \
+lib/ecore_cocoa/Ecore_Cocoa.h
+
+lib_ecore_cocoa_libecore_cocoa_la_SOURCES = \
+lib/ecore_cocoa/ecore_cocoa.m \
+lib/ecore_cocoa/ecore_cocoa_keys.h \
+lib/ecore_cocoa/ecore_cocoa_window.h \
+lib/ecore_cocoa/ecore_cocoa_window.m \
+lib/ecore_cocoa/ecore_cocoa_cnp.m \
+lib/ecore_cocoa/ecore_cocoa_app.m \
+lib/ecore_cocoa/ecore_cocoa_app.h \
+lib/ecore_cocoa/ecore_cocoa_private.h
+
+lib_ecore_cocoa_libecore_cocoa_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl @ECORE_COCOA_CFLAGS@
+lib_ecore_cocoa_libecore_cocoa_la_LIBADD = @ECORE_COCOA_LIBS@
+lib_ecore_cocoa_libecore_cocoa_la_DEPENDENCIES = @ECORE_COCOA_INTERNAL_LIBS@
+lib_ecore_cocoa_libecore_cocoa_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@ @cocoa_ldflags@
+lib_ecore_cocoa_libecore_cocoa_la_LIBTOOLFLAGS = --tag=disable-static
+endif
diff --git a/src/Makefile_Ecore_Con.am b/src/Makefile_Ecore_Con.am
new file mode 100644
index 0000000000..594046b3c5
--- /dev/null
+++ b/src/Makefile_Ecore_Con.am
@@ -0,0 +1,278 @@
+
+### Library
+
+ecore_con_eolian_files_common = \
+ lib/ecore_con/efl_net_socket.eo \
+ lib/ecore_con/efl_net_socket_simple.eo \
+ lib/ecore_con/efl_net_socket_fd.eo \
+ lib/ecore_con/efl_net_socket_tcp.eo \
+ lib/ecore_con/efl_net_socket_udp.eo \
+ lib/ecore_con/efl_net_dialer.eo \
+ lib/ecore_con/efl_net_dialer_simple.eo \
+ lib/ecore_con/efl_net_dialer_tcp.eo \
+ lib/ecore_con/efl_net_dialer_udp.eo \
+ lib/ecore_con/efl_net_dialer_http.eo \
+ lib/ecore_con/efl_net_dialer_websocket.eo \
+ lib/ecore_con/efl_net_server.eo \
+ lib/ecore_con/efl_net_server_simple.eo \
+ lib/ecore_con/efl_net_server_fd.eo \
+ lib/ecore_con/efl_net_server_ip.eo \
+ lib/ecore_con/efl_net_server_tcp.eo \
+ lib/ecore_con/efl_net_server_udp.eo \
+ lib/ecore_con/efl_net_server_udp_client.eo \
+ lib/ecore_con/efl_net_socket_ssl.eo \
+ lib/ecore_con/efl_net_ssl_context.eo \
+ lib/ecore_con/efl_net_dialer_ssl.eo \
+ lib/ecore_con/efl_net_server_ssl.eo \
+ lib/ecore_con/efl_net_control_access_point.eo \
+ lib/ecore_con/efl_net_control_technology.eo \
+ lib/ecore_con/efl_net_control_manager.eo \
+ lib/ecore_con/efl_net_session.eo \
+ lib/ecore_con/efl_net_ip_address.eo
+
+ecore_con_eolian_files_windows = \
+ lib/ecore_con/efl_net_socket_windows.eo \
+ lib/ecore_con/efl_net_dialer_windows.eo \
+ lib/ecore_con/efl_net_server_windows.eo
+
+ecore_con_eolian_files_unix = \
+ lib/ecore_con/efl_net_socket_unix.eo \
+ lib/ecore_con/efl_net_dialer_unix.eo \
+ lib/ecore_con/efl_net_server_unix.eo
+
+ecore_con_eolian_files = $(ecore_con_eolian_files_common)
+
+if HAVE_WINDOWS
+ecore_con_eolian_files += $(ecore_con_eolian_files_windows)
+else
+ecore_con_eolian_files += $(ecore_con_eolian_files_unix)
+endif
+
+ecore_con_eolian_type_files = \
+ lib/ecore_con/efl_net_types.eot \
+ lib/ecore_con/efl_net_http_types.eot \
+ lib/ecore_con/efl_net_ssl_types.eot
+
+
+ecore_con_eolian_c = $(ecore_con_eolian_files:%.eo=%.eo.c)
+ecore_con_eolian_h = $(ecore_con_eolian_files:%.eo=%.eo.h) \
+ $(ecore_con_eolian_type_files:%.eot=%.eot.h)
+
+BUILT_SOURCES += \
+ $(ecore_con_eolian_c) \
+ $(ecore_con_eolian_h)
+
+if INSTALL_EO_FILES
+ecoreconeolianfilesdir = $(datadir)/eolian/include/ecore-@VMAJ@
+ecoreconeolianfiles_DATA = \
+ $(ecore_con_eolian_files) \
+ $(ecore_con_eolian_type_files)
+endif
+
+EXTRA_DIST2 += \
+$(ecore_con_eolian_files_common) \
+$(ecore_con_eolian_files_unix) \
+$(ecore_con_eolian_files_windows) \
+$(ecore_con_eolian_type_files)
+
+
+lib_LTLIBRARIES += lib/ecore_con/libecore_con.la
+
+installed_ecoreconmainheadersdir = $(includedir)/ecore-con-@VMAJ@
+dist_installed_ecoreconmainheaders_DATA = \
+lib/ecore_con/Ecore_Con.h \
+lib/ecore_con/Efl_Net.h \
+lib/ecore_con/Ecore_Con_Eet.h \
+lib/ecore_con/Ecore_Con_Eet_Legacy.h \
+lib/ecore_con/Ecore_Con_Eet_Eo.h \
+lib/ecore_con/ecore_con_eet_base_eo.h \
+lib/ecore_con/ecore_con_eet_base_eo.legacy.h \
+lib/ecore_con/ecore_con_eet_client_obj_eo.h \
+lib/ecore_con/ecore_con_eet_client_obj_eo.legacy.h \
+lib/ecore_con/ecore_con_eet_server_obj_eo.h \
+lib/ecore_con/ecore_con_eet_server_obj_eo.legacy.h
+
+
+nodist_installed_ecoreconmainheaders_DATA = \
+ $(ecore_con_eolian_h)
+
+lib_ecore_con_libecore_con_la_SOURCES = \
+lib/ecore_con/ecore_con_alloc.c \
+lib/ecore_con/ecore_con.c \
+lib/ecore_con/ecore_con_proxy_helper.c \
+lib/ecore_con/ecore_con_legacy.c \
+lib/ecore_con/ecore_con_eet.c \
+lib/ecore_con/ecore_con_socks.c \
+lib/ecore_con/ecore_con_url.c \
+lib/ecore_con/ecore_con_url_curl.c \
+lib/ecore_con/ecore_con_url_curl.h \
+static_libs/http-parser/http_parser.c \
+static_libs/http-parser/http_parser.h \
+lib/ecore_con/ecore_con_private.h \
+lib/ecore_con/efl_net_socket.c \
+lib/ecore_con/efl_net_socket_simple.c \
+lib/ecore_con/efl_net_socket_fd.c \
+lib/ecore_con/efl_net_socket_tcp.c \
+lib/ecore_con/efl_net_socket_udp.c \
+lib/ecore_con/efl_net_dialer.c \
+lib/ecore_con/efl_net_dialer_simple.c \
+lib/ecore_con/efl_net_dialer_tcp.c \
+lib/ecore_con/efl_net_dialer_udp.c \
+lib/ecore_con/efl_net_dialer_http.c \
+lib/ecore_con/efl_net_dialer_websocket.c \
+lib/ecore_con/efl_net_server.c \
+lib/ecore_con/efl_net_server_simple.c \
+lib/ecore_con/efl_net_server_fd.c \
+lib/ecore_con/efl_net_server_ip.c \
+lib/ecore_con/efl_net_server_tcp.c \
+lib/ecore_con/efl_net_server_udp.c \
+lib/ecore_con/efl_net_server_udp_client.c \
+lib/ecore_con/efl_net_socket_ssl.c \
+lib/ecore_con/efl_net_ssl_context.c \
+lib/ecore_con/efl_net_dialer_ssl.c \
+lib/ecore_con/efl_net_server_ssl.c \
+lib/ecore_con/ecore_con_local.c \
+lib/ecore_con/efl_net_ip_address.c \
+static_libs/buildsystem/buildsystem.h \
+static_libs/buildsystem/buildsystem_autotools.c
+
+if EFL_NET_CONTROL_BACKEND_CONNMAN
+lib_ecore_con_libecore_con_la_SOURCES += \
+lib/ecore_con/efl_net-connman.h \
+lib/ecore_con/efl_net-connman.c \
+lib/ecore_con/efl_net_control_access_point-connman.c \
+lib/ecore_con/efl_net_control_technology-connman.c \
+lib/ecore_con/efl_net_control-connman.c \
+lib/ecore_con/efl_net_session-connman.c
+endif
+
+if EFL_NET_CONTROL_BACKEND_NONE
+lib_ecore_con_libecore_con_la_SOURCES += \
+lib/ecore_con/efl_net_control_access_point-none.c \
+lib/ecore_con/efl_net_control_technology-none.c \
+lib/ecore_con/efl_net_control-none.c \
+lib/ecore_con/efl_net_session-none.c
+endif
+
+# these are included rather than compiled out
+# so the structures can be embedded into the
+# object Private Data and allows functions to
+# be all static
+EXTRA_DIST2 += \
+lib/ecore_con/ecore_con_eet_base_eo.c \
+lib/ecore_con/ecore_con_eet_base_eo.legacy.c \
+lib/ecore_con/ecore_con_eet_client_obj_eo.c \
+lib/ecore_con/ecore_con_eet_server_obj_eo.c \
+lib/ecore_con/efl_net_ssl_conn-openssl.c \
+lib/ecore_con/efl_net_ssl_conn-gnutls.c \
+lib/ecore_con/efl_net_ssl_conn-none.c \
+lib/ecore_con/efl_net_ssl_ctx-openssl.c \
+lib/ecore_con/efl_net_ssl_ctx-gnutls.c \
+lib/ecore_con/efl_net_ssl_ctx-none.c
+
+if HAVE_WINDOWS
+lib_ecore_con_libecore_con_la_SOURCES += \
+lib/ecore_con/efl_net_socket_windows.c \
+lib/ecore_con/efl_net_dialer_windows.c \
+lib/ecore_con/efl_net_server_windows.c
+else
+lib_ecore_con_libecore_con_la_SOURCES += \
+lib/ecore_con/efl_net_socket_unix.c \
+lib/ecore_con/efl_net_dialer_unix.c \
+lib/ecore_con/efl_net_server_unix.c
+endif
+
+lib_ecore_con_libecore_con_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+-DPACKAGE_BIN_DIR=\"$(bindir)\" \
+-DPACKAGE_LIB_DIR=\"$(libdir)\" \
+-DPACKAGE_DATA_DIR=\"$(datadir)/ecore\" \
+-DPACKAGE_BUILD_DIR=\"$(abs_top_builddir)\" \
+-DPACKAGE_SRC_DIR=\"$(abs_top_srcdir)\" \
+-DEFL_BUILD \
+@ECORE_CON_CFLAGS@
+lib_ecore_con_libecore_con_la_LIBADD = @ECORE_CON_LIBS@ @EVIL_LIBS@
+lib_ecore_con_libecore_con_la_DEPENDENCIES = @ECORE_CON_INTERNAL_LIBS@
+lib_ecore_con_libecore_con_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
+
+lib_ecore_con_libecore_con_la_CPPFLAGS += -I$(top_srcdir)/src/static_libs/http-parser
+
+EXTRA_DIST2 += \
+tests/ecore_con/server.key \
+tests/ecore_con/server.pem \
+static_libs/http-parser/AUTHORS \
+static_libs/http-parser/CONTRIBUTIONS \
+static_libs/http-parser/README.md \
+static_libs/http-parser/test.c \
+static_libs/http-parser/contrib/parsertrace.c \
+static_libs/http-parser/contrib/url_parser.c
+
+### Binary
+proxyhelperdir = \
+$(libdir)/ecore_con/utils/$(MODULE_ARCH)
+proxyhelper_PROGRAMS = bin/ecore_con/efl_net_proxy_helper
+
+bin_ecore_con_efl_net_proxy_helper_SOURCES = \
+bin/ecore_con/efl_net_proxy_helper.c
+
+bin_ecore_con_efl_net_proxy_helper_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+-DPACKAGE_BIN_DIR=\"$(bindir)\" \
+-DPACKAGE_LIB_DIR=\"$(libdir)\" \
+-DPACKAGE_DATA_DIR=\"$(datadir)/ecore\" \
+@EINA_CFLAGS@
+bin_ecore_con_efl_net_proxy_helper_LDADD = @USE_EINA_LIBS@
+bin_ecore_con_efl_net_proxy_helper_DEPENDENCIES = @USE_EINA_INTERNAL_LIBS@
+
+### Unit tests
+
+if EFL_ENABLE_TESTS
+
+check_PROGRAMS += tests/ecore_con/ecore_con_suite
+TESTS += tests/ecore_con/ecore_con_suite
+
+tests_ecore_con_ecore_con_suite_SOURCES = \
+tests/ecore_con/ecore_con_suite.c \
+tests/ecore_con/ecore_con_test_ecore_con.c \
+tests/ecore_con/ecore_con_test_ecore_con_url.c \
+tests/ecore_con/ecore_con_test_ecore_con_eet.c \
+tests/ecore_con/ecore_con_test_efl_net_ip_address.c \
+tests/ecore_con/ecore_con_suite.h
+
+tests_ecore_con_ecore_con_suite_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+-DPACKAGE_BUILD_DIR=\"$(abs_top_builddir)\" \
+-DTESTS_SRC_DIR=\"$(top_srcdir)/src/tests/ecore_con\" \
+-DTESTS_BUILD_DIR=\"$(top_builddir)/src/tests/ecore_con\" \
+@CHECK_CFLAGS@ \
+@ECORE_CFLAGS@ \
+@ECORE_CON_CFLAGS@
+
+tests_ecore_con_ecore_con_suite_LDADD = \
+@CHECK_LIBS@ \
+@USE_ECORE_LIBS@ \
+@USE_ECORE_CON_LIBS@
+
+tests_ecore_con_ecore_con_suite_DEPENDENCIES = \
+@USE_ECORE_INTERNAL_LIBS@ \
+@USE_ECORE_CON_INTERNAL_LIBS@
+
+endif
+
+if HAVE_LUA_BINDINGS
+
+ecore_con_eolian_lua = $(ecore_con_eolian_files:%.eo=%.eo.lua)
+
+generated_ecore_con_lua_all = $(ecore_con_eolian_lua)
+
+GENERATED_LUA_BINDINGS += $(generated_ecore_con_lua_all)
+
+installed_ecoreconluadir = $(datadir)/elua/modules/ecore_con
+nodist_installed_ecoreconlua_DATA = $(generated_ecore_con_lua_all)
+
+endif
+
+if HAVE_JS
+
+generated_ecore_con_js_bindings = $(ecore_con_eolian_files:%.eo=%.eo.js.cc)
+
+GENERATED_JS_BINDINGS += $(generated_ecore_con_js_bindings)
+
+endif
diff --git a/src/Makefile_Ecore_Drm.am b/src/Makefile_Ecore_Drm.am
new file mode 100644
index 0000000000..5a6b40ded4
--- /dev/null
+++ b/src/Makefile_Ecore_Drm.am
@@ -0,0 +1,39 @@
+if HAVE_ECORE_DRM
+
+### Library
+
+lib_LTLIBRARIES += lib/ecore_drm/libecore_drm.la
+
+installed_ecoredrmmainheadersdir = $(includedir)/ecore-drm-@VMAJ@
+dist_installed_ecoredrmmainheaders_DATA = \
+ lib/ecore_drm/Ecore_Drm.h
+
+lib_ecore_drm_libecore_drm_la_SOURCES = \
+lib/ecore_drm/ecore_drm_sprites.c \
+lib/ecore_drm/ecore_drm_fb.c \
+lib/ecore_drm/ecore_drm_evdev.c \
+lib/ecore_drm/ecore_drm_inputs.c \
+lib/ecore_drm/ecore_drm_output.c \
+lib/ecore_drm/ecore_drm_tty.c \
+lib/ecore_drm/ecore_drm_device.c \
+lib/ecore_drm/ecore_drm_launcher.c \
+lib/ecore_drm/ecore_drm_dbus.c \
+lib/ecore_drm/ecore_drm_logind.c \
+lib/ecore_drm/ecore_drm.c \
+lib/ecore_drm/ecore_drm_private.h
+
+
+lib_ecore_drm_libecore_drm_la_CPPFLAGS = \
+ -I$(top_builddir)/src/lib/efl \
+ @ECORE_DRM_CFLAGS@ @EFL_CFLAGS@ \
+ -DPACKAGE_LIB_DIR=\"$(libdir)\" \
+ -DMODULE_ARCH=\"$(MODULE_ARCH)\"
+
+lib_ecore_drm_libecore_drm_la_LIBADD = @ECORE_DRM_LIBS@
+if HAVE_SYSTEMD
+lib_ecore_drm_libecore_drm_la_LIBADD += @SYSTEMD_LIBS@
+endif
+lib_ecore_drm_libecore_drm_la_DEPENDENCIES = @ECORE_DRM_INTERNAL_LIBS@
+lib_ecore_drm_libecore_drm_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
+
+endif
diff --git a/src/Makefile_Ecore_Drm2.am b/src/Makefile_Ecore_Drm2.am
new file mode 100644
index 0000000000..dcb5dde757
--- /dev/null
+++ b/src/Makefile_Ecore_Drm2.am
@@ -0,0 +1,36 @@
+if HAVE_ECORE_DRM2
+
+### Library
+
+lib_LTLIBRARIES += lib/ecore_drm2/libecore_drm2.la
+
+installed_ecoredrm2mainheadersdir = $(includedir)/ecore-drm2-@VMAJ@
+dist_installed_ecoredrm2mainheaders_DATA = \
+ lib/ecore_drm2/Ecore_Drm2.h
+
+lib_ecore_drm2_libecore_drm2_la_SOURCES = \
+static_libs/libdrm/drm.h \
+static_libs/libdrm/drm_fourcc.h \
+static_libs/libdrm/drm_mode.h \
+static_libs/libdrm/xf86drm.h \
+static_libs/libdrm/xf86drmMode.h \
+static_libs/libdrm/LICENSE \
+lib/ecore_drm2/ecore_drm2_plane.c \
+lib/ecore_drm2/ecore_drm2_fb.c \
+lib/ecore_drm2/ecore_drm2_outputs.c \
+lib/ecore_drm2/ecore_drm2_device.c \
+lib/ecore_drm2/ecore_drm2.c \
+lib/ecore_drm2/ecore_drm2_private.h
+
+lib_ecore_drm2_libecore_drm2_la_CPPFLAGS = \
+ -I$(top_builddir)/src/lib/efl \
+ -I$(top_srcdir)/src/static_libs/libdrm \
+ @ECORE_DRM2_CFLAGS@ @EFL_CFLAGS@ \
+ -DPACKAGE_LIB_DIR=\"$(libdir)\" \
+ -DMODULE_ARCH=\"$(MODULE_ARCH)\"
+
+lib_ecore_drm2_libecore_drm2_la_LIBADD = @ECORE_DRM2_LIBS@
+lib_ecore_drm2_libecore_drm2_la_DEPENDENCIES = @ECORE_DRM2_INTERNAL_LIBS@
+lib_ecore_drm2_libecore_drm2_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
+
+endif
diff --git a/src/Makefile_Ecore_Evas.am b/src/Makefile_Ecore_Evas.am
new file mode 100644
index 0000000000..8f74f95b0b
--- /dev/null
+++ b/src/Makefile_Ecore_Evas.am
@@ -0,0 +1,317 @@
+
+### Library
+
+lib_LTLIBRARIES += lib/ecore_evas/libecore_evas.la
+
+installed_ecoreevasmainheadersdir = $(includedir)/ecore-evas-@VMAJ@
+dist_installed_ecoreevasmainheaders_DATA = \
+lib/ecore_evas/Ecore_Evas_Types.h \
+lib/ecore_evas/Ecore_Evas.h
+
+lib_ecore_evas_libecore_evas_la_SOURCES = \
+lib/ecore_evas/ecore_evas.c \
+lib/ecore_evas/ecore_evas_buffer.c \
+lib/ecore_evas/ecore_evas_buffer.h \
+lib/ecore_evas/ecore_evas_deprecated.c \
+lib/ecore_evas/ecore_evas_drm.h \
+lib/ecore_evas/ecore_evas_ews.c \
+lib/ecore_evas/ecore_evas_module.c \
+lib/ecore_evas/ecore_evas_private.h \
+lib/ecore_evas/ecore_evas_extn.h \
+lib/ecore_evas/ecore_evas_extn.c \
+lib/ecore_evas/ecore_evas_wayland.h \
+lib/ecore_evas/ecore_evas_cocoa.h \
+lib/ecore_evas/ecore_evas_win32.h \
+lib/ecore_evas/ecore_evas_x11.h \
+lib/ecore_evas/ecore_evas_util.c \
+static_libs/buildsystem/buildsystem.h \
+static_libs/buildsystem/buildsystem_autotools.c
+
+lib_ecore_evas_libecore_evas_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+-I$(top_srcdir)/src/modules/evas/engines/buffer \
+-DPACKAGE_BIN_DIR=\"$(bindir)\" \
+-DPACKAGE_LIB_DIR=\"$(libdir)\" \
+-DPACKAGE_DATA_DIR=\"$(datadir)/ecore_evas\" \
+-DPACKAGE_BUILD_DIR=\"$(abs_top_builddir)\" \
+-DPACKAGE_SRC_DIR=\"$(abs_top_srcdir)\" \
+-DEFL_BUILD \
+@ECORE_EVAS_CFLAGS@
+lib_ecore_evas_libecore_evas_la_LIBADD = @ECORE_EVAS_LIBS@
+lib_ecore_evas_libecore_evas_la_DEPENDENCIES = @ECORE_EVAS_INTERNAL_LIBS@
+lib_ecore_evas_libecore_evas_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
+
+# Engines
+
+if BUILD_ECORE_EVAS_EXTN
+EXTNSOURCES = \
+modules/ecore_evas/engines/extn/ecore_evas_extn.c \
+modules/ecore_evas/engines/extn/ecore_evas_extn_engine.h \
+modules/ecore_evas/engines/extn/ecore_evas_extn_buf.c
+ecoreevasengineextnpkgdir = $(libdir)/ecore_evas/engines/extn/$(MODULE_ARCH)
+ecoreevasengineextnpkg_LTLIBRARIES = modules/ecore_evas/engines/extn/module.la
+
+# Workaround for broken parallel install support in automake (relink issue)
+# http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328
+install_ecoreevasengineextnpkgLTLIBRARIES = install-ecoreevasengineextnpkgLTLIBRARIES
+$(install_ecoreevasengineextnpkgLTLIBRARIES): install-libLTLIBRARIES
+
+modules_ecore_evas_engines_extn_module_la_SOURCES = $(EXTNSOURCES)
+modules_ecore_evas_engines_extn_module_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+@ECORE_EVAS_CFLAGS@ \
+@ECORE_IPC_CFLAGS@ \
+-I$(top_srcdir)/src/modules/evas/engines/buffer \
+-I$(top_srcdir)/src/modules/ecore_evas/engines/extn
+modules_ecore_evas_engines_extn_module_la_LIBADD = \
+@USE_ECORE_EVAS_LIBS@ \
+@USE_ECORE_IPC_LIBS@ \
+@SHM_LIBS@
+modules_ecore_evas_engines_extn_module_la_DEPENDENCIES = \
+@USE_ECORE_EVAS_INTERNAL_LIBS@ \
+@USE_ECORE_IPC_INTERNAL_LIBS@
+modules_ecore_evas_engines_extn_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
+modules_ecore_evas_engines_extn_module_la_LIBTOOLFLAGS = --tag=disable-static
+endif
+
+if BUILD_ECORE_EVAS_X11
+XSOURCES = modules/ecore_evas/engines/x/ecore_evas_x.c
+ecoreevasenginexpkgdir = $(libdir)/ecore_evas/engines/x/$(MODULE_ARCH)
+ecoreevasenginexpkg_LTLIBRARIES = modules/ecore_evas/engines/x/module.la
+
+# Workaround for broken parallel install support in automake (relink issue)
+# http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328
+install_ecoreevasenginexpkgLTLIBRARIES = install-ecoreevasenginexpkgLTLIBRARIES
+$(install_ecoreevasenginexpkgLTLIBRARIES): install-libLTLIBRARIES
+
+modules_ecore_evas_engines_x_module_la_SOURCES = $(XSOURCES)
+modules_ecore_evas_engines_x_module_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+-DEFL_BUILD \
+@ECORE_EVAS_CFLAGS@ \
+@ECORE_X_CFLAGS@ \
+-I$(top_srcdir)/src/modules/evas/engines/software_x11 \
+-I$(top_srcdir)/src/modules/evas/engines/gl_x11
+modules_ecore_evas_engines_x_module_la_LIBADD = \
+@USE_ECORE_EVAS_LIBS@ \
+@USE_ECORE_X_LIBS@
+modules_ecore_evas_engines_x_module_la_DEPENDENCIES = \
+@USE_ECORE_EVAS_INTERNAL_LIBS@ \
+@USE_ECORE_X_INTERNAL_LIBS@
+modules_ecore_evas_engines_x_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
+modules_ecore_evas_engines_x_module_la_LIBTOOLFLAGS = --tag=disable-static
+endif
+
+if BUILD_ECORE_EVAS_OPENGL_COCOA
+COCOASOURCES = modules/ecore_evas/engines/cocoa/ecore_evas_cocoa.c
+ecoreevasenginecocoapkgdir = $(libdir)/ecore_evas/engines/cocoa/$(MODULE_ARCH)
+ecoreevasenginecocoapkg_LTLIBRARIES = modules/ecore_evas/engines/cocoa/module.la
+
+# Workaround for broken parallel install support in automake (relink issue)
+# http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328
+install_ecoreevasenginecocoapkgLTLIBRARIES = install-ecoreevasenginecocoapkgLTLIBRARIES
+$(install_ecoreevasenginecocoapkgLTLIBRARIES): install-libLTLIBRARIES
+
+modules_ecore_evas_engines_cocoa_module_la_SOURCES = $(COCOASOURCES)
+modules_ecore_evas_engines_cocoa_module_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+@ECORE_EVAS_CFLAGS@ \
+@ECORE_COCOA_CFLAGS@ \
+-I$(top_srcdir)/src/modules/evas/engines/gl_cocoa
+modules_ecore_evas_engines_cocoa_module_la_LIBADD = \
+@USE_ECORE_EVAS_LIBS@ \
+@USE_ECORE_COCOA_LIBS@
+modules_ecore_evas_engines_cocoa_module_la_DEPENDENCIES = \
+@USE_ECORE_EVAS_INTERNAL_LIBS@ \
+@USE_ECORE_COCOA_INTERNAL_LIBS@
+modules_ecore_evas_engines_cocoa_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
+modules_ecore_evas_engines_cocoa_module_la_LIBTOOLFLAGS = --tag=disable-static
+endif
+
+if BUILD_ECORE_EVAS_FB
+FBSOURCES = modules/ecore_evas/engines/fb/ecore_evas_fb.c
+ecoreevasenginefbpkgdir = $(libdir)/ecore_evas/engines/fb/$(MODULE_ARCH)
+ecoreevasenginefbpkg_LTLIBRARIES = modules/ecore_evas/engines/fb/module.la
+
+# Workaround for broken parallel install support in automake (relink issue)
+# http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328
+install_ecoreevasenginefbpkgLTLIBRARIES = install-ecoreevasenginefbpkgLTLIBRARIES
+$(install_ecoreevasenginefbpkgLTLIBRARIES): install-libLTLIBRARIES
+
+modules_ecore_evas_engines_fb_module_la_SOURCES = $(FBSOURCES)
+modules_ecore_evas_engines_fb_module_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+@ECORE_EVAS_CFLAGS@ \
+@ECORE_FB_CFLAGS@ \
+-I$(top_srcdir)/src/modules/evas/engines/fb
+modules_ecore_evas_engines_fb_module_la_LIBADD = \
+@USE_ECORE_EVAS_LIBS@ \
+@USE_ECORE_FB_LIBS@
+modules_ecore_evas_engines_fb_module_la_DEPENDENCIES = \
+@USE_ECORE_EVAS_INTERNAL_LIBS@ \
+@USE_ECORE_FB_INTERNAL_LIBS@
+modules_ecore_evas_engines_fb_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
+modules_ecore_evas_engines_fb_module_la_LIBTOOLFLAGS = --tag=disable-static
+endif
+
+if BUILD_ECORE_EVAS_WAYLAND
+WAYLANDSOURCES = \
+modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c \
+modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c \
+modules/ecore_evas/engines/wayland/ecore_evas_wayland_egl.c \
+modules/ecore_evas/engines/wayland/ecore_evas_wayland_private.h
+ecoreevasenginewaylandpkgdir = $(libdir)/ecore_evas/engines/wayland/$(MODULE_ARCH)
+ecoreevasenginewaylandpkg_LTLIBRARIES = modules/ecore_evas/engines/wayland/module.la
+
+# Workaround for broken parallel install support in automake (relink issue)
+# http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328
+install_ecoreevasenginewaylandpkgLTLIBRARIES = install-ecoreevasenginewaylandpkgLTLIBRARIES
+$(install_ecoreevasenginewaylandpkgLTLIBRARIES): install-libLTLIBRARIES
+
+modules_ecore_evas_engines_wayland_module_la_SOURCES = $(WAYLANDSOURCES)
+modules_ecore_evas_engines_wayland_module_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+@ECORE_EVAS_CFLAGS@ \
+@ECORE_WL2_CFLAGS@ \
+-I$(top_srcdir)/src/modules/evas/engines/wayland_shm \
+-I$(top_srcdir)/src/modules/evas/engines/wayland_egl \
+-I$(top_srcdir)/src/modules/evas/engines/wayland_common \
+@ECORE_WAYLAND_CFLAGS@ \
+@ECORE_WL2_CFLAGS@
+modules_ecore_evas_engines_wayland_module_la_LIBADD = \
+@USE_ECORE_EVAS_LIBS@ \
+@USE_ECORE_WL2_LIBS@
+modules_ecore_evas_engines_wayland_module_la_DEPENDENCIES = \
+@USE_ECORE_EVAS_INTERNAL_LIBS@ \
+@USE_ECORE_WL2_INTERNAL_LIBS@
+modules_ecore_evas_engines_wayland_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
+modules_ecore_evas_engines_wayland_module_la_LIBTOOLFLAGS = --tag=disable-static
+endif
+
+if BUILD_ECORE_EVAS_SDL
+SDLSOURCES = \
+modules/ecore_evas/engines/sdl/ecore_evas_sdl.c
+ecoreevasenginesdlpkgdir = $(libdir)/ecore_evas/engines/sdl/$(MODULE_ARCH)
+ecoreevasenginesdlpkg_LTLIBRARIES = modules/ecore_evas/engines/sdl/module.la
+
+# Workaround for broken parallel install support in automake (relink issue)
+# http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328
+install_ecoreevasenginesdlpkgLTLIBRARIES = install-ecoreevasenginesdlpkgLTLIBRARIES
+$(install_ecoreevasenginesdlpkgLTLIBRARIES): install-libLTLIBRARIES
+
+modules_ecore_evas_engines_sdl_module_la_SOURCES = $(SDLSOURCES)
+modules_ecore_evas_engines_sdl_module_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+-DEFL_BUILD \
+@ECORE_EVAS_CFLAGS@ \
+@ECORE_SDL_CFLAGS@ \
+-I$(top_srcdir)/src/modules/evas/engines/buffer \
+-I$(top_srcdir)/src/modules/evas/engines/gl_sdl
+modules_ecore_evas_engines_sdl_module_la_LIBADD = \
+@USE_ECORE_EVAS_LIBS@ \
+@USE_ECORE_SDL_LIBS@
+modules_ecore_evas_engines_sdl_module_la_DEPENDENCIES = \
+@USE_ECORE_EVAS_INTERNAL_LIBS@ \
+@USE_ECORE_SDL_INTERNAL_LIBS@
+modules_ecore_evas_engines_sdl_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
+modules_ecore_evas_engines_sdl_module_la_LIBTOOLFLAGS = --tag=disable-static
+endif
+
+if BUILD_ECORE_EVAS_WIN32
+WIN32SOURCES = \
+modules/ecore_evas/engines/win32/ecore_evas_win32.c
+ecoreevasengineswin32pkgdir = $(libdir)/ecore_evas/engines/win32/$(MODULE_ARCH)
+ecoreevasengineswin32pkg_LTLIBRARIES = modules/ecore_evas/engines/win32/module.la
+
+# Workaround for broken parallel install support in automake (relink issue)
+# http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328
+install_ecoreevasengineswin32pkgLTLIBRARIES = install-ecoreevasengineswin32pkgLTLIBRARIES
+$(install_ecoreevasengineswin32pkgLTLIBRARIES): install-libLTLIBRARIES
+
+modules_ecore_evas_engines_win32_module_la_SOURCES = $(WIN32SOURCES)
+modules_ecore_evas_engines_win32_module_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+-DEFL_BUILD \
+@ECORE_EVAS_CFLAGS@ \
+@ECORE_WIN32_CFLAGS@ \
+-I$(top_srcdir)/src/modules/evas/engines/software_ddraw \
+-I$(top_srcdir)/src/modules/evas/engines/software_gdi
+modules_ecore_evas_engines_win32_module_la_LIBADD = \
+@USE_ECORE_EVAS_LIBS@ \
+@USE_ECORE_WIN32_LIBS@
+modules_ecore_evas_engines_win32_module_la_DEPENDENCIES = \
+@USE_ECORE_EVAS_INTERNAL_LIBS@ \
+@USE_ECORE_WIN32_INTERNAL_LIBS@
+modules_ecore_evas_engines_win32_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
+modules_ecore_evas_engines_win32_module_la_LIBTOOLFLAGS = --tag=disable-static
+endif
+
+if BUILD_ECORE_EVAS_DRM
+DRMSOURCES = \
+modules/ecore_evas/engines/drm/ecore_evas_drm.c \
+static_libs/libdrm/drm_fourcc.h \
+static_libs/libdrm/drm.h \
+static_libs/libdrm/drm_mode.h \
+static_libs/libdrm/xf86drm.h \
+static_libs/libdrm/xf86drmMode.h
+
+ecoreevasenginedrmpkgdir = $(libdir)/ecore_evas/engines/drm/$(MODULE_ARCH)
+ecoreevasenginedrmpkg_LTLIBRARIES = modules/ecore_evas/engines/drm/module.la
+
+# Workaround for broken parallel install support in automake (relink issue)
+# http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328
+install_ecoreevasenginedrmpkgLTLIBRARIES = install-ecoreevasenginedrmpkgLTLIBRARIES
+$(install_ecoreevasenginedrmpkgLTLIBRARIES): install-libLTLIBRARIES
+
+modules_ecore_evas_engines_drm_module_la_SOURCES = $(DRMSOURCES)
+modules_ecore_evas_engines_drm_module_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+@ECORE_EVAS_CFLAGS@ \
+@ECORE_DRM2_CFLAGS@ \
+@ELPUT_CFLAGS@ \
+-I$(top_srcdir)/src/static_libs/libdrm \
+-I$(top_srcdir)/src/modules/evas/engines/drm \
+-I$(top_srcdir)/src/modules/evas/engines/gl_drm
+modules_ecore_evas_engines_drm_module_la_LIBADD = \
+@USE_ECORE_EVAS_LIBS@ \
+@USE_ECORE_DRM2_LIBS@
+modules_ecore_evas_engines_drm_module_la_DEPENDENCIES = \
+@USE_ECORE_EVAS_INTERNAL_LIBS@ \
+@USE_ECORE_DRM2_INTERNAL_LIBS@
+modules_ecore_evas_engines_drm_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
+modules_ecore_evas_engines_drm_module_la_LIBTOOLFLAGS = --tag=disable-static
+endif
+
+if BUILD_ECORE_EVAS_VNC_SERVER
+VNCSERVERSOURCES = \
+modules/ecore_evas/vnc_server/ecore_evas_vnc_server.c \
+modules/ecore_evas/vnc_server/ecore_evas_vnc_server_fb_keymap.c \
+modules/ecore_evas/vnc_server/ecore_evas_vnc_server_fb_keymap.h
+ecoreevasenginevncserverpkgdir = $(libdir)/ecore_evas/vnc_server/$(MODULE_ARCH)
+ecoreevasenginevncserverpkg_LTLIBRARIES = modules/ecore_evas/vnc_server/module.la
+
+# Workaround for broken parallel install support in automake (relink issue)
+# http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328
+install_ecoreevasenginevncserverpkgLTLIBRARIES = install-ecoreevasenginevncserverpkgLTLIBRARIES
+$(install_ecoreevasenginevncserverpkgLTLIBRARIES): install-libLTLIBRARIES
+
+modules_ecore_evas_vnc_server_module_la_SOURCES = $(VNCSERVERSOURCES)
+modules_ecore_evas_vnc_server_module_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+-I$(top_builddir)/src/lib/ecore_fb \
+@LIBVNCSERVER_CFLAGS@ \
+@ECORE_EVAS_CFLAGS@
+modules_ecore_evas_vnc_server_module_la_LIBADD = \
+@LIBVNCSERVER_LIBS@ \
+@USE_ECORE_EVAS_LIBS@
+modules_ecore_evas_vnc_server_module_la_DEPENDENCIES = \
+@USE_ECORE_EVAS_INTERNAL_LIBS@
+modules_ecore_evas_vnc_server_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
+modules_ecore_evas_vnc_server_module_la_LIBTOOLFLAGS = --tag=disable-static
+endif
+
+### Binary
+
+bin_PROGRAMS += \
+bin/ecore_evas/ecore_evas_convert \
+bin/ecore_evas/eetpack
+
+bin_ecore_evas_ecore_evas_convert_SOURCES = bin/ecore_evas/ecore_evas_convert.c
+bin_ecore_evas_ecore_evas_convert_CPPFLAGS = -I$(top_builddir)/src/lib/efl @ECORE_EVAS_CFLAGS@ @EINA_CFLAGS@ @ECORE_CFLAGS@ @EVAS_CFLAGS@
+bin_ecore_evas_ecore_evas_convert_LDADD = @USE_ECORE_EVAS_LIBS@ @USE_EINA_LIBS@ @USE_ECORE_LIBS@ @USE_EVAS_LIBS@
+bin_ecore_evas_ecore_evas_convert_DEPENDENCIES = @USE_ECORE_EVAS_INTERNAL_LIBS@ @USE_EINA_INTERNAL_LIBS@ @USE_ECORE_INTERNAL_LIBS@ @USE_EVAS_INTERNAL_LIBS@
+
+bin_ecore_evas_eetpack_SOURCES = bin/ecore_evas/eetpack.c
+bin_ecore_evas_eetpack_CPPFLAGS = -I$(top_builddir)/src/lib/efl @ECORE_EVAS_CFLAGS@ @EINA_CFLAGS@ @EET_CFLAGS@ @EVAS_CFLAGS@
+bin_ecore_evas_eetpack_LDADD = @USE_ECORE_EVAS_LIBS@ @USE_EINA_LIBS@ @USE_EET_LIBS@ @USE_EVAS_LIBS@
+bin_ecore_evas_eetpack_DEPENDENCIES = @USE_ECORE_EVAS_INTERNAL_LIBS@ @USE_EINA_INTERNAL_LIBS@ @USE_EET_INTERNAL_LIBS@ @USE_EVAS_INTERNAL_LIBS@
diff --git a/src/Makefile_Ecore_FB.am b/src/Makefile_Ecore_FB.am
new file mode 100644
index 0000000000..1035e257bd
--- /dev/null
+++ b/src/Makefile_Ecore_FB.am
@@ -0,0 +1,23 @@
+if HAVE_ECORE_FB
+
+### Library
+
+lib_LTLIBRARIES += lib/ecore_fb/libecore_fb.la
+
+installed_ecorefbmainheadersdir = $(includedir)/ecore-fb-@VMAJ@
+dist_installed_ecorefbmainheaders_DATA = \
+lib/ecore_fb/Ecore_Fb.h
+
+lib_ecore_fb_libecore_fb_la_SOURCES = \
+lib/ecore_fb/ecore_fb.c \
+lib/ecore_fb/ecore_fb_li.c \
+lib/ecore_fb/ecore_fb_ts.c \
+lib/ecore_fb/ecore_fb_vt.c \
+lib/ecore_fb/ecore_fb_keytable.h \
+lib/ecore_fb/ecore_fb_private.h
+
+lib_ecore_fb_libecore_fb_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl @ECORE_FB_CFLAGS@
+lib_ecore_fb_libecore_fb_la_LIBADD = @ECORE_FB_LIBS@
+lib_ecore_fb_libecore_fb_la_DEPENDENCIES = @ECORE_FB_INTERNAL_LIBS@
+lib_ecore_fb_libecore_fb_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
+endif
diff --git a/src/Makefile_Ecore_File.am b/src/Makefile_Ecore_File.am
new file mode 100644
index 0000000000..8f5924504f
--- /dev/null
+++ b/src/Makefile_Ecore_File.am
@@ -0,0 +1,33 @@
+
+### Library
+
+lib_LTLIBRARIES += lib/ecore_file/libecore_file.la
+
+installed_ecorefilemainheadersdir = $(includedir)/ecore-file-@VMAJ@
+dist_installed_ecorefilemainheaders_DATA = \
+lib/ecore_file/Ecore_File.h
+
+lib_ecore_file_libecore_file_la_SOURCES = \
+lib/ecore_file/ecore_file.c \
+lib/ecore_file/ecore_file_download.c \
+lib/ecore_file/ecore_file_monitor.c \
+lib/ecore_file/ecore_file_path.c \
+lib/ecore_file/ecore_file_private.h
+
+if HAVE_INOTIFY
+lib_ecore_file_libecore_file_la_SOURCES += \
+lib/ecore_file/ecore_file_monitor_inotify.c
+else
+if HAVE_NOTIFY_WIN32
+lib_ecore_file_libecore_file_la_SOURCES += \
+lib/ecore_file/ecore_file_monitor_win32.c
+else
+lib_ecore_file_libecore_file_la_SOURCES += \
+lib/ecore_file/ecore_file_monitor_poll.c
+endif
+endif
+
+lib_ecore_file_libecore_file_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl @ECORE_FILE_CFLAGS@ -DEFL_BUILD
+lib_ecore_file_libecore_file_la_LIBADD = @ECORE_FILE_LIBS@
+lib_ecore_file_libecore_file_la_DEPENDENCIES = @ECORE_FILE_INTERNAL_LIBS@
+lib_ecore_file_libecore_file_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
diff --git a/src/Makefile_Ecore_IMF.am b/src/Makefile_Ecore_IMF.am
new file mode 100644
index 0000000000..ac099c38bb
--- /dev/null
+++ b/src/Makefile_Ecore_IMF.am
@@ -0,0 +1,165 @@
+
+### Library
+
+installed_ecoreimfmainheadersdir = $(includedir)/ecore-imf-@VMAJ@
+dist_installed_ecoreimfmainheaders_DATA = \
+lib/ecore_imf/Ecore_IMF.h
+
+lib_LTLIBRARIES += \
+lib/ecore_imf/libecore_imf.la
+
+lib_ecore_imf_libecore_imf_la_SOURCES = \
+lib/ecore_imf/ecore_imf.c \
+lib/ecore_imf/ecore_imf_context.c \
+lib/ecore_imf/ecore_imf_module.c \
+lib/ecore_imf/ecore_imf_private.h \
+static_libs/buildsystem/buildsystem.h \
+static_libs/buildsystem/buildsystem_autotools.c
+
+lib_ecore_imf_libecore_imf_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+-DPACKAGE_BIN_DIR=\"$(bindir)\" \
+-DPACKAGE_LIB_DIR=\"$(libdir)\" \
+-DPACKAGE_DATA_DIR=\"$(datadir)/ecore_imf\" \
+-DPACKAGE_BUILD_DIR=\"$(abs_top_builddir)\" \
+-DPACKAGE_SRC_DIR=\"$(abs_top_srcdir)\" \
+-DEFL_BUILD \
+@ECORE_IMF_CFLAGS@
+lib_ecore_imf_libecore_imf_la_LIBADD = @ECORE_IMF_LIBS@
+lib_ecore_imf_libecore_imf_la_DEPENDENCIES = @ECORE_IMF_INTERNAL_LIBS@
+lib_ecore_imf_libecore_imf_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
+
+### Modules
+
+# Ibus
+
+if BUILD_ECORE_IMF_IBUS
+ecoreimfibuspkgdir = $(libdir)/ecore_imf/modules/ibus/$(MODULE_ARCH)
+ecoreimfibuspkg_LTLIBRARIES = modules/ecore_imf/ibus/module.la
+
+# Workaround for broken parallel install support in automake (relink issue)
+# http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328
+install_ecoreimfibuspkgLTLIBRARIES = install-ecoreimfibuspkgLTLIBRARIES
+$(install_ecoreimfibuspkgLTLIBRARIES): install-libLTLIBRARIES
+
+modules_ecore_imf_ibus_module_la_SOURCES = \
+modules/ecore_imf/ibus/ibus_module.c \
+modules/ecore_imf/ibus/ibus_imcontext.c \
+modules/ecore_imf/ibus/ibus_imcontext.h
+modules_ecore_imf_ibus_module_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+@ECORE_IMF_CFLAGS@ \
+@ECORE_EVAS_CFLAGS@ \
+@ECORE_X_CFLAGS@ \
+@IBUS_CFLAGS@
+modules_ecore_imf_ibus_module_la_LIBADD = \
+@USE_ECORE_IMF_LIBS@ \
+@USE_ECORE_EVAS_LIBS@ \
+@USE_ECORE_X_LIBS@ \
+@IBUS_LIBS@
+modules_ecore_imf_ibus_module_la_DEPENDENCIES = \
+@USE_ECORE_IMF_INTERNAL_LIBS@ \
+@USE_ECORE_EVAS_INTERNAL_LIBS@ \
+@USE_ECORE_X_INTERNAL_LIBS@
+modules_ecore_imf_ibus_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
+modules_ecore_imf_ibus_module_la_LIBTOOLFLAGS = --tag=disable-static
+endif
+
+# Scim
+
+if BUILD_ECORE_IMF_SCIM
+ecoreimfscimpkgdir = $(libdir)/ecore_imf/modules/scim/$(MODULE_ARCH)
+ecoreimfscimpkg_LTLIBRARIES = modules/ecore_imf/scim/module.la
+
+# Workaround for broken parallel install support in automake (relink issue)
+# http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328
+install_ecoreimfscimpkgLTLIBRARIES = install-ecoreimfscimpkgLTLIBRARIES
+$(install_ecoreimfscimpkgLTLIBRARIES): install-libLTLIBRARIES
+
+modules_ecore_imf_scim_module_la_SOURCES = \
+modules/ecore_imf/scim/scim_module.cpp \
+modules/ecore_imf/scim/scim_imcontext.cpp \
+modules/ecore_imf/scim/scim_imcontext.h
+modules_ecore_imf_scim_module_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+@ECORE_IMF_CFLAGS@ \
+@ECORE_EVAS_CFLAGS@ \
+@ECORE_X_CFLAGS@ \
+@SCIM_CFLAGS@
+modules_ecore_imf_scim_module_la_LIBADD = \
+@USE_ECORE_IMF_LIBS@ \
+@USE_ECORE_EVAS_LIBS@ \
+@USE_ECORE_X_LIBS@ \
+@SCIM_LIBS@
+modules_ecore_imf_scim_module_la_DEPENDENCIES = \
+@USE_ECORE_IMF_INTERNAL_LIBS@ \
+@USE_ECORE_EVAS_INTERNAL_LIBS@ \
+@USE_ECORE_X_INTERNAL_LIBS@
+modules_ecore_imf_scim_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
+modules_ecore_imf_scim_module_la_LIBTOOLFLAGS = --tag=disable-static
+endif
+
+# Xim
+
+if BUILD_ECORE_IMF_XIM
+ecoreimfximpkgdir = $(libdir)/ecore_imf/modules/xim/$(MODULE_ARCH)
+ecoreimfximpkg_LTLIBRARIES = modules/ecore_imf/xim/module.la
+
+# Workaround for broken parallel install support in automake (relink issue)
+# http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328
+install_ecoreimfximpkgLTLIBRARIES = install-ecoreimfximpkgLTLIBRARIES
+$(install_ecoreimfximpkgLTLIBRARIES): install-libLTLIBRARIES
+
+modules_ecore_imf_xim_module_la_SOURCES = \
+modules/ecore_imf/xim/ecore_imf_xim.c
+modules_ecore_imf_xim_module_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+@ECORE_IMF_CFLAGS@ \
+@ECORE_X_CFLAGS@ \
+@ecore_imf_xim_cflags@
+modules_ecore_imf_xim_module_la_LIBADD = \
+@USE_ECORE_IMF_LIBS@ \
+@USE_ECORE_X_LIBS@ \
+@ecore_imf_xim_libs@
+modules_ecore_imf_xim_module_la_DEPENDENCIES = \
+@USE_ECORE_IMF_INTERNAL_LIBS@ \
+@USE_ECORE_X_INTERNAL_LIBS@
+modules_ecore_imf_xim_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
+modules_ecore_imf_xim_module_la_LIBTOOLFLAGS = --tag=disable-static
+endif
+
+# Wayland
+if BUILD_ECORE_IMF_WAYLAND
+ecoreimfwaylandpkgdir = $(libdir)/ecore_imf/modules/wayland/$(MODULE_ARCH)
+ecoreimfwaylandpkg_LTLIBRARIES = modules/ecore_imf/wayland/module.la
+
+# Workaround for broken parallel install support in automake (relink issue)
+# http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328
+install_ecoreimfwaylandpkgLTLIBRARIES = install-ecoreimfwaylandpkgLTLIBRARIES
+$(install_ecoreimfwaylandpkgLTLIBRARIES): install-libLTLIBRARIES
+
+modules_ecore_imf_wayland_module_la_SOURCES = \
+modules/ecore_imf/wayland/wayland_module.c \
+modules/ecore_imf/wayland/wayland_imcontext.c \
+modules/ecore_imf/wayland/wayland_imcontext.h
+
+nodist_modules_ecore_imf_wayland_module_la_SOURCES = \
+modules/ecore_imf/wayland/text-input-unstable-v1-client-protocol.h \
+modules/ecore_imf/wayland/text-input-unstable-v1-protocol.c
+
+BUILT_SOURCES += \
+modules/ecore_imf/wayland/text-input-unstable-v1-client-protocol.h \
+modules/ecore_imf/wayland/text-input-unstable-v1-protocol.c
+
+modules_ecore_imf_wayland_module_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+-I$(top_builddir)/src/modules/ecore_imf/wayland \
+@ECORE_IMF_CFLAGS@ \
+@ECORE_EVAS_CFLAGS@ \
+@ECORE_WL2_CFLAGS@
+modules_ecore_imf_wayland_module_la_LIBADD = \
+@USE_ECORE_IMF_LIBS@ \
+@USE_ECORE_EVAS_LIBS@ \
+@USE_ECORE_WL2_LIBS@
+modules_ecore_imf_wayland_module_la_DEPENDENCIES = \
+@USE_ECORE_IMF_INTERNAL_LIBS@ \
+@USE_ECORE_EVAS_INTERNAL_LIBS@ \
+@USE_ECORE_WL2_INTERNAL_LIBS@
+modules_ecore_imf_wayland_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
+modules_ecore_imf_wayland_module_la_LIBTOOLFLAGS = --tag=disable-static
+endif
diff --git a/src/Makefile_Ecore_IMF_Evas.am b/src/Makefile_Ecore_IMF_Evas.am
new file mode 100644
index 0000000000..b2fd780713
--- /dev/null
+++ b/src/Makefile_Ecore_IMF_Evas.am
@@ -0,0 +1,15 @@
+
+### Library
+
+installed_ecoreimfevasmainheadersdir = $(includedir)/ecore-imf-evas-@VMAJ@
+dist_installed_ecoreimfevasmainheaders_DATA = \
+lib/ecore_imf_evas/Ecore_IMF_Evas.h
+
+lib_LTLIBRARIES += \
+lib/ecore_imf_evas/libecore_imf_evas.la
+
+lib_ecore_imf_evas_libecore_imf_evas_la_SOURCES = lib/ecore_imf_evas/ecore_imf_evas.c
+lib_ecore_imf_evas_libecore_imf_evas_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl @ECORE_IMF_EVAS_CFLAGS@ -DEFL_BUILD
+lib_ecore_imf_evas_libecore_imf_evas_la_LIBADD = @ECORE_IMF_EVAS_LIBS@
+lib_ecore_imf_evas_libecore_imf_evas_la_DEPENDENCIES = @ECORE_IMF_EVAS_INTERNAL_LIBS@
+lib_ecore_imf_evas_libecore_imf_evas_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
diff --git a/src/Makefile_Ecore_Input.am b/src/Makefile_Ecore_Input.am
new file mode 100644
index 0000000000..0dc407bab5
--- /dev/null
+++ b/src/Makefile_Ecore_Input.am
@@ -0,0 +1,21 @@
+
+### Library
+
+lib_LTLIBRARIES += \
+lib/ecore_input/libecore_input.la
+
+installed_ecoreinputmainheadersdir = $(includedir)/ecore-input-@VMAJ@
+dist_installed_ecoreinputmainheaders_DATA = \
+lib/ecore_input/Ecore_Input.h
+
+lib_ecore_input_libecore_input_la_SOURCES = \
+lib/ecore_input/ecore_input.c \
+lib/ecore_input/ecore_input_compose.c \
+lib/ecore_input/ecore_input_joystick.c \
+lib/ecore_input/ecore_input_compose.h \
+lib/ecore_input/ecore_input_private.h
+
+lib_ecore_input_libecore_input_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl @ECORE_INPUT_CFLAGS@ -DEFL_BUILD
+lib_ecore_input_libecore_input_la_LIBADD = @ECORE_INPUT_LIBS@
+lib_ecore_input_libecore_input_la_DEPENDENCIES = @ECORE_INPUT_INTERNAL_LIBS@
+lib_ecore_input_libecore_input_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
diff --git a/src/Makefile_Ecore_Input_Evas.am b/src/Makefile_Ecore_Input_Evas.am
new file mode 100644
index 0000000000..23bcb92cda
--- /dev/null
+++ b/src/Makefile_Ecore_Input_Evas.am
@@ -0,0 +1,18 @@
+
+### Library
+
+lib_LTLIBRARIES += \
+lib/ecore_input_evas/libecore_input_evas.la
+
+installed_ecoreinputevasmainheadersdir = $(includedir)/ecore-input-evas-@VMAJ@
+dist_installed_ecoreinputevasmainheaders_DATA = \
+lib/ecore_input_evas/Ecore_Input_Evas.h
+
+lib_ecore_input_evas_libecore_input_evas_la_SOURCES = \
+lib/ecore_input_evas/ecore_input_evas.c \
+lib/ecore_input_evas/ecore_input_evas_private.h
+
+lib_ecore_input_evas_libecore_input_evas_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl @ECORE_INPUT_EVAS_CFLAGS@ -DEFL_BUILD
+lib_ecore_input_evas_libecore_input_evas_la_LIBADD = @ECORE_INPUT_EVAS_LIBS@
+lib_ecore_input_evas_libecore_input_evas_la_DEPENDENCIES = @ECORE_INPUT_EVAS_INTERNAL_LIBS@
+lib_ecore_input_evas_libecore_input_evas_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
diff --git a/src/Makefile_Ecore_Ipc.am b/src/Makefile_Ecore_Ipc.am
new file mode 100644
index 0000000000..0f09209f47
--- /dev/null
+++ b/src/Makefile_Ecore_Ipc.am
@@ -0,0 +1,17 @@
+
+### Library
+
+lib_LTLIBRARIES += lib/ecore_ipc/libecore_ipc.la
+
+installed_ecoreipcmainheadersdir = $(includedir)/ecore-ipc-@VMAJ@
+dist_installed_ecoreipcmainheaders_DATA = \
+lib/ecore_ipc/Ecore_Ipc.h
+
+lib_ecore_ipc_libecore_ipc_la_SOURCES = \
+lib/ecore_ipc/ecore_ipc.c \
+lib/ecore_ipc/ecore_ipc_private.h
+
+lib_ecore_ipc_libecore_ipc_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl @ECORE_IPC_CFLAGS@ -DEFL_BUILD
+lib_ecore_ipc_libecore_ipc_la_LIBADD = @ECORE_IPC_LIBS@ @EVIL_LIBS@
+lib_ecore_ipc_libecore_ipc_la_DEPENDENCIES = @ECORE_IPC_INTERNAL_LIBS@
+lib_ecore_ipc_libecore_ipc_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
diff --git a/src/Makefile_Ecore_Js.am b/src/Makefile_Ecore_Js.am
new file mode 100644
index 0000000000..0c73b99aa5
--- /dev/null
+++ b/src/Makefile_Ecore_Js.am
@@ -0,0 +1,18 @@
+
+### Library
+
+if HAVE_JS
+installed_ecorejsheadersdir = $(includedir)/ecore-js-@VMAJ@
+dist_installed_ecorejsheaders_DATA = \
+bindings/js/ecore_js/Ecore_Js.hh \
+bindings/js/ecore_js/ecore_js_init.hh \
+bindings/js/ecore_js/ecore_js_mainloop.hh \
+bindings/js/ecore_js/ecore_js_timer.hh \
+bindings/js/ecore_js/ecore_js_event.hh \
+bindings/js/ecore_js/ecore_js_job.hh \
+bindings/js/ecore_js/ecore_js_idle.hh \
+bindings/js/ecore_js/ecore_js_animator.hh \
+bindings/js/ecore_js/ecore_js_poller.hh \
+bindings/js/ecore_js/ecore_js_throttle.hh
+endif
+
diff --git a/src/Makefile_Ecore_SDL.am b/src/Makefile_Ecore_SDL.am
new file mode 100644
index 0000000000..88eec1bd10
--- /dev/null
+++ b/src/Makefile_Ecore_SDL.am
@@ -0,0 +1,20 @@
+if HAVE_ECORE_SDL
+
+### Library
+
+lib_LTLIBRARIES += lib/ecore_sdl/libecore_sdl.la
+
+installed_ecoresdlmainheadersdir = $(includedir)/ecore-sdl-@VMAJ@
+dist_installed_ecoresdlmainheaders_DATA = \
+lib/ecore_sdl/Ecore_Sdl.h
+
+lib_ecore_sdl_libecore_sdl_la_SOURCES = \
+lib/ecore_sdl/ecore_sdl.c \
+lib/ecore_sdl/Ecore_Sdl_Keys.h \
+lib/ecore_sdl/ecore_sdl_private.h
+
+lib_ecore_sdl_libecore_sdl_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl @ECORE_SDL_CFLAGS@ -DEFL_BUILD
+lib_ecore_sdl_libecore_sdl_la_LIBADD = @ECORE_SDL_LIBS@
+lib_ecore_sdl_libecore_sdl_la_DEPENDENCIES = @ECORE_SDL_INTERNAL_LIBS@
+lib_ecore_sdl_libecore_sdl_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
+endif
diff --git a/src/Makefile_Ecore_Wayland.am b/src/Makefile_Ecore_Wayland.am
new file mode 100644
index 0000000000..6099f34cd4
--- /dev/null
+++ b/src/Makefile_Ecore_Wayland.am
@@ -0,0 +1,33 @@
+if HAVE_ECORE_WAYLAND
+
+### Library
+
+lib_LTLIBRARIES += lib/ecore_wayland/libecore_wayland.la
+
+installed_ecorewaylandmainheadersdir = $(includedir)/ecore-wayland-@VMAJ@
+dist_installed_ecorewaylandmainheaders_DATA = \
+lib/ecore_wayland/Ecore_Wayland.h
+
+lib_ecore_wayland_libecore_wayland_la_SOURCES = \
+lib/ecore_wayland/ecore_wl.c \
+lib/ecore_wayland/ecore_wl_dnd.c \
+lib/ecore_wayland/ecore_wl_input.c \
+lib/ecore_wayland/ecore_wl_output.c \
+lib/ecore_wayland/ecore_wl_window.c \
+lib/ecore_wayland/ecore_wl_subsurf.c \
+lib/ecore_wayland/ecore_wl_private.h \
+lib/ecore_wayland/subsurface-protocol.c \
+lib/ecore_wayland/subsurface-client-protocol.h \
+lib/ecore_wayland/ivi-application-protocol.c \
+lib/ecore_wayland/ivi-application-client-protocol.h \
+lib/ecore_wayland/xdg-shell-client-protocol.h \
+lib/ecore_wayland/xdg-shell-protocol.c \
+lib/ecore_wayland/session-recovery-client-protocol.h \
+lib/ecore_wayland/session-recovery-protocol.c
+
+lib_ecore_wayland_libecore_wayland_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl @ECORE_WAYLAND_CFLAGS@
+lib_ecore_wayland_libecore_wayland_la_LIBADD = @ECORE_WAYLAND_LIBS@
+lib_ecore_wayland_libecore_wayland_la_DEPENDENCIES = @ECORE_WAYLAND_INTERNAL_LIBS@
+lib_ecore_wayland_libecore_wayland_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
+
+endif
diff --git a/src/Makefile_Ecore_Win32.am b/src/Makefile_Ecore_Win32.am
new file mode 100644
index 0000000000..817eabe90b
--- /dev/null
+++ b/src/Makefile_Ecore_Win32.am
@@ -0,0 +1,35 @@
+if HAVE_WIN32
+
+### Library
+
+lib_LTLIBRARIES += lib/ecore_win32/libecore_win32.la
+
+installed_ecorewin32mainheadersdir = $(includedir)/ecore-win32-@VMAJ@
+dist_installed_ecorewin32mainheaders_DATA = \
+lib/ecore_win32/Ecore_Win32.h
+
+lib_ecore_win32_libecore_win32_la_SOURCES = \
+lib/ecore_win32/ecore_win32.c \
+lib/ecore_win32/ecore_win32_clipboard.c \
+lib/ecore_win32/ecore_win32_cursor.c \
+lib/ecore_win32/ecore_win32_dnd.c \
+lib/ecore_win32/ecore_win32_dnd_enumformatetc.cpp \
+lib/ecore_win32/ecore_win32_dnd_data_object.cpp \
+lib/ecore_win32/ecore_win32_dnd_drop_source.cpp \
+lib/ecore_win32/ecore_win32_dnd_drop_target.cpp \
+lib/ecore_win32/ecore_win32_event.c \
+lib/ecore_win32/ecore_win32_monitor.c \
+lib/ecore_win32/ecore_win32_window.c \
+lib/ecore_win32/ecore_win32_private.h \
+lib/ecore_win32/ecore_win32_cursor_x11.h \
+lib/ecore_win32/ecore_win32_dnd_enumformatetc.h \
+lib/ecore_win32/ecore_win32_dnd_data_object.h \
+lib/ecore_win32/ecore_win32_dnd_drop_source.h \
+lib/ecore_win32/ecore_win32_dnd_drop_target.h \
+lib/ecore_win32/ecore_win32_keysym_table.h
+
+lib_ecore_win32_libecore_win32_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl @ECORE_WIN32_CFLAGS@ -DEFL_BUILD
+lib_ecore_win32_libecore_win32_la_LIBADD = @ECORE_WIN32_LIBS@
+lib_ecore_win32_libecore_win32_la_DEPENDENCIES = @ECORE_WIN32_INTERNAL_LIBS@
+lib_ecore_win32_libecore_win32_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
+endif
diff --git a/src/Makefile_Ecore_Wl2.am b/src/Makefile_Ecore_Wl2.am
new file mode 100644
index 0000000000..452e1454a3
--- /dev/null
+++ b/src/Makefile_Ecore_Wl2.am
@@ -0,0 +1,100 @@
+if HAVE_ECORE_WL2
+
+### Library
+
+lib_LTLIBRARIES += lib/ecore_wl2/libecore_wl2.la
+
+installed_ecorewl2mainheadersdir = $(includedir)/ecore-wl2-@VMAJ@
+dist_installed_ecorewl2mainheaders_DATA = lib/ecore_wl2/Ecore_Wl2.h
+
+lib_ecore_wl2_libecore_wl2_la_SOURCES = \
+lib/ecore_wl2/ecore_wl2_subsurf.c \
+lib/ecore_wl2/ecore_wl2_dnd.c \
+lib/ecore_wl2/ecore_wl2_window.c \
+lib/ecore_wl2/ecore_wl2_input.c \
+lib/ecore_wl2/ecore_wl2_output.c \
+lib/ecore_wl2/ecore_wl2_display.c \
+lib/ecore_wl2/ecore_wl2.c \
+lib/ecore_wl2/ecore_wl2_private.h \
+lib/ecore_wl2/ecore_wl2_buffer.c \
+lib/ecore_wl2/ecore_wl2_surface.c \
+static_libs/libdrm/drm_fourcc.h \
+static_libs/libdrm/drm.h \
+static_libs/libdrm/drm_mode.h \
+static_libs/libdrm/exynos_drm.h \
+static_libs/libdrm/exynos_drmif.h \
+static_libs/libdrm/i915_drm.h \
+static_libs/libdrm/intel_bufmgr.h \
+static_libs/libdrm/vc4_drm.h \
+static_libs/libdrm/LICENSE \
+static_libs/buildsystem/buildsystem.h \
+static_libs/buildsystem/buildsystem_autotools.c
+
+
+nodist_lib_ecore_wl2_libecore_wl2_la_SOURCES = \
+lib/ecore_wl2/efl-aux-hints-protocol.c \
+lib/ecore_wl2/efl-aux-hints-client-protocol.h \
+lib/ecore_wl2/teamwork-protocol.c \
+lib/ecore_wl2/teamwork-client-protocol.h \
+lib/ecore_wl2/session-recovery-client-protocol.h \
+lib/ecore_wl2/session-recovery-protocol.c \
+lib/ecore_wl2/www-client-protocol.h \
+lib/ecore_wl2/www-protocol.c \
+lib/ecore_wl2/linux-dmabuf-unstable-v1-protocol.c \
+lib/ecore_wl2/linux-dmabuf-unstable-v1-client-protocol.h \
+lib/ecore_wl2/xdg-shell-client-protocol.h \
+lib/ecore_wl2/xdg-shell-protocol.c \
+lib/ecore_wl2/xdg-shell-unstable-v6-client-protocol.h \
+lib/ecore_wl2/xdg-shell-unstable-v6-protocol.c \
+lib/ecore_wl2/efl-hints-client-protocol.h \
+lib/ecore_wl2/efl-hints-protocol.c
+
+lib_ecore_wl2_libecore_wl2_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+@ECORE_WL2_CFLAGS@ \
+-I$(top_srcdir)/src/static_libs/libdrm \
+-DPACKAGE_LIB_DIR=\"$(libdir)\" \
+-DPACKAGE_SRC_DIR=\"$(abs_top_srcdir)\" \
+-DPACKAGE_BUILD_DIR=\"$(abs_top_builddir)\" \
+-DMODULE_ARCH=\"$(MODULE_ARCH)\"
+lib_ecore_wl2_libecore_wl2_la_LIBADD = @ECORE_WL2_LIBS@
+lib_ecore_wl2_libecore_wl2_la_DEPENDENCIES = @ECORE_WL2_INTERNAL_LIBS@
+lib_ecore_wl2_libecore_wl2_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
+
+BUILT_SOURCES += \
+lib/ecore_wl2/efl-aux-hints-protocol.c \
+lib/ecore_wl2/efl-aux-hints-client-protocol.h \
+ lib/ecore_wl2/www-client-protocol.h \
+ lib/ecore_wl2/www-protocol.c \
+ lib/ecore_wl2/teamwork-protocol.c \
+ lib/ecore_wl2/teamwork-client-protocol.h \
+ lib/ecore_wl2/xdg-shell-client-protocol.h \
+ lib/ecore_wl2/xdg-shell-protocol.c \
+ lib/ecore_wl2/xdg-shell-unstable-v6-client-protocol.h \
+ lib/ecore_wl2/xdg-shell-unstable-v6-protocol.c \
+ lib/ecore_wl2/linux-dmabuf-unstable-v1-protocol.c \
+ lib/ecore_wl2/linux-dmabuf-unstable-v1-client-protocol.h \
+ lib/ecore_wl2/session-recovery-protocol.c \
+ lib/ecore_wl2/session-recovery-client-protocol.h \
+lib/ecore_wl2/efl-hints-client-protocol.h \
+lib/ecore_wl2/efl-hints-protocol.c
+
+DMABUFSOURCES = modules/ecore_wl2/engines/dmabuf/ecore_wl2_surface_module_dmabuf.c
+ecorewl2enginedmabufpkgdir = $(libdir)/ecore_wl2/engines/dmabuf/$(MODULE_ARCH)
+ecorewl2enginedmabufpkg_LTLIBRARIES = modules/ecore_wl2/engines/dmabuf/module.la
+
+# Workaround for broken parallel install support in automake (relink issue)
+# http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328
+install_ecorewl2enginedmabufpkgLTLIBRARIES = install-ecorewl2enginedmabufpkgLTLIBRARIES
+$(install_ecorewl2enginedmabufpkgLTLIBRARIES): install-libLTLIBRARIES
+
+modules_ecore_wl2_engines_dmabuf_module_la_SOURCES = $(DMABUFSOURCES)
+modules_ecore_wl2_engines_dmabuf_module_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl @ECORE_WL2_CFLAGS@
+modules_ecore_wl2_engines_dmabuf_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@ @USE_ECORE_WL2_LIBS@
+modules_ecore_wl2_engines_dmabuf_module_la_DEPENDENCIES = lib/ecore_wl2/libecore_wl2.la
+modules_ecore_wl2_engines_dmabuf_module_la_LIBTOOLFLAGS = --tag=disable-static
+
+endif
+
+#We want this in the release tarball even if the builder isn't compiling
+#wayland support.
+EXTRA_DIST2 += lib/ecore_wl2/window_v6.x
diff --git a/src/Makefile_Ecore_X.am b/src/Makefile_Ecore_X.am
new file mode 100644
index 0000000000..636f745d90
--- /dev/null
+++ b/src/Makefile_Ecore_X.am
@@ -0,0 +1,62 @@
+if HAVE_ECORE_X
+
+### Library
+
+lib_LTLIBRARIES += lib/ecore_x/libecore_x.la
+
+installed_ecorexmainheadersdir = $(includedir)/ecore-x-@VMAJ@
+dist_installed_ecorexmainheaders_DATA = \
+lib/ecore_x/Ecore_X.h \
+lib/ecore_x/Ecore_X_Atoms.h \
+lib/ecore_x/Ecore_X_Cursor.h
+
+lib_ecore_x_libecore_x_la_SOURCES = \
+lib/ecore_x/ecore_x_atoms_decl.h \
+lib/ecore_x/ecore_x.c \
+lib/ecore_x/ecore_x_dnd.c \
+lib/ecore_x/ecore_x_sync.c \
+lib/ecore_x/ecore_x_randr.c \
+lib/ecore_x/ecore_x_fixes.c \
+lib/ecore_x/ecore_x_damage.c \
+lib/ecore_x/ecore_x_composite.c \
+lib/ecore_x/ecore_x_error.c \
+lib/ecore_x/ecore_x_events.c \
+lib/ecore_x/ecore_x_icccm.c \
+lib/ecore_x/ecore_x_keygrab.c \
+lib/ecore_x/ecore_x_netwm.c \
+lib/ecore_x/ecore_x_mwm.c \
+lib/ecore_x/ecore_x_e.c \
+lib/ecore_x/ecore_x_selection.c \
+lib/ecore_x/ecore_x_window.c \
+lib/ecore_x/ecore_x_window_prop.c \
+lib/ecore_x/ecore_x_window_shape.c \
+lib/ecore_x/ecore_x_pixmap.c \
+lib/ecore_x/ecore_x_present.c \
+lib/ecore_x/ecore_x_gc.c \
+lib/ecore_x/ecore_x_xinerama.c \
+lib/ecore_x/ecore_x_screensaver.c \
+lib/ecore_x/ecore_x_dpms.c \
+lib/ecore_x/ecore_x_drawable.c \
+lib/ecore_x/ecore_x_cursor.c \
+lib/ecore_x/ecore_x_test.c \
+lib/ecore_x/ecore_x_atoms.c \
+lib/ecore_x/ecore_x_region.c \
+lib/ecore_x/ecore_x_image.c \
+lib/ecore_x/ecore_x_xi2.c \
+lib/ecore_x/ecore_x_vsync.c \
+lib/ecore_x/ecore_x_gesture.c \
+lib/ecore_x/ecore_x_private.h
+
+lib_ecore_x_libecore_x_la_CPPFLAGS = \
+-I$(top_builddir)/src/lib/efl \
+-DEFL_BUILD \
+@ECORE_X_CFLAGS@ @ECORE_CON_CFLAGS@ \
+-DPACKAGE_BIN_DIR=\"$(bindir)\" \
+-DPACKAGE_LIB_DIR=\"$(libdir)\" \
+-DPACKAGE_DATA_DIR=\"$(datadir)/ecore_x\"
+
+lib_ecore_x_libecore_x_la_LIBADD = @ECORE_X_LIBS@ @USE_ECORE_CON_LIBS@
+lib_ecore_x_libecore_x_la_DEPENDENCIES = @ECORE_X_INTERNAL_LIBS@ @USE_ECORE_CON_INTERNAL_LIBS@
+lib_ecore_x_libecore_x_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
+
+endif
diff --git a/src/Makefile_Ector.am b/src/Makefile_Ector.am
new file mode 100644
index 0000000000..52a6047067
--- /dev/null
+++ b/src/Makefile_Ector.am
@@ -0,0 +1,219 @@
+
+### Library
+ector_eolian_files_generic = \
+ lib/ector/ector_surface.eo \
+ lib/ector/ector_buffer.eo \
+ lib/ector/ector_renderer.eo \
+ lib/ector/ector_renderer_shape.eo \
+ lib/ector/ector_renderer_gradient.eo \
+ lib/ector/ector_renderer_gradient_radial.eo \
+ lib/ector/ector_renderer_gradient_linear.eo
+ector_eolian_generic_h = $(ector_eolian_files_generic:%.eo=%.eo.h)
+
+# Handle cairo backend
+ector_eolian_files_cairo = \
+ lib/ector/cairo/ector_cairo_surface.eo \
+ lib/ector/cairo/ector_cairo_software_surface.eo \
+ lib/ector/cairo/ector_renderer_cairo.eo \
+ lib/ector/cairo/ector_renderer_cairo_shape.eo \
+ lib/ector/cairo/ector_renderer_cairo_gradient_linear.eo \
+ lib/ector/cairo/ector_renderer_cairo_gradient_radial.eo
+ector_eolian_cairo_h = $(ector_eolian_files_cairo:%.eo=%.eo.h)
+
+# Handle default software backend
+ector_eolian_files_software = \
+ lib/ector/software/ector_software_surface.eo \
+ lib/ector/software/ector_software_buffer.eo \
+ lib/ector/software/ector_software_buffer_base.eo \
+ lib/ector/software/ector_renderer_software.eo \
+ lib/ector/software/ector_renderer_software_shape.eo \
+ lib/ector/software/ector_renderer_software_gradient_radial.eo \
+ lib/ector/software/ector_renderer_software_gradient_linear.eo
+ector_eolian_software_h = $(ector_eolian_files_software:%.eo=%.eo.h)
+
+# Handle gl backend
+ector_eolian_files_gl = \
+ lib/ector/gl/ector_gl_surface.eo \
+ lib/ector/gl/ector_gl_buffer.eo \
+ lib/ector/gl/ector_renderer_gl.eo \
+ lib/ector/gl/ector_renderer_gl_shape.eo \
+ lib/ector/gl/ector_renderer_gl_gradient_radial.eo \
+ lib/ector/gl/ector_renderer_gl_gradient_linear.eo
+ector_eolian_gl_h = $(ector_eolian_files_gl:%.eo=%.eo.h)
+
+ector_eolian_type_files = \
+ lib/ector/ector_types.eot
+
+ector_eolian_files = \
+ $(ector_eolian_files_generic) \
+ $(ector_eolian_files_cairo) \
+ $(ector_eolian_files_software) \
+ $(ector_eolian_files_gl)
+
+ector_eolian_c = $(ector_eolian_files:%.eo=%.eo.c)
+ector_eolian_h = $(ector_eolian_files:%.eo=%.eo.h) \
+ $(ector_eolian_type_files:%.eot=%.eot.h)
+
+BUILT_SOURCES += \
+ $(ector_eolian_c) \
+ $(ector_eolian_h)
+
+if INSTALL_EO_FILES
+ectoreolianfilesdir = $(datadir)/eolian/include/ector-@VMAJ@
+ectoreolianfiles_DATA = $(ector_eolian_files) $(ector_eolian_type_files)
+endif
+
+EXTRA_DIST2 += $(ector_eolian_files) $(ector_eolian_type_files) \
+lib/ector/Ector.h \
+lib/ector/ector_util.h \
+lib/ector/ector_surface.h \
+lib/ector/ector_buffer.h \
+lib/ector/ector_renderer.h \
+lib/ector/cairo/Ector_Cairo.h \
+lib/ector/software/Ector_Software.h \
+lib/ector/gl/Ector_GL.h
+
+lib_LTLIBRARIES += lib/ector/libector.la
+
+# And the generic implementation
+
+lib_ector_libector_la_SOURCES = \
+lib/ector/ector_main.c \
+lib/ector/ector_gl_internal.h \
+lib/ector/ector_buffer.c \
+lib/ector/ector_renderer_shape.c \
+lib/ector/ector_renderer.c \
+lib/ector/ector_renderer_gradient.c \
+lib/ector/ector_renderer_gradient_radial.c \
+lib/ector/ector_renderer_gradient_linear.c
+
+# And now the cairo backend
+lib_ector_libector_la_SOURCES += \
+lib/ector/cairo/ector_renderer_cairo_gradient_linear.c \
+lib/ector/cairo/ector_renderer_cairo_gradient_radial.c \
+lib/ector/cairo/ector_renderer_cairo_shape.c \
+lib/ector/cairo/ector_renderer_cairo.c \
+lib/ector/cairo/ector_cairo_software_surface.c \
+lib/ector/cairo/ector_cairo_surface.c
+
+# SW draw static lib
+lib_ector_libector_la_SOURCES += \
+static_libs/draw/draw_main_sse2.c \
+static_libs/draw/draw_main.c \
+static_libs/draw/draw_main_neon.c \
+static_libs/rg_etc/rg_etc1.c \
+static_libs/rg_etc/rg_etc2.c \
+static_libs/rg_etc/rg_etc1.h \
+static_libs/rg_etc/etc2_encoder.c
+
+# Triangulator static lib
+triangulator_sources = \
+static_libs/triangulator/triangulator_stroker.c \
+static_libs/triangulator/triangulator_stroker.h \
+static_libs/triangulator/triangulator_simple.c \
+static_libs/triangulator/triangulator_simple.h \
+$(NULL)
+
+# And the default software backend
+lib_ector_libector_la_SOURCES += \
+lib/ector/software/ector_renderer_software_gradient_linear.c \
+lib/ector/software/ector_renderer_software_gradient_radial.c \
+lib/ector/software/ector_renderer_software_shape.c \
+lib/ector/software/ector_software_gradient.c \
+lib/ector/software/ector_software_gradient_sse3.c \
+lib/ector/software/ector_software_gradient.h \
+lib/ector/software/ector_software_rasterizer.c \
+lib/ector/software/ector_software_surface.c \
+lib/ector/software/ector_software_buffer.c \
+static_libs/freetype/sw_ft_math.c \
+static_libs/freetype/sw_ft_raster.c \
+static_libs/freetype/sw_ft_stroker.c \
+$(triangulator_sources)
+
+# And now the gl backend
+lib_ector_libector_la_SOURCES += \
+lib/ector/gl/ector_renderer_gl_gradient_linear.c \
+lib/ector/gl/ector_renderer_gl_gradient_radial.c \
+lib/ector/gl/ector_renderer_gl_shape.c \
+lib/ector/gl/ector_renderer_gl.c \
+lib/ector/gl/ector_gl_buffer.c \
+lib/ector/gl/ector_gl_surface.c \
+lib/ector/gl/ector_gl_private.h \
+lib/ector/gl/shader/ector_gl_shaders.x \
+lib/ector/gl/ector_gl_shader.c
+
+ECTOR_GL_SHADERS_GEN = \
+lib/ector/gl/shader/gen_shaders.sh \
+lib/ector/gl/shader/fragment.glsl \
+lib/ector/gl/shader/vertex.glsl \
+lib/ector/gl/shader/include.glsl
+
+lib/ector/gl/shader/ector_gl_shaders.x: $(ECTOR_GL_SHADERS_GEN)
+ @echo " SHADERS $@"
+ @sh $(srcdir)/lib/ector/gl/shader/gen_shaders.sh
+
+lib_ector_libector_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+-I$(top_builddir)/src/lib \
+-I$(top_builddir)/src/lib/ector \
+-I$(top_builddir)/src/lib/ector/cairo \
+-I$(top_builddir)/src/lib/ector/software \
+-I$(top_builddir)/src/lib/ector/gl \
+-I$(top_srcdir)/src/static_libs/freetype \
+-I$(top_srcdir)/src/static_libs/draw \
+-I$(top_srcdir)/src/static_libs/triangulator \
+-DEFL_BUILD \
+@ECTOR_CFLAGS@ \
+-DPACKAGE_BIN_DIR=\"$(bindir)\" \
+-DPACKAGE_LIB_DIR=\"$(libdir)\" \
+-DPACKAGE_DATA_DIR=\"$(datadir)/ector\" \
+-DEFL_BETA_API_SUPPORT=1 \
+@VALGRIND_CFLAGS@ \
+@SSE3_CFLAGS@
+
+lib_ector_libector_la_LIBADD = @ECTOR_LIBS@
+lib_ector_libector_la_DEPENDENCIES = @ECTOR_INTERNAL_LIBS@
+lib_ector_libector_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
+
+### Unit tests
+
+if EFL_ENABLE_TESTS
+
+check_PROGRAMS += tests/ector/suite/ector_suite tests/ector/cxx_compile_test/cxx_compile_test
+TESTS += tests/ector/suite/ector_suite
+
+tests_ector_suite_ector_suite_SOURCES = \
+tests/ector/suite/ector_suite.c \
+tests/ector/suite/ector_suite.h \
+tests/ector/suite/ector_test_init.c
+
+tests_ector_cxx_compile_test_cxx_compile_test_SOURCES = tests/ector/cxx_compile_test/cxx_compile_test.cxx
+tests_ector_cxx_compile_test_cxx_compile_test_CPPFLAGS = -I$(top_builddir)/src/lib/efl @ECTOR_CFLAGS@
+tests_ector_cxx_compile_test_cxx_compile_test_LDADD = @USE_ECTOR_LIBS@
+tests_ector_cxx_compile_test_cxx_compile_test_DEPENDENCIES = @USE_ECTOR_INTERNAL_LIBS@
+
+
+tests_ector_suite_ector_suite_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+-I$(top_srcdir)/src/tests/ector \
+-DTESTS_WD=\"`pwd`\" \
+-DTESTS_SRC_DIR=\"$(top_srcdir)/src/tests/ector/suite\" \
+-DPACKAGE_BUILD_DIR=\"$(abs_top_builddir)/\" \
+-DTESTS_BUILD_DIR=\"$(top_builddir)/src/tests/ector\" \
+@CHECK_CFLAGS@ \
+@ECTOR_CFLAGS@
+tests_ector_suite_ector_suite_LDADD = @CHECK_LIBS@ @USE_ECTOR_LIBS@
+tests_ector_suite_ector_suite_DEPENDENCIES = @USE_ECTOR_INTERNAL_LIBS@
+
+endif
+
+EXTRA_DIST2 += \
+lib/ector/ector_private.h \
+lib/ector/cairo/ector_cairo_private.h \
+lib/ector/software/ector_software_private.h \
+static_libs/freetype/sw_ft_math.h \
+static_libs/freetype/sw_ft_raster.h \
+static_libs/freetype/sw_ft_stroker.h \
+static_libs/freetype/sw_ft_types.h \
+static_libs/draw/draw.h \
+static_libs/draw/draw_private.h \
+$(ECTOR_GL_SHADERS_GEN)
+
diff --git a/src/Makefile_Edje.am b/src/Makefile_Edje.am
new file mode 100644
index 0000000000..827e7237f5
--- /dev/null
+++ b/src/Makefile_Edje.am
@@ -0,0 +1,404 @@
+
+### Library
+
+edje_eolian_files = \
+ lib/edje/efl_layout_calc.eo \
+ lib/edje/efl_layout_signal.eo \
+ lib/edje/efl_layout_group.eo \
+ lib/edje/efl_canvas_layout.eo \
+ lib/edje/efl_canvas_layout_part.eo \
+ lib/edje/efl_canvas_layout_part_box.eo \
+ lib/edje/efl_canvas_layout_part_external.eo \
+ lib/edje/efl_canvas_layout_part_swallow.eo \
+ lib/edje/efl_canvas_layout_part_table.eo \
+ lib/edje/efl_canvas_layout_part_text.eo
+
+edje_eolian_type_files = \
+ lib/edje/edje_types.eot
+
+edje_eolian_priv_files = \
+ lib/edje/edje_global.eo \
+ lib/edje/efl_canvas_layout_part_invalid.eo \
+ $(NULL)
+
+edje_eolian_c = $(edje_eolian_files:%.eo=%.eo.c)
+edje_eolian_h = $(edje_eolian_files:%.eo=%.eo.h) \
+ $(edje_eolian_type_files:%.eot=%.eot.h)
+
+edje_eolian_priv_c = $(edje_eolian_priv_files:%.eo=%.eo.c)
+edje_eolian_priv_h = $(edje_eolian_priv_files:%.eo=%.eo.h)
+
+BUILT_SOURCES += \
+ $(edje_eolian_c) \
+ $(edje_eolian_h) \
+ $(edje_eolian_priv_c) \
+ $(edje_eolian_priv_h)
+
+if INSTALL_EO_FILES
+edjeeolianfilesdir = $(datadir)/eolian/include/edje-@VMAJ@
+edjeeolianfiles_DATA = \
+$(edje_eolian_files) \
+$(edje_eolian_type_files)
+endif
+
+noinst_DATA += $(edje_eolian_priv_c) $(edje_eolian_priv_h)
+
+EXTRA_DIST2 += \
+$(edje_eolian_files) \
+$(edje_eolian_type_files) \
+$(edje_eolian_priv_files)
+
+lib_LTLIBRARIES += lib/edje/libedje.la
+
+EDJE_COMMON_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+-I$(top_builddir) \
+-I$(top_srcdir)/src/lib/edje \
+-I$(top_builddir)/src/lib/edje \
+-DPACKAGE_BIN_DIR=\"$(bindir)\" \
+-DPACKAGE_LIB_DIR=\"$(libdir)\" \
+-DPACKAGE_DATA_DIR=\"$(datadir)/edje\" \
+-DPACKAGE_BUILD_DIR=\"$(abs_top_builddir)\" \
+-DPACKAGE_SRC_DIR=\"$(abs_top_srcdir)\" \
+@EDJE_LUA_CFLAGS@ \
+@EDJE_CFLAGS@
+
+installed_edjemainheadersdir = $(includedir)/edje-@VMAJ@
+dist_installed_edjemainheaders_DATA = \
+lib/edje/Edje.h \
+lib/edje/Edje_Common.h \
+lib/edje/Edje_Eo.h \
+lib/edje/Edje_Legacy.h \
+lib/edje/Edje_Edit.h \
+lib/edje/edje_edit_eo.h \
+lib/edje/edje_edit_eo.legacy.h \
+lib/edje/efl_canvas_layout_eo.legacy.h \
+lib/edje/efl_layout_group_eo.legacy.h
+
+EXTRA_DIST2 += \
+lib/edje/edje_edit_eo.c \
+lib/edje/efl_canvas_layout_eo.legacy.c \
+lib/edje/efl_layout_group_eo.legacy.c
+
+nodist_installed_edjemainheaders_DATA = \
+ $(edje_eolian_h) \
+ $(NULL)
+
+lib_edje_libedje_la_SOURCES = \
+lib/edje/edje_private.h \
+lib/edje/edje_convert.h \
+lib/edje/edje_box_layout.c \
+lib/edje/edje_cache.c \
+lib/edje/edje_calc.c \
+lib/edje/edje_callbacks.c \
+lib/edje/edje_data.c \
+lib/edje/edje_edit.c \
+lib/edje/edje_embryo.c \
+lib/edje/edje_entry.c \
+lib/edje/edje_external.c \
+lib/edje/edje_load.c \
+lib/edje/edje_lua.c \
+lib/edje/edje_lua2.c \
+lib/edje/edje_lua_script_only.c \
+lib/edje/edje_main.c \
+lib/edje/edje_match.c \
+lib/edje/edje_message_queue.c \
+lib/edje/edje_misc.c \
+lib/edje/edje_module.c \
+lib/edje/edje_multisense.c \
+lib/edje/edje_program.c \
+lib/edje/edje_smart.c \
+lib/edje/edje_text.c \
+lib/edje/edje_textblock.c \
+lib/edje/edje_textblock_styles.c \
+lib/edje/edje_util.c \
+lib/edje/edje_legacy.c \
+lib/edje/edje_var.c \
+lib/edje/edje_signal.c \
+lib/edje/edje_part.c \
+lib/edje/edje_part_helper.h \
+lib/edje/edje_part_external.c \
+lib/edje/edje_part_swallow.c \
+lib/edje/edje_part_table.c \
+lib/edje/edje_part_box.c \
+lib/edje/edje_part_text.c \
+lib/edje/edje_part_invalid.c \
+static_libs/buildsystem/buildsystem.h \
+static_libs/buildsystem/buildsystem_autotools.c
+
+
+lib_edje_libedje_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl $(EDJE_COMMON_CPPFLAGS) -DEFL_BUILD
+lib_edje_libedje_la_LIBADD = @EDJE_LIBS@ @EDJE_LUA_LIBS@
+lib_edje_libedje_la_DEPENDENCIES = @EDJE_INTERNAL_LIBS@
+lib_edje_libedje_la_LDFLAGS = @EFL_LTLIBRARY_FLAGS@
+
+if ENABLE_MULTISENSE
+# edjemoduleXXXdir = $(libdir)/edje/modules/
+# edjemoduleXXX_LTLIBRARIES = modules/edje/XXX/module.la
+#
+# # Workaround for broken parallel install support in automake (relink issue)
+# # http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328
+# install_edjemoduleXXXLTLIBRARIES = install-edjemoduleXXXLTLIBRARIES
+# $(install_edjemoduleXXXLTLIBRARIES): install-libLTLIBRARIES
+#
+# modules_edje_XXX_module_la_SOURCES = modules/edje/XXX/XXX.c
+# modules_edje_XXX_module_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl $(EDJE_COMMON_CPPFLAGS) @XXX_LIBS@
+# modules_edje_XXX_module_la_LIBADD = $(EDJE_COMMON_USER_LIBADD)
+# modules_edje_XXX_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
+# modules_edje_XXX_module_la_LIBTOOLFLAGS = --tag=disable-static
+
+# edjemodulemultisensefactorydir = $(libdir)/edje/modules/multisense_factory/$(MODULE_ARCH)
+# edjemodulemultisensefactory_LTLIBRARIES = modules/edje/multisense_factory/module.la
+#
+# # Workaround for broken parallel install support in automake (relink issue)
+# # http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7328
+# install_edjemodulemultisensefactoryLTLIBRARIES = install-edjemodulemultisensefactoryLTLIBRARIES
+# $(install_edjemodulemultisensefactoryLTLIBRARIES): install-libLTLIBRARIES
+#
+# modules_edje_multisense_factory_module_la_SOURCES = \
+# modules/edje/multisense_factory/multisense_factory.c
+# modules_edje_multisense_factory_module_la_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+# $(EDJE_COMMON_CPPFLAGS) \
+# @REMIX_CFLAGS@
+# modules_edje_multisense_factory_module_la_LIBADD = \
+# $(EDJE_COMMON_USER_LIBADD) \
+# @REMIX_LIBS@
+# modules_edje_multisense_factory_module_la_LDFLAGS = -module @EFL_LTMODULE_FLAGS@
+# modules_edje_multisense_factory_module_la_LIBTOOLFLAGS = --tag=disable-static
+
+endif
+
+### Binary
+
+if HAVE_WIN32
+USE_EDJE_BIN_LIBS = -L$(top_builddir)/src/lib/evil @USE_EDJE_LIBS@
+else
+USE_EDJE_BIN_LIBS = @USE_EDJE_LIBS@
+endif
+
+bin_PROGRAMS += \
+bin/edje/edje_cc \
+bin/edje/edje_decc \
+bin/edje/edje_player \
+bin/edje/edje_inspector \
+bin/edje/edje_external_inspector \
+bin/edje/edje_codegen \
+bin/edje/edje_pick \
+bin/edje/edje_watch
+
+bin_edje_edje_cc_SOURCES = \
+bin/edje/edje_multisense_convert.h \
+bin/edje/edje_cc.h \
+bin/edje/edje_cc.c \
+bin/edje/edje_cc_out.c \
+bin/edje/edje_cc_parse.c \
+bin/edje/edje_cc_mem.c \
+bin/edje/edje_cc_handlers.c \
+bin/edje/edje_cc_sources.c \
+bin/edje/edje_cc_script.c \
+bin/edje/edje_multisense_convert.c
+
+bin_edje_edje_cc_CPPFLAGS = -I$(top_builddir)/src/lib/efl $(EDJE_COMMON_CPPFLAGS) @EDJE_LUA_CFLAGS@
+bin_edje_edje_cc_LDADD = $(USE_EDJE_BIN_LIBS) @EDJE_LUA_LIBS@
+bin_edje_edje_cc_DEPENDENCIES = \
+@USE_EDJE_INTERNAL_LIBS@ \
+bin/edje/epp/epp$(EXEEXT) # epp is an artificial dependency because edje_cc will use it at runtime, so we be sure if we depend on edje_cc we get epp.
+
+bin_edje_edje_decc_SOURCES = \
+bin/edje/edje_decc.c \
+bin/edje/edje_decc.h \
+bin/edje/edje_cc_mem.c \
+bin/edje/edje_cc_sources.c
+bin_edje_edje_decc_CPPFLAGS = -I$(top_builddir)/src/lib/efl $(EDJE_COMMON_CPPFLAGS)
+bin_edje_edje_decc_LDADD = $(USE_EDJE_BIN_LIBS)
+bin_edje_edje_decc_DEPENDENCIES = @USE_EDJE_INTERNAL_LIBS@
+
+bin_edje_edje_player_SOURCES = bin/edje/edje_player.c
+bin_edje_edje_player_CPPFLAGS = -I$(top_builddir)/src/lib/efl $(EDJE_COMMON_CPPFLAGS)
+bin_edje_edje_player_LDADD = $(USE_EDJE_BIN_LIBS)
+bin_edje_edje_player_DEPENDENCIES = @USE_EDJE_INTERNAL_LIBS@
+
+bin_edje_edje_inspector_SOURCES = bin/edje/edje_inspector.c
+bin_edje_edje_inspector_CPPFLAGS = -I$(top_builddir)/src/lib/efl $(EDJE_COMMON_CPPFLAGS)
+bin_edje_edje_inspector_LDADD = $(USE_EDJE_BIN_LIBS)
+bin_edje_edje_inspector_DEPENDENCIES = @USE_EDJE_INTERNAL_LIBS@
+
+bin_edje_edje_external_inspector_SOURCES = bin/edje/edje_external_inspector.c
+bin_edje_edje_external_inspector_CPPFLAGS = -I$(top_builddir)/src/lib/efl $(EDJE_COMMON_CPPFLAGS)
+bin_edje_edje_external_inspector_LDADD = $(USE_EDJE_BIN_LIBS)
+bin_edje_edje_external_inspector_DEPENDENCIES = @USE_EDJE_INTERNAL_LIBS@
+
+bin_edje_edje_codegen_SOURCES = bin/edje/edje_codegen.c
+bin_edje_edje_codegen_CPPFLAGS = -I$(top_builddir)/src/lib/efl $(EDJE_COMMON_CPPFLAGS)
+bin_edje_edje_codegen_LDADD = $(USE_EDJE_BIN_LIBS)
+bin_edje_edje_codegen_DEPENDENCIES = @USE_EDJE_INTERNAL_LIBS@
+
+bin_edje_edje_pick_SOURCES = bin/edje/edje_pick.c
+bin_edje_edje_pick_CPPFLAGS = -I$(top_builddir)/src/lib/efl $(EDJE_COMMON_CPPFLAGS)
+bin_edje_edje_pick_LDADD = $(USE_EDJE_BIN_LIBS)
+bin_edje_edje_pick_DEPENDENCIES = @USE_EDJE_INTERNAL_LIBS@
+
+bin_edje_edje_watch_SOURCES = bin/edje/edje_watch.c
+bin_edje_edje_watch_CPPFLAGS = -I$(top_builddir)/src/lib/efl $(EDJE_COMMON_CPPFLAGS)
+bin_edje_edje_watch_LDADD = $(USE_EDJE_BIN_LIBS)
+bin_edje_edje_watch_DEPENDENCIES = @USE_EDJE_INTERNAL_LIBS@
+
+# EPP (Edje's CPP)
+eppdir = $(libdir)/edje/utils/$(MODULE_ARCH)
+epp_PROGRAMS = bin/edje/epp/epp
+bin_edje_epp_epp_SOURCES = \
+bin/edje/epp/cpplib.h \
+bin/edje/epp/cpphash.h \
+bin/edje/epp/cppalloc.c \
+bin/edje/epp/cpperror.c \
+bin/edje/epp/cppexp.c \
+bin/edje/epp/cpphash.c \
+bin/edje/epp/cpplib.c \
+bin/edje/epp/cppmain.c
+
+# Note: eina is included only because of EINA_UNUSED
+bin_edje_epp_epp_CPPFLAGS = -I$(top_builddir)/src/lib/efl \
+-I$(top_builddir) \
+-I$(top_srcdir)/src/lib/eina \
+-I$(top_builddir)/src/lib/eina \
+$(CWARNFLAGS) \
+-DHAVE_CONFIG_H \
+-DHAVE_STRERROR \
+-DFATAL_EXIT_CODE=1 \
+-DSUCCESS_EXIT_CODE=0 \
+-DGCC_INCLUDE_DIR=\"/usr/include\" \
+-DGPLUSPLUS_INCLUDE_DIR=\"/usr/include\" \
+-DTOOL_INCLUDE_DIR=\"/usr/bin\" \
+-DHOST_BITS_PER_LONG=32 \
+-DBITS_PER_UNIT=8 \
+-DHOST_BITS_PER_INT=32 \
+-DBITS_PER_WORD=16 \
+-DTARGET_BELL=7 \
+-DTARGET_BS=8 \
+-DTARGET_FF=12 \
+-DTARGET_NEWLINE=10 \
+-DTARGET_CR=13 \
+-DTARGET_TAB=9 \
+-DTARGET_VT=11
+if HAVE_WIN32
+bin_edje_epp_epp_CPPFLAGS += \
+@EFL_WINDOWS_VERSION_CFLAGS@ \
+-I$(top_srcdir)/src/lib/evil \
+-I$(top_builddir)/src/lib/evil
+bin_edje_epp_epp_LDADD = lib/evil/libevil.la
+endif
+
+# TODO: why keep these?
+EXTRA_DIST2 += \
+bin/edje/edje_convert.h \
+bin/edje/edje_convert.c \
+bin/edje/edje_data_convert.c \
+bin/edje/edje_convert_main.c \
+lib/edje/edje_convert.c \
+tests/edje/data/complex_layout.edc \
+tests/edje/data/test_layout.edc \
+tests/edje/data/test_parens.edc \
+tests/edje/data/test_masking.edc \
+tests/edje/data/test_filters.edc \
+tests/edje/data/test_snapshot.edc \
+tests/edje/data/test_size_class.edc \
+tests/edje/data/test_color_class.edc \
+tests/edje/data/test_swallows.edc \
+tests/edje/data/test_box.edc \
+tests/edje/data/test_table.edc \
+tests/edje/data/test_combine_keywords.edc \
+tests/edje/data/test_messages.edc \
+tests/edje/data/test_signals.edc \
+tests/edje/data/test_signal_callback_del_full.edc \
+tests/edje/data/test_text_cursor.edc \
+tests/edje/data/test_textblock.edc \
+tests/edje/data/test_text.edc \
+tests/edje/data/filter.lua