lol
1{ stdenv
2, fetchurl
3, blas
4, gfortran
5, liblapack
6, python }:
7
8stdenv.mkDerivation rec {
9 name = "petsc-${version}";
10 version = "3.8.3";
11
12 src = fetchurl {
13 url = "http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-${version}.tar.gz";
14 sha256 = "1b1yr93g6df8kx10ri2y26bp3l3w3jv10r80krnarbvyjgnw7y81";
15 };
16
17 nativeBuildInputs = [ blas gfortran.cc.lib liblapack python ];
18
19 preConfigure = ''
20 patchShebangs .
21 configureFlagsArray=(
22 $configureFlagsArray
23 "--CC=$CC"
24 "--with-cxx=0"
25 "--with-fc=0"
26 "--with-mpi=0"
27 "--with-blas-lib=[${blas}/lib/libblas.a,${gfortran.cc.lib}/lib/libgfortran.a]"
28 "--with-lapack-lib=[${liblapack}/lib/liblapack.a,${gfortran.cc.lib}/lib/libgfortran.a]"
29 )
30 '';
31
32 postInstall = ''
33 rm $out/bin/petscmpiexec
34 rm $out/bin/popup
35 rm $out/bin/uncrustify.cfg
36 rm -rf $out/bin/win32fe
37 '';
38
39 meta = {
40 description = "Library of linear algebra algorithms for solving partial differential equations";
41 homepage = https://www.mcs.anl.gov/petsc/index.html;
42 platforms = stdenv.lib.platforms.all;
43 license = stdenv.lib.licenses.bsd2;
44 };
45}