mirror of
https://github.com/reactos/ninja.git
synced 2025-02-20 03:30:55 +00:00

Currently we handle Makefile rules of the form: out: in1 in2 in3 and the form: out: in1 \ in2 \ in3 Teach the depfile parser to handle the additional form: out: in1 out: in2 out: in3 This is also valid Makefile syntax and is the depfile format generated by the Intel Compiler for Windows. Note that the `gcc -MP` option adds empty phony rules to the generated Makefile fragment: out: in1 in2 in3 in1: in2: in3: Previously we tolerated these because they were treated as inputs, which was accidentally correct. Instead we must now tolerate these by ignoring targets for which no dependencies are specified.
Ninja is a small build system with a focus on speed. https://ninja-build.org/ See the manual -- https://ninja-build.org/manual.html or doc/manual.asciidoc included in the distribution -- for background and more details. Binaries for Linux, Mac, and Windows are available at https://github.com/ninja-build/ninja/releases Run './ninja -h' for Ninja help. To build your own binary, on many platforms it should be sufficient to just run `./configure.py --bootstrap`; for more details see HACKING.md. (Also read that before making changes to Ninja, as it has advice.) Installation is not necessary because the only required file is the resulting ninja binary. However, to enable features like Bash completion and Emacs and Vim editing modes, some files in misc/ must be copied to appropriate locations. If you're interested in making changes to Ninja, read HACKING.md first.
Description
Languages
C++
87.8%
Python
7.5%
C
2.5%
CMake
0.9%
Shell
0.6%
Other
0.7%