nettle: runtime selection of HW-accelerated code
nettle: runtime selection of HW-accelerated code

> Include multiple versions of certain functions in the library,
> and select the ones to use at run-time, depending on available
> processor features. Supported for ARM and x86_64.

The current version seems to accelerate AES and SHA families.

Size increase on x86_64 is <10k in our case.

It can make quite some performance difference; I tried
$ time ./result-dev/bin/nettle-hash -a sha256 /some/file/around/2G
And the total CPU time went down from 8.5s to 2s (single thread).
Now it matches the time of openssl
$ time openssl sha256 /some/file/around/2G
Of course, in real life it will be much harder to notice a difference...

Platforms without support for this (e.g. i686) seem to still build fine,
and ARMv7 cross-build also succeeds for me, so hopefully all is OK.

NixOS/nixpkgs,NixOS/nixpkgs,NixOS/nixpkgs,NixOS/nixpkgs,NixOS/nixpkgs,NixOS/nixpkgs,NixOS/nixpkgs,NixOS/nixpkgs,NixOS/nixpkgs,NixOS/nixpkgs,NixOS/nixpkgs,NixOS/nixpkgs,NixOS/nixpkgs,NixOS/nixpkgs,NixOS/nixpkgs