diff options
Diffstat (limited to 'pkgs/development/idris-modules/build-idris-package.nix')
-rw-r--r-- | pkgs/development/idris-modules/build-idris-package.nix | 27 |
1 files changed, 23 insertions, 4 deletions
diff --git a/pkgs/development/idris-modules/build-idris-package.nix b/pkgs/development/idris-modules/build-idris-package.nix index 0048634f5b4..66eddd0e360 100644 --- a/pkgs/development/idris-modules/build-idris-package.nix +++ b/pkgs/development/idris-modules/build-idris-package.nix @@ -3,21 +3,40 @@ # args: Additional arguments to pass to mkDerivation. Generally should include at least # name and src. { stdenv, idris, gmp }: args: stdenv.mkDerivation ({ + preHook = '' + # Library import path + export IDRIS_LIBRARY_PATH=$PWD/idris-libs + mkdir -p $IDRIS_LIBRARY_PATH + + # Library install path + export IBCSUBDIR=$out/lib/${idris.name} + mkdir -p $IBCSUBDIR + + addIdrisLibs () { + if [ -d $1/lib/${idris.name} ]; then + ln -sv $1/lib/${idris.name}/* $IDRIS_LIBRARY_PATH + fi + } + + # All run-time deps + addEnvHooks 0 addIdrisLibs + ''; + buildPhase = '' - idris --build *.ipkg + ${idris}/bin/idris --build *.ipkg ''; doCheck = true; checkPhase = '' if grep -q test *.ipkg; then - idris --testpkg *.ipkg + ${idris}/bin/idris --testpkg *.ipkg fi ''; installPhase = '' - idris --install *.ipkg --ibcsubdir $IBCSUBDIR + ${idris}/bin/idris --install *.ipkg --ibcsubdir $IBCSUBDIR ''; - buildInputs = [ gmp idris ]; + buildInputs = [ gmp ]; } // args) |