diff options
author | Peter Korsgaard <jacmet@sunsite.dk> | 2012-03-03 22:52:14 +0100 |
---|---|---|
committer | Peter Korsgaard <jacmet@sunsite.dk> | 2012-03-03 22:56:23 +0100 |
commit | eb54983fdf8f822e6a1000d5622bf6e13f7c259f (patch) | |
tree | f6f58e9ab338f77e3804ce6991fa946cedf66a0a /package/imagemagick/imagemagick-zlib-fix.patch | |
parent | dca6e03eac0ec70bb01492e378c694d8dabcedfd (diff) | |
download | buildroot-novena-eb54983fdf8f822e6a1000d5622bf6e13f7c259f.tar.gz buildroot-novena-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.patch | 227 |
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; + } |