about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/science
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2022-03-15 10:36:38 +0000
committerAlyssa Ross <hi@alyssa.is>2022-03-16 11:37:19 +0000
commitd435710923ac6e6f9fc155534800745004f2ce93 (patch)
tree386f9401476f96bdc6ec25173a090198942b5d5b /nixpkgs/pkgs/development/libraries/science
parentc725f0011e91ae49d351b981690eb66b862b6104 (diff)
parent3239fd2b8f728106491154b44625662e10259af2 (diff)
downloadnixlib-d435710923ac6e6f9fc155534800745004f2ce93.tar
nixlib-d435710923ac6e6f9fc155534800745004f2ce93.tar.gz
nixlib-d435710923ac6e6f9fc155534800745004f2ce93.tar.bz2
nixlib-d435710923ac6e6f9fc155534800745004f2ce93.tar.lz
nixlib-d435710923ac6e6f9fc155534800745004f2ce93.tar.xz
nixlib-d435710923ac6e6f9fc155534800745004f2ce93.tar.zst
nixlib-d435710923ac6e6f9fc155534800745004f2ce93.zip
Merge commit '3239fd2b8f728106491154b44625662e10259af2'
Conflicts:
	nixpkgs/pkgs/applications/window-managers/sway/default.nix
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/science')
-rw-r--r--nixpkgs/pkgs/development/libraries/science/biology/htslib/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/bonmin/default.nix51
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/clmagma/default.nix10
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/ipopt/default.nix29
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/libamplsolver/default.nix37
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/or-tools/default.nix3
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/petsc/default.nix9
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/scalapack/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/scs/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/suitesparse-graphblas/default.nix4
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/suitesparse/4.4.nix10
-rw-r--r--nixpkgs/pkgs/development/libraries/science/math/trilinos/default.nix4
12 files changed, 136 insertions, 33 deletions
diff --git a/nixpkgs/pkgs/development/libraries/science/biology/htslib/default.nix b/nixpkgs/pkgs/development/libraries/science/biology/htslib/default.nix
index 8a9df7601d28..d93b4fb2a5a7 100644
--- a/nixpkgs/pkgs/development/libraries/science/biology/htslib/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/biology/htslib/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   pname = "htslib";
-  version = "1.14";
+  version = "1.15";
 
   src = fetchurl {
     url = "https://github.com/samtools/htslib/releases/download/${version}/${pname}-${version}.tar.bz2";
-    sha256 = "sha256-7SIbj1L0gS+BDuvgzFbNg1WlydIcYtFCrAWtDaFHk18=";
+    sha256 = "sha256-Gp9JkRUDoi9WgXzILqm4f7fnRntf+YnKWqYcEufVMtk=";
   };
 
   # perl is only used during the check phase.
diff --git a/nixpkgs/pkgs/development/libraries/science/math/bonmin/default.nix b/nixpkgs/pkgs/development/libraries/science/math/bonmin/default.nix
new file mode 100644
index 000000000000..9526a6250184
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/science/math/bonmin/default.nix
@@ -0,0 +1,51 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, gfortran
+, pkg-config
+, blas
+, bzip2
+, cbc
+, clp
+, ipopt
+, lapack
+, libamplsolver
+, zlib
+}:
+
+assert (!blas.isILP64) && (!lapack.isILP64);
+
+stdenv.mkDerivation rec {
+  pname = "bonmin";
+  version = "1.8.8";
+
+  src = fetchFromGitHub {
+    owner = "coin-or";
+    repo = "Bonmin";
+    rev = "releases/${version}";
+    sha256 = "sha256-HU25WjvG01oL3U1wG6ivTcYaN51MMxgLdKZ3AkDNe2Y=";
+  };
+
+  nativeBuildInputs = [
+    gfortran
+    pkg-config
+  ];
+  buildInputs = [
+    blas
+    bzip2
+    cbc
+    clp
+    ipopt
+    lapack
+    libamplsolver
+    zlib
+  ];
+
+  meta = with lib; {
+    description = "An open-source code for solving general MINLP (Mixed Integer NonLinear Programming) problems";
+    homepage = "https://github.com/coin-or/Bonmin";
+    license = licenses.epl10;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ aanderse ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/science/math/clmagma/default.nix b/nixpkgs/pkgs/development/libraries/science/math/clmagma/default.nix
index 3905e70d3401..fe9fc540902d 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/clmagma/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/clmagma/default.nix
@@ -3,7 +3,6 @@
 with lib;
 
 let
-  version = "1.3.0";
   incfile = builtins.toFile "make.inc.custom" ''
     CC        = g++
     FORT      = gfortran
@@ -32,10 +31,11 @@ let
     INC       = -I$(clBLAS)/include
                #-I$(AMDAPP)/include
   '';
-in stdenv.mkDerivation {
-  name = "clmagma-${version}";
+in stdenv.mkDerivation rec {
+  pname = "clmagma";
+  version = "1.3.0";
   src = fetchurl {
-    url = "http://icl.cs.utk.edu/projectsfiles/magma/cl/clmagma-${version}.tar.gz";
+    url = "https://icl.cs.utk.edu/projectsfiles/magma/cl/clmagma-${version}.tar.gz";
     sha256 = "1n27ny0xhwirw2ydn46pfcwy53gzia9zbam4irx44fd4d7f9ydv7";
     name = "clmagma-${version}.tar.gz";
   };
@@ -68,7 +68,7 @@ in stdenv.mkDerivation {
   meta = with lib; {
     description = "Matrix Algebra on GPU and Multicore Architectures, OpenCL port";
     license = licenses.bsd3;
-    homepage = "http://icl.cs.utk.edu/magma/index.html";
+    homepage = "https://icl.cs.utk.edu/magma/index.html";
     platforms = platforms.linux;
     maintainers = with maintainers; [ volhovm ];
   };
diff --git a/nixpkgs/pkgs/development/libraries/science/math/ipopt/default.nix b/nixpkgs/pkgs/development/libraries/science/math/ipopt/default.nix
index e0dfef0b7eec..325a6b82a6f9 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/ipopt/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/ipopt/default.nix
@@ -1,26 +1,35 @@
-{ lib, stdenv, fetchurl, unzip, blas, lapack, gfortran }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, pkg-config
+, blas
+, lapack
+, gfortran
+, enableAMPL ? stdenv.isLinux, libamplsolver
+}:
 
 assert (!blas.isILP64) && (!lapack.isILP64);
 
 stdenv.mkDerivation rec {
   pname = "ipopt";
-  version = "3.12.13";
+  version = "3.14.5";
 
-  src = fetchurl {
-    url = "https://www.coin-or.org/download/source/Ipopt/Ipopt-${version}.zip";
-    sha256 = "0kzf05aypx8q5mr3sciclk926ans0yi2d2chjdxxgpi3sza609dx";
+  src = fetchFromGitHub {
+    owner = "coin-or";
+    repo = "Ipopt";
+    rev = "releases/${version}";
+    sha256 = "sha256-eqOacZGuuGAjWMs2H6RntQ+WJmGTi+EqydHUQXEpY54=";
   };
 
   CXXDEFS = [ "-DHAVE_RAND" "-DHAVE_CSTRING" "-DHAVE_CSTDIO" ];
 
   configureFlags = [
-    "--with-blas-lib=-lblas"
-    "--with-lapack-lib=-llapack"
+    "--with-asl-cflags=-I${libamplsolver}/include"
+    "--with-asl-lflags=-lamplsolver"
   ];
 
-  nativeBuildInputs = [ unzip gfortran ];
-
-  buildInputs = [ blas lapack ];
+  nativeBuildInputs = [ pkg-config gfortran ];
+  buildInputs = [ blas lapack ] ++ lib.optionals enableAMPL [ libamplsolver ];
 
   enableParallelBuilding = true;
 
diff --git a/nixpkgs/pkgs/development/libraries/science/math/libamplsolver/default.nix b/nixpkgs/pkgs/development/libraries/science/math/libamplsolver/default.nix
new file mode 100644
index 000000000000..bcbde5f61359
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/science/math/libamplsolver/default.nix
@@ -0,0 +1,37 @@
+{ lib, stdenv, fetchurl, fetchpatch }:
+
+stdenv.mkDerivation rec {
+  pname = "libamplsolver";
+  version = "20211109";
+
+  src = fetchurl {
+    url = "https://ampl.com/netlib/ampl/solvers.tgz";
+    sha256 = "sha256-LVmScuIvxmZzywPSBl9T9YcUBJP7UFAa3eWs9r4q3JM=";
+  };
+
+  patches = [
+    # Debian provides a patch to build a shared library
+    (fetchpatch {
+      url = "https://sources.debian.org/data/main/liba/libamplsolver/0~20190702-2/debian/patches/fix-makefile-shared-lib.patch";
+      sha256 = "sha256-96qwj3fLugzbsfxguKMce13cUo7XGC4VUE7xKcJs42Y=";
+    })
+  ];
+
+  installPhase = ''
+    runHook preInstall
+    pushd sys.`uname -m`.`uname -s`
+    install -D -m 0644 *.h -t $out/include
+    install -D -m 0644 *.so* -t $out/lib
+    install -D -m 0644 *.a -t $out/lib
+    popd
+    runHook postInstall
+  '';
+
+  meta = with lib; {
+    description = "A library of routines that help solvers work with AMPL";
+    homepage = "https://ampl.com/netlib/ampl/";
+    license = [ licenses.mit ];
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ aanderse ];
+  };
+}
diff --git a/nixpkgs/pkgs/development/libraries/science/math/or-tools/default.nix b/nixpkgs/pkgs/development/libraries/science/math/or-tools/default.nix
index ca3e4a243691..20978e31cff1 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/or-tools/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/or-tools/default.nix
@@ -77,7 +77,8 @@ stdenv.mkDerivation rec {
     (cd temp_python/ortools; PYTHONPATH="$python/${python.sitePackages}:$PYTHONPATH" python setup.py install '--prefix=$python')
   '';
 
-  enableParallelBuilding = true;
+  # protobuf generation is not thread safe
+  enableParallelBuilding = false;
 
   nativeBuildInputs = [
     cmake
diff --git a/nixpkgs/pkgs/development/libraries/science/math/petsc/default.nix b/nixpkgs/pkgs/development/libraries/science/math/petsc/default.nix
index 4a4208e1cbe4..a06df2b1950d 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/petsc/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/petsc/default.nix
@@ -18,11 +18,11 @@ assert petsc-withp4est -> p4est.mpiSupport;
 
 stdenv.mkDerivation rec {
   pname = "petsc";
-  version = "3.16.4";
+  version = "3.16.5";
 
   src = fetchurl {
     url = "http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-${version}.tar.gz";
-    sha256 = "sha256-IpzOIr3P7bH+gn0wbtGvypc3eGzcPwVit0oZZsEkPK8=";
+    sha256 = "sha256-fehXDuuUBidS2CqDII/Cuvx3s/UVAjpMFNj/lEDmbKw=";
   };
 
   mpiSupport = !withp4est || p4est.mpiSupport;
@@ -67,6 +67,11 @@ stdenv.mkDerivation rec {
 
   configureScript = "python ./configure";
 
+  # disable stackprotector on aarch64-darwin for now
+  # https://github.com/NixOS/nixpkgs/issues/158730
+  # see https://github.com/NixOS/nixpkgs/issues/127608 for a similar issue
+  hardeningDisable = lib.optionals (stdenv.isAarch64 && stdenv.isDarwin) [ "stackprotector" ];
+
   enableParallelBuilding = true;
   doCheck = stdenv.hostPlatform == stdenv.buildPlatform;
 
diff --git a/nixpkgs/pkgs/development/libraries/science/math/scalapack/default.nix b/nixpkgs/pkgs/development/libraries/science/math/scalapack/default.nix
index 9a7374f4f49c..bafb52be7ffb 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/scalapack/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/scalapack/default.nix
@@ -6,13 +6,13 @@ assert blas.isILP64 == lapack.isILP64;
 
 stdenv.mkDerivation rec {
   pname = "scalapack";
-  version = "2.2.0";
+  version = "2.2.1";
 
   src = fetchFromGitHub {
     owner = "Reference-ScaLAPACK";
     repo = pname;
     rev = "v${version}";
-    sha256 = "0hiap5i9ik6xpvl721n2slanlqygagc1pg2bcjb27ans6balhsfh";
+    sha256 = "sha256-GNVGWrIWdfyTfbz7c31Vjt9eDlVzCd/aLHoWq2DMyX4=";
   };
 
   passthru = { inherit (blas) isILP64; };
diff --git a/nixpkgs/pkgs/development/libraries/science/math/scs/default.nix b/nixpkgs/pkgs/development/libraries/science/math/scs/default.nix
index a945e99ec9cb..6ccbfb11f51f 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/scs/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/scs/default.nix
@@ -4,13 +4,13 @@ assert (!blas.isILP64) && (!lapack.isILP64);
 
 stdenv.mkDerivation rec {
   pname = "scs";
-  version = "3.1.0";
+  version = "3.2.0";
 
   src = fetchFromGitHub {
     owner = "cvxgrp";
     repo = "scs";
     rev = version;
-    sha256 = "sha256-yoh25DmvY7fohAvABCiSLkvr7TskGd0ED2K3rIa/IeM=";
+    sha256 = "sha256-ewn7AGNqTXY3bp5itHTfAQ2Es2ZAIbuRFM5U600Px50=";
   };
 
   # Actually link and add libgfortran to the rpath
diff --git a/nixpkgs/pkgs/development/libraries/science/math/suitesparse-graphblas/default.nix b/nixpkgs/pkgs/development/libraries/science/math/suitesparse-graphblas/default.nix
index 4c0059184ee3..bf5251d1aed6 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/suitesparse-graphblas/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/suitesparse-graphblas/default.nix
@@ -6,7 +6,7 @@
 
 stdenv.mkDerivation rec {
   pname = "suitesparse-graphblas";
-  version = "6.1.4";
+  version = "6.2.2";
 
   outputs = [ "out" "dev" ];
 
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
     owner = "DrTimothyAldenDavis";
     repo = "GraphBLAS";
     rev = "v${version}";
-    sha256 = "sha256-pjb4Q9b+5hcI0ZYoez46V/ve4+1GJORu2ZGweceaWDY=";
+    sha256 = "sha256-uSPE7uFiG4xbsAeo/UmOP5Ns+3yZ7kKL2bNxzd8mzP8=";
   };
 
   nativeBuildInputs = [
diff --git a/nixpkgs/pkgs/development/libraries/science/math/suitesparse/4.4.nix b/nixpkgs/pkgs/development/libraries/science/math/suitesparse/4.4.nix
index 1ebac6ac445d..e734ed8ff35a 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/suitesparse/4.4.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/suitesparse/4.4.nix
@@ -3,14 +3,12 @@
 }:
 
 let
-  version = "4.4.4";
-  name = "suitesparse-${version}";
-
   int_t = if blas.isILP64 then "int64_t" else "int32_t";
   SHLIB_EXT = stdenv.hostPlatform.extensions.sharedLibrary;
 in
-stdenv.mkDerivation {
-  inherit name;
+stdenv.mkDerivation rec {
+  version = "4.4.4";
+  pname = "suitesparse";
 
   src = fetchurl {
     url = "http://faculty.cse.tamu.edu/davis/SuiteSparse/SuiteSparse-${version}.tar.gz";
@@ -71,7 +69,7 @@ stdenv.mkDerivation {
     done
 
     # Install documentation
-    outdoc=$out/share/doc/${name}
+    outdoc=$out/share/doc/suitesparse-${version}
     mkdir -p $outdoc
     cp -r AMD/Doc $outdoc/amd
     cp -r BTF/Doc $outdoc/bft
diff --git a/nixpkgs/pkgs/development/libraries/science/math/trilinos/default.nix b/nixpkgs/pkgs/development/libraries/science/math/trilinos/default.nix
index 19d2119622e9..1939b0a5307b 100644
--- a/nixpkgs/pkgs/development/libraries/science/math/trilinos/default.nix
+++ b/nixpkgs/pkgs/development/libraries/science/math/trilinos/default.nix
@@ -59,7 +59,9 @@ let
 in
 stdenv.mkDerivation rec {
   pname = "trilinos";
-  version = "12.12.1"; # Xyce 7.4 requires version 12.12.1
+  # Xyce 7.4 requires version 12.12.1
+  # nixpkgs-update: no auto update
+  version = "12.12.1";
 
   src = fetchFromGitHub {
     owner = "trilinos";