summaryrefslogtreecommitdiffstats
path: root/src/util.h
Commit message (Collapse)AuthorAgeFilesLines
* Only store command hashes in the build log.Nico Weber2012-06-151-0/+1
| | | | | | | | | | | | | | .build_log load time 350ms -> 17ms, filesize 197MB -> 1.6MB on Mac. On Windows, it's 500ms -> 20ms. Makes the build log a lot less useful for scripts, but there could be a tool for use cases that need log information. A prototype of such a tool is in https://github.com/nico/ninja/commit/1b243d311 The hash function is 64bit murmurhash2. Assuming that that different commands get the same hash only by chance, it's is very unlikely for two different commands to hash to the same value with a 64bit hash.
* Add -l N option to limit the load average.Nicolas Despres2012-04-191-0/+4
| | | | | | | This is similar to GNU make -l/--load-average option. It limits the number of job started if the load average exceed the given value. It can be very useful when running ninja on a continuous integration server where we want to use parallelism as much as possible without overloading the server.
* only msvc needs these workaroundsPeter Kuemmel2012-01-221-1/+3
|
* windows: use _WIN32 define everywhereEvan Martin2012-01-221-1/+1
| | | | Rather than mixing use of WIN32 and _WIN32.
* Strip ansi escape sequences from subcommand output when not writing to a ↵Nico Weber2012-01-191-0/+3
| | | | smart terminal.
* Stop warning about chdir etc which are treated as errors on MSVC with theFrances Buontempo2012-01-161-0/+1
| | | | current settings
* split canonicalizeEvan Martin2012-01-091-0/+2
|
* allow spellcheck to be used with a vector of stringsEvan Martin2012-01-041-2/+6
|
* windows: make bootstrap.py/configure.py work with MSVCScott Graham2012-01-041-0/+2
|
* typedef long long for MSVCFrances Buontempo2012-01-031-0/+4
|
* factor out windows perror equivalentEvan Martin2011-12-201-0/+3
|
* Remove warning triggered by -Wextra on MinGW.Nicolas Despres2011-11-191-0/+2
|
* Add spelling suggestions for four cases:Nico Weber2011-11-161-0/+4
| | | | | | | | | | | 1. For targets, when invoking ninja to build a target. 2. For targets, when doing a "query" command. 3. For command names. 4. For the subcommands of the "targets" command. Also change CmdTargets() to call LookupNode() instead of GetNode() -- since the result was checked for NULL, that's probably what was intended here originally.
* move SetCloseOnExec to utilEvan Martin2011-10-311-0/+3
|
* make CanonicalizePath report an error on empty pathEvan Martin2011-10-061-1/+1
| | | | Fixes part of issue 121, but the fix exposed a further issue.
* semantic change: allow reaching into parent directories in pathsEvan Martin2011-08-241-1/+1
| | | | | | | | | | | This allows generating build files in a subdirectory of your source tree. - Change CanonicalizePath to accept this. - CanonicalizePath no longer has an error condition, so change it to a void function. I profiled the result against Chrome and it might be ~100ms slower, but that might just be Chrome's size working against me. In any case I think there are lower-hanging performance fruit elsewhere.
* remove +x bit from sourceEvan Martin2011-06-031-0/+0
|
* Tests now build on a native Windows build (tested with VS2010)Philip Craig2011-05-281-0/+4
| | | | | All tests except SubProcess pass on a native Windows build Tests continue not to build on a platform=mingw build
* move GetTimeMillis to utilEvan Martin2011-05-241-0/+7
|
* move ReadFile into utilEvan Martin2011-05-241-0/+4
|
* Add a Warning() report function.Nicolas Despres2011-05-021-0/+3
| | | | Also fix sites where Error() was misused.
* windows: abstract around mkdir vs _mkdirEvan Martin2011-05-021-0/+4
|
* add doxygen-compatibile comments to most classesEvan Martin2011-04-291-3/+3
|
* optimize CanonicalizePathEvan Martin2011-04-231-1/+2
| | | | | | | | | 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.
* Merge branch 'master' of github.com:martine/ninjaEvan Martin2011-04-151-0/+3
|\ | | | | | | | | | | Conflicts: src/util.cc src/util.h
| * Add missing CPP guards.Nicolas Despres2011-03-221-0/+5
| |
| * Prefix error messages with program name.Nicolas Despres2011-03-211-0/+3
| | | | | | | | | | | | 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.
* | Remove the declaration of DumpBacktrace.Thiago Farina2011-04-151-5/+0
| | | | | | | | This function was removed on 01880fb3a2a13f9071e9729c3a13752846828ed2.
* | Move CanonicalizePath into util.h so it can be shared by the other modules.Thiago Farina2011-04-151-0/+11
|/ | | | | | Also add util_test.cc and move the CanonicalizePathTest into there. Signed-off-by: Thiago Farina <tfarina@chromium.org>
* add copyrightsEvan Martin2011-02-061-1/+13
|
* move src into subdirEvan Martin2010-12-051-0/+9