mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-02 20:00:38 -06:00
Extend the `file()` command with a new `CONFIGURE` subcommand that behaves the same as `string(CONFIGURE)` except that it writes the resulting output immediately to a file. Fixes: #20388
21 lines
501 B
CMake
21 lines
501 B
CMake
set(file_name ${CMAKE_CURRENT_BINARY_DIR}/NewLineStyle.txt)
|
|
|
|
function(test_eol style in out)
|
|
file(CONFIGURE
|
|
OUTPUT ${file_name}
|
|
CONTENT "@in@"
|
|
NEWLINE_STYLE ${style}
|
|
)
|
|
file(READ ${file_name} new HEX)
|
|
if(NOT "${new}" STREQUAL "${out}")
|
|
message(FATAL_ERROR "No ${style} line endings")
|
|
endif()
|
|
endfunction()
|
|
|
|
test_eol(DOS "a" "610d0a")
|
|
test_eol(WIN32 "b" "620d0a")
|
|
test_eol(CRLF "c" "630d0a")
|
|
|
|
test_eol(UNIX "d" "640a")
|
|
test_eol(LF "e" "650a")
|