nixpkgs/pkgs/by-name/li/libcpr/package.nix
Robert Helgesson c858402c2a libcpr: 1.10.5 -> 1.11.0
Also introduce `libcpr_1_10_5` for use by influxdb-cxx, which is
incompatible with the new version. The 1.10.5 is to be removed when
influxdb-cxx is updated.

Finally migrate package to `by-name`.
2024-10-18 08:41:56 +02:00

57 lines
1.1 KiB
Nix

{
lib,
stdenv,
fetchFromGitHub,
cmake,
curl,
staticOnly ? stdenv.hostPlatform.isStatic,
}:
let
version = "1.11.0";
in
stdenv.mkDerivation {
pname = "libcpr";
inherit version;
outputs = [
"out"
"dev"
];
src = fetchFromGitHub {
owner = "libcpr";
repo = "cpr";
rev = version;
hash = "sha256-jWyss0krj8MVFqU1LAig+4UbXO5pdcWIT+hCs9DxemM=";
};
nativeBuildInputs = [ cmake ];
propagatedBuildInputs = [ curl ];
cmakeFlags = [
"-DBUILD_SHARED_LIBS=${if staticOnly then "OFF" else "ON"}"
"-DCPR_USE_SYSTEM_CURL=ON"
];
postPatch = ''
# Linking with stdc++fs is no longer necessary.
sed -i '/stdc++fs/d' include/CMakeLists.txt
'';
postInstall = ''
substituteInPlace "$out/lib/cmake/cpr/cprTargets.cmake" \
--replace "_IMPORT_PREFIX \"$out\"" \
"_IMPORT_PREFIX \"$dev\""
'';
meta = with lib; {
description = "C++ wrapper around libcurl";
homepage = "https://docs.libcpr.org/";
license = licenses.mit;
maintainers = with maintainers; [ rycee ];
platforms = platforms.all;
};
}