core/pkgs/by-name/ab/abseil-cpp/202301.nix

48 lines
1.2 KiB
Nix
Raw Normal View History

2024-06-30 08:12:46 +00:00
{
lib,
stdenv,
fetchFromGitHub,
cmake,
gtest,
static ? stdenv.hostPlatform.isStatic,
cxxStandard ? null,
2024-05-02 00:46:19 +00:00
}:
stdenv.mkDerivation (finalAttrs: {
pname = "abseil-cpp";
version = "20230125.4";
src = fetchFromGitHub {
owner = "abseil";
repo = "abseil-cpp";
rev = "refs/tags/${finalAttrs.version}";
hash = "sha256-7C/QIXYRyUyNVVE0tqmv8b5g/uWc58iBI5jzdtddQ+U=";
};
patches = lib.optionals stdenv.isDarwin [
# Dont propagate the path to CoreFoundation. Otherwise, its impossible to build packages
# that require a different SDK other than the default one.
./cmake-core-foundation.patch
];
cmakeFlags = [
"-DABSL_BUILD_TEST_HELPERS=ON"
"-DABSL_USE_EXTERNAL_GOOGLETEST=ON"
"-DBUILD_SHARED_LIBS=${if static then "OFF" else "ON"}"
2024-06-30 08:12:46 +00:00
] ++ lib.optionals (cxxStandard != null) [ "-DCMAKE_CXX_STANDARD=${cxxStandard}" ];
2024-05-02 00:46:19 +00:00
strictDeps = true;
nativeBuildInputs = [ cmake ];
buildInputs = [ gtest ];
meta = with lib; {
description = "An open-source collection of C++ code designed to augment the C++ standard library";
homepage = "https://abseil.io/";
license = licenses.asl20;
platforms = platforms.all;
maintainers = [ maintainers.andersk ];
};
})