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
This commit is contained in:
Sergei Trofimovich 2024-02-25 12:43:42 +00:00
parent ad87500e1b
commit a799f841be

View File

@ -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" ];