summaryrefslogtreecommitdiff
path: root/qpid/cpp/include/qpid/ImportExport.h
diff options
context:
space:
mode:
Diffstat (limited to 'qpid/cpp/include/qpid/ImportExport.h')
-rw-r--r--qpid/cpp/include/qpid/ImportExport.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/qpid/cpp/include/qpid/ImportExport.h b/qpid/cpp/include/qpid/ImportExport.h
index e62399faf7..a169c7da49 100644
--- a/qpid/cpp/include/qpid/ImportExport.h
+++ b/qpid/cpp/include/qpid/ImportExport.h
@@ -56,10 +56,21 @@
# define QPID_INLINE_EXPORT
# define QPID_INLINE_IMPORT
# endif
-#else
+#elif __GNUC__ >= 4
//
- // Non-Windows (Linux, etc.) definitions:
+ // GCC visibility attribute
//
+# define QPID_IMPORT __attribute__ ((visibility("default")))
+# define QPID_EXPORT __attribute__ ((visibility("default")))
+# define QPID_CLASS_EXPORT QPID_EXPORT
+# define QPID_CLASS_IMPORT QPID_IMPORT
+# define QPID_INLINE_EXPORT QPID_EXPORT
+# define QPID_INLINE_IMPORT QPID_IMPORT
+
+#else
+ //
+ // No import/export definitions
+ //
# define QPID_EXPORT
# define QPID_IMPORT
# define QPID_CLASS_EXPORT