diff options
author | Loïc Hoguin <[email protected]> | 2018-12-03 19:22:12 +0100 |
---|---|---|
committer | Loïc Hoguin <[email protected]> | 2018-12-03 19:22:12 +0100 |
commit | 983f82bdfcb3e78f04468fcfd02d6a6ee5869b13 (patch) | |
tree | c2dc607d4fac2e5d0e42e57dd5b88837e82543ff /doc | |
parent | 225fb9046e8bf05c647cbcfdd2a074901700236a (diff) | |
download | erlang.mk-983f82bdfcb3e78f04468fcfd02d6a6ee5869b13.tar.gz erlang.mk-983f82bdfcb3e78f04468fcfd02d6a6ee5869b13.tar.bz2 erlang.mk-983f82bdfcb3e78f04468fcfd02d6a6ee5869b13.zip |
Don't rebuild dependencies by default
Unless it's a symbolic link, it's built directly, FULL=1 is set
or the file ebin/dep_built in the dependency is removed.
See the documentation changes for more details.
This provides immense build speed gains, for example on a
RabbitMQ project it went from 10s to 1s for the 2nd+ builds.
Diffstat (limited to 'doc')
-rw-r--r-- | doc/src/guide/deps.asciidoc | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/doc/src/guide/deps.asciidoc b/doc/src/guide/deps.asciidoc index 9e78826..9939e82 100644 --- a/doc/src/guide/deps.asciidoc +++ b/doc/src/guide/deps.asciidoc @@ -296,6 +296,24 @@ different version of D, it will always be A's version that wins, because we fetch all dependencies of A before fetching those from B or C. +Once a dependency is built, it will not be built again by +default. Typically dependencies do not need to be recompiled +and this speeds up building immensely. There are a few ways +to force recompiling a dependency however: + +* The dependency directory is a symbolic link; the dependency + will always be recompiled. + +* The dependency is built directly, for example with a command + like `make -C deps/cowlib`, or `make` in the dependency's + directory. + +* The variable `FULL` is set, for example `make FULL=1`. This + will force building of all dependencies. This can be added + to your Makefile before including 'erlang.mk'. + +* The file `ebin/dep_built` in the dependency is removed. + === Fetching and listing dependencies only You can fetch all dependencies recursively without building anything, |