diff options
Diffstat (limited to 'gnu')
-rw-r--r-- | gnu/local.mk | 1 | ||||
-rw-r--r-- | gnu/packages/patches/ceph-fix-for-newer-boost.patch | 50 | ||||
-rw-r--r-- | gnu/packages/storage.scm | 7 |
3 files changed, 55 insertions, 3 deletions
diff --git a/gnu/local.mk b/gnu/local.mk index c2027f9eeb..9fdad12b63 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1046,6 +1046,7 @@ dist_patch_DATA = \ %D%/packages/patches/cdrkit-libre-cross-compile.patch \ %D%/packages/patches/cdrtools-3.01-mkisofs-isoinfo.patch \ %D%/packages/patches/ceph-disable-cpu-optimizations.patch \ + %D%/packages/patches/ceph-fix-for-newer-boost.patch \ %D%/packages/patches/cf-tool-add-languages.patch \ %D%/packages/patches/chmlib-inttypes.patch \ %D%/packages/patches/cl-asdf-config-directories.patch \ 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()); diff --git a/gnu/packages/storage.scm b/gnu/packages/storage.scm index ab7eb6102c..919b72736b 100644 --- a/gnu/packages/storage.scm +++ b/gnu/packages/storage.scm @@ -63,17 +63,18 @@ (define-public ceph (package (name "ceph") - (version "17.2.5") + (version "17.2.7") (source (origin (method url-fetch) (uri (string-append "https://download.ceph.com/tarballs/ceph-" version ".tar.gz")) (sha256 (base32 - "16mjj6cyrpdn49ig82mmrv984vqfdf24d6i4n9sghfli8z0nj8in")) + "1612424yrf39dz010ygz8k5x1vc8731549ckfj1r39dg00m62klp")) (patches (search-patches - "ceph-disable-cpu-optimizations.patch")) + "ceph-disable-cpu-optimizations.patch" + "ceph-fix-for-newer-boost.patch" )) (modules '((guix build utils))) (snippet '(for-each delete-file-recursively |