about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/toml11/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/toml11/default.nix')
-rw-r--r--nixpkgs/pkgs/development/libraries/toml11/default.nix47
1 files changed, 47 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/toml11/default.nix b/nixpkgs/pkgs/development/libraries/toml11/default.nix
new file mode 100644
index 000000000000..641b72aa1e8c
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/toml11/default.nix
@@ -0,0 +1,47 @@
+{ lib
+, stdenv
+, fetchFromGitHub
+, cmake
+}:
+
+stdenv.mkDerivation (finalAttrs: {
+  pname = "toml11";
+  version = "3.7.1";
+
+  src = fetchFromGitHub {
+    owner = "ToruNiina";
+    repo = "toml11";
+    rev = "v${finalAttrs.version}";
+    hash = "sha256-HnhXBvIjo1JXhp+hUQvjs83t5IBVbNN6o3ZGhB4WESQ=";
+  };
+
+  nativeBuildInputs = [
+    cmake
+  ];
+
+  meta = with lib; {
+    homepage = "https://github.com/ToruNiina/toml11";
+    description = "TOML for Modern C++";
+    longDescription = ''
+      toml11 is a C++11 (or later) header-only toml parser/encoder depending
+      only on C++ standard library.
+
+      - It is compatible to the latest version of TOML v1.0.0.
+      - It is one of the most TOML standard compliant libraries, tested with
+        the language agnostic test suite for TOML parsers by BurntSushi.
+      - It shows highly informative error messages.
+      - It has configurable container. You can use any random-access containers
+        and key-value maps as backend containers.
+      - It optionally preserves comments without any overhead.
+      - It has configurable serializer that supports comments, inline tables,
+        literal strings and multiline strings.
+      - It supports user-defined type conversion from/into toml values.
+      - It correctly handles UTF-8 sequences, with or without BOM, both on posix
+        and Windows.
+    '';
+    license = licenses.mit;
+    maintainers = with maintainers; [ AndersonTorres ];
+    platforms = platforms.unix;
+  };
+})
+# TODO [ AndersonTorres ]: tests