summaryrefslogtreecommitdiffstats
path: root/Source/kwsys/Configure.hxx.in
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2009-08-31 17:00:55 (GMT)
committerBrad King <brad.king@kitware.com>2009-08-31 17:00:55 (GMT)
commit207aab6acf214e05572c772e19a53ad4bff151f0 (patch)
treeba878ff5f922f71223f849cf69fb9a8aee620370 /Source/kwsys/Configure.hxx.in
parent6d0b6f2b9e959be073a91d6040810b3057f2b1b1 (diff)
downloadCMake-207aab6acf214e05572c772e19a53ad4bff151f0.zip
CMake-207aab6acf214e05572c772e19a53ad4bff151f0.tar.gz
CMake-207aab6acf214e05572c772e19a53ad4bff151f0.tar.bz2
Define kwsys_ios_binary macro for std::ios::binary
The 'binary' openmode does not exist on all compilers. We define macro <kwsys>_ios_binary, where <kwsys> is the KWSys namespace, to refer to std::ios::binary if it exists and 0 otherwise. Sample usage: kwsys_ios::ifstream fin(fn, kwsys_ios::ios::in | kwsys_ios_binary);
Diffstat (limited to 'Source/kwsys/Configure.hxx.in')
-rw-r--r--Source/kwsys/Configure.hxx.in12
1 files changed, 12 insertions, 0 deletions
diff --git a/Source/kwsys/Configure.hxx.in b/Source/kwsys/Configure.hxx.in
index 9e0653d..572d710 100644
--- a/Source/kwsys/Configure.hxx.in
+++ b/Source/kwsys/Configure.hxx.in
@@ -32,6 +32,9 @@
/* Whether old C++ <strstrea.h> header is to be used. */
#define @KWSYS_NAMESPACE@_IOS_USE_STRSTREA_H @KWSYS_IOS_USE_STRSTREA_H@
+/* Whether C++ streams support the ios::binary openmode. */
+#define @KWSYS_NAMESPACE@_IOS_HAVE_BINARY @KWSYS_IOS_HAVE_BINARY@
+
/* Whether STL is in std namespace. */
#define @KWSYS_NAMESPACE@_STL_HAVE_STD @KWSYS_STL_HAVE_STD@
@@ -63,6 +66,13 @@
# define @KWSYS_NAMESPACE@_ios @KWSYS_NAMESPACE@_ios
#endif
+/* Define the ios::binary openmode macro. */
+#if @KWSYS_NAMESPACE@_IOS_HAVE_BINARY
+# define @KWSYS_NAMESPACE@_ios_binary @KWSYS_NAMESPACE@_ios::ios::binary
+#else
+# define @KWSYS_NAMESPACE@_ios_binary 0
+#endif
+
/* Whether the cstddef header is available. */
#define @KWSYS_NAMESPACE@_CXX_HAS_CSTDDEF @KWSYS_CXX_HAS_CSTDDEF@
@@ -133,6 +143,7 @@
# define kwsys_stl @KWSYS_NAMESPACE@_stl
# define kwsys_ios @KWSYS_NAMESPACE@_ios
# define kwsys @KWSYS_NAMESPACE@
+# define kwsys_ios_binary @KWSYS_NAMESPACE@_ios_binary
# endif
# define KWSYS_NAME_IS_KWSYS @KWSYS_NAMESPACE@_NAME_IS_KWSYS
# define KWSYS_STL_HAVE_STD @KWSYS_NAMESPACE@_STL_HAVE_STD
@@ -141,6 +152,7 @@
# define KWSYS_IOS_USE_SSTREAM @KWSYS_NAMESPACE@_IOS_USE_SSTREAM
# define KWSYS_IOS_USE_STRSTREAM_H @KWSYS_NAMESPACE@_IOS_USE_STRSTREAM_H
# define KWSYS_IOS_USE_STRSTREA_H @KWSYS_NAMESPACE@_IOS_USE_STRSTREA_H
+# define KWSYS_IOS_HAVE_BINARY @KWSYS_NAMESPACE@_IOS_HAVE_BINARY
# define KWSYS_STAT_HAS_ST_MTIM @KWSYS_NAMESPACE@_STAT_HAS_ST_MTIM
# define KWSYS_CXX_HAS_CSTDDEF @KWSYS_NAMESPACE@_CXX_HAS_CSTDDEF
# define KWSYS_STL_STRING_HAVE_OSTREAM @KWSYS_NAMESPACE@_STL_STRING_HAVE_OSTREAM