kwsysPrivate.h 1.1 KB

12345678910111213141516171819202122232425262728293031323334
  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
  4. #error "Do not include kwsysPrivate.h outside of kwsys c and cxx files."
  5. #endif
  6. #ifndef _kwsysPrivate_h
  7. #define _kwsysPrivate_h
  8. /*
  9. Define KWSYS_HEADER macro to help the c and cxx files include kwsys
  10. headers from the configured namespace directory. The macro can be
  11. used like this:
  12. #include KWSYS_HEADER(Directory.hxx)
  13. #include KWSYS_HEADER(std/vector)
  14. */
  15. /* clang-format off */
  16. #define KWSYS_HEADER(x) KWSYS_HEADER0(KWSYS_NAMESPACE/x)
  17. /* clang-format on */
  18. #define KWSYS_HEADER0(x) KWSYS_HEADER1(x)
  19. #define KWSYS_HEADER1(x) <x>
  20. /*
  21. Define KWSYS_NAMESPACE_STRING to be a string constant containing the
  22. name configured for this instance of the kwsys library.
  23. */
  24. #define KWSYS_NAMESPACE_STRING KWSYS_NAMESPACE_STRING0(KWSYS_NAMESPACE)
  25. #define KWSYS_NAMESPACE_STRING0(x) KWSYS_NAMESPACE_STRING1(x)
  26. #define KWSYS_NAMESPACE_STRING1(x) #x
  27. #else
  28. #error "kwsysPrivate.h included multiple times."
  29. #endif