From 19686fea5913454e411f9e230d1f641bfd5bf52a Mon Sep 17 00:00:00 2001 From: Britney Fransen Date: Tue, 13 Feb 2018 21:14:14 +0000 Subject: libxml2: update to 2.9.7+4 --- abs/core/libxml2/PKGBUILD | 58 +++++++++++++++------- .../libxml2/libxml2-2.9.4-remove-pyverify_fd.patch | 12 +++++ 2 files changed, 51 insertions(+), 19 deletions(-) create mode 100644 abs/core/libxml2/libxml2-2.9.4-remove-pyverify_fd.patch diff --git a/abs/core/libxml2/PKGBUILD b/abs/core/libxml2/PKGBUILD index fe3e82c..87d8792 100644 --- a/abs/core/libxml2/PKGBUILD +++ b/abs/core/libxml2/PKGBUILD @@ -4,42 +4,62 @@ # Contributor: John Proctor pkgname=libxml2 -pkgver=2.9.3 +pkgver=2.9.7+4+g7218255 pkgrel=1 pkgdesc="XML parsing library, version 2" -arch=(i686 x86_64) +arch=(x86_64) license=('MIT') -depends=('zlib' 'readline' 'ncurses' 'xz') -makedepends=('python2') -optdepends=('python2: python bindings to libxml') +depends=('zlib' 'readline' 'ncurses' 'xz' 'icu') +options=(!makeflags) +makedepends=('python2' 'python' 'git') url="http://www.xmlsoft.org/" -source=(ftp://ftp.xmlsoft.org/${pkgname}/${pkgname}-${pkgver}.tar.gz - http://www.w3.org/XML/Test/xmlts20080827.tar.gz) -md5sums=('daece17e045f1c107610e137ab50c179' - 'ae3d1ebe000a3972afa104ca7f0e1b4a') +_commit=72182550926d31ad17357bd3ed69e49d7e69df02 # master~7 +source=(git+https://git.gnome.org/browse/libxml2#commit=$_commit + https://www.w3.org/XML/Test/xmlts20130923.tar.gz + libxml2-2.9.4-remove-pyverify_fd.patch) +sha256sums=('SKIP' + '9b61db9f5dbffa545f4b8d78422167083a8568c59bd1129f94138f936cf6fc1f' + 'c9cebff010bd99c5453847e87b9fa8fdd7f744f415bf680b3650877789460ca9') -prepare() { - cd ${pkgname}-${pkgver} - sed -e 's|/usr/bin/python -u|/usr/bin/python2 -u|g' -e 's|/usr/bin/python$|/usr/bin/python2|g' -i python/tests/*.py - mv ../xmlconf . +pkgver() { + cd $pkgname + git describe --long | sed -e 's/-rc/rc/' -e 's/-/+/g' -e 's/^v//' } -build() { - cd ${pkgname}-${pkgver} - ./configure --prefix=/usr --with-threads --with-history --with-python=/usr/bin/python2 +prepare() { + mkdir build-py3 + mkdir build-py2 + mv xmlconf build-py2/ + cd $pkgname - sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0 /g' -e 's/ if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then/ func_append compile_command " -Wl,-O1,--as-needed"\n func_append finalize_command " -Wl,-O1,--as-needed"\n\0/' libtool + patch -Np1 -i ../libxml2-2.9.4-remove-pyverify_fd.patch + NOCONFIGURE=1 ./autogen.sh +} +build() { + cd build-py2 + ../$pkgname/configure --prefix=/usr --with-threads --with-history --with-python=/usr/bin/python2 --with-icu + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0 /g' libtool make + + cd ../build-py3 + ../$pkgname/configure --prefix=/usr --with-threads --with-history --with-python=/usr/bin/python --with-icu + sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0 /g' libtool + PYTHONHASHSEED=0 make } check() { - cd ${pkgname}-${pkgver} + cd build-py2 make check } package() { - cd ${pkgname}-${pkgver} + cd build-py2 + find doc -type f -exec chmod 0644 {} \; + make DESTDIR="${pkgdir}" install install -Dm644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/COPYING" + + cd ../build-py3/python + PYTHONHASHSEED=0 make DESTDIR="${pkgdir}" install } diff --git a/abs/core/libxml2/libxml2-2.9.4-remove-pyverify_fd.patch b/abs/core/libxml2/libxml2-2.9.4-remove-pyverify_fd.patch new file mode 100644 index 0000000..d05d4cb --- /dev/null +++ b/abs/core/libxml2/libxml2-2.9.4-remove-pyverify_fd.patch @@ -0,0 +1,12 @@ +diff -Nur libxml2-2.9.4.orig/python/types.c libxml2-2.9.4/python/types.c +--- libxml2-2.9.4.orig/python/types.c 2016-02-09 03:17:33.000000000 -0700 ++++ libxml2-2.9.4/python/types.c 2016-12-21 12:34:06.755650986 -0700 +@@ -31,8 +31,6 @@ + const char *mode; + + fd = PyObject_AsFileDescriptor(f); +- if (!_PyVerify_fd(fd)) +- return(NULL); + /* + * Get the flags on the fd to understand how it was opened + */ -- cgit v0.12