mirror of
https://github.com/Kitware/CMake.git
synced 2026-02-22 15:10:20 -06:00
ENH: Add RANGE support to FOREACH
This commit is contained in:
@@ -73,3 +73,22 @@ FILE(GLOB src_files "${expr}")
|
||||
MESSAGE("Globbed files [${src_files}].")
|
||||
|
||||
ADD_EXECUTABLE(StringFileTest ${src_files})
|
||||
|
||||
# Test FOREACH range
|
||||
MESSAGE("Cheack if FOREACH with RANGE works")
|
||||
MACRO(TEST_RANGE ARGS CHECK)
|
||||
SET(r)
|
||||
FOREACH(a RANGE ${ARGS})
|
||||
SET(r ${r} ${a})
|
||||
ENDFOREACH(a)
|
||||
MESSAGE("FOREACH with RANGE ${ARGS} produces ${r}")
|
||||
IF("x${r}x" MATCHES "^x${CHECK}x$")
|
||||
ELSE("x${r}x" MATCHES "^x${CHECK}x$")
|
||||
MESSAGE(SEND_ERROR "The range resulted in: ${r} should be ${CHECK}")
|
||||
ENDIF("x${r}x" MATCHES "^x${CHECK}x$")
|
||||
ENDMACRO(TEST_RANGE)
|
||||
TEST_RANGE("5" "0;1;2;3;4;5")
|
||||
TEST_RANGE("3;5" "3;4;5")
|
||||
TEST_RANGE("5;3" "5;4;3")
|
||||
TEST_RANGE("3;10;2" "3;5;7;9")
|
||||
TEST_RANGE("10;0;-3" "10;7;4;1")
|
||||
|
||||
Reference in New Issue
Block a user