n2 icon indicating copy to clipboard operation
n2 copied to clipboard

n2 ("into"), a ninja compatible build system

Results 32 n2 issues
Sort by recently updated
recently updated
newest added

Android doesn't have the filetime crate vendored into the tree, but as of rust 1.75, the standard library has the ability to change filetimes.

Thanks for the great project. I am using rustc 1.77.2, when I run `cargo test`, it warnning: ```txt warning: creating a mutable reference to mutable static is discouraged --> src/trace.rs:104:15...

Fixes #109 Fixes #108 This PR ports over most of the enhancements that are in Android's fork of ninja to n2. N2 goes from taking ~16 seconds to parse the...

We mark each `build` with its line number for use in error messages, but computing the line number requires keeping track of each newline we encounter. Some experiments: - if...

[Consolidating some comments from #107 and #108] Currently we read input files into a local buffer. I had thought this was better than mmap because: 1. we need a trailing...

Ninja has `-n` dry run mode. However it's not clear what we should do with respect to things like rsp files. @jamesr wrote: > The way that I've usually used...

enhancement

Android has ninja files that total ~3GB in size. Android's fork of ninja has a multithreaded parser that is able to parse the ninja files in just under a second,...

In Ninja, the below refers to the file `foo.3`. ``` build foo.$bar: baz ... bar = 3 ``` In n2 this doesn't. n2 aggressively expands variables while parsing, which is...

ninja incompatibility

Android's ninja fork added a feature somewhat recently where long-running actions (using information from a prior build) would be prioritized more highly than quicker actions. This got rid of some...

enhancement

In various places like #80 we relax the rules to accommodate some questionable Ninja behaviors. We currently key some of these off a "ninja compat" flag, but I wonder if...

enhancement