about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/spdlog
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/spdlog')
-rw-r--r--nixpkgs/pkgs/development/libraries/spdlog/default.nix57
1 files changed, 57 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/spdlog/default.nix b/nixpkgs/pkgs/development/libraries/spdlog/default.nix
new file mode 100644
index 000000000000..ac74b74ccf1e
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/spdlog/default.nix
@@ -0,0 +1,57 @@
+{ lib, stdenv, fetchFromGitHub, cmake, fmt }:
+
+let
+  generic = { version, sha256 }:
+    stdenv.mkDerivation {
+      pname = "spdlog";
+      inherit version;
+
+      src = fetchFromGitHub {
+        owner  = "gabime";
+        repo   = "spdlog";
+        rev    = "v${version}";
+        inherit sha256;
+      };
+
+      nativeBuildInputs = [ cmake ];
+      buildInputs = [ fmt ];
+
+      cmakeFlags = [
+        "-DSPDLOG_BUILD_SHARED=${if stdenv.hostPlatform.isStatic then "OFF" else "ON"}"
+        "-DSPDLOG_BUILD_STATIC=${if stdenv.hostPlatform.isStatic then "ON" else "OFF"}"
+        "-DSPDLOG_BUILD_EXAMPLE=OFF"
+        "-DSPDLOG_BUILD_BENCH=OFF"
+        "-DSPDLOG_BUILD_TESTS=ON"
+        "-DSPDLOG_FMT_EXTERNAL=ON"
+      ];
+
+      outputs = [ "out" "doc" ];
+
+      postInstall = ''
+        mkdir -p $out/share/doc/spdlog
+        cp -rv ../example $out/share/doc/spdlog
+      '';
+
+      doCheck = true;
+      preCheck = "export LD_LIBRARY_PATH=$(pwd):$LD_LIBRARY_PATH";
+
+      meta = with lib; {
+        description    = "Very fast, header only, C++ logging library";
+        homepage       = "https://github.com/gabime/spdlog";
+        license        = licenses.mit;
+        maintainers    = with maintainers; [ obadz ];
+        platforms      = platforms.all;
+      };
+    };
+in
+{
+  spdlog_1 = generic {
+    version = "1.8.1";
+    sha256 = "sha256-EyZhYgcdtZC+vsOUKShheY57L0tpXltduHWwaoy6G9k=";
+  };
+
+  spdlog_0 = generic {
+    version = "0.17.0";
+    sha256 = "112kfh4fbpm5cvrmgbgz4d8s802db91mhyjpg7cwhlywffnzkwr9";
+  };
+}