mirror of
https://github.com/reactos/CMake.git
synced 2025-02-01 01:22:58 +00:00
9db3116226
Ancient versions of CMake required else(), endif(), and similar block termination commands to have arguments matching the command starting the block. This is no longer the preferred style. Run the following shell code: for c in else endif endforeach endfunction endmacro endwhile; do echo 's/\b'"$c"'\(\s*\)(.\+)/'"$c"'\1()/' done >convert.sed && git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' '*CMakeLists.txt' | egrep -z -v '^(Utilities/cm|Source/kwsys/)' | egrep -z -v 'Tests/CMakeTests/While-Endwhile-' | xargs -0 sed -i -f convert.sed && rm convert.sed
54 lines
1.9 KiB
CMake
54 lines
1.9 KiB
CMake
set(NUMBERS "")
|
|
set(COUNT 0)
|
|
|
|
while(COUNT LESS 200)
|
|
set(NUMBERS "${NUMBERS} ${COUNT}")
|
|
set(COUNT "2${COUNT}")
|
|
|
|
set(NCOUNT 3)
|
|
while(NCOUNT LESS 31)
|
|
set(NUMBERS "${NUMBERS} ${NCOUNT}")
|
|
set(NCOUNT "${NCOUNT}0")
|
|
endwhile()
|
|
endwhile()
|
|
|
|
if(NOT NUMBERS STREQUAL " 0 3 30 20 3 30")
|
|
message(SEND_ERROR "while loop nesting error, result: '${NUMBERS}'")
|
|
endif()
|
|
|
|
set(Missing-Argument-RESULT 1)
|
|
set(Missing-Argument-STDERR ".*CMake Error at (@CMAKE_CURRENT_SOURCE_DIR@/)?While-Missing-Argument.cmake:1 \\(while\\):.*while called with incorrect number of arguments.*")
|
|
|
|
include("@CMAKE_CURRENT_SOURCE_DIR@/CheckCMakeTest.cmake")
|
|
check_cmake_test(While
|
|
Missing-Argument
|
|
)
|
|
|
|
set(Missing-Endwhile-RESULT 1)
|
|
set(Missing-Endwhile-STDERR ".*CMake Error in (@CMAKE_CURRENT_SOURCE_DIR@/)?While-Missing-Endwhile.cmake:.*A logical block opening on the line.*(@CMAKE_CURRENT_SOURCE_DIR@/)?While-Missing-Endwhile.cmake:1 \\(while\\).*is not closed\\..*")
|
|
|
|
check_cmake_test(While
|
|
Missing-Endwhile
|
|
)
|
|
|
|
set(Endwhile-Mismatch-RESULT 0)
|
|
set(Endwhile-Mismatch-STDERR ".*CMake Warning \\(dev\\) in (@CMAKE_CURRENT_SOURCE_DIR@/)?While-Endwhile-Mismatch.cmake:.*A logical block opening on the line.*(@CMAKE_CURRENT_SOURCE_DIR@/)?While-Endwhile-Mismatch.cmake:1 \\(while\\).*with mis-matching arguments\\..*")
|
|
|
|
check_cmake_test(While
|
|
Endwhile-Mismatch
|
|
)
|
|
|
|
set(Endwhile-Alone-RESULT 1)
|
|
set(Endwhile-Alone-STDERR ".*CMake Error at (@CMAKE_CURRENT_SOURCE_DIR@/)?While-Endwhile-Alone.cmake:1 \\(endwhile\\):.*An ENDWHILE command was found outside of a proper WHILE ENDWHILE.*structure\\.\n.*$")
|
|
|
|
check_cmake_test(While
|
|
Endwhile-Alone
|
|
)
|
|
|
|
set(Endwhile-Alone-Args-RESULT 1)
|
|
set(Endwhile-Alone-Args-STDERR ".*CMake Error at (@CMAKE_CURRENT_SOURCE_DIR@/)?While-Endwhile-Alone-Args.cmake:1 \\(endwhile\\):.*An ENDWHILE command was found outside of a proper WHILE ENDWHILE.*structure\\. Or its arguments did not.*$")
|
|
|
|
check_cmake_test(While
|
|
Endwhile-Alone-Args
|
|
)
|