This change introduces a fixpoint, which allows to do deep override when
building packages defined in pkgs/development/beam-modules/default.hex.
This allows to provide beam.packages.erlang{,R16,R17,R18,R19} which
contains the same packages built with different Erlang/OTP versions.
Top-level attribute beamPackages points at beam.packages.erlangR18, the
same applies to other top-level Erlang packages.
TODO:
- beam.packages.erlang{R16,R17} is almost useless, since rebar/rebar3
does not build using these versions;
- all packages in beam.packages which use buildMix are actually built
with erlangR18;
- update documentation.
The postPatch attribute is already in the function argument but is
unused elsewhere in the code, so setting postPatch with buildRebar3 is
going to end up in a no-op.
This now allows to use postPatch within buildRebar3 by simply appending
to the existing postPatch hook that removes the rebar and rebar3
escripts.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
Cc: @ericbmerritt
This allows you to turn on debug infor for all the beam packages in the
system with a single change at the top level. This is required for
debugging and dialyzer work. It also allows you to switch it on on a
package by package basis.
This modifies the elixir derivation to allow 'debugInfo' to be set. This
will build the elixir library with debug information and allow dializer
to be used it derivative projects