52 lines
1.4 KiB
Nix
52 lines
1.4 KiB
Nix
{ lib, stdenv, fetchurl, openssl, perl, which, dns-root-data }:
|
|
|
|
stdenv.mkDerivation rec {
|
|
pname = "ldns";
|
|
version = "1.8.3";
|
|
|
|
src = fetchurl {
|
|
url = "https://www.nlnetlabs.nl/downloads/ldns/${pname}-${version}.tar.gz";
|
|
sha256 = "sha256-w/ct0QNrKQfjpW5qz537LlUSVrPBu9l4eULe7rcOeGA=";
|
|
};
|
|
|
|
postPatch = ''
|
|
patchShebangs doc/doxyparse.pl
|
|
'';
|
|
|
|
outputs = [ "out" "dev" "man" "examples" ];
|
|
|
|
nativeBuildInputs = [ perl ];
|
|
buildInputs = [ openssl ];
|
|
|
|
configureFlags = [
|
|
"--with-ssl=${openssl.dev}"
|
|
"--with-trust-anchor=${dns-root-data}/root.key"
|
|
"--with-drill"
|
|
"--disable-gost"
|
|
"--with-examples"
|
|
] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
|
|
"ac_cv_func_malloc_0_nonnull=yes"
|
|
"ac_cv_func_realloc_0_nonnull=yes"
|
|
];
|
|
|
|
nativeCheckInputs = [ which ];
|
|
doCheck = false; # fails. missing some files
|
|
|
|
postInstall = ''
|
|
# Only 'drill' stays in $out
|
|
# the rest are examples:
|
|
moveToOutput "bin/ldns*" "$examples"
|
|
# with exception of ldns-config, which goes to $dev:
|
|
moveToOutput "bin/ldns-config" "$dev"
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "Library with the aim of simplifying DNS programming in C";
|
|
homepage = "http://www.nlnetlabs.nl/projects/ldns/";
|
|
license = licenses.bsd3;
|
|
maintainers = with maintainers; [ dtzWill ];
|
|
mainProgram = "drill";
|
|
platforms = platforms.unix;
|
|
};
|
|
}
|