Date: Sun, 28 Nov 2004 22:06:26 +0100 From: "Arjan van Leeuwen" <avleeuwen@piwebs.com> To: "FreeBSD gnats submit" <FreeBSD-gnats-submit@FreeBSD.org> Subject: ports/74489: Fix graphics/pixieplus with new ImageMagick Message-ID: <1101675986.0@vincent.piwebs.com> Resent-Message-ID: <200411282110.iASLAPXf058932@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 74489 >Category: ports >Synopsis: Fix graphics/pixieplus with new ImageMagick >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: maintainer-update >Submitter-Id: current-users >Arrival-Date: Sun Nov 28 21:10:25 GMT 2004 >Closed-Date: >Last-Modified: >Originator: Arjan van Leeuwen >Release: FreeBSD 6.0-CURRENT amd64 >Organization: >Environment: System: FreeBSD 6.0-CURRENT #0: Sun Nov 28 16:49:32 CET 2004 root@vincent.piwebs.com:/usr/obj/usr/src/sys/VINCENT >Description: This patch updates graphics/pixieplus to fix compilation against the new ImageMagick version (see ports/74487). >How-To-Repeat: >Fix: --- pixieplus.diff begins here --- diff -urN /usr/ports/graphics/pixieplus/Makefile pixieplus/Makefile --- /usr/ports/graphics/pixieplus/Makefile Sun Jul 11 23:44:43 2004 +++ pixieplus/Makefile Sun Nov 28 21:46:40 2004 @@ -7,13 +7,14 @@ PORTNAME= pixieplus PORTVERSION= 0.5.4.1 +PORTREVISION= 1 CATEGORIES= graphics kde MASTER_SITES= http://people.fruitsalad.org/avleeuwen/distfiles/${PORTNAME}/ MAINTAINER= avleeuwen@piwebs.com COMMENT= A free, fast, and feature packed image browser and viewer for KDE -LIB_DEPENDS= Magick.6:${PORTSDIR}/graphics/ImageMagick \ +LIB_DEPENDS= Magick.7:${PORTSDIR}/graphics/ImageMagick \ ungif.5:${PORTSDIR}/graphics/libungif GNU_CONFIGURE= yes @@ -28,5 +29,10 @@ .if ${OSVERSION} < 500000 BROKEN= "Does not compile on 4.x" .endif + +post-patch: + @${CP} ${FILESDIR}/blob_private.h ${WRKSRC}/app/ + @${CP} ${FILESDIR}/exception_private.h ${WRKSRC}/app/ + @${CP} ${FILESDIR}/image_private.h ${WRKSRC}/app/ .include <bsd.port.post.mk> diff -urN /usr/ports/graphics/pixieplus/files/blob_private.h pixieplus/files/blob_private.h --- /usr/ports/graphics/pixieplus/files/blob_private.h Thu Jan 1 01:00:00 1970 +++ pixieplus/files/blob_private.h Sun Nov 28 21:33:36 2004 @@ -0,0 +1,102 @@ +/* + Copyright 1999-2004 ImageMagick Studio LLC, a non-profit organization + dedicated to making software imaging solutions freely available. + + You may not use this file except in compliance with the License. + obtain a copy of the License at + + http://www.imagemagick.org/www/Copyright.html + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + ImageMagick Binary Large OBjects private methods. +*/ +#ifndef _MAGICK_BLOB_PRIVATE_H +#define _MAGICK_BLOB_PRIVATE_H + +#if defined(__cplusplus) || defined(c_plusplus) +extern "C" { +#endif + +#include "magick/image.h" +#include "magick/stream.h" + +#if !defined(MagickMaxBufferSize) +#define MagickMaxBufferSize 0x3c005UL +#endif + +typedef enum +{ + UndefinedBlobMode, + ReadBlobMode, + ReadBinaryBlobMode, + WriteBlobMode, + WriteBinaryBlobMode, + IOBinaryBlobMode +} BlobMode; + +typedef int + *(*BlobFifo)(const Image *,const void *,const size_t); + +typedef struct _BlobInfo + BlobInfo; + +extern MagickExport BlobInfo + *CloneBlobInfo(const BlobInfo *), + *ReferenceBlob(BlobInfo *); + +extern MagickExport char + *ReadBlobString(Image *,char *); + +extern MagickExport int + EOFBlob(const Image *), + ReadBlobByte(Image *), + SyncBlob(Image *); + +extern MagickExport MagickBooleanType + OpenBlob(const ImageInfo *,Image *,const BlobMode,ExceptionInfo *), + UnmapBlob(void *,const size_t); + +extern MagickExport MagickOffsetType + SeekBlob(Image *,const MagickOffsetType,const int), + TellBlob(const Image *image); + +extern MagickExport ssize_t + ReadBlob(Image *,const size_t,unsigned char *), + WriteBlob(Image *,const size_t,const unsigned char *), + WriteBlobByte(Image *,const unsigned char), + WriteBlobLSBLong(Image *,const unsigned long), + WriteBlobLSBShort(Image *,const unsigned short), + WriteBlobMSBLong(Image *,const unsigned long), + WriteBlobMSBShort(Image *,const unsigned short), + WriteBlobString(Image *,const char *); + +extern MagickExport unsigned char + *DetachBlob(BlobInfo *), + *ImageToBlob(const ImageInfo *,Image *,size_t *,ExceptionInfo *), + *MapBlob(int,const MapMode,const MagickOffsetType,const size_t); + +extern MagickExport unsigned long + ReadBlobLSBLong(Image *), + ReadBlobMSBLong(Image *); + +extern MagickExport unsigned short + ReadBlobLSBShort(Image *), + ReadBlobMSBShort(Image *); + +extern MagickExport void + AttachBlob(BlobInfo *,const void *,const size_t), + CloseBlob(Image *), + GetBlobInfo(BlobInfo *), + MSBOrderLong(unsigned char *,const size_t), + MSBOrderShort(unsigned char *,const size_t); + +#if defined(__cplusplus) || defined(c_plusplus) +} +#endif + +#endif diff -urN /usr/ports/graphics/pixieplus/files/exception_private.h pixieplus/files/exception_private.h --- /usr/ports/graphics/pixieplus/files/exception_private.h Thu Jan 1 01:00:00 1970 +++ pixieplus/files/exception_private.h Sun Nov 28 21:36:37 2004 @@ -0,0 +1,92 @@ +/* + Copyright 1999-2004 ImageMagick Studio LLC, a non-profit organization + dedicated to making software imaging solutions freely available. + + You may not use this file except in compliance with the License. + obtain a copy of the License at + + http://www.imagemagick.org/www/Copyright.html + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + ImageMagick private exception methods. +*/ +#ifndef _MAGICK_EXCEPTION_PRIVATE_H +#define _MAGICK_EXCEPTION_PRIVATE_H + +#if defined(__cplusplus) || defined(c_plusplus) +extern "C" { +#endif + +#include "magick/log.h" + +#define ThrowBinaryException(severity,tag,context) \ +{ \ + if (image != (Image *) NULL) \ + (void) ThrowMagickException(&image->exception,GetMagickModule(),severity, \ + tag,context); \ + return(MagickFalse); \ +} +#define ThrowFileException(exception,severity,tag,context) \ + (void) ThrowMagickException(exception,GetMagickModule(),severity,tag, \ + context,strerror(errno)); +#define ThrowImageException(severity,tag) \ +{ \ + (void) ThrowMagickException(exception,GetMagickModule(),severity,tag, \ + image->filename); \ + return((Image *) NULL); \ +} +#define ThrowMagickFatalException(severity,tag,context) \ +{ \ + ExceptionInfo \ + exception; \ + \ + GetExceptionInfo(&exception); \ + (void) ThrowMagickException(&exception,GetMagickModule(),severity,tag, \ + context); \ + CatchException(&exception); \ + DestroyExceptionInfo(&exception); \ +} +#define ThrowReaderException(severity,tag) \ +{ \ + (void) ThrowMagickException(exception,GetMagickModule(),severity,tag, \ + image_info->filename); \ + if ((image) != (Image *) NULL) \ + { \ + CloseBlob(image); \ + DestroyImageList(image); \ + } \ + return((Image *) NULL); \ +} +#define ThrowWriterException(severity,tag) \ +{ \ + assert(image != (Image *) NULL); \ + (void) ThrowMagickException(&image->exception,GetMagickModule(),severity, \ + tag,image->filename); \ + if (image_info->adjoin != MagickFalse) \ + while (image->previous != (Image *) NULL) \ + image=image->previous; \ + CloseBlob(image); \ + return(MagickFalse); \ +} +#define ThrowXWindowException(severity,tag,context) \ +{ \ + ExceptionInfo \ + exception; \ + \ + GetExceptionInfo(&exception); \ + (void) ThrowMagickException(&exception,GetMagickModule(),severity,tag, \ + context); \ + CatchException(&exception); \ + DestroyExceptionInfo(&exception); \ +} + +#if defined(__cplusplus) || defined(c_plusplus) +} +#endif + +#endif diff -urN /usr/ports/graphics/pixieplus/files/image_private.h pixieplus/files/image_private.h --- /usr/ports/graphics/pixieplus/files/image_private.h Thu Jan 1 01:00:00 1970 +++ pixieplus/files/image_private.h Sun Nov 28 21:35:24 2004 @@ -0,0 +1,47 @@ +/* + Copyright 1999-2004 ImageMagick Studio LLC, a non-profit organization + dedicated to making software imaging solutions freely available. + + You may not use this file except in compliance with the License. + obtain a copy of the License at + + http://www.imagemagick.org/www/Copyright.html + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + ImageMagick private image methods. +*/ +#ifndef _MAGICK_IMAGE_PRIVATE_H +#define _MAGICK_IMAGE_PRIVATE_H + +#if defined(__cplusplus) || defined(c_plusplus) +extern "C" { +#endif + +extern MagickExport const char + *BackgroundColor, + *BorderColor, + *DefaultTileFrame, + *DefaultTileGeometry, + *DefaultTileLabel, + *ForegroundColor, + *MatteColor, + *LoadImageTag, + *LoadImagesTag, + *PSDensityGeometry, + *PSPageGeometry, + *SaveImageTag, + *SaveImagesTag; + +extern MagickExport const unsigned long + UndefinedCompressionQuality; + +#if defined(__cplusplus) || defined(c_plusplus) +} +#endif + +#endif diff -urN /usr/ports/graphics/pixieplus/files/patch-app_compressedgif.cpp pixieplus/files/patch-app_compressedgif.cpp --- /usr/ports/graphics/pixieplus/files/patch-app_compressedgif.cpp Thu Jan 1 01:00:00 1970 +++ pixieplus/files/patch-app_compressedgif.cpp Sun Nov 28 21:42:52 2004 @@ -0,0 +1,13 @@ +--- app/compressedgif.cpp.orig Sat May 22 16:02:26 2004 ++++ app/compressedgif.cpp Sun Nov 28 21:37:00 2004 +@@ -9,6 +9,10 @@ + #include <api.h> + #include <assert.h> + ++#include "blob_private.h" ++#include "image_private.h" ++#include "exception_private.h" ++ + #ifndef False + #define False 0 + #endif --- pixieplus.diff ends here --- >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1101675986.0>