From 0d6f8ba5e48fa73be242d62df8d940fa2c61c06a Mon Sep 17 00:00:00 2001 From: garak Date: Sat, 11 Aug 2018 21:13:37 -0400 Subject: [PATCH] add INSTALL sections for faster builds and NODEP --- INSTALL.md | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/INSTALL.md b/INSTALL.md index 0fa9af8e78..3fe8195942 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -65,3 +65,31 @@ cd ../pokeemerald ``` And build the ROM with `make -j4`. + +# Faster builds + +After the first build, subsequent builds are faster. You can further speed up the build: + +## Parallel build + +This significantly speeds up the build on modern machines. + +By default `make` only runs a single thread. You can tell `make` to run on multiple threads with `make -j`. See the manfile for usage (`man make`). + +The optimal value for `-j` is the number of logical cores on your machine. You can run `nproc` to see the exact number. + + $ nproc + 8 + +If you have 8 cores, run: + + make -j8 + +`-j` on its own will spawn a new thread for each job. A clean build will have thousands of jobs, which will be slower than not using -j at all. + +## Disable the dependency scanning + +If you've only changed `.c` or `.s` files, you can turn off the dependency scanning temporarily. Changes to any other files will be ignored, and the build will either fail or not reflect those changes. + + make NODEP=1 +