Package: guix-patches;
Reported by: Andy Tai <atai <at> atai.org>
Date: Mon, 12 Jun 2023 08:04:02 UTC
Severity: normal
Tags: patch
Done: Andreas Enge <andreas <at> enge.fr>
Bug is archived. No further changes may be made.
View this message in rfc822 format
From: Andy Tai <atai <at> atai.org> To: 64012 <at> debbugs.gnu.org, liliana.prikler <at> gmail.com Cc: Andy Tai <atai <at> atai.org> Subject: [bug#64012] [PATCH v3] gnu: libxml2: Add version 2.11.4 Date: Mon, 12 Jun 2023 22:01:00 -0700
* gnu/packages/xml.scm (libxml2-next): Version 2.11.4 as new variable (python-libxml2-next): Version 2.11.4 as new variable * gnu/packages/glib.scm (itstool) [inputs]: Switch to libxml2-next and python-libxml2-next --- gnu/packages/glib.scm | 5 +++- gnu/packages/xml.scm | 64 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 68 insertions(+), 1 deletion(-) diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index e988e8dc87..40dbd8f951 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -674,7 +674,10 @@ (define itstool "1jl7gsr7aclb9nvqazr039m86y7f7ivfhl2pixcrbfqjkb97r6kb")))) (build-system gnu-build-system) (inputs - (list libxml2 python-libxml2 python)) + (list libxml2-next python-libxml2-next python)) + ;; libxml2-next contains upstream fix for crash on UTF-8 data + ;; https://gitlab.gnome.org/GNOME/libxml2/-/commit/76c6da420923f2721a2e16adfcef8707a2454a1b + ;; so we change dependency to the new libxml2 version (arguments (list #:phases diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 8d9974b825..74976f7402 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -191,6 +191,9 @@ (define-public libxml2 (sha256 (base32 "1vnzk33wfms348lgz9pvkq9li7jm44pvm73lbr3w1khwgljlmmv0")))) + ;; TODO: remove once migrated to libxml2-next as upstream has + ;; proper fix in libxml2 2.11.4 + ;; defined as libxml2-next below for now (build-system gnu-build-system) (outputs '("out" "static" "doc")) (arguments @@ -249,6 +252,25 @@ (define-public libxml2-xpath0 provides an @code{--xpath0} option to @command{xmllint} that enables it to output XPath results with a null delimiter."))) + +;; libxml2-next contains upstream fix for itstool crash on UTF-8 data +;; https://gitlab.gnome.org/GNOME/libxml2/-/commit/76c6da420923f2721a2e16adfcef8707a2454a1b +;; so we need to being in the new libxml2 version +;; for itstool to depend on to avoid crash +(define-public libxml2-next + (package/inherit libxml2 + (version "2.11.4") + (source (origin + (method url-fetch) + (uri (string-append + "https://download.gnome.org/sources/libxml2/" + (version-major+minor version) "/libxml2-" version + ".tar.xz")) + (sha256 (base32 + "1xspgyswllk26g7jg95pnkfk1gqpzna28fm1kir3kwdki9ziszkk")))) + (native-inputs (list perl python-minimal-wrapper pkg-config)))) + + (define-public python-libxml2 (package/inherit libxml2 (name "python-libxml2") @@ -278,6 +300,48 @@ (define-public python-libxml2 (inputs (list libxml2)) (synopsis "Python bindings for the libxml2 library"))) +(define-public python-libxml2-next + (package/inherit python-libxml2 + (version "2.11.4") + (source (origin + (method url-fetch) + (uri (string-append + "https://download.gnome.org/sources/libxml2/" + (version-major+minor version) "/libxml2-" version + ".tar.xz")) + (sha256 (base32 + "1xspgyswllk26g7jg95pnkfk1gqpzna28fm1kir3kwdki9ziszkk")))) + + (native-inputs (list pkg-config + autoconf-wrapper + automake + libtool + perl + python-minimal-wrapper)) + ;; needed to generate setup.py + + (arguments (list + ;; XXX: Tests are specified in 'Makefile.am', but not in 'setup.py'. + #:tests? #f + #:phases #~(modify-phases %standard-phases + (add-after 'unpack 'set-env + (lambda _ + (setenv "CONFIG_SHELL" + (which "sh")) #t)) + (add-before 'build 'configure + (lambda* (#:key inputs #:allow-other-keys) + (invoke "sh" "autogen.sh") + (chdir "python") + (let ((libxml2-headers (search-input-directory + inputs + "include/libxml2"))) + (substitute* "setup.py" + ;; The build system ignores C_INCLUDE_PATH & co, so + ;; provide the absolute directory name. + (("/opt/include") + (dirname libxml2-headers))))))))) + (inputs (list libxml2-next)))) + (define-public libxlsxwriter (package (name "libxlsxwriter") base-commit: 6fe9a004dba2d4ddf69ff6f1714af15ffaa7e62a -- 2.40.1
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.