nixpkgs/pkgs/development/libraries/oneDNN/default.nix
2024-06-17 22:27:07 +00:00

46 lines
1.3 KiB
Nix

{ cmake
, fetchFromGitHub
, lib
, stdenv
}:
# This was originally called mkl-dnn, then it was renamed to dnnl, and it has
# just recently been renamed again to oneDNN. See here for details:
# https://github.com/oneapi-src/oneDNN#oneapi-deep-neural-network-library-onednn
stdenv.mkDerivation (finalAttrs: {
pname = "oneDNN";
version = "3.5";
src = fetchFromGitHub {
owner = "oneapi-src";
repo = "oneDNN";
rev = "v${finalAttrs.version}";
hash = "sha256-IOS5w84/Dnwjqgk5Lf6o6P1l9q5KBUUll250B1mh/Gc=";
};
outputs = [ "out" "dev" "doc" ];
nativeBuildInputs = [ cmake ];
# Tests fail on some Hydra builders, because they do not support SSE4.2.
doCheck = false;
# Fixup bad cmake paths
postInstall = ''
substituteInPlace $out/lib/cmake/dnnl/dnnl-config.cmake \
--replace "\''${PACKAGE_PREFIX_DIR}/" ""
substituteInPlace $out/lib/cmake/dnnl/dnnl-targets.cmake \
--replace "\''${_IMPORT_PREFIX}/" ""
'';
meta = {
changelog = "https://github.com/oneapi-src/oneDNN/releases/tag/v${finalAttrs.version}";
description = "oneAPI Deep Neural Network Library (oneDNN)";
homepage = "https://01.org/oneDNN";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ bhipple ];
platforms = lib.platforms.all;
};
})