parent
cbfc5b5642
commit
dcfd6141c1
@ -1,48 +0,0 @@ |
||||
{ gccStdenv |
||||
, fetchFromGitHub |
||||
, fetchpatch |
||||
, cmake |
||||
}: |
||||
let |
||||
stdenv = gccStdenv; # Darwin is clang by default and it doesn't work for this. |
||||
in |
||||
stdenv.mkDerivation rec { |
||||
pname = "libprom"; |
||||
version = "0.1.1"; |
||||
|
||||
src = fetchFromGitHub { |
||||
owner = "digitalocean"; |
||||
repo = "prometheus-client-c"; |
||||
rev = "v${version}"; |
||||
sha256 = "0g69s24xwrv5974acshrhnp6i8rpby8c6bhz15m3d8kpgjw3cm8f"; |
||||
}; |
||||
|
||||
nativeBuildInputs = [ cmake ]; |
||||
doCheck = false; |
||||
|
||||
patches = [ |
||||
# Required so CMAKE_INSTALL_PREFIX is honored, otherwise it |
||||
# installs headers in /usr/include (absolute) |
||||
(fetchpatch { |
||||
url = "https://github.com/digitalocean/prometheus-client-c/commit/5fcedeb506b7d47dd7bab35797f2c3f23db6fe10.patch"; |
||||
sha256 = "10hzg8v5jcgxz224kdq0nha9vs78wz098b0ys7gig2iwgrg018fy"; |
||||
}) |
||||
(fetchpatch { |
||||
url = "https://github.com/digitalocean/prometheus-client-c/commit/0c15e7e45ad0c3726593591fdd7d8f2fde845fe3.patch"; |
||||
sha256 = "06899v1xz3lpsdxww4p3q7pv8nrymnibncdc472056znr5fidlp0"; |
||||
}) |
||||
]; |
||||
|
||||
preConfigure = '' |
||||
cd prom |
||||
''; |
||||
|
||||
meta = { |
||||
homepage = "https://github.com/digitalocean/prometheus-client-c/"; |
||||
description = "A Prometheus Client in C"; |
||||
platforms = stdenv.lib.platforms.unix; |
||||
license = stdenv.lib.licenses.asl20; |
||||
maintainers = [ stdenv.lib.maintainers.cfsmp3 ]; |
||||
}; |
||||
|
||||
} |
@ -0,0 +1,71 @@ |
||||
{ stdenv |
||||
, fetchFromGitHub |
||||
, fetchpatch |
||||
, cmake |
||||
, libmicrohttpd |
||||
}: |
||||
let |
||||
build = |
||||
{ pname |
||||
, subdir |
||||
, buildInputs ? [ ] |
||||
, description |
||||
}: |
||||
stdenv.mkDerivation rec { |
||||
inherit pname; |
||||
version = "0.1.1"; |
||||
|
||||
src = fetchFromGitHub { |
||||
owner = "digitalocean"; |
||||
repo = "prometheus-client-c"; |
||||
rev = "v${version}"; |
||||
sha256 = "0g69s24xwrv5974acshrhnp6i8rpby8c6bhz15m3d8kpgjw3cm8f"; |
||||
}; |
||||
|
||||
nativeBuildInputs = [ cmake ]; |
||||
inherit buildInputs; |
||||
|
||||
# These patches will be in 0.1.2 |
||||
patches = [ |
||||
# Required so CMAKE_INSTALL_PREFIX is honored, otherwise it |
||||
# installs headers in /usr/include (absolute) |
||||
( |
||||
fetchpatch { |
||||
url = "https://github.com/digitalocean/prometheus-client-c/commit/5fcedeb506b7d47dd7bab35797f2c3f23db6fe10.patch"; |
||||
sha256 = "10hzg8v5jcgxz224kdq0nha9vs78wz098b0ys7gig2iwgrg018fy"; |
||||
} |
||||
) |
||||
( |
||||
fetchpatch { |
||||
url = "https://github.com/digitalocean/prometheus-client-c/commit/0c15e7e45ad0c3726593591fdd7d8f2fde845fe3.patch"; |
||||
sha256 = "06899v1xz3lpsdxww4p3q7pv8nrymnibncdc472056znr5fidlp0"; |
||||
} |
||||
) |
||||
]; |
||||
|
||||
preConfigure = '' |
||||
cd ${subdir} |
||||
''; |
||||
|
||||
meta = { |
||||
homepage = "https://github.com/digitalocean/prometheus-client-c/"; |
||||
inherit description; |
||||
platforms = stdenv.lib.platforms.unix; |
||||
license = stdenv.lib.licenses.asl20; |
||||
maintainers = [ stdenv.lib.maintainers.cfsmp3 ]; |
||||
}; |
||||
}; |
||||
in |
||||
rec { |
||||
libprom = build { |
||||
pname = "libprom"; |
||||
subdir = "prom"; |
||||
description = "A Prometheus Client in C"; |
||||
}; |
||||
libpromhttp = build { |
||||
pname = "libpromhttp"; |
||||
subdir = "promhttp"; |
||||
buildInputs = [ libmicrohttpd libprom ]; |
||||
description = "A Prometheus HTTP Endpoint in C"; |
||||
}; |
||||
} |
Loading…
Reference in new issue