44 lines
993 B
Nix
44 lines
993 B
Nix
|
|
{
|
||
|
|
lib,
|
||
|
|
stdenv,
|
||
|
|
fetchFromGitLab,
|
||
|
|
cmake,
|
||
|
|
}:
|
||
|
|
|
||
|
|
stdenv.mkDerivation {
|
||
|
|
pname = "eigen";
|
||
|
|
version = "3.4.0-unstable-2022-05-19";
|
||
|
|
|
||
|
|
src = fetchFromGitLab {
|
||
|
|
owner = "libeigen";
|
||
|
|
repo = "eigen";
|
||
|
|
rev = "e7248b26a1ed53fa030c5c459f7ea095dfd276ac";
|
||
|
|
hash = "sha256-uQ1YYV3ojbMVfHdqjXRyUymRPjJZV3WHT36PTxPRius=";
|
||
|
|
};
|
||
|
|
|
||
|
|
patches = [
|
||
|
|
./include-dir.patch
|
||
|
|
];
|
||
|
|
|
||
|
|
# ref. https://gitlab.com/libeigen/eigen/-/merge_requests/977
|
||
|
|
# This was merged upstream and can be removed on next release
|
||
|
|
postPatch = ''
|
||
|
|
substituteInPlace Eigen/src/SVD/BDCSVD.h --replace-fail \
|
||
|
|
"if (l == 0) {" \
|
||
|
|
"if (i >= k && l == 0) {"
|
||
|
|
'';
|
||
|
|
|
||
|
|
nativeBuildInputs = [ cmake ];
|
||
|
|
|
||
|
|
meta = with lib; {
|
||
|
|
homepage = "https://eigen.tuxfamily.org";
|
||
|
|
description = "C++ template library for linear algebra: vectors, matrices, and related algorithms";
|
||
|
|
license = licenses.lgpl3Plus;
|
||
|
|
maintainers = with maintainers; [
|
||
|
|
sander
|
||
|
|
raskin
|
||
|
|
];
|
||
|
|
platforms = platforms.unix;
|
||
|
|
};
|
||
|
|
}
|