kwsysPrivate.h 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /*=========================================================================
  2. Program: KWSys - Kitware System Library
  3. Module: $RCSfile$
  4. Copyright (c) Kitware, Inc., Insight Consortium. All rights reserved.
  5. See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
  6. This software is distributed WITHOUT ANY WARRANTY; without even
  7. the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
  8. PURPOSE. See the above copyright notices for more information.
  9. =========================================================================*/
  10. #ifndef KWSYS_NAMESPACE
  11. # error "Do not include kwsysPrivate.h outside of kwsys c and cxx files."
  12. #endif
  13. #ifndef _kwsysPrivate_h
  14. #define _kwsysPrivate_h
  15. /*
  16. Define KWSYS_HEADER macro to help the c and cxx files include kwsys
  17. headers from the configured namespace directory. The macro can be
  18. used like this:
  19. #include KWSYS_HEADER(Directory.hxx)
  20. #include KWSYS_HEADER(std/vector)
  21. */
  22. #define KWSYS_HEADER(x) KWSYS_HEADER0(KWSYS_NAMESPACE/x)
  23. #define KWSYS_HEADER0(x) KWSYS_HEADER1(x)
  24. #define KWSYS_HEADER1(x) <x>
  25. /*
  26. Define KWSYS_NAMESPACE_STRING to be a string constant containing the
  27. name configured for this instance of the kwsys library.
  28. */
  29. #define KWSYS_NAMESPACE_STRING KWSYS_NAMESPACE_STRING0(KWSYS_NAMESPACE)
  30. #define KWSYS_NAMESPACE_STRING0(x) KWSYS_NAMESPACE_STRING1(x)
  31. #define KWSYS_NAMESPACE_STRING1(x) #x
  32. #else
  33. # error "kwsysPrivate.h included multiple times."
  34. #endif