Nico Weber [Wed, 2 May 2012 01:26:51 +0000 (18:26 -0700)]
Fix layout width in ninja_syntax.py.
The last line would sometimes be needlessly longer than the layout
width. One example is line 67 in the build.ninja generated by
ninja's own configure.py: Before this patch, ninja_syntax would
create a 81 character line.
Evan Martin [Tue, 1 May 2012 05:35:58 +0000 (22:35 -0700)]
Merge pull request #288 from nico/buildfix
ninja_syntax.build() returns a list, not a single string.
Nico Weber [Tue, 1 May 2012 03:15:30 +0000 (20:15 -0700)]
ninja_syntax.build() returns a list, not a single string.
Fixes 'multiple rules' warnings on mac/linux.
Evan Martin [Mon, 30 Apr 2012 16:22:19 +0000 (09:22 -0700)]
Merge pull request #285 from nico/winninjatest
Make it possible to write `ninja ninja_test` on windows (as opposed to `ninja ninja_test.exe`). Also `ninja ninja`.
Evan Martin [Mon, 30 Apr 2012 16:21:32 +0000 (09:21 -0700)]
Merge pull request #287 from nico/gtestnortti
Fix ninja_test build with clang, build without rtti on windows.
Nico Weber [Mon, 30 Apr 2012 15:40:34 +0000 (08:40 -0700)]
Explicitly pass -DGTEST_HAS_RTTI to fix building ninja_test with clang.
Nico Weber [Mon, 30 Apr 2012 15:40:12 +0000 (08:40 -0700)]
Build without RTTI on windows (/GR-), saves 1kB and is consisten with linux/mac.
Nico Weber [Mon, 30 Apr 2012 15:11:21 +0000 (08:11 -0700)]
Provide 'ninja' as alias for 'ninja.exe' too. Tidy up.
Nico Weber [Mon, 30 Apr 2012 15:06:28 +0000 (08:06 -0700)]
Provide 'ninja_test' as alias for 'ninja_test.exe' on windows.
Evan Martin [Sat, 28 Apr 2012 17:56:38 +0000 (10:56 -0700)]
Merge pull request #274 from polrop/max_load_average
Max load average
Evan Martin [Sat, 28 Apr 2012 16:06:28 +0000 (09:06 -0700)]
emacs: hook up ninja-mode to extension
Evan Martin [Sat, 28 Apr 2012 05:59:39 +0000 (22:59 -0700)]
Merge pull request #282 from iwadon/fix-link-to-gplus
Fix a link to Google+
Hiroyuki Iwatsuki [Sat, 28 Apr 2012 01:57:06 +0000 (10:57 +0900)]
Fix a link to Google+.
Evan Martin [Fri, 27 Apr 2012 15:14:28 +0000 (08:14 -0700)]
rearrange the manual
My goals were:
- shorten the introductory text, hopefully quickly answering the "why?"
question first.
- put the information relevant to ninja users (e.g. people using CMake
who don't especially care about ninja) next, at the beginning.
- consolidate the "generating ninja files" text below.
Evan Martin [Fri, 27 Apr 2012 15:19:35 +0000 (08:19 -0700)]
manual: limit width to 45em
I had a local user stylesheet that was doing this for all sites
so I hadn't noticed how bad it was!
Evan Martin [Thu, 26 Apr 2012 15:02:15 +0000 (08:02 -0700)]
suggest ninja -h when someone runs 'ninja help'
Evan Martin [Thu, 26 Apr 2012 04:55:32 +0000 (21:55 -0700)]
doc encoding support
Evan Martin [Thu, 26 Apr 2012 04:52:07 +0000 (21:52 -0700)]
allow UTF-8 in rule descriptions
The lexer already mostly allowed this, except that chars >127 were
being interpreted as negative indexes into the lexer table.
Evan Martin [Thu, 26 Apr 2012 04:22:21 +0000 (21:22 -0700)]
Merge pull request #278 from tychoish/master
Minor Documentation Tweak
Evan Martin [Thu, 26 Apr 2012 03:30:35 +0000 (20:30 -0700)]
reduce custom ninja status patch in minor ways
Elsewhere in the code I avoid sstream and manual buffer management,
so switch this code to behave similarly. Sorry for being OCD.
Evan Martin [Thu, 26 Apr 2012 03:23:26 +0000 (20:23 -0700)]
Merge branch 'custom_ninja_status' of git://github.com/polrop/ninja
Evan Martin [Thu, 26 Apr 2012 03:21:26 +0000 (20:21 -0700)]
Merge pull request #272 from nico/statstweak
Switch the order of total and avg columns in -d stats output.
Evan Martin [Thu, 26 Apr 2012 03:18:42 +0000 (20:18 -0700)]
Merge pull request #269 from sgraham/explain
add support for -d explain to help debug why rules are running
Evan Martin [Thu, 26 Apr 2012 03:15:19 +0000 (20:15 -0700)]
Merge pull request #228 from pcc/lazily-create-commandrunner
Lazily create the CommandRunner in Builder::Build
Evan Martin [Thu, 26 Apr 2012 03:13:10 +0000 (20:13 -0700)]
Merge branch 'dont-clean-phony' of git://github.com/pcc/ninja
Conflicts:
src/clean.cc
Evan Martin [Thu, 26 Apr 2012 03:06:59 +0000 (20:06 -0700)]
Merge pull request #207 from iwadon/fix-configure.py-windows
Fix configure.py for unpacked gtest on Windows platform.
Nicolas Despres [Tue, 24 Apr 2012 09:09:28 +0000 (11:09 +0200)]
Refactor and test progress status formatting.
Nicolas Despres [Thu, 19 Apr 2012 12:26:33 +0000 (14:26 +0200)]
Introduce NINJA_STATUS env var for customization.
Some people may want to display different relevant information about
the progress of the build. Also it can be usefull to debug jobs
allocation.
Nicolas Despres [Thu, 19 Apr 2012 13:13:50 +0000 (15:13 +0200)]
Remove trailing white spaces.
tycho garen [Tue, 24 Apr 2012 02:26:35 +0000 (22:26 -0400)]
docs: clarifying that there can be only one command per rule
Nicolas Despres [Thu, 5 Apr 2012 13:44:36 +0000 (15:44 +0200)]
Add -l N option to limit the load average.
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.
Nicolas Despres [Thu, 19 Apr 2012 13:26:28 +0000 (15:26 +0200)]
Remove trailing white spaces.
Nico Weber [Tue, 17 Apr 2012 17:07:06 +0000 (10:07 -0700)]
Switch the order of total and avg columns in -d stats output.
Scott Graham [Fri, 13 Apr 2012 23:55:37 +0000 (16:55 -0700)]
add support for -d explain to help debug why rules are running
Evan Martin [Wed, 11 Apr 2012 00:07:42 +0000 (17:07 -0700)]
Merge pull request #252 from qhuo/remove-depfile-when-cleaning
Remove depfiles when running "ninja -t clean <target>" or "ninja -t clean -r <rule>"
Evan Martin [Tue, 10 Apr 2012 23:25:02 +0000 (16:25 -0700)]
Merge pull request #265 from mathstuf/dev/verbose-bootstrap
Allow the bootstrap to be verbose
Evan Martin [Tue, 10 Apr 2012 23:23:45 +0000 (16:23 -0700)]
Merge pull request #253 from qhuo/include-io.h
Fix windows build (add #include <io.h>)
Evan Martin [Thu, 5 Apr 2012 00:26:50 +0000 (17:26 -0700)]
Make |log_| variable private to BuildLog.
This fix the TODO in build_log.h file.
Signed-off-by: Thiago Farina <tfarina@chromium.org>
Evan Martin [Thu, 5 Apr 2012 00:23:07 +0000 (17:23 -0700)]
Merge pull request #263 from mathstuf/dev/gcc-470-build-fixes
Include unistd.h where needed
Evan Martin [Thu, 5 Apr 2012 00:21:08 +0000 (17:21 -0700)]
Merge pull request #260 from sgraham/rspfile_syntax
add rspfile and rspfile_content to ninja_syntax
Evan Martin [Thu, 5 Apr 2012 00:14:30 +0000 (17:14 -0700)]
Merge pull request #259 from usovalx/distcc_depfile_fix
Explicitly specify target name for gcc depfiles
Evan Martin [Thu, 5 Apr 2012 00:13:33 +0000 (17:13 -0700)]
Merge pull request #256 from iwadon/fix-sign-compare
fix warning: "comparison between signed and unsigned integer expressions"
Evan Martin [Thu, 5 Apr 2012 00:13:19 +0000 (17:13 -0700)]
Merge pull request #257 from PetrWolf/
53598255
Add NOMINMAX macro to fix a compilation error on Win32
Ben Boeckel [Fri, 30 Mar 2012 23:28:37 +0000 (19:28 -0400)]
Allow the bootstrap to be verbose
Ben Boeckel [Wed, 28 Mar 2012 23:18:09 +0000 (19:18 -0400)]
Include unistd.h where needed
Scott Graham [Tue, 27 Mar 2012 00:36:43 +0000 (17:36 -0700)]
add rspfile and rspfile_content to ninja_syntax
Oleksandr Usov [Fri, 23 Mar 2012 15:40:04 +0000 (15:40 +0000)]
Explicitly specify target name for gcc depfiles
Evan Martin [Sun, 18 Mar 2012 23:49:31 +0000 (16:49 -0700)]
Merge pull request #251 from polrop/depfile-parser-accept-tilde
Depfile parser accept tilde.
Hiroyuki Iwatsuki [Fri, 16 Mar 2012 13:41:39 +0000 (22:41 +0900)]
fix warning: "comparison between signed and unsigned integer expressions"
Petr Wolf [Fri, 16 Mar 2012 12:59:28 +0000 (13:59 +0100)]
Add NOMINMAX macro to fix a compilation error on Win32
Qingning Huo [Thu, 15 Mar 2012 21:48:29 +0000 (21:48 +0000)]
Fix windows build (add #include <io.h>)
Qingning Huo [Wed, 14 Mar 2012 21:11:31 +0000 (21:11 +0000)]
Remove depfiles when running when running "ninja -t clean <target>"
or "ninja -t clean -r <rule>"
Nicolas Despres [Wed, 14 Mar 2012 19:33:32 +0000 (20:33 +0100)]
Depfile parser accept tilde.
Evan Martin [Tue, 13 Mar 2012 23:37:53 +0000 (16:37 -0700)]
Merge pull request #250 from qhuo/SetCloseOnExec-for-Windows
Add a Windows version of SetCloseOnExec()
Evan Martin [Tue, 13 Mar 2012 23:31:39 +0000 (16:31 -0700)]
Merge pull request #249 from qhuo/StatBadPath-Win7
Fix StatBadPath for Windows 7
Qingning Huo [Tue, 13 Mar 2012 23:28:44 +0000 (23:28 +0000)]
Add a Windows version of SetCloseOnExec()
Qingning Huo [Tue, 13 Mar 2012 23:20:12 +0000 (23:20 +0000)]
Fix StatBadPath for Windows 7
The StatBadPath test expects both Windows and Linux to reject a
path name with 512 characters. However, it seems that such path
is actually acceptable to Windows 7. The change constructs a
different path name that is invalid on Windows.
Evan Martin [Tue, 13 Mar 2012 22:12:57 +0000 (15:12 -0700)]
Merge pull request #246 from HeisSpiter/master
Fix resources leaks
Pierre Schweitzer [Tue, 13 Mar 2012 10:25:42 +0000 (11:25 +0100)]
Fix resources leaks
Evan Martin [Tue, 13 Mar 2012 06:28:18 +0000 (23:28 -0700)]
Merge pull request #245 from usovalx/unify_depfile_targets
Issue #241 - handle depfiles generated by older versions of GCC
Oleksandr Usov [Mon, 12 Mar 2012 19:14:07 +0000 (19:14 +0000)]
Issue #241 - handle depfiles generated by older versions of GCC
Older versions of GCC would produce broken depfiles when -MT or -MQ is used
gcc43 -MT foo.o -MMD -MF foo.o.d -o foo.o -c foo.c
will result in the following depfile
foo.o foo.o: <dependencies>
Parse multiple outputs unifying duplicates and correctly report errors if
they are different.
Evan Martin [Thu, 8 Mar 2012 07:04:02 +0000 (23:04 -0800)]
Merge pull request #235 from fischman/ppoll
pselect->ppoll on linux to raise the process limit roof
Evan Martin [Thu, 8 Mar 2012 07:03:50 +0000 (23:03 -0800)]
Merge pull request #239 from pcc/enotdir
Treat paths of the form "existing-file/something" as non-existent
Peter Collingbourne [Mon, 5 Mar 2012 01:45:04 +0000 (01:45 +0000)]
Treat paths of the form "existing-file/something" as non-existent
Some people like to construct phony target names by appending a
"/something" suffix to an existing target "foo". But if "foo" is an
existing file, stat will report ENOTDIR for this path, causing ninja
to spew errors. Fix this by treating ENOTDIR in the same way as we
do ENOENT -- as a non-existent path.
Evan Martin [Tue, 6 Mar 2012 21:42:47 +0000 (13:42 -0800)]
drop rtti via -fno-rtti; we don't use it
Evan Martin [Tue, 6 Mar 2012 18:19:12 +0000 (10:19 -0800)]
make urtle fit on 24-line terminal
Evan Martin [Tue, 6 Mar 2012 18:15:19 +0000 (10:15 -0800)]
adjust rspfile docs to properly render
Evan Martin [Mon, 5 Mar 2012 16:03:11 +0000 (08:03 -0800)]
Merge pull request #238 from pcc/outputs-ready-no-inputs
Mark a phony target with no inputs as outputs-ready
Evan Martin [Mon, 5 Mar 2012 16:02:05 +0000 (08:02 -0800)]
Merge pull request #237 from pcc/ninja-clean-hint
Give a useful hint if the user runs "ninja clean" and there is no "clean...
Peter Collingbourne [Mon, 5 Mar 2012 01:35:44 +0000 (01:35 +0000)]
Mark a phony target with no inputs as outputs-ready
Even if such a target is dirty (i.e. the file does not exist), it
has nothing to do, which makes it safe to mark as outputs-ready.
Without this change, ninja will print no output when rebuilding the
target (or an order-only dependency thereof), instead of reporting
it has "no work to do".
Peter Collingbourne [Mon, 5 Mar 2012 01:22:21 +0000 (01:22 +0000)]
Give a useful hint if the user runs "ninja clean" and there is no "clean" target
Ami Fischman [Sun, 4 Mar 2012 03:58:09 +0000 (19:58 -0800)]
addressed pcc comments
Ami Fischman [Sun, 4 Mar 2012 01:42:39 +0000 (17:42 -0800)]
pselect->ppoll on linux to raise the process limit roof
Evan Martin [Fri, 2 Mar 2012 05:22:18 +0000 (21:22 -0800)]
Merge pull request #231 from pcc/exit-cleanup-modified
Be more selective about deleting output files when interrupted
Evan Martin [Thu, 1 Mar 2012 20:07:40 +0000 (12:07 -0800)]
add an "urtle" tool
Peter Collingbourne [Tue, 28 Feb 2012 02:14:03 +0000 (02:14 +0000)]
Be more selective about deleting output files when interrupted
Specifically, only delete if the file was modified or if the rule uses
a depfile.
Fixes issue #226.
Peter Collingbourne [Sun, 26 Feb 2012 22:32:48 +0000 (22:32 +0000)]
Don't delete phony targets when cleaning a specified target
Also, modify Cleaner::CleanAll to use Edge::is_phony.
Evan Martin [Tue, 28 Feb 2012 16:07:32 +0000 (08:07 -0800)]
Merge pull request #229 from sgraham/overprint
[win32] Overprint the previous line if we're attached to a console
Scott Graham [Mon, 27 Feb 2012 03:13:12 +0000 (19:13 -0800)]
[win32] Overprint the previous line if we're attached to a console
Peter Collingbourne [Mon, 27 Feb 2012 00:35:03 +0000 (00:35 +0000)]
Lazily create the CommandRunner in Builder::Build
This allows the user to interrupt the build (i.e. using Ctrl-C)
while the build plan is being computed.
Evan Martin [Thu, 23 Feb 2012 00:21:46 +0000 (16:21 -0800)]
fix some public/private errors in rspfile patch
Evan Martin [Thu, 23 Feb 2012 00:19:39 +0000 (16:19 -0800)]
Merge pull request #217 from PetrWolf/master
Response files
Evan Martin [Wed, 22 Feb 2012 23:52:45 +0000 (15:52 -0800)]
Merge pull request #218 from tfarina/fix-graph-todo
Fix the TODO in graph.h.
Evan Martin [Wed, 22 Feb 2012 20:59:14 +0000 (12:59 -0800)]
Merge pull request #223 from pcc/restat-clean-manifest
Do not reload the manifest if a restat cleans it while being rebuilt
Peter Collingbourne [Mon, 20 Feb 2012 21:20:45 +0000 (21:20 +0000)]
Do not reload the manifest if a restat cleans it while being rebuilt
Evan Martin [Mon, 20 Feb 2012 04:01:15 +0000 (20:01 -0800)]
Merge pull request #222 from polrop/test-bug-fix-
62e9139740
Add a test for empty path in CanonicalizePath().
Nicolas Despres [Sun, 5 Feb 2012 12:28:56 +0000 (13:28 +0100)]
Add a test for empty path in CanonicalizePath().
This test covers bug fix introduced by
62e9139740. However,
reverting this patch does not trigger a test failure. Maybe, I am
not testing on the right platform (Linux). Anyway, in all cases
I think this test deserves to be added.
Thiago Farina [Thu, 16 Feb 2012 11:06:14 +0000 (09:06 -0200)]
fix depfile_ access
Thiago Farina [Sun, 12 Feb 2012 18:25:38 +0000 (16:25 -0200)]
Fix the TODO in graph.h.
Signed-off-by: Thiago Farina <tfarina@chromium.org>
PetrWolf [Tue, 14 Feb 2012 17:33:04 +0000 (18:33 +0100)]
Merge branch 'master' of github.com:PetrWolf/ninja
PetrWolf [Tue, 14 Feb 2012 17:30:14 +0000 (18:30 +0100)]
Fix tabs, typos
Evan Martin [Tue, 14 Feb 2012 00:55:16 +0000 (16:55 -0800)]
Merge pull request #176 from pcc/exit-cleanup
Implement cleanup-on-interrupt
Evan Martin [Tue, 14 Feb 2012 00:18:46 +0000 (16:18 -0800)]
graphviz: don't draw edges multiple times
From a patch from Ian Godin <iangodin@gmail.com>.
Ian Godin [Sat, 11 Feb 2012 17:20:42 +0000 (09:20 -0800)]
Made graph horizontal (better for filenames)
Petr Wolf [Fri, 10 Feb 2012 09:31:25 +0000 (10:31 +0100)]
Add comments, remove unwanted whitespace change
unknown [Thu, 9 Feb 2012 21:23:35 +0000 (22:23 +0100)]
Response files
Clint Moore [Tue, 7 Feb 2012 10:00:20 +0000 (02:00 -0800)]
Fixes the build on OpenIndiana
Evan Martin [Sat, 4 Feb 2012 22:23:31 +0000 (14:23 -0800)]
Merge pull request #214 from qhuo/onpipeready-fix
Avoid using undefined value in Subprocess::OnPipeReady()
Evan Martin [Sat, 4 Feb 2012 22:21:15 +0000 (14:21 -0800)]
Merge pull request #213 from syntheticpp/evaluate-only-once
Evaluate command only once
Evan Martin [Sat, 4 Feb 2012 22:14:04 +0000 (14:14 -0800)]
don't crash when CanonicalizePath removes all path components
From a patch from Peter Kuemmel <syntheticpp@gmx.net>.