summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* version 1.0.0v1.0.0Evan Martin2012-09-1349-583/+1829
|\
| * mark msvc-helper as experimentalEvan Martin2012-09-131-1/+1
| |
| * windows: merge msvc-helper into ninja.exe itselfEvan Martin2012-09-132-5/+22
| | | | | | | | | | | | Now "ninja -t msvc ..." passes the "..." to the msvc helper main. This drastically simplifies bootstrap and makes ninja a single binary again.
| * scoping workaround for gcc on WindowsEvan Martin2012-09-071-1/+1
| | | | | | | | From https://github.com/martine/ninja/issues/410.
| * include termios for solarisAlex Caudill2012-09-071-0/+4
| |
| * add GetProcessorCount() implementation for SolarisAlex Caudill2012-09-071-0/+9
| |
| * drop special case for msvc bucket countEvan Martin2012-09-071-6/+1
| | | | | | | | | | Calling bucket_count() works locally with MSVC. I wonder if some other change in the code fixed this.
| * Merge pull request #408 from nico/fixEvan Martin2012-09-061-0/+2
| |\ | | | | | | Make sure no stale test file exists before running build log tests.
| | * Make sure no stale test file exists before running build log tests.Nico Weber2012-09-011-0/+2
| | |
| * | allow tools to specify when they run (before/after build.ninja load)Evan Martin2012-09-061-34/+52
| | | | | | | | | | | | | | | This will be necessary to inline msvc-helper as well as so -t graph can get depfiles.
| * | factor out metrics dump from ninja mainEvan Martin2012-09-051-14/+18
| | |
| * | factor out build log load from mainEvan Martin2012-09-051-28/+37
| | |
| * | rearrange tool-picking logicEvan Martin2012-09-051-18/+37
| | | | | | | | | | | | Now "ninja -t list" works from any directory.
| * | reduce indentEvan Martin2012-09-041-39/+38
| | |
| * | move BuildConfig out of globalsEvan Martin2012-09-041-14/+15
| | |
| * | remove DiskInterface from globalsEvan Martin2012-09-041-5/+4
| | |
| * | remove unfortunate header dependencyEvan Martin2012-09-041-1/+0
| | | | | | | | | | | | This was temporarily added, and now it can be removed.
| * | clarify setterEvan Martin2012-09-042-5/+10
| | |
| * | move BuildLog to DependencyScanEvan Martin2012-09-049-22/+32
| | | | | | | | | | | | | | | | | | | | | The build log is needed in computing whether an edge is dirty, so I think it belongs here. (It's a bit weird that Builder needs to reach into it to record completed commands, maybe it will become cleaner with more thought.)
| * | pass Builder as arg to build-running functionsEvan Martin2012-09-041-15/+15
| | | | | | | | | | | | Reducing use of globals.
| * | remove config from BuildLog, rename membersEvan Martin2012-09-024-30/+24
| | |
| * | remove a redundant arg to RecomputeOutputDirtyEvan Martin2012-09-023-24/+19
| | |
| * | split out dirty recomputation logic from Edge classEvan Martin2012-09-026-88/+117
| |/ | | | | | | | | | | | | | | | | | | Rather than passing States and DiskInterfaces through all the calls, put the necessary ambient information in a new DependencyScan object and move the code accordingly. Note: I didn't move the source location of the functions to preserve history, though this does result in a sort of weird order for the functions in graph.cc.
| * safer build: consider target dirty if depfile is missingMaxim Kalaev2012-08-302-3/+34
| |
| * Remove unused macro NINJA_UNUSED_ARG.Nico Weber2012-08-281-2/+0
| |
| * drop DepfileParserTest.Tilde, as it's covered by .SpecialCharsEvan Martin2012-08-241-13/+0
| | | | | | | | | | The SpecialChars test covers a bunch of different special characters, including tilde.
| * update old test to cover newer rule attributesEvan Martin2012-08-241-1/+4
| |
| * add test that checks attributes on rulesEvan Martin2012-08-241-0/+11
| |
| * fix test broken in 697350dEvan Martin2012-08-171-2/+10
| | | | | | | | That's what I get for making last-second adjustments before checking in!
| * make it more explicit that a bad build log causes us to rebuildEvan Martin2012-08-173-4/+12
| | | | | | | | | | (Committing this on top of b56fe80 since they're related, but I may end up reverting both.)
| * Merge pull request #401 from syntheticpp/win-network-pathEvan Martin2012-08-172-0/+27
| |\ | | | | | | on windows a network path starts with two backslashes
| | * on windows a network path starts with two backslashesPeter Kuemmel2012-08-172-0/+27
| | |
| * | if a file is missing in the log, count it as dirtyScott Graham2012-08-152-6/+63
| | | | | | | | | | | | | | | | | | | | | This could cause overbuilding (if the log is missing an entry and the right file is already in place) but is otherwise necessary for correctness (if a file is already in place but we don't have a log entry for it).
| * | add a helper binary for wrapping cl.exeEvan Martin2012-08-151-0/+115
| | | | | | | | | | | | Modify bootstrap etc. to make use of this binary.
| * | pass env block to cl helperEvan Martin2012-08-153-1/+17
| | |
| * | Merge branch 'master' of github.com:martine/ninjaEvan Martin2012-08-139-9/+542
| |\ \
| | * | msvc helper: drop system includesEvan Martin2012-08-123-3/+30
| | | | | | | | | | | | | | | | | | | | Drop any #includes that look like they're referencing system headers. This reduces the dependency information considerably.
| | * | includes_normalize: also lowercase cross-drive includesEvan Martin2012-08-123-10/+9
| | | | | | | | | | | | | | | | It seems to me inconsistent to normalize one but not the other.
| | * | add functions for normalizing win32 include pathsScott Graham2012-08-123-0/+249
| | | | | | | | | | | | | | | | | | | | | | | | | | | | (Note from Evan: this is landing Scott's code more or less verbatim without a lot of analysis; it could maybe be simplified and reduced, but it's only intended to be used in the MSVC helper so it's fine to be experimental.)
| | * | msvc helper: attempt to filter out when it prints the input filenameEvan Martin2012-08-123-0/+47
| | | | | | | | | | | | | | | | This is a heuristic but it appears to work for the Chrome build.
| | * | add subprocess-spawning to msvc_helperEvan Martin2012-08-123-1/+116
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rather than using subprocess.h, reimplement the subprocess code. This allows: 1) using anonymous (instead of named) pipes 2) not using all the completion port craziness 3) printing the output as it happens 4) further variation, like adjusting the environment (in a forthcoming change) without affecting the main subprocess code
| | * | move Win32Fatal into utilEvan Martin2012-08-123-8/+7
| | | |
| | * | add a module for working with MSVC (cl.exe) behaviorEvan Martin2012-08-123-0/+96
| | | | | | | | | | | | | | | | This will be needed for performant builds on Windows.
| | * | doc that ReadFile reads in text mode on WindowsEvan Martin2012-08-121-1/+2
| | | |
| * | | rename -V to --version and clean up --help outputEvan Martin2012-08-131-9/+8
| |/ /
| * | windows: fix integer truncation issues for helper binariesEvan Martin2012-08-103-6/+11
| | | | | | | | | | | | | | | Disable the size_t truncation warning. (Note that this leaves on the other truncation-related warnings, like int->char.)
| * | windows: fix size_t<->int conversions in ninja.exeEvan Martin2012-08-1010-23/+23
| |/
| * fix windows buildEvan Martin2012-08-081-1/+1
| |
| * use DiskInterface to create the build directoryEvan Martin2012-08-077-34/+31
| | | | | | | | | | | | | | | | | | | | Fixes issue #392 (didn't handle creating nested build dirs right). Moves MakeDir out of util.h; all code should go through DiskInterface to simplify testing. Moves ownership of the DiskInterface into the client of the Builder, which also allows removing some code that reached inside the object as well as a minor leak.
| * Include unistd.h in files that use unlink() on OS X.Nico Weber2012-08-052-3/+5
| | | | | | | | | | | | | | | | `man unlink` says this is necessary, and according to a report by Claus Klein, omitting them breaks the build on OS X 10.5 with gcc 4.7 (see issue #396). (On Windows, ninja's util.h includes a define for unlink.)