nixpkgs/pkgs/development/libraries/xsimd/default.nix
2023-03-17 12:25:11 +02:00

42 lines
1.1 KiB
Nix

{ lib, stdenv, fetchFromGitHub, cmake, gtest }:
stdenv.mkDerivation rec {
pname = "xsimd";
version = "9.0.1";
src = fetchFromGitHub {
owner = "xtensor-stack";
repo = "xsimd";
rev = version;
sha256 = "sha256-onALN6agtrHWigtFlCeefD9CiRZI4Y690XTzy2UDnrk=";
};
nativeBuildInputs = [ cmake ];
cmakeFlags = [ "-DBUILD_TESTS=ON" ];
doCheck = true;
nativeCheckInputs = [ gtest ];
checkTarget = "xtest";
GTEST_FILTER =
let
# Upstream Issue: https://github.com/xtensor-stack/xsimd/issues/456
filteredTests = lib.optionals stdenv.hostPlatform.isDarwin [
"error_gamma_test/*"
];
in
"-${builtins.concatStringsSep ":" filteredTests}";
# https://github.com/xtensor-stack/xsimd/issues/748
postPatch = ''
substituteInPlace xsimd.pc.in \
--replace '$'{prefix}/@CMAKE_INSTALL_LIBDIR@ @CMAKE_INSTALL_FULL_LIBDIR@
'';
meta = with lib; {
description = "C++ wrappers for SIMD intrinsics";
homepage = "https://github.com/xtensor-stack/xsimd";
license = licenses.bsd3;
maintainers = with maintainers; [ tobim ];
platforms = platforms.all;
};
}