##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--## ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--## m4_define([v_maj], [0]) m4_define([v_min], [7]) m4_define([v_mic], [0]) m4_define([v_rev], m4_esyscmd([(svnversion "${SVN_REPO_PATH:-.}" | grep -v export || echo 0) | awk -F : '{printf("%s\n", $1);}' | tr -d ' :MSP\n'])) m4_if(v_rev, [0], [m4_define([v_rev], m4_esyscmd([git log 2> /dev/null | (grep -m1 git-svn-id || echo 0) | sed -e 's/.*@\([0-9]*\).*/\1/' | tr -d '\n']))]) ##-- When released, remove the dnl on the below line dnl m4_undefine([v_rev]) ##-- When doing snapshots - change soname. remove dnl on below line m4_define([relname], [ver-pre-svn-07]) m4_define([v_rel], [-release relname]) ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--## m4_ifdef([v_rev], [m4_define([v_ver], [v_maj.v_min.v_mic.v_rev])], [m4_define([v_ver], [v_maj.v_min.v_mic])]) m4_define([lt_rev], m4_eval(v_maj + v_min)) m4_define([lt_cur], v_mic) m4_define([lt_age], v_min) ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--## ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--## AC_INIT([elementary], [v_ver], [enlightenment-devel@lists.sourceforge.net]) AC_PREREQ(2.52) AC_CONFIG_SRCDIR([configure.ac]) AC_CONFIG_MACRO_DIR([m4]) AC_CANONICAL_BUILD AC_CANONICAL_HOST AM_INIT_AUTOMAKE([1.6 dist-bzip2]) AM_CONFIG_HEADER([elementary_config.h]) m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) AC_GNU_SOURCE AC_C_BIGENDIAN AC_ISC_POSIX AC_PROG_CC AM_PROG_CC_STDC AC_HEADER_STDC AC_C_CONST AC_C___ATTRIBUTE__ AC_FUNC_ALLOCA AC_LIBTOOL_WIN32_DLL define([AC_LIBTOOL_LANG_CXX_CONFIG], [:])dnl define([AC_LIBTOOL_LANG_F77_CONFIG], [:])dnl AC_PROG_LIBTOOL ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--## ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--## m4_ifdef([v_rev], , [m4_define([v_rev], [0])]) m4_ifdef([v_rel], , [m4_define([v_rel], [])]) AC_DEFINE_UNQUOTED(VMAJ, [v_maj], [Major version]) AC_DEFINE_UNQUOTED(VMIN, [v_min], [Minor version]) AC_DEFINE_UNQUOTED(VMIC, [v_mic], [Micro version]) AC_DEFINE_UNQUOTED(VREV, [v_rev], [Revison]) version_info="lt_rev:lt_cur:lt_age" release_info="v_rel" AC_SUBST(version_info) AC_SUBST(release_info) ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--## ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--## VMAJ=v_maj VMIN=v_min AC_SUBST(VMAJ) AC_SUBST(VMIN) VERSION="1.0.0" EDJE_VERSION="1.0.0" case "$host_os" in mingw32ce* | cegcc*) MODULE_ARCH="$host_os-$host_cpu" MODULE_EDJE="$host_os-$host_cpu" ;; *) MODULE_ARCH="$host_os-$host_cpu-v_maj.v_min.v_mic" MODULE_EDJE="$host_os-$host_cpu-${EDJE_VERSION}" ;; esac AC_SUBST(release_info) AC_SUBST(MODULE_ARCH) AC_DEFINE_UNQUOTED(MODULE_ARCH, "$MODULE_ARCH", "Module architecture") AC_SUBST(MODULE_EDJE) AC_DEFINE_UNQUOTED(MODULE_EDJE, "$MODULE_EDJE", "Edje module architecture") EFL_SHARED_EXTENSION="${shrext_cmds}" AC_DEFINE_UNQUOTED(EFL_SHARED_EXTENSION, "${EFL_SHARED_EXTENSION}", "Shared extension") requirement_elm="" PKG_PROG_PKG_CONFIG # Check whether pkg-config supports Requires.private if $PKG_CONFIG --atleast-pkgconfig-version 0.22; then pkgconfig_requires_private="Requires.private" else pkgconfig_requires_private="Requires" fi AC_SUBST(pkgconfig_requires_private) lt_enable_auto_import="" ELM_UNIX_DEF="#undef" ELM_WIN32_DEF="#undef" ELM_WINCE_DEF="#undef" have_windows="no" case "$host_os" in mingw32ce* | cegcc*) PKG_CHECK_MODULES([EVIL], [evil]) AC_DEFINE(HAVE_EVIL, 1, [Set to 1 if evil package is installed.]) lt_enable_auto_import="-Wl,--enable-auto-import" ELM_WINCE_DEF="#define" have_windows="yes" dnl managed by evil AC_DEFINE(HAVE_DLADDR) requirement_elm="evil" have_socket="no" ;; mingw*) PKG_CHECK_MODULES([EVIL], [evil]) AC_DEFINE(HAVE_EVIL, 1, [Set to 1 if evil package is installed.]) lt_enable_auto_import="-Wl,--enable-auto-import" ELM_WIN32_DEF="#define" have_windows="yes" requirement_elm="evil" have_socket="no" ;; *solaris*) ELM_UNIX_DEF="#define" have_socket="yes" AC_CHECK_LIB([socket], [connect], [], [have_socket="no"]) ;; darwin*) ELM_UNIX_DEF="#define" have_socket="yes" AC_CHECK_HEADERS([crt_externs.h]) AC_DEFINE([environ], [(*_NSGetEnviron())], [apple doesn't follow POSIX in this case.]) ;; *) ELM_UNIX_DEF="#define" AC_CHECK_FUNCS(dlopen, res=yes, res=no) if test "x$res" = "xyes"; then AC_CHECK_FUNCS(dladdr, AC_DEFINE(HAVE_DLADDR)) else AC_CHECK_LIB(dl, dlopen, res=yes, res=no) if test "x$res" = "xyes"; then AC_CHECK_LIB(dl, dladdr, AC_DEFINE(HAVE_DLADDR)) dlopen_libs=-ldl else AC_MSG_ERROR(Cannot find dlopen) fi fi have_socket="yes" ;; esac AM_CONDITIONAL([BUILD_RUN], [test "x$have_socket" = "xyes"]) have_fork="no" AC_CHECK_FUNCS(fork, [ have_fork="yes" AC_DEFINE(HAVE_FORK) ]) AM_CONDITIONAL([BUILD_QUICKLAUNCH], [test "x$have_fork" = "xyes"]) AC_SUBST(dlopen_libs) AC_SUBST(lt_enable_auto_import) AC_SUBST(ELM_UNIX_DEF) AC_SUBST(ELM_WIN32_DEF) AC_SUBST(ELM_WINCE_DEF) AM_CONDITIONAL([ELEMENTARY_WINDOWS_BUILD], [test "x${have_windows}" = "xyes"]) PKG_CHECK_MODULES([ELEMENTARY], [ eina >= 1.0.0 eet >= 1.4.0 evas >= 1.0.0 ecore >= 1.0.0 ecore-evas >= 1.0.0 ecore-file >= 1.0.0 ecore-imf >= 1.0.0 edje >= ${EDJE_VERSION} ] ) requirement_elm="edje >= ${EDJE_VERSION} ecore-file >= 1.0.0 ecore-evas >= 1.0.0 ecore >= 1.0.0 evas >= 1.0.0 eet >= 1.4.0 eina >= 1.0.0 ${requirement_elm}" have_elementary_x="no" want_elementary_x="auto" AC_ARG_ENABLE([ecore-x], [AC_HELP_STRING([--disable-ecore-x], [disable ecore-x support. @<:@default=detect@:>@])], [want_elementary_x=$enableval], []) if test "x$want_elementary_x" != "xno"; then PKG_CHECK_MODULES([ELEMENTARY_X], [ecore-x >= 1.0.0], [ AC_DEFINE(HAVE_ELEMENTARY_X, 1, [X11 support for Elementary]) have_elementary_x="yes" requirement_elm="ecore-x >= 1.0.0 ${requirement_elm}" ], [have_elementary_x="no"] ) else have_elementary_x="no" fi if test "x$want_elementary_x" = "xyes" -a "x$have_elementary_x" = "xno"; then AC_MSG_ERROR([ecore-x support requested, but not found by pkg-config.]) fi have_conformant_autoscroll="no" want_conformant_autoscroll="yes" AC_ARG_ENABLE([ecore-x], [AC_HELP_STRING([--disable-ecore-x], [disable ecore-x support. @<:@default=detect@:>@])], [want_conformant_autoscroll=$enableval], []) if test "x$want_conformant_autoscroll" != "xno"; then PKG_CHECK_MODULES([ELEMENTARY_X], [ecore-x >= 1.0.0], [ AC_DEFINE(HAVE_CONFORMANT_AUTOSCROLL, 1, [autoscroll with conformant]) have_conformant_autoscroll="yes" requirement_elm="ecore-x >= 1.0.0 ${requirement_elm}" ], [have_conformant_autoscroll="no"] ) else have_conformant_autoscroll="no" fi if test "x$want_conformant_autoscroll" = "xyes" -a "x$have_conformant_autoscroll" = "xno"; then AC_MSG_ERROR([ecore-x support requested, but not found by pkg-config.]) fi have_elementary_fb="no" want_elementary_fb="auto" AC_ARG_ENABLE([ecore-fb], [AC_HELP_STRING([--disable-ecore-fb], [disable ecore-fb support. @<:@default=detect@:>@])], [want_elementary_fb=$enableval], []) if test "x$want_elementary_fb" != "xno"; then PKG_CHECK_MODULES([ELEMENTARY_FB], [ecore-fb >= 1.0.0], [ AC_DEFINE(HAVE_ELEMENTARY_FB, 1, [FB support for Elementary]) have_elementary_fb="yes" requirement_elm="ecore-fb >= 1.0.0 ${requirement_elm}" ], [have_elementary_fb="no"] ) else have_elementary_fb="no" fi if test "x$want_elementary_fb" = "xyes" -a "x$have_elementary_fb" = "xno"; then AC_MSG_ERROR([ecore-fb support requested, but not found by pkg-config.]) fi have_elementary_sdl="no" want_elementary_sdl="auto" AC_ARG_ENABLE([ecore-sdl], [AC_HELP_STRING([--disable-ecore-sdl], [disable ecore-sdl support. @<:@default=detect@:>@])], [want_elementary_sdl=$enableval], []) if test "x$want_elementary_sdl" != "xno"; then PKG_CHECK_MODULES([ELEMENTARY_SDL], [ecore-sdl >= 1.0.0], [ AC_DEFINE(HAVE_ELEMENTARY_SDL, 1, [SDL support for Elementary]) have_elementary_sdl="yes" requirement_elm="ecore-sdl >= 1.0.0 ${requirement_elm}" ], [have_elementary_sdl="no"] ) else have_elementary_sdl="no" fi if test "x$want_elementary_sdl" = "xyes" -a "x$have_elementary_sdl" = "xno"; then AC_MSG_ERROR([ecore-sdl support requested, but not found by pkg-config.]) fi have_elementary_win32="no" want_elementary_win32="auto" AC_ARG_ENABLE([ecore-win32], [AC_HELP_STRING([--disable-ecore-win32], [disable ecore-win32 support. @<:@default=detect@:>@])], [want_elementary_win32=$enableval], []) if test "x$want_elementary_win32" != "xno"; then PKG_CHECK_MODULES([ELEMENTARY_WIN32], [ecore-win32 >= 1.0.0], [ AC_DEFINE(HAVE_ELEMENTARY_WIN32, 1, [Windows XP support for Elementary]) have_elementary_win32="yes" requirement_elm="ecore-win32 >= 1.0.0 ${requirement_elm}" ], [have_elementary_win32="no"] ) else have_elementary_win32="no" fi if test "x$want_elementary_win32" = "xyes" -a "x$have_elementary_win32" = "xno"; then AC_MSG_ERROR([ecore-win32 support requested, but not found by pkg-config.]) fi have_elementary_wince="no" want_elementary_wince="auto" AC_ARG_ENABLE([ecore-wince], [AC_HELP_STRING([--disable-ecore-wince], [disable ecore-wince support. @<:@default=detect@:>@])], [want_elementary_wince=$enableval], []) if test "x$want_elementary_wince" != "xno"; then PKG_CHECK_MODULES([ELEMENTARY_WINCE], [ecore-wince >= 1.0.0], [ AC_DEFINE(HAVE_ELEMENTARY_WINCE, 1, [Windows CE support for Elementary]) have_elementary_wince="yes" requirement_elm="ecore-wince >= 1.0.0 ${requirement_elm}" ], [have_elementary_wince="no"] ) else have_elementary_wince="no" fi if test "x$want_elementary_wince" = "xyes" -a "x$have_elementary_wince" = "xno"; then AC_MSG_ERROR([ecore-wince support requested, but not found by pkg-config.]) fi ELM_EDBUS_DEF="#undef" have_elementary_edbus="no" want_elementary_edbus="auto" AC_ARG_ENABLE([edbus], [AC_HELP_STRING([--disable-edbus], [disable edbus support. @<:@default=detect@:>@])], [want_elementary_edbus=$enableval], []) if test "x$want_elementary_edbus" != "xno"; then PKG_CHECK_MODULES([ELEMENTARY_EDBUS], [ edbus >= 1.0.0 ehal >= 1.0.0 ], [ AC_DEFINE(HAVE_ELEMENTARY_EDBUS, 1, [EDBus support for Elementary]) have_elementary_edbus="yes" ELM_EDBUS_DEF="#define" requirement_elm="ehal >= 1.0.0 edbus >= 1.0.0 ${requirement_elm}" ], [have_elementary_edbus="no"] ) else have_elementary_edbus="no" fi if test "x$want_elementary_edbus" = "xyes" -a "x$have_elementary_edbus" = "xno"; then AC_MSG_ERROR([E_DBus support requested, but no edbus/ehal found by pkg-config.]) fi AC_SUBST(ELM_EDBUS_DEF) ELM_EFREET_DEF="#undef" have_elementary_efreet="no" want_elementary_efreet="auto" AC_ARG_ENABLE([efreet], [AC_HELP_STRING([--disable-efreet], [disable efreet support. @<:@default=detect@:>@])], [want_elementary_efreet=$enableval], []) if test "x$want_elementary_efreet" != "xno"; then PKG_CHECK_MODULES([ELEMENTARY_EFREET], [ efreet >= 1.0.0 efreet-mime >= 1.0.0 efreet-trash >= 1.0.0 ], [ AC_DEFINE(HAVE_ELEMENTARY_EFREET, 1, [Efreet support for Elementary]) have_elementary_efreet="yes" ELM_EFREET_DEF="#define" requirement_elm="efreet >= 1.0.0 efreet-mime >= 1.0.0 efreet-trash >= 1.0.0 ${requirement_elm}" ], [have_elementary_efreet="no"] ) else have_elementary_efreet="no" fi if test "x$want_elementary_efreet" = "xyes" -a "x$have_elementary_efreet" = "xno"; then AC_MSG_ERROR([Efreet support requested, but no efreet/efreet-mime/efreet-trash found by pkg-config.]) fi AC_SUBST(ELM_EFREET_DEF) ELM_EWEATHER_DEF="#undef" have_elementary_eweather="no" want_elementary_eweather="auto" AC_ARG_ENABLE([eweather], [AC_HELP_STRING([--disable-eweather], [disable eweather support. @<:@default=detect@:>@])], [want_elementary_eweather=$enableval], []) if test "x$want_elementary_eweather" != "xno"; then PKG_CHECK_MODULES([ELEMENTARY_EWEATHER], [ eweather ], [ AC_DEFINE(HAVE_ELEMENTARY_EWEATHER, 1, [EWeather support for Elementary]) have_elementary_eweather="yes" ELM_EWEATHER_DEF="#define" requirement_elm="eweather ${requirement_elm}" ], [have_elementary_eweather="no"] ) else have_elementary_eweather="no" fi if test "x$want_elementary_eweather" = "xyes" -a "x$have_elementary_eweather" = "xno"; then AC_MSG_ERROR([Eweather support requested, but no eweather found by pkg-config.]) fi AC_SUBST(ELM_EWEATHER_DEF) ELM_ETHUMB_DEF="#undef" have_elementary_ethumb="no" want_elementary_ethumb="auto" AC_ARG_ENABLE([ethumb], [AC_HELP_STRING([--disable-ethumb], [disable ethumb support. @<:@default=detect@:>@])], [want_elementary_ethumb=$enableval], []) if test "x$want_elementary_ethumb" != "xno"; then PKG_CHECK_MODULES([ELEMENTARY_ETHUMB], [ ethumb_client ], [ AC_DEFINE(HAVE_ELEMENTARY_ETHUMB, 1, [Ethumb support for Elementary]) have_elementary_ethumb="yes" ELM_ETHUMB_DEF="#define" requirement_elm="ethumb_client ${requirement_elm}" ], [have_elementary_ethumb="no"] ) else have_elementary_ethumb="no" fi if test "x$want_elementary_ethumb" = "xyes" -a "x$have_elementary_ethumb" = "xno"; then AC_MSG_ERROR([Ethumb support requested, but no ethumb found by pkg-config.]) fi AC_SUBST(ELM_ETHUMB_DEF) ELM_LIBXML2_DEF="#undef" have_elementary_libxml2="no" want_elementary_libxml2="auto" AC_ARG_ENABLE([libxml-2.0], [AC_HELP_STRING([--disable-libxml-2.0], [disable libxml-2.0 support. @<:@default=detect@:>@])], [want_elementary_libxml2=$enableval], []) if test "x$want_elementary_libxml2" != "xno"; then PKG_CHECK_MODULES([ELEMENTARY_LIBXML2], [ libxml-2.0 ], [ AC_DEFINE(HAVE_ELEMENTARY_LIBXML2, 1, [Libxml-2.0 support for Elementary]) have_elementary_libxml2="yes" ELM_ETHUMB_DEF="#define" requirement_elm="libxml-2.0 ${requirement_elm}" ], [have_elementary_libxml2="no"] ) else have_elementary_libxml2="no" fi if test "x$want_elementary_libxml2" = "xyes" -a "x$have_elementary_libxml2" = "xno"; then AC_MSG_ERROR(Libxml-2.0 support requested, but no libxml-2.0 found by pkg-config.]) fi AC_SUBST(ELM_LIBXML2_DEF) ELM_DEBUG_DEF="#undef" want_elementary_debug="no" AC_ARG_ENABLE([debug], [AC_HELP_STRING([--enable-debug], [enable elementary debug support. @<:@default=disabled@:>@])], [want_elementary_debug=$enableval], []) 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) 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) my_libs="-lm" AC_SUBST(my_libs) AC_SUBST(requirement_elm) EFL_WITH_BIN([eet], [eet-eet], [eet]) EFL_WITH_BIN([edje], [edje-cc], [edje_cc]) EFL_CHECK_DOXYGEN([build_doc="yes"], [build_doc="no"]) AC_OUTPUT([ Makefile elementary.spec elementary.pc doc/elementary.dox doc/Makefile src/Makefile src/lib/Makefile src/lib/Elementary.h src/bin/Makefile src/modules/Makefile src/modules/test_entry/Makefile src/modules/ctxpopup_copypasteUI/Makefile src/modules/popup_copypasteUI/Makefile src/edje_externals/Makefile data/Makefile data/themes/Makefile data/images/Makefile data/objects/Makefile data/desktop/Makefile data/xmls/Makefile data/edje_externals/Makefile config/Makefile config/default/Makefile config/standard/Makefile config/illume/Makefile ]) ##################################################################### ## Info echo echo echo echo "------------------------------------------------------------------------" echo "$PACKAGE $VERSION" echo "------------------------------------------------------------------------" echo echo "Configuration Options Summary:" echo echo " Engines:" echo " X11................: ${have_elementary_x}" echo " Framebuffer........: ${have_elementary_fb}" echo " SDL................: ${have_elementary_sdl}" echo " Windows XP.........: ${have_elementary_win32}" echo " Windows CE.........: ${have_elementary_wince}" echo echo " Features:" echo " EDBus..............: ${have_elementary_edbus}" echo " EFreet.............: ${have_elementary_efreet}" echo " EWeather...........: ${have_elementary_eweather}" echo " Ethumb.............: ${have_elementary_ethumb}" echo " Xml2...............: ${have_elementary_libxml2}" echo echo " eet..................: ${eet_eet}" echo " edje_cc..............: ${edje_cc}" echo echo "Compilation............: make (or gmake)" echo " CPPFLAGS.............: $CPPFLAGS" echo " CFLAGS...............: $CFLAGS" echo " LDFLAGS..............: $LDFLAGS" echo echo "Installation...........: make install (as root if needed, with 'su' or 'sudo')" echo " prefix...............: $prefix" echo