Also integrated two changes from upstream fixing two minor issues.
Build successfully tested against all ptxdist packages requiring
libxml2, no runtime tests.

Signed-off-by: Alexander Dahl <[email protected]>
---
 patches/libxml2-2.7.7/series                       |    3 ---
 ...ing-initialization-for-the-catalog-module.patch |   25 ++++++++++++++++++
 ...-missing-entities-after-CVE-2014-3660-fix.patch |   27 ++++++++++++++++++++
 .../0200-xml2-config-is-not-SYSROOT-aware.patch}   |    7 ++---
 patches/libxml2-2.9.2/series                       |    8 ++++++
 rules/host-libxml2.make                            |    5 +++-
 rules/libxml2.in                                   |    7 +++++
 rules/libxml2.make                                 |    6 +++--
 8 files changed, 77 insertions(+), 11 deletions(-)
 delete mode 100644 patches/libxml2-2.7.7/series
 create mode 100644 
patches/libxml2-2.9.2/0001-Revert-Missing-initialization-for-the-catalog-module.patch
 create mode 100644 
patches/libxml2-2.9.2/0002-Fix-missing-entities-after-CVE-2014-3660-fix.patch
 rename patches/{libxml2-2.7.7/0001-xml2-config-is-not-SYSROOT-aware.patch => 
libxml2-2.9.2/0200-xml2-config-is-not-SYSROOT-aware.patch} (84%)
 create mode 100644 patches/libxml2-2.9.2/series

diff --git a/patches/libxml2-2.7.7/series b/patches/libxml2-2.7.7/series
deleted file mode 100644
index 404fb88..0000000
--- a/patches/libxml2-2.7.7/series
+++ /dev/null
@@ -1,3 +0,0 @@
-# generated by git-ptx-patches
-0001-xml2-config-is-not-SYSROOT-aware.patch
-# 39e3efe4b37f5ed3cf17be9609775022  - git-ptx-patches magic
diff --git 
a/patches/libxml2-2.9.2/0001-Revert-Missing-initialization-for-the-catalog-module.patch
 
b/patches/libxml2-2.9.2/0001-Revert-Missing-initialization-for-the-catalog-module.patch
new file mode 100644
index 0000000..9377a64
--- /dev/null
+++ 
b/patches/libxml2-2.9.2/0001-Revert-Missing-initialization-for-the-catalog-module.patch
@@ -0,0 +1,25 @@
+From: Daniel Veillard <[email protected]>
+Date: Fri, 17 Oct 2014 17:13:41 +0800
+Subject: [PATCH] Revert "Missing initialization for the catalog module"
+
+This reverts commit 054c716ea1bf001544127a4ab4f4346d1b9947e7.
+As this break xmlcatalog command
+https://bugzilla.redhat.com/show_bug.cgi?id=1153753
+---
+ parser.c |    3 ---
+ 1 file changed, 3 deletions(-)
+
+diff --git a/parser.c b/parser.c
+index 1d9396786ba7..67c9dfd9ad9f 100644
+--- a/parser.c
++++ b/parser.c
+@@ -14830,9 +14830,6 @@ xmlInitParser(void) {
+ #ifdef LIBXML_XPATH_ENABLED
+       xmlXPathInit();
+ #endif
+-#ifdef LIBXML_CATALOG_ENABLED
+-        xmlInitializeCatalog();
+-#endif
+       xmlParserInitialized = 1;
+ #ifdef LIBXML_THREAD_ENABLED
+     }
diff --git 
a/patches/libxml2-2.9.2/0002-Fix-missing-entities-after-CVE-2014-3660-fix.patch 
b/patches/libxml2-2.9.2/0002-Fix-missing-entities-after-CVE-2014-3660-fix.patch
new file mode 100644
index 0000000..845610a
--- /dev/null
+++ 
b/patches/libxml2-2.9.2/0002-Fix-missing-entities-after-CVE-2014-3660-fix.patch
@@ -0,0 +1,27 @@
+From: Daniel Veillard <[email protected]>
+Date: Thu, 23 Oct 2014 11:35:36 +0800
+Subject: [PATCH] Fix missing entities after CVE-2014-3660 fix
+
+For https://bugzilla.gnome.org/show_bug.cgi?id=738805
+
+The fix for CVE-2014-3660 introduced a regression in some case
+where entity substitution is required and the entity is used
+first in anotther entity referenced from an attribute value
+---
+ parser.c |    3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/parser.c b/parser.c
+index 67c9dfd9ad9f..a8d1b6731681 100644
+--- a/parser.c
++++ b/parser.c
+@@ -7235,7 +7235,8 @@ xmlParseReference(xmlParserCtxtPtr ctxt) {
+      * far more secure as the parser will only process data coming from
+      * the document entity by default.
+      */
+-    if ((ent->checked == 0) &&
++    if (((ent->checked == 0) ||
++         ((ent->children == NULL) && (ctxt->options & XML_PARSE_NOENT))) &&
+         ((ent->etype != XML_EXTERNAL_GENERAL_PARSED_ENTITY) ||
+          (ctxt->options & (XML_PARSE_NOENT | XML_PARSE_DTDVALID)))) {
+       unsigned long oldnbent = ctxt->nbentities;
diff --git a/patches/libxml2-2.7.7/0001-xml2-config-is-not-SYSROOT-aware.patch 
b/patches/libxml2-2.9.2/0200-xml2-config-is-not-SYSROOT-aware.patch
similarity index 84%
rename from patches/libxml2-2.7.7/0001-xml2-config-is-not-SYSROOT-aware.patch
rename to patches/libxml2-2.9.2/0200-xml2-config-is-not-SYSROOT-aware.patch
index 817c0b9..d096e3c 100644
--- a/patches/libxml2-2.7.7/0001-xml2-config-is-not-SYSROOT-aware.patch
+++ b/patches/libxml2-2.9.2/0200-xml2-config-is-not-SYSROOT-aware.patch
@@ -7,10 +7,10 @@ This patch adds $SYSROOT support to xml2-config.
 Signed-off-by: Marc Kleine-Budde <[email protected]>
 ---
  xml2-config.in |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
+ 1 file changed, 1 insertion(+), 1 deletion(-)
 
 diff --git a/xml2-config.in b/xml2-config.in
-index 2989325..4e170b6 100644
+index 19574864cb6a..ee1949ce9542 100644
 --- a/xml2-config.in
 +++ b/xml2-config.in
 @@ -1,6 +1,6 @@
@@ -21,6 +21,3 @@ index 2989325..4e170b6 100644
  exec_prefix=@exec_prefix@
  includedir=@includedir@
  libdir=@libdir@
--- 
-1.7.1
-
diff --git a/patches/libxml2-2.9.2/series b/patches/libxml2-2.9.2/series
new file mode 100644
index 0000000..e8eef47
--- /dev/null
+++ b/patches/libxml2-2.9.2/series
@@ -0,0 +1,8 @@
+# generated by git-ptx-patches
+#tag:base --start-number 1
+#tag:upstream --start-number 1
+0001-Revert-Missing-initialization-for-the-catalog-module.patch
+0002-Fix-missing-entities-after-CVE-2014-3660-fix.patch
+#tag:ptx --start-number 200
+0200-xml2-config-is-not-SYSROOT-aware.patch
+# 42924c0b78c90f6e07e0a460d25ef885  - git-ptx-patches magic
diff --git a/rules/host-libxml2.make b/rules/host-libxml2.make
index c4a4b4b..e731e2c 100644
--- a/rules/host-libxml2.make
+++ b/rules/host-libxml2.make
@@ -32,6 +32,9 @@ HOST_LIBXML2_ENV      := $(HOST_ENV)
 HOST_LIBXML2_AUTOCONF  := \
        $(HOST_AUTOCONF) \
        --disable-static \
-       --without-iconv
+       --without-iconv \
+       --without-icu \
+       --without-python \
+       --without-lzma
 
 # vim: syntax=make
diff --git a/rules/libxml2.in b/rules/libxml2.in
index 72c1725..bfbbf4d 100644
--- a/rules/libxml2.in
+++ b/rules/libxml2.in
@@ -6,6 +6,7 @@ menuconfig LIBXML2
        select LIBC_M
        select LIBC_DL  if LIBXML2_MODULES
        select ZLIB     if LIBXML2_ZLIB
+       select XZ       if LIBXML2_LZMA
        select PYTHON   if LIBXML2_PYTHON
        help
          Libxml2 is a XML C parser and toolkit. XML itself is a
@@ -264,4 +265,10 @@ config LIBXML2_ZLIB
        default y
        prompt "zlib (compression) support"
 
+config LIBXML2_LZMA
+       bool
+       prompt "lzma (compression) support"
+       help
+         LZMA (compression) support with liblzma from XZ tools.
+
 endif
diff --git a/rules/libxml2.make b/rules/libxml2.make
index 36450ea..1b1b042 100644
--- a/rules/libxml2.make
+++ b/rules/libxml2.make
@@ -18,8 +18,8 @@ PACKAGES-$(PTXCONF_LIBXML2) += libxml2
 #
 # Paths and names
 #
-LIBXML2_VERSION        := 2.7.7
-LIBXML2_MD5    := 9abc9959823ca9ff904f1fbcf21df066
+LIBXML2_VERSION        := 2.9.2
+LIBXML2_MD5    := 9e6a9aca9d155737868b3dc5fd82f788
 LIBXML2                := libxml2-$(LIBXML2_VERSION)
 LIBXML2_SUFFIX := tar.gz
 LIBXML2_SOURCE := $(SRCDIR)/$(LIBXML2).$(LIBXML2_SUFFIX)
@@ -54,8 +54,10 @@ LIBXML2_AUTOCONF := \
        --$(call ptx/wwo, PTXCONF_LIBXML2_HISTORY)-history \
        --$(call ptx/wwo, PTXCONF_LIBXML2_HTML)-html \
        --$(call ptx/wwo, PTXCONF_LIBXML2_HTTP)-http \
+       --without-icu \
        --$(call ptx/wwo, PTXCONF_LIBXML2_ISO8859X)-iso8859x \
        --$(call ptx/wwo, PTXCONF_LIBXML2_LEGACY)-legacy \
+       --$(call ptx/wwo, PTXCONF_LIBXML2_LZMA)-lzma \
        --$(call ptx/wwo, PTXCONF_LIBXML2_MEM_DEBUG)-mem-debug \
        --$(call ptx/wwo, PTXCONF_LIBXML2_MINIMUM)-minimum \
        --$(call ptx/wwo, PTXCONF_LIBXML2_OUTPUT)-output \
-- 
1.7.10.4


-- 
ptxdist mailing list
[email protected]

Reply via email to