{stdenv, fetchurl}:
with stdenv; with lib;
mkDerivation rec {
  name = "libb2-${meta.version}";

  meta = {
    version = "0.97";
    description = "The BLAKE2 family of cryptographic hash functions";
    platforms = platforms.all;
    maintainers = with maintainers; [ dfoxfranke ];
    license = licenses.cc0;
  };

  src = fetchurl {
    url = "https://blake2.net/${name}.tar.gz";
    sha256 = "7829c7309347650239c76af7f15d9391af2587b38f0a65c250104a2efef99051";
  };
}

{stdenv, fetchurl}:
with stdenv; with lib;
mkDerivation rec {
  name = "libb2-${meta.version}";

  src = fetchurl {
    url = "https://blake2.net/${name}.tar.gz";
    sha256 = "7829c7309347650239c76af7f15d9391af2587b38f0a65c250104a2efef99051";
  };

  configureFlags = [ "--enable-fat=yes" ];

  meta = {
    version = "0.97";
    description = "The BLAKE2 family of cryptographic hash functions";
    platforms = platforms.all;
    maintainers = with maintainers; [ dfoxfranke ];
    license = licenses.cc0;
  };
}

Use "--enable-fat=yes" to avoid build nondeterminism
libbb2: Use "--enable-fat=yes" to avoid build nondeterminism

Otherwise it would pick various -march flags based on the CPU of the
compiling system, using beautiful code like this:

````
 63 AC_CACHE_CHECK(for x86 cpuid $1 output, ax_cv_gcc_x86_cpuid_$1,
 64  [AC_RUN_IFELSE([AC_LANG_PROGRAM([#include <stdio.h>], [
 65      int op = $1, eax, ebx, ecx, edx;
 66      FILE *f;
 67       __asm__("cpuid"
 68         : "=a" (eax), "=b" (ebx), "=c" (ecx), "=d" (edx)
 69         : "a" (op));
 70      f = fopen("conftest_cpuid", "w"); if (!f) return 1;
 71      fprintf(f, "%x:%x:%x:%x\n", eax, ebx, ecx, edx);
 72      fclose(f);
 73      return 0;
 74 ])],

...

121       AC_CACHE_CHECK([whether avx is supported], [ax_cv_have_avx_ext],
122       [
123         ax_cv_have_avx_ext=no
124         if test "$((0x$ecx>>28&0x01))" = 1; then
125           ax_cv_have_avx_ext=yes
126         fi
127       ])
````
