]> git.saurik.com Git - wxWidgets.git/commitdiff
Define wxNO_RTTI if RTTI support is disabled for g++ or MSVC.
authorVadim Zeitlin <vadim@wxwidgets.org>
Sun, 22 Nov 2009 11:24:09 +0000 (11:24 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Sun, 22 Nov 2009 11:24:09 +0000 (11:24 +0000)
For g++ it could have been possible to define wxNO_RTTI in configure itself
but it seems better/simpler/more maintainable to do it in C++ code. As for
MSVC, we already define wxNO_RTTI correctly if build/msw/makefile.vc is used
but not if (modified or rebaked) project files are used and detecting RTTI
support in the code is the only way to fix it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62698 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/platform.h

index 957c26b2aea60f2f7dbb20cfbf45d7772a2dba72..33770bcb4293744cf0b5c1dcd05ecb6f84733250 100644 (file)
 #define POSSEC_FILEFN
 #endif // __WXPALMOS5__
 
+/*
+    Optionally supported C++ features.
+ */
+
+/*
+    RTTI: if it is disabled in build/msw/makefile.* then this symbol will
+    already be defined but it's also possible to do it from configure (with
+    g++) or by editing project files with MSVC so test for it here too.
+ */
+#ifndef wxNO_RTTI
+#   ifdef __GNUG__
+#       ifndef __GXX_RTTI
+#           define wxNO_RTTI
+#       endif
+#   elif defined(_MSC_VER)
+#       ifndef _CPPRTTI
+#           define wxNO_RTTI
+#       endif
+#   endif
+#endif // wxNO_RTTI
+
 #endif /* _WX_PLATFORM_H_ */