| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| | |
Port to AIX platform
|
| |
| |
| |
| | |
Taking care of printf format specifiers and large files using compiler macros in configure.py
|
| | |
|
| |
| |
| |
| |
| |
| | |
This reverts commit 52c1d0c8f8545231581c4d51cb0a85f50564c415.
Fixes #1418.
|
| |
| |
| |
| | |
First test checks for #1214.
|
| | |
|
| | |
|
| | |
|
|\ \
| | |
| | | |
Fix wrong description of script installation
|
| |/
| |
| | |
The described way of installation makes zsh fail with `_arguments:comparguments:325: can only be called from completion function`. Per [zsh documentation](https://github.com/zsh-users/zsh-completions/blob/master/zsh-completions-howto.org#telling-zsh-which-function-to-use-for-completing-a-command) the correct way is to use `$fpath`.
|
|\ \
| | |
| | | |
Flush stdout after printing "Cleaning..." message
|
| | | |
|
| | |
| | |
| | |
| | | |
This should clarify that the instructions are for Visual Studio.
It also opens the possibility for others to write similar sections for using gcc/clang in Windows.
|
|\ \ \
| | | |
| | | | |
Fix testcase failure in docker environment
|
| | |/
| |/|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
In our docker environment, the normal user does not have a name.
This results in the `whoami` command to fail which expects a name to print
Replace `whoami` with `id -u`, which print print the numeric id
I have no name!@7427761b8f4c:/tmp/d$ whoami
whoami: cannot find name for user ID 1000
I have no name!@7427761b8f4c:/tmp/d$ id
uid=1000 gid=0(root) groups=0(root)
Signed-off-by: Ritesh Raj Sarraf <ritesh.sarraf@collabora.com>
|
|\ \ \
| | | |
| | | | |
Fix compilation on FreeBSD 11.2 (use st_mtim.tv_nsec)
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
./src/disk_interface.cc: In member function 'virtual TimeStamp RealDiskInterface::Stat(const string&, std::__cxx11::string*) const':
./src/disk_interface.cc:216:51: error: 'struct stat' has no member named 'st_mtimensec'; did you mean 'st_mtim'?
return (int64_t)st.st_mtime * 1000000000LL + st.st_mtimensec;
^~~~~~~~~~~~
st_mtim
|
|\ \ \ \
| | | | |
| | | | | |
posix_spawn_* calls don't set errno, use the return value.
|
| | | | | |
|
|\ \ \ \ \
| |_|/ / /
|/| | | | |
Fix simple typo in HACKING.md
|
| | |/ /
| |/| | |
|
|\ \ \ \
| | | | |
| | | | | |
Silence GCC -Wimplicit-fallthrough warnings
|
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Borrow macro implementation from OpenSSL code.
Add the macro after each fallthrough switch case to indicate our
intention to the compiler. This silences GCC -Wimplicit-fallthrough
warnings, which is implied by GCC 7.x -Wextra.
|
|\ \ \ \
| |/ / /
|/| | | |
Misc typo fixes by https://github.com/codespell-project/codespell/
|
|/ / / |
|
|\ \ \
| | | |
| | | | |
Revert "Fix stat when subdirectory is a file"
|
|/ / /
| | |
| | |
| | |
| | | |
This reverts commit 6c864097ef11da366fb4070e6ab9f34d6a293766
and fixes the broken Appveyor builds on GitHub.
|
| | | |
|
|\ \ \
| | | |
| | | | |
Improve location of error messages around identifiers.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Lexer::ReadIdent() now sets last_token_ before returning, like
Lexer::ReadEvalString() does. So all "expected identifiers" and things
that call ReadIdent (pool parser, rule parser, let parser, code parsing
the rule name after a : in a build line) now point the "^ near here" at
what was there instead of the previous last_token
According to manifest_parser_perftest, this is perf-neutral.
|
|\ \ \ \
| | | | |
| | | | | |
Add appveyor.yml for build & test on windows
|
| |/ / / |
|
|\ \ \ \
| |/ / /
|/| | | |
Honor CXXFLAGS in configure.py
|
|/ / / |
|
|\ \ \
| | | |
| | | | |
update ninja.vim version after bff884d55
|
|/ / / |
|
|\ \ \
| | | |
| | | | |
make `-w dupbuild` default to `err`
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
You can still opt out of this by passing `-w dupbuild=warn`.
But if you're getting this diagnostic, your build files are incorrect
and you should ideally just fix them.
This is step 3 on https://github.com/ninja-build/ninja/issues/931
I sent an RfC to ninja-build a few months ago; nobody objected.
|
|\ \ \
| | | |
| | | | |
Fix building on Windows in UNICODE mode
|
| |/ / |
|
|\ \ \
| | | |
| | | | |
[compdb] Expand response files inline based on a switch.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
References to response files in a clang compile_commands.json file can
be tricky to deal with when tooling expects all the command flags to be
present in the 'command' field.
This change introduces a '-x' option to '-t compdb' that will expand
@rspfile style response file invocations inline.
E.g.
```sh
$ ninja -t compdb cc
[
{
"directory": "/src/foo",
"command": "cc -foo -bar @foo.obj.rsp",
"file": "foo.cc"
}
]
$ ninja -t compdb -x cc
[
{
"directory": "/src/foo",
"command": "cc -foo -bar foo.cc",
"file": "foo.cc"
}
]
```
|
|\ \ \ \
| | | | |
| | | | | |
Fix confusing smart console output from concurrent builds
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Developers tend to blame the last printed line when a build takes too
long. Unfortunately, when building concurrently, the last printed line
may have actually finished a long time ago. Under the current system,
ninja does not update the status line to reflect what jobs are still
running. This change makes ninja always print the oldest still running job
instead. In other words, the likely build bottlenecks.
Patch from David Zarzycki, originally uploaded at #1320.
|
|\ \ \ \
| | | | |
| | | | | |
Track in Plan whether wanted edges have been scheduled
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Refactor the `want_` map to track for wanted edges whether they have
been scheduled or not. This gives `ScheduleWork` a direct place to keep
this information, making the logic more robust and easier to follow. It
also future-proofs `ScheduleWork` to avoid repeat scheduling if it is
called after an edge has been removed from `ready_` by `FindWork`.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
make ninja build with -std=c++17
|
|/ / / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Ninja is supposed to be able to build as C++98 so it can run on old
systems, but it should also be possible to optionally build it with
newer dialects.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Flush changes into .ninja_log right away.
|