summary refs log tree commit diff
path: root/pkgs/development/libraries/libucl
diff options
context:
space:
mode:
authorEEva (JPotier) <jpo.contributes.to.nixos@marvid.fr>2020-06-03 16:40:48 +0300
committerEEva (JPotier) <jpo.contributes.to.nixos@marvid.fr>2020-06-07 14:01:26 +0300
commita739d310c1dcfabbdbeb48b57a2fb22fed5d61a3 (patch)
tree48c28a55cf40651e552c326ac2777e4a8e8194c0 /pkgs/development/libraries/libucl
parentb68c2de8f8085af1cdf8faec8cae0ff8b06a3370 (diff)
downloadnixpkgs-a739d310c1dcfabbdbeb48b57a2fb22fed5d61a3.tar
nixpkgs-a739d310c1dcfabbdbeb48b57a2fb22fed5d61a3.tar.gz
nixpkgs-a739d310c1dcfabbdbeb48b57a2fb22fed5d61a3.tar.bz2
nixpkgs-a739d310c1dcfabbdbeb48b57a2fb22fed5d61a3.tar.lz
nixpkgs-a739d310c1dcfabbdbeb48b57a2fb22fed5d61a3.tar.xz
nixpkgs-a739d310c1dcfabbdbeb48b57a2fb22fed5d61a3.tar.zst
nixpkgs-a739d310c1dcfabbdbeb48b57a2fb22fed5d61a3.zip
libucl: init at 0.8.1
Diffstat (limited to 'pkgs/development/libraries/libucl')
-rw-r--r--pkgs/development/libraries/libucl/default.nix58
1 files changed, 58 insertions, 0 deletions
diff --git a/pkgs/development/libraries/libucl/default.nix b/pkgs/development/libraries/libucl/default.nix
new file mode 100644
index 00000000000..b9b33453a4c
--- /dev/null
+++ b/pkgs/development/libraries/libucl/default.nix
@@ -0,0 +1,58 @@
+{ stdenv
+, 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";
+  version = "0.8.1";
+
+  src = fetchFromGitHub {
+    owner = "vstakhov";
+    repo = pname;
+    rev = version;
+    sha256 = "1h52ldxankyhbbm1qbqz1f2q0j03c1b4mig7343bs3mc6fpm18gf";
+  };
+
+  nativeBuildInputs = [ pkg-config autoreconfHook ];
+
+  buildInputs = with stdenv.lib;
+    concatLists (
+      mapAttrsToList (feat: enabled:
+        optionals enabled (featureDeps."${feat}" or [])
+      ) features
+    );
+
+  enableParallelBuilding = true;
+
+  configureFlags = with stdenv.lib;
+    mapAttrsToList (feat: enabled: strings.enableFeature enabled feat) features;
+
+  meta = with stdenv.lib; {
+    description = "Universal configuration library parser";
+    homepage = "https://github.com/vstakhov/libucl";
+    license = licenses.bsd2;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ jpotier ];
+  };
+}