gnu: synfig: Update to 1.4.4.

* gnu/packages/animation.scm (synfig): Update to 1.4.4.
[inputs]: Drop labels; remove ffmpeg.
[propagated-inputs]: Drop labels; add ffmpeg-4; replace glibmm with
glibmm-2.64; replace libxml++ with libxml++-2.
[arguments]: Remove.
This commit is contained in:
Ricardo Wurmus 2023-01-03 23:10:57 +01:00
parent 7957fdb88c
commit 5c08ed0939
No known key found for this signature in database
GPG key ID: 197A5888235FACAC

View file

@ -123,68 +123,37 @@ (define-public synfig
(version synfig-version) (version synfig-version)
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://sourceforge/synfig/releases/" (uri (string-append "https://github.com/synfig/synfig"
version "/source/synfig-" version "/releases/download/v" version
".tar.gz")) "/synfig-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1vy27kl68sbg41sfasa58k3p2nc1xfalvzk3k9gich9h90rpnpsz")))) "01kgfmjfjk5y0v9ldmxzc8zzvbiaakz7nzg4hkj24gj3j6h8566d"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments
`(#:configure-flags
;; The Boost library path is taken from the value of BOOST_LDFLAGS.
(list (string-append "BOOST_LDFLAGS=-L"
(assoc-ref %build-inputs "boost")
"/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"
(("libxml\\+\\+-2\\.6") "libxml++-3.0"))
(substitute* (append (find-files "src/modules/" "\\.cpp$")
(find-files "src/synfig/" "\\.(cpp|h)$"))
(("add_child\\(") "add_child_element(")
(("get_child_text\\(") "get_first_child_text(")
(("set_child_text\\(") "set_first_child_text(")
(("remove_child\\(") "remove_node("))
(substitute* "src/modules/mod_svg/svg_parser.cpp"
(("xmlpp::Node::NodeList") "xmlpp::Node::const_NodeList"))
#t)))))
(inputs (inputs
`(("boost" ,boost) (list boost
("ffmpeg" ,ffmpeg) libdv
("libdv" ,libdv) libjpeg-turbo
("libjpeg" ,libjpeg-turbo) libpng
("libpng" ,libpng) libmng
("libmng" ,libmng) zlib))
("zlib" ,zlib))) ;; synfig.pc lists the following as required: Magick++ libavcodec
;; synfig.pc lists the following as required: Magick++ freetype2 ;; libavformat libswscale freetype2 fontconfig OpenEXR ETL glibmm-2.4
;; fontconfig fftw OpenEXR ETL glibmm-2.4 giomm-2.4 libxml++-3.0 sigc++-2.0 ;; giomm-2.4 libxml++-2.6 sigc++-2.0 cairo fftw3 pango pangocairo mlt++
;; cairo pango pangocairo mlt++
(propagated-inputs (propagated-inputs
`(("cairo" ,cairo) (list cairo
("etl" ,etl) etl
("fftw" ,fftw) ffmpeg-4
("fontconfig" ,fontconfig) fftw
("freetype" ,freetype) fontconfig
("glibmm" ,glibmm) freetype
("imagemagick" ,imagemagick) glibmm-2.64
("libxml++" ,libxml++) imagemagick
("libsigc++" ,libsigc++) libxml++-2
("mlt" ,mlt-6) libsigc++
("openexr" ,openexr-2) mlt-6
("pango" ,pango))) openexr-2
pango))
(native-inputs (native-inputs
(list intltool pkg-config)) (list intltool pkg-config))
(home-page "https://www.synfig.org") (home-page "https://www.synfig.org")