summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--include/pemagine/pe_api.h13
1 files changed, 11 insertions, 2 deletions
diff --git a/include/pemagine/pe_api.h b/include/pemagine/pe_api.h
index c6c456b..f7f9346 100644
--- a/include/pemagine/pe_api.h
+++ b/include/pemagine/pe_api.h
@@ -23,13 +23,22 @@
#define pe_import
#endif
+/* hidden visibility */
+#if defined(__attr_hidden__)
+#define pe_hidden __attr_hidden__
+#else
+#define pe_hidden
+#endif
+
/* pe_api */
-#if defined (PE_EXPORT)
+#if defined (PE_LDSO)
+#define pe_api pe_hidden
+#elif defined (PE_EXPORT)
#define pe_api pe_export
#elif defined (PE_IMPORT)
#define pe_api pe_import
#elif defined (PE_STATIC)
-#define pe_api
+#define pe_api pe_hidden
#else
#define pe_api
#endif