2017-08-09 01:01:37 -07:00
|
|
|
/* 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
|
2017-12-20 01:54:14 -08:00
|
|
|
#ifdef EWAPI
|
|
|
|
# undef EWAPI
|
|
|
|
#endif
|
2017-08-09 01:01:37 -07:00
|
|
|
|
|
|
|
#ifdef _WIN32
|
|
|
|
# ifdef ELEMENTARY_BUILD
|
|
|
|
# ifdef DLL_EXPORT
|
|
|
|
# define EAPI __declspec(dllexport)
|
|
|
|
# else
|
|
|
|
# define EAPI
|
2018-01-18 01:04:03 -08:00
|
|
|
# endif
|
2017-08-09 01:01:37 -07:00
|
|
|
# else
|
|
|
|
# define EAPI __declspec(dllimport)
|
2018-01-18 01:04:03 -08:00
|
|
|
# endif
|
2017-12-20 01:54:14 -08:00
|
|
|
# define EAPI_WEAK
|
2017-08-09 01:01:37 -07:00
|
|
|
#else
|
|
|
|
# ifdef __GNUC__
|
|
|
|
# if __GNUC__ >= 4
|
|
|
|
# define EAPI __attribute__ ((visibility("default")))
|
2017-12-20 01:54:14 -08:00
|
|
|
# define EAPI_WEAK __attribute__ ((weak))
|
2017-08-09 01:01:37 -07:00
|
|
|
# else
|
|
|
|
# define EAPI
|
2017-12-20 01:54:14 -08:00
|
|
|
# define EAPI_WEAK
|
2017-08-09 01:01:37 -07:00
|
|
|
# endif
|
|
|
|
# else
|
|
|
|
# define EAPI
|
2017-12-20 01:54:14 -08:00
|
|
|
# define EAPI_WEAK
|
2017-08-09 01:01:37 -07:00
|
|
|
# endif
|
2018-01-18 01:04:03 -08:00
|
|
|
#endif
|
2017-08-09 01:01:37 -07:00
|
|
|
|
2017-12-20 01:54:14 -08:00
|
|
|
#define EWAPI EAPI EAPI_WEAK
|
|
|
|
|
2017-08-09 01:01:37 -07:00
|
|
|
#endif
|