nixpkgs/pkgs/development/libraries/prometheus-cpp/default.nix
Matthias Treydte 252608fbbb prometheus-cpp: fix use with CMake and clean up
The derivation did not properly propagate it's
dependency on civetweb, causing dependent CMake
derivations not to find it. So just move it to
propagatedBuildInputs instead of messing with
the cmakeFlags.

Also, split off "dev" so we don't carry around
the headers as a runtime dependency.
2022-03-22 13:42:00 -07:00

47 lines
902 B
Nix

{ lib
, stdenv
, fetchFromGitHub
, cmake
, gbenchmark
, gtest
, civetweb
, zlib
, curl
}:
stdenv.mkDerivation rec {
pname = "prometheus-cpp";
version = "1.0.0";
src = fetchFromGitHub {
owner = "jupp0r";
repo = pname;
rev = "v${version}";
sha256 = "L6CXRup3kU1lY5UnwPbaOwEtCeAySNmFCPmHwsk6cRE=";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ gbenchmark gtest zlib curl ];
propagatedBuildInputs = [ civetweb ];
strictDeps = true;
cmakeFlags = [
"-DUSE_THIRDPARTY_LIBRARIES=OFF"
"-DBUILD_SHARED_LIBS=ON"
];
outputs = [ "out" "dev" ];
postInstall = ''
mkdir -p $dev/lib/pkgconfig
substituteAll ${./prometheus-cpp.pc.in} $dev/lib/pkgconfig/prometheus-cpp.pc
'';
meta = {
description = "Prometheus Client Library for Modern C++";
homepage = "https://github.com/jupp0r/prometheus-cpp";
license = [ lib.licenses.mit ];
};
}