diff --git a/libxml2/0001-fix-py-mod-ext.patch b/libxml2/0001-fix-py-mod-ext.patch new file mode 100644 index 00000000..59b8e12b --- /dev/null +++ b/libxml2/0001-fix-py-mod-ext.patch @@ -0,0 +1,16 @@ +--- libxml2-2.11.4/configure.ac.orig 2023-06-21 11:18:44.777229500 +0200 ++++ libxml2-2.11.4/configure.ac 2023-06-21 11:18:54.986273900 +0200 +@@ -767,9 +767,12 @@ + PYTHON_LDFLAGS= + if test "${PYTHON}" != ""; then + case "$host" in +- *-*-cygwin* | *-*-mingw* | *-*-msys* ) ++ *-*-mingw* ) + PYTHON_LDFLAGS="-no-undefined -shrext .pyd" + ;; ++ *-*-cygwin* |*-*-msys* ) ++ PYTHON_LDFLAGS="-no-undefined -shrext .dll" ++ ;; + esac + fi + AC_SUBST(PYTHON_LDFLAGS) diff --git a/libxml2/PKGBUILD b/libxml2/PKGBUILD index 03c132fc..daea5583 100644 --- a/libxml2/PKGBUILD +++ b/libxml2/PKGBUILD @@ -2,7 +2,7 @@ pkgbase=libxml2 pkgname=('libxml2' 'libxml2-devel' 'libxml2-python') -pkgver=2.10.4 +pkgver=2.11.4 pkgrel=1 pkgdesc="XML parsing library, version 2" arch=(i686 x86_64) @@ -13,11 +13,11 @@ url="https://gitlab.gnome.org/GNOME/libxml2/-/wikis/" source=("https://download.gnome.org/sources/libxml2/${pkgver%.*}/${pkgbase}-${pkgver}.tar.xz" https://www.w3.org/XML/Test/xmlts20130923.tar.gz libxml2-2.9.8-python3-unicode-errors.patch - libxml2-2.9.1-msys2.patch) -sha256sums=('ed0c91c5845008f1936739e4eee2035531c1c94742c6541f44ee66d885948d45' + 0001-fix-py-mod-ext.patch) +sha256sums=('737e1d7f8ab3f139729ca13a2494fd17bf30ddb4b7a427cf336252cab57f57f7' '9b61db9f5dbffa545f4b8d78422167083a8568c59bd1129f94138f936cf6fc1f' - '37eb81a8ec6929eed1514e891bff2dd05b450bcf0c712153880c485b7366c17c' - '8a464e7c2bacb2336e88ce6b830549b49455bed3b4c8252942b9d7c387a7c430') + '0f5d465503b24271e11752262af89c58eb0b26b4901c3b021bd843e6e5d4e95a' + 'bf6205065d7256ac288e27b711a5672c264b6144ae290ef28b96ccc5ffe08995') # Helper macros to help make tasks easier # apply_patch_with_msg() { @@ -51,7 +51,7 @@ prepare() { libxml2-2.9.8-python3-unicode-errors.patch apply_patch_with_msg \ - libxml2-2.9.1-msys2.patch + 0001-fix-py-mod-ext.patch autoreconf -vfi } diff --git a/libxml2/libxml2-2.9.1-msys2.patch b/libxml2/libxml2-2.9.1-msys2.patch deleted file mode 100644 index 55d9a736..00000000 --- a/libxml2/libxml2-2.9.1-msys2.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- libxml2-2.10.0/configure.ac.orig 2022-08-17 13:22:20.000000000 +0200 -+++ libxml2-2.10.0/configure.ac 2022-08-21 22:52:07.719938300 +0200 -@@ -769,7 +769,7 @@ - case "$host" in - *-*-cygwin*) - MODULE_EXTENSION=".dll" -- AC_CHECK_LIB(cygwin, dlopen, [ -+ AC_CHECK_LIB(msys-2.0, dlopen, [ - WITH_MODULES=1 - MODULE_PLATFORM_LIBS= - AC_DEFINE([HAVE_DLOPEN], [], [Have dlopen based dso]) diff --git a/libxml2/libxml2-2.9.8-python3-unicode-errors.patch b/libxml2/libxml2-2.9.8-python3-unicode-errors.patch index e87dcded..f9ce5b2b 100644 --- a/libxml2/libxml2-2.9.8-python3-unicode-errors.patch +++ b/libxml2/libxml2-2.9.8-python3-unicode-errors.patch @@ -1,8 +1,6 @@ -Index: libxml2-2.9.5/python/libxml.c -=================================================================== ---- libxml2-2.9.5.orig/python/libxml.c -+++ libxml2-2.9.5/python/libxml.c -@@ -1620,6 +1620,7 @@ libxml_xmlErrorFuncHandler(ATTRIBUTE_UNU +--- libxml2-2.11.4/python/libxml.c.orig 2023-04-11 14:19:21.000000000 +0200 ++++ libxml2-2.11.4/python/libxml.c 2023-06-21 10:57:38.374264200 +0200 +@@ -1606,6 +1606,7 @@ PyObject *message; PyObject *result; char str[1000]; @@ -10,7 +8,7 @@ Index: libxml2-2.9.5/python/libxml.c #ifdef DEBUG_ERROR printf("libxml_xmlErrorFuncHandler(%p, %s, ...) called\n", ctx, msg); -@@ -1636,12 +1637,20 @@ libxml_xmlErrorFuncHandler(ATTRIBUTE_UNU +@@ -1622,12 +1623,20 @@ str[999] = 0; va_end(ap); @@ -26,7 +24,7 @@ Index: libxml2-2.9.5/python/libxml.c - message = libxml_charPtrConstWrap(str); + message = libxml_charPtrConstWrap(ptr); PyTuple_SetItem(list, 1, message); - result = PyEval_CallObject(libxml_xmlPythonErrorFuncHandler, list); + result = PyObject_CallObject(libxml_xmlPythonErrorFuncHandler, list); + /* Forget any errors caused in the error handler. */ + PyErr_Clear(); Py_XDECREF(list);