anchor.diff:      "-Donnxruntime_PREFER_SYSTEM_LIB=ON"
       "-Donnxruntime_BUILD_SHARED_LIB=ON"
       "-Donnxruntime_ENABLE_LTO=ON"
  -    "-Donnxruntime_BUILD_UNIT_TESTS=OFF"
  +    "-Donnxruntime_BUILD_UNIT_TESTS=ON"
       "-Donnxruntime_USE_PREINSTALLED_EIGEN=ON"
       "-Donnxruntime_USE_MPI=ON"
       "-Deigen_SOURCE_PATH=${eigen.src}"
       "-Donnxruntime_USE_DNNL=YES"
     ];
   
  -  enableParallelBuilding = true;
  +  doCheck = true;
   
  -  meta = {
  +  postPatch = ''
  +    substituteInPlace cmake/external/abseil-cpp.cmake \
  +      --replace "${abseil.url}" "${abseil}"
  +  '';
  +
  +  postInstall = ''
  +    # perform parts of `tools/ci_build/github/linux/copy_strip_binary.sh`
  +    install -m644 -Dt $out/include \
  +      ../include/onnxruntime/core/framework/provider_options.h \
  +      ../include/onnxruntime/core/providers/cpu/cpu_provider_factory.h \
  +      ../include/onnxruntime/core/session/onnxruntime_*.h
  +  '';
  +
  +  meta = with lib; {
       description = "Cross-platform, high performance scoring engine for ML models";
       longDescription = ''
         ONNX Runtime is a performance-focused complete scoring engine
  
positive.code:     })
    ];
  
    # TODO: build server, and move .so's to lib output
    outputs = [ "out" "dev" ];
  
    nativeBuildInputs = [
      cmake
      pkg-config
      python3
    ];
  
    buildInputs = [
      libpng
      zlib
      protobuf
      nsync
      flatbuffers
      howard-hinnant-date
      re2
      nlohmann_json
      boost
      oneDNN
    ];
  
    cmakeDir = "../cmake";
  
  
negative.code: , lib
  , fetchFromGitHub
  , fetchpatch
  , fetchurl
  , pkg-config
  , cmake
  , python3
  , libpng
  , zlib
  , eigen
  , protobuf
  , howard-hinnant-date
  , nlohmann_json
  , boost
  , oneDNN
  , gtest
  }:
  
  let
    # prefetch abseil
    # Note: keep URL in sync with `cmake/external/abseil-cpp.cmake`
    abseil = fetchurl {
      url = "https://github.com/abseil/abseil-cpp/archive/refs/tags/20211102.0.zip";
      sha256 = "sha256-pFZ/8C+spnG5XjHTFbqxi0K2xvGmDpHG6oTlohQhEsI=";
    };
  in
  stdenv.mkDerivation rec {
    pname = "onnxruntime";
    version = "1.12.1";
  
    src = fetchFromGitHub {
      owner = "microsoft";
      repo = "onnxruntime";
      rev = "v${version}";
      sha256 = "sha256-wwllEemiHTp9aJcCd1gsTS4WUVMp5wW+4i/+6DzmAeM=";
      fetchSubmodules = true;
    };
  
    patches = [
      # Use dnnl from nixpkgs instead of submodules
      (fetchpatch {
        name = "system-dnnl.patch";
        url = "https://aur.archlinux.org/cgit/aur.git/plain/system-dnnl.diff?h=python-onnxruntime&id=0185531906bda3a9aba93bbb0f3dcfeb0ae671ad";
  