8e15df4715
Linux Kernel Crypto API User Space Interface Library. libkcapi allows user-space to access the Linux kernel crypto API. The esdm package may include support for libkcapi in the jittentropy source in a future release. Therefor having this package upstream would be prefered. Signed-off-by: Oliver Richter <richter-oliver@gmx.net>
53 lines
1.4 KiB
Nix
53 lines
1.4 KiB
Nix
{ lib
|
|
, stdenv
|
|
, fetchFromGitHub
|
|
, autoreconfHook
|
|
, buildPackages
|
|
# libkcapi offers multiple tools. They can be disabled for minimization.
|
|
, kcapi-test ? true
|
|
, kcapi-speed ? true
|
|
, kcapi-hasher ? true
|
|
, kcapi-rngapp ? true
|
|
, kcapi-encapp ? true
|
|
, kcapi-dgstapp ? true
|
|
}:
|
|
|
|
stdenv.mkDerivation rec {
|
|
pname = "libkcapi";
|
|
version = "1.4.0";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "smuellerDD";
|
|
repo = "libkcapi";
|
|
rev = "v${version}";
|
|
hash = "sha256-G/4G8179Gc8RfQfQImOCsBC8WXKK7jQJfUSXm0hYLJ0=";
|
|
};
|
|
|
|
nativeBuildInputs = [ autoreconfHook ];
|
|
|
|
# libkcapi looks also for a host c compiler when cross-compiling
|
|
# otherwise you obtain following error message:
|
|
# "error: no acceptable C compiler found in $PATH"
|
|
depsBuildBuild = [
|
|
buildPackages.stdenv.cc
|
|
];
|
|
|
|
enableParallelBuilding = true;
|
|
|
|
configureFlags =
|
|
lib.optional kcapi-test "--enable-kcapi-test" ++
|
|
lib.optional kcapi-speed "--enable-kcapi-speed" ++
|
|
lib.optional kcapi-hasher "--enable-kcapi-hasher" ++
|
|
lib.optional kcapi-rngapp "--enable-kcapi-rngapp" ++
|
|
lib.optional kcapi-encapp "--enable-kcapi-encapp" ++
|
|
lib.optional kcapi-dgstapp "--enable-kcapi-dgstapp"
|
|
;
|
|
|
|
meta = {
|
|
homepage = "http://www.chronox.de/libkcapi.html";
|
|
description = "Linux Kernel Crypto API User Space Interface Library";
|
|
license = with lib.licenses; [ bsd3 gpl2Only ];
|
|
platforms = lib.platforms.linux;
|
|
maintainers = with lib.maintainers; [ orichter thillux ];
|
|
};
|
|
}
|