aboutsummaryrefslogtreecommitdiffstats
path: root/code/qcommon
diff options
context:
space:
mode:
authoricculus <icculus@edf5b092-35ff-0310-97b2-ce42778d08ea>2009-09-15 02:48:17 +0000
committericculus <icculus@edf5b092-35ff-0310-97b2-ce42778d08ea>2009-09-15 02:48:17 +0000
commitce2c190e843e19ada5ebaa284827a98d55bf98fc (patch)
treefd39041f2b658adaaad70bc252b086c262293a8d /code/qcommon
parent749667cac99b4e49e840ce645ea2ef872ddaaa41 (diff)
downloadioquake3-aero-ce2c190e843e19ada5ebaa284827a98d55bf98fc.tar.gz
ioquake3-aero-ce2c190e843e19ada5ebaa284827a98d55bf98fc.zip
Enable -fvisibility=hidden on Linux.
This will prevent further symbol clashes, and makes the shared libraries 10 to 20 percent smaller. We should enable this on other platforms, too, if we can guarantee they'll use gcc 4.0 or later and the platform supports it. git-svn-id: svn://svn.icculus.org/quake3/trunk@1609 edf5b092-35ff-0310-97b2-ce42778d08ea
Diffstat (limited to 'code/qcommon')
-rw-r--r--code/qcommon/q_shared.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/code/qcommon/q_shared.h b/code/qcommon/q_shared.h
index 99edd69..19db09c 100644
--- a/code/qcommon/q_shared.h
+++ b/code/qcommon/q_shared.h
@@ -81,6 +81,16 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#endif
#endif
+#if (defined _MSC_VER)
+#define Q_EXPORT __declspec(dllexport)
+#elif (defined __SUNPRO_C)
+#define Q_EXPORT __global
+#elif ((__GNUC__ >= 3) && (!__EMX__) && (!sun))
+#define Q_EXPORT __attribute__((visibility("default")))
+#else
+#define Q_EXPORT
+#endif
+
/**********************************************************************
VM Considerations