David Cole wrote:
> On Fri, Aug 10, 2012 at 10:57 AM, Brad King
> <[email protected]> wrote:
>>> Do you also have a script to clear the contents of endforeach(),
>>> endif(), endmacro(), endfunction()? Or do you not want to do that?
>>
>> That's a bit more risky because sometimes they span multiple lines.
>> I'd rather not tackle it now.
>>
I looked through the git grep output for the end commands and saw none in
the Modules dir which spanned multiple lines (there's a small handful in
Tests/BuildDepends/CMakeLists.txt, but that's it).
I then ran the following script to strip them:
git grep -l "endif([^\)]\+)" Modules | xargs sed -i 's|endif(.*|endif()|'
git grep -l "endforeach([^\)]\+)" Modules | xargs sed -i 's|endforeach(.*|
endforeach()|'
git grep -l "endfunction([^\)]\+)" Modules | xargs sed -i 's|endfunction(.*|
endfunction()|'
git grep -l "endmacro([^\)]\+)" Modules | xargs sed -i 's|endmacro(.*|
endmacro()|'
git grep -l "endwhile([^\)]\+)" Modules | xargs sed -i 's|endwhile(.*|
endwhile()|'
The script is a bit naive, but on manual review I saw no mistakes. This one
doesn't catch the cases which have whitespace between the 'endif' and the
'(', but I also ran the script catching those without finding a problem on
manual review. The question of whether that style should be normalized too,
ie should
if (Foo)
endif ()
be changed to
if(Foo)
endif()
now. (should be an easy script).
> But after the sweeping changes, I would certainly welcome clean up
> commits that clear the end*() arguments. "Clean up" topics are always
> welcome. We won't merge them in during the middle of "release
> candidates" -- but we'll do it immediately after a release for sure.
Sounds good, but such commits have to go in immediately when they are made
or they will go stale and have to be rebased/regenerated/re-reviewed. So
it's kind of hard to coordinate.
Thanks,
Steve.
--
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://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers