From 3426c88bff6988056163f147e06dcfac2556b588 Mon Sep 17 00:00:00 2001 From: Gleb Peregud Date: Sun, 4 Jun 2017 20:26:37 +0200 Subject: erlang: Generalize Erlang/OTP derivations. Switch official Erlang versions to use a common builder. --- pkgs/development/beam-modules/lib.nix | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 pkgs/development/beam-modules/lib.nix (limited to 'pkgs/development/beam-modules/lib.nix') diff --git a/pkgs/development/beam-modules/lib.nix b/pkgs/development/beam-modules/lib.nix new file mode 100644 index 00000000000..2d0eef09563 --- /dev/null +++ b/pkgs/development/beam-modules/lib.nix @@ -0,0 +1,21 @@ +{ pkgs }: + +rec { + + /* Uses generic-builder to evaluate provided drv containing OTP-version specific data. + + drv: package containing version-specific args; + builder: generic builder for all Erlang versions; + gargs: arguments passed to the generic-builder, used mostly to customize dependencies; + args: arguments merged into version-specific args, used mostly to enable/disable high-level OTP + features, like ODBC or WX support; + + Please note that "mkDerivation" defined here is the one called from R16.nix and similar files. + */ + callErlang = drv: gargs: args: pkgs.callPackage drv ( + let builder = pkgs.callPackage ../../development/interpreters/erlang/generic-builder.nix gargs; + in { + mkDerivation = a: builder (a // args); + }); + +} -- cgit 1.4.1