summary refs log tree commit diff
path: root/gnu/packages/animation.scm
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2017-07-26 12:26:04 +0200
committerRicardo Wurmus <rekado@elephly.net>2017-07-26 12:27:12 +0200
commitd39238cf3d71abaacb57317499692217bf24235c (patch)
treede18216b8826892510c1a8f6b623e5c705efe86b /gnu/packages/animation.scm
parent360f6927838b74e66b8e56341db96cd661131b9f (diff)
downloadguix-d39238cf3d71abaacb57317499692217bf24235c.tar.gz
gnu: synfig: Fix boost build error.
* gnu/packages/animation.scm (synfig)[arguments]: Add phase
"fix-boost-build-error".
Diffstat (limited to 'gnu/packages/animation.scm')
-rw-r--r--gnu/packages/animation.scm10
1 files changed, 10 insertions, 0 deletions
diff --git a/gnu/packages/animation.scm b/gnu/packages/animation.scm
index 3c590950fd..faa0d17230 100644
--- a/gnu/packages/animation.scm
+++ b/gnu/packages/animation.scm
@@ -78,6 +78,16 @@ C++ @dfn{Standard Template Library} (STL).")
                             "/lib"))
        #:phases
        (modify-phases %standard-phases
+         (add-after 'unpack 'fix-boost-build-error
+           ;; A chain of Boost headers leads to this error: "make_array" is
+           ;; not a member of "boost::serialization".  This can be avoided by
+           ;; loading the "array_wrapper" header first.
+           (lambda _
+             (substitute* "src/synfig/valuenodes/valuenode_dynamic.cpp"
+               (("#include <boost/numeric/odeint/integrate/integrate.hpp>" match)
+                (string-append
+                 "#include <boost/serialization/array_wrapper.hpp>\n" match)))
+             #t))
          (add-after 'unpack 'adapt-to-libxml++-changes
           (lambda _
             (substitute* "configure"