From 29cff9ce2e9445d90076a521510310ef63eea435 Mon Sep 17 00:00:00 2001 From: Chia-I Wu Date: Sat, 21 Aug 2010 13:03:50 +0800 Subject: [PATCH] mapi: Use MAPI_EXPORT to export public functions. mapi.h is included by vgapi and st/vega. On win32, the macro expands to dllexport and dllimport respectively. --- src/mapi/mapi/mapi.h | 22 ++++++++++++++++------ src/mapi/vgapi/SConscript | 1 + 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/src/mapi/mapi/mapi.h b/src/mapi/mapi/mapi.h index 8832b3dfb6e..c7e43e22e9f 100644 --- a/src/mapi/mapi/mapi.h +++ b/src/mapi/mapi/mapi.h @@ -31,26 +31,36 @@ #include "u_compiler.h" +#ifdef _WIN32 +#ifdef MAPI_DLL_EXPORTS +#define MAPI_EXPORT __declspec(dllexport) +#else +#define MAPI_EXPORT __declspec(dllimport) +#endif +#else /* _WIN32 */ +#define MAPI_EXPORT PUBLIC +#endif + typedef void (*mapi_proc)(void); struct mapi_table; -PUBLIC void +MAPI_EXPORT void mapi_init(const char *spec); -PUBLIC mapi_proc +MAPI_EXPORT mapi_proc mapi_get_proc_address(const char *name); -PUBLIC struct mapi_table * +MAPI_EXPORT struct mapi_table * mapi_table_create(void); -PUBLIC void +MAPI_EXPORT void mapi_table_destroy(struct mapi_table *tbl); -PUBLIC void +MAPI_EXPORT void mapi_table_fill(struct mapi_table *tbl, const mapi_proc *procs); -PUBLIC void +MAPI_EXPORT void mapi_table_make_current(const struct mapi_table *tbl); #endif /* _MAPI_H_ */ diff --git a/src/mapi/vgapi/SConscript b/src/mapi/vgapi/SConscript index bf51264ab94..20d7f2744d0 100644 --- a/src/mapi/vgapi/SConscript +++ b/src/mapi/vgapi/SConscript @@ -18,6 +18,7 @@ if env['platform'] != 'winddk': env.Append(CPPDEFINES = [ 'MAPI_ABI_HEADER=\\"vgapi/vgapi_tmp.h\\"', + 'MAPI_DLL_EXPORTS', 'KHRONOS_DLL_EXPORTS', ]) -- 2.30.2