2015-08-23 18:00:31 +01:00
|
|
|
{stdenv, fetchurl}:
|
|
|
|
with stdenv; with lib;
|
|
|
|
mkDerivation rec {
|
|
|
|
name = "libb2-${meta.version}";
|
|
|
|
|
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 ])
````
2016-08-30 20:34:40 +01:00
|
|
|
src = fetchurl {
|
|
|
|
url = "https://blake2.net/${name}.tar.gz";
|
|
|
|
sha256 = "7829c7309347650239c76af7f15d9391af2587b38f0a65c250104a2efef99051";
|
|
|
|
};
|
|
|
|
|
|
|
|
configureFlags = [ "--enable-fat=yes" ];
|
|
|
|
|
2015-08-23 18:00:31 +01:00
|
|
|
meta = {
|
|
|
|
version = "0.97";
|
|
|
|
description = "The BLAKE2 family of cryptographic hash functions";
|
|
|
|
platforms = platforms.all;
|
|
|
|
maintainers = with maintainers; [ dfoxfranke ];
|
|
|
|
license = licenses.cc0;
|
|
|
|
};
|
|
|
|
}
|