diff options
author | Yann Dupont <Yann.Dupont@univ-nantes.fr> | 2024-09-27 23:07:31 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2024-09-28 00:20:18 +0200 |
commit | 05949855559bc016c0a79b78cef5371dcc4811c6 (patch) | |
tree | d4103cfff28c70272c2d17095e051da452340ce6 /gnu/packages/patches | |
parent | b5303183ef865a243f7746a7c19c1a98ad0fa242 (diff) |
gnu: ceph: Update to 17.2.7.
Fixes a build failure introduced with newer versions of Boost.
* gnu/packages/patches/ceph-fix-for-newer-boost.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/storage.scm (ceph): Update to 17.2.7. Use the patch.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
Change-Id: I00f2d369d7a86926b00c680d5ab0fe8044ca9065
Diffstat (limited to 'gnu/packages/patches')
-rw-r--r-- | gnu/packages/patches/ceph-fix-for-newer-boost.patch | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/gnu/packages/patches/ceph-fix-for-newer-boost.patch b/gnu/packages/patches/ceph-fix-for-newer-boost.patch new file mode 100644 index 0000000000..faf1c6b69d --- /dev/null +++ b/gnu/packages/patches/ceph-fix-for-newer-boost.patch @@ -0,0 +1,50 @@ +Adjust to newer Boost interface. + +--- a/src/rgw/rgw_asio_client.cc 1970-01-01 01:00:01.000000000 +0100 ++++ b/src/rgw/rgw_asio_client.cc 2024-09-11 08:33:21.723548804 +0200 +@@ -39,11 +39,11 @@ + const auto& value = header->value(); + + if (field == beast::http::field::content_length) { +- env.set("CONTENT_LENGTH", value.to_string()); ++ env.set("CONTENT_LENGTH", std::string(value)); + continue; + } + if (field == beast::http::field::content_type) { +- env.set("CONTENT_TYPE", value.to_string()); ++ env.set("CONTENT_TYPE", std::string(value)); + continue; + } + +@@ -62,26 +62,26 @@ + } + *dest = '\0'; + +- env.set(buf, value.to_string()); ++ env.set(buf, std::string(value)); + } + + int major = request.version() / 10; + int minor = request.version() % 10; + env.set("HTTP_VERSION", std::to_string(major) + '.' + std::to_string(minor)); + +- env.set("REQUEST_METHOD", request.method_string().to_string()); ++ env.set("REQUEST_METHOD", std::string(request.method_string())); + + // split uri from query + auto uri = request.target(); + auto pos = uri.find('?'); + if (pos != uri.npos) { + auto query = uri.substr(pos + 1); +- env.set("QUERY_STRING", query.to_string()); ++ env.set("QUERY_STRING", std::string(query)); + uri = uri.substr(0, pos); + } +- env.set("SCRIPT_URI", uri.to_string()); ++ env.set("SCRIPT_URI", std::string(uri)); + +- env.set("REQUEST_URI", request.target().to_string()); ++ env.set("REQUEST_URI", std::string(request.target())); + + char port_buf[16]; + snprintf(port_buf, sizeof(port_buf), "%d", local_endpoint.port()); |