summaryrefslogtreecommitdiffstats
path: root/abs/core
diff options
context:
space:
mode:
Diffstat (limited to 'abs/core')
-rw-r--r--abs/core/libxml2/PKGBUILD58
-rw-r--r--abs/core/libxml2/libxml2-2.9.4-remove-pyverify_fd.patch12
2 files changed, 51 insertions, 19 deletions
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 <jproctor@prium.net>
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
+ */