summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--INSTALL.md28
1 files changed, 28 insertions, 0 deletions
diff --git a/INSTALL.md b/INSTALL.md
index 0fa9af8e7..3fe819594 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
+