evas: Fix build for Windows (hopefully)

The declaration of some internal EO APIs was located in the wrong
library, which results on Windows to an invalid definition of
EAPI (dllexport vs dllimport).

Thanks @vtorri for the report!
This commit is contained in:
Jean-Philippe Andre 2017-05-22 14:41:00 +09:00
parent 4b1e3a3d5b
commit 1e2d382298
4 changed files with 6 additions and 32 deletions

View File

@ -28,6 +28,7 @@
#include "ecore_private.h"
#include <Ecore_Input.h>
#include <Ecore_Input_Evas.h>
#include <Evas_Internal.h>
#include "Ecore_Evas.h"
#include "ecore_evas_private.h"

View File

@ -167,36 +167,4 @@ _efl_input_value_mark(Efl_Input_Pointer_Data *pd, Efl_Input_Value key)
#define _efl_input_value_mask(key) (1u << (int) key)
/* Internal EO APIs */
#undef EAPI
#ifdef _WIN32
# ifdef EFL_EFL_BUILD
# ifdef DLL_EXPORT
# define EAPI __declspec(dllexport)
# else
# define EAPI
# endif /* ! DLL_EXPORT */
# else
# define EAPI __declspec(dllimport)
# endif /* ! EFL_EFL_BUILD */
#else
# ifdef __GNUC__
# if __GNUC__ >= 4
# define EAPI __attribute__ ((visibility("default")))
# else
# define EAPI
# endif
# else
# define EAPI
# endif
#endif /* ! _WIN32 */
EOAPI void *efl_input_legacy_info_get(const Eo *obj);
EOAPI Eo *efl_input_instance_get(const Eo *obj, Efl_Object *owner, void **priv);
#undef EAPI
#define EAPI
#endif

View File

@ -53,6 +53,9 @@ EOAPI void efl_canvas_object_type_set(Eo *obj, const char *type);
EOAPI void efl_canvas_group_add(Eo *obj);
EOAPI void efl_canvas_group_del(Eo *obj);
EOAPI void *efl_input_legacy_info_get(const Eo *obj);
EOAPI Eo *efl_input_instance_get(const Eo *obj, Efl_Object *owner, void **priv);
EWAPI extern const Efl_Event_Description _EVAS_CANVAS_EVENT_RENDER_FLUSH_PRE;
#define EVAS_CANVAS_EVENT_RENDER_FLUSH_PRE (&(_EVAS_CANVAS_EVENT_RENDER_FLUSH_PRE))

View File

@ -6,6 +6,8 @@
#include <Evas.h>
#include <Evas_Internal.h>
#define EFL_INTERNAL_UNSTABLE
#include "interfaces/efl_common_internal.h"