[cmake-developers] Branches on next

Ben Boeckel ben.boeckel at kitware.com
Wed Feb 12 12:50:51 EST 2014


On Wed, Feb 12, 2014 at 11:46:39 -0500, Matthew Woehlke wrote:
> >That code isn't even on the radar for expensive code. It probably could
> >be replaced with smaller code other than lex/yacc, but it's not worth
> >the time if performance is the goal (removing lines, however…). Anything
> >other than comments and blank lines is always in the form:
> >
> >     <command> "(" <argstring> ")" <newline>
> >
> >which is pretty fast (the parser is also set up once per file; the EVIS
> >lex/yacc parser was set up and torn down for *each* expansion which is
> >generally per-line which contains any of "@$\\").
> 
> Related: does the first pass then completely ignore these characters
> (and also genex's AFAICT?) and only perform argument splitting based
> on whitespace and '"'?
> 
> I'm wondering, since I don't try to tokenize expansions anyway, if I
> can just get rid of that part of my parsing without harm...

Also bracket'd arguments (which, IIRC, have the highest priority).
Generator expressions are 100% ignored (other than not triggering errors
related to the '$' being used "improperly") until generate time.

--Ben



More information about the cmake-developers mailing list