nixpkgs/pkgs/by-name/li/libucl/package.nix

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

57 lines
1.2 KiB
Nix
Raw Normal View History

{ lib, stdenv
2020-06-03 13:40:48 +00:00
, fetchFromGitHub
, pkg-config
, autoreconfHook
, curl
, lua
, openssl
, features ? {
urls = false;
# Upstream enables regex by default
regex = true;
# Signature support is broken with openssl 1.1.1: https://github.com/vstakhov/libucl/issues/203
signatures = false;
lua = false;
utils = false;
}
}:
let
featureDeps = {
urls = [ curl ];
signatures = [ openssl ];
lua = [ lua ];
};
in
stdenv.mkDerivation rec {
pname = "libucl";
2024-04-21 01:09:06 +00:00
version = "0.9.2";
2020-06-03 13:40:48 +00:00
src = fetchFromGitHub {
owner = "vstakhov";
repo = pname;
rev = version;
2024-04-21 01:09:06 +00:00
sha256 = "sha256-esNEVBa660rl3Oo2SLaLrFThFkjbqtZ1r0tjMq3h6cM=";
2020-06-03 13:40:48 +00:00
};
nativeBuildInputs = [ pkg-config autoreconfHook ];
2024-08-16 20:58:22 +00:00
buildInputs = lib.concatLists (
lib.mapAttrsToList (feat: enabled:
lib.optionals enabled (featureDeps."${feat}" or [])
2020-06-03 13:40:48 +00:00
) features
);
enableParallelBuilding = true;
2024-08-16 20:58:22 +00:00
configureFlags = lib.mapAttrsToList (feat: enabled: lib.strings.enableFeature enabled feat) features;
2020-06-03 13:40:48 +00:00
meta = with lib; {
2020-06-03 13:40:48 +00:00
description = "Universal configuration library parser";
homepage = "https://github.com/vstakhov/libucl";
license = licenses.bsd2;
platforms = platforms.unix;
maintainers = with maintainers; [ jpotier ];
};
}