Subject: [bug#63449] [PATCH 3/3] gnu: f3d: Update to 2.0.0.

From: Greg Hogan <[email-masked]>
Date: Thu, 11 May 2023 19:41:37 +0000

* gnu/packages/graphics.scm (f3d): Update to 2.0.0.
[source]: Update substitute paths and add patch for breaking change to
cxxopts.
---
 gnu/packages/graphics.scm | 13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
index 8aff3b075e..6f2d8f7fa0 100644
--- a/gnu/packages/graphics.scm
+++ b/gnu/packages/graphics.scm
@@ -2483,7 +2483,7 @@ (define-public mmg
 (define-public f3d
   (package
     (name "f3d")
-    (version "1.3.1")
+    (version "2.0.0")
     (source
      (origin
        (method git-fetch)
@@ -2492,16 +2492,21 @@ (define-public f3d
              (commit (string-append "v" version))))
        (file-name (git-file-name name version))
        (sha256
-        (base32 "0hdfgwf5d24ykab634xg4vv9r09nh96ss7hhnqnh5nmw4abhxzg7"))
+        (base32 "1gcwpdkz3ylaxi133zri1cxkvj6za5s1hbgqqc8fn10q2dkkdd44"))
        (modules '((guix build utils)))
        (snippet
         #~(begin
-            (delete-file "application/cxxopts.hpp")
-            (delete-file "application/json.hpp")
+            (delete-file "external/cxxopts.hpp")
+            (delete-file "external/json.hpp")
             (substitute* "application/F3DOptionsParser.cxx"
               (("^#include \"cxxopts\\.hpp\"")
                "#include <cxxopts.hpp>")
               (("^#include \"json\\.hpp\"")
+               "#include <nlohmann/json.hpp>")
+              (("cxxopts::OptionException")
+               "cxxopts::exceptions::parsing"))
+            (substitute* "library/src/engine.cxx"
+              (("^#include <json\\.hpp>")
                "#include <nlohmann/json.hpp>"))))))
     (build-system cmake-build-system)
     ;; The package cannot easily be split into out and lib outputs because
-- 
2.40.1