# Contributor: Carlo Landmeter # Maintainer: Carlo Landmeter pkgname=libxml2 pkgver=2.9.14 pkgrel=0 pkgdesc="XML parsing library, version 2" url="http://www.xmlsoft.org/" arch="all" license="MIT" depends_dev="zlib-dev xz-dev" checkdepends="perl tar" makedepends_host="$depends_dev" subpackages="$pkgname-dbg $pkgname-doc $pkgname-dev $pkgname-utils" if [ -z "$BOOTSTRAP" ]; then makedepends_build="python3-dev" subpackages="$subpackages py3-$pkgname:_py3" py_configure="--with-python=/usr/bin/python3" fi options="!strip" source="https://download.gnome.org/sources/libxml2/${pkgver%.*}/libxml2-$pkgver.tar.xz libxml2-2.9.8-python3-unicode-errors.patch " # secfixes: # 2.9.14-r0: # - CVE-2022-29824 # 2.9.13-r0: # - CVE-2022-23308 # 2.9.11-r0: # - CVE-2021-3517 # - CVE-2021-3518 # - CVE-2021-3537 # - CVE-2021-3541 # 2.9.10-r5: # - CVE-2020-24977 # 2.9.10-r4: # - CVE-2019-20388 # 2.9.8-r3: # - CVE-2020-7595 # 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 } build() { ./configure \ --build=$CBUILD \ --host=$CHOST \ --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ --infodir=/usr/share/info \ --with-lzma \ --with-zlib \ $py_configure make } check() { rm -f test/ebcdic_566012.xml make runtests } package() { make -j1 DESTDIR="$pkgdir" install # We don't need static lib for python bindings. if [ -z "$BOOTSTRAP" ]; then rm "$pkgdir"/usr/lib/python*/site-packages/*.a fi } dev() { default_dev mv "$pkgdir"/usr/lib/*.sh "$subpkgdir"/usr/lib/ } _py3() { depends="python3" pkgdesc="$pkgname python3 bindings" mkdir -p "$subpkgdir"/usr/lib mv "$pkgdir"/usr/lib/python3* "$subpkgdir"/usr/lib/ } utils() { pkgdesc="XML utilities" replaces="libxml2" mkdir -p "$subpkgdir"/usr mv "$pkgdir"/usr/bin "$subpkgdir"/usr/ } sha512sums=" d08e6cafb289c499fdc5b3a12181e032a34f7a249bc66758859f964d3e71e19fd69be79921e1a9d8ab1e692d15b13f5fae95eeb10c3236974d89e218f5107606 libxml2-2.9.14.tar.xz a205c97fa1488fb8907cfa08b5f82e2055c80b86213dc3cc5c4b526fe6aa786bcc4e4eeb226c44635a1d021307b39e3940f706c42fb60e9e3e9b490a84164df7 libxml2-2.9.8-python3-unicode-errors.patch "