From 40f8d8b2569f11e0be3f734efd74f5e5e0b96ab5 Mon Sep 17 00:00:00 2001 From: Elliot Cameron Date: Fri, 21 Apr 2023 00:39:40 -0400 Subject: [PATCH] jsoncpp: fix enableStatic The workaround is no longer needed for static builds. --- pkgs/development/libraries/jsoncpp/default.nix | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/pkgs/development/libraries/jsoncpp/default.nix b/pkgs/development/libraries/jsoncpp/default.nix index 41e9a2d0a03..59572afc627 100644 --- a/pkgs/development/libraries/jsoncpp/default.nix +++ b/pkgs/development/libraries/jsoncpp/default.nix @@ -40,19 +40,13 @@ stdenv.mkDerivation rec { "-DBUILD_SHARED_LIBS=ON" "-DBUILD_OBJECT_LIBS=OFF" "-DJSONCPP_WITH_CMAKE_PACKAGE=ON" + "-DBUILD_STATIC_LIBS=${if enableStatic then "ON" else "OFF"}" ] # the test's won't compile if secureMemory is used because there is no # comparison operators and conversion functions between # std::basic_string<..., Json::SecureAllocator> vs. # std::basic_string<..., [default allocator]> - ++ lib.optional ((stdenv.buildPlatform != stdenv.hostPlatform) || secureMemory) "-DJSONCPP_WITH_TESTS=OFF" - ++ lib.optional (!enableStatic) "-DBUILD_STATIC_LIBS=OFF"; - - # this is fixed and no longer necessary in 1.9.5 but there they use - # memset_s without switching to a different c++ standard in the cmake files - postInstall = lib.optionalString enableStatic '' - (cd $out/lib && ln -sf libjsoncpp_static.a libjsoncpp.a) - ''; + ++ lib.optional ((stdenv.buildPlatform != stdenv.hostPlatform) || secureMemory) "-DJSONCPP_WITH_TESTS=OFF"; meta = with lib; { homepage = "https://github.com/open-source-parsers/jsoncpp";