aboutsummaryrefslogtreecommitdiff
path: root/libstudxml/details/config.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'libstudxml/details/config.hxx')
-rw-r--r--libstudxml/details/config.hxx50
1 files changed, 50 insertions, 0 deletions
diff --git a/libstudxml/details/config.hxx b/libstudxml/details/config.hxx
new file mode 100644
index 0000000..68b9dbd
--- /dev/null
+++ b/libstudxml/details/config.hxx
@@ -0,0 +1,50 @@
+// file : libstudxml/details/config.hxx
+// copyright : Copyright (c) 2013-2017 Code Synthesis Tools CC
+// license : MIT; see accompanying LICENSE file
+
+#ifndef LIBSTUDXML_DETAILS_CONFIG_HXX
+#define LIBSTUDXML_DETAILS_CONFIG_HXX
+
+// C++11 support.
+//
+#ifdef _MSC_VER
+# if _MSC_VER >= 1900
+# define STUDXML_CXX11_NOEXCEPT
+# endif
+#else
+# if defined(__GXX_EXPERIMENTAL_CXX0X__) || __cplusplus >= 201103L
+# ifdef __clang__ // Pretends to be a really old __GNUC__ on some platforms.
+# define STUDXML_CXX11_NOEXCEPT
+# elif defined(__GNUC__)
+# if (__GNUC__ == 4 && __GNUC_MINOR__ >= 6) || __GNUC__ > 4
+# define STUDXML_CXX11_NOEXCEPT
+# endif
+# else
+# define STUDXML_CXX11_NOEXCEPT
+# endif
+# endif
+#endif
+
+#ifdef STUDXML_CXX11_NOEXCEPT
+# define STUDXML_NOTHROW_NOEXCEPT noexcept
+#else
+# define STUDXML_NOTHROW_NOEXCEPT throw()
+#endif
+
+// Note: the same in expat/config.h
+//
+#ifdef LIBSTUDXML_BUILD2
+# ifdef _MSC_VER
+# include <libstudxml/details/build2/config-vc.h>
+# else
+# include <libstudxml/details/build2/config.h>
+# endif
+#else
+# ifdef _MSC_VER
+# include <libstudxml/details/config-vc.h>
+# else
+# include <libstudxml/details/config.h>
+# endif
+#endif
+
+#endif // LIBSTUDXML_DETAILS_CONFIG_HXX