# Contributor: Carlo Landmeter # Maintainer: Carlo Landmeter pkgname=libxml2 pkgver=2.9.8 pkgrel=1 pkgdesc="XML parsing library, version 2" url="http://www.xmlsoft.org/" arch="all" license="MIT" depends_dev="zlib-dev" checkdepends="perl tar" makedepends="$depends_dev python2-dev python3-dev" subpackages="$pkgname-dbg $pkgname-doc $pkgname-dev $pkgname-utils py-$pkgname:_py py2-$pkgname:_py py3-$pkgname:_py" options="!strip" source="http://xmlsoft.org/sources/$pkgname-$pkgver.tar.gz CVE-2018-9251-CVE-2018-14567.patch CVE-2018-14404.patch " builddir="$srcdir/$pkgname-$pkgver" # secfixes: # 2.9.8-r1: # - CVE-2018-9251 # - CVE-2018-14404 # - CVE-2018-14567 # 2.9.4-r4: # - CVE-2017-5969 # 2.9.4-r2: # - CVE-2016-9318 # 2.9.4-r1: # - CVE-2016-5131 prepare() { default_prepare # setup.py is generated rm python/setup.py # We don't build libxml2 with icu. rm test/icu_parse_test.xml cp -ra "$builddir" "$builddir"-python2 } libxml2_configure() { ./configure \ --build=$CBUILD \ --host=$CHOST \ --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ --infodir=/usr/share/info \ --disable-static \ "$@" } build() { cd "$builddir" libxml2_configure \ --with-python=/usr/bin/python3 make msg "build python2" cd "$builddir"-python2 libxml2_configure \ --with-python=/usr/bin/python2 make } check() { rm "$builddir"-python2/test/ebcdic_566012.xml make -C "$builddir"-python2 runtests } package() { cd "$builddir" make -j1 DESTDIR="$pkgdir" install make -j1 -C "$builddir"-python2/python DESTDIR="$pkgdir" install } dev() { default_dev mv "$pkgdir"/usr/lib/*.sh "$subpkgdir"/usr/lib/ } _py() { local python cd "$builddir" case $subpkgname in py2-*) python=python2;; py3-*) python=python3;; py-*) mkdir -p "$subpkgdir"; return 0;; # dummy py- package esac pkgdesc="$pkgname $python bindings" install_if="py-libxml2=$pkgver-r$pkgrel $python" install -d "$subpkgdir"/usr/lib mv "$pkgdir"/usr/lib/$python* "$subpkgdir"/usr/lib/ } utils() { pkgdesc="XML utilities" replaces="libxml2" mkdir -p "$subpkgdir"/usr mv "$pkgdir"/usr/bin "$subpkgdir"/usr/ } sha512sums="28903282c7672206effa1362fd564cbe4cf5be44264b083a7d14e383f73bccd1b81bcafb5f4f2f56f5e7e05914c660e27668c9ce91b1b9f256ef5358d55ba917 libxml2-2.9.8.tar.gz 31f6cd6650b05cdd95455fd72927ef6b1f1d23ca4d8d5f776ee83277d670363dfe6bdd2c1330e8f9131212456dece2595b16868fc01f0ab750009b0a007eb513 CVE-2018-9251-CVE-2018-14567.patch c273b88d26e475e8a7f73e92ce9a77b1025f3704f11aa129c867e08424d32f1d7d81f4a2991d0cef28db4b8e122c6b356097be24b4651ef1b5a040a466bdcd13 CVE-2018-14404.patch"