Configure.hxx.in 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. /* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
  2. file Copyright.txt or https://cmake.org/licensing#kwsys for details. */
  3. #ifndef @KWSYS_NAMESPACE@_Configure_hxx
  4. #define @KWSYS_NAMESPACE@_Configure_hxx
  5. /* Include C configuration. */
  6. #include <@KWSYS_NAMESPACE@/Configure.h>
  7. /* Whether wstring is available. */
  8. #define @KWSYS_NAMESPACE@_STL_HAS_WSTRING @KWSYS_STL_HAS_WSTRING@
  9. /* Whether <ext/stdio_filebuf.h> is available. */
  10. #define @KWSYS_NAMESPACE@_CXX_HAS_EXT_STDIO_FILEBUF_H \
  11. @KWSYS_CXX_HAS_EXT_STDIO_FILEBUF_H@
  12. #if defined(__SUNPRO_CC) && __SUNPRO_CC > 0x5130 && defined(__has_attribute)
  13. # define @KWSYS_NAMESPACE@__has_cpp_attribute(x) __has_attribute(x)
  14. #elif defined(__has_cpp_attribute)
  15. # define @KWSYS_NAMESPACE@__has_cpp_attribute(x) __has_cpp_attribute(x)
  16. #else
  17. # define @KWSYS_NAMESPACE@__has_cpp_attribute(x) 0
  18. #endif
  19. #if __cplusplus >= 201103L
  20. # define @KWSYS_NAMESPACE@_NULLPTR nullptr
  21. #else
  22. # define @KWSYS_NAMESPACE@_NULLPTR 0
  23. #endif
  24. #ifndef @KWSYS_NAMESPACE@_FALLTHROUGH
  25. # if __cplusplus >= 201703L && \
  26. @KWSYS_NAMESPACE@__has_cpp_attribute(fallthrough)
  27. # define @KWSYS_NAMESPACE@_FALLTHROUGH [[fallthrough]]
  28. # elif __cplusplus >= 201103L && \
  29. @KWSYS_NAMESPACE@__has_cpp_attribute(gnu::fallthrough)
  30. # define @KWSYS_NAMESPACE@_FALLTHROUGH [[gnu::fallthrough]]
  31. # elif __cplusplus >= 201103L && \
  32. @KWSYS_NAMESPACE@__has_cpp_attribute(clang::fallthrough)
  33. # define @KWSYS_NAMESPACE@_FALLTHROUGH [[clang::fallthrough]]
  34. # endif
  35. #endif
  36. #ifndef @KWSYS_NAMESPACE@_FALLTHROUGH
  37. # define @KWSYS_NAMESPACE@_FALLTHROUGH static_cast<void>(0)
  38. #endif
  39. #undef @KWSYS_NAMESPACE@__has_cpp_attribute
  40. /* If building a C++ file in kwsys itself, give the source file
  41. access to the macros without a configured namespace. */
  42. #if defined(KWSYS_NAMESPACE)
  43. # if !@KWSYS_NAMESPACE@_NAME_IS_KWSYS
  44. # define kwsys @KWSYS_NAMESPACE@
  45. # endif
  46. # define KWSYS_NAME_IS_KWSYS @KWSYS_NAMESPACE@_NAME_IS_KWSYS
  47. # define KWSYS_STL_HAS_WSTRING @KWSYS_NAMESPACE@_STL_HAS_WSTRING
  48. # define KWSYS_CXX_HAS_EXT_STDIO_FILEBUF_H \
  49. @KWSYS_NAMESPACE@_CXX_HAS_EXT_STDIO_FILEBUF_H
  50. # define KWSYS_FALLTHROUGH @KWSYS_NAMESPACE@_FALLTHROUGH
  51. # define KWSYS_NULLPTR @KWSYS_NAMESPACE@_NULLPTR
  52. #endif
  53. #endif