From ed17c3832b85f8bc8d1348a8e2f1baa549a86da9 Mon Sep 17 00:00:00 2001 From: cedric Date: Fri, 24 Feb 2012 11:15:14 +0000 Subject: [PATCH] eina: add Exotic support. git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@68398 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33 --- configure.ac | 31 ++++++++++++++++++++++++------- src/include/eina_config.h.in | 9 +++++++++ src/lib/eina_module.c | 4 ++++ 3 files changed, 37 insertions(+), 7 deletions(-) diff --git a/configure.ac b/configure.ac index db04eee..60c573c 100644 --- a/configure.ac +++ b/configure.ac @@ -384,6 +384,24 @@ m4_ifdef([v_mic], EFL_COMPILER_FLAG([-Wshadow]) +### Checks for portability layer + +PKG_CHECK_MODULES([EXOTIC], + [exotic], + [enable_exotic="yes"], + [enable_exotic="no"]) + +if test "x${enable_exotic}" = "xyes"; then + requirement_eina="exotic ${requirement_eina}" + EINA_CFLAGS="${EINA_CFLAGS} ${EXOTIC_CFLAGS}" + EINA_LIBS="${EXOTIC_LIBS}" + + EINA_CONFIGURE_HAVE_EXOTIC="#define EINA_HAVE_EXOTIC" + AC_DEFINE([HAVE_EXOTIC_H], [1], [Define to 1 if you have Exotic.]) +fi +AM_CONDITIONAL([EINA_HAVE_EXOTIC], [test "x${enable_exotic}" = "xyes"]) +AC_SUBST([EINA_CONFIGURE_HAVE_EXOTIC]) + case "$host_vendor" in ps3*) PKG_CHECK_MODULES([ESCAPE], [escape]) @@ -395,29 +413,28 @@ esac AC_SUBST([EINA_CFLAGS]) - ### Checks for linker characteristics EINA_LIBS= lt_enable_auto_import="" case "${host_os}" in mingw*) - EINA_LIBS="-ldl ${EVIL_LIBS} -lm" + EINA_LIBS="${EINA_LIBS} -ldl ${EVIL_LIBS} -lm" lt_enable_auto_import="-Wl,--enable-auto-import" ;; dragonfly*|openbsd*) - EINA_LIBS="-lm" + EINA_LIBS="${EINA_LIBS} -lm" ;; freebsd*|netbsd*) - EINA_LIBS="-lrt -lm" + EINA_LIBS="${EINA_LIBS} -lrt -lm" ;; darwin*) - EINA_LIBS="-lm" + EINA_LIBS="${EINA_LIBS} -lm" ;; cygwin*) - EINA_LIBS="-ldl -lm" + EINA_LIBS="${EINA_LIBS} -ldl -lm" ;; *) - EINA_LIBS="-ldl -lrt -lm" + EINA_LIBS="${EINA_LIBS} -lm" ;; esac case "$host_vendor" in diff --git a/src/include/eina_config.h.in b/src/include/eina_config.h.in index 2459ace..937d208 100644 --- a/src/include/eina_config.h.in +++ b/src/include/eina_config.h.in @@ -19,6 +19,15 @@ #ifndef EINA_CONFIG_H_ #define EINA_CONFIG_H_ +#ifdef EINA_HAVE_EXOTIC_H +# undef EINA_HAVE_EXOTIC_H +#endif +@EINA_CONFIGURE_HAVE_EXOTIC@ + +#ifdef EINA_HAVE_EXOTIC +# include +#endif + #ifdef EINA_MAGIC_DEBUG # undef EINA_MAGIC_DEBUG #endif diff --git a/src/lib/eina_module.c b/src/lib/eina_module.c index 26df980..f4f3242 100644 --- a/src/lib/eina_module.c +++ b/src/lib/eina_module.c @@ -58,6 +58,10 @@ void *alloca (size_t); # include #endif +#ifdef HAVE_EXOTIC_H +# include +#endif + #include "eina_config.h" #include "eina_private.h" #include "eina_error.h" -- 2.7.4