From 4b8e066fd25c1e5eb5abfb0b75146a739d60d01f Mon Sep 17 00:00:00 2001 From: Mathieu Boespflug Date: Sun, 25 Mar 2018 12:13:53 +0200 Subject: Add nix section to stack.yaml to provision system libraries. --- packages/sundials/nixpkgs.nix | 1 + packages/sundials/shell.nix | 20 ++++++++++++++++++++ packages/sundials/stack.yaml | 4 ++++ 3 files changed, 25 insertions(+) create mode 100644 packages/sundials/nixpkgs.nix create mode 100644 packages/sundials/shell.nix (limited to 'packages') diff --git a/packages/sundials/nixpkgs.nix b/packages/sundials/nixpkgs.nix new file mode 100644 index 0000000..b416238 --- /dev/null +++ b/packages/sundials/nixpkgs.nix @@ -0,0 +1 @@ +import (fetchTarball "https://github.com/nixos/nixpkgs/archive/54ade273e7a677ec35e501174d86d253d9d8dede.tar.gz") diff --git a/packages/sundials/shell.nix b/packages/sundials/shell.nix new file mode 100644 index 0000000..c034dde --- /dev/null +++ b/packages/sundials/shell.nix @@ -0,0 +1,20 @@ +{ghc}: + +with import {}; + +let + gfortranlibdir = "${gfortran7.cc.lib}"; + # XXX Workaround https://ghc.haskell.org/trac/ghc/ticket/11042. + libHack = if stdenv.isDarwin then { + DYLD_LIBRARY_PATH = [gfortranlibdir]; + } else { + LD_LIBRARY_PATH = [gfortranlibdir]; + }; +in +haskell.lib.buildStackProject ({ + name = "haskell-sundials"; + buildInputs = [blas liblapack sundials zlib]; + inherit ghc; + # XXX Workaround https://ghc.haskell.org/trac/ghc/ticket/11042. + extraArgs = ["--extra-lib-dirs=${gfortranlibdir}"]; +} // libHack) diff --git a/packages/sundials/stack.yaml b/packages/sundials/stack.yaml index 5529e0a..d87e6fd 100644 --- a/packages/sundials/stack.yaml +++ b/packages/sundials/stack.yaml @@ -6,3 +6,7 @@ packages: extra-deps: - diagrams-rasterific-1.4 - plots-0.1.0.2 + +nix: + path: [nixpkgs=./nixpkgs.nix] + shell-file: shell.nix -- cgit v1.2.3