diff options
author | Willy Sudiarto Raharjo <willysr@slackbuilds.org> | 2016-02-02 22:09:29 +0700 |
---|---|---|
committer | Willy Sudiarto Raharjo <willysr@slackbuilds.org> | 2016-02-05 07:02:20 +0700 |
commit | 7c396425e80731eb9bffb42f99993caf851a4bb5 (patch) | |
tree | 209517e11bb7aebdb14afc383ca868d9f80fa6a9 | |
parent | 11fb6ef4e3a7a99662bc83f57977d1f772d87d12 (diff) |
libraries/libgdiplus: Updated for version 4.2.
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
-rw-r--r-- | libraries/libgdiplus/libgdiplus-giflib.patch | 195 | ||||
-rw-r--r-- | libraries/libgdiplus/libgdiplus.SlackBuild | 6 | ||||
-rw-r--r-- | libraries/libgdiplus/libgdiplus.info | 6 |
3 files changed, 4 insertions, 203 deletions
diff --git a/libraries/libgdiplus/libgdiplus-giflib.patch b/libraries/libgdiplus/libgdiplus-giflib.patch deleted file mode 100644 index 149820ddf67f..000000000000 --- a/libraries/libgdiplus/libgdiplus-giflib.patch +++ /dev/null @@ -1,195 +0,0 @@ ---- libgdiplus-3.12/src/gifcodec.c.orig 2015-01-05 11:27:06.000000000 +0100 -+++ libgdiplus-3.12/src/gifcodec.c 2015-01-25 17:25:58.991762538 +0100 -@@ -39,11 +39,6 @@ GUID gdip_gif_image_format_guid = {0xb96 - - #include "gifcodec.h" - --#ifdef EgifOpen --/* giflib declares this incorrectly as EgifOpen */ --extern GifFileType *EGifOpen(void *userData, OutputFunc writeFunc); --#endif -- - /* Data structure used for callback */ - typedef struct - { -@@ -107,7 +102,7 @@ gdip_gif_inputfunc (GifFileType *gif, Gi - */ - - static int --AddExtensionBlockMono(SavedImage *New, int Len, BYTE ExtData[]) -+AddExtensionBlockMono(SavedImage *New, int Function, int Len, BYTE ExtData[]) - { - ExtensionBlock *ep; - -@@ -123,15 +118,15 @@ AddExtensionBlockMono(SavedImage *New, i - - ep = &New->ExtensionBlocks[New->ExtensionBlockCount++]; - -+ ep->Function = Function; - ep->ByteCount=Len; -- ep->Bytes = (char *)GdipAlloc(ep->ByteCount); -+ ep->Bytes = (GifByteType *)GdipAlloc(ep->ByteCount); - if (ep->Bytes == NULL) { - return (GIF_ERROR); - } - - if (ExtData) { - memcpy(ep->Bytes, ExtData, Len); -- ep->Function = New->Function; - } - - return (GIF_OK); -@@ -168,6 +163,7 @@ static int - DGifSlurpMono(GifFileType * GifFile, SavedImage *TrailingExtensions) - { - int ImageSize; -+ int Function; - GifRecordType RecordType; - SavedImage *sp; - GifByteType *ExtData; -@@ -234,20 +230,19 @@ DGifSlurpMono(GifFileType * GifFile, Sav - } - - case EXTENSION_RECORD_TYPE: { -- if (DGifGetExtension(GifFile, &temp_save.Function, &ExtData) == GIF_ERROR) { -+ if (DGifGetExtension(GifFile, &Function, &ExtData) == GIF_ERROR) { - return (GIF_ERROR); - } - - while (ExtData != NULL) { - /* Create an extension block with our data */ -- if (AddExtensionBlockMono(&temp_save, ExtData[0], &ExtData[1]) == GIF_ERROR) { -+ if (AddExtensionBlockMono(&temp_save, Function, ExtData[0], &ExtData[1]) == GIF_ERROR) { - return (GIF_ERROR); - } - - if (DGifGetExtensionNext(GifFile, &ExtData) == GIF_ERROR) { - return (GIF_ERROR); - } -- temp_save.Function = 0; - } - break; - } -@@ -306,9 +301,9 @@ gdip_load_gif_image (void *stream, GpIma - loop_counter = FALSE; - - if (from_file) { -- gif = DGifOpen(stream, &gdip_gif_fileinputfunc); -+ gif = DGifOpen(stream, &gdip_gif_fileinputfunc, NULL); - } else { -- gif = DGifOpen (stream, &gdip_gif_inputfunc); -+ gif = DGifOpen (stream, &gdip_gif_inputfunc, NULL); - } - - if (gif == NULL) { -@@ -583,7 +578,11 @@ gdip_load_gif_image (void *stream, GpIma - } - - FreeExtensionMono(&global_extensions); -+#if (GIFLIB_MAJOR > 5) || ((GIFLIB_MAJOR == 5) && (GIFLIB_MINOR >= 1)) -+ DGifCloseFile (gif, NULL); -+#else - DGifCloseFile (gif); -+#endif - - *image = result; - return Ok; -@@ -599,7 +598,11 @@ error: - - if (gif != NULL) { - FreeExtensionMono (&global_extensions); -+#if (GIFLIB_MAJOR > 5) || ((GIFLIB_MAJOR == 5) && (GIFLIB_MINOR >= 1)) -+ DGifCloseFile (gif, NULL); -+#else - DGifCloseFile (gif); -+#endif - } - - *image = NULL; -@@ -663,9 +666,9 @@ gdip_save_gif_image (void *stream, GpIma - } - - if (from_file) { -- fp = EGifOpenFileName (stream, 0); -+ fp = EGifOpenFileName (stream, 0, NULL); - } else { -- fp = EGifOpen (stream, gdip_gif_outputfunc); -+ fp = EGifOpen (stream, gdip_gif_outputfunc, NULL); - } - - if (!fp) { -@@ -704,7 +707,7 @@ gdip_save_gif_image (void *stream, GpIma - goto error; - } - -- cmap = MakeMapObject(cmap_size, 0); -+ cmap = GifMakeMapObject(cmap_size, 0); - - pixbuf = GdipAlloc(pixbuf_size); - if (pixbuf == NULL) { -@@ -795,7 +798,7 @@ gdip_save_gif_image (void *stream, GpIma - pixbuf = pixbuf_org; - } else { - cmap_size = 256; -- cmap = MakeMapObject (cmap_size, 0); -+ cmap = GifMakeMapObject (cmap_size, 0); - - red = GdipAlloc(pixbuf_size); - green = GdipAlloc(pixbuf_size); -@@ -826,13 +829,13 @@ gdip_save_gif_image (void *stream, GpIma - v += 4; - } - } -- if (QuantizeBuffer(bitmap_data->width, bitmap_data->height, &cmap_size, -+ if (GifQuantizeBuffer(bitmap_data->width, bitmap_data->height, &cmap_size, - red, green, blue, pixbuf, cmap->Colors) == GIF_ERROR) { - goto error; - } - } - -- cmap->BitsPerPixel = BitSize (cmap_size); -+ cmap->BitsPerPixel = GifBitSize (cmap_size); - cmap->ColorCount = 1 << cmap->BitsPerPixel; - - if ((frame == 0) && (k == 0)) { -@@ -850,8 +853,10 @@ gdip_save_gif_image (void *stream, GpIma - Buffer[0] = 1; - Buffer[1] = ptr[0]; - Buffer[2] = ptr[1]; -- EGifPutExtensionFirst(fp, APPLICATION_EXT_FUNC_CODE, 11, "NETSCAPE2.0"); -- EGifPutExtensionLast(fp, APPLICATION_EXT_FUNC_CODE, 3, Buffer); -+ EGifPutExtensionLeader(fp, APPLICATION_EXT_FUNC_CODE); -+ EGifPutExtensionBlock(fp, 11, "NETSCAPE2.0"); -+ EGifPutExtensionBlock(fp, 3, Buffer); -+ EGifPutExtensionTrailer(fp); - } - } - -@@ -903,7 +908,7 @@ gdip_save_gif_image (void *stream, GpIma - pixbuf += bitmap_data->width; - } - -- FreeMapObject (cmap); -+ GifFreeMapObject (cmap); - if (red != NULL) { - GdipFree (red); - } -@@ -925,13 +930,17 @@ gdip_save_gif_image (void *stream, GpIma - } - } - -+#if (GIFLIB_MAJOR > 5) || ((GIFLIB_MAJOR == 5) && (GIFLIB_MINOR >= 1)) -+ EGifCloseFile (fp, NULL); -+#else - EGifCloseFile (fp); -+#endif - - return Ok; - - error: - if (cmap != NULL) { -- FreeMapObject (cmap); -+ GifFreeMapObject (cmap); - } - - if (red != NULL) { diff --git a/libraries/libgdiplus/libgdiplus.SlackBuild b/libraries/libgdiplus/libgdiplus.SlackBuild index d3dea180a16c..ab080072b8c9 100644 --- a/libraries/libgdiplus/libgdiplus.SlackBuild +++ b/libraries/libgdiplus/libgdiplus.SlackBuild @@ -25,7 +25,7 @@ # Modified by the SlackBuilds.org project PRGNAM=libgdiplus -VERSION=${VERSION:-3.12} +VERSION=${VERSION:-4.2} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} @@ -71,10 +71,6 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; -# Patch for latest giflib (current) -# from https://github.com/pld-linux/libgdiplus/blob/master/libgdiplus-giflib.patch -patch -p1 < $CWD/libgdiplus-giflib.patch - CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ ./configure \ diff --git a/libraries/libgdiplus/libgdiplus.info b/libraries/libgdiplus/libgdiplus.info index 09d02f32ddac..2098b9c6b803 100644 --- a/libraries/libgdiplus/libgdiplus.info +++ b/libraries/libgdiplus/libgdiplus.info @@ -1,8 +1,8 @@ PRGNAM="libgdiplus" -VERSION="3.12" +VERSION="4.2" HOMEPAGE="http://www.go-mono.org" -DOWNLOAD="http://origin-download.mono-project.com/sources/libgdiplus/libgdiplus-3.12.tar.gz" -MD5SUM="b8fd78c2adce16498354c2476a248d98" +DOWNLOAD="http://origin-download.mono-project.com/sources/libgdiplus/libgdiplus-4.2.tar.gz" +MD5SUM="3e68075aa0911d5ebc2b3739e85af0ea" DOWNLOAD_x86_64="" MD5SUM_x86_64="" REQUIRES="" |