Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | on by default | Nico Weber | 2014-06-15 | 2 | -5/+5 |
| | |||||
* | comment | Nico Weber | 2014-06-15 | 1 | -1/+7 |
| | |||||
* | make win-only | Nico Weber | 2014-06-15 | 2 | -0/+6 |
| | |||||
* | simplify more, move behind flag | Nico Weber | 2014-06-15 | 4 | -7/+18 |
| | |||||
* | more minor cleanups | Nico Weber | 2014-06-15 | 1 | -10/+6 |
| | |||||
* | more minor cleanups | Nico Weber | 2014-06-15 | 1 | -20/+7 |
| | |||||
* | minor cleanups | Nico Weber | 2014-06-15 | 1 | -56/+40 |
| | |||||
* | Turn on stat cache. Empty builds of chrome on my laptop 4s -> 1.3s (!) | Nico Weber | 2014-06-15 | 1 | -1/+1 |
| | |||||
* | Add a stat cache. Demo-quality, and disabled atm. | Nico Weber | 2014-06-15 | 3 | -20/+114 |
| | |||||
* | spellcheck "keeprsp" in -d options | Nico Weber | 2014-06-15 | 1 | -1/+1 |
| | |||||
* | Allow + in filenames without escaping | Nico Weber | 2014-05-30 | 2 | -2/+3 |
| | | | | | | Due to #690, file.c++ used to be escaped. + seems as safe as -, so allow it to not be escaped, to keep compile command lines with a fairly common extension slightly cleaner. | ||||
* | Make "depfile=$out.d" work if $out contains escaped characters, rspfile too. | Nico Weber | 2014-05-21 | 6 | -30/+94 |
| | | | | | | | | | | | | | | Fixes #730. This has always been broken, but due to #690 more paths are now escaped (e.g. paths containing + characters, like file.c++). Also see discussion in #689. The approach is to give EdgeEnv an enum deciding on whether or not to escape file names, and provide functions that evaluate depfile and rspfile with that set that to kNoEscape. (depfile=$out.d doesn't make sense on edges with multiple outputs.) This should be relatively safe, as $in and $out can't be used on edges, only on rules (#687). | ||||
* | CleanTest cleanups: | Nico Weber | 2014-05-21 | 1 | -6/+2 |
| | | | | | * $in only makes sense on rules, not edges (see issue #687) * Remove unneccesary clear() line at end of test | ||||
* | Merge pull request #764 from nico/winconsole | Nico Weber | 2014-05-18 | 5 | -22/+25 |
|\ | | | | | Implement pool=console support on Windows. | ||||
| * | win console wip: Fix comments based on review feedback. | Nico Weber | 2014-05-18 | 2 | -2/+2 |
| | | |||||
| * | win console wip: resolve FIXME | Nico Weber | 2014-05-14 | 2 | -1/+2 |
| | | |||||
| * | win console wip: ctrl-c should reach commands running in console pools | Nico Weber | 2014-05-13 | 1 | -1/+4 |
| | | |||||
| * | win console wip: enable test | Nico Weber | 2014-05-13 | 1 | -4/+2 |
| | | |||||
| * | wip for console pool on windows | Nico Weber | 2014-05-13 | 4 | -17/+18 |
| | | |||||
* | | Allow paths with '{' '}' in depfiles | Maxim Kalaev | 2014-05-07 | 3 | -6/+10 |
| | | |||||
* | | compdb: check that inputs is not empty | Ben Boeckel | 2014-05-05 | 1 | -0/+2 |
| | | |||||
* | | Accept \r\n line endings in depfiles. | Nico Weber | 2014-05-01 | 3 | -8/+21 |
|/ | | | | Fixes #752. | ||||
* | Make manifest_parser_perftest build on Windows. | Nico Weber | 2014-04-27 | 1 | -1/+3 |
| | |||||
* | Merge pull request #714 from pcc/console-pool | Nico Weber | 2014-04-17 | 13 | -43/+196 |
|\ | | | | | Introduce the "console" pool | ||||
| * | Introduce the "console" pool | Peter Collingbourne | 2014-02-03 | 13 | -43/+196 |
| | | | | | | | | | | | | | | This is a pre-defined pool with a depth of 1. It has the special property that any task in the pool has direct access to the console. This can be useful for interactive tasks or long-running tasks which produce status updates on the console (such as test suites). | ||||
* | | Merge pull request #715 from nico/lazyenv | Nico Weber | 2014-04-17 | 1 | -4/+5 |
|\ \ | | | | | | | Allocate per-edge BindingEnvs lazily. | ||||
| * | | Allocate per-edge BindingEnvs lazily. | Nico Weber | 2014-02-11 | 1 | -4/+5 |
| |/ | | | | | | | | | | | | | In chrome, only 2000 of 22000 build edges have bindings. A BindingEnv is 64 bytes, so allocating these only when needed saves a bit over 1 MB of memory. Since env chains are shorter for lookups, builds also become a tiny bit faster. | ||||
* | | Manifest perftest: Try to make it build on Linux. | Nico Weber | 2014-04-17 | 1 | -0/+1 |
| | | |||||
* | | Manifest perftest: Pull manifest parsing into own function. | Nico Weber | 2014-04-17 | 1 | -17/+20 |
| | | |||||
* | | Manifest perftest: Also measure command evaluation time. | Nico Weber | 2014-04-17 | 1 | -5/+31 |
| | | |||||
* | | Add a simple manifest parsing perftest. | Nico Weber | 2014-04-17 | 1 | -0/+82 |
| | | |||||
* | | Rename parser_perftest to depfile_parser_perftest. | Nico Weber | 2014-04-16 | 1 | -0/+0 |
| | | |||||
* | | CLParser shouldn't read stderr | Scott Graham | 2014-04-14 | 2 | -1/+8 |
| | | |||||
* | | Merge pull request #699 from mostynb/avoid_useless_mkdir_failure | Nico Weber | 2014-04-07 | 1 | -0/+3 |
|\ \ | | | | | | | don't Fail if trying to mkdir when the dir already exists | ||||
| * | | don't Fail if trying to mkdir when the dir already exists | Mostyn Bramley-Moore | 2014-01-07 | 1 | -0/+3 |
| | | | |||||
* | | | Support both slashes on Windows when making output dirs | Scott Graham | 2014-04-03 | 2 | -6/+20 |
| |/ |/| | |||||
* | | Don’t unnecessarily escape backslashes in Win32 paths | Nicholas Hutchinson | 2014-01-08 | 2 | -1/+8 |
|/ | | | | Under ::CommandLineToArgvW() rules, the backslash character only gets special treatment if it’s immediately followed by a double quote. So, when checking to see if a string needs Win32 escaping, it’s sufficient to check for the presence of a double quote character. This allows paths like "foo\bar" to be recognised as “sensible” paths, which don’t require the full escaping. | ||||
* | Merge pull request #697 from nico/gclogs | Nico Weber | 2014-01-07 | 11 | -24/+176 |
|\ | | | | | Remove old outputs from build log and deps log during recompaction. | ||||
| * | Make BuildLogUser reference constant. | Nico Weber | 2014-01-07 | 8 | -13/+14 |
| | | |||||
| * | Add a comment. | Nico Weber | 2014-01-04 | 1 | -0/+7 |
| | | |||||
| * | Rename "IsDead" to "BuildLogUser". | Nico Weber | 2014-01-04 | 6 | -21/+30 |
| | | |||||
| * | Move duplicated code into a helper function. | Nico Weber | 2014-01-04 | 3 | -14/+20 |
| | | |||||
| * | Add a test for collection of dead log entries. | Nico Weber | 2014-01-04 | 1 | -0/+40 |
| | | |||||
| * | Add a test for collection of dead deps entries. | Nico Weber | 2014-01-03 | 2 | -1/+52 |
| | | |||||
| * | Fix DepsLogTest.Recompact by making sure outputs aren't garbag-collected. | Nico Weber | 2014-01-02 | 1 | -0/+10 |
| | | |||||
| * | Make tests compile (one fails atm). | Nico Weber | 2014-01-02 | 2 | -8/+11 |
| | | |||||
| * | Remove dead entries in .ninja_log and .ninja_deps while recompacting. | Nico Weber | 2014-01-02 | 4 | -8/+33 |
| | | | | | | | | | | | | | | | | | | | | For .ninja_deps, remove objects that have no in-edges or whose in-edges do not have a "deps" attribute. (This matches the behaviour of `-t deps`). BuildLog doesn't know about state, so let its recompact method take delegate that decides is a path is life or not, and implement it in NinjaMain. | ||||
* | | Merge pull request #690 from nickhutchinson/feature/escape-paths-properly | Nico Weber | 2014-01-06 | 6 | -12/+152 |
|\ \ | |/ |/| | More robust escaping of $in, $out paths | ||||
| * | More robust escaping of $in, $out paths | Nicholas Hutchinson | 2014-01-06 | 6 | -12/+152 |
| | | | | | | | | | | | | In summary: don’t escape if the path doesn’t contain problematic characters, otherwise: - Shell: enclose string in single quotes, escape embedded single quotes with the magic quote-backslash-quote sequence - Win32: Escape double quotes by doubling the number of consecutive backslashes that precede them (if any) and adding one more. Finally, double the number of trailing backslashes, and enclose the whole thing in double quotes. | ||||
* | | Fix additional range in character class. | Nico Weber | 2013-12-13 | 2 | -30/+43 |
|/ | | | | | | | | The range was added in 7ab6dcbdb6447861eefafc47fc3e10f3273cede2, but that change only tried to add ! to the character class. Fix by moving '-' to the end of the class. Fixes #694. |