2003-06-30 18:30:38 +04:00
|
|
|
/*=========================================================================
|
|
|
|
|
|
|
|
Program: KWSys - Kitware System Library
|
|
|
|
Module: $RCSfile$
|
|
|
|
|
2003-12-16 00:30:46 +03:00
|
|
|
Copyright (c) Kitware, Inc., Insight Consortium. All rights reserved.
|
|
|
|
See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
|
2003-06-30 18:30:38 +04:00
|
|
|
|
2003-12-16 00:30:46 +03:00
|
|
|
This software is distributed WITHOUT ANY WARRANTY; without even
|
|
|
|
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
2003-06-30 18:30:38 +04:00
|
|
|
PURPOSE. See the above copyright notices for more information.
|
|
|
|
|
|
|
|
=========================================================================*/
|
|
|
|
#ifndef @KWSYS_NAMESPACE@_Configure_h
|
|
|
|
#define @KWSYS_NAMESPACE@_Configure_h
|
|
|
|
|
2005-07-26 19:34:57 +04:00
|
|
|
/* If we are building a kwsys .c or .cxx file, let it use the kwsys
|
|
|
|
namespace. When not building a kwsys source file these macros are
|
|
|
|
temporarily defined inside the headers that use them. */
|
|
|
|
#if defined(KWSYS_NAMESPACE)
|
|
|
|
# define kwsys_ns(x) @KWSYS_NAMESPACE@##x
|
|
|
|
# define kwsysEXPORT @KWSYS_NAMESPACE@_EXPORT
|
|
|
|
#endif
|
|
|
|
|
2007-08-15 17:25:58 +04:00
|
|
|
/* If we are building a kwsys .c or .cxx file, suppress the Microsoft
|
|
|
|
deprecation warnings. */
|
|
|
|
#if defined(KWSYS_NAMESPACE)
|
2007-08-15 19:38:13 +04:00
|
|
|
# ifndef _CRT_NONSTDC_NO_DEPRECATE
|
|
|
|
# define _CRT_NONSTDC_NO_DEPRECATE
|
|
|
|
# endif
|
|
|
|
# ifndef _CRT_SECURE_NO_DEPRECATE
|
|
|
|
# define _CRT_SECURE_NO_DEPRECATE
|
|
|
|
# endif
|
|
|
|
# ifndef _SCL_SECURE_NO_DEPRECATE
|
|
|
|
# define _SCL_SECURE_NO_DEPRECATE
|
|
|
|
# endif
|
2007-08-15 17:25:58 +04:00
|
|
|
#endif
|
|
|
|
|
2006-08-26 00:07:06 +04:00
|
|
|
/* Whether Large File Support is requested. */
|
|
|
|
#define @KWSYS_NAMESPACE@_LFS_REQUESTED @KWSYS_LFS_REQUESTED@
|
|
|
|
|
|
|
|
/* Whether Large File Support is available. */
|
|
|
|
#if @KWSYS_NAMESPACE@_LFS_REQUESTED
|
|
|
|
# define @KWSYS_NAMESPACE@_LFS_AVAILABLE @KWSYS_LFS_AVAILABLE@
|
|
|
|
#endif
|
|
|
|
|
|
|
|
/* Setup Large File Support if requested. */
|
|
|
|
#if @KWSYS_NAMESPACE@_LFS_REQUESTED
|
|
|
|
/* Since LFS is requested this header must be included before system
|
|
|
|
headers whether or not LFS is available. */
|
|
|
|
# if 0 && (defined(_SYS_TYPES_H) || defined(_SYS_TYPES_INCLUDED))
|
|
|
|
# error "@KWSYS_NAMESPACE@/Configure.h must be included before sys/types.h"
|
|
|
|
# endif
|
|
|
|
/* Enable the large file API if it is available. */
|
|
|
|
# if @KWSYS_NAMESPACE@_LFS_AVAILABLE && \
|
|
|
|
!defined(@KWSYS_NAMESPACE@_LFS_NO_DEFINES)
|
|
|
|
# if !defined(_LARGEFILE_SOURCE) && \
|
|
|
|
!defined(@KWSYS_NAMESPACE@_LFS_NO_DEFINE_LARGEFILE_SOURCE)
|
|
|
|
# define _LARGEFILE_SOURCE
|
2006-08-22 23:34:14 +04:00
|
|
|
# endif
|
2006-08-26 00:07:06 +04:00
|
|
|
# if !defined(_LARGEFILE64_SOURCE) && \
|
|
|
|
!defined(@KWSYS_NAMESPACE@_LFS_NO_DEFINE_LARGEFILE64_SOURCE)
|
|
|
|
# define _LARGEFILE64_SOURCE
|
2006-08-22 23:34:14 +04:00
|
|
|
# endif
|
2006-08-26 00:07:06 +04:00
|
|
|
# if !defined(_LARGE_FILES) && \
|
|
|
|
!defined(@KWSYS_NAMESPACE@_LFS_NO_DEFINE_LARGE_FILES)
|
|
|
|
# define _LARGE_FILES
|
2006-08-22 23:34:14 +04:00
|
|
|
# endif
|
2006-08-26 00:07:06 +04:00
|
|
|
# if !defined(_FILE_OFFSET_BITS) && \
|
|
|
|
!defined(@KWSYS_NAMESPACE@_LFS_NO_DEFINE_FILE_OFFSET_BITS)
|
|
|
|
# define _FILE_OFFSET_BITS 64
|
|
|
|
# endif
|
2006-08-26 00:32:47 +04:00
|
|
|
# if 0 && (defined(_FILE_OFFSET_BITS) && _FILE_OFFSET_BITS < 64)
|
2006-08-26 00:07:06 +04:00
|
|
|
# error "_FILE_OFFSET_BITS must be defined to at least 64"
|
|
|
|
# endif
|
|
|
|
# endif
|
2006-08-22 23:34:14 +04:00
|
|
|
#endif
|
|
|
|
|
2005-06-09 16:03:45 +04:00
|
|
|
/* Setup the export macro. */
|
2003-06-30 18:30:38 +04:00
|
|
|
#if defined(_WIN32) && @KWSYS_BUILD_SHARED@
|
|
|
|
# if defined(@KWSYS_NAMESPACE@_EXPORTS)
|
|
|
|
# define @KWSYS_NAMESPACE@_EXPORT __declspec(dllexport)
|
|
|
|
# else
|
2003-12-14 21:03:44 +03:00
|
|
|
# define @KWSYS_NAMESPACE@_EXPORT __declspec(dllimport)
|
2003-06-30 18:30:38 +04:00
|
|
|
# endif
|
|
|
|
#else
|
|
|
|
# define @KWSYS_NAMESPACE@_EXPORT
|
|
|
|
#endif
|
|
|
|
|
2005-06-09 16:19:16 +04:00
|
|
|
/* Enable warnings that are off by default but are useful. */
|
|
|
|
#if !defined(@KWSYS_NAMESPACE@_NO_WARNING_ENABLE)
|
|
|
|
# if defined(_MSC_VER)
|
|
|
|
# pragma warning ( default : 4263 ) /* no override, call convention differs */
|
|
|
|
# endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
/* Disable warnings that are on by default but occur in valid code. */
|
2005-06-09 16:03:45 +04:00
|
|
|
#if !defined(@KWSYS_NAMESPACE@_NO_WARNING_DISABLE)
|
|
|
|
# if defined(_MSC_VER)
|
2005-06-09 16:19:16 +04:00
|
|
|
# pragma warning (disable: 4097) /* typedef is synonym for class */
|
|
|
|
# pragma warning (disable: 4127) /* conditional expression is constant */
|
|
|
|
# pragma warning (disable: 4244) /* possible loss in conversion */
|
|
|
|
# pragma warning (disable: 4251) /* missing DLL-interface */
|
|
|
|
# pragma warning (disable: 4305) /* truncation from type1 to type2 */
|
|
|
|
# pragma warning (disable: 4309) /* truncation of constant value */
|
|
|
|
# pragma warning (disable: 4514) /* unreferenced inline function */
|
|
|
|
# pragma warning (disable: 4706) /* assignment in conditional expression */
|
|
|
|
# pragma warning (disable: 4710) /* function not inlined */
|
|
|
|
# pragma warning (disable: 4786) /* identifier truncated in debug info */
|
|
|
|
# endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
/* MSVC 6.0 in release mode will warn about code it produces with its
|
|
|
|
optimizer. Disable the warnings specifically for this
|
|
|
|
configuration. Real warnings will be revealed by a debug build or
|
|
|
|
by other compilers. */
|
|
|
|
#if !defined(@KWSYS_NAMESPACE@_NO_WARNING_DISABLE_BOGUS)
|
|
|
|
# if defined(_MSC_VER) && (_MSC_VER < 1300) && defined(NDEBUG)
|
|
|
|
# pragma warning ( disable : 4701 ) /* Variable may be used uninitialized. */
|
|
|
|
# pragma warning ( disable : 4702 ) /* Unreachable code. */
|
2005-06-09 16:03:45 +04:00
|
|
|
# endif
|
|
|
|
#endif
|
|
|
|
|
2003-06-30 18:30:38 +04:00
|
|
|
#endif
|