From 41c769ab5c19da92ecba35d9accc4bc123029e8d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?=
Plugins declared in DEP_PLUGINS
are loaded near the end of Erlang.mk.
+That’s why you have access to all previously initialized variables.
+However, if you want your plugin to add common dependencies to
+your applications, a regular is loaded too late in the process.
+You need to use "Early-stage plugins". They are declared using the
+DEP_EARLY_PLUGINS
variable instead. Plugins listed in this variable
+are loaded near the beginning of Erlang.mk Otherwise, they work exactly
+the same.
If you only give the name of a dependency, the default file loaded is +early-plugins.mk. You can specify a filename exactly like you would +have done it with regular plugins.
If the Erlang.mk plugin lives in the same directory or repository as your +application or library, then you can load it exactly like an external +plugin: the dependency name is simply the name of your application or +library.
For example, the following Makefile loads a plugin in the mk +subdirectory:
This also works with early-stage plugins:
Like external plugins, if you do not specify the path to the plugin, it +defaults to plugins.mk or early-plugins.mk, located at the root of +your application: