From 94dbfcfc4f76c76216786792f6ed5380eb01017f Mon Sep 17 00:00:00 2001 From: Robert Ramey Date: Sat, 21 Mar 2015 17:56:57 -0700 Subject: [PATCH] first cut in fixing up visibility --- include/boost/archive/detail/decl.hpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/include/boost/archive/detail/decl.hpp b/include/boost/archive/detail/decl.hpp index 44e22be9..cf0071cb 100644 --- a/include/boost/archive/detail/decl.hpp +++ b/include/boost/archive/detail/decl.hpp @@ -30,6 +30,9 @@ #if defined(__BORLANDC__) #define BOOST_ARCHIVE_DECL(T) T __export #define BOOST_ARCHIVE_OR_WARCHIVE_DECL(T) T __export + #elif defined(BOOST_GCC) && BOOST_GCC >= 4 + #define BOOST_ARCHIVE_DECL(T) __attribute__ ((visibility ("default"))) + #define BOOST_ARCHIVE_OR_WARCHIVE_DECL(T) __attribute__ ((visibility ("default"))) #else #define BOOST_ARCHIVE_DECL(T) __declspec(dllexport) T #define BOOST_ARCHIVE_OR_WARCHIVE_DECL(T) __declspec(dllexport) T @@ -37,6 +40,9 @@ #else #if defined(__BORLANDC__) #define BOOST_ARCHIVE_DECL(T) T __import + #elif defined(BOOST_GCC) && BOOST_GCC >= 4 + #define BOOST_ARCHIVE_DECL(T) __attribute__ ((visibility ("default"))) + #define BOOST_ARCHIVE_OR_WARCHIVE_DECL(T) __attribute__ ((visibility ("default"))) #else #define BOOST_ARCHIVE_DECL(T) __declspec(dllimport) T #endif @@ -45,6 +51,9 @@ #if defined(__BORLANDC__) #define BOOST_WARCHIVE_DECL(T) T __export #define BOOST_ARCHIVE_OR_WARCHIVE_DECL(T) T __export + #elif defined(BOOST_GCC) && BOOST_GCC >= 4 + #define BOOST_WARCHIVE_DECL(T) __attribute__ ((visibility ("default"))) + #define BOOST_ARCHIVE_OR_WARCHIVE_DECL(T) __attribute__ ((visibility ("default"))) #else #define BOOST_WARCHIVE_DECL(T) __declspec(dllexport) T #define BOOST_ARCHIVE_OR_WARCHIVE_DECL(T) __declspec(dllexport) T @@ -52,6 +61,9 @@ #else #if defined(__BORLANDC__) #define BOOST_WARCHIVE_DECL(T) T __import + #elif defined(BOOST_GCC) && BOOST_GCC >= 4 + #define BOOST_WARCHIVE_DECL(T) __attribute__ ((visibility ("default"))) + #define BOOST_ARCHIVE_OR_WARCHIVE_DECL(T) __attribute__ ((visibility ("default"))) #else #define BOOST_WARCHIVE_DECL(T) __declspec(dllimport) T #endif