diff --git a/legacy/evas/configure.ac b/legacy/evas/configure.ac index 4495d7a4c2..d7bdd4b905 100644 --- a/legacy/evas/configure.ac +++ b/legacy/evas/configure.ac @@ -484,22 +484,24 @@ dlopen_libs="" case "$host_os" in mingw32ce*) # managed by evil - AC_DEFINE(HAVE_DLADDR) + AC_DEFINE(HAVE_DLSYM) ;; mingw*) # nothing on mingw platform ;; *) - AC_CHECK_FUNCS(dlopen, res=yes, res=no) + AC_CHECK_FUNCS(dlsym, res=yes, res=no) if test "x$res" = "xyes"; then - AC_CHECK_FUNCS(dladdr, AC_DEFINE(HAVE_DLADDR)) + AC_DEFINE(HAVE_DLSYM) else - AC_CHECK_LIB(dl, dlopen, res=yes, res=no) + AC_CHECK_LIB(dl, dlsym, res=yes, res=no) if test "x$res" = "xyes"; then - AC_CHECK_LIB(dl, dladdr, AC_DEFINE(HAVE_DLADDR)) dlopen_libs=-ldl + AC_DEFINE(HAVE_DLSYM) else - AC_MSG_ERROR(Cannot find dlopen) + want_evas_engine_gl_xlib="no" + want_evas_engine_gl_xcb="no" + want_evas_engine_gl_sdl="no" fi fi esac diff --git a/legacy/evas/src/modules/engines/gl_common/evas_gl_context.c b/legacy/evas/src/modules/engines/gl_common/evas_gl_context.c index 133cb0b193..62e72bdfe1 100644 --- a/legacy/evas/src/modules/engines/gl_common/evas_gl_context.c +++ b/legacy/evas/src/modules/engines/gl_common/evas_gl_context.c @@ -1,5 +1,11 @@ #include "evas_gl_private.h" +#ifdef HAVE_DLSYM +# include /* dlopen,dlclose,etc */ +#else +# error gl_common should not get compiled if dlsym is not found on the system! +#endif + #define PRG_INVALID 0xffffffff #define GLPIPES 1 diff --git a/legacy/evas/src/modules/engines/gl_common/evas_gl_private.h b/legacy/evas/src/modules/engines/gl_common/evas_gl_private.h index 794ab8dc38..a178823fd9 100644 --- a/legacy/evas/src/modules/engines/gl_common/evas_gl_private.h +++ b/legacy/evas/src/modules/engines/gl_common/evas_gl_private.h @@ -2,8 +2,6 @@ #define _EVAS_GL_PRIVATE_H #include "evas_gl_common.h" -#include /* dlopen,dlclose,etc */ - extern int _evas_engine_GL_common_log_dom; #ifdef ERR diff --git a/legacy/evas/src/modules/engines/gl_sdl/evas_engine.c b/legacy/evas/src/modules/engines/gl_sdl/evas_engine.c index 332438a9c2..46588d992e 100644 --- a/legacy/evas/src/modules/engines/gl_sdl/evas_engine.c +++ b/legacy/evas/src/modules/engines/gl_sdl/evas_engine.c @@ -1,8 +1,6 @@ #include "evas_common.h" /* Also includes international specific stuff */ #include "evas_engine.h" -#include /* dlopen,dlclose,etc */ - static void* _sdl_output_setup (int w, int h, int fullscreen, int noframe); int _evas_engine_GL_SDL_log_dom = -1; diff --git a/legacy/evas/src/modules/engines/gl_x11/evas_engine.c b/legacy/evas/src/modules/engines/gl_x11/evas_engine.c index 532ce0f7bf..efc389d5fb 100644 --- a/legacy/evas/src/modules/engines/gl_x11/evas_engine.c +++ b/legacy/evas/src/modules/engines/gl_x11/evas_engine.c @@ -1,7 +1,12 @@ #include "evas_common.h" /* Also includes international specific stuff */ #include "evas_engine.h" -#include /* dlopen,dlclose,etc */ +#ifdef HAVE_DLSYM +# include /* dlopen,dlclose,etc */ +#else +# error gl_x11 should not get compiled if dlsym is not found on the system! +#endif + #define EVAS_GL_NO_GL_H_CHECK 1 #include "Evas_GL.h"