gnu: python-libxml2, itstool: Provide crash-free variants.

Fixes <https://bugs.gnu.org/37468>.

* gnu/packages/patches/python-libxml2-utf8.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/xml.scm (python-libxml2/fixed): New variable.
* gnu/packages/glib.scm (itstool/fixed): New variable.
* gnu/packages/gnome.scm (gnumeric)[native-inputs]: Use ITSTOOL/FIXED
instead of ITSTOOL.
This commit is contained in:
Ludovic Courtès 2019-09-20 12:21:19 +02:00
parent fb1d8d2baa
commit 3a2efbc867
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5
5 changed files with 67 additions and 2 deletions

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
@ -164,6 +164,7 @@ project (but it is usable outside of the Gnome platform).")
(license license:x11)))
(define-public python-libxml2
;; TODO: Merge with 'python-libxml2/fixed' on the next rebuild cycle.
(package/inherit libxml2
(name "python-libxml2")
(build-system python-build-system)
@ -191,6 +192,18 @@ project (but it is usable outside of the Gnome platform).")
(inputs `(("libxml2" ,libxml2)))
(synopsis "Python bindings for the libxml2 library")))
(define-public python-libxml2/fixed
;; This variant fixes a crash when processing UTF-8 sequences:
;; <https://bugs.gnu.org/37468>
;; TODO: Merge with 'python-libxml2' on the next rebuild cycle.
(package/inherit
python-libxml2
(version (string-append (package-version python-libxml2) "-1"))
(source (origin
(inherit (package-source libxml2))
(patches (cons (search-patch "python-libxml2-utf8.patch")
(origin-patches (package-source libxml2))))))))
(define-public python2-libxml2
(package-with-python2 python-libxml2))