diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/gtest')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/gtest/default.nix | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/nixpkgs/pkgs/development/libraries/gtest/default.nix b/nixpkgs/pkgs/development/libraries/gtest/default.nix index 049d202a71ec..80013e3613d0 100644 --- a/nixpkgs/pkgs/development/libraries/gtest/default.nix +++ b/nixpkgs/pkgs/development/libraries/gtest/default.nix @@ -1,4 +1,10 @@ -{ lib, stdenv, cmake, ninja, fetchFromGitHub }: +{ lib +, stdenv +, fetchFromGitHub +, cmake +, ninja +, static ? stdenv.hostPlatform.isStatic, +}: stdenv.mkDerivation rec { pname = "gtest"; @@ -19,7 +25,16 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ cmake ninja ]; - cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" ]; + cmakeFlags = [ + "-DBUILD_SHARED_LIBS=${if static then "OFF" else "ON"}" + ] ++ lib.optionals ( + (stdenv.cc.isGNU && (lib.versionOlder stdenv.cc.version "11.0")) + || (stdenv.cc.isClang && (lib.versionOlder stdenv.cc.version "16.0")) + ) [ + # Enable C++17 support + # https://github.com/google/googletest/issues/3081 + "-DCMAKE_CXX_STANDARD=17" + ]; meta = with lib; { description = "Google's framework for writing C++ tests"; |