Subject: Re: [bug#54337] [PATCH v3] gnu: Update crfys to 0.11.2

From: Brendan Tildesley <[email-masked]>
Date: Wed, 16 Mar 2022 04:03:31 +0100 (CET)

> On 03/15/2022 9:14 AM Ludovic Courtès <[email-masked]> wrote:

> Since this affect only cryfs, and since it’s just a missing include, I
> wonder if we could instead add “#include <algorithm>” in the cryfs
> source file(s) that include(s) Boost headers?  That way, we wouldn’t
> need an extra Boost build.
> 
> Thoughts?
> 
> Ludo’.

Just this one patch works:

From a5228fe860659c9bf6c410f8b57a407b30173648 Mon Sep 17 00:00:00 2001
From: Brendan Tildesley <[email-masked]>
Date: Thu, 10 Mar 2022 20:49:44 +1100
Subject: [PATCH v3] gnu: cryfs: Update to 0.11.2.

* gnu/packages/crypto.scm (cryfs): Update to 0.11.2.
[arguments]: Fix build with boost 1.77
---
 gnu/packages/crypto.scm | 15 +++++++++++----
 1 file changed, 11 insertions(+), 4 deletions(-)

diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm
index d8e7941903..cf8bc111e1 100644
--- a/gnu/packages/crypto.scm
+++ b/gnu/packages/crypto.scm
@@ -1461,7 +1461,7 @@ (define-public transcrypt
 (define-public cryfs
   (package
     (name "cryfs")
-    (version "0.11.0")
+    (version "0.11.2")
     (source
      (origin
        (method url-fetch)
@@ -1469,7 +1469,7 @@ (define-public cryfs
              "https://github.com/cryfs/cryfs/releases/download/"
              version "/cryfs-" version ".tar.xz"))
        (sha256
-        (base32 "0dxphbj5sssm82rkkdb71algrcki16qlpzlvrjyvvm6b7x7zi0sm"))))
+        (base32 "1ggizlacm4fccsw9syy2763ihxnby6cdh3mhhraxy8bmsdjza7lm"))))
     (build-system cmake-build-system)
     (arguments
      '(#:modules ((guix build cmake-build-system)
@@ -1485,7 +1485,7 @@ (define-public cryfs
                          "/cmake-utils/DependenciesFromLocalSystem.cmake"))
        #:phases
        (modify-phases %standard-phases
-         (add-before 'configure 'fix-configure
+         (add-before 'configure 'fix-up
            (lambda* (#:key tests? #:allow-other-keys)
              ;; Remove junk directory that breaks the build
              (chdir "..") (delete-file-recursively ".circleci")
@@ -1496,7 +1496,14 @@ (define-public cryfs
              (when tests?
                (substitute* "CMakeLists.txt"
                  (("option.BUILD_TESTING .build test cases. OFF.")
-                  "option(BUILD_TESTING \"build test cases\" ON)")))))
+                  "option(BUILD_TESTING \"build test cases\" ON)")))
+             ;; work around a missing import fixed upstream in boost 1.78
+             ;; See https://github.com/boostorg/process/issues/213
+             (substitute* (find-files "." "subprocess.cpp$")
+               (("#include <boost/process.hpp>.*" line)
+                (string-append
+                 "#include <algorithm>\n"
+                 line)))))
          (replace 'check
            (lambda* (#:key tests? #:allow-other-keys)
              (when tests?
-- 
2.34.0