##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--## ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--## m4_define([v_maj], [0]) m4_define([v_min], [16]) m4_define([v_mic], [999]) m4_define([v_rev], m4_esyscmd([(svnversion "${SVN_REPO_PATH:-.}" | grep -v '\(export\|Unversioned directory\)' || echo 0) | awk -F : '{printf("%s\n", $1);}' | tr -d ' :MSP\n'])) 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-08]) 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([enlightenment], [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 AC_ISC_POSIX 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-bzip2]) m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) AC_GNU_SOURCE AC_C_BIGENDIAN AC_PROG_CC_C99 AM_PROG_CC_C_O AC_C_CONST AC_FUNC_ALLOCA AC_C___ATTRIBUTE__ define([AC_LIBTOOL_LANG_CXX_CONFIG], [:]) define([AC_LIBTOOL_LANG_GCJ_CONFIG], [:]) define([AC_LIBTOOL_LANG_F77_CONFIG], [:]) AC_DISABLE_STATIC 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) ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--## ##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--## release=relname AC_SUBST(release) PKG_PROG_PKG_CONFIG EFL_CHECK_PATH_MAX AC_CHECK_FUNCS(setenv) AC_CHECK_FUNCS(unsetenv) dnl AC_CHECK_HEADERS(X11/extensions/shape.h,, AC_MSG_ERROR([Cannot find X11/extensions/shape.h. Make sure your CFLAGS environment variable contains include lines for the location of this file])) AC_CHECK_HEADERS(fnmatch.h,, AC_MSG_ERROR([Cannot find fnmatch.h. Make sure your CFLAGS environment variable contains include lines for the location of this file])) AC_CHECK_FUNCS(fnmatch, res=yes, res=no) if test "x$res" = "xno"; then AC_CHECK_LIB(fnmatch, fnmatch, res=yes, res=no) if test "x$res" = "xno"; then AC_MSG_ERROR([Cannot find fnmatch() in neither libc nor libfnmatch]) else fnmatch_libs="-lfnmatch" fi fi AC_SUBST(fnmatch_libs) have_pam=no AC_ARG_ENABLE(pam, AC_HELP_STRING([--enable-pam], [enable PAM support @<:@default=detect@:>@]), [want_pam=$enableval], [want_pam=auto] ) if test "x$want_pam" != "xno" ; then AC_CHECK_HEADERS(security/pam_appl.h, [ LIBS="$LIBS -lpam" have_pam=yes AC_DEFINE(HAVE_PAM, 1, [PAM Authentication Support])]) if test "x$want_pam$have_pam" = "xyesno" ; then AC_MSG_ERROR([PAM support was requested but not found]) fi fi dnl AC_E_CHECK_PKG(VALGRIND, [valgrind >= 2.4.0], [], [:]) AC_SUBST(VALGRIND_CFLAGS) AC_SUBST(VALGRIND_LIBS) MODULE_ARCH="$host_os-$host_cpu-relname" AC_SUBST(MODULE_ARCH) AC_DEFINE_UNQUOTED(MODULE_ARCH, "$MODULE_ARCH", "Module architecture") if test "x${bindir}" = 'xNONE'; then if test "x${prefix}" = "xNONE"; then PACKAGE_BIN_DIR="${ac_default_prefix}/bin" else PACKAGE_BIN_DIR="${prefix}/bin" fi else PACKAGE_BIN_DIR="${bindir}" fi AC_SUBST(PACKAGE_BIN_DIR) if test "x${libdir}" = 'xNONE'; then if test "x${prefix}" = "xNONE"; then PACKAGE_LIB_DIR="${ac_default_prefix}/lib" else PACKAGE_LIB_DIR="${prefix}/lib" fi else PACKAGE_LIB_DIR="${libdir}" fi AC_SUBST(PACKAGE_LIB_DIR) if test "x${prefix}" = "xNONE"; then PACKAGE_DATA_DIR="${ac_default_prefix}/share/${PACKAGE}" LOCALE_DIR="${ac_default_prefix}/share/locale" PACKAGE_SYSCONF_DIR="${ac_default_prefix}/etc" else PACKAGE_DATA_DIR="${prefix}/share/${PACKAGE}" LOCALE_DIR="${prefix}/share/locale" PACKAGE_SYSCONF_DIR="${sysconfdir}" fi AC_SUBST(PACKAGE_DATA_DIR) AC_SUBST(LOCALE_DIR) AC_SUBST(PACKAGE_SYSCONF_DIR) ####################################### ## Simple X11 build/link AC_ARG_ENABLE(simple-x11, AC_HELP_STRING([--enable-simple-x11], [enable simple x11 linking]), [ want_evas_simple_x11=$enableval ] ) x_dir="" x_cflags="" x_libs="" AC_PATH_XTRA AC_CHECK_HEADER(X11/X.h, [ if test "x$want_evas_simple_x11" = "xyes"; then x_libs="${x_libs} -lX11 -lXext" else x_dir=${x_dir:-/usr/X11R6} x_cflags=${x_cflags:--I${x_includes:-$x_dir/include}} x_libs="${x_libs:--L${x_libraries:-$x_dir/lib}} -lX11 -lXext" fi ],[ AC_MSG_ERROR([Cannot find X headers and libraries.]) ] ) AC_SUBST(x_cflags) AC_SUBST(x_libs) cf_cflags="" cf_libs="" PCPPFLAGS="${CPPFLAGS}" CPPFLAGS="${CPPFLAGS} -I /System/Library/Frameworks/CoreFoundation.framework/Headers" AC_CHECK_HEADERS(CFBase.h, [ cf_cflags="-I /System/Library/Frameworks/CoreFoundation.framework/Headers" cf_cflags="${cf_cflags} -I /System/Library/Frameworks/IOKit.framework/Headers" cf_libs="-framework 'CoreFoundation' -framework 'IOKit'" ] ) CPPFLAGS="${PCPPFLAGS}" AC_SUBST(cf_cflags) AC_SUBST(cf_libs) execinfo_libs="" AC_CHECK_HEADERS([execinfo.h], [have_execinfo="yes"], [have_execinfo="no"]) if test "x${have_execinfo}" = "xyes" ; then AC_MSG_CHECKING([whether backtrace_symbols_fd() is in libc]) AC_LINK_IFELSE( [AC_LANG_PROGRAM( [[ #include #include ]], [[ backtrace_symbols_fd(NULL, 0, 0); ]])], [link_execinfo="yes"], [link_execinfo="no"]) AC_MSG_RESULT([${link_execinfo}]) fi if test "x${link_execinfo}" = "xno" ; then AC_MSG_CHECKING([whether backtrace_symbols_fd() is in libexecinfo]) LDFLAGS_save="${LDFLAGS}" LDFLAGS="${LDFLAGS} -lexecinfo" AC_LINK_IFELSE( [AC_LANG_PROGRAM( [[ #include #include ]], [[ backtrace_symbols_fd(NULL, 0, 0); ]])], [ link_execinfo="yes" execinfo_libs="-lexecinfo" ], [link_execinfo="no"]) LDFLAGS="${LDFLAGS_save}" AC_MSG_RESULT([${link_execinfo}]) fi dnl if test "x${link_execinfo}" = "xno" ; then dnl AC_MSG_ERROR([Cannot use backtrace_symbols_fd()]) dnl fi #ALL_LINGUAS="bg de eo es fi fr ja pl pt ru zh_CN hu sl it cs da sk sv nb nl zh_TW ko" #ALL_LINGUAS="bg de eo es fi fr ja pt ru zh_CN hu sl it cs da sk sv nb nl zh_TW" # a lot of .po's are broken ALL_LINGUAS="bg ca cs da de el eo es fi fr fr_CH he hu it ja ko nb nl pl pt_BR ru sk sl sv tr zh_CN zh_TW" AC_SUBST(ALL_LINGUAS) m4_ifdef([AM_GNU_GETTEXT_VERSION], [ AM_GNU_GETTEXT_VERSION([0.17]) ]) m4_ifdef([AM_GNU_GETTEXT], [ AM_GNU_GETTEXT([external], [need-ngettext]) po_makefile_in=po/Makefile.in have_po="yes" ],[ have_po="no" ]) AC_SUBST(LTLIBINTL) if test "x$LIBINTL" = "x"; then LIBINTL="$INTLLIBS" fi if test "x${POSUB}" = "x" ; then have_po="no" fi AM_CONDITIONAL([HAVE_PO], [test "x${have_po}" = "xyes"]) AC_CHECK_LIB(dl, dlopen, dlopen_libs=-ldl) AC_SUBST(dlopen_libs) AC_MSG_CHECKING([whether to install sysactions.conf]) AC_ARG_ENABLE([install-sysactions], AS_HELP_STRING([--disable-install-sysactions],[disable installing /etc/enlightenment/sysactions.conf @<:@default=enabled@:>@]), [e_cv_enable_install_sysactions=$enableval], AC_CACHE_VAL([e_cv_enable_install_sysactions], [e_cv_enable_install_sysactions=yes])) AC_MSG_RESULT([$e_cv_enable_install_sysactions]) AM_CONDITIONAL(INSTALL_SYSACTIONS, test x${e_cv_enable_install_sysactions} = xyes) AC_MSG_CHECKING([whether to install enlightenment.menu]) AC_ARG_ENABLE([install-enlightenment-menu], AS_HELP_STRING([--disable-enlightenment-menu],[disable installing /etc/xdg/menus/enlightenment.menu @<:@default=enabled@:>@]), [e_cv_enable_install_enlightenment_menu=$enableval], AC_CACHE_VAL([e_cv_enable_install_enlightenment_menu], [e_cv_enable_install_enlightenment_menu=yes])) AC_MSG_RESULT([$e_cv_enable_install_enlightenment_menu]) AM_CONDITIONAL(INSTALL_ENLIGHTENMENT_MENU, test x${e_cv_enable_install_enlightenment_menu} = xyes) AC_MSG_CHECKING([whether to enable Files menu item]) AC_ARG_ENABLE([files], AS_HELP_STRING([--disable-files],[disable Files menu item @<:@default=enabled@:>@]), [e_cv_enable_files=$enableval], AC_CACHE_VAL([e_cv_enable_files], [e_cv_enable_files=yes])) if test "[${e_cv_enable_files}]" = yes; then AC_DEFINE_UNQUOTED([ENABLE_FILES],[1],[enable Files menu item]) fi AC_MSG_RESULT([$e_cv_enable_files]) AC_ARG_ENABLE([device-hal], AS_HELP_STRING([--enable-device-hal],[enable hal device backend @<:@default=disabled@:>@]), [e_cv_want_device_hal=$enableval], [e_cv_want_device_hal=no]) AC_MSG_CHECKING([whether the HAL device backend is enabled]) AC_MSG_RESULT([${e_cv_want_device_hal}]) AC_ARG_ENABLE([device-udev], AS_HELP_STRING([--enable-device-udev],[enable udev device backend @<:@default=enabled@:>@]), [e_cv_want_device_udev=$enableval], [e_cv_want_device_udev=yes]) AC_MSG_CHECKING([whether the UDEV device backend is enabled]) AC_MSG_RESULT([${e_cv_want_device_udev}]) if test "x$e_cv_want_device_udev" != "xno";then PKG_CHECK_MODULES([EEZE], [eeze >= 1.2.0 ecore >= 1.2.0 eina >= 1.2.0], [ device_backend=eeze AC_DEFINE_UNQUOTED([HAVE_EEZE],[1],[enable udev support]) ], [device_backend=ehal]) else device_backend=ehal fi AC_MSG_CHECKING([which device backend to use]) AC_MSG_RESULT($device_backend) AM_CONDITIONAL([HAVE_EEZE], [test "x${device_backend}" = "xeeze"]) test "x${device_backend}" = "xeeze" || AC_DEFINE_UNQUOTED([HAVE_HAL],[1],[enable HAL support]) DBUS_MOUNT_CONFIG=1 dbus_mount="dbus-1" hal_mount="ehal >= 1.2.0, edbus >= 1.2.0" udisks_mount="eukit >= 1.2.0" AC_ARG_ENABLE([mount-hal], AS_HELP_STRING([--enable-mount-hal],[enable hal mounting support @<:@default=enabled@:>@]), [e_cv_want_mount_hal=$enableval], [e_cv_want_mount_hal=yes]) AC_MSG_CHECKING([whether the HAL mounting support is enabled]) AC_MSG_RESULT([${e_cv_want_mount_hal}]) # added by doyoun.kang 110121 e_cv_want_mount_hal=no if test "x$e_cv_want_mount_hal" != "xno";then PKG_CHECK_EXISTS([ehal >= 1.2.0], [],[ hal_mount= AC_MSG_NOTICE([HAL mounting disabled]) ]) else hal_mount= AC_MSG_NOTICE([HAL mounting disabled]) fi AC_ARG_ENABLE([mount-udisks], AS_HELP_STRING([--enable-mount-udisks],[enable udisks mounting support @<:@default=enabled@:>@]), [e_cv_want_mount_udisks=$enableval], [e_cv_want_mount_udisks=yes]) AC_MSG_CHECKING([whether the UDISKS mounting support is enabled]) AC_MSG_RESULT([${e_cv_want_mount_udisks}]) if test "x$e_cv_want_mount_udisks" != "xno";then PKG_CHECK_EXISTS([eukit >= 1.2.0], [],[ udisks_mount= AC_MSG_NOTICE([udisks mounting disabled]) ]) else udisks_mount= AC_MSG_NOTICE([udisks mounting disabled]) fi if test "x${e_cv_want_mount_udisks}" = "xno" && test "x${e_cv_want_mount_hal}" = "xno" ; then DBUS_MOUNT_CONFIG=0 dbus_mount= udisks_mount= hal_mount= fi AC_ARG_ENABLE([mount-eeze], AS_HELP_STRING([--enable-mount-eeze],[enable eeze mounting support @<:@default=disabled@:>@]), [e_cv_want_mount_eeze=$enableval], [e_cv_want_mount_eeze=no]) AC_MSG_CHECKING([whether the Eeze mounting support is enabled]) AC_MSG_RESULT([${e_cv_want_mount_eeze}]) eeze_mount= EEZE_MOUNT_CONFIG=0 if test "x$e_cv_want_mount_eeze" != "xno" && test -z "$dbus_mount" ; then CPPFLAGS_save="$CPPFLAGS" LIBS_save="$LIBS" CPPFLAGS="$EEZE_CFLAGS $CPPFLAGS" LIBS="$EEZE_LIBS $LIBS" AC_CHECK_LIB([eeze], [eeze_disk_function], [ eeze_mount="eeze >= 1.2.0 ecore-con >= 1.2.0" EEZE_MOUNT_CONFIG=1 AC_DEFINE_UNQUOTED([HAVE_EEZE_MOUNT], [1], [enable eeze mounting]) AC_MSG_NOTICE([eeze mounting enabled]) ], [ AC_MSG_NOTICE([eeze mounting disabled]) e_cv_want_mount_eeze=no ] ) CPPFLAGS="$CPPFLAGS_save" LIBS="$LIBS_save" else AC_MSG_NOTICE([eeze mounting disabled]) fi AC_SUBST([EEZE_MOUNT_CONFIG]) AC_SUBST([DBUS_MOUNT_CONFIG]) AM_CONDITIONAL([HAVE_HAL_MOUNT], [test -n "$hal_mount"]) AM_CONDITIONAL([HAVE_EEZE_MOUNT], [false]) test -n "$hal_mount" && AC_DEFINE_UNQUOTED([HAVE_HAL_MOUNT], [1], [enable HAL mounting]) test -n "$udisks_mount" && AC_DEFINE_UNQUOTED([HAVE_UDISKS_MOUNT], [1], [enable Udisks mounting]) AM_CONDITIONAL([HAVE_UDISKS_MOUNT], [test -n "$udisks_mount"]) AM_CONDITIONAL([HAVE_EEZE_MOUNT], [test -n "$eeze_mount"]) # doxygen program for documentation building EFL_CHECK_DOXYGEN([build_doc="yes"], [build_doc="no"]) # explicit libs for each binary to reduce linkage requirements PKG_CHECK_MODULES(E_REMOTE, [ ecore >= 1.2.0 ecore-ipc >= 1.2.0 eet >= 1.6.0 eina >= 1.2.0 ]) PKG_CHECK_MODULES(E_START, [ eina >= 1.2.0 ]) PKG_CHECK_MODULES(E_IMC, [ ecore-file >= 1.2.0 eet >= 1.6.0 eina >= 1.2.0 ]) PKG_CHECK_MODULES(E_THUMB, [ eina >= 1.2.0 evas >= 1.2.0 ecore >= 1.2.0 ecore-evas >= 1.2.0 edje >= 1.2.0 ecore-file >= 1.2.0 ecore-ipc >= 1.2.0 eet >= 1.6.0 efreet >= 1.2.99 ]) efm_requires="\ ecore >= 1.2.0 \ ecore-file >= 1.2.0 \ ecore-ipc >= 1.2.0 \ eet >= 1.6.0 \ efreet >= 1.2.0 \ edbus >= 1.2.0 \ eina >= 1.2.0" efm_requires="$efm_requires $eeze_mount $dbus_mount $hal_mount $udisks_mount" AC_MSG_WARN([EFM requirements : $efm_requires]) PKG_CHECK_MODULES(E_FM, [$efm_requires]) PKG_CHECK_MODULES(E_FM_CMDLINE, [ ecore >= 1.2.0 ecore-file >= 1.2.0 edbus >= 1.2.0 dbus-1 ]) PKG_CHECK_MODULES(E_FM_OP, [ ecore >= 1.2.0 ecore-file >= 1.2.0 eina >= 1.2.0 ]) PKG_CHECK_MODULES(E_FM_OPEN, [ ecore >= 1.2.0 ecore-ipc >= 1.2.0 ecore-con >= 1.2.0 eet >= 1.6.0 eina >= 1.2.0 ]) PKG_CHECK_MODULES(E_SYS, [ eina >= 1.2.0 ]) PKG_CHECK_MODULES(E_INIT, [ evas >= 1.2.0 ecore >= 1.2.0 ecore-evas >= 1.2.0 ecore-x >= 1.2.0 edje >= 1.2.0 ecore-ipc >= 1.2.0 eina >= 1.2.0 ]) #PKG_CHECK_MODULES(E_ALERT, [ # xcb # xcb-shape # eina >= 1.0.999 # ecore >= 1.0.999 # ecore-ipc >= 1.0.999 #]) PKG_CHECK_MODULES(E, [ evas >= 1.2.0 ecore >= 1.2.0 ecore-x >= 1.2.99 ecore-evas >= 1.2.0 ecore-input >= 1.2.0 ecore-input-evas >= 1.2.0 ecore-con >= 1.2.0 ecore-ipc >= 1.2.0 ecore-file >= 1.2.0 eet >= 1.6.0 edje >= 1.2.0 efreet >= 1.2.0 efreet-mime >= 1.2.0 efreet-trash >= 1.2.0 eina >= 1.2.0 dbus-1 edbus >= 1.2.0 eio >= 1.0.0 $hal_mount $eeze_mount $udisks_mount $device_backend, dlog ]) requirements_e="\ evas >= 1.2.0 \ ecore >= 1.2.0 \ ecore-x >= 1.2.99 \ ecore-evas >= 1.2.0 \ ecore-con >= 1.2.0 \ ecore-ipc >= 1.2.0 \ ecore-file >= 1.2.0 \ eet >= 1.6.0 \ edje >= 1.2.0 \ efreet >= 1.2.0 \ efreet-mime >= 1.2.0 \ eina >= 1.2.0 \ dbus-1 \ edbus >= 1.2.0 \ eio >= 1.0.0 \ $hal_mount \ $udisks_mount \ $eeze_mount \ $device_backend" want_elementary=auto have_elementary=no AC_ARG_ENABLE(elementary, AC_HELP_STRING([--enable-elementary], [enable Elementary support @<:@default=detect@:>@]), [want_elementary=$enableval], [want_elementary=auto] ) if test "x$want_elementary" != "xno"; then PKG_CHECK_MODULES(ELM, [elementary >= 1.6.9.0], [have_elementary=yes], [have_elementary=no]) if test "x$want_elementary" = "xyes" -a "x$have_elementary" = "xno"; then AC_MSG_ERROR([Elementary support requested but it was not found]) fi if test "x$have_elementary" = "xyes"; then AC_DEFINE([HAVE_ELEMENTARY], 1, "Have Elementary support") requirements_e="${requirements_e} elementary > 1.6.9.0" fi fi PKG_CHECK_MODULES(E_OPEN, [ ecore >= 1.2.0 efreet >= 1.2.0 efreet-mime >= 1.2.0 ]) AC_E_CHECK_PKG(ECORE_IMF, [ ecore-imf >= 1.2.0 ecore-imf-evas >= 1.2.0 ], [], [:]) e_libs=$E_LIBS" "$LIBINTL" "$fnmatch_libs" "$ECORE_IMF_LIBS" "$execinfo_libs e_cflags="-DUSE_E_CONFIG_H "$E_CFLAGS" "$ECORE_IMF_CFLAGS e_configflags="-DUSE_E_CONFIG_H" ####### Added features ################################################################## e_extra_features=" " # not to use enlightenment signal handler - SIGSEGV, SIGILL, SIGFPE, SIGBUS, SIGABRT e_extra_features+="-D_F_DO_NOT_USE_SIG_HANDLER_ " # enable focus policy - set focus to top stack window e_extra_features+="-D_F_FOCUS_WINDOW_IF_TOP_STACK_ " # enable window group raise e_extra_features+="-D_F_WINDOW_GROUP_RAISE_ " # enable notification layer policy - notification layer:240 e_extra_features+="-D_F_NOTIFICATION_LAYER_POLICY_ " # enable screen lock / unlock e_extra_features+="-D_F_COMP_SCREEN_LOCK_ " # enable set compositor's input region e_extra_features+="-D_F_COMP_INPUT_REGION_SET_ " # enable window move lock / unlock e_extra_features+="-D_F_COMP_MOVE_LOCK_ " # enable composite mode set / get e_extra_features+="-D_F_COMP_COMPOSITE_MODE_ " # using external elementary dialog util instead of e_dialog to display error message e_extra_features+="-D_F_USE_EXTN_DIALOG_ " # change the compositor module's name for additional compositor e_extra_features+="-D_F_ADD_EXTRA_COMPOSITE_NAME " # use desk window profile e_extra_features+="-D_F_USE_DESK_WINDOW_PROFILE_ " # enable to clip border within zone e_extra_features+="-D_F_BORDER_CLIP_TO_ZONE_ " # add shelf control feature e_extra_features+="-D_F_SHELF_INPUT_CONTROL_ " # add extended iconify e_extra_features+="-D_F_USE_EXTENDED_ICONIFY_ " # enable window rotation management per zone #e_extra_features+="-D_F_ZONE_WINDOW_ROTATION_ " # add e logging buffer for debugging purpose e_extra_features+="-D_F_E_LOGBUF_ " # enable the resist effect and add the magnetic effect e_extra_features+="-D_F_USE_RESIST_MAGNETIC_EFFECT_ " # add the type of maximize (E_MAXIMIZE_BOTTOM, E_MAXIMIZE_TOP) e_extra_features+="-D_F_USE_BOTTOM_TOP_MAXIMIZE " # add approved deiconify e_extra_features+="-D_F_DEICONIFY_APPROVE_ " # add transient_for patch e_extra_features+="-D_F_TRANSIENT_FOR_PATCH_ " # add border hook patch e_extra_features+="-D_F_BORDER_HOOK_PATCH_ " # add multi-layer feature of the compositor e_extra_features+="-D_F_COMP_LAYER_ " # add use dlog e_extra_features+="-D_F_USE_DLOG_ " # enable patch to handling except case that a client will do consecutively the Map and Unmap repeatedly. e_extra_features+="-D_F_FIX_POSITION_PROBLEM_ " have_extra_features=no AC_ARG_ENABLE(extra_features, AC_HELP_STRING([--enable-extra-features], [enable extra features (default: no)]), [have_extra_features=$enableval], [have_extra_features=auto]) if test "x$have_extra_features" = "xyes" ; then e_cflags+=$e_extra_features e_configflags+=$e_extra_features fi ########################################################################################## AC_SUBST(e_libs) AC_SUBST(e_cflags) AC_SUBST(e_configflags) AC_SUBST(requirements_e) profile="SLOW_PC" AC_ARG_WITH(profile, AS_HELP_STRING([--with-profile=TARGET_PROFILE], [specify a target format profile of: LOWRES_PDA, MEDIUMRES_PDA, HIRES_PDA, SLOW_PC, MEDIUM_PC, FAST_PC]), [profile=$withval]) AC_MSG_NOTICE([Enlightenment build profile set to $profile]) EDJE_DEF="-DLOWRES_PDA=1 -DMEDIUMRES_PDA=2 -DHIRES_PDA=3 -DSLOW_PC=4 -DMEDIUM_PC=5 -DFAST_PC=6" EDJE_DEF=$EDJE_DEF" -DE17_PROFILE"=$profile AC_SUBST(EDJE_DEF) AC_ARG_WITH(edje-cc, [ --with-edje-cc=PATH specify a specific path to edje_cc], [ v=$withval; edje_cc=$v echo " Enlightenment edje_cc explicitly set to "$edje_cc; ],[ edje_cc=$(pkg-config --variable=prefix edje)/bin/edje_cc ]) AC_SUBST(edje_cc) PKG_CHECK_MODULES(EET, [eet >= 1.6.0]) AC_ARG_WITH(eet-eet, [ --with-eet-eet=PATH specify a specific path to eet utility], [ v=$withval; eet_eet=$v echo " Enlightenment eet explicitly set to "$eet_eet; ],[ eet_eet=$(pkg-config --variable=prefix eet)/bin/eet ]) AC_SUBST(eet_eet) AC_DEFINE(E_INTERNAL, 1, "This define can be used to wrap internal E stuff, as config.h isn't exported") AM_CONDITIONAL(HAVE_BATTERY, false) define([CHECK_MODULE_BATTERY], [ AC_E_CHECK_PKG(BATTERY, [ ecore >= 1.2.0 ecore-file >= 1.2.0 ecore-con >= 1.2.0 eina >= 1.2.0 ], [], [BATTERY=false]) ]) have_openbsd="no" BATTERY_LDFLAGS= case "$host_os" in darwin*) BATTERY_LDFLAGS="-framework Foundation -framework IOKit" ;; openbsd*) have_openbsd="yes" ;; esac AC_SUBST(BATTERY_LDFLAGS) AM_CONDITIONAL([HAVE_OPENBSD], [test "x${have_openbsd}" = "xyes"]) AM_CONDITIONAL(HAVE_TEMPERATURE, false) define([CHECK_MODULE_TEMPERATURE], [ AC_E_CHECK_PKG(TEMPERATURE, [ ecore >= 1.2.0 ecore-file >= 1.2.0 eina >= 1.2.0 ], [], [TEMPERATURE=false]) ]) have_exchange=no AC_ARG_ENABLE(exchange, AC_HELP_STRING([--disable-exchange], [disable Exchange support @<:@default=detect@:>@]), [want_exchange=$enableval], [want_exchange=auto] ) AM_CONDITIONAL(HAVE_EXCHANGE, false) define([CHECK_MODULE_CONF_THEME], [ if test "x$want_exchange" != "xno" ; then AC_E_CHECK_PKG(EXCHANGE, [exchange], [], [:]) else AC_MSG_NOTICE([requested to not use exchange library]) fi ]) have_enotify=no AM_CONDITIONAL([HAVE_ENOTIFY], [false]) AC_ARG_ENABLE([enotify], AC_HELP_STRING([--disable-enotify], [disable Enotify support @<:@default=detect@:>@]), [e_cv_want_enotify=$enableval], AC_CACHE_VAL([e_cv_want_enotify], [e_cv_want_enotify=yes]) ) if test "x$e_cv_want_enotify" != "xno" ; then AC_E_CHECK_PKG(ENOTIFY, [ edbus >= 1.2.0 enotify >= 1.2.0 ], [ AC_DEFINE_UNQUOTED([HAVE_ENOTIFY], [1], [enable enotify]) ], [ AC_MSG_NOTICE([enotify disabled]) e_cv_want_enotify=no ]) else AC_MSG_NOTICE([enotify disabled]) e_cv_want_enotify=no fi AC_SUBST([ENOTIFY_CFLAGS]) AC_SUBST([ENOTIFY_LIBS]) AM_CONDITIONAL(HAVE_NOTIFICATION, false) define([CHECK_MODULE_NOTIFICATION], [ if test "x$e_cv_want_enotify" = "xno" ; then NOTIFICATION=false fi ]) have_ephysics=no AM_CONDITIONAL([HAVE_EPHYSICS], [false]) AC_ARG_ENABLE([ephysics], AC_HELP_STRING([--disable-ephysics], [disable Ephysics support @<:@default=detect@:>@]), [e_cv_want_ephysics=$enableval], AC_CACHE_VAL([e_cv_want_ephysics], [e_cv_want_ephysics=yes]) ) if test "x$e_cv_want_ephysics" != "xno" ; then AC_E_CHECK_PKG(EPHYSICS, [ ephysics ], [ AC_DEFINE_UNQUOTED([HAVE_EPHYSICS], [1], [enable ephysics]) ], [ AC_MSG_NOTICE([ephysics disabled]) e_cv_want_ephysics=no ]) else AC_MSG_NOTICE([ephysics disabled]) e_cv_want_ephysics=no fi AC_SUBST([EPHYSICS_CFLAGS]) AC_SUBST([EPHYSICS_LIBS]) AM_CONDITIONAL(HAVE_PHYSICS, false) define([CHECK_MODULE_PHYSICS], [ if test "x$e_cv_want_ephysics" = "xno" ; then PHYSICS=false fi ]) AM_CONDITIONAL(HAVE_ALSA, false) define([CHECK_MODULE_MIXER], [ if test "x$enable_alsa" = "x" || test "x$enable_alsa" = "xdefault" || test "x$enable_alsa" = "xyes"; then AC_E_CHECK_PKG(ALSA, [alsa >= 1.0.8], [ SOUND_CFLAGS="$ALSA_CFLAGS -DHAVE_ALSA $SOUND_CFLAGS" SOUND_LIBS="$ALSA_LIBS $SOUND_LDFLAGS" ], [ if test "x$enable_alsa" = "xyes"; then AC_MSG_ERROR([alsa library >= 1.0.8 not found]) else AC_MSG_WARN([alsa library development files not present. no alsa support.]) fi ]) else have_alsa=no fi if test "$have_alsa" = "yes"; then AC_DEFINE(HAVE_ALSA, 1, [Define if the ALSA output plugin should be built]) else have_alsa=no fi ]) AC_SUBST(SOUND_CFLAGS) AC_SUBST(SOUND_LIBS) AM_CONDITIONAL(HAVE_ECONNMAN, false) AM_CONDITIONAL(HAVE_DUMMY, false) define([CHECK_MODULE_CONNMAN], [ AC_E_CHECK_PKG(ECONNMAN, [ edbus >= 1.2.0 ], [], [CONNMAN=false]) dnl AC_E_CHECK_PKG(DUMMY, [ connman >= 1.0 ], [], [CONNMAN=false]) ]) AC_SUBST(ECONNMAN_CFLAGS) AC_SUBST(ECONNMAN_LIBS) AM_CONDITIONAL(HAVE_EBLUEZ, false) define([CHECK_MODULE_BLUEZ], [ AC_E_CHECK_PKG(EBLUEZ, [ edbus >= 1.2.0 ebluez >= 1.2.0 ], [], [BLUEZ=false]) ]) AC_SUBST(EBLUEZ_CFLAGS) AC_SUBST(EBLUEZ_LIBS) AM_CONDITIONAL(HAVE_EOFONO, false) define([CHECK_MODULE_OFONO], [ AC_E_CHECK_PKG(EOFONO, [ edbus >= 1.2.0 eofono >= 1.2.0 ], [], [OFONO=false]) ]) AC_SUBST(EOFONO_CFLAGS) AC_SUBST(EOFONO_LIBS) have_wayland_clients=no AC_ARG_ENABLE([wayland-clients], AS_HELP_STRING([--enable-wayland-clients],[enable wayland clients in composite module @<:@default=disabled@:>@]), [e_cv_want_wayland_clients=$enableval], [e_cv_want_wayland_clients=no]) AC_MSG_CHECKING([whether wayland client support is enabled]) AC_MSG_RESULT([${e_cv_want_wayland_clients}]) if test "x$e_cv_want_wayland_clients" != "xno";then PKG_CHECK_MODULES([WAYLAND], [wayland-server egl >= 7.10 glesv2 gl pixman-1 xcb-image], [ have_wayland_clients=yes AC_DEFINE_UNQUOTED([HAVE_WAYLAND_CLIENTS],[1],[enable wayland client support]) ], [have_wayland_clients=no]) else have_wayland_clients=no fi AM_CONDITIONAL([HAVE_WAYLAND_CLIENTS], [test "x${have_wayland_clients}" = "xyes"]) AC_E_OPTIONAL_MODULE([ibar], true) AC_E_OPTIONAL_MODULE([dropshadow], true) AC_E_OPTIONAL_MODULE([clock], true) AC_E_OPTIONAL_MODULE([pager], true) AC_E_OPTIONAL_MODULE([battery], true, [CHECK_MODULE_BATTERY]) AC_E_OPTIONAL_MODULE([temperature], true, [CHECK_MODULE_TEMPERATURE]) AC_E_OPTIONAL_MODULE([notification], true, [CHECK_MODULE_NOTIFICATION]) AC_E_OPTIONAL_MODULE([cpufreq], true) AC_E_OPTIONAL_MODULE([ibox], true) AC_E_OPTIONAL_MODULE([start], true) AC_E_OPTIONAL_MODULE([winlist], true) AC_E_OPTIONAL_MODULE([fileman], true) AC_E_OPTIONAL_MODULE([fileman_opinfo], true) AC_E_OPTIONAL_MODULE([wizard], true) AC_E_OPTIONAL_MODULE([conf], true) AC_E_OPTIONAL_MODULE([conf_wallpaper2], true) AC_E_OPTIONAL_MODULE([conf_theme], true, [CHECK_MODULE_CONF_THEME]) AC_E_OPTIONAL_MODULE([conf_intl], true) AC_E_OPTIONAL_MODULE([msgbus], true) AC_E_OPTIONAL_MODULE([conf_applications], true) AC_E_OPTIONAL_MODULE([conf_display], true) AC_E_OPTIONAL_MODULE([conf_shelves], true) AC_E_OPTIONAL_MODULE([conf_keybindings], true) AC_E_OPTIONAL_MODULE([conf_edgebindings], true) AC_E_OPTIONAL_MODULE([conf_window_remembers], true) AC_E_OPTIONAL_MODULE([conf_window_manipulation], true) AC_E_OPTIONAL_MODULE([conf_menus], true) AC_E_OPTIONAL_MODULE([conf_dialogs], true) AC_E_OPTIONAL_MODULE([conf_performance], true) AC_E_OPTIONAL_MODULE([conf_paths], true) AC_E_OPTIONAL_MODULE([conf_interaction], true) AC_E_OPTIONAL_MODULE([gadman], true) AC_E_OPTIONAL_MODULE([mixer], true, [CHECK_MODULE_MIXER]) AC_E_OPTIONAL_MODULE([connman], true, [CHECK_MODULE_CONNMAN]) AC_E_OPTIONAL_MODULE([bluez], true, [CHECK_MODULE_BLUEZ]) AC_E_OPTIONAL_MODULE([ofono], true, [CHECK_MODULE_OFONO]) AC_E_OPTIONAL_MODULE([illume2], true) AC_E_OPTIONAL_MODULE([syscon], true) AC_E_OPTIONAL_MODULE([everything], true) AC_E_OPTIONAL_MODULE([systray], true) AC_E_OPTIONAL_MODULE([comp], true) AC_E_OPTIONAL_MODULE([physics], true, [CHECK_MODULE_PHYSICS]) AC_E_OPTIONAL_MODULE([quickaccess], true) AC_E_OPTIONAL_MODULE([shot], true) AC_E_OPTIONAL_MODULE([backlight], true) AC_E_OPTIONAL_MODULE([tasks], true) AC_E_OPTIONAL_MODULE([conf_randr], true) AC_E_OPTIONAL_MODULE([xkbswitch], true) AC_E_OPTIONAL_MODULE([tiling], true) AC_E_OPTIONAL_MODULE([access], true) SUSPEND="" HIBERNATE="" case "$host_os" in freebsd*|pcbsd*) SUSPEND="acpiconf -s3" AC_MSG_NOTICE([use suspend method: $SUSPEND]) AC_SUBST(SUSPEND) HIBERNATE="acpiconf -s4" AC_MSG_NOTICE([use hibernate method: $HIBERNATE]) AC_SUBST(HIBERNATE) ;; *) AC_PATH_PROGS([SUSPEND], [sleep.sh pm-suspend],[/etc/acpi/sleep.sh], [/etc/acpi:/sbin:/usr/sbin:$PATH]) if test "$SUSPEND" = "/etc/acpi/sleep.sh" ; then SUSPEND="/etc/acpi/sleep.sh force" AC_MSG_NOTICE([use suspend method: $SUSPEND]) fi AC_PATH_PROGS([HIBERNATE], [hibernate.sh pm-hibernate],[/etc/acpi/hibernate.sh], [/etc/acpi:/sbin:/usr/sbin:$PATH]) if test "$HIBERNATE" = "/etc/acpi/hibernate.sh" ; then HIBERNATE="/etc/acpi/hibernate.sh force" AC_MSG_NOTICE([use hibernate method: $HIBERNATE]) fi ;; esac m4_ifdef([v_mic], [ EFL_COMPILER_FLAG([-Wshadow]) EFL_COMPILER_FLAG([-Wall]) EFL_COMPILER_FLAG([-W]) ]) SUID_CFLAGS=-fPIE SUID_LDFLAGS=-pie AC_SUBST([SUID_CFLAGS]) AC_SUBST([SUID_LDFLAGS]) AC_OUTPUT([ Makefile enlightenment.spec enlightenment.pc src/Makefile src/bin/Makefile src/bin/e_fm_shared_types.h src/bin/e_fm/Makefile src/modules/Makefile src/modules/ibar/Makefile src/modules/ibar/module.desktop src/modules/dropshadow/Makefile src/modules/dropshadow/module.desktop src/modules/clock/Makefile src/modules/clock/module.desktop src/modules/pager/Makefile src/modules/pager/module.desktop src/modules/battery/Makefile src/modules/battery/module.desktop src/modules/temperature/Makefile src/modules/temperature/module.desktop src/modules/notification/Makefile src/modules/notification/module.desktop src/modules/cpufreq/Makefile src/modules/cpufreq/module.desktop src/modules/ibox/Makefile src/modules/ibox/module.desktop src/modules/start/Makefile src/modules/start/module.desktop src/modules/winlist/Makefile src/modules/winlist/module.desktop src/modules/fileman/Makefile src/modules/fileman/module.desktop src/modules/fileman_opinfo/Makefile src/modules/fileman_opinfo/module.desktop src/modules/wizard/Makefile src/modules/conf/Makefile src/modules/conf/module.desktop src/modules/conf_wallpaper2/Makefile src/modules/conf_wallpaper2/module.desktop src/modules/conf_theme/Makefile src/modules/conf_theme/module.desktop src/modules/conf_intl/Makefile src/modules/conf_intl/module.desktop src/modules/conf_applications/Makefile src/modules/conf_applications/module.desktop src/modules/conf_display/Makefile src/modules/conf_display/module.desktop src/modules/conf_shelves/Makefile src/modules/conf_shelves/module.desktop src/modules/conf_keybindings/Makefile src/modules/conf_keybindings/module.desktop src/modules/conf_edgebindings/Makefile src/modules/conf_edgebindings/module.desktop src/modules/conf_window_remembers/Makefile src/modules/conf_window_remembers/module.desktop src/modules/conf_window_manipulation/Makefile src/modules/conf_window_manipulation/module.desktop src/modules/conf_menus/Makefile src/modules/conf_menus/module.desktop src/modules/conf_dialogs/Makefile src/modules/conf_dialogs/module.desktop src/modules/conf_performance/Makefile src/modules/conf_performance/module.desktop src/modules/conf_paths/Makefile src/modules/conf_paths/module.desktop src/modules/conf_interaction/Makefile src/modules/conf_interaction/module.desktop src/modules/msgbus/Makefile src/modules/msgbus/module.desktop src/modules/conf_randr/Makefile src/modules/conf_randr/module.desktop src/modules/gadman/Makefile src/modules/gadman/module.desktop src/modules/mixer/Makefile src/modules/mixer/module.desktop src/modules/connman/Makefile src/modules/connman/module.desktop src/modules/bluez/Makefile src/modules/bluez/module.desktop src/modules/ofono/Makefile src/modules/ofono/module.desktop src/modules/illume2/Makefile src/modules/illume2/doc/illume.dox src/modules/illume2/doc/Makefile src/modules/illume2/images/Makefile src/modules/illume2/module.desktop src/modules/illume2/keyboards/Makefile src/modules/illume2/policies/Makefile src/modules/illume2/policies/illume/Makefile src/modules/illume2/policies/tablet/Makefile src/modules/illume-home/Makefile src/modules/illume-home/module.desktop src/modules/illume-home-toggle/Makefile src/modules/illume-home-toggle/module.desktop src/modules/illume-softkey/Makefile src/modules/illume-softkey/module.desktop src/modules/illume-softkey/images/Makefile src/modules/illume-keyboard/Makefile src/modules/illume-keyboard/module.desktop src/modules/illume-keyboard/keyboards/Makefile src/modules/illume-keyboard/dicts/Makefile src/modules/illume-keyboard/images/Makefile src/modules/illume-indicator/Makefile src/modules/illume-indicator/module.desktop src/modules/illume-indicator/images/Makefile src/modules/illume-kbd-toggle/Makefile src/modules/illume-kbd-toggle/module.desktop src/modules/illume-mode-toggle/Makefile src/modules/illume-mode-toggle/module.desktop src/modules/illume-bluetooth/Makefile src/modules/illume-bluetooth/module.desktop src/modules/syscon/Makefile src/modules/syscon/module.desktop src/modules/everything/Makefile src/modules/everything/module.desktop src/modules/everything/everything.pc src/modules/systray/Makefile src/modules/systray/module.desktop src/modules/comp/Makefile src/modules/comp/module.desktop src/modules/physics/Makefile src/modules/physics/module.desktop src/modules/quickaccess/Makefile src/modules/quickaccess/module.desktop src/modules/shot/Makefile src/modules/shot/module.desktop src/modules/backlight/Makefile src/modules/backlight/module.desktop src/modules/tasks/Makefile src/modules/tasks/module.desktop src/modules/xkbswitch/Makefile src/modules/xkbswitch/module.desktop src/modules/tiling/Makefile src/modules/tiling/module.desktop src/modules/access/Makefile src/modules/access/module.desktop src/preload/Makefile data/Makefile data/images/Makefile data/flags/Makefile data/favorites/Makefile data/desktop/Makefile data/input_methods/Makefile data/themes/Makefile data/themes/images/Makefile data/xsession/Makefile data/xsession/enlightenment.desktop data/tools/Makefile data/etc/Makefile data/etc/sysactions.conf data/icons/Makefile data/backgrounds/Makefile doc/Makefile doc/Doxyfile doc/e.dox config/Makefile config/default/Makefile config/samsung/Makefile $po_makefile_in ]) # report txt_strip() { echo "[$]@" | sed -e 's/^[[ \t]]*\([[^ \t]]*\)[[ \t]]*$/\1/g' } echo cat << SUMMARY_EOF Summary: * project.........: $PACKAGE $VERSION * prefix..........: $(txt_strip $prefix) * CFLAGS..........: $(txt_strip $CFLAGS) * LDFLAGS.........: $(txt_strip $LDFLAGS) SUMMARY_EOF echo cat << DEVICE_EOF Preferred Backends: * device..............: $device_backend * hal_mount...........: $e_cv_want_mount_hal * udisks_mount........: $e_cv_want_mount_udisks * eeze_mount..........: $e_cv_want_mount_eeze DEVICE_EOF echo UNUSED_MODS="" for mod in $UNUSED_OPTIONAL_MODULES; do UNUSED_MODS="$UNUSED_MODS${COLOR_HRED}$mod${COLOR_END} " done cat << MODULES_EOF Modules: * disabled........: $(txt_strip $UNUSED_MODS) MODULES_EOF echo cat << DOCS_EOF Documentation: * enabled.........: ${build_doc} DOCS_EOF if test "x${build_doc}" = "xyes" ; then echo " Building..........: make doc" fi echo cat << COMPILE_EOF Compilation........: make (or gmake) COMPILE_EOF echo cat << INSTALL_EOF Installation.......: make all install (as root if needed, with 'su' or 'sudo') INSTALL_EOF echo