commit a0b7bb82cf45112e2f31b532aac6e2a30c2b12ce
Author: Jan Palus <at...@pld-linux.org>
Date:   Fri Jun 14 20:11:32 2024 +0200

    up to 2.13.0

 libxml2-open.gz.patch | 56 ++++++++++++++++++++++-----------------------------
 libxml2.spec          | 18 +++++++++--------
 2 files changed, 34 insertions(+), 40 deletions(-)
---
diff --git a/libxml2.spec b/libxml2.spec
index 6aaedf6..377a73e 100644
--- a/libxml2.spec
+++ b/libxml2.spec
@@ -9,7 +9,6 @@
 %bcond_without python3         # CPython 3.x module
 %bcond_without static_libs     # static library
 %bcond_without zlib            # zlib support
-%bcond_with    mem_debug       # libxml2 memory debuging
 %bcond_without tests           # "make check" call
 
 Summary:       libXML library version 2
@@ -17,14 +16,14 @@ Summary(es.UTF-8):  Biblioteca libXML version 2
 Summary(pl.UTF-8):     Biblioteka libXML wersja 2
 Summary(pt_BR.UTF-8):  Biblioteca libXML versão 2
 Name:          libxml2
-Version:       2.12.8
+Version:       2.13.0
 Release:       1
 Epoch:         1
 License:       MIT
 Group:         Libraries
 #Source0:      ftp://xmlsoft.org/libxml2/%{name}-%{version}.tar.gz
-Source0:       
https://download.gnome.org/sources/libxml2/2.12/%{name}-%{version}.tar.xz
-# Source0-md5: 121a262ac4e4b4110a1104ac33676903
+Source0:       
https://download.gnome.org/sources/libxml2/2.13/%{name}-%{version}.tar.xz
+# Source0-md5: 22a4b108240c3f2aeb1354346055b436
 Patch0:                %{name}-open.gz.patch
 Patch1:                %{name}-largefile.patch
 Patch2:                %{name}-libx32.patch
@@ -196,11 +195,12 @@ do biblioteki libxml2.
        --disable-silent-rules \
        %{?with_static_libs:--enable-static} \
        %{?with_ftp:--with-ftp} \
+       --with-http \
        %{?with_legacy:--with-legacy} \
        --with-lzma \
-       --with-mem-debug%{!?with_mem_debug:=no} \
        --without-python \
-       %{!?with_zlib:--without-zlib}
+       --with-tls \
+       %{?with_zlib:--with-zlib}
 
 %{__make}
 
@@ -241,8 +241,10 @@ cd python
 cd ..
 %endif
 
-install -d $RPM_BUILD_ROOT%{_examplesdir}
-%{__mv} $RPM_BUILD_ROOT%{_docdir}/libxml2/examples 
$RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
+%if %{with apidocs}
+install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
+cp -p example/*.{c,xml} $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
+%endif
 
 # install catalog file
 install -d $RPM_BUILD_ROOT%{_sysconfdir}/xml
diff --git a/libxml2-open.gz.patch b/libxml2-open.gz.patch
index 644204b..61ec90a 100644
--- a/libxml2-open.gz.patch
+++ b/libxml2-open.gz.patch
@@ -1,38 +1,30 @@
---- libxml2-2.10.0/xmlIO.c.orig        2022-08-18 16:29:32.843322082 +0200
-+++ libxml2-2.10.0/xmlIO.c     2022-08-18 16:32:12.985787850 +0200
-@@ -1115,8 +1115,33 @@ xmlGzfileOpen_real (const char *filename
+--- libxml2-2.13.0/xmlIO.c.orig        2024-06-14 12:32:12.257784372 +0200
++++ libxml2-2.13.0/xmlIO.c     2024-06-14 19:23:06.355299914 +0200
+@@ -547,6 +547,27 @@
+     fd = open(filename, flags, 0777);
+ #endif /* WIN32 */
  
-     if (path == NULL)
-       return(NULL);
--    if (!xmlCheckFilename(path))
--        return(NULL);
-+    if (!xmlCheckFilename(path)) {
-+      /* If we cannot open `foo.xml', we try `foo.xml.gz'. However we i
-+       * append .gz only if filename doesn't alreay end with .gz. */
-+      if (strlen(path) < 3 || strcmp(path + strlen(path) - 3, ".gz") != 0) {
-+          char *gz_filename = xmlMalloc(strlen(path) + 4);
++    if (fd < 0 && errno == ENOENT) {
++        /* If we cannot open `foo.xml', we try `foo.xml.gz'. However we i
++         * append .gz only if filename doesn't alreay end with .gz. */
++        if (strlen(filename) < 3 || strcmp(filename + strlen(filename) - 3, 
".gz") != 0) {
++            char *gz_filename = xmlMalloc(strlen(filename) + 4);
++            int gz_fd;
 +
-+          if (gz_filename == NULL) {
-+              xmlGenericError(xmlGenericErrorContext,
-+                              "xmlGzfileOpen:  %s\n",
-+                              "Failure allocating buffer for filename.");
-+              return NULL;
-+          }
++            if (gz_filename != NULL) {
++                strcpy(gz_filename, filename);
++                strcat(gz_filename, ".gz");
++            }
 +
-+          strcpy(gz_filename, path);
-+          strcat(gz_filename, ".gz");
++            gz_fd = open(gz_filename, flags, 0777);
 +
-+          fd = NULL;
++            if (gz_fd >= 0)
++                fd = gz_fd;
 +
-+          if (xmlCheckFilename(gz_filename))
-+              fd = gzopen(gz_filename, "rb");
-+
-+          xmlFree(gz_filename);
-+           
-+          return((void *) fd);
-+      } else
-+          return NULL;
++            xmlFree(gz_filename);
++        }
 +    }
- 
- #if defined(_WIN32)
-     fd = xmlWrapGzOpenUtf8(path, "rb");
++
+     if (fd < 0) {
+         /*
+          * Windows and possibly other platforms return EINVAL
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/libxml2.git/commitdiff/a0b7bb82cf45112e2f31b532aac6e2a30c2b12ce

_______________________________________________
pld-cvs-commit mailing list
pld-cvs-commit@lists.pld-linux.org
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to