EXTRA_DIST2 += \
lib/elementary/elm_factory.h \
lib/elementary/elm_factory.c \
+ lib/elementary/elm_module_helper.h \
$(top_srcdir)/elm_intro.h.in
### Binary
if (!_elm_module_load(m))
{
+ ERR("Failed to load elementary module: '%s': %m", m->as);
_elm_module_del(m);
return NULL;
}
--- /dev/null
+/* A small helper header defining EAPI for elementary modules, it should be
+ * included last in the modules C files.
+ */
+
+#ifndef ELM_MODULE_HELPER_H
+#define ELM_MODULE_HELPER_H
+
+#ifdef EAPI
+# undef EAPI
+#endif
+
+#ifdef _WIN32
+# ifdef ELEMENTARY_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 */
+
+#endif
#endif
#include <Elementary.h>
+#include "elm_module_helper.h"
/* to enable this module
export ELM_MODULES="access_output>access/api"
#include <Elementary.h>
#include "elm_widget.h"
#include "efl_ui_clock_private.h"
+#include "elm_module_helper.h"
#define CLOCK_FIELD_COUNT 8
#define FIELD_FORMAT_LEN 3
# include "elementary_config.h"
#endif
#include "Elementary.h"
+#include "elm_module_helper.h"
#undef CRI
#undef ERR
#endif
#include <Elementary.h>
+#include "elm_module_helper.h"
// module api funcs needed
EAPI int
#include "Elementary.h"
#include "elm_widget_map.h"
#include <Eina.h>
+#include "elm_module_helper.h"
EAPI Eina_Stringshare *
map_module_source_name_get(void)
#include "elm_priv.h"
#include "elm_widget_web.h"
#include "elm_web_none.eo.h"
+#include "elm_module_helper.h"
#define MY_CLASS ELM_WEB_CLASS