diff options
-rw-r--r-- | extra/libxml2/.md5sum | 2 | ||||
-rwxr-xr-x | extra/libxml2/Pkgfile | 12 | ||||
-rw-r--r-- | extra/libxml2/largefile64.patch | 12 | ||||
-rw-r--r-- | extra/libxml2/zlib.patch | 32 |
4 files changed, 54 insertions, 4 deletions
diff --git a/extra/libxml2/.md5sum b/extra/libxml2/.md5sum index 6f5312950..db2be2e22 100644 --- a/extra/libxml2/.md5sum +++ b/extra/libxml2/.md5sum @@ -1 +1,3 @@ +5ad4915665608ebfa5b89f7908467a72 largefile64.patch 7740a8ec23878a2f50120e1faa2730f2 libxml2-2.7.6.tar.gz +0365d5397164b8739219e56e5ca069d1 zlib.patch diff --git a/extra/libxml2/Pkgfile b/extra/libxml2/Pkgfile index 9fb4af48e..90353ce81 100755 --- a/extra/libxml2/Pkgfile +++ b/extra/libxml2/Pkgfile @@ -2,16 +2,20 @@ # URL: http://xmlsoft.org/ # Maintainer: NuTyX core team # Packager: thierryn1 at hispeed dot ch -# Depends on: python +# Depends on: python, zlib, readline, ncurses name=libxml2 version=2.7.6 -release=1 -source=(ftp://xmlsoft.org/libxml2/$name-$version.tar.gz) - +release=2 +source=(ftp://xmlsoft.org/libxml2/$name-$version.tar.gz \ + largefile64.patch \ + zlib.patch ) build() { cd $name-$version + patch -Np1 -i "$SRC/largefile64.patch" + patch -p1 -i "$SRC/zlib.patch" + ./configure --prefix=/usr \ --mandir=/usr/share/man \ --infodir=/usr/share/info diff --git a/extra/libxml2/largefile64.patch b/extra/libxml2/largefile64.patch new file mode 100644 index 000000000..29be82760 --- /dev/null +++ b/extra/libxml2/largefile64.patch @@ -0,0 +1,12 @@ +--- libxml2-2.6.32.dfsg.orig/libxml.h ++++ libxml2-2.6.32.dfsg/libxml.h +@@ -13,6 +13,9 @@ + #ifndef _LARGEFILE_SOURCE + #define _LARGEFILE_SOURCE + #endif ++#ifndef _LARGEFILE64_SOURCE ++#define _LARGEFILE64_SOURCE ++#endif + #ifndef _FILE_OFFSET_BITS + #define _FILE_OFFSET_BITS 64 + #endif diff --git a/extra/libxml2/zlib.patch b/extra/libxml2/zlib.patch new file mode 100644 index 000000000..4bf486d12 --- /dev/null +++ b/extra/libxml2/zlib.patch @@ -0,0 +1,32 @@ +From a7e79f28689c574e0bbef17f4cb3da00249181ff Mon Sep 17 00:00:00 2001 +From: Mark Adler <madler@alumni.caltech.edu> +Date: Tue, 19 Jan 2010 15:28:48 +0000 +Subject: libxml violates the zlib interface and crashes + +* xmlIO.c: remove an abuse of zlib API and use a clean interface + available in zlib >= 1.2.3 +--- +diff --git a/xmlIO.c b/xmlIO.c +index c03ac43..8fc00e3 100644 +--- a/xmlIO.c ++++ b/xmlIO.c +@@ -2518,6 +2518,9 @@ __xmlParserInputBufferCreateFilename(const char *URI, xmlCharEncoding enc) { + #ifdef HAVE_ZLIB_H + if ((xmlInputCallbackTable[i].opencallback == xmlGzfileOpen) && + (strcmp(URI, "-") != 0)) { ++#if defined(ZLIB_VERNUM) && ZLIB_VERNUM >= 0x1230 ++ ret->compressed = !gzdirect(context); ++#else + if (((z_stream *)context)->avail_in > 4) { + char *cptr, buff4[4]; + cptr = (char *) ((z_stream *)context)->next_in; +@@ -2529,6 +2532,7 @@ __xmlParserInputBufferCreateFilename(const char *URI, xmlCharEncoding enc) { + gzrewind(context); + } + } ++#endif + } + #endif + } +-- +cgit v0.8.3.1 |