[93755] trunk/dports/aqua/macclipboard-gimp

macsforever2000 at macports.org macsforever2000 at macports.org
Tue May 29 16:13:41 PDT 2012


Revision: 93755
          https://trac.macports.org/changeset/93755
Author:   macsforever2000 at macports.org
Date:     2012-05-29 16:13:41 -0700 (Tue, 29 May 2012)
Log Message:
-----------
macclipboard-gimp: Lion (at least) build fix. (#33813)

Modified Paths:
--------------
    trunk/dports/aqua/macclipboard-gimp/Portfile

Added Paths:
-----------
    trunk/dports/aqua/macclipboard-gimp/files/
    trunk/dports/aqua/macclipboard-gimp/files/patch-Lion.diff

Modified: trunk/dports/aqua/macclipboard-gimp/Portfile
===================================================================
--- trunk/dports/aqua/macclipboard-gimp/Portfile	2012-05-29 23:03:57 UTC (rev 93754)
+++ trunk/dports/aqua/macclipboard-gimp/Portfile	2012-05-29 23:13:41 UTC (rev 93755)
@@ -6,6 +6,7 @@
 name			macclipboard-gimp
 version			0.7
 maintainers		nomaintainer
+license         GPL-2
 description		Gimp <-> Mac clipboard
 long_description \
     MacClipboard is a port of the WinClipboard plugin for Gimp 2.0 to Mac OS X. \
@@ -25,8 +26,9 @@
 depends_build   port:pkgconfig
 depends_lib     lib:libgimp-2.0:gimp2
 
-patch {
-    reinplace "s|/sw|${prefix}|g" ${worksrcpath}/Makefile
+patchfiles patch-Lion.diff
+
+post-patch {
     reinplace "s|gcc|${configure.cc}|g" ${worksrcpath}/Makefile
     delete ${worksrcpath}/macclipboard
 }

Added: trunk/dports/aqua/macclipboard-gimp/files/patch-Lion.diff
===================================================================
--- trunk/dports/aqua/macclipboard-gimp/files/patch-Lion.diff	                        (rev 0)
+++ trunk/dports/aqua/macclipboard-gimp/files/patch-Lion.diff	2012-05-29 23:13:41 UTC (rev 93755)
@@ -0,0 +1,271 @@
+diff -uw macclipboard-gimp-0.7.orig/Makefile macclipboard-gimp-0.7/Makefile
+--- Makefile	2004-07-24 03:38:03.000000000 -0600
++++ Makefile	2012-05-28 18:19:34.000000000 -0600
+@@ -1,15 +1,17 @@
+-linkflags = -fnext-runtime -framework Cocoa -framework Carbon
++linkflags = -framework Cocoa -framework Carbon
++
++GIMPTOOL = gimptool-2.0
+ 
+ all : macclipboard
+ 
+ macclipboard : macclipboard.m clipboard_xfer.h
+-	gcc -I/sw/include `gimptool-2.0 --cflags` `gimptool-2.0 --libs` $(linkflags) macclipboard.m -o macclipboard
++	gcc `$(GIMPTOOL) --cflags` `$(GIMPTOOL) --libs` $(LDFLAGS) $(CFLAGS) $(linkflags) macclipboard.m -o macclipboard
+ 
+ install : macclipboard
+-	cp -p macclipboard $(HOME)/.gimp-2.0/plug-ins/
++	$(GIMPTOOL) --install-bin macclipboard
+ 
+ uninstall :
+-	rm -f $(HOME)/.gimp-2.0/plug-ins/macclipboard
++	$(GIMPTOOL) --uninstall-bin macclipboard
+ 
+ clean :
+ 	rm -f macclipboard
+diff -uw macclipboard-gimp-0.7.orig/macclipboard.m macclipboard-gimp-0.7/macclipboard.m
+--- macclipboard.m	2004-11-30 20:01:46.000000000 -0700
++++ macclipboard.m	2012-05-28 17:45:04.000000000 -0600
+@@ -32,7 +32,8 @@
+ /*
+ The Mac clipboard ('pasteboard' or 'scrap') can contain data in multiple
+ formats. The least common denominator for graphic data is 'PICT', a QuickDraw
+-picture.
++picture. However, QuickDraw, and by extension PICT, have been depricated and 
++aren't available under 64-bit code.
+ 
+ Cocoa apps prefer TIFF, which also lets us transfer alpha channel data
+ relatively reliably. When we post a TIFF, Cocoa does PICT translation for us.
+@@ -69,7 +70,18 @@
+ /* #include "config.h" */
+ 
+ #import <Cocoa/Cocoa.h>
++#ifdef __LP64__
++#define HAVE_QD_HEADERS 0
++#else
++#ifdef __MAC_10_7
++#define HAVE_QD_HEADERS 0
++#else
++#define HAVE_QD_HEADERS 1
++#endif
++#endif
++#if HAVE_QD_HEADERS
+ #include <Carbon/Carbon.h>
++#endif
+ 
+ #include <sys/types.h>
+ #include <sys/stat.h>
+@@ -117,7 +129,7 @@
+ static gboolean clipboard_paste_service    (gboolean         interactive,
+                                             NSString        *service);
+ 
+-
++#if HAVE_QD_HEADERS
+ /* PICT bits */
+ static gboolean clipboard_offscreen_pict   (PicHandle         pic,
+                                             guchar            fill,
+@@ -143,6 +155,7 @@
+                                             gint32            drawable_ID,
+                                             NSData           *data,
+                                             gint32           *image_out);
++#endif
+ 
+ /* Other image types */
+ static gboolean clipboard_paste_bitmap     (gboolean          interactive,
+@@ -173,8 +186,10 @@
+                                             gint32           drawable_ID,
+                                             NSData          *data);
+ 
++#if HAVE_QD_HEADERS
+ static gint32   clipboard_load_pict        (gboolean         interactive,
+                                             gchar            *filename);
++#endif
+ 
+ GimpPlugInInfo PLUG_IN_INFO =
+ {
+@@ -291,6 +306,7 @@
+                           1, 0,
+                           copy_args, NULL);
+ 
++#if HAVE_QD_HEADERS
+   gimp_install_procedure ("file_pict_load",
+                           "Loads files of Macintosh PICT file format",
+                           "Loads files of Macintosh PICT file format",
+@@ -308,6 +324,7 @@
+                                     "pict",
+                                     "",
+                                     "");
++#endif
+ }
+ 
+ static void
+@@ -324,7 +341,7 @@
+   int interactive = (GIMP_RUN_INTERACTIVE==run_mode);
+   int ok = FALSE;
+   
+-  NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
++	NSAutoreleasePool *pool = [NSAutoreleasePool new];
+   
+   *nreturn_vals = 1;
+   *return_vals = values;
+@@ -348,6 +365,7 @@
+     ok = clipboard_paste_service (interactive, @"Grab/Selection");
+   else if (strcmp (name, "plug_in_clipboard_grab_timed") == 0)
+     ok = clipboard_paste_service (interactive, @"Grab/Timed Screen");
++#if HAVE_QD_HEADERS
+   else if (strcmp (name, "file_pict_load") == 0)
+     {
+       gint32 image = clipboard_load_pict (interactive, param[1].data.d_string);
+@@ -362,12 +380,13 @@
+   else
+     {
+       values[0].data.d_status = GIMP_PDB_CALLING_ERROR;
+-      [pool release];
++		[pool drain];
+       return;
+     }
++#endif
+   
+   values[0].data.d_status = ok ? GIMP_PDB_SUCCESS : GIMP_PDB_EXECUTION_ERROR;
+-  [pool release];
++	[pool drain];
+ }
+ 
+ /*
+@@ -523,10 +542,13 @@
+     {
+       [board setData: [bitmap TIFFRepresentation] forType: NSTIFFPboardType];
+ 
++#if HAVE_QD_HEADERS
+       /* Force conversion to PICT before we leave */
+       [board types];
+       [board dataForType: NSPICTPboardType];
++#endif
+     }
++	[bitmap release];
+ 
+   return TRUE;
+ }
+@@ -553,7 +575,7 @@
+ {
+   NSApplication *app = [NSApplication sharedApplication];
+   [app registerServicesMenuSendTypes: nil
+-       returnTypes: [NSArray arrayWithObjects: NSTIFFPboardType, nil]];
++						   returnTypes: [NSArray arrayWithObject: NSTIFFPboardType]];
+ 
+   NSPasteboard *board = [NSPasteboard pasteboardWithUniqueName];
+ 
+@@ -561,13 +583,10 @@
+   if (NSPerformService(service, board))
+     return clipboard_paste_board (interactive, IMAGE_NONE, IMAGE_NONE, board);
+ 
+-  g_message (_("Couldn't run system service %s"), [service cString]);
++	g_message (_("Couldn't run system service %s"), [service UTF8String]);
+   return FALSE;
+ }
+ 
+-
+-
+-
+ /*
+  * Find pasteable image(s) from a given pasteboard and um... paste them.
+  */
+@@ -582,7 +601,9 @@
+   NSString *type = [board availableTypeFromArray:
+     [NSArray arrayWithObjects:
+       NSTIFFPboardType,
++#if HAVE_QD_HEADERS
+       NSPICTPboardType,
++#endif
+       NSRTFDPboardType,
+       nil]];
+   if (type == nil)
+@@ -601,8 +622,10 @@
+   if ([type isEqualToString: NSTIFFPboardType])
+     return clipboard_paste_bitmap (interactive, image_ID, drawable_ID,
+       [NSBitmapImageRep imageRepWithData: data], NULL);
++#if HAVE_QD_HEADERS
+   else if ([type isEqualToString: NSPICTPboardType])
+     return clipboard_paste_pict (interactive, image_ID, drawable_ID, data, NULL);
++#endif
+   else if ([type isEqualToString: NSRTFDPboardType])
+     return clipboard_paste_rtfd (interactive, image_ID, drawable_ID, data);
+ 
+@@ -610,7 +633,7 @@
+   return FALSE;
+ }
+ 
+-
++#if HAVE_QD_HEADERS
+ /*
+  * Render a given PICT into a newly created offscreen 32-bit graphics
+  * world, returning some handy information about the bits.
+@@ -825,6 +848,7 @@
+   
+   return retval;
+ }
++#endif
+ 
+ static gboolean
+ clipboard_paste_image (gboolean       interactive,
+@@ -975,7 +999,7 @@
+       if (channels != (3 + alpha))
+         {
+           g_message (_("Don't understand %d-channel image in RGB image (%s; alpha: %s)"),
+-                     channels, [colorSpace cString], alpha ? "yes" : "no");
++					   channels, [colorSpace UTF8String], alpha ? "yes" : "no");
+           return FALSE;
+         }
+     }
+@@ -986,10 +1010,11 @@
+       if (channels != (1 + alpha))
+         {
+           g_message (_("Don't understand %d-channel image in grayscale image (%s; alpha: %s)"),
+-                     channels, [colorSpace cString], alpha ? "yes" : "no");
++					   channels, [colorSpace UTF8String], alpha ? "yes" : "no");
+           return FALSE;
+         }
+     }
++	/* Apparently black color spaces are depricated in Snow Leopard and later*/
+   else if ([colorSpace isEqualToString: NSCalibratedBlackColorSpace] ||
+            [colorSpace isEqualToString: NSDeviceBlackColorSpace])
+     {
+@@ -997,13 +1022,13 @@
+       if (channels != (1 + alpha))
+         {
+           g_message (_("Don't understand %d-channel image in grayscale image (%s; alpha: %s)"),
+-                     channels, [colorSpace cString], alpha ? "yes" : "no");
++					   channels, [colorSpace UTF8String], alpha ? "yes" : "no");
+           return FALSE;
+         }
+     }
+   else
+     {
+-      g_message (_("Unknown colorspace! %s"), [colorSpace cString]);
++		g_message (_("Unknown colorspace! %s"), [colorSpace UTF8String]);
+       return FALSE;
+     }
+ 
+@@ -1132,7 +1157,7 @@
+                                 [item regularFileContents]], NULL))
+                         numCopied++;
+                       else
+-                        NSLog (@"Not a TIFF: %s", [item filename]);
++							NSLog (@"Not a TIFF: %@", [item filename]);
+                     }
+                 }
+               if (numCopied == 0)
+@@ -1154,6 +1179,7 @@
+   return FALSE;
+ }
+ 
++#if HAVE_QD_HEADERS
+ static gint32
+ clipboard_load_pict (gboolean  interactive,
+                      gchar    *filename)
+@@ -1181,3 +1207,5 @@
+   g_message ("Could not open file %s", filename);
+   return -1;
+ }
++#endif
++
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20120529/90676e58/attachment-0001.html>


More information about the macports-changes mailing list