kwsysPrivate.h 1.49 KB
Newer Older
1 2 3 4 5
/*=========================================================================

  Program:   KWSys - Kitware System Library
  Module:    kwsysPrivate.h

Brad King's avatar
Brad King committed
6 7
  Copyright (c) Kitware, Inc., Insight Consortium.  All rights reserved.
  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
8

Brad King's avatar
Brad King committed
9 10
     This software is distributed WITHOUT ANY WARRANTY; without even
     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11 12 13 14
     PURPOSE.  See the above copyright notices for more information.

=========================================================================*/
#ifndef KWSYS_NAMESPACE
15 16 17
# ifndef __VMS
#  error "Do not include kwsysPrivate.h outside of kwsys c and cxx files."
# endif
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
#endif

#ifndef _kwsysPrivate_h
#define _kwsysPrivate_h

/*
  Define KWSYS_HEADER macro to help the c and cxx files include kwsys
  headers from the configured namespace directory.  The macro can be
  used like this:
  
  #include KWSYS_HEADER(Directory.hxx)
  #include KWSYS_HEADER(std/vector)
*/
#define KWSYS_HEADER(x) KWSYS_HEADER0(KWSYS_NAMESPACE/x)
#define KWSYS_HEADER0(x) KWSYS_HEADER1(x)
#define KWSYS_HEADER1(x) <x>

35 36 37 38 39 40 41 42
/*
  Define KWSYS_NAMESPACE_STRING to be a string constant containing the
  name configured for this instance of the kwsys library.
*/
#define KWSYS_NAMESPACE_STRING KWSYS_NAMESPACE_STRING0(KWSYS_NAMESPACE)
#define KWSYS_NAMESPACE_STRING0(x) KWSYS_NAMESPACE_STRING1(x)
#define KWSYS_NAMESPACE_STRING1(x) #x

43
#else
44 45 46
# ifndef __VMS
#  error "kwsysPrivate.h included multiple times."
# endif
47
#endif