| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|\
| |
| | |
Fix build with uclibc
|
|/
|
|
|
|
|
|
| |
Resolves #985
This is based on musl implementation,
http://git.musl-libc.org/cgit/musl/commit/?id=20cbd607759038dca57f84ef7e7b5d44a3088574
(thanks to jbergstroem@ for reference)
|
|\
| |
| | |
replace copyright placeholder, fixes #1212
|
|/ |
|
|\
| |
| | |
windows: replace deprecated GetVersionEx with recommended replacement
|
|/
|
|
|
|
|
|
| |
The recommended replacement VerifyVersionInfo should work with the same
SDKs that GetVersionEx worked with (while the wrappers in
VersionHelpers.h require a recent SDK). This patch should not change
behavior, and it's not supposed to increase build requirements. If
this makes things harder to build, please let me know.
|
|\
| |
| | |
fix a clang-cl -Wformat warning
|
| | |
|
|\ \
| | |
| | | |
fix RELEASING wrt manual.asciidoc process
|
|/ / |
|
|\ \
| | |
| | | |
Improve error message when a depfile contains a bad path
|
| | |
| | |
| | |
| | |
| | | |
Debugging "ninja: error: empty path" is not fun, so make the error
message mention the depfile name.
|
|\ \ \
| | | |
| | | | |
Use POSIX_SPAWN_USEVFORK if available
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Existing comments were alluding to it's usage and it makes building
ninja itself go a litle bit faster (i.e. taking less wall clock time).
FWIW FreeBSD even uses vfork by default c.f.
https://www.freebsd.org/cgi/man.cgi?query=posix_spawn
|
|\ \ \ \
| | | | |
| | | | | |
Update RELEASING -- manual.asciidoc no longer has a version number
|
|/ / / / |
|
|\ \ \ \
| | | | |
| | | | | |
teach -t commands to optionally print only the final command
|
| | | | | |
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Only run SubprocessTest.SetWithLots on FreeBSD when ppoll() exists.
|
|/ / / / /
| | | | |
| | | | |
| | | | | |
Should fix #1189 after #1185.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Fix syntax error in misc/write_fake_manifests.py
|
| | |_|/ /
| |/| | |
| | | | |
| | | | | |
This is used by manifest_parser_perftest
|
|\ \ \ \ \
| |/ / / /
|/| | | | |
Tidy up rate snprintf'ing helper
|
|/ / / / |
|
|\ \ \ \
| | | | |
| | | | | |
enhance write_fake_manifest.py
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Add an option to write_fake_manifest.py to generate sources expected by the
manifest. Also slightly adapt command lines to the called commands. Together
these changes mean that generated manifest can actually be executed
successfully on Linux and OSX. Also add command line options to to change the
number of targets being generated and the seed for the random number generator.
Example usage:
# create build directory in fake/build, sources in fake/src
$ python misc/write_fake_manifest.py -s ../src fake/build
# execute build in fake/build
$ ninja -C fake/build
|
|\ \ \ \ \
| |_|_|/ /
|/| | | | |
FreeBSD supports ppoll(2)
|
| | | | | |
|
|/ / / / |
|
|\ \ \ \
| |/ / /
|/| | | |
Fix for not properly initialized elapsed time.
|
| | | | |
|
|/ / / |
|
|\ \ \
| | | |
| | | | |
Constify State::RootNodes().
|
|/ / / |
|
|\ \ \
| | | |
| | | | |
Escape ninja output inserted into HTML
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Ninja query or error output may contain characters that need to be
escaped when being inserted into HTML. Replace &, ", <, and > with
their & equivalent.
|
|\ \ \ \
| |/ / /
|/| | | |
Parser accepts no explicit outputs.
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
There is a class of commands that take an output directory where
they create their output files. Among them are cp(1), tar(1) to name a
few. These commands have one or more implicit outputs but no explicit
output.
With this patch, Ninja's parser accepts build edge with an
empty list of explicit outputs.
|
|\ \ \
| | | |
| | | | |
Make misc/measure.py compatible with python3
|
|/ / / |
|
|\ \ \
| | | |
| | | | |
Fix NINJA_STATUS %e and %r on dumb terminals
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
PR #999 made dumb terminals only output when edges finish. PrintStatus
is called after finished_edges_ is incremented, which means the
calculation for running edges will always return 1 less than the real
number of running processes. This happens on smart terminals too, but
ninja will immediately print the status for the next edge with
starting_edges_ incremented, so the incorrect value is never visible.
Pass a boolean specifying whether the status is being printed on an edge
finishing, and if so count the edge that just finished as being running.
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
PR #999 made dumb terminals only output when edges
finish. BuildStatus::overall_rate_ stopwatch is only initialized to the
current time when PrintStatus is called with finished_edges_ == 0, but
on a dumb terminal it will be called for the first time when
finished_edge_ = 1, which results in very long elapsed times:
NINJA_STATUS="[%r processes, %f/%t @ %o/s : %es ] "
[0 processes, 2/2 @ 0.0/s : 1461869902.367s ]
Reset the stopwatches in BuildEdgeFinished before finshed_edges_ is
incremented instead.
|
| | | |
|
|\ \ \
| | | |
| | | | |
Update %p to use finished edges after #1143.
|
|/ / / |
|
|\ \ \
| |/ /
|/| | |
Change default NINJA_STATUS to [%f/%t]
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
PR #999 changed the status line to be printed when edges finish on dumb
teerminals, but the default status message includes the number of
started edges, resulting in sequential status lines with identical
edge counts.
Change the default status to show the number of finished edges, which
will keep the count incrementing on every line. This will slightly
change the output on smart terminals. Previously a build that was just
starting would show a count equal to the number of concurrent jobs, and
a build waiting for the final jobs to finish would show a count equal to
the total number of edges. Now a starting build will show 0, and build
waiting for the final jobs will show a count less than the total number
of edges by the number of remaining jobs.
Fixes: #1142
|