nixpkgs-suyu/pkgs/development/libraries/science/math/petsc/default.nix
Ryan Mulligan 85afb4e1e6 petsc: 3.8.3 -> 3.8.4
Semi-automatic update generated by https://github.com/ryantm/nix-update tools.

This update was made based on information from https://repology.org/metapackage/petsc/versions.

These checks were done:

- built on NixOS
- ran `/nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4/bin/saws/getSAWs.bash -h` got 0 exit code
- ran `/nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4/bin/saws/getSAWs.bash --help` got 0 exit code
- ran `/nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4/bin/saws/getSAWs.bash help` got 0 exit code
- ran `/nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4/bin/petscdiff -h` got 0 exit code
- ran `/nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4/bin/petscdiff --help` got 0 exit code
- ran `/nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4/bin/petscdiff -h` and found version 3.8.4
- ran `/nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4/bin/petscdiff --help` and found version 3.8.4
- ran `/nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4/bin/update.py -h` got 0 exit code
- ran `/nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4/bin/update.py --help` got 0 exit code
- ran `/nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4/bin/update.py help` got 0 exit code
- ran `/nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4/bin/update.py -V` and found version 3.8.4
- ran `/nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4/bin/update.py -v` and found version 3.8.4
- ran `/nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4/bin/update.py --version` and found version 3.8.4
- ran `/nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4/bin/update.py version` and found version 3.8.4
- ran `/nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4/bin/update.py -h` and found version 3.8.4
- ran `/nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4/bin/update.py --help` and found version 3.8.4
- ran `/nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4/bin/update.py help` and found version 3.8.4
- ran `/nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4/bin/sendToJenkins -h` got 0 exit code
- ran `/nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4/bin/sendToJenkins --help` got 0 exit code
- ran `/nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4/bin/petscnagupgrade.py -h` got 0 exit code
- ran `/nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4/bin/petscnagupgrade.py --help` got 0 exit code
- ran `/nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4/bin/petscnagupgrade.py help` got 0 exit code
- found 3.8.4 with grep in /nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4
- found 3.8.4 in filename of file in /nix/store/czmq31v2xa85ql17whbn05774cncbr4a-petsc-3.8.4
- directory tree listing: https://gist.github.com/da90b8c44c7ed274deb2e1a2c7de8dad
2018-03-28 00:48:35 -07:00

50 lines
1.3 KiB
Nix

{ stdenv
, fetchurl
, blas
, gfortran
, liblapack
, python }:
stdenv.mkDerivation rec {
name = "petsc-${version}";
version = "3.8.4";
src = fetchurl {
url = "http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-${version}.tar.gz";
sha256 = "1iy49gagxncx09d88kxnwkj876p35683mpfk33x37165si6xqy4z";
};
nativeBuildInputs = [ blas gfortran.cc.lib liblapack python ];
prePatch = stdenv.lib.optionalString stdenv.isDarwin ''
substituteInPlace config/install.py \
--replace /usr/bin/install_name_tool install_name_tool
'';
preConfigure = ''
patchShebangs .
configureFlagsArray=(
$configureFlagsArray
"--CC=$CC"
"--with-cxx=0"
"--with-fc=0"
"--with-mpi=0"
"--with-blas-lib=[${blas}/lib/libblas.a,${gfortran.cc.lib}/lib/libgfortran.a]"
"--with-lapack-lib=[${liblapack}/lib/liblapack.a,${gfortran.cc.lib}/lib/libgfortran.a]"
)
'';
postInstall = ''
rm $out/bin/petscmpiexec
rm $out/bin/popup
rm $out/bin/uncrustify.cfg
rm -rf $out/bin/win32fe
'';
meta = {
description = "Library of linear algebra algorithms for solving partial differential equations";
homepage = https://www.mcs.anl.gov/petsc/index.html;
platforms = stdenv.lib.platforms.all;
license = stdenv.lib.licenses.bsd2;
};
}