summaryrefslogtreecommitdiffstats
path: root/package/imagemagick/imagemagick-zlib-fix.patch
diff options
context:
space:
mode:
authorPeter Korsgaard2012-03-03 22:52:14 +0100
committerPeter Korsgaard2012-03-03 22:56:23 +0100
commiteb54983fdf8f822e6a1000d5622bf6e13f7c259f (patch)
treef6f58e9ab338f77e3804ce6991fa946cedf66a0a /package/imagemagick/imagemagick-zlib-fix.patch
parentkernel-headers: bump 3.0.x / 3.2.x stable versions (diff)
downloadbuildroot-eb54983fdf8f822e6a1000d5622bf6e13f7c259f.tar.gz
buildroot-eb54983fdf8f822e6a1000d5622bf6e13f7c259f.tar.xz
buildroot-eb54983fdf8f822e6a1000d5622bf6e13f7c259f.zip
imagemagick: bump version, fix build with zlib
The recent zlib bump broke imagemagick. This has been fixed upstream in 6.7.5, but the xml2-config fix is still not upstream and 6.7.5 needs autoconf 2.67 to autoreconf (and we have 2.65), so we cannot easily use that. Instead move to the most recent version using autoconf 2.64 and backport the fix from imagemagick svn. At the same time also ensure zlib+bzip2 support is picked up if enabled. Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Diffstat (limited to 'package/imagemagick/imagemagick-zlib-fix.patch')
-rw-r--r--package/imagemagick/imagemagick-zlib-fix.patch227
1 files changed, 227 insertions, 0 deletions
diff --git a/package/imagemagick/imagemagick-zlib-fix.patch b/package/imagemagick/imagemagick-zlib-fix.patch
new file mode 100644
index 000000000..1a147af1d
--- /dev/null
+++ b/package/imagemagick/imagemagick-zlib-fix.patch
@@ -0,0 +1,227 @@
+[PATCH] Fix build with recent versions of zlib
+
+From upstream:
+r6633 + r6636 @ https://www.imagemagick.org/subversion/ImageMagick
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ magick/blob.c | 68 ++++++++++++++++++++++++++++++++++------------------------
+ 1 file changed, 40 insertions(+), 28 deletions(-)
+
+Index: ImageMagick-6.7.2-10/magick/blob.c
+===================================================================
+--- ImageMagick-6.7.2-10.orig/magick/blob.c
++++ ImageMagick-6.7.2-10/magick/blob.c
+@@ -120,8 +120,20 @@
+ StreamType
+ type;
+
+- FILE
+- *file;
++ union {
++ FILE
++ *file;
++
++#if defined(MAGICKCORE_ZLIB_DELEGATE)
++ gzFile
++ gzfile;
++#endif
++
++#if defined(MAGICKCORE_BZLIB_DELEGATE)
++ BZFILE
++ *bzfile;
++#endif
++ };
+
+ struct stat
+ properties;
+@@ -505,14 +517,14 @@
+ case ZipStream:
+ {
+ #if defined(MAGICKCORE_ZLIB_DELEGATE)
+- (void) gzerror(image->blob->file,&status);
++ (void) gzerror(image->blob->gzfile,&status);
+ #endif
+ break;
+ }
+ case BZipStream:
+ {
+ #if defined(MAGICKCORE_BZLIB_DELEGATE)
+- (void) BZ2_bzerror((BZFILE *) image->blob->file,&status);
++ (void) BZ2_bzerror(image->blob->bzfile,&status);
+ #endif
+ break;
+ }
+@@ -546,14 +558,14 @@
+ case ZipStream:
+ {
+ #if defined(MAGICKCORE_ZLIB_DELEGATE)
+- status=gzclose(image->blob->file);
++ status=gzclose(image->blob->gzfile);
+ #endif
+ break;
+ }
+ case BZipStream:
+ {
+ #if defined(MAGICKCORE_BZLIB_DELEGATE)
+- BZ2_bzclose((BZFILE *) image->blob->file);
++ BZ2_bzclose(image->blob->bzfile);
+ #endif
+ break;
+ }
+@@ -843,7 +855,7 @@
+ status;
+
+ status=0;
+- (void) BZ2_bzerror((BZFILE *) image->blob->file,&status);
++ (void) BZ2_bzerror(image->blob->bzfile,&status);
+ image->blob->eof=status == BZ_UNEXPECTED_EOF ? MagickTrue : MagickFalse;
+ #endif
+ break;
+@@ -2486,8 +2498,8 @@
+ ((int) magick[2] == 0x08))
+ {
+ (void) fclose(image->blob->file);
+- image->blob->file=(FILE *) gzopen(filename,type);
+- if (image->blob->file != (FILE *) NULL)
++ image->blob->gzfile=gzopen(filename,type);
++ if (image->blob->gzfile != (gzFile) NULL)
+ image->blob->type=ZipStream;
+ }
+ #endif
+@@ -2495,8 +2507,8 @@
+ if (strncmp((char *) magick,"BZh",3) == 0)
+ {
+ (void) fclose(image->blob->file);
+- image->blob->file=(FILE *) BZ2_bzopen(filename,type);
+- if (image->blob->file != (FILE *) NULL)
++ image->blob->bzfile=BZ2_bzopen(filename,type);
++ if (image->blob->bzfile != (BZFILE *) NULL)
+ image->blob->type=BZipStream;
+ }
+ #endif
+@@ -2555,8 +2567,8 @@
+ {
+ if (mode == WriteBinaryBlobMode)
+ type="wb";
+- image->blob->file=(FILE *) gzopen(filename,type);
+- if (image->blob->file != (FILE *) NULL)
++ image->blob->gzfile=gzopen(filename,type);
++ if (image->blob->gzfile != (gzFile) NULL)
+ image->blob->type=ZipStream;
+ }
+ else
+@@ -2564,8 +2576,8 @@
+ #if defined(MAGICKCORE_BZLIB_DELEGATE)
+ if (LocaleCompare(extension,".bz2") == 0)
+ {
+- image->blob->file=(FILE *) BZ2_bzopen(filename,type);
+- if (image->blob->file != (FILE *) NULL)
++ image->blob->bzfile=BZ2_bzopen(filename,type);
++ if (image->blob->bzfile != (BZFILE *) NULL)
+ image->blob->type=BZipStream;
+ }
+ else
+@@ -2771,12 +2783,12 @@
+ {
+ default:
+ {
+- count=(ssize_t) gzread(image->blob->file,q,(unsigned int) length);
++ count=(ssize_t) gzread(image->blob->gzfile,q,(unsigned int) length);
+ break;
+ }
+ case 2:
+ {
+- c=gzgetc(image->blob->file);
++ c=gzgetc(image->blob->gzfile);
+ if (c == EOF)
+ break;
+ *q++=(unsigned char) c;
+@@ -2784,7 +2796,7 @@
+ }
+ case 1:
+ {
+- c=gzgetc(image->blob->file);
++ c=gzgetc(image->blob->gzfile);
+ if (c == EOF)
+ break;
+ *q++=(unsigned char) c;
+@@ -2799,7 +2811,7 @@
+ case BZipStream:
+ {
+ #if defined(MAGICKCORE_BZLIB_DELEGATE)
+- count=(ssize_t) BZ2_bzread((BZFILE *) image->blob->file,q,(int) length);
++ count=(ssize_t) BZ2_bzread(image->blob->bzfile,q,(int) length);
+ #endif
+ break;
+ }
+@@ -3527,7 +3539,7 @@
+ case ZipStream:
+ {
+ #if defined(MAGICKCORE_ZLIB_DELEGATE)
+- if (gzseek(image->blob->file,(off_t) offset,whence) < 0)
++ if (gzseek(image->blob->gzfile,(off_t) offset,whence) < 0)
+ return(-1);
+ #endif
+ image->blob->offset=TellBlob(image);
+@@ -3791,14 +3803,14 @@
+ case ZipStream:
+ {
+ #if defined(MAGICKCORE_ZLIB_DELEGATE)
+- status=gzflush(image->blob->file,Z_SYNC_FLUSH);
++ status=gzflush(image->blob->gzfile,Z_SYNC_FLUSH);
+ #endif
+ break;
+ }
+ case BZipStream:
+ {
+ #if defined(MAGICKCORE_BZLIB_DELEGATE)
+- status=BZ2_bzflush((BZFILE *) image->blob->file);
++ status=BZ2_bzflush(image->blob->bzfile);
+ #endif
+ break;
+ }
+@@ -3865,7 +3877,7 @@
+ case ZipStream:
+ {
+ #if defined(MAGICKCORE_ZLIB_DELEGATE)
+- offset=(MagickOffsetType) gztell(image->blob->file);
++ offset=(MagickOffsetType) gztell(image->blob->gzfile);
+ #endif
+ break;
+ }
+@@ -4014,20 +4026,20 @@
+ {
+ default:
+ {
+- count=(ssize_t) gzwrite(image->blob->file,(void *) data,
++ count=(ssize_t) gzwrite(image->blob->gzfile,(void *) data,
+ (unsigned int) length);
+ break;
+ }
+ case 2:
+ {
+- c=gzputc(image->blob->file,(int) *p++);
++ c=gzputc(image->blob->gzfile,(int) *p++);
+ if (c == EOF)
+ break;
+ count++;
+ }
+ case 1:
+ {
+- c=gzputc(image->blob->file,(int) *p++);
++ c=gzputc(image->blob->gzfile,(int) *p++);
+ if (c == EOF)
+ break;
+ count++;
+@@ -4041,8 +4053,8 @@
+ case BZipStream:
+ {
+ #if defined(MAGICKCORE_BZLIB_DELEGATE)
+- count=(ssize_t) BZ2_bzwrite((BZFILE *) image->blob->file,(void *) data,
+- (int) length);
++ count=(ssize_t) BZ2_bzwrite(image->blob->bzfile,(void *) data,(int)
++ length);
+ #endif
+ break;
+ }