From 99dad401f1aab813c5ea6e90b77b008b3a27f2e6 Mon Sep 17 00:00:00 2001 From: Markus Kowalewski Date: Wed, 1 Oct 2025 13:21:24 +0200 Subject: [PATCH 1/2] amd-blis: cleanup, refactor * use finalAttrs * remove `wiht lib;` from meta * update comments --- pkgs/by-name/am/amd-blis/package.nix | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/pkgs/by-name/am/amd-blis/package.nix b/pkgs/by-name/am/amd-blis/package.nix index 65106043809c..a6c7a2a2f4f7 100644 --- a/pkgs/by-name/am/amd-blis/package.nix +++ b/pkgs/by-name/am/amd-blis/package.nix @@ -10,7 +10,7 @@ # Target architecture. "amdzen" compiles kernels for all Zen # generations. To build kernels for specific Zen generations, - # use "zen", "zen2", "zen3", or "zen4". + # use "zen", "zen2", "zen3", "zen4", or "zen5". withArchitecture ? "amdzen", # Enable OpenMP-based threading. @@ -22,14 +22,14 @@ let blasIntSize = if blas64 then "64" else "32"; in -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "amd-blis"; version = "5.1"; src = fetchFromGitHub { owner = "amd"; repo = "blis"; - rev = version; + rev = finalAttrs.version; hash = "sha256-hqb/Q1CBqtC4AXqHNd7voewGUD675hJ9IwvP3Mn9b+M="; }; @@ -66,11 +66,11 @@ stdenv.mkDerivation rec { ln -s $out/lib/libcblas.so.3 $out/lib/libcblas.so ''; - meta = with lib; { + meta = { description = "BLAS-compatible library optimized for AMD CPUs"; homepage = "https://developer.amd.com/amd-aocl/blas-library/"; - license = licenses.bsd3; - maintainers = [ maintainers.markuskowa ]; + license = lib.licenses.bsd3; + maintainers = [ lib.maintainers.markuskowa ]; platforms = [ "x86_64-linux" ]; }; -} +}) From 4ae04e17c9a0fc7d053894fdec9c09984162c368 Mon Sep 17 00:00:00 2001 From: Markus Kowalewski Date: Wed, 1 Oct 2025 13:22:17 +0200 Subject: [PATCH 2/2] amd-blis: add patch to make output reproducible Fixes the datestamt to SOURCE_DATE_EPOCH --- pkgs/by-name/am/amd-blis/build-date.patch | 13 +++++++++++++ pkgs/by-name/am/amd-blis/package.nix | 5 +++++ 2 files changed, 18 insertions(+) create mode 100644 pkgs/by-name/am/amd-blis/build-date.patch diff --git a/pkgs/by-name/am/amd-blis/build-date.patch b/pkgs/by-name/am/amd-blis/build-date.patch new file mode 100644 index 000000000000..7b0e11f4f0f3 --- /dev/null +++ b/pkgs/by-name/am/amd-blis/build-date.patch @@ -0,0 +1,13 @@ +diff --git a/configure b/configure +index d96114619..119040151 100755 +--- a/configure ++++ b/configure +@@ -1913,7 +1913,7 @@ set_default_version() + echo "${script_name}: determining default version string." + + # Use what's in the version file as-is. +- version="AOCL-BLAS $(cat "${version_file}") Build $(date +%Y%m%d)" ++ version="AOCL-BLAS $(cat "${version_file}") Build $(date -d "@$SOURCE_DATE_EPOCH" +%Y%m%d)" + } + + diff --git a/pkgs/by-name/am/amd-blis/package.nix b/pkgs/by-name/am/amd-blis/package.nix index a6c7a2a2f4f7..0e59a24ed3f6 100644 --- a/pkgs/by-name/am/amd-blis/package.nix +++ b/pkgs/by-name/am/amd-blis/package.nix @@ -33,6 +33,11 @@ stdenv.mkDerivation (finalAttrs: { hash = "sha256-hqb/Q1CBqtC4AXqHNd7voewGUD675hJ9IwvP3Mn9b+M="; }; + patches = [ + # Set the date stamp to $SOURCE_DATE_EPOCH + ./build-date.patch + ]; + inherit blas64; nativeBuildInputs = [