ports/74489: Fix graphics/pixieplus with new ImageMagick
Arjan van Leeuwen
avleeuwen at piwebs.com
Sun Nov 28 21:10:26 UTC 2004
>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 at 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 at 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:
More information about the freebsd-ports-bugs
mailing list