cedric pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=71b7fc982a2e23bcb41bf6d227bceeba1f5596ec

commit 71b7fc982a2e23bcb41bf6d227bceeba1f5596ec
Author: Cedric BAIL <ced...@osg.samsung.com>
Date:   Tue Apr 28 14:24:11 2015 +0200

    evas: remove the need to order the header correctly for Windows.
---
 src/lib/evas/Evas.h                                |  4 +++
 src/lib/evas/Evas_GL.h                             | 29 +++++++++++++++++++++
 src/lib/evas/Evas_Loader.h                         |  3 +++
 src/lib/evas/cserve2/evas_cs2_private.h            | 26 +++++++++++++++++++
 src/lib/evas/include/evas_common_private.h         | 29 +++++++++++++++++++++
 src/lib/evas/include/evas_filter.h                 | 30 +++++++++++++++++++++-
 src/lib/evas/include/evas_private.h                | 26 +++++++++++++++++++
 .../evas/engines/gl_common/evas_gl_common.h        | 29 +++++++++++++++++++++
 src/modules/evas/engines/gl_common/evas_gl_core.h  | 30 ++++++++++++++++++++++
 9 files changed, 205 insertions(+), 1 deletion(-)

diff --git a/src/lib/evas/Evas.h b/src/lib/evas/Evas.h
index 71d91ea..9abcfd3 100644
--- a/src/lib/evas/Evas.h
+++ b/src/lib/evas/Evas.h
@@ -292,8 +292,12 @@ extern "C" {
 #ifdef EFL_EO_API_SUPPORT
 #include <Evas_Eo.h>
 #endif
+
 #ifdef __cplusplus
 }
 #endif
 
+#undef EAPI
+#define EAPI
+
 #endif
diff --git a/src/lib/evas/Evas_GL.h b/src/lib/evas/Evas_GL.h
index 5a7efef..255ccfc 100644
--- a/src/lib/evas/Evas_GL.h
+++ b/src/lib/evas/Evas_GL.h
@@ -4,6 +4,32 @@
 #include <Evas.h>
 //#include <GL/gl.h>
 
+#ifdef EAPI
+# undef EAPI
+#endif
+
+#ifdef _WIN32
+# ifdef EFL_EVAS_BUILD
+#  ifdef DLL_EXPORT
+#   define EAPI __declspec(dllexport)
+#  else
+#   define EAPI
+#  endif /* ! DLL_EXPORT */
+# else
+#  define EAPI __declspec(dllimport)
+# endif /* ! EFL_EVAS_BUILD */
+#else
+# ifdef __GNUC__
+#  if __GNUC__ >= 4
+#   define EAPI __attribute__ ((visibility("default")))
+#  else
+#   define EAPI
+#  endif
+# else
+#  define EAPI
+# endif
+#endif /* ! _WIN32 */
+
 #ifdef __cplusplus
 extern "C" {
 #endif
@@ -4616,6 +4642,9 @@ EvasGLImage *img = glapi->evasglCreateImageForContext
 }
 #endif
 
+#undef EAPI
+#define EAPI
+
 #endif
 /**
  * @}
diff --git a/src/lib/evas/Evas_Loader.h b/src/lib/evas/Evas_Loader.h
index ab2fd13..58e760c 100644
--- a/src/lib/evas/Evas_Loader.h
+++ b/src/lib/evas/Evas_Loader.h
@@ -215,4 +215,7 @@ EAPI Eina_Bool    evas_module_unregister (const 
Evas_Module_Api *module, Evas_Mo
 }
 #endif
 
+#undef EAPI
+#define EAPI
+
 #endif
diff --git a/src/lib/evas/cserve2/evas_cs2_private.h 
b/src/lib/evas/cserve2/evas_cs2_private.h
index 2d4aeb4..9412a7d 100644
--- a/src/lib/evas/cserve2/evas_cs2_private.h
+++ b/src/lib/evas/cserve2/evas_cs2_private.h
@@ -4,6 +4,32 @@
 #include "evas_common_private.h"
 #include "evas_cs2.h"
 
+#ifdef EAPI
+# undef EAPI
+#endif
+
+#ifdef _WIN32
+# ifdef EFL_EVAS_BUILD
+#  ifdef DLL_EXPORT
+#   define EAPI __declspec(dllexport)
+#  else
+#   define EAPI
+#  endif /* ! DLL_EXPORT */
+# else
+#  define EAPI __declspec(dllimport)
+# endif /* ! EFL_EVAS_BUILD */
+#else
+# ifdef __GNUC__
+#  if __GNUC__ >= 4
+#   define EAPI __attribute__ ((visibility("default")))
+#  else
+#   define EAPI
+#  endif
+# else
+#  define EAPI
+# endif
+#endif /* ! _WIN32 */
+
 #define SHARED_BUFFER_PATH_MAX 64
 typedef struct _Data_Entry Data_Entry;
 typedef struct _Font_Entry Font_Entry;
diff --git a/src/lib/evas/include/evas_common_private.h 
b/src/lib/evas/include/evas_common_private.h
index 6b4cf5e..17a08bd 100644
--- a/src/lib/evas/include/evas_common_private.h
+++ b/src/lib/evas/include/evas_common_private.h
@@ -57,6 +57,32 @@
 #include "Evas.h"
 //#include "Evas_GL.h"
 
+#ifdef EAPI
+# undef EAPI
+#endif
+
+#ifdef _WIN32
+# ifdef EFL_EVAS_BUILD
+#  ifdef DLL_EXPORT
+#   define EAPI __declspec(dllexport)
+#  else
+#   define EAPI
+#  endif /* ! DLL_EXPORT */
+# else
+#  define EAPI __declspec(dllimport)
+# endif /* ! EFL_EVAS_BUILD */
+#else
+# ifdef __GNUC__
+#  if __GNUC__ >= 4
+#   define EAPI __attribute__ ((visibility("default")))
+#  else
+#   define EAPI
+#  endif
+# else
+#  define EAPI
+# endif
+#endif /* ! _WIN32 */
+
 #ifndef HAVE_LROUND
 /* right now i dont care about rendering bugs on platforms without lround
  (e.g. windows/vc++... yay!)
@@ -1317,6 +1343,9 @@ void 
evas_common_rgba_image_scalecache_item_unref(Image_Entry *ie);
 
 /*****************************************************************************/
 
+#undef EAPI
+#define EAPI
+
 #ifdef __cplusplus
 }
 #endif
diff --git a/src/lib/evas/include/evas_filter.h 
b/src/lib/evas/include/evas_filter.h
index 70b45bf..2280441 100644
--- a/src/lib/evas/include/evas_filter.h
+++ b/src/lib/evas/include/evas_filter.h
@@ -4,6 +4,32 @@
 #include "evas_common_private.h"
 #include "evas_private.h"
 
+#ifdef EAPI
+# undef EAPI
+#endif
+
+#ifdef _WIN32
+# ifdef EFL_EVAS_BUILD
+#  ifdef DLL_EXPORT
+#   define EAPI __declspec(dllexport)
+#  else
+#   define EAPI
+#  endif /* ! DLL_EXPORT */
+# else
+#  define EAPI __declspec(dllimport)
+# endif /* ! EFL_EVAS_BUILD */
+#else
+# ifdef __GNUC__
+#  if __GNUC__ >= 4
+#   define EAPI __attribute__ ((visibility("default")))
+#  else
+#   define EAPI
+#  endif
+# else
+#  define EAPI
+# endif
+#endif /* ! _WIN32 */
+
 typedef struct _Evas_Filter_Context Evas_Filter_Context;
 typedef struct _Evas_Filter_Command Evas_Filter_Command;
 typedef struct _Evas_Filter_Instruction Evas_Filter_Instruction;
@@ -249,5 +275,7 @@ struct _Evas_Filter_Proxy_Binding
    Eina_Stringshare *name;
 };
 
-#endif
+#undef EAPI
+#define EAPI
 
+#endif
diff --git a/src/lib/evas/include/evas_private.h 
b/src/lib/evas/include/evas_private.h
index 427a71d..7d9303c 100644
--- a/src/lib/evas/include/evas_private.h
+++ b/src/lib/evas/include/evas_private.h
@@ -15,6 +15,32 @@
 
 #include "evas_3d_utils.h"
 
+#ifdef EAPI
+# undef EAPI
+#endif
+
+#ifdef _WIN32
+# ifdef EFL_EVAS_BUILD
+#  ifdef DLL_EXPORT
+#   define EAPI __declspec(dllexport)
+#  else
+#   define EAPI
+#  endif /* ! DLL_EXPORT */
+# else
+#  define EAPI __declspec(dllimport)
+# endif /* ! EFL_EVAS_BUILD */
+#else
+# ifdef __GNUC__
+#  if __GNUC__ >= 4
+#   define EAPI __attribute__ ((visibility("default")))
+#  else
+#   define EAPI
+#  endif
+# else
+#  define EAPI
+# endif
+#endif /* ! _WIN32 */
+
 #define RENDER_METHOD_INVALID            0x00000000
 
 //#define REND_DBG 1
diff --git a/src/modules/evas/engines/gl_common/evas_gl_common.h 
b/src/modules/evas/engines/gl_common/evas_gl_common.h
index 4460835..adc2ba2 100644
--- a/src/modules/evas/engines/gl_common/evas_gl_common.h
+++ b/src/modules/evas/engines/gl_common/evas_gl_common.h
@@ -309,6 +309,32 @@ typedef Eina_Bool (*evas_gl_make_current_cb)(void 
*engine_data, void *doit);
 /* enum Evas_GL_Shader is defined below */
 #include "shader/evas_gl_enum.x"
 
+#ifdef EAPI
+# undef EAPI
+#endif
+
+#ifdef _WIN32
+# ifdef EFL_EVAS_BUILD
+#  ifdef DLL_EXPORT
+#   define EAPI __declspec(dllexport)
+#  else
+#   define EAPI
+#  endif /* ! DLL_EXPORT */
+# else
+#  define EAPI __declspec(dllimport)
+# endif /* ! EFL_EVAS_BUILD */
+#else
+# ifdef __GNUC__
+#  if __GNUC__ >= 4
+#   define EAPI __attribute__ ((visibility("default")))
+#  else
+#   define EAPI
+#  endif
+# else
+#  define EAPI
+# endif
+#endif /* ! _WIN32 */
+
 struct _Evas_GL_Program
 {
    GLuint vert, frag, prog;
@@ -1035,4 +1061,7 @@ _comp_tex_sub_2d(Evas_Engine_GL_Context *gc, int x, int 
y, int w, int h, int fmt
 
 #include "evas_gl_3d_common.h"
 
+#undef EAPI
+#define EAPI
+
 #endif
diff --git a/src/modules/evas/engines/gl_common/evas_gl_core.h 
b/src/modules/evas/engines/gl_common/evas_gl_core.h
index 8496b33..9f34df6 100644
--- a/src/modules/evas/engines/gl_common/evas_gl_core.h
+++ b/src/modules/evas/engines/gl_common/evas_gl_core.h
@@ -3,6 +3,32 @@
 #define EVAS_GL_NO_GL_H_CHECK 1
 #include "Evas_GL.h"
 
+#ifdef EAPI
+# undef EAPI
+#endif
+
+#ifdef _WIN32
+# ifdef EFL_EVAS_BUILD
+#  ifdef DLL_EXPORT
+#   define EAPI __declspec(dllexport)
+#  else
+#   define EAPI
+#  endif /* ! DLL_EXPORT */
+# else
+#  define EAPI __declspec(dllimport)
+# endif /* ! EFL_EVAS_BUILD */
+#else
+# ifdef __GNUC__
+#  if __GNUC__ >= 4
+#   define EAPI __attribute__ ((visibility("default")))
+#  else
+#   define EAPI
+#  endif
+# else
+#  define EAPI
+# endif
+#endif /* ! _WIN32 */
+
 typedef void *EVGLNative_Display;
 typedef void *EVGLNative_Window;
 typedef void *EVGLNative_Surface;
@@ -60,4 +86,8 @@ void         evgl_direct_partial_info_set(int pres);
 void         evgl_direct_partial_info_clear();
 void         evgl_direct_partial_render_start();
 void         evgl_direct_partial_render_end();
+
+#undef EAPI
+#define EAPI
+
 #endif //_EVAS_GL_CORE_H

-- 


Reply via email to