diff options
Diffstat (limited to 'pkgs/development/libraries/hipsparse/default.nix')
-rw-r--r-- | pkgs/development/libraries/hipsparse/default.nix | 72 |
1 files changed, 35 insertions, 37 deletions
diff --git a/pkgs/development/libraries/hipsparse/default.nix b/pkgs/development/libraries/hipsparse/default.nix index cf3fab40cef8b..182173fccdb50 100644 --- a/pkgs/development/libraries/hipsparse/default.nix +++ b/pkgs/development/libraries/hipsparse/default.nix @@ -1,6 +1,7 @@ { lib , stdenv , fetchFromGitHub +, writeScript , cmake , rocm-cmake , rocm-runtime @@ -10,25 +11,14 @@ , hip , gfortran , git -, fetchzip ? null -, gtest ? null +, gtest , buildTests ? false }: -assert buildTests -> fetchzip != null; -assert buildTests -> gtest != null; - # This can also use cuSPARSE as a backend instead of rocSPARSE -let - matrices = lib.optionalAttrs buildTests import ./deps.nix { - inherit fetchzip; - mirror1 = "https://sparse.tamu.edu/MM"; - mirror2 = "https://www.cise.ufl.edu/research/sparse/MM"; - }; -in stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "hipsparse"; - rocmVersion = "5.3.1"; - version = "2.3.1-${rocmVersion}"; + version = "5.3.3"; outputs = [ "out" @@ -39,7 +29,7 @@ in stdenv.mkDerivation rec { src = fetchFromGitHub { owner = "ROCmSoftwarePlatform"; repo = "hipSPARSE"; - rev = "rocm-${rocmVersion}"; + rev = "rocm-${finalAttrs.version}"; hash = "sha256-Phcihat774ZSAe1QetE/GSZzGlnCnvS9GwsHBHCaD4c="; }; @@ -79,25 +69,25 @@ in stdenv.mkDerivation rec { '' + lib.optionalString buildTests '' mkdir -p matrices - ln -s ${matrices.matrix-01}/*.mtx matrices - ln -s ${matrices.matrix-02}/*.mtx matrices - ln -s ${matrices.matrix-03}/*.mtx matrices - ln -s ${matrices.matrix-04}/*.mtx matrices - ln -s ${matrices.matrix-05}/*.mtx matrices - ln -s ${matrices.matrix-06}/*.mtx matrices - ln -s ${matrices.matrix-07}/*.mtx matrices - ln -s ${matrices.matrix-08}/*.mtx matrices - ln -s ${matrices.matrix-09}/*.mtx matrices - ln -s ${matrices.matrix-10}/*.mtx matrices - ln -s ${matrices.matrix-11}/*.mtx matrices - ln -s ${matrices.matrix-12}/*.mtx matrices - ln -s ${matrices.matrix-13}/*.mtx matrices - ln -s ${matrices.matrix-14}/*.mtx matrices - ln -s ${matrices.matrix-15}/*.mtx matrices - ln -s ${matrices.matrix-16}/*.mtx matrices - ln -s ${matrices.matrix-17}/*.mtx matrices - ln -s ${matrices.matrix-18}/*.mtx matrices - ln -s ${matrices.matrix-19}/*.mtx matrices + ln -s ${rocsparse.passthru.matrices.matrix-01}/*.mtx matrices + ln -s ${rocsparse.passthru.matrices.matrix-02}/*.mtx matrices + ln -s ${rocsparse.passthru.matrices.matrix-03}/*.mtx matrices + ln -s ${rocsparse.passthru.matrices.matrix-04}/*.mtx matrices + ln -s ${rocsparse.passthru.matrices.matrix-05}/*.mtx matrices + ln -s ${rocsparse.passthru.matrices.matrix-06}/*.mtx matrices + ln -s ${rocsparse.passthru.matrices.matrix-07}/*.mtx matrices + ln -s ${rocsparse.passthru.matrices.matrix-08}/*.mtx matrices + ln -s ${rocsparse.passthru.matrices.matrix-09}/*.mtx matrices + ln -s ${rocsparse.passthru.matrices.matrix-10}/*.mtx matrices + ln -s ${rocsparse.passthru.matrices.matrix-11}/*.mtx matrices + ln -s ${rocsparse.passthru.matrices.matrix-12}/*.mtx matrices + ln -s ${rocsparse.passthru.matrices.matrix-13}/*.mtx matrices + ln -s ${rocsparse.passthru.matrices.matrix-14}/*.mtx matrices + ln -s ${rocsparse.passthru.matrices.matrix-15}/*.mtx matrices + ln -s ${rocsparse.passthru.matrices.matrix-16}/*.mtx matrices + ln -s ${rocsparse.passthru.matrices.matrix-17}/*.mtx matrices + ln -s ${rocsparse.passthru.matrices.matrix-18}/*.mtx matrices + ln -s ${rocsparse.passthru.matrices.matrix-19}/*.mtx matrices # Not used by the original cmake, causes an error rm matrices/*_b.mtx @@ -122,11 +112,19 @@ in stdenv.mkDerivation rec { rmdir $out/bin ''; + passthru.updateScript = writeScript "update.sh" '' + #!/usr/bin/env nix-shell + #!nix-shell -i bash -p curl jq common-updater-scripts + version="$(curl ''${GITHUB_TOKEN:+"-u \":$GITHUB_TOKEN\""} \ + -sL "https://api.github.com/repos/ROCmSoftwarePlatform/hipSPARSE/releases?per_page=1" | jq '.[0].tag_name | split("-") | .[1]' --raw-output)" + update-source-version hipsparse "$version" --ignore-same-hash + ''; + meta = with lib; { description = "ROCm SPARSE marshalling library"; homepage = "https://github.com/ROCmSoftwarePlatform/hipSPARSE"; license = with licenses; [ mit ]; - maintainers = with maintainers; [ Madouura ]; - broken = rocmVersion != hip.version; + maintainers = teams.rocm.members; + broken = finalAttrs.version != hip.version; }; -} +}) |