X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/bae076147bfc88ce8607f15761149f42d0443585..998f0e84439ff2665a69d9c33686c86f380713c0:/include/xbt/base.h diff --git a/include/xbt/base.h b/include/xbt/base.h index 0f34bad192..a1fa3696ba 100644 --- a/include/xbt/base.h +++ b/include/xbt/base.h @@ -216,7 +216,7 @@ # define XBT_IMPORT_NO_EXPORT(type) type # define XBT_PUBLIC_DATA(type) extern __declspec(dllexport) type # define XBT_PUBLIC_CLASS class __declspec(dllexport) - +# define XBT_PRIVATE /* Pack everything up statically */ #elif defined(DLL_STATIC) @@ -225,7 +225,7 @@ # define XBT_IMPORT_NO_EXPORT(type) type # define XBT_PUBLIC_DATA(type) extern type # define XBT_PUBLIC_CLASS class - +# define XBT_PRIVATE /* Link against the DLL */ #elif (defined(_XBT_WIN32) && !defined(DLL_EXPORT) && !defined(DLL_STATIC)) @@ -234,30 +234,24 @@ # define XBT_IMPORT_NO_EXPORT(type) __declspec(dllimport) type # define XBT_PUBLIC_DATA(type) extern __declspec(dllimport) type # define XBT_PUBLIC_CLASS class __declspec(dllimport) +# define XBT_PRIVATE - -/* UNIX build */ -#elsif defined(__ELF__) - -# define XBT_PUBLIC(type) type -# define XBT_EXPORT_NO_IMPORT(type) type -# define XBT_IMPORT_NO_EXPORT(type) type -# define XBT_PUBLIC_DATA(type) extern type -# define XBT_PUBLIC_CLASS class - -#else +#elif defined(__ELF__) # define XBT_PUBLIC(type) __attribute__((visibility("default"))) type # define XBT_EXPORT_NO_IMPORT(type) __attribute__((visibility("default"))) type # define XBT_IMPORT_NO_EXPORT(type) __attribute__((visibility("default"))) type # define XBT_PUBLIC_DATA(type) extern __attribute__((visibility("default"))) type # define XBT_PUBLIC_CLASS class __attribute__((visibility("default"))) +# define XBT_PRIVATE __attribute__((visibility("hidden"))) -#endif - -#ifdef __ELF__ -#define XBT_PRIVATE __attribute__((visibility("hidden"))) #else -#define XBT_PRIVATE +# define XBT_PUBLIC(type) type +# define XBT_EXPORT_NO_IMPORT(type) type +# define XBT_IMPORT_NO_EXPORT(type) type +# define XBT_PUBLIC_DATA(type) extern type +# define XBT_PUBLIC_CLASS class +# define XBT_PRIVATE + #endif #ifdef _MSC_VER /* MSVC has no ssize_t, and I fail to use the SSIZE_T declared in BaseTsd.h */