[CMake] doing simple math in cmake or useless foreach( RANGE )
Mats Kindahl
mats at sun.com
Wed May 20 01:21:29 EDT 2009
Hendrik Sattler wrote:
> Hi,
>
> either I cannot find it or it's not there: doing simple mathematic things like
> substract 1 from a variable.
>
> If that's not present, I do not understand how
> LIST( LENGTH MYLIST COUNT )
> FOREACH ( index RANGE ${COUNT} )
> list ( GET MYLIST ${index} entry )
> ....
>
> will address non-present indexes in the list. I would the above statement
> cover the range from 0 to COUNT-1 but it also cover COUNT itself like said in
> the documentation. Does that actually make sense as the variable in the
> documentation is called "total" but the loop count is "total+1"?
>
> Currently I use a
> if ( LESS )
> work-around but that looks like a hack.
>
> Any ideas?
I used:
list(LENGTH MYLIST _len)
math(EXPR COUNT "${_len}-1")
foreach(index RANGE ${COUNT})
but I also think that foreach() should assign integers in the range
0..${COUNT}-1 instead of 0..${COUNT}.
Just my few cents,
Mats Kindahl
>
> HS
>
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.cmake.org/mailman/listinfo/cmake
--
Mats Kindahl
Senior Software Engineer
Database Technology Group
Sun Microsystems
More information about the CMake
mailing list