nixpkgs/pkgs/development/libraries/libargon2/default.nix
Vika 06073ae7df libargon2: fixed cross-compilation
Makefile had a hardcoded unprefixed ar. I wrote a patch (sending it
upstream) and added an optional make flag to override it in case we're
cross-compiling.

Unfortunately, this causes a rebuild of native packages.

This commit also fixes the pkg-config file to be generated correctly,
patch was provided by @worldofpeace.
2019-08-28 19:35:19 +03:00

45 lines
1.5 KiB
Nix

{ stdenv, fetchFromGitHub, fetchpatch }:
stdenv.mkDerivation rec {
pname = "libargon2";
version = "20190702";
src = fetchFromGitHub {
owner = "P-H-C";
repo = "phc-winner-argon2";
rev = version;
sha256 = "0p4ry9dn0mi9js0byijxdyiwx74p1nr8zj7wjpd1fjgqva4sk23i";
};
patches = [
# TODO: remove when https://github.com/P-H-C/phc-winner-argon2/pull/277 is merged + released
(fetchpatch {
url = "https://github.com/P-H-C/phc-winner-argon2/commit/cd1c1d8d204e4ec4557e358013567c097cb70562.patch";
sha256 = "0whqv8b6q9602n7vxpzbd8bk8wz22r1jz9x5lrm9z7ib3wz81c8a";
})
];
makeFlags = [
"AR=${stdenv.cc.targetPrefix}ar" # Fix cross-compilation
"PREFIX=${placeholder "out"}"
"ARGON2_VERSION=${version}"
"LIBRARY_REL=lib"
"PKGCONFIG_REL=lib"
];
meta = with stdenv.lib; {
description = "A key derivation function that was selected as the winner of the Password Hashing Competition in July 2015";
longDescription = ''
A password-hashing function created by by Alex Biryukov, Daniel Dinu, and
Dmitry Khovratovich. Argon2 was declared the winner of the Password
Hashing Competition (PHC). There were 24 submissions and 9 finalists.
Catena, Lyra2, Makwa and yescrypt were given special recognition. The PHC
recommends using Argon2 rather than legacy algorithms.
'';
homepage = "https://www.argon2.com/";
license = with licenses; [ asl20 cc0 ];
maintainers = with maintainers; [ taeer olynch ];
platforms = platforms.linux ++ platforms.darwin;
};
}