mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-06 05:40:54 -06:00
cmGeneratedFileStream: Add optional encoding support
This allows to save file stream in different encoding than internal encoding.
This commit is contained in:
@@ -10,13 +10,21 @@
|
||||
#include <cm_zlib.h>
|
||||
#endif
|
||||
|
||||
cmGeneratedFileStream::cmGeneratedFileStream()
|
||||
cmGeneratedFileStream::cmGeneratedFileStream(Encoding encoding)
|
||||
: cmGeneratedFileStreamBase()
|
||||
, Stream()
|
||||
{
|
||||
#ifdef CMAKE_BUILD_WITH_CMAKE
|
||||
if (encoding != codecvt::None) {
|
||||
imbue(std::locale(getloc(), new codecvt(encoding)));
|
||||
}
|
||||
#else
|
||||
static_cast<void>(encoding);
|
||||
#endif
|
||||
}
|
||||
|
||||
cmGeneratedFileStream::cmGeneratedFileStream(const char* name, bool quiet)
|
||||
cmGeneratedFileStream::cmGeneratedFileStream(const char* name, bool quiet,
|
||||
Encoding encoding)
|
||||
: cmGeneratedFileStreamBase(name)
|
||||
, Stream(TempName.c_str())
|
||||
{
|
||||
@@ -26,6 +34,13 @@ cmGeneratedFileStream::cmGeneratedFileStream(const char* name, bool quiet)
|
||||
this->TempName.c_str());
|
||||
cmSystemTools::ReportLastSystemError("");
|
||||
}
|
||||
#ifdef CMAKE_BUILD_WITH_CMAKE
|
||||
if (encoding != codecvt::None) {
|
||||
imbue(std::locale(getloc(), new codecvt(encoding)));
|
||||
}
|
||||
#else
|
||||
static_cast<void>(encoding);
|
||||
#endif
|
||||
}
|
||||
|
||||
cmGeneratedFileStream::~cmGeneratedFileStream()
|
||||
|
||||
Reference in New Issue
Block a user