Initial commit.
[CMakeLuaTailorHgBridge.git] / CMakeLua / Source / kwsys / Configure.h.in
blob0fdc6441ef917c73203fea4b8f5232d7fca4bbd7
1 /*=========================================================================
3 Program: KWSys - Kitware System Library
4 Module: $RCSfile: Configure.h.in,v $
6 Copyright (c) Kitware, Inc., Insight Consortium. All rights reserved.
7 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 This software is distributed WITHOUT ANY WARRANTY; without even
10 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11 PURPOSE. See the above copyright notices for more information.
13 =========================================================================*/
14 #ifndef @KWSYS_NAMESPACE@_Configure_h
15 #define @KWSYS_NAMESPACE@_Configure_h
17 /* If we are building a kwsys .c or .cxx file, let it use the kwsys
18 namespace. When not building a kwsys source file these macros are
19 temporarily defined inside the headers that use them. */
20 #if defined(KWSYS_NAMESPACE)
21 # define kwsys_ns(x) @KWSYS_NAMESPACE@##x
22 # define kwsysEXPORT @KWSYS_NAMESPACE@_EXPORT
23 #endif
25 /* If we are building a kwsys .c or .cxx file, suppress the Microsoft
26 deprecation warnings. */
27 #if defined(KWSYS_NAMESPACE)
28 # ifndef _CRT_NONSTDC_NO_DEPRECATE
29 # define _CRT_NONSTDC_NO_DEPRECATE
30 # endif
31 # ifndef _CRT_SECURE_NO_DEPRECATE
32 # define _CRT_SECURE_NO_DEPRECATE
33 # endif
34 # ifndef _SCL_SECURE_NO_DEPRECATE
35 # define _SCL_SECURE_NO_DEPRECATE
36 # endif
37 #endif
39 /* Whether Large File Support is requested. */
40 #define @KWSYS_NAMESPACE@_LFS_REQUESTED @KWSYS_LFS_REQUESTED@
42 /* Whether Large File Support is available. */
43 #if @KWSYS_NAMESPACE@_LFS_REQUESTED
44 # define @KWSYS_NAMESPACE@_LFS_AVAILABLE @KWSYS_LFS_AVAILABLE@
45 #endif
47 /* Setup Large File Support if requested. */
48 #if @KWSYS_NAMESPACE@_LFS_REQUESTED
49 /* Since LFS is requested this header must be included before system
50 headers whether or not LFS is available. */
51 # if 0 && (defined(_SYS_TYPES_H) || defined(_SYS_TYPES_INCLUDED))
52 # error "@KWSYS_NAMESPACE@/Configure.h must be included before sys/types.h"
53 # endif
54 /* Enable the large file API if it is available. */
55 # if @KWSYS_NAMESPACE@_LFS_AVAILABLE && \
56 !defined(@KWSYS_NAMESPACE@_LFS_NO_DEFINES)
57 # if !defined(_LARGEFILE_SOURCE) && \
58 !defined(@KWSYS_NAMESPACE@_LFS_NO_DEFINE_LARGEFILE_SOURCE)
59 # define _LARGEFILE_SOURCE
60 # endif
61 # if !defined(_LARGEFILE64_SOURCE) && \
62 !defined(@KWSYS_NAMESPACE@_LFS_NO_DEFINE_LARGEFILE64_SOURCE)
63 # define _LARGEFILE64_SOURCE
64 # endif
65 # if !defined(_LARGE_FILES) && \
66 !defined(@KWSYS_NAMESPACE@_LFS_NO_DEFINE_LARGE_FILES)
67 # define _LARGE_FILES
68 # endif
69 # if !defined(_FILE_OFFSET_BITS) && \
70 !defined(@KWSYS_NAMESPACE@_LFS_NO_DEFINE_FILE_OFFSET_BITS)
71 # define _FILE_OFFSET_BITS 64
72 # endif
73 # if 0 && (defined(_FILE_OFFSET_BITS) && _FILE_OFFSET_BITS < 64)
74 # error "_FILE_OFFSET_BITS must be defined to at least 64"
75 # endif
76 # endif
77 #endif
79 /* Setup the export macro. */
80 #if defined(_WIN32) && @KWSYS_BUILD_SHARED@
81 # if defined(@KWSYS_NAMESPACE@_EXPORTS)
82 # define @KWSYS_NAMESPACE@_EXPORT __declspec(dllexport)
83 # else
84 # define @KWSYS_NAMESPACE@_EXPORT __declspec(dllimport)
85 # endif
86 #else
87 # define @KWSYS_NAMESPACE@_EXPORT
88 #endif
90 /* Enable warnings that are off by default but are useful. */
91 #if !defined(@KWSYS_NAMESPACE@_NO_WARNING_ENABLE)
92 # if defined(_MSC_VER)
93 # pragma warning ( default : 4263 ) /* no override, call convention differs */
94 # endif
95 #endif
97 /* Disable warnings that are on by default but occur in valid code. */
98 #if !defined(@KWSYS_NAMESPACE@_NO_WARNING_DISABLE)
99 # if defined(_MSC_VER)
100 # pragma warning (disable: 4097) /* typedef is synonym for class */
101 # pragma warning (disable: 4127) /* conditional expression is constant */
102 # pragma warning (disable: 4244) /* possible loss in conversion */
103 # pragma warning (disable: 4251) /* missing DLL-interface */
104 # pragma warning (disable: 4305) /* truncation from type1 to type2 */
105 # pragma warning (disable: 4309) /* truncation of constant value */
106 # pragma warning (disable: 4514) /* unreferenced inline function */
107 # pragma warning (disable: 4706) /* assignment in conditional expression */
108 # pragma warning (disable: 4710) /* function not inlined */
109 # pragma warning (disable: 4786) /* identifier truncated in debug info */
110 # endif
111 #endif
113 /* MSVC 6.0 in release mode will warn about code it produces with its
114 optimizer. Disable the warnings specifically for this
115 configuration. Real warnings will be revealed by a debug build or
116 by other compilers. */
117 #if !defined(@KWSYS_NAMESPACE@_NO_WARNING_DISABLE_BOGUS)
118 # if defined(_MSC_VER) && (_MSC_VER < 1300) && defined(NDEBUG)
119 # pragma warning ( disable : 4701 ) /* Variable may be used uninitialized. */
120 # pragma warning ( disable : 4702 ) /* Unreachable code. */
121 # endif
122 #endif
124 #endif