File indexing completed on 2025-01-30 09:49:03
0001
0002
0003
0004
0005
0006
0007
0008 #ifndef BOOST_NOWIDE_CONFIG_HPP_INCLUDED
0009 #define BOOST_NOWIDE_CONFIG_HPP_INCLUDED
0010
0011
0012
0013 #include <boost/config.hpp>
0014 #include <boost/nowide/replacement.hpp>
0015 #include <boost/version.hpp>
0016
0017
0018
0019 #if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_NOWIDE_DYN_LINK)
0020 #ifdef BOOST_NOWIDE_SOURCE
0021 #define BOOST_NOWIDE_DECL BOOST_SYMBOL_EXPORT
0022 #else
0023 #define BOOST_NOWIDE_DECL BOOST_SYMBOL_IMPORT
0024 #endif
0025 #else
0026 #define BOOST_NOWIDE_DECL
0027 #endif
0028
0029
0030 #if !defined(BOOST_ALL_NO_LIB) && !defined(BOOST_NOWIDE_NO_LIB) && !defined(BOOST_NOWIDE_SOURCE)
0031
0032
0033
0034
0035 #define BOOST_LIB_NAME boost_nowide
0036
0037
0038
0039 #if defined(BOOST_ALL_DYN_LINK) || defined(BOOST_NOWIDE_DYN_LINK)
0040 #define BOOST_DYN_LINK
0041 #endif
0042
0043
0044
0045 #include <boost/config/auto_link.hpp>
0046 #endif
0047
0048
0049
0050
0051
0052
0053
0054 #ifndef BOOST_NOWIDE_USE_WCHAR_OVERLOADS
0055 #if defined(BOOST_WINDOWS) || defined(__CYGWIN__) || defined(BOOST_NOWIDE_DOXYGEN)
0056 #define BOOST_NOWIDE_USE_WCHAR_OVERLOADS 1
0057 #else
0058 #define BOOST_NOWIDE_USE_WCHAR_OVERLOADS 0
0059 #endif
0060 #endif
0061
0062
0063
0064
0065
0066
0067
0068
0069
0070
0071
0072 #if defined(BOOST_WINDOWS) || defined(BOOST_NOWIDE_DOXYGEN)
0073 #ifdef BOOST_NOWIDE_USE_FILEBUF_REPLACEMENT
0074 #undef BOOST_NOWIDE_USE_FILEBUF_REPLACEMENT
0075 #endif
0076 #define BOOST_NOWIDE_USE_FILEBUF_REPLACEMENT 1
0077 #elif !defined(BOOST_NOWIDE_USE_FILEBUF_REPLACEMENT)
0078 #define BOOST_NOWIDE_USE_FILEBUF_REPLACEMENT BOOST_NOWIDE_USE_WCHAR_OVERLOADS
0079 #endif
0080
0081
0082
0083 #if BOOST_VERSION < 106500 && defined(__GNUC__) && __GNUC__ >= 7
0084 #define BOOST_NOWIDE_FALLTHROUGH __attribute__((fallthrough))
0085 #else
0086 #define BOOST_NOWIDE_FALLTHROUGH BOOST_FALLTHROUGH
0087 #endif
0088
0089
0090
0091 #if defined(_MSC_VER)
0092 #define BOOST_NOWIDE_SUPPRESS_UTF_CODECVT_DEPRECATION_BEGIN __pragma(warning(push)) __pragma(warning(disable : 4996))
0093 #define BOOST_NOWIDE_SUPPRESS_UTF_CODECVT_DEPRECATION_END __pragma(warning(pop))
0094 #elif(__cplusplus >= 202002L) && defined(__clang__)
0095 #define BOOST_NOWIDE_SUPPRESS_UTF_CODECVT_DEPRECATION_BEGIN \
0096 _Pragma("clang diagnostic push") _Pragma("clang diagnostic ignored \"-Wdeprecated-declarations\"")
0097 #define BOOST_NOWIDE_SUPPRESS_UTF_CODECVT_DEPRECATION_END _Pragma("clang diagnostic pop")
0098 #elif(__cplusplus >= 202002L) && defined(__GNUC__)
0099 #define BOOST_NOWIDE_SUPPRESS_UTF_CODECVT_DEPRECATION_BEGIN \
0100 _Pragma("GCC diagnostic push") _Pragma("GCC diagnostic ignored \"-Wdeprecated-declarations\"")
0101 #define BOOST_NOWIDE_SUPPRESS_UTF_CODECVT_DEPRECATION_END _Pragma("GCC diagnostic pop")
0102 #else
0103 #define BOOST_NOWIDE_SUPPRESS_UTF_CODECVT_DEPRECATION_BEGIN
0104 #define BOOST_NOWIDE_SUPPRESS_UTF_CODECVT_DEPRECATION_END
0105 #endif
0106
0107
0108
0109 namespace boost {
0110
0111
0112
0113
0114
0115
0116 namespace nowide {}
0117 }
0118
0119 #endif