about summary refs log tree commit diff
path: root/pkgs/servers/rippled
diff options
context:
space:
mode:
authorSergei Trofimovich <slyich@gmail.com>2024-02-25 12:43:42 +0000
committerSergei Trofimovich <slyich@gmail.com>2024-02-25 12:43:42 +0000
commita799f841be804fa23c18dbffed972973acb26106 (patch)
tree91eb217b27ae6c14152172caf02ed515c0340fa6 /pkgs/servers/rippled
parentad87500e1bc8fe24bef694a66974a1416152ae16 (diff)
rippled: fix `gcc-13` build failure
Without the change the build fails on `master` as
https://hydra.nixos.org/build/246448950:

    In file included from /build/rippled/src/test/basics/base64_test.cpp:29,
                     from /build/rippled/build/CMakeFiles/rippled.dir/Unity/unity_23_cxx.cxx:4:
    /build/rippled/src/ripple/basics/base64.h:65:20: error: 'uint8_t' is not a member of 'std'; did you mean 'wint_t'?
       65 | base64_encode(std::uint8_t const* data, std::size_t len);
          |                    ^~~~~~~
          |                    wint_t
Diffstat (limited to 'pkgs/servers/rippled')
-rw-r--r--pkgs/servers/rippled/default.nix13
1 files changed, 12 insertions, 1 deletions
diff --git a/pkgs/servers/rippled/default.nix b/pkgs/servers/rippled/default.nix
index e1ad55a41d38d..83ceee00f45f7 100644
--- a/pkgs/servers/rippled/default.nix
+++ b/pkgs/servers/rippled/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchgit, fetchurl, git, cmake, pkg-config
+{ lib, stdenv, fetchgit, fetchurl, fetchpatch, git, cmake, pkg-config
 , openssl, boost, grpc, protobuf, libnsl, rocksdb_6_23, snappy }:
 
 let
@@ -100,6 +100,17 @@ in stdenv.mkDerivation rec {
     hash = "sha256-VW/VmnhtF2xyHfEud3D6b3n8uTE0a/nDW1GISs5QfwM=";
   };
 
+  patches = [
+    # Fix gcc-13 build due to missing <cstdint> includes:
+    #   https://github.com/XRPLF/rippled/pull/4555
+    (fetchpatch {
+      name = "gcc-13.patch";
+      url  = "https://github.com/XRPLF/rippled/commit/c9a586c2437bc8ffd22e946c82e1cbe906e1fc40.patch";
+      hash = "sha256-+4BDTMFoQWUHljgwGB1gtczVPQH/U5MA0ojbnBykceg=";
+      excludes = [ "src/ripple/basics/StringUtilities.h" ];
+    })
+  ];
+
   hardeningDisable = ["format"];
   cmakeFlags = ["-Dstatic=OFF" "-DBoost_NO_BOOST_CMAKE=ON" "-DSNAPPY_INCLUDE_DIR=${snappy}/include" ];