file(CONFIGURE): Use text mode for default OUTPUT content

This affects only Windows where \n will be translated as \r\n

Fixes: #21769
This commit is contained in:
Cristian Adam
2021-02-02 15:18:48 +01:00
parent 8387aa20f2
commit 05f16ca7ee
2 changed files with 8 additions and 2 deletions
+3 -1
View File
@@ -3122,12 +3122,14 @@ bool HandleConfigureCommand(std::vector<std::string> const& args,
}
std::string newLineCharacters = "\n";
bool open_with_binary_flag = false;
if (newLineStyle.IsValid()) {
newLineCharacters = newLineStyle.GetCharacters();
open_with_binary_flag = true;
}
cmGeneratedFileStream fout;
fout.Open(outputFile, false, true);
fout.Open(outputFile, false, open_with_binary_flag);
if (!fout) {
cmSystemTools::Error("Could not open file for write in copy operation " +
outputFile);
@@ -22,4 +22,8 @@ test_eol(CRLF "c" "630d0a")
test_eol(UNIX "d" "640a")
test_eol(LF "e" "650a")
test_eol("" "a\nb" "610a62")
if (WIN32)
test_eol("" "a\nb" "610d0a62")
elseif(UNIX)
test_eol("" "a\nb" "610a62")
endif()