xsimd: init at 7.5.0

xsimd: format

Co-authored-by: Sandro <sandro.jaeckel@gmail.com>

xsimd: fix on macOS

xsimd: Use fetchFromGitHub
This commit is contained in:
Tobias Mayer 2021-04-27 09:41:41 +02:00
parent 32f7980afb
commit f5704c862d
No known key found for this signature in database
GPG key ID: F8657E90819A1298
2 changed files with 58 additions and 0 deletions

View file

@ -0,0 +1,56 @@
{ lib, stdenv, fetchFromGitHub, cmake, gtest }:
let
version = "7.5.0";
darwin_src = fetchFromGitHub {
owner = "xtensor-stack";
repo = "xsimd";
rev = version;
sha256 = "eGAdRSYhf7rbFdm8g1Tz1ZtSVu44yjH/loewblhv9Vs=";
# Avoid requiring apple_sdk. We're doing this here instead of in the patchPhase
# because this source is directly used in arrow-cpp.
# pyconfig.h defines _GNU_SOURCE to 1, so we need to stamp that out too.
# Upstream PR with a better fix: https://github.com/xtensor-stack/xsimd/pull/463
postFetch = ''
mkdir $out
tar -xf $downloadedFile --directory=$out --strip-components=1
substituteInPlace $out/include/xsimd/types/xsimd_scalar.hpp \
--replace 'defined(__APPLE__)' 0 \
--replace 'defined(_GNU_SOURCE)' 0
'';
};
src = fetchFromGitHub {
owner = "xtensor-stack";
repo = "xsimd";
rev = version;
sha256 = "0c9pq5vz43j99z83w3b9qylfi66mn749k1afpv5cwfxggbxvy63f";
};
in stdenv.mkDerivation {
pname = "xsimd";
inherit version;
src = if stdenv.hostPlatform.isDarwin then darwin_src else src;
nativeBuildInputs = [ cmake ];
cmakeFlags = [ "-DBUILD_TESTS=ON" ];
doCheck = true;
checkInputs = [ 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/sse_double.gamma"
"error_gamma_test/avx_double.gamma"
];
in "-${builtins.concatStringsSep ":" filteredTests}";
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;
};
}

View file

@ -18063,6 +18063,8 @@ in
xlslib = callPackage ../development/libraries/xlslib { };
xsimd = callPackage ../development/libraries/xsimd { };
xvidcore = callPackage ../development/libraries/xvidcore { };
xxHash = callPackage ../development/libraries/xxHash {};