├── .github └── workflows │ ├── ci.yml │ └── fmt.yml ├── .gitignore ├── .vscode ├── launch.json └── settings.json ├── Cargo.lock ├── Cargo.toml ├── LICENSE ├── README.md ├── benches ├── .gitignore ├── canon.rs └── parse.rs ├── doc ├── build1.png ├── build2.png ├── build3.png ├── build4.png ├── build5.png ├── comparison.md ├── design_notes.md └── development.md ├── dprint.json ├── git-pre-commit ├── src ├── canon.rs ├── db.rs ├── densemap.rs ├── depfile.rs ├── eval.rs ├── graph.rs ├── hash.rs ├── intern.rs ├── lib.rs ├── load.rs ├── main.rs ├── parse.rs ├── process.rs ├── process_posix.rs ├── process_win.rs ├── progress.rs ├── progress_dumb.rs ├── progress_fancy.rs ├── run.rs ├── scanner.rs ├── signal.rs ├── smallmap.rs ├── task.rs ├── terminal.rs ├── trace.rs └── work.rs └── tests ├── e2e ├── basic.rs ├── bindings.rs ├── directories.rs ├── discovered.rs ├── missing.rs ├── mod.rs ├── regen.rs └── validations.rs ├── e2e_test.rs ├── manual ├── .gitignore ├── clang-cl │ ├── .gitignore │ ├── README.md │ ├── build.ninja │ ├── test.c │ └── test.h ├── fdtest │ ├── build.ninja │ └── fdtest.py └── prints │ ├── README.md │ ├── build-win.ninja │ ├── build.ninja │ ├── prints.bat │ └── prints.sh └── snapshot └── README.md /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.github/workflows/fmt.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/.github/workflows/fmt.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /target 2 | /scratch 3 | -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/.vscode/launch.json -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/Cargo.lock -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/Cargo.toml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/README.md -------------------------------------------------------------------------------- /benches/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/benches/.gitignore -------------------------------------------------------------------------------- /benches/canon.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/benches/canon.rs -------------------------------------------------------------------------------- /benches/parse.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/benches/parse.rs -------------------------------------------------------------------------------- /doc/build1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/doc/build1.png -------------------------------------------------------------------------------- /doc/build2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/doc/build2.png -------------------------------------------------------------------------------- /doc/build3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/doc/build3.png -------------------------------------------------------------------------------- /doc/build4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/doc/build4.png -------------------------------------------------------------------------------- /doc/build5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/doc/build5.png -------------------------------------------------------------------------------- /doc/comparison.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/doc/comparison.md -------------------------------------------------------------------------------- /doc/design_notes.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/doc/design_notes.md -------------------------------------------------------------------------------- /doc/development.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/doc/development.md -------------------------------------------------------------------------------- /dprint.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/dprint.json -------------------------------------------------------------------------------- /git-pre-commit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/git-pre-commit -------------------------------------------------------------------------------- /src/canon.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/canon.rs -------------------------------------------------------------------------------- /src/db.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/db.rs -------------------------------------------------------------------------------- /src/densemap.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/densemap.rs -------------------------------------------------------------------------------- /src/depfile.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/depfile.rs -------------------------------------------------------------------------------- /src/eval.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/eval.rs -------------------------------------------------------------------------------- /src/graph.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/graph.rs -------------------------------------------------------------------------------- /src/hash.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/hash.rs -------------------------------------------------------------------------------- /src/intern.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/intern.rs -------------------------------------------------------------------------------- /src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/lib.rs -------------------------------------------------------------------------------- /src/load.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/load.rs -------------------------------------------------------------------------------- /src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/main.rs -------------------------------------------------------------------------------- /src/parse.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/parse.rs -------------------------------------------------------------------------------- /src/process.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/process.rs -------------------------------------------------------------------------------- /src/process_posix.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/process_posix.rs -------------------------------------------------------------------------------- /src/process_win.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/process_win.rs -------------------------------------------------------------------------------- /src/progress.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/progress.rs -------------------------------------------------------------------------------- /src/progress_dumb.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/progress_dumb.rs -------------------------------------------------------------------------------- /src/progress_fancy.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/progress_fancy.rs -------------------------------------------------------------------------------- /src/run.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/run.rs -------------------------------------------------------------------------------- /src/scanner.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/scanner.rs -------------------------------------------------------------------------------- /src/signal.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/signal.rs -------------------------------------------------------------------------------- /src/smallmap.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/smallmap.rs -------------------------------------------------------------------------------- /src/task.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/task.rs -------------------------------------------------------------------------------- /src/terminal.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/terminal.rs -------------------------------------------------------------------------------- /src/trace.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/trace.rs -------------------------------------------------------------------------------- /src/work.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/src/work.rs -------------------------------------------------------------------------------- /tests/e2e/basic.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/tests/e2e/basic.rs -------------------------------------------------------------------------------- /tests/e2e/bindings.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/tests/e2e/bindings.rs -------------------------------------------------------------------------------- /tests/e2e/directories.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/tests/e2e/directories.rs -------------------------------------------------------------------------------- /tests/e2e/discovered.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/tests/e2e/discovered.rs -------------------------------------------------------------------------------- /tests/e2e/missing.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/tests/e2e/missing.rs -------------------------------------------------------------------------------- /tests/e2e/mod.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/tests/e2e/mod.rs -------------------------------------------------------------------------------- /tests/e2e/regen.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/tests/e2e/regen.rs -------------------------------------------------------------------------------- /tests/e2e/validations.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/tests/e2e/validations.rs -------------------------------------------------------------------------------- /tests/e2e_test.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/tests/e2e_test.rs -------------------------------------------------------------------------------- /tests/manual/.gitignore: -------------------------------------------------------------------------------- 1 | .n2_db 2 | .ninja_log 3 | -------------------------------------------------------------------------------- /tests/manual/clang-cl/.gitignore: -------------------------------------------------------------------------------- 1 | test.exe 2 | -------------------------------------------------------------------------------- /tests/manual/clang-cl/README.md: -------------------------------------------------------------------------------- 1 | Invokes clang-cl to sanity check the /showIncludes handling. 2 | -------------------------------------------------------------------------------- /tests/manual/clang-cl/build.ninja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/tests/manual/clang-cl/build.ninja -------------------------------------------------------------------------------- /tests/manual/clang-cl/test.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/tests/manual/clang-cl/test.c -------------------------------------------------------------------------------- /tests/manual/clang-cl/test.h: -------------------------------------------------------------------------------- 1 | #define X 3 2 | -------------------------------------------------------------------------------- /tests/manual/fdtest/build.ninja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/tests/manual/fdtest/build.ninja -------------------------------------------------------------------------------- /tests/manual/fdtest/fdtest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/tests/manual/fdtest/fdtest.py -------------------------------------------------------------------------------- /tests/manual/prints/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/tests/manual/prints/README.md -------------------------------------------------------------------------------- /tests/manual/prints/build-win.ninja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/tests/manual/prints/build-win.ninja -------------------------------------------------------------------------------- /tests/manual/prints/build.ninja: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/tests/manual/prints/build.ninja -------------------------------------------------------------------------------- /tests/manual/prints/prints.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/tests/manual/prints/prints.bat -------------------------------------------------------------------------------- /tests/manual/prints/prints.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/tests/manual/prints/prints.sh -------------------------------------------------------------------------------- /tests/snapshot/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/evmar/n2/HEAD/tests/snapshot/README.md --------------------------------------------------------------------------------