Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | windows: use abstractions in ninja.cc | Evan Martin | 2011-05-02 | 1 | -6/+13 |
| | |||||
* | windows: getopt const clean hack | Evan Martin | 2011-05-02 | 1 | -3/+3 |
| | |||||
* | windows: use millis abstraction instead of non-portable gettimeofday | Evan Martin | 2011-05-02 | 1 | -14/+28 |
| | |||||
* | remove ROOT_HACK hack; it is unused | Evan Martin | 2011-05-02 | 1 | -9/+0 |
| | |||||
* | windows: abstract around mkdir vs _mkdir | Evan Martin | 2011-05-02 | 3 | -1/+19 |
| | |||||
* | windows: use portable replacement of setlinebuf() | Evan Martin | 2011-05-02 | 1 | -1/+1 |
| | |||||
* | use refactored function to support implicit "all" target | Evan Martin | 2011-05-01 | 3 | -16/+20 |
| | |||||
* | canonicalize paths in refactored function | Evan Martin | 2011-05-01 | 1 | -2/+5 |
| | |||||
* | refactor out adding "all" to graph tool | Evan Martin | 2011-05-01 | 1 | -21/+31 |
| | |||||
* | add test for RootNodes(); fix comment | Evan Martin | 2011-05-01 | 3 | -12/+28 |
| | |||||
* | drop reserved words 'build'/'rule'/'subninja'/etc. | Evan Martin | 2011-05-01 | 3 | -50/+52 |
| | | | | | | | 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'. | ||||
* | fix warnings on Mac 10.5 | Arnaud Gelas | 2011-04-30 | 3 | -0/+6 |
| | | | | structures had virtual functions but not virtual destructors | ||||
* | fix compilation error on Mac 10.5 | Arnaud Gelas | 2011-04-30 | 1 | -1/+1 |
| | | | | std::vector<>::data() does not exist | ||||
* | fix SEGV in graph_test | Hiroyuki Iwatsuki | 2011-04-29 | 1 | -5/+5 |
| | |||||
* | add doxygen-compatibile comments to most classes | Evan Martin | 2011-04-29 | 16 | -63/+116 |
| | |||||
* | fix a signedness warning | Evan Martin | 2011-04-29 | 1 | -1/+1 |
| | |||||
* | Merged pull request #31 from polrop/generate-whole-graph. | Evan Martin | 2011-04-29 | 1 | -6/+20 |
|\ | | | | | The 'graph' tool now generates a graph based on all root nodes when called without any target. The build.ninja file is also adjusted so that we get the whole graph generated (including the doxygen part). | ||||
| * | graph: Assume all root nodes if no target given. | Nicolas Despres | 2011-04-26 | 1 | -6/+20 |
| | | | | | | | | This way we can generate the complete graph. | ||||
* | | Merged pull request #30 from polrop/more-tools. | Evan Martin | 2011-04-29 | 5 | -2/+447 |
|\ \ | |/ | | | adds the -C option and the following tools: targets, rules and clean | ||||
| * | Add the 'clean' tool. | Nicolas Despres | 2011-04-26 | 3 | -1/+295 |
| | | | | | | | | It removes built files either by rule or target or everything. | ||||
| * | Add the 'rules' tool. | Nicolas Despres | 2011-04-26 | 1 | -1/+18 |
| | | | | | | | | | | It can be useful in conjunction with the 'targets' tool for writing shell completion scripts and when debugging. | ||||
| * | Add the 'targets' tool. | Nicolas Despres | 2011-04-26 | 3 | -1/+124 |
| | | | | | | | | | | | | | | | | | | | | | | This tool list targets by depth or by rule. It can be useful: - for shell completion script ; - to know what are the primary targets: ninja -t targets depth 1 ; - to know targets that are linked: ninja -t rule link ; - when debugging. It works by first listing the root nodes and then following the input nodes of their in edge. | ||||
| * | Add -C DIR option. | Nicolas Despres | 2011-04-26 | 1 | -1/+12 |
| | | | | | | | | | | | | Can be useful when calling ninja from a script or a code editor or in many other occasions. It costs nothing and does not bring more complexity, so I think we can afford it. | ||||
* | | Merged pull request #29 from polrop/minor-bug-fix. | Evan Martin | 2011-04-28 | 6 | -24/+34 |
|\ \ | |/ | | | Minor bug fix | ||||
| * | graph: Report errors if a target does not exist. | Nicolas Despres | 2011-04-26 | 1 | -3/+11 |
| | | |||||
| * | Do not always require a target when a tool is run. | Nicolas Despres | 2011-04-26 | 1 | -1/+9 |
| | | | | | | | | Adjust tools options parser and documentation. | ||||
| * | Remove no longer used current working directory. | Nicolas Despres | 2011-04-26 | 1 | -7/+0 |
| | | | | | | | | | | It has been introduced by 761a3c when ManifestParser::set_root() existed. It is no longer the case so we can save some time querying it now. | ||||
| * | Document. | Nicolas Despres | 2011-04-26 | 1 | -0/+2 |
| | | |||||
| * | Remove useless inclusion of stdio.h. | Nicolas Despres | 2011-04-26 | 1 | -2/+0 |
| | | |||||
| * | Use Error() to report error. | Nicolas Despres | 2011-04-26 | 1 | -4/+5 |
| | | | | | | | | | | This way we get the error message prefixed by the program name. It helps while debugging. | ||||
| * | Prefix perror(3) messages with program name. | Nicolas Despres | 2011-04-26 | 4 | -8/+8 |
| | | | | | | | | | | | | It make it easier while debugging to know who is reporting the error: Ninja itself or one of the command called by Ninja during the build process or one of the generator which called Ninja. | ||||
* | | include location of error in parse error messages in EvalEnv strings | Alexei Svitkine | 2011-04-26 | 6 | -8/+62 |
|/ | | | | | E.g. when parsing "foo = ${bar", point at the correct location of the missing curly brace. | ||||
* | don't close null log files | Evan Martin | 2011-04-25 | 1 | -1/+2 |
| | |||||
* | Close() and unlink() files in ways that make Windows happy | Philip Craig | 2011-04-23 | 1 | -0/+7 |
| | | | | | This will make the build log compaction work on Windows. It will also make the tests no longer leave a temp log file around. | ||||
* | [windows] disable smart terminal support | Sergey Nenakhov | 2011-04-23 | 1 | -2/+10 |
| | |||||
* | [windows] disable browse tool on Windows for now | Sergey Nenakhov | 2011-04-23 | 1 | -0/+4 |
| | |||||
* | [windows] use local getopt.h | Sergey Nenakhov | 2011-04-23 | 1 | -0/+4 |
| | |||||
* | [windows] get processor count using Windows API | Sergey Nenakhov | 2011-04-23 | 1 | -0/+4 |
| | |||||
* | [windows] extend hash_map.h for Windows hash_map | Sergey Nenakhov | 2011-04-23 | 1 | -0/+9 |
| | |||||
* | [windows] fix class/struct confusion | Sergey Nenakhov | 2011-04-23 | 1 | -1/+1 |
| | |||||
* | [win] check in public-domain getopt implementation | Evan Martin | 2011-04-23 | 2 | -0/+463 |
| | |||||
* | use kMaxPathComponents in proper place | Evan Martin | 2011-04-23 | 1 | -1/+1 |
| | |||||
* | optimize CanonicalizePath | Evan Martin | 2011-04-23 | 2 | -35/+71 |
| | | | | | | | | | Null build of Chrome: before I added extra calls to CanonicalizePath: 1.25s. with extra calls to CanonicalizePath: 1.35s. with new CanonicalizePath: 1.05s. And now CanonicalizePath isn't hot on profiles anymore. | ||||
* | canonicalize paths on the command-line as they're used | Evan Martin | 2011-04-22 | 1 | -1/+6 |
| | | | | | | | | | | | | | | I'm not entirely happy with my solution. I think Ninja should always use canonicalized paths internally, so we should canonicalize all paths as we receive them (from the command line and from build files). But there are other places where we pass paths around (like in all the tool commands) and I don't want to add manual calls to canonicalize in each. Perhaps the longer-term solution is to add some sort of GetNodeCanonicalize() to State and then make all of the functions that work with paths as strings (like Builder::AddTarget or RunBrowsePython) instead only accept a Node*. | ||||
* | use util's CanonicalizePath in parsers as well | Evan Martin | 2011-04-22 | 2 | -14/+17 |
| | |||||
* | handle foo//bar in CanonicalizePath | Evan Martin | 2011-04-22 | 2 | -2/+9 |
| | |||||
* | Merge branch 'term-fix' of https://github.com/SByer/ninja | Evan Martin | 2011-04-18 | 1 | -3/+5 |
|\ | |||||
| * | Fix an exception when terminal is narrow or set for unlimited width | Scott Byer | 2011-04-07 | 1 | -3/+5 |
| | | |||||
* | | Merge branch 'master' of github.com:martine/ninja | Evan Martin | 2011-04-15 | 8 | -11/+44 |
|\ \ | |/ | | | | | | | | | Conflicts: src/util.cc src/util.h | ||||
| * | Add missing CPP guards. | Nicolas Despres | 2011-03-22 | 5 | -0/+25 |
| | |