Merge remote-tracking branch 'upstream/master' into staging
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
{ stdenv
|
||||
, fetchurl
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "5.6.0";
|
||||
name = "papi-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://bitbucket.org/icl/papi/get/papi-5-6-0-t.tar.gz";
|
||||
sha256 = "13mngf9kl0y2wfxqvkad0smdaag7k8fvw82b4312gx62nwhc1i6r";
|
||||
};
|
||||
|
||||
buildInputs = [ stdenv ];
|
||||
|
||||
preConfigure = ''
|
||||
cd src
|
||||
'';
|
||||
|
||||
doCheck = true;
|
||||
checkTarget = "test";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://icl.utk.edu/papi/;
|
||||
description = "PAPI provides the tool designer and application engineer with a consistent interface and methodology for use of the performance counter hardware found in most major microprocessors";
|
||||
license = licenses.bsdOriginal;
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.costrouc ];
|
||||
};
|
||||
}
|
||||
@@ -110,6 +110,7 @@ stdenv.mkDerivation {
|
||||
homepage = http://math-atlas.sourceforge.net/;
|
||||
description = "Automatically Tuned Linear Algebra Software (ATLAS)";
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
broken = stdenv.isDarwin; # test when updating to >=3.10.3
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
|
||||
longDescription = ''
|
||||
|
||||
33
pkgs/development/libraries/science/math/parmetis/default.nix
Normal file
33
pkgs/development/libraries/science/math/parmetis/default.nix
Normal file
@@ -0,0 +1,33 @@
|
||||
{ stdenv
|
||||
, fetchurl
|
||||
, cmake
|
||||
, mpi
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "parmetis-${version}";
|
||||
version = "4.0.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://glaros.dtc.umn.edu/gkhome/fetch/sw/parmetis/parmetis-${version}.tar.gz";
|
||||
sha256 = "0pvfpvb36djvqlcc3lq7si0c5xpb2cqndjg8wvzg35ygnwqs5ngj";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake mpi ];
|
||||
|
||||
# metis and GKlib are packaged with distribution
|
||||
# AUR https://aur.archlinux.org/packages/parmetis/ has reported that
|
||||
# it easier to build with the included packages as opposed to using the metis
|
||||
# package. Compilation time is short.
|
||||
configurePhase = ''
|
||||
make config metis_path=$PWD/metis gklib_path=$PWD/metis/GKlib prefix=$out
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "ParMETIS is an MPI-based parallel library that implements a variety of algorithms for partitioning unstructured graphs, meshes, and for computing fill-reducing orderings of sparse matrices";
|
||||
homepage = http://glaros.dtc.umn.edu/gkhome/metis/parmetis/overview;
|
||||
platforms = platforms.all;
|
||||
license = licenses.unfree;
|
||||
maintainers = [ maintainers.costrouc ];
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
{ stdenv
|
||||
, fetchurl
|
||||
, gfortran
|
||||
, cmake
|
||||
, blas
|
||||
, liblapack
|
||||
, mpi
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "scalapack-${version}";
|
||||
version = "2.0.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.netlib.org/scalapack/scalapack-${version}.tgz";
|
||||
sha256 = "0p1r61ss1fq0bs8ynnx7xq4wwsdvs32ljvwjnx6yxr8gd6pawx0c";
|
||||
};
|
||||
|
||||
buildInputs = [ cmake mpi liblapack blas gfortran ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://www.netlib.org/scalapack/;
|
||||
description = "Library of high-performance linear algebra routines for parallel distributed memory machines";
|
||||
license = licenses.bsdOriginal;
|
||||
platforms = platforms.all;
|
||||
maintainers = [ maintainers.costrouc ];
|
||||
};
|
||||
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchFromGitHub, blas, liblapack, gfortran }:
|
||||
{ stdenv, fetchFromGitHub, blas, liblapack, gfortran, fixDarwinDylibNames }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "scs-${version}";
|
||||
@@ -11,24 +11,30 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "17lbcmcsniqlyzgbzmjipfd0rrk25a8hzh7l5wl2wp1iwsd8c3a9";
|
||||
};
|
||||
|
||||
buildInputs = [ blas liblapack gfortran.cc.lib ];
|
||||
|
||||
# Actually link and add libgfortran to the rpath
|
||||
patchPhase = ''
|
||||
sed -i 's/#-lgfortran/-lgfortran/' scs.mk
|
||||
postPatch = ''
|
||||
substituteInPlace scs.mk \
|
||||
--replace "#-lgfortran" "-lgfortran" \
|
||||
--replace "gcc" "cc"
|
||||
'';
|
||||
|
||||
nativeBuildInputs = stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames;
|
||||
|
||||
buildInputs = [ blas liblapack gfortran.cc.lib ];
|
||||
|
||||
doCheck = true;
|
||||
|
||||
# Test demo requires passing any int as $1; 42 chosen arbitrarily
|
||||
checkPhase = ''
|
||||
./out/demo_socp_indirect 42
|
||||
# Test demo requires passing data and seed; numbers chosen arbitrarily.
|
||||
postCheck = ''
|
||||
./out/demo_socp_indirect 42 0.42 0.42 42
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
mkdir -p $out/lib
|
||||
cp -r include $out/
|
||||
cp out/*.a out/*.so $out/lib/
|
||||
cp out/*.a out/*.so out/*.dylib $out/lib/
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
||||
Reference in New Issue
Block a user