forked from enlightenment/efl
4766 lines
131 KiB
Plaintext
4766 lines
131 KiB
Plaintext
EFL_VERSION([1], [10], [0], [release])
|
|
AC_INIT([efl], [efl_version-alpha1], [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__ */
|
|
])
|
|
|
|
AC_USE_SYSTEM_EXTENSIONS
|
|
|
|
AM_INIT_AUTOMAKE([1.6 dist-bzip2 -Wall color-tests])
|
|
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
|
|
|
|
CFOPT_WARNING=""
|
|
|
|
#### Apply configuring with legacy api's only, eo api's or both.
|
|
|
|
EFL_API_LEGACY_DEF="#define EFL_NOLEGACY_API_SUPPORT"
|
|
EFL_API_EO_DEF="#define EFL_EO_API_SUPPORT"
|
|
efl_api="both"
|
|
|
|
#### For the moment the Eo EFL API is not ready you need to explicitely optin.
|
|
EFL_ENABLE_EO_API_SUPPORT
|
|
EFL_ENABLE_BETA_API_SUPPORT
|
|
|
|
AC_ARG_WITH([api],
|
|
[AC_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"
|
|
EFL_API_EO_DEF="#define EFL_EO_API_SUPPORT"
|
|
;;
|
|
legacy)
|
|
EFL_API_LEGACY_DEF=""
|
|
EFL_API_EO_DEF=""
|
|
;;
|
|
both)
|
|
EFL_API_LEGACY_DEF=""
|
|
EFL_API_EO_DEF="#define EFL_EO_API_SUPPORT"
|
|
;;
|
|
*) AC_MSG_ERROR([Invalid api (${efl_api}): must be eo, legacy or both]) ;;
|
|
esac
|
|
|
|
AC_SUBST(EFL_API_LEGACY_DEF)
|
|
AC_SUBST(EFL_API_EO_DEF)
|
|
|
|
#### Additional options to configure
|
|
|
|
# string to identify the build
|
|
AC_ARG_WITH([id],
|
|
[AC_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],
|
|
[AC_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"
|
|
case "${build_profile}" in
|
|
dev|debug)
|
|
prefer_assert="yes"
|
|
;;
|
|
esac
|
|
|
|
# TODO: add some build "profile" (server, full, etc...)
|
|
|
|
AC_ARG_WITH([crypto],
|
|
[AC_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],
|
|
[AC_HELP_STRING([--with-tests=none|regular|coverage],
|
|
[choose testing method: regular, coverage or none.
|
|
@<:@default=none@:>@])],
|
|
[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
|
|
|
|
dbusservicedir="${datadir}/dbus-1/services"
|
|
AC_ARG_WITH([dbus-services],
|
|
[AC_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([edje], [edje-cc])
|
|
EFL_WITH_BIN([eolian], [eolian-gen])
|
|
EFL_WITH_BIN([eolian_cxx], [eolian-cxx])
|
|
|
|
#### Default values
|
|
|
|
requirements_pc_efl=""
|
|
requirements_pc_deps_efl=""
|
|
requirements_libs_efl=""
|
|
requirements_cflags_efl=""
|
|
|
|
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*)
|
|
AC_MSG_ERROR([ceGCC compiler is not supported anymore. Exiting...])
|
|
;;
|
|
mingw32ce*)
|
|
MODULE_ARCH="v"
|
|
MODULE_EXT=".dll"
|
|
;;
|
|
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"
|
|
;;
|
|
*)
|
|
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)
|
|
|
|
have_systemd_pkg="no"
|
|
have_wince="no"
|
|
have_win32="no"
|
|
have_windows="no"
|
|
have_darwin="no"
|
|
have_linux="no"
|
|
have_ps3="no"
|
|
case "$host_os" in
|
|
mingw32ce*)
|
|
have_wince="yes"
|
|
have_windows="yes"
|
|
;;
|
|
mingw*|cygwin*)
|
|
# TODO: check cygwin* here
|
|
have_win32="yes"
|
|
have_windows="yes"
|
|
EFL_CFLAGS="${EFL_CFLAGS} -D__USE_MINGW_ANSI_STDIO"
|
|
;;
|
|
darwin*)
|
|
have_darwin="yes"
|
|
;;
|
|
linux*)
|
|
have_linux="yes"
|
|
have_systemd_pkg="auto"
|
|
;;
|
|
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])
|
|
|
|
# TODO: move me to m4 file that setups the windows related variables
|
|
AM_CONDITIONAL([HAVE_WINCE], [test "x${have_wince}" = "xyes"])
|
|
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"])
|
|
|
|
|
|
#### 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
|
|
|
|
### gettext
|
|
|
|
AM_GNU_GETTEXT_VERSION([0.17])
|
|
|
|
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
|
|
|
|
AM_PROG_AS
|
|
AC_PROG_CXX
|
|
AC_PROG_OBJC
|
|
AC_LANG(C)
|
|
AC_PROG_CC_C99
|
|
AM_PROG_CC_C_O
|
|
AC_PROG_SED
|
|
|
|
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
|
|
# 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
|
|
|
|
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
|
|
EFL_COV_CFLAGS="${EFL_COV_CFLAGS} -fprofile-arcs -ftest-coverage"
|
|
EFL_COV_LIBS="${EFL_COV_LIBS} -lgcov"
|
|
if test "x${prefer_assert}" = "xno"; then
|
|
EFL_COV_CFLAGS="${EFL_COV_CFLAGS} -DNDEBUG"
|
|
else
|
|
EFL_COV_CFLAGS="${EFL_COV_CFLAGS} -g -O0 -DDEBUG"
|
|
fi
|
|
else
|
|
AC_MSG_ERROR([lcov is not found])
|
|
fi
|
|
fi
|
|
|
|
AM_CONDITIONAL([EFL_ENABLE_COVERAGE], [test "${want_coverage}" = "yes"])
|
|
|
|
# ragel
|
|
|
|
AC_CHECK_PROG([have_ragel], [ragel], [yes], [no])
|
|
AM_CONDITIONAL([EFL_HAVE_RAGEL], [test "${have_ragel}" = "yes"])
|
|
|
|
#### Checks for libraries
|
|
|
|
# check unit testing library
|
|
|
|
if test "${want_tests}" = "yes"; then
|
|
PKG_CHECK_MODULES([CHECK], [check >= 0.9.5])
|
|
fi
|
|
AM_CONDITIONAL([EFL_ENABLE_TESTS], [test "${want_tests}" = "yes"])
|
|
|
|
|
|
# check for crypto/tls library to use
|
|
case "$build_crypto" in
|
|
gnutls)
|
|
CFOPT_WARNING="xyes"
|
|
EFL_DEPEND_PKG([crypto], [GNUTLS], [gnutls >= 2.12.16])
|
|
|
|
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],
|
|
[AC_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])
|
|
|
|
#### 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/epoll.h \
|
|
sys/inotify.h \
|
|
sys/signalfd.h \
|
|
sys/types.h \
|
|
sys/param.h \
|
|
sys/mman.h \
|
|
netinet/in.h \
|
|
])
|
|
|
|
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"])
|
|
|
|
|
|
EFL_CHECK_PATH_MAX
|
|
|
|
|
|
#### 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])
|
|
|
|
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([EFL], [-Wall -Wextra -Wpointer-arith -Wno-missing-field-initializers -fvisibility=hidden -fdata-sections -ffunction-sections])
|
|
EFL_CHECK_LINKER_FLAGS([EFL], [-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_TRY_COMPILE([int x;], [int x = 0; (void)x;],
|
|
[AC_MSG_RESULT([no])
|
|
EFL_CHECK_COMPILER_FLAGS([EFL], [-Wshadow])],
|
|
[AC_MSG_RESULT([yes])])
|
|
CFLAGS="${CFLAGS_save}"
|
|
;;
|
|
|
|
debug)
|
|
;;
|
|
|
|
release)
|
|
;;
|
|
esac
|
|
|
|
EFL_ATTRIBUTE_VECTOR
|
|
EFL_ATTRIBUTE_ALWAYS_INLINE
|
|
|
|
EFL_LIBS="${EFL_LIBS}"
|
|
EFL_CFLAGS="${EFL_CFLAGS}"
|
|
|
|
## CPU architecture specific assembly
|
|
|
|
build_cpu_mmx="no"
|
|
build_cpu_sse3="no"
|
|
build_cpu_altivec="no"
|
|
build_cpu_neon="no"
|
|
|
|
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*)
|
|
build_cpu_neon="yes"
|
|
AC_MSG_CHECKING([whether to use NEON instructions])
|
|
CFLAGS_save="${CFLAGS}"
|
|
CFLAGS="${CFLAGS} -mfpu=neon"
|
|
AC_TRY_COMPILE([#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}"
|
|
;;
|
|
esac
|
|
|
|
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 \
|
|
])
|
|
|
|
AC_FUNC_ALLOCA
|
|
|
|
EFL_CHECK_FUNCS([EFL], [fnmatch gettimeofday dirfd fcntl])
|
|
|
|
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 ######################
|
|
|
|
AC_ARG_ENABLE([systemd],
|
|
[AC_HELP_STRING([--enable-systemd],
|
|
[Enable systemd support. @<:@default=disabled@:>@])],
|
|
[
|
|
if test "x${enableval}" = "xyes" ; then
|
|
want_systemd="yes"
|
|
else
|
|
want_systemd="no"
|
|
fi
|
|
], [
|
|
want_systemd="no"
|
|
])
|
|
|
|
systemd_dbus_prefix="# "
|
|
if test "${want_systemd}" = "yes"; then
|
|
systemd_dbus_prefix=""
|
|
fi
|
|
AC_SUBST(systemd_dbus_prefix)
|
|
|
|
AC_ARG_WITH([systemdunitdir],
|
|
AC_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-daemon >= 192 libsystemd-journal >= 192],
|
|
[have_systemd_pkg="yes"],
|
|
[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 dependencie requested but not found])
|
|
fi
|
|
|
|
AM_CONDITIONAL([WANT_SYSTEMD], [test "${want_systemd}" = "yes"])
|
|
|
|
#### Platform-dependent
|
|
DL_LIBS=""
|
|
DL_INTERNAL_LIBS=""
|
|
|
|
#### 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
|
|
|
|
EVIL_DLFCN_LIBS=""
|
|
if test "${have_wince}" = "xyes"; then
|
|
EFL_ADD_LIBS([EVIL], [-lws2])
|
|
EVIL_DLFCN_LIBS="-ltoolhelp"
|
|
else
|
|
EFL_ADD_LIBS([EVIL], [-lole32 -lws2_32 -lsecur32 -luuid])
|
|
EVIL_DLFCN_LIBS="-lpsapi"
|
|
fi
|
|
|
|
AC_SUBST([EVIL_DLFCN_LIBS])
|
|
|
|
### Checks for header files
|
|
|
|
### Checks for types
|
|
|
|
### Checks for structures
|
|
|
|
### Checks for compiler characteristics
|
|
|
|
EVIL_DLFCN_CPPFLAGS="-DEFL_EVIL_DLFCN_BUILD -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_DLFCN_CPPFLAGS])
|
|
AC_SUBST([EVIL_CFLAGS_WRN])
|
|
AC_SUBST([EVIL_CXXFLAGS])
|
|
|
|
### Checks for linker characteristics
|
|
|
|
### Checks for library functions
|
|
|
|
DL_LIBS="lib/evil/libdl.la"
|
|
DL_INTERNAL_LIBS="lib/evil/libdl.la"
|
|
|
|
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="3"
|
|
have_stringshare_usage="no"
|
|
want_valgrind="no"
|
|
want_debug_malloc="no"
|
|
want_debug_threads="no"
|
|
want_default_mempool="no"
|
|
want_cow_magic="no"
|
|
;;
|
|
esac
|
|
|
|
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],
|
|
[AC_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"])
|
|
|
|
EINA_CONFIG([MAGIC_DEBUG], [test "x${have_magic_debug}" = "xyes"])
|
|
|
|
### Checks for programs
|
|
|
|
### Checks for libraries
|
|
EFL_PLATFORM_DEPEND([EINA], [all])
|
|
|
|
EFL_ADD_LIBS([EINA], [-lm])
|
|
|
|
## Options
|
|
|
|
# Valgrind
|
|
AC_ARG_ENABLE([valgrind],
|
|
[AC_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-journal])
|
|
|
|
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])
|
|
|
|
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
|
|
|
|
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_DEBUG_THREADS], [test "x${want_debug_threads}" = "xyes"])
|
|
EINA_CONFIG([HAVE_POSIX_SPINLOCK], [test "x${efl_have_posix_threads_spinlock}" = "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])
|
|
|
|
EFL_CXX_COMPILE_STDCXX_11([ext])
|
|
if test "x${HAVE_CXX11}" = "x1"; then
|
|
have_cxx11="yes"
|
|
else
|
|
have_cxx11="no"
|
|
fi
|
|
|
|
AM_CONDITIONAL([HAVE_CXX11], [test "x${have_cxx11}" = "xyes"])
|
|
|
|
EFL_INTERNAL_DEPEND_PKG([EINA_CXX], [Eina])
|
|
EFL_EVAL_PKGS([EINA_CXX])
|
|
|
|
EFL_LIB_END([Eina_Cxx])
|
|
#### End of Eina CXX
|
|
|
|
#### Eet
|
|
|
|
EFL_LIB_START([Eet])
|
|
|
|
### Default values
|
|
|
|
### Additional options to configure
|
|
|
|
### Checks for programs
|
|
|
|
### Checks for libraries
|
|
|
|
## 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_CHECK_LIBS([EET], [libjpeg zlib])
|
|
|
|
EFL_INTERNAL_DEPEND_PKG([EET], [eina])
|
|
|
|
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
|
|
|
|
#### 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
|
|
|
|
#### 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
|
|
|
|
### Check availability
|
|
|
|
EFL_LIB_END([Eo])
|
|
#### End of Eo
|
|
|
|
#### 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([Eolian_Cxx])
|
|
### Default values
|
|
|
|
### Additional options to configure
|
|
|
|
### Checks for programs
|
|
|
|
## Compatibility layers
|
|
|
|
### Checks for libraries
|
|
EFL_INTERNAL_DEPEND_PKG([EOLIAN], [eina])
|
|
EFL_INTERNAL_DEPEND_PKG([EOLIAN], [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])
|
|
|
|
#### Evas
|
|
|
|
EFL_LIB_START([Evas])
|
|
|
|
### Additional options to configure
|
|
|
|
# X11
|
|
AC_ARG_WITH([x11],
|
|
[AC_HELP_STRING([--with-x11=xlib|xcb|none],
|
|
[X11 method to use: xlib, xcb or none])])
|
|
|
|
if test "x${have_windows}" = "xyes" || test "x${have_ps3}" = "xyes"; then
|
|
with_x11="none"
|
|
elif test "x${with_x11}" = "x"; then
|
|
with_x11="xlib"
|
|
fi
|
|
|
|
want_x11_xlib="no"
|
|
want_x11_xcb="no"
|
|
want_x11_none="no"
|
|
want_x11_any="no"
|
|
case "${with_x11}" in
|
|
xlib)
|
|
want_x11_xlib="yes"
|
|
want_x11_any="yes"
|
|
;;
|
|
xcb)
|
|
want_x11_xcb="yes"
|
|
want_x11_any="yes"
|
|
CFOPT_WARNING="xyes"
|
|
;;
|
|
none)
|
|
want_x11_none="yes"
|
|
;;
|
|
*)
|
|
AC_MSG_ERROR([Unknown build x11 --with-x11=${with_x11}])
|
|
;;
|
|
esac
|
|
|
|
# OpenGL
|
|
AC_ARG_WITH([opengl],
|
|
[AC_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"
|
|
want_x11_xcb_opengl="no"
|
|
if test "${with_opengl}" != "none"; then
|
|
want_x11_xlib_opengl="${want_x11_xlib}"
|
|
want_x11_xcb_opengl="${want_x11_xcb}"
|
|
want_x11_any_opengl="${want_x11_any}"
|
|
fi
|
|
|
|
# Wayland
|
|
AC_ARG_ENABLE([wayland],
|
|
[AC_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.3.0])
|
|
fi
|
|
|
|
# Fb
|
|
AC_ARG_ENABLE([fb],
|
|
[AC_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"])
|
|
|
|
# SDL
|
|
AC_ARG_ENABLE([sdl],
|
|
[AC_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([sdl >= 1.2.0])
|
|
fi
|
|
|
|
# We only enable SDL with opengl if it is not 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
|
|
dnl AC_ARG_ENABLE([cocoa],
|
|
dnl [AC_HELP_STRING([--enable-cocoa],
|
|
dnl [enable MacOS X Cocoa . @<:@default=disabled@:>@])],
|
|
dnl [
|
|
dnl if test "x${enableval}" = "xyes" ; then
|
|
dnl want_cocoa="yes"
|
|
dnl else
|
|
dnl want_cocoa="no"
|
|
dnl fi
|
|
dnl ],
|
|
dnl [want_cocoa="no"])
|
|
dnl
|
|
dnl if test "${want_cocoa}" = "yes"; then
|
|
dnl test cocoa requirements (objc and Cocoa/Cocoa.h)
|
|
dnl fi
|
|
want_cocoa="no"
|
|
|
|
# Drm
|
|
AC_ARG_ENABLE([drm],
|
|
[AC_HELP_STRING([--enable-drm],
|
|
[enable drm engine. @<:@default=disabled@:>@])],
|
|
[
|
|
if test "x${enableval}" = "xyes" ; then
|
|
want_drm="yes"
|
|
else
|
|
want_drm="no"
|
|
fi
|
|
],
|
|
[want_drm="no"])
|
|
|
|
want_drm_hw_accel="no"
|
|
AC_ARG_ENABLE([drm-hw-accel],
|
|
[AC_HELP_STRING([--enable-drm-hw-accel],
|
|
[enable drm hardware acceleration. @<:@default=disabled@:>@])],
|
|
[
|
|
if test "x${enableval}" = "xyes" ; then
|
|
want_drm_hw_accel="yes"
|
|
else
|
|
want_drm_hw_accel="no"
|
|
fi
|
|
],
|
|
[want_drm_hw_accel="no"])
|
|
|
|
|
|
# Fontconfig
|
|
AC_ARG_ENABLE([fontconfig],
|
|
[AC_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],
|
|
[AC_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"])
|
|
|
|
# Eo Id
|
|
AC_ARG_ENABLE([eo_id],
|
|
[AC_HELP_STRING([--disable-eo-id],
|
|
[disable Eo indirection. @<:@default=enabled@:>@])],
|
|
[
|
|
if test "x${enableval}" = "xyes" ; then
|
|
want_eo_id="yes"
|
|
else
|
|
want_eo_id="no"
|
|
CFOPT_WARNING="xyes"
|
|
fi
|
|
],
|
|
[want_eo_id="yes"])
|
|
|
|
# Harfbuzz
|
|
AC_ARG_ENABLE([harfbuzz],
|
|
[AC_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"])
|
|
|
|
# Egl
|
|
AC_ARG_ENABLE([egl],
|
|
[AC_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"])
|
|
|
|
# Pixman
|
|
AC_ARG_ENABLE([pixman],
|
|
[AC_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],
|
|
[AC_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],
|
|
[AC_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],
|
|
[AC_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,
|
|
AC_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],
|
|
[AC_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],
|
|
[AC_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"])
|
|
|
|
# Tile rotate
|
|
AC_ARG_ENABLE([tile-rotate],
|
|
[AC_HELP_STRING([--enable-tile-rotate],
|
|
[Enable tiled rotate algorithm. @<:@default=disabled@:>@])],
|
|
[
|
|
if test "x${enableval}" = "xyes" ; then
|
|
have_tile_rotate="yes"
|
|
CFOPT_WARNING="xyes"
|
|
else
|
|
have_tile_rotate="no"
|
|
fi
|
|
],
|
|
[have_tile_rotate="no"])
|
|
|
|
|
|
# Image Loaders
|
|
|
|
ARG_ENABLE_EVAS_IMAGE_LOADER(BMP, static)
|
|
ARG_ENABLE_EVAS_IMAGE_LOADER(Eet, static)
|
|
ARG_ENABLE_EVAS_IMAGE_LOADER(Generic, static)
|
|
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)
|
|
|
|
### Default values
|
|
|
|
want_evas_engine_software_gdi="${have_win32}"
|
|
want_evas_engine_software_ddraw="${have_win32}"
|
|
want_evas_engine_gl_cocoa="${want_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 "${have_wince}" = "yes"; then
|
|
want_fontconfig="no"
|
|
want_evas_image_loader_gif="no"
|
|
want_evas_image_loader_tiff="no"
|
|
want_evas_image_loader_webp="no"
|
|
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_ADD_LIBS([EVAS], [-lm])
|
|
|
|
# Freetype
|
|
EFL_DEPEND_PKG([EVAS], [FREETYPE], [freetype2 >= 9.3.0])
|
|
|
|
## 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])])
|
|
])
|
|
|
|
define([EVAS_ENGINE_DEP_CHECK_PSL1GHT], [
|
|
AC_CHECK_HEADER([rsx/rsx.h], [:], [AC_MSG_ERROR([Missing rsx/rsx.h])])
|
|
])
|
|
|
|
EVAS_ENGINE([buffer], [static])
|
|
EVAS_ENGINE([fb], [${want_fb}], [EVAS_ENGINE_DEP_CHECK_FB])
|
|
EVAS_ENGINE([psl1ght], [${have_ps3}], [EVAS_ENGINE_DEP_CHECK_PSL1GHT])
|
|
|
|
# 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])
|
|
|
|
|
|
# Software XCB
|
|
|
|
have_evas_engine_software_xcb="no"
|
|
if test "${with_x11}" = "xcb" ; then
|
|
EVAS_CHECK_ENGINE([software-xcb], [${want_x11_xcb}], [no], [Software XCB])
|
|
else
|
|
AM_CONDITIONAL([BUILD_ENGINE_SOFTWARE_XCB], [false])
|
|
AM_CONDITIONAL([EVAS_STATIC_BUILD_SOFTWARE_XCB], [false])
|
|
fi
|
|
|
|
AC_MSG_CHECKING([whether to build Software XCB Engine])
|
|
AC_MSG_RESULT([${have_evas_engine_software_xcb}])
|
|
|
|
# No Software XCB ? Then try Software Xlib
|
|
|
|
have_evas_engine_software_xlib="no"
|
|
if test "x${want_x11_xcb}" = "xno" ; then
|
|
EVAS_CHECK_ENGINE([software-xlib], [${want_x11_xlib}], [no], [Software Xlib])
|
|
else
|
|
AM_CONDITIONAL([BUILD_ENGINE_SOFTWARE_XLIB], [false])
|
|
AM_CONDITIONAL([EVAS_STATIC_BUILD_SOFTWARE_XLIB], [false])
|
|
fi
|
|
|
|
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" || test "x${have_evas_engine_software_xcb}" = "xyes" || test "x${have_evas_engine_software_xcb}" = "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" || test "x${have_evas_engine_software_xcb}" = "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_xcb}" = "xstatic" || test "x${have_evas_engine_software_xlib}" = "xstatic"])
|
|
|
|
# Needed for evas-software-x11.pc
|
|
|
|
AC_SUBST([have_evas_engine_software_xlib])
|
|
AC_SUBST([have_evas_engine_software_xcb])
|
|
|
|
# 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 XCB
|
|
|
|
have_evas_engine_gl_xcb="no"
|
|
if test "${want_x11_xcb_opengl}" = "yes"; then
|
|
EVAS_CHECK_ENGINE([gl-xcb], [${want_x11_xcb_opengl}], [no], [OpenGL XCB])
|
|
else
|
|
AM_CONDITIONAL([BUILD_ENGINE_GL_XCB], [false])
|
|
AM_CONDITIONAL([EVAS_STATIC_BUILD_GL_XCB], [false])
|
|
fi
|
|
|
|
AC_MSG_CHECKING([whether to build OpenGL XCB Engine])
|
|
AC_MSG_RESULT([${have_evas_engine_gl_xcb}])
|
|
|
|
# No openGL XCB ? Then try OpenGL Xlib
|
|
|
|
have_evas_engine_gl_xlib="no"
|
|
if test "x${have_evas_engine_gl_xcb}" = "xno" ; then
|
|
EVAS_CHECK_ENGINE([gl-xlib], [${want_x11_xlib_opengl}], [no], [OpenGL XLib])
|
|
else
|
|
AM_CONDITIONAL([BUILD_ENGINE_GL_XLIB], [false])
|
|
AM_CONDITIONAL([EVAS_STATIC_BUILD_GL_XLIB], [false])
|
|
fi
|
|
|
|
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" || test "x${have_evas_engine_gl_xcb}" = "xyes" || test "x${have_evas_engine_gl_xcb}" = "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" || test "x${have_evas_engine_gl_xcb}" = "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_xcb}" = "xstatic" || test "x${have_evas_engine_gl_xlib}" = "xstatic"])
|
|
|
|
# Needed for evas-opengl-x11.pc
|
|
|
|
AC_SUBST([have_evas_engine_gl_xlib])
|
|
AC_SUBST([have_evas_engine_gl_xcb])
|
|
|
|
# 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 <SDL/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 <SDL/SDL_video.h>])
|
|
fi
|
|
|
|
# OpenGL common
|
|
evas_engine_gl_common_cflags=""
|
|
evas_engine_gl_common_libs=""
|
|
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_xcb" = "xyes" || \
|
|
test "x$have_evas_engine_gl_sdl" = "xyes" || \
|
|
test "x$have_evas_engine_gl_cocoa" = "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_xcb" = "xstatic" || \
|
|
test "x$have_evas_engine_gl_sdl" = "xstatic" || \
|
|
test "x$have_evas_engine_gl_cocoa" = "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"])
|
|
|
|
|
|
## 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}])
|
|
|
|
dnl Windows has no sigsetjmp function, nor equivalent.
|
|
dnl So we disable the jpeg saver.
|
|
dnl TODO: must find a workaround
|
|
if test "${have_windows}" = "yes"; then
|
|
have_evas_image_saver_jpeg="no"
|
|
elif test "x${have_evas_image_loader_jpeg}" = "xyes" || \
|
|
test "x${have_evas_image_loader_jpeg}" = "xstatic"; then
|
|
AC_DEFINE([EVAS_BUILD_SAVER_JPEG], [1], [Build JPEG saver])
|
|
have_evas_image_saver_jpeg="yes"
|
|
fi
|
|
|
|
AM_CONDITIONAL([BUILD_SAVER_JPEG], [test "x${have_evas_image_saver_jpeg}" = "xyes"])
|
|
|
|
EFL_EVAL_PKGS([EVAS])
|
|
|
|
### Checks for header files
|
|
|
|
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])]
|
|
)
|
|
|
|
|
|
# Evas cserve2
|
|
|
|
AC_ARG_ENABLE([cserve],
|
|
[AC_HELP_STRING([--enable-cserve],
|
|
[enable shared cache server (cserve2). @<:@default=enabled@:>@])],
|
|
[
|
|
if test "x${enableval}" = "xyes" ; then
|
|
want_evas_cserve2="yes"
|
|
else
|
|
want_evas_cserve2="no"
|
|
CFOPT_WARNING="xyes"
|
|
fi
|
|
],
|
|
[want_evas_cserve2="yes"])
|
|
|
|
if test "x${want_evas_image_loader_generic}" = "xyes" || test "x${want_evas_cserve2}" = "xyes" ; then
|
|
EFL_ADD_LIBS([EVAS], [${requirements_libs_shm}])
|
|
fi
|
|
|
|
# cserve2 only works on Linux so far.
|
|
|
|
if test "x${efl_func_shm_open}" = "xno" ; then
|
|
want_evas_cserve2="no"
|
|
fi
|
|
|
|
if test "x${want_evas_cserve2}" = "xyes"; then
|
|
if test "x${ac_cv_header_sys_epoll_h}" = "xno" || test "x${ac_cv_header_sys_inotify_h}" = "xno" || test "x${ac_cv_header_sys_signalfd_h}" = "xno"; then
|
|
want_evas_cserve2="no"
|
|
else
|
|
EVAS_CSERVE2_SLAVE_LIBS="${EFL_COV_LIBS} ${EFL_LIBS} ${requirements_libs_shm}"
|
|
AC_SUBST([EVAS_CSERVE2_SLAVE_LIBS])
|
|
fi
|
|
fi
|
|
|
|
AC_DEFINE_IF([EVAS_CSERVE2],
|
|
[test "x${want_evas_cserve2}" = "xyes"],
|
|
[1], [Shared cache server.])
|
|
AM_CONDITIONAL([EVAS_CSERVE2], [test "x${want_evas_cserve2}" = "xyes"])
|
|
|
|
### Configuration
|
|
|
|
## Tile rotation
|
|
|
|
if test "x${have_tile_rotate}" = "xyes" ; then
|
|
AC_DEFINE(TILE_ROTATE, 1, [Enable tiled rotate algorithm])
|
|
fi
|
|
|
|
|
|
## dither options
|
|
|
|
AC_ARG_WITH([evas-dither-mask],
|
|
[AC_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], [cserve], [${want_evas_cserve2}])
|
|
EFL_ADD_FEATURE([EVAS], [tile-rotate])
|
|
EFL_ADD_FEATURE([EVAS], [dither-mask], [${build_evas_dither_mask}])
|
|
|
|
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
|
|
|
|
EFL_LIB_START([Ecore])
|
|
|
|
### Additional options to configure
|
|
|
|
# glib
|
|
|
|
AC_ARG_WITH([glib],
|
|
[AC_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],
|
|
[AC_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([gstreamer],
|
|
[AC_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],
|
|
[AC_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],
|
|
[AC_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
|
|
|
|
### 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_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-daemon])
|
|
|
|
EFL_ADD_FEATURE([ECORE], [systemd-daemon], [${want_systemd}])
|
|
EFL_ADD_FEATURE([ECORE], [glib])
|
|
EFL_ADD_FEATURE([ECORE], [g-main-loop])
|
|
|
|
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])
|
|
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 "${want_gstreamer}" = "yes" -o "${want_gstreamer1}" = "yes"])
|
|
|
|
EFL_EVAL_PKGS([ECORE])
|
|
|
|
### Checks for header files
|
|
|
|
AC_HEADER_SYS_WAIT
|
|
|
|
AC_CHECK_HEADERS([sys/socket.h])
|
|
|
|
AC_CHECK_HEADERS([ \
|
|
arpa/inet.h \
|
|
langinfo.h \
|
|
features.h \
|
|
net/if.h \
|
|
netinet/in.h \
|
|
netinet/tcp.h \
|
|
sys/prctl.h \
|
|
sys/resource.h \
|
|
sys/timerfd.h \
|
|
sys/un.h \
|
|
],[],[],
|
|
[
|
|
#ifdef 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 don't have a working way to implement coroutine. Exiting...])
|
|
fi
|
|
|
|
### Check availability
|
|
|
|
EFL_LIB_END([Ecore])
|
|
#### End of Ecore
|
|
|
|
#### 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_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_wince}" = "yes"; then
|
|
want_cares="no"
|
|
want_ecore_con_local_sockets="no"
|
|
want_ecore_con_abstract_sockets="no"
|
|
elif test "${have_win32}" = "yes"; then
|
|
want_cares="yes"
|
|
want_ecore_con_abstract_sockets="no"
|
|
elif test "${have_darwin}" = "yes"; then
|
|
want_cares="no"
|
|
want_ecore_con_abstract_sockets="no"
|
|
elif test "${have_ps3}" = "yes"; then
|
|
want_cares="no"
|
|
want_ecore_con_local_sockets="no"
|
|
want_ecore_con_abstract_sockets="no"
|
|
else
|
|
want_cares="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])
|
|
|
|
### 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], [eet])
|
|
EFL_INTERNAL_DEPEND_PKG([ECORE_CON], [eina])
|
|
EFL_INTERNAL_DEPEND_PKG([ECORE_CON], [ecore])
|
|
|
|
EFL_ADD_LIBS([ECORE_CON], [-lm])
|
|
|
|
EFL_OPTIONAL_DEPEND_PKG([ECORE_CON], [${want_cares}],
|
|
[CARES], [libcares >= 1.6.1])
|
|
AM_CONDITIONAL([HAVE_CARES], [test "x${have_cares}" = "xyes"])
|
|
|
|
if test "x$have_cares" = "xyes" ; then
|
|
ecore_con_resolver="cares"
|
|
elif test "x$ac_cv_prog_cc_c99" != "xno" ; then
|
|
ecore_con_resolver="dns.c"
|
|
else
|
|
ecore_con_resolver="fork"
|
|
fi
|
|
|
|
EFL_OPTIONAL_DEPEND_PKG([ECORE_CON], [${want_systemd}], [SYSTEMD], [libsystemd-daemon])
|
|
|
|
EFL_ADD_FEATURE([ECORE_CON], [cares])
|
|
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], [resolver], [${ecore_con_resolver}])
|
|
EFL_ADD_FEATURE([ECORE_CON], [systemd-daemon], [${want_systemd}])
|
|
|
|
EFL_EVAL_PKGS([ECORE_CON])
|
|
|
|
### Checks for header files
|
|
|
|
AC_CHECK_HEADERS([ws2tcpip.h netdb.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
|
|
|
|
have_ipv6="no"
|
|
AC_CHECK_TYPES([struct ipv6_mreq],
|
|
[have_ipv6="yes"],
|
|
[have_ipv6="no"],
|
|
[[
|
|
#include <netinet/in.h>
|
|
#ifdef HAVE_WS2TCPIP_H
|
|
# include <ws2tcpip.h>
|
|
#endif
|
|
]])
|
|
|
|
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
|
|
|
|
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], [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], [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
|
|
|
|
|
|
#### 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], [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_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], [eo])
|
|
EFL_INTERNAL_DEPEND_PKG([ECORE_INPUT_EVAS], [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_Input_Evas])
|
|
#### End of Ecore_Input_Evas
|
|
|
|
|
|
#### Ecore_Cocoa
|
|
EFL_LIB_START_OPTIONAL([Ecore_Cocoa], [test "${want_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], [eina])
|
|
|
|
### Checks for header files
|
|
|
|
dnl TODO: once cocoa is fixed and test-able, add required libs here
|
|
dnl to ECORE_COCOA_LIBS and ECORE_COCOA_CFLAGS.
|
|
dnl Evas already tests for ObjC and Cocoa/Cocoa.h
|
|
|
|
### 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],
|
|
[AC_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], [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_Psl1ght
|
|
EFL_LIB_START_OPTIONAL([Ecore_Psl1ght], [test "${have_ps3}" = "yes"])
|
|
|
|
### Additional options to configure
|
|
|
|
### Default values
|
|
|
|
### Checks for programs
|
|
|
|
### Checks for libraries
|
|
EFL_PLATFORM_DEPEND([ECORE_PSL1GHT], [escape])
|
|
|
|
EFL_INTERNAL_DEPEND_PKG([ECORE_PSL1GHT], [ecore-input])
|
|
EFL_INTERNAL_DEPEND_PKG([ECORE_PSL1GHT], [ecore])
|
|
EFL_INTERNAL_DEPEND_PKG([ECORE_PSL1GHT], [eo])
|
|
EFL_INTERNAL_DEPEND_PKG([ECORE_PSL1GHT], [eina])
|
|
|
|
EFL_ADD_LIBS([ECORE_PSL1GHT], [-lio -lsysutil -lgem -lcamera -lspurs])
|
|
|
|
### 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_Psl1ght])
|
|
#### End of Ecore_Psl1ght
|
|
|
|
|
|
#### 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], [eina])
|
|
|
|
EFL_DEPEND_PKG([ECORE_SDL], [SDL], [sdl >= 1.2.0])
|
|
|
|
PKG_CHECK_EXISTS([sdl >= 1.3.0],
|
|
[AC_DEFINE(BUILD_ECORE_EVAS_SDL_130, 1, [Support for SVN SDL])])
|
|
|
|
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_wayland}" = "yes"])
|
|
|
|
### 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], [eina])
|
|
|
|
EFL_DEPEND_PKG([ECORE_WAYLAND], [WAYLAND],
|
|
[wayland-client >= 1.3.0 wayland-cursor >= 1.3.0 xkbcommon >= 0.3.0])
|
|
|
|
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_Drm
|
|
EFL_LIB_START_OPTIONAL([Ecore_Drm], [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_DRM], [ecore])
|
|
EFL_INTERNAL_DEPEND_PKG([ECORE_DRM], [ecore-input])
|
|
EFL_INTERNAL_DEPEND_PKG([ECORE_DRM], [eo])
|
|
EFL_INTERNAL_DEPEND_PKG([ECORE_DRM], [eina])
|
|
|
|
EFL_DEPEND_PKG([ECORE_DRM], [DRM], [libudev >= 148 libdrm >= 2.4 xkbcommon >= 0.3.0])
|
|
|
|
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
|
|
|
|
|
|
#### Ecore_Audio
|
|
|
|
AC_ARG_ENABLE([audio],
|
|
[AC_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"
|
|
|
|
AC_ARG_ENABLE([pulseaudio],
|
|
[AC_HELP_STRING([--disable-pulseaudio],
|
|
[disable pulseaudio sound support. @<:@default=enabled@:>@])],
|
|
[
|
|
if test "x${enableval}" = "xyes" ; then
|
|
want_pulseaudio="yes"
|
|
else
|
|
want_pulseaudio="no"
|
|
CFOPT_WARNING="xyes"
|
|
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], [eina])
|
|
|
|
EFL_ADD_LIBS([ECORE_AUDIO], [-lm])
|
|
|
|
EFL_OPTIONAL_DEPEND_PKG([ECORE_AUDIO], [${want_alsa}], [ALSA], [alsa])
|
|
EFL_OPTIONAL_DEPEND_PKG([ECORE_AUDIO], [${want_pulseaudio}], [PULSE], [libpulse])
|
|
EFL_OPTIONAL_DEPEND_PKG([ECORE_AUDIO], [${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])
|
|
|
|
### 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], [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],
|
|
[AC_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_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_WinCE
|
|
EFL_LIB_START_OPTIONAL([Ecore_WinCE], [test "${have_wince}" = "yes"])
|
|
|
|
### Additional options to configure
|
|
|
|
### Default values
|
|
|
|
### Checks for programs
|
|
|
|
### Checks for libraries
|
|
EFL_PLATFORM_DEPEND([ECORE_WINCE], [evil])
|
|
EFL_INTERNAL_DEPEND_PKG([ECORE_WINCE], [ecore-input])
|
|
EFL_INTERNAL_DEPEND_PKG([ECORE_WINCE], [ecore])
|
|
EFL_INTERNAL_DEPEND_PKG([ECORE_WINCE], [eo])
|
|
EFL_INTERNAL_DEPEND_PKG([ECORE_WINCE], [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_OPTIONAL([Ecore_WinCE])
|
|
#### End of Ecore_WinCE
|
|
|
|
|
|
#### Ecore_X
|
|
EFL_LIB_START_OPTIONAL([Ecore_X], [test "${want_x11_any}" = "yes"])
|
|
|
|
### Additional options to configure
|
|
|
|
AC_ARG_ENABLE([gesture],
|
|
[AC_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],
|
|
[AC_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],
|
|
[AC_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],
|
|
[AC_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],
|
|
[AC_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],
|
|
[AC_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],
|
|
[AC_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], [eina])
|
|
|
|
## Xlib
|
|
|
|
## XCB
|
|
|
|
### Checks for header files
|
|
|
|
AC_CHECK_DECL([MAXHOSTNAMELEN], [FOUND_MAXHOSTNAMELEN=yes])
|
|
|
|
if test "x${FOUND_MAXHOSTNAMELEN}" != "xyes" ; then
|
|
FOUND_MAXHOSTNAMELEN="not found"
|
|
|
|
AC_COMPILE_IFELSE(
|
|
[
|
|
AC_LANG_PROGRAM(
|
|
[[
|
|
#include <sys/param.h>
|
|
]],
|
|
[[
|
|
int h = MAXHOSTNAMELEN;
|
|
]])
|
|
],
|
|
[
|
|
FOUND_MAXHOSTNAMELEN="sys/param.h"
|
|
AC_DEFINE([NEED_SYS_PARAM_H], [1], [Define to 1 if you need <sys/param.h> to define MAXHOSTNAMELEN])
|
|
])
|
|
|
|
AC_COMPILE_IFELSE(
|
|
[
|
|
AC_LANG_PROGRAM(
|
|
[[
|
|
#include <netdb.h>
|
|
]],
|
|
[[
|
|
int h = MAXHOSTNAMELEN;
|
|
]])
|
|
],
|
|
[
|
|
FOUND_MAXHOSTNAMELEN="netdb.h"
|
|
AC_DEFINE([NEED_NETDB_H], [1], [Define to 1 if you need <netdb.h> to define MAXHOSTNAMELEN])
|
|
])
|
|
|
|
AC_MSG_CHECKING([for header that defines MAXHOSTNAMELEN])
|
|
AC_MSG_RESULT([$FOUND_MAXHOSTNAMELEN])
|
|
fi
|
|
|
|
## Xlib
|
|
if test "x${want_x11_xcb}" = "xyes" ; then
|
|
KEYSYMDEFDIR=`$PKG_CONFIG --variable=includedir xproto`/X11
|
|
FILES="keysymdef.h XF86keysym.h Sunkeysym.h DECkeysym.h HPkeysym.h"
|
|
for i in $FILES; do
|
|
if test -f "$KEYSYMDEFDIR/$i"; then
|
|
KEYSYMDEFS="$KEYSYMDEFS $KEYSYMDEFDIR/$i"
|
|
elif test "x$i" = "xkeysymdef.h"; then
|
|
AC_MSG_ERROR([Cannot find keysymdef.h])
|
|
fi
|
|
done
|
|
AC_MSG_CHECKING([keysym definitions])
|
|
AC_MSG_RESULT([$KEYSYMDEFS])
|
|
AC_SUBST([KEYSYMDEFS])
|
|
fi
|
|
|
|
### 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([Xprint], [Print.h], [Xp], [XpQueryScreens])
|
|
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])
|
|
|
|
AC_DEFINE([HAVE_ECORE_X_XLIB], [1], [Defined to 1 if Xlib is enabled.])
|
|
HAVE_ECORE_X_BACKEND="HAVE_ECORE_X_XLIB"
|
|
|
|
EFL_EVAL_PKGS([ECORE_X])
|
|
EFL_CHECK_FUNCS([ECORE_X], [dlopen dlsym])
|
|
fi
|
|
|
|
## XCB
|
|
|
|
if test "${want_x11_xcb}" = "yes"; then
|
|
dnl note: added pixman-1 as ecore_xcb_region uses that
|
|
EFL_DEPEND_PKG([ECORE_X], [ECORE_X_XCB],
|
|
[x11-xcb xcb xcb-shm xcb-event xcb-icccm >= 0.3.8 xcb-util >= 0.3.8 xcb-image xcb-keysyms >= 0.3.8 xcb-composite xcb-present xcb-damage xcb-dpms xcb-randr xcb-render xcb-screensaver xcb-shape xcb-sync xcb-xfixes xcb-xinerama xcb-xprint xcb-xtest xcb-renderutil pixman-1])
|
|
|
|
dnl TODO: remove these ifdefs from code!
|
|
AC_DEFINE([ECORE_XCB_COMPOSITE], [1], [Build support for XCB composite])
|
|
AC_DEFINE([ECORE_XCB_DAMAGE], [1], [Build support for XCB damage])
|
|
AC_DEFINE([ECORE_XCB_DPMS], [1], [Build support for XCB dpms])
|
|
AC_DEFINE([ECORE_XCB_RANDR], [1], [Build support for XCB randr])
|
|
AC_DEFINE([ECORE_XCB_RENDER], [1], [Build support for XCB render])
|
|
AC_DEFINE([ECORE_XCB_SCREENSAVER], [1], [Build support for XCB screensaver])
|
|
AC_DEFINE([ECORE_XCB_SHAPE], [1], [Build support for XCB shape])
|
|
AC_DEFINE([ECORE_XCB_SYNC], [1], [Build support for XCB sync])
|
|
AC_DEFINE([ECORE_XCB_XFIXES], [1], [Build support for XCB xfixes])
|
|
AC_DEFINE([ECORE_XCB_XINERAMA], [1], [Build support for XCB xinerama])
|
|
AC_DEFINE([ECORE_XCB_XPRINT], [1], [Build support for XCB xprint])
|
|
AC_DEFINE([ECORE_XCB_XTEST], [1], [Build support for XCB xtest])
|
|
AC_DEFINE([ECORE_XCB_CURSOR], [1], [Build support for XCB cursor])
|
|
|
|
EFL_OPTIONAL_DEPEND_PKG([ECORE_X], [${want_xpresent}], [ECORE_XCB_XPRESENT],
|
|
[xcb-present])
|
|
AC_DEFINE_IF([ECORE_XCB_XPRESENT], [test "${want_xpresent}" = "yes"],
|
|
[1], [Build support for XCB Present])
|
|
EFL_ADD_FEATURE([ECORE_X], [xpresent])
|
|
|
|
EFL_OPTIONAL_DEPEND_PKG([ECORE_X], [${want_gesture}], [ECORE_XCB_GESTURE],
|
|
[xcb-gesture])
|
|
AC_DEFINE_IF([ECORE_XCB_XGESTURE], [test "${want_gesture}" = "yes"],
|
|
[1], [Build support for XCB xgesture])
|
|
|
|
EFL_ADD_FEATURE([ECORE_X], [gesture])
|
|
|
|
dnl input extension disabled currently in xcb as xcb-input has some issues
|
|
dnl remember to add xcb-xinput to EFL_DEPEND_PKG()
|
|
dnl AC_DEFINE([ECORE_XCB_XINPUT], [1], [Build support for XCB input])
|
|
|
|
dnl dri extension disabled currently in xcb
|
|
dnl remember to add xcb-dri2 to EFL_DEPEND_PKG()
|
|
dnl AC_DEFINE([ECORE_XCB_DRI], [1], [Build support for XCB dri])
|
|
|
|
EFL_EVAL_PKGS([ECORE_X])
|
|
EFL_CHECK_FUNCS([ECORE_X], [dlopen iconv])
|
|
|
|
HAVE_ECORE_X_BACKEND="HAVE_ECORE_X_XCB"
|
|
fi
|
|
|
|
EFL_ADD_LIBS([ECORE_X], [${ECORE_X_LIBS}])
|
|
|
|
AC_SUBST([HAVE_ECORE_X_BACKEND])
|
|
|
|
EFL_LIB_END_OPTIONAL([Ecore_X])
|
|
|
|
AM_CONDITIONAL([HAVE_ECORE_X_XLIB], [test "${want_x11_xlib}" = "yes"])
|
|
AM_CONDITIONAL([HAVE_ECORE_X_XCB], [test "${want_x11_xcb}" = "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"
|
|
|
|
if test "${have_wince}" = "yes"; then
|
|
want_ecore_imf="no"
|
|
else
|
|
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
|
|
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], [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([ENABLE_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.2.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], [eo])
|
|
EFL_INTERNAL_DEPEND_PKG([ECORE_IMF_EVAS], [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_Imf_Evas])
|
|
#### End of Ecore_Imf_Evas
|
|
|
|
|
|
#### Eeze
|
|
have_libmount_new="no"
|
|
have_libmount_old="no"
|
|
have_eeze_mount="no"
|
|
|
|
EFL_LIB_START_OPTIONAL([Eeze], [test "${have_linux}" = "yes"])
|
|
|
|
### 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], [ecore-file])
|
|
EFL_INTERNAL_DEPEND_PKG([EEZE], [ecore-con])
|
|
EFL_INTERNAL_DEPEND_PKG([EEZE], [eet])
|
|
|
|
EFL_DEPEND_PKG([EEZE], [UDEV], [libudev >= 148])
|
|
|
|
AC_ARG_ENABLE([libmount],
|
|
[AC_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([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_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_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], [eo])
|
|
EFL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [eina])
|
|
|
|
## 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}],
|
|
[ EFL_OPTIONAL_INTERNAL_DEPEND_PKG([ECORE_EVAS], [${want_drm}], [ecore-drm]) ]
|
|
)
|
|
ECORE_EVAS_MODULE([psl1ght], [${have_ps3}])
|
|
|
|
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"
|
|
have_ecore_evas_software_xcb="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
|
|
have_ecore_evas_software_xcb=${have_evas_engine_software_xcb}
|
|
if test "x$have_ecore_evas_software_xcb" = "xstatic"; then
|
|
have_ecore_evas_software_xcb="yes"
|
|
fi
|
|
if test "x$have_ecore_evas_software_xcb" = "xyes"; then
|
|
AC_DEFINE([BUILD_ECORE_EVAS_SOFTWARE_XCB], [1], [Evas Software XCB 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"
|
|
have_ecore_evas_opengl_xcb="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
|
|
|
|
# opengl does not work with xcb (yet)
|
|
have_ecore_evas_opengl_xcb=${have_evas_engine_gl_xcb}
|
|
if test "x${have_ecore_evas_opengl_xcb}" = "xstatic"; then
|
|
have_ecore_evas_opengl_xcb="yes"
|
|
fi
|
|
if test "x${have_ecore_evas_opengl_xcb}" = "xyes"; then
|
|
PKG_CHECK_MODULES([XCB_X11],
|
|
[x11-xcb],
|
|
[
|
|
have_ecore_x_opengl_xcb="yes"
|
|
requirements_ecore_x="x11-xcb ${requirements_ecore_x}"
|
|
AC_DEFINE([BUILD_ECORE_X_OPENGL_XCB], [1], [Build support for XCB-based OpenGL])
|
|
AC_DEFINE([BUILD_ECORE_EVAS_OPENGL_XCB], [1], [OpenGL XCB rendering backend])
|
|
],
|
|
[have_ecore_x_opengl_xcb="no"])
|
|
else
|
|
have_ecore_x_opengl_xcb="no"
|
|
AC_MSG_NOTICE(["XCB-based OpenGL explicitly disabled"])
|
|
fi
|
|
fi
|
|
|
|
build_ecore_evas_x11="no"
|
|
if test "x$have_ecore_evas_software_x11" = "xyes" || \
|
|
test "x$have_ecore_evas_opengl_x11" = "xyes" || \
|
|
test "x$have_ecore_evas_software_xcb" = "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"])
|
|
|
|
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
|
|
|
|
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], [eet])
|
|
EFL_INTERNAL_DEPEND_PKG([EIO], [eo])
|
|
EFL_INTERNAL_DEPEND_PKG([EIO], [eina])
|
|
|
|
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
|
|
|
|
EFL_LIB_END([Eio])
|
|
dnl TODO: remove these ifdefs from code!
|
|
AC_DEFINE([HAVE_EIO], [1], [Have eio library])
|
|
#### End of Eio
|
|
|
|
# Eo Id
|
|
if test "x${want_eo_id}" = "xyes" ; then
|
|
AC_DEFINE([HAVE_EO_ID], [1], [Have eo id])
|
|
fi
|
|
|
|
#### 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], [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
|
|
|
|
|
|
#### 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], [eldbus])
|
|
EFL_INTERNAL_DEPEND_PKG([EFREET], [eo])
|
|
EFL_INTERNAL_DEPEND_PKG([EFREET], [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([Efreet])
|
|
#### End of Efreet
|
|
|
|
|
|
#### EPhysics
|
|
AC_ARG_ENABLE([physics],
|
|
[AC_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"])
|
|
|
|
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], [ecore])
|
|
EFL_INTERNAL_DEPEND_PKG([EPHYSICS], [eo])
|
|
|
|
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
|
|
want_multisense="yes"
|
|
AC_ARG_ENABLE([multisense],
|
|
[AC_HELP_STRING([--enable-multisense],
|
|
[Enable multisense support. @<:@default=enabled@:>@])],
|
|
[
|
|
if test "x${enableval}" = "xyes" ; then
|
|
want_multisense="yes"
|
|
else
|
|
want_multisense="no"
|
|
fi
|
|
],
|
|
[want_multisense="no"])
|
|
|
|
# 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], [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], [eio])
|
|
|
|
EFL_OPTIONAL_INTERNAL_DEPEND_PKG([EDJE], [${want_physics}], [ephysics])
|
|
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])
|
|
|
|
if test "${want_lua_old}" = "yes"; then
|
|
EFL_CHECK_LUA_OLD([EDJE])
|
|
EFL_CHECK_LUA_OLD([EVAS])
|
|
else
|
|
EFL_DEPEND_PKG([EDJE], [LUAJIT], [luajit >= 2.0.0])
|
|
EFL_DEPEND_PKG([EVAS], [LUAJIT], [luajit >= 2.0.0])
|
|
fi
|
|
|
|
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],
|
|
[AC_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],
|
|
[AC_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}"])
|
|
|
|
### 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], [eio])
|
|
|
|
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([generic], [${want_emotion_generic}])
|
|
|
|
EFL_ADD_FEATURE([EMOTION], [xine])
|
|
EFL_ADD_FEATURE([EMOTION], [gstreamer])
|
|
EFL_ADD_FEATURE([EMOTION], [gstreamer1])
|
|
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
|
|
|
|
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], [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])
|
|
|
|
## 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], [eet])
|
|
EFL_INTERNAL_DEPEND_PKG([ETHUMB_CLIENT], [ecore])
|
|
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_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
|
|
|
|
|
|
AC_ARG_ENABLE([always-build-examples],
|
|
[AC_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"])
|
|
|
|
BARF_OK="xno"
|
|
# Harfbuzz
|
|
AC_ARG_ENABLE([i-really-know-what-i-am-doing-and-that-this-will-probably-break-things-and-i-will-fix-them-myself-and-send-patches-aaa],
|
|
[ You will be told when this is needed ],
|
|
[
|
|
if test "x${enableval}" = "xyes" ; then
|
|
BARF_OK=""
|
|
else
|
|
BARF_OK="xno"
|
|
fi
|
|
],
|
|
[ BARF_OK="xno" ])
|
|
|
|
|
|
AC_CONFIG_FILES([
|
|
Makefile
|
|
data/Makefile
|
|
doc/Makefile
|
|
doc/Doxyfile
|
|
doc/previews/Makefile
|
|
src/Makefile
|
|
src/benchmarks/eina/Makefile
|
|
src/benchmarks/eo/Makefile
|
|
src/benchmarks/evas/Makefile
|
|
src/examples/eina/Makefile
|
|
src/examples/eina_cxx/Makefile
|
|
src/examples/eet/Makefile
|
|
src/examples/eo/Makefile
|
|
src/examples/evas/Makefile
|
|
src/examples/ecore/Makefile
|
|
src/examples/ecore_avahi/Makefile
|
|
src/examples/eio/Makefile
|
|
src/examples/eldbus/Makefile
|
|
src/examples/ephysics/Makefile
|
|
src/examples/edje/Makefile
|
|
src/examples/emotion/Makefile
|
|
src/examples/ethumb_client/Makefile
|
|
src/examples/eolian_cxx/Makefile
|
|
src/lib/eina/eina_config.h
|
|
src/lib/ecore_x/ecore_x_version.h
|
|
src/lib/efl/Efl_Config.h
|
|
spec/efl.spec
|
|
pc/evil.pc
|
|
pc/escape.pc
|
|
pc/eina.pc
|
|
pc/eina-cxx.pc
|
|
pc/eet.pc
|
|
pc/eet-cxx.pc
|
|
pc/eo.pc
|
|
pc/eo-cxx.pc
|
|
pc/eolian.pc
|
|
pc/eolian-cxx.pc
|
|
pc/evas-fb.pc
|
|
pc/evas-opengl-x11.pc
|
|
pc/evas-opengl-sdl.pc
|
|
pc/evas-opengl-cocoa.pc
|
|
pc/evas-psl1ght.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-psl1ght.pc
|
|
pc/ecore-sdl.pc
|
|
pc/ecore-wayland.pc
|
|
pc/ecore-win32.pc
|
|
pc/ecore-wince.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/embryo.pc
|
|
pc/eio.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
|
|
dbus-services/org.enlightenment.Efreet.service
|
|
dbus-services/org.enlightenment.Ethumb.service
|
|
systemd-services/efreet.service
|
|
systemd-services/ethumb.service
|
|
$po_makefile_in
|
|
cmakeconfig/EinaConfig.cmake
|
|
cmakeconfig/EinaConfigVersion.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/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
|
|
])
|
|
|
|
AC_OUTPUT
|
|
|
|
#### Work around bug in automake check macro
|
|
## yes it is hugly, but no choice here for now.
|
|
$SED -i "s/am__is_gnu_make = test -n '\$(MAKEFILE_LIST)' && test -n '\$(MAKELEVEL)'/ifdef MAKEFILE_LIST\nifdef MAKELEVEL\nam__is_gnu_make = true\nelse\nam__is_gnu_make = false\nendif\nelse\nam__is_gnu_make = false\nendif/" src/Makefile
|
|
|
|
if test -f $srcdir/config.status; then
|
|
TO="$SED -i \"s/am__is_gnu_make = test -n '\\\\\$(MAKEFILE_LIST)' \&\& test -n '\\\\\$(MAKELEVEL)'/ifdef MAKEFILE_LIST\\\nifdef MAKELEVEL\\\nam__is_gnu_make = true\\\nelse\\\nam__is_gnu_make = false\\\nendif\\\nelse\\\nam__is_gnu_make = false\\\nendif/\" src/Makefile\nas_fn_exit 0"
|
|
$SED -i "s|as_fn_exit 0|$TO|" $srcdir/config.status
|
|
fi
|
|
|
|
#### Info
|
|
|
|
EFL_ADD_FEATURE([EO], [eo-id], [${want_eo_id}])
|
|
|
|
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}])
|
|
;;
|
|
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])
|
|
|
|
EFL_ADD_FEATURE([thread], [spinlocks], [${efl_have_posix_threads_spinlock}])
|
|
EFL_ADD_FEATURE([thread], [barrier], [${efl_have_pthread_barrier}])
|
|
EFL_ADD_FEATURE([thread], [affinity], [${efl_have_setaffinity}])
|
|
|
|
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
|
|
|
|
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}"
|
|
echo " C++11.........: ${have_cxx11}"
|
|
echo "Evas............: yes (${features_evas})"
|
|
echo " Engines.......: ${features_evas_engine}"
|
|
echo " Image Loaders.: ${features_evas_loader}"
|
|
if test "x${have_pixman}" = "xyes" ; then
|
|
echo " Pixman........: ${features_evas_pixman}"
|
|
fi
|
|
echo "Eo..............: yes (${features_eo})"
|
|
echo "Eolian..........: yes (${features_eolian})"
|
|
echo "Eina............: yes (${features_eina})"
|
|
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_Wayland...: $want_wayland"
|
|
if test "${have_linux}" = "yes"; then
|
|
echo "Ecore_FB........: $want_fb (${features_ecore_fb})"
|
|
elif test "${have_ps3}" = "yes"; then
|
|
echo "Ecore_PSL1GHT...: $have_ps3"
|
|
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"
|
|
echo "Ecore_WinCE.....: $have_wince"
|
|
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 "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"
|
|
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"
|
|
|
|
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
|
|
|
|
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 "x${have_systemd_pkg}" = "xyes" -a "x${want_systemd}" = "xno"; then
|
|
echo " _________________________________________"
|
|
echo "/ Systemd dependency is available on your \\"
|
|
echo "| system, but you are building without |"
|
|
echo "| systemd support. Don't forget to |"
|
|
echo "| --enable-systemd if you want systemd |"
|
|
echo "\\ integration for EFL. /"
|
|
echo " -----------------------------------------"
|
|
echo " \\ ^__^"
|
|
echo " \\ (oo)\\_______"
|
|
echo " (__)\\ )\\/\\"
|
|
echo " ||----w |"
|
|
echo " || ||"
|
|
fi
|
|
|
|
|
|
if test -n "$CFOPT_WARNING"; then
|
|
echo "_____________________________________________________________________"
|
|
echo ""
|
|
echo "==-- WARNING --=="
|
|
echo ""
|
|
echo "_____________________________________________________________________"
|
|
if test "x${with_x11}" = "xxcb"; then
|
|
echo "_____________________________________________________________________"
|
|
echo "You have chosen to use XCB instead of Xlib. It is a myth that XCB"
|
|
echo "is amazingly faster than Xlib (when used sensibly). It can be"
|
|
echo "faster in a few corner cases on startup of an app, but it comes"
|
|
echo "with many downsides. One of those is more complex code inside"
|
|
echo "ecore_x, which is far less tested in XCB mode than Xlib. Also"
|
|
echo "the big catch is that OpenGL support basically requires Xlib anyway"
|
|
echo "so if you want OpenGL in X11, you need Xlib regardless and so you"
|
|
echo "gain nothing really in terms of speed and no savings in memory"
|
|
echo "because Xlib is still linked, loaded and used, BUT instead you"
|
|
echo "have OpenGL drivers working with an hybrid XCB/Xlib (mostly XCB)"
|
|
echo "toolkit and this is basically never tested by anyone working on"
|
|
echo "the OpenGL drivers, so you will have bugs. Do not enable XCB"
|
|
echo "and use OpenGL. XCB is only useful if you wish to shave a few Kb"
|
|
echo "off the memory footprint of a whole system and live with less"
|
|
echo "tested code, and possibly unimplemented features in ecore_x. To"
|
|
echo "remove the XCB setup, remove the --with-x11=xcb option to"
|
|
echo "configure."
|
|
echo "_____________________________________________________________________"
|
|
fi
|
|
if test "x${build_crypto}" = "xgnutls"; then
|
|
echo "_____________________________________________________________________"
|
|
echo "You have chosen gnutls as the crypto back-end. This will have some"
|
|
echo "side-effects that can break set-uid root binaries that happen to"
|
|
echo "link to and/or use EFL. These do actually exist. Gnutls will drop"
|
|
echo "root privs if it detects being setuid, thus breaking these tools"
|
|
echo "and their functionality. Only enable gnutls if you REALLY know"
|
|
echo "what you are doing and are willing to live with broken "
|
|
echo "functionality."
|
|
echo "_____________________________________________________________________"
|
|
fi
|
|
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 wok 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_eo_id}" = "xno"; then
|
|
echo "_____________________________________________________________________"
|
|
echo "Eo's ID absttraction interface is a major safety system that"
|
|
echo "protects code from crashing or misbehaving in many cases. It does"
|
|
echo "come at a slight cost, but the safety and protection is worth it."
|
|
echo "Also by disabling this, you may also introduce security holes in"
|
|
echo "EFL as well as cause all sorts of previously non-existant crashes."
|
|
echo "Seriously reconsider disabling EO ID."
|
|
echo "_____________________________________________________________________"
|
|
fi
|
|
if test "x${want_evas_cserve2}" = "xno"; then
|
|
echo "_____________________________________________________________________"
|
|
echo "Evas Cserve is built and on by default and no testing is done"
|
|
echo "for the old non-cserve2 code paths, so by disabling this you"
|
|
echo "may be introducing bugs. Be aware of this and be prepared to"
|
|
echo "deal with the bugs as a result of this."
|
|
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 is via"
|
|
echo "Pulseaudio. You have disabled that and likely have broken a whole"
|
|
echo "bunch of things in the process. Reconsider your 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 suport 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
|
|
echo "_____________________________________________________________________"
|
|
echo ""
|
|
echo "==-- WARNING --=="
|
|
echo ""
|
|
echo "_____________________________________________________________________"
|
|
if test -n "$BARF_OK"; then
|
|
echo "Please add the following option to acknowledge this:"
|
|
echo " --enable-i-really-know-what-i-am-doing-and-that-this-will-probably-break-things-and-i-will-fix-them-myself-and-send-patches-aaa"
|
|
echo "_____________________________________________________________________"
|
|
rm -f Makefile
|
|
exit 1
|
|
fi
|
|
sleep 10
|
|
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 "$XDG_DATA_DIRS" | grep -e "$resolved_datadir" >/dev/null 2>/dev/null; then
|
|
AC_MSG_NOTICE([installing DBus services in "$resolved_datadir" set in \$XDG_DATA_DIRS. Every user must have \$XDG_DATA_DIRS containing "$resolved_datadir".])
|
|
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 "$XDG_DATA_DIRS" | grep -e "$base_USER_SESSION_DIR" >/dev/null 2>/dev/null; then
|
|
AC_MSG_NOTICE([installing systemd services in "$base_USER_SESSION_DIR" set in \$XDG_DATA_DIRS. Every user must have \$XDG_DATA_DIRS containing "$base_USER_SESSION_DIR".])
|
|
elif echo "$XDG_CONFIG_DIRS" | grep -e "$base_USER_SESSION_DIR" >/dev/null 2>/dev/null; then
|
|
AC_MSG_NOTICE([installing systemd services in "$base_USER_SESSION_DIR" set in \$XDG_CONFIG_DIRS. Every user must have \$XDG_CONFIG_DIRS containing "$base_USER_SESSION_DIR".])
|
|
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 " ln -s ${resolved_dbusservicedir}/org.enlightenment.Efreet.service /usr/share/dbus-1/services/org.enlightenment.Efreet.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"
|
|
echo " ln -s ${resolved_dbusservicedir}/org.enlightenment.Efreet.service ~/.local/share/dbus-1/services/org.enlightenment.Efreet.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 " ln -s ${resolved_USER_SESSION_DIR}/efreet.service /usr/lib/systemd/user/efreet.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"
|
|
echo " ln -s ${resolved_USER_SESSION_DIR}/efreet.service ~/.config/systemd/user/efreet.service"
|
|
fi
|
|
echo ""
|
|
echo "#-------------------------------------------------------------------#"
|
|
fi
|
|
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
|