Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Rename parsers.* to manifest_parser.* | Thiago Farina | 2012-07-09 | 1 | -684/+0 |
| | | | | | | So it matches with the class name in there. Signed-off-by: Thiago Farina <tfarina@chromium.org> | ||||
* | improve test | Scott Graham | 2012-06-15 | 1 | -8/+7 |
| | |||||
* | add $in_newline | Scott Graham | 2012-06-15 | 1 | -0/+18 |
| | |||||
* | allow UTF-8 in rule descriptions | Evan Martin | 2012-04-26 | 1 | -0/+7 |
| | | | | | The lexer already mostly allowed this, except that chars >127 were being interpreted as negative indexes into the lexer table. | ||||
* | fix some public/private errors in rspfile patch | Evan Martin | 2012-02-23 | 1 | -2/+2 |
| | |||||
* | Response files | unknown | 2012-02-09 | 1 | -0/+18 |
| | |||||
* | parse $: | Peter Kuemmel | 2012-01-29 | 1 | -4/+33 |
| | | | | | '$:' is a valid string now, it expands to ':' update error messages and show a hint when something went wrong. | ||||
* | Lexer: include leading spaces in the newline token. | Evan Jones | 2012-01-05 | 1 | -0/+28 |
| | | | | This means that indented blank lines are skipped without causing errors. | ||||
* | test error message of ManifestParser::Load | Evan Martin | 2012-01-05 | 1 | -2/+9 |
| | | | | Fixes the other half of issue #187. | ||||
* | make Lexer::Error not emit trailing newline | Evan Martin | 2012-01-05 | 1 | -18/+18 |
| | | | | | Now it's consistent with other errors. Fixes part of issue #187. | ||||
* | Lexer: include leading whitespace in the comment token. | Evan Jones | 2012-01-05 | 1 | -7/+18 |
| | | | | Indented comments are ignored rather than causing errors. | ||||
* | Add a space to unexpected token errors. | Evan Jones | 2012-01-04 | 1 | -0/+7 |
| | |||||
* | switch the core ninja parser to use re2c for the lexer | Evan Martin | 2011-12-29 | 1 | -71/+130 |
| | | | | | | | | | - Delete the old "Tokenizer" code. - Write separate tests for the lexer distinct from the parser. - Switch the parser to use the new code. - New lexer error output has file:line numbers so e.g. Emacs can jump your editor to the syntax error. - The EvalEnv ($-interpolation) code is now part of the lexer as well. | ||||
* | Follow up fix to commit 32bf74f (Fix the TODO in Rule class.) | Thiago Farina | 2011-12-24 | 1 | -2/+2 |
| | | | | Signed-off-by: Thiago Farina <tfarina@chromium.org> | ||||
* | fix bad merge | Evan Martin | 2011-12-20 | 1 | -3/+3 |
| | |||||
* | Merge pull request #146 from nornagon/escape-spaces | Evan Martin | 2011-12-20 | 1 | -0/+13 |
|\ | | | | | Escape spaces | ||||
| * | Add tests for escaping spaces with '$ '. | Jeremy Apthorp | 2011-11-28 | 1 | -0/+13 |
| | | |||||
* | | split out depfile parser tests into new file | Evan Martin | 2011-12-19 | 1 | -34/+0 |
| | | |||||
* | | remove makefile parsing code, use depfile code instead | Evan Martin | 2011-12-07 | 1 | -6/+7 |
| | | |||||
* | | make Rule::name_ private | Evan Martin | 2011-12-07 | 1 | -2/+2 |
| | | |||||
* | | make Node::in_edge_ private | Evan Martin | 2011-12-07 | 1 | -2/+2 |
| | | |||||
* | | merge FileStat into Node | Evan Martin | 2011-12-07 | 1 | -3/+3 |
|/ | | | | | | The two were always one-to-one anyway. I started adding accessors to FileStat and then realized most users wanted them on Node and that forwarding them through was silly. | ||||
* | make CanonicalizePath report an error on empty path | Evan Martin | 2011-10-06 | 1 | -0/+20 |
| | | | | Fixes part of issue 121, but the fix exposed a further issue. | ||||
* | use StringPiece for makefile deps | Evan Martin | 2011-09-12 | 1 | -2/+2 |
| | | | | | | | | | | | | Because of this, MakefileParser now returns pointers into the source makefile string rather than allocating new strings. Despite needing to take the result and stuff it into a new string anyway to canonicalize it, this takes another 50ms or so off the null Chrome build, likely due to the vector used in MakefileParser changing to a type that doesn't use any allocations. (I also experimented with making the vector reserve an initial size but didn't see any performance impact.) | ||||
* | Move a passing test from Errors to MultipleOutputs | Qingning Huo | 2011-09-06 | 1 | -10/+11 |
| | |||||
* | Add depfile support to build command with multiple outputs (Fixes: #61) | Qingning Huo | 2011-09-06 | 1 | -3/+2 |
| | | | | | | | | | | | | | parsers.cpp: allow depfile used at build command with multiple outputs. graph.cpp: allow depfile used at build command with multiple outputs. parsers_test.cpp: make the test pass. As before, the depfile itself can only mention one target, which must be the first of a build command with multiple outpus. [There is really no need to mention all the output in the depfile, because all targets should depend on exactly the same files anyway, because these targets are built by a single build command.] | ||||
* | Factor out State struct from ninja_jumble.cc into its header/source files. | Thiago Farina | 2011-09-03 | 1 | -1/+1 |
| | | | | | | This was a TODO in src/ninja_jumble.cc. Now this task is completed. Signed-off-by: Thiago Farina <tfarina@chromium.org> | ||||
* | Implement default target statements | Peter Collingbourne | 2011-08-31 | 1 | -1/+64 |
| | | | | | | This introduces a new directive, the default target statement, which may be used to control the list of targets built by default (i.e. if no target is named on the command line). | ||||
* | expand $$ as $ | Evan Martin | 2011-05-27 | 1 | -0/+12 |
| | |||||
* | switch to $ as the line continuation char | Evan Martin | 2011-05-27 | 1 | -8/+8 |
| | | | | | This means that backslashes are passed through without interpretation, allowing us to support Windows paths without worrying about escaping. | ||||
* | add more test coverage for makefile parsing | Evan Martin | 2011-05-25 | 1 | -0/+13 |
| | |||||
* | refactor let parsing, passing another test | Evan Martin | 2011-05-24 | 1 | -2/+1 |
| | |||||
* | show correct location for unexpected var error | Evan Martin | 2011-05-23 | 1 | -2/+1 |
| | |||||
* | refactor parser, check in some failing tests | Evan Martin | 2011-05-23 | 1 | -0/+22 |
| | |||||
* | include filename in subninja load err message | Evan Martin | 2011-05-22 | 1 | -1/+9 |
| | |||||
* | windows: fix more signedness warnings | Evan Martin | 2011-05-08 | 1 | -7/+7 |
| | |||||
* | drop reserved words 'build'/'rule'/'subninja'/etc. | Evan Martin | 2011-05-01 | 1 | -0/+7 |
| | | | | | | | Instead, parse them as normal words, which makes them work as paths. We instead rely on the *position* (i.e., we start a statement with a keyword and not a path) to distinguish the keyword 'build' from the file 'build'. | ||||
* | include location of error in parse error messages in EvalEnv strings | Alexei Svitkine | 2011-04-26 | 1 | -0/+24 |
| | | | | | E.g. when parsing "foo = ${bar", point at the correct location of the missing curly brace. | ||||
* | use util's CanonicalizePath in parsers as well | Evan Martin | 2011-04-22 | 1 | -0/+12 |
| | |||||
* | add copyrights | Evan Martin | 2011-02-06 | 1 | -0/+14 |
| | |||||
* | ignore whitespace in makefiles | Evan Martin | 2011-02-04 | 1 | -0/+10 |
| | |||||
* | refactor parse error messages | Evan Martin | 2011-02-04 | 1 | -1/+1 |
| | |||||
* | allow implicit deps | Evan Martin | 2011-01-23 | 1 | -1/+13 |
| | |||||
* | add an include statement | Evan Martin | 2011-01-15 | 1 | -0/+11 |
| | |||||
* | split out graph into its own header | Evan Martin | 2011-01-08 | 1 | -0/+1 |
| | |||||
* | aggressively eval variables in build blocks | Evan Martin | 2010-12-21 | 1 | -2/+8 |
| | |||||
* | immediately evaluate variables in top-level bindings | Evan Martin | 2010-12-21 | 1 | -1/+4 |
| | |||||
* | allow one-letter variable names | Evan Martin | 2010-12-19 | 1 | -2/+4 |
| | |||||
* | remove special builddir | Evan Martin | 2010-12-19 | 1 | -31/+3 |
| | |||||
* | expand variables in build paths | Evan Martin | 2010-12-19 | 1 | -0/+21 |
| |