Age | Commit message (Collapse) | Author |
|
|
|
|
|
This commit also changes Triq repository in package index to point to
the leading fork. The original repository doesn’t work in Erlang 20.
|
|
|
|
|
|
The output of kerl will now be printed, and the way we do
the recursive invocation for building the Erlang/OTP version
we want should be more solid.
|
|
Also add a user friendly message to inform the user of what
we are doing.
|
|
By defining the ERLANG_OTP or ERLANG_HIPE variable, you
can let Erlang.mk manage which version of Erlang/OTP will
be used for your project. It will build it if necessary,
and will activate it automatically when make is invoked.
|
|
Should act the same way as the Triq plugin, making switching
mostly painless, excluding the differences between the two
libraries.
|
|
|
|
basho/lager is unmaintained. A while ago, erlang-lager/lager project was started
to continue progress on lager, including support for recent OTP versions and rebar3.
|
|
Thanks to Eric Pailleau for reporting it!
|
|
|
|
|
|
Avoid duplicating everything between Windows and other platforms.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This allows to ignore lines from the default build.config if needed.
For example to not include packages run make WITHOUT=index
|
|
If the application's Makefile specify either:
DEP_PLUGINS = $(PROJECT)
or e.g.:
DEP_PLUGINS = $(PROJECT)/mk/dist.mk
then load the plugin from the application instead of a dependency.
This helps when you have an application with common Erlang modules and
Erlang.mk plugins: your common application can load Erlang.mk plugins
exactly like other applications depending on the common application.
|
|
|
|
We do not touch the erlang.mk file anymore. We only patch the
Makefile to include the top-level Erlang.mk by changing the
'include erlang.mk' line to look for ERLANG_MK_FILENAME if it
is defined. The modified Makefile can be committed safely.
|
|
|
|
'source_path' property of edoc default to the list of explicit deps and apps
Can be overriden with EDOC_SRC_DIRS
In general, edoc options can be overriden with EDOC_OPTS, à la proplists
'source_path' edoc property is not recursive: look for source code in 'src' and 'c_src'
|
|
There are no more legacy tests. Enjoy!
|
|
|
|
|
|
|
|
In particular, xrefr 1.1.0 now exits with a non-zero exit status if
there are any warnings reported. This makes `make xref` fail
appropriately.
|
|
Regular plugins (`$(DEP_PLUGINS)`) are loaded near the end of Erlang.mk.
This is fine when you want to modify variables initialized earlier in
Erlang.mk or add new targets and variables.
However, it doesn't allow you to declare more dependencies because they
are loaded too late for that.
This commit introduces a new variable, `$(DEP_EARLY_PLUGINS)`, which can
be used to list plugins meant to be loaded near the beginning of
Erlang.mk. Those allow to append to the list of dependencies.
They work exactly like regular plugins otherwise. The default filename
loaded is `early-plugins.mk`.
|
|
Before this change, the build would continue, even if a dependency
failed to build. This could lead to obscure errors in the middle of a
testsuite for instance.
With this change, the build fails immediately, exactly like when a
regular dependency fails to build.
While here, replace most uses of `|| exit $$?` with `set -e`. This
simplifies error handling if we need to add more commands to each
blocks.
Also, echo error messages to stderr.
|
|
This silences warnings such as:
mv: rename file.app to file.app.src: No such file or directory
They are harmless really, but still annoying.
|
|
When the test check the running applications in the started release, the
node may not be up yet. So loop until the command returns a list of
applications (instead of "Node is not running!").
This fixes some transient failures.
|
|
Before this change, the help message for this plugin was:
Xref targets:
xref Run Xrefr using REF_CONFIG as config file if defined
Note the missing `$X` before `REF_CONFIG`.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
we also use LOCAL_DEPS at the top-level, if it exists, to determine
which local apps to compile, in the interest of saving compile time
for projects that have many apps and multiple release configurations
|