20192735 ImageMagick should gets its tests to run, with master results
authorJohn Beck <John.Beck@Oracle.COM>
Thu, 12 Feb 2015 08:27:28 -0800
changeset 3798 c0f7a9f723ca
parent 3776 b70e2d3bcc71
child 3799 c3e697abd23b
20192735 ImageMagick should gets its tests to run, with master results 20526097 add ASLR & 64-bit support to ImageMagick
components/imagemagick/Makefile
components/imagemagick/imagemagick.p5m
components/imagemagick/patches/la.patch
components/imagemagick/patches/no__attribute__.patch
components/imagemagick/patches/perl_LD_RUN_PATH.patch
components/imagemagick/patches/png.patch
components/imagemagick/patches/test-exceptions.patch
components/imagemagick/test/results-32.master
components/imagemagick/test/results-64.master
--- a/components/imagemagick/Makefile	Thu Feb 12 10:24:12 2015 -0800
+++ b/components/imagemagick/Makefile	Thu Feb 12 08:27:28 2015 -0800
@@ -20,7 +20,7 @@
 #
 
 #
-# Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
 #
 
 include ../../make-rules/shared-macros.mk
@@ -47,7 +47,6 @@
 
 # IPS_COMPONENT_VERSION is by default set to $(COMPONENT_VERSION) but in
 # this case we need to replace the '-' by '.'.
-#
 IPS_COMPONENT_VERSION=	$(COMPONENT_VERSION).$(COMPONENT_SUBVERSION)
 
 COMPONENT_POST_UNPACK_ACTION= ( $(MV) $(COMPONENT_SRC)-$(COMPONENT_SUBVERSION) \
@@ -55,16 +54,11 @@
 
 # To get the Perl modules built it is necessary to copy the PerlMagick directory
 # to the build directory
-#
 COMPONENT_PRE_CONFIGURE_ACTION= ($(CP) -R $(SOURCE_DIR)/PerlMagick $(@D))
 
-LIBS += -lsocket -lnsl
-CONFIGURE_ENV += LIBS="$(LIBS)"
-
 # Show name of "error tag" as part of the warning
-#
 CFLAGS += -errtags=yes
-# To remove the complier complaints about __restrict keyword,
+# To remove the compiler complaints about __restrict keyword,
 # -D_magickcore_restrict should be used.
 CFLAGS += -xc99=%all -D_magickcore_restrict=
 
@@ -83,16 +77,26 @@
 # Using option 'with-fontconfig=no' so that the fonts/fonts path specified in
 # configuration file 'type-ghostscript.xml' is being used.
 CONFIGURE_OPTIONS+= --with-fontconfig=no
-# Configure option 'with-gs-font-dir' is required because some build systems might 
-# not have ghostscript fonts installed.
+# Configure option 'with-gs-font-dir' is required because some build systems
+# might not have ghostscript fonts installed.
 CONFIGURE_OPTIONS+= --with-gs-font-dir="/usr/share/ghostscript/fonts"
 CONFIGURE_OPTIONS+= --x-libraries=$(CONFIGURE_LIBDIR.$(BITS)) 
 CONFIGURE_OPTIONS.32+= --with-perl=$(PERL)
 CONFIGURE_OPTIONS.32+= --with-perl-options="INSTALLDIRS=vendor"
 CONFIGURE_OPTIONS.64+= --without-perl
 
-# common targets
-#
+# Needed for "gmake test" to work successfully.  If SHELLOPTS is exported (as
+# it is by the Userland Makefiles), then all shell options get exported to
+# child invocations of bash, which results in test failures due to nounset and
+# xtrace being set unexpectedly, and errors such as "$1: unbound variable" and
+# diffs failing due to script tracing in output files.
+unexport SHELLOPTS
+
+# Tests hang waiting for input unless stdin is redirected.
+COMPONENT_TEST_TARGETS = check < /dev/null
+
+ASLR_MODE = $(ASLR_ENABLE)
+
 configure:	$(CONFIGURE_32_and_64)
 
 build:		$(BUILD_32_and_64)
@@ -117,12 +121,7 @@
 	/usr/bin/elfedit -e 'dyn:delete RPATH' \
 	    $(PROTO_DIR)/usr/lib/$(MACH64)/libMagickCore-6.Q16.so.1.0.0
 
-# ImageMagick tests have hard-coded absolute paths inside, so essentially they
-# can be run only after ImageMagick is actually installed and this is not 
-# possible, so the tests are not invoked.
-#
-test:		$(NO_TESTS)
-	@echo "Tests can be run only after ImageMagick is installed."
+test:		$(TEST_32_and_64)
 
 BUILD_PKG_DEPENDENCIES= $(BUILD_TOOLS)
 
--- a/components/imagemagick/imagemagick.p5m	Thu Feb 12 10:24:12 2015 -0800
+++ b/components/imagemagick/imagemagick.p5m	Thu Feb 12 08:27:28 2015 -0800
@@ -43,17 +43,17 @@
 file path=usr/bin/MagickCore-config
 file path=usr/bin/MagickWand-config
 file path=usr/bin/Wand-config
-file path=usr/bin/animate
-file path=usr/bin/compare
-file path=usr/bin/composite
-file path=usr/bin/conjure
-file path=usr/bin/convert
-file path=usr/bin/display
-file path=usr/bin/identify
-file path=usr/bin/import
-file path=usr/bin/mogrify
-file path=usr/bin/montage
-file path=usr/bin/stream
+file usr/bin/$(MACH64)/animate path=usr/bin/animate
+file usr/bin/$(MACH64)/compare path=usr/bin/compare
+file usr/bin/$(MACH64)/composite path=usr/bin/composite
+file usr/bin/$(MACH64)/conjure path=usr/bin/conjure
+file usr/bin/$(MACH64)/convert path=usr/bin/convert
+file usr/bin/$(MACH64)/display path=usr/bin/display
+file usr/bin/$(MACH64)/identify path=usr/bin/identify
+file usr/bin/$(MACH64)/import path=usr/bin/import
+file usr/bin/$(MACH64)/mogrify path=usr/bin/mogrify
+file usr/bin/$(MACH64)/montage path=usr/bin/montage
+file usr/bin/$(MACH64)/stream path=usr/bin/stream
 file path=usr/include/ImageMagick-6/Magick++.h
 file path=usr/include/ImageMagick-6/Magick++/Blob.h
 file path=usr/include/ImageMagick-6/Magick++/CoderInfo.h
--- a/components/imagemagick/patches/la.patch	Thu Feb 12 10:24:12 2015 -0800
+++ b/components/imagemagick/patches/la.patch	Thu Feb 12 08:27:28 2015 -0800
@@ -1,9 +1,9 @@
-To avoid dependency on libtool/libltdl, change "*.la" extension
-to "*.so"
------------------------------------------------------------------
+To avoid dependency on libtool/libltdl, change "*.la" extension to "*.so".
+This patch comes from in-house.  It has not been submitted upstream; plans
+unclear.
 
---- ImageMagick-6.7.8/magick/module.c	Sun Dec 18 17:54:26 2011
-+++ ImageMagick-6.7.8/magick/module.c	Thu Oct  4 00:00:46 2012
+--- ImageMagick-6.8.3/magick/module.c.~1~	2012-12-07 05:14:16.000000000 -0800
++++ ImageMagick-6.8.3/magick/module.c	2015-02-10 20:31:54.595614457 -0800
 @@ -72,7 +72,7 @@
    Define declarations.
  */
@@ -13,7 +13,7 @@
  #else
  #  if defined(_DEBUG)
  #    define ModuleGlobExpression "IM_MOD_DB_*.dll"
[email protected]@ -1454,7 +1454,7 @@
[email protected]@ -1453,7 +1453,7 @@
    (void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",tag);
    assert(name != (char *) NULL);
  #if defined(MAGICKCORE_LTDL_DELEGATE)
@@ -22,7 +22,7 @@
    (void) LocaleLower(name);
  #else
  #if defined(MAGICKCORE_WINDOWS_SUPPORT)
[email protected]@ -1505,7 +1505,7 @@
[email protected]@ -1504,7 +1504,7 @@
  #if !defined(MAGICKCORE_LTDL_DELEGATE)
    (void) FormatLocaleString(name,MaxTextExtent,"%s.dll",tag);
  #else
--- a/components/imagemagick/patches/no__attribute__.patch	Thu Feb 12 10:24:12 2015 -0800
+++ b/components/imagemagick/patches/no__attribute__.patch	Thu Feb 12 08:27:28 2015 -0800
@@ -1,9 +1,11 @@
 ImageMagick uses many unsupported attributes by Oracle Solaris Studio.
 Supported attributes are here:
 http://docs.oracle.com/cd/E24457_01/html/E21991/gljol.html
-================================================================================
---- ImageMagick-6.7.8/magick/method-attribute.h.orig	Sun Feb 19 10:15:53 2012
-+++ ImageMagick-6.7.8/magick/method-attribute.h	Tue Oct 16 06:58:12 2012
+This patch comes from in-house; as it is Solaris-specific, it will not
+be contributed upstream.
+
+--- ImageMagick-6.8.3/magick/method-attribute.h.~1~	2013-01-16 14:17:00.000000000 -0800
++++ ImageMagick-6.8.3/magick/method-attribute.h	2015-02-10 20:34:01.057456551 -0800
 @@ -110,7 +110,7 @@
  
  #if defined(MAGICKCORE_HAVE___ATTRIBUTE__)
@@ -11,5 +13,5 @@
 -#  define magick_attribute  __attribute__
 +#  define magick_attribute(x)
  #  define magick_unused(x)  magick_unused_ ## x __attribute__((unused))
- #else
- #  define magick_aligned(x)  /* nothing */
+ #elif defined(MAGICKCORE_WINDOWS_SUPPORT) && !defined(__CYGWIN__)
+ #  define magick_aligned(x)  __declspec(align(x))
--- a/components/imagemagick/patches/perl_LD_RUN_PATH.patch	Thu Feb 12 10:24:12 2015 -0800
+++ b/components/imagemagick/patches/perl_LD_RUN_PATH.patch	Thu Feb 12 08:27:28 2015 -0800
@@ -1,9 +1,8 @@
-This patch addresses the issue reported in bug 15809845.
-15809845 - SUNBT7191272 imagemagick perl module compiled with wrong RUNPATH 
---------------------------------------------------------------------------------
---- ImageMagick-6.7.8/PerlMagick/Makefile.am	Sun Dec 18 17:54:26 2011
-+++ ImageMagick-6.7.8/PerlMagick/Makefile.am	Thu Oct  4 00:11:45 2012
[email protected]@ -50,7 +50,7 @@
+This patch is Solaris-specific and thus will not be contributed upstream.
+
+--- ImageMagick-6.8.3/PerlMagick/Makefile.am.~1~	2013-02-13 15:22:54.000000000 -0800
++++ ImageMagick-6.8.3/PerlMagick/Makefile.am	2015-02-10 20:35:39.222565738 -0800
[email protected]@ -59,7 +59,7 @@
  
  install-exec-perl: $(PERLMAKEFILE)
  	( cd $(PERLMAGICK) && $(MAKE) CC='@[email protected]' && \
@@ -12,7 +11,7 @@
  
  all-perl: perl-sources
  
[email protected]@ -58,7 +58,8 @@
[email protected]@ -67,7 +67,8 @@
  	echo "Uninstall not supported for PerlMagick"
  
  check-perl: $(PERLMAKEFILE)
@@ -22,9 +21,9 @@
  
  perl-build: $(PERLMAKEFILE)
  	( cd $(PERLMAGICK) && $(MAKE) CC='@[email protected]' )
---- ImageMagick-6.7.8/Makefile.in	Sun Jul 22 05:35:45 2012
-+++ ImageMagick-6.7.8/Makefile.in	Thu Oct  4 00:15:46 2012
[email protected]@ -10584,7 +10584,7 @@
+--- ImageMagick-6.8.3/Makefile.in.~1~	2013-02-25 00:55:13.000000000 -0800
++++ ImageMagick-6.8.3/Makefile.in	2015-02-10 20:37:32.843393109 -0800
[email protected]@ -10472,7 +10472,7 @@
  
  @[email protected]@[email protected]: $(PERLMAKEFILE)
  @[email protected]@[email protected]	( cd $(PERLMAGICK) && $(MAKE) CC='@[email protected]' && \
@@ -33,7 +32,7 @@
  
  @[email protected]@[email protected]: perl-sources
  
[email protected]@ -10592,7 +10592,7 @@
[email protected]@ -10480,7 +10480,7 @@
  @[email protected]@[email protected]	echo "Uninstall not supported for PerlMagick"
  
  @[email protected]@[email protected]: $(PERLMAKEFILE)
--- a/components/imagemagick/patches/png.patch	Thu Feb 12 10:24:12 2015 -0800
+++ b/components/imagemagick/patches/png.patch	Thu Feb 12 08:27:28 2015 -0800
@@ -1,7 +1,10 @@
---- ImageMagick-6.3.4/coders/png.c.orig	Mon Aug 23 12:50:12 2010
-+++ ImageMagick-6.3.4/coders/png.c	Mon Aug 23 12:51:35 2010
[email protected]@ -76,6 +76,10 @@
- #if defined(HasPNG)
+The history of this patch is unknown: it existed when ImageMagick was
+migrated to Userland.
+
+--- ImageMagick-6.8.3/coders/png.c.~1~	2013-02-15 04:48:48.000000000 -0800
++++ ImageMagick-6.8.3/coders/png.c	2015-02-10 20:39:14.131500401 -0800
[email protected]@ -100,6 +100,10 @@
+ 
  #include "png.h"
  #include "zlib.h"
 +#if PNG_LIBPNG_VER >= 10400
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/imagemagick/patches/test-exceptions.patch	Thu Feb 12 08:27:28 2015 -0800
@@ -0,0 +1,276 @@
+This patch was developed in-house to get 'gmake test' to compile.  We have
+not yet determined whether or not to pass it upstream.
+
+--- ImageMagick-6.8.3/Magick++/demo/button.cpp.orig	2010-01-05 06:04:01.000000000 -0800
++++ ImageMagick-6.8.3/Magick++/demo/button.cpp	2015-02-11 07:03:58.267285998 -0800
[email protected]@ -90,7 +90,7 @@
+     // button.display();
+ 
+   }
+-  catch( exception &error_ )
++  catch( Exception &error_ )
+     {
+       cout << "Caught exception: " << error_.what() << endl;
+       return 1;
+--- ImageMagick-6.8.3/Magick++/demo/demo.cpp.orig	2010-05-29 18:16:06.000000000 -0700
++++ ImageMagick-6.8.3/Magick++/demo/demo.cpp	2015-02-11 07:05:43.515927192 -0800
[email protected]@ -510,7 +510,7 @@
+     //    montage_image.display();
+ 
+   }
+-  catch( exception &error_ )
++  catch( Exception &error_ )
+     {
+       cout << "Caught exception: " << error_.what() << endl;
+       return 1;
+--- ImageMagick-6.8.3/Magick++/demo/flip.cpp.orig	2009-09-05 14:47:34.000000000 -0700
++++ ImageMagick-6.8.3/Magick++/demo/flip.cpp	2015-02-11 07:06:56.484455695 -0800
[email protected]@ -50,7 +50,7 @@
+     writeImages( morphed.begin(), morphed.end(), "flip_out.miff" );
+ 
+   }
+-  catch( exception &error_ )
++  catch( Exception &error_ )
+     {
+       cout << "Caught exception: " << error_.what() << endl;
+       return 1;
+--- ImageMagick-6.8.3/Magick++/demo/gravity.cpp.orig	2010-05-27 13:51:26.000000000 -0700
++++ ImageMagick-6.8.3/Magick++/demo/gravity.cpp	2015-02-11 07:08:01.108746080 -0800
[email protected]@ -73,7 +73,7 @@
+     // system( "animate gravity_out.miff" );
+ 
+   }
+-  catch( exception &error_ )
++  catch( Exception &error_ )
+     {
+       cout << "Caught exception: " << error_.what() << endl;
+       return 1;
+--- ImageMagick-6.8.3/Magick++/demo/piddle.cpp.orig	2010-01-05 06:04:01.000000000 -0800
++++ ImageMagick-6.8.3/Magick++/demo/piddle.cpp	2015-02-11 07:09:26.653829479 -0800
[email protected]@ -165,7 +165,7 @@
+     //     image.display( );
+ 
+   }
+-  catch( exception &error_ )
++  catch( Exception &error_ )
+     {
+       cout << "Caught exception: " << error_.what() << endl;
+       return 1;
+--- ImageMagick-6.8.3/Magick++/demo/shapes.cpp.orig	2011-02-02 18:08:56.000000000 -0800
++++ ImageMagick-6.8.3/Magick++/demo/shapes.cpp	2015-02-11 07:10:26.414505806 -0800
[email protected]@ -109,7 +109,7 @@
+     // image.display( );
+ 
+   }
+-  catch( exception &error_ )
++  catch( Exception &error_ )
+     {
+       cout << "Caught exception: " << error_.what() << endl;
+       return 1;
+--- ImageMagick-6.8.3/Magick++/demo/zoom.cpp.orig	2010-05-29 18:16:06.000000000 -0700
++++ ImageMagick-6.8.3/Magick++/demo/zoom.cpp	2015-02-11 07:12:38.302672267 -0800
[email protected]@ -63,7 +63,7 @@
+             try {
+               density=Geometry(argv[argv_index]);
+             }
+-            catch( exception &/* error_ */)
++            catch( Exception &/* error_ */)
+               {
+                 ParseError(argv_index,argv);
+               }
[email protected]@ -119,7 +119,7 @@
+             try {
+               geometry=Geometry(argv[argv_index]);
+             }
+-            catch( exception &/* error_ */)
++            catch( Exception &/* error_ */)
+               {
+                 ParseError(argv_index,argv);
+               }
[email protected]@ -132,7 +132,7 @@
+             try {
+               resample=Geometry(argv[argv_index]);
+             }
+-            catch( exception &/* error_ */)
++            catch( Exception &/* error_ */)
+               {
+                 ParseError(argv_index,argv);
+               }
[email protected]@ -180,7 +180,7 @@
+         }
+       image.write(output_file);
+     }
+-    catch( exception &error_ )
++    catch( Exception &error_ )
+       {
+         cout << "Caught exception: " << error_.what() << endl;
+         return 1;
+--- ImageMagick-6.8.3/Magick++/tests/appendImages.cpp.orig	2009-09-05 14:47:34.000000000 -0700
++++ ImageMagick-6.8.3/Magick++/tests/appendImages.cpp	2015-02-11 07:16:52.216679885 -0800
[email protected]@ -76,11 +76,6 @@
+       cout << "Caught exception: " << error_.what() << endl;
+       return 1;
+     }
+-  catch( exception &error_ )
+-    {
+-      cout << "Caught exception: " << error_.what() << endl;
+-      return 1;
+-    }
+ 
+   if ( failures )
+     {
+--- ImageMagick-6.8.3/Magick++/tests/attributes.cpp.orig	2012-06-18 10:27:31.000000000 -0700
++++ ImageMagick-6.8.3/Magick++/tests/attributes.cpp	2015-02-11 07:19:39.714613173 -0800
[email protected]@ -1501,11 +1501,6 @@
+       cout << "Caught exception: " << error_.what() << endl;
+       return 1;
+     }
+-  catch( exception &error_ )
+-    {
+-      cout << "Caught exception: " << error_.what() << endl;
+-      return 1;
+-    }
+   
+   if ( failures )
+     {
+--- ImageMagick-6.8.3/Magick++/tests/averageImages.cpp.orig	2009-09-05 14:47:34.000000000 -0700
++++ ImageMagick-6.8.3/Magick++/tests/averageImages.cpp	2015-02-11 07:20:22.914703162 -0800
[email protected]@ -58,11 +58,6 @@
+       cout << "Caught exception: " << error_.what() << endl;
+       return 1;
+     }
+-  catch( exception &error_ )
+-    {
+-      cout << "Caught exception: " << error_.what() << endl;
+-      return 1;
+-    }
+ 
+   if ( failures )
+     {
+--- ImageMagick-6.8.3/Magick++/tests/coalesceImages.cpp.orig	2009-09-05 14:47:34.000000000 -0700
++++ ImageMagick-6.8.3/Magick++/tests/coalesceImages.cpp	2015-02-11 07:21:36.319285353 -0800
[email protected]@ -45,11 +45,6 @@
+       cout << "Caught exception: " << error_.what() << endl;
+       return 1;
+     }
+-  catch( exception &error_ )
+-    {
+-      cout << "Caught exception: " << error_.what() << endl;
+-      return 1;
+-    }
+ 
+   if ( failures )
+     {
+--- ImageMagick-6.8.3/Magick++/tests/coderInfo.cpp.orig	2009-09-05 14:47:34.000000000 -0700
++++ ImageMagick-6.8.3/Magick++/tests/coderInfo.cpp	2015-02-11 07:22:07.803975862 -0800
[email protected]@ -118,11 +118,6 @@
+       cout << "Caught exception: " << error_.what() << endl;
+       return 1;
+     }
+-  catch( exception &error_ )
+-    {
+-      cout << "Caught exception: " << error_.what() << endl;
+-      return 1;
+-    }
+   
+   if ( failures )
+     {
+--- ImageMagick-6.8.3/Magick++/tests/color.cpp.orig	2010-09-19 08:13:42.000000000 -0700
++++ ImageMagick-6.8.3/Magick++/tests/color.cpp	2015-02-11 07:25:37.141826377 -0800
[email protected]@ -138,11 +138,6 @@
+       cout << "Caught exception: " << error_.what() << endl;
+       return 1;
+     }
+-  catch( exception &error_ )
+-    {
+-      cout << "Caught exception: " << error_.what() << endl;
+-      return 1;
+-    }
+   
+   if ( failures )
+     {
+--- ImageMagick-6.8.3/Magick++/tests/colorHistogram.cpp.orig	2010-05-27 13:51:26.000000000 -0700
++++ ImageMagick-6.8.3/Magick++/tests/colorHistogram.cpp	2015-02-11 07:26:23.437002967 -0800
[email protected]@ -84,11 +84,6 @@
+       cout << "Caught exception: " << error_.what() << endl;
+       return 1;
+     }
+-  catch( exception &error_ )
+-    {
+-      cout << "Caught exception: " << error_.what() << endl;
+-      return 1;
+-    }
+ 
+   if ( failures )
+     {
+--- ImageMagick-6.8.3/Magick++/tests/exceptions.cpp.orig	2011-12-31 09:22:05.000000000 -0800
++++ ImageMagick-6.8.3/Magick++/tests/exceptions.cpp	2015-02-11 07:26:55.141360186 -0800
[email protected]@ -82,12 +82,6 @@
+         cout.flush();
+         return 1;
+       }
+-    catch( exception &error_ )
+-      {
+-        cout << "Bogus catch: Caught exception: " << error_.what() << endl;
+-        cout.flush();
+-        return 1;
+-      }
+   
+     if ( failures )
+       {
+--- ImageMagick-6.8.3/Magick++/tests/montageImages.cpp.orig	2011-02-02 17:31:01.000000000 -0800
++++ ImageMagick-6.8.3/Magick++/tests/montageImages.cpp	2015-02-11 07:29:32.433719660 -0800
[email protected]@ -123,11 +123,6 @@
+       cout << "Caught exception: " << error_.what() << endl;
+       return 1;
+     }
+-  catch( exception &error_ )
+-    {
+-      cout << "Caught exception: " << error_.what() << endl;
+-      return 1;
+-    }
+ 
+   if ( failures )
+     {
+--- ImageMagick-6.8.3/Magick++/tests/morphImages.cpp.orig	2009-09-05 14:47:34.000000000 -0700
++++ ImageMagick-6.8.3/Magick++/tests/morphImages.cpp	2015-02-11 07:30:08.668795257 -0800
[email protected]@ -54,11 +54,6 @@
+       cout << "Caught exception: " << error_.what() << endl;
+       return 1;
+     }
+-  catch( exception &error_ )
+-    {
+-      cout << "Caught exception: " << error_.what() << endl;
+-      return 1;
+-    }
+ 
+   if ( failures )
+     {
+--- ImageMagick-6.8.3/Magick++/tests/readWriteBlob.cpp.orig	2009-09-05 14:47:34.000000000 -0700
++++ ImageMagick-6.8.3/Magick++/tests/readWriteBlob.cpp	2015-02-11 07:33:35.032546179 -0800
[email protected]@ -237,11 +237,6 @@
+       cout << "Caught exception: " << error_.what() << endl;
+       return 1;
+     }
+-  catch( exception &error_ )
+-    {
+-      cout << "Caught exception: " << error_.what() << endl;
+-      return 1;
+-    }
+ 
+   if ( failures )
+     {
+--- ImageMagick-6.8.3/Magick++/tests/readWriteImages.cpp.orig	2009-09-05 14:47:34.000000000 -0700
++++ ImageMagick-6.8.3/Magick++/tests/readWriteImages.cpp	2015-02-11 07:35:06.302822632 -0800
[email protected]@ -95,11 +95,6 @@
+       cout << "Caught exception: " << error_.what() << endl;
+       return 1;
+     }
+-  catch( exception &error_ )
+-    {
+-      cout << "Caught exception: " << error_.what() << endl;
+-      return 1;
+-    }
+ 
+   if ( failures )
+     {
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/imagemagick/test/results-32.master	Thu Feb 12 08:27:28 2015 -0800
@@ -0,0 +1,126 @@
+make[1]: Entering directory `$(@D)'
+/usr/gnu/bin/make  check-recursive
+make[2]: Entering directory `$(@D)'
+Making check in .
+make[3]: Entering directory `$(@D)'
+Linking PerlMagick Sources ...
+/usr/gnu/bin/make  tests/validate tests/drawtest tests/wandtest Magick++/demo/analyze Magick++/demo/button Magick++/demo/demo Magick++/demo/detrans Magick++/demo/flip Magick++/demo/gravity Magick++/demo/piddle Magick++/demo/shapes Magick++/demo/zoom Magick++/tests/appendImages Magick++/tests/attributes Magick++/tests/averageImages Magick++/tests/coalesceImages Magick++/tests/coderInfo Magick++/tests/color Magick++/tests/colorHistogram Magick++/tests/exceptions Magick++/tests/montageImages Magick++/tests/morphImages Magick++/tests/readWriteBlob Magick++/tests/readWriteImages
+make[4]: Entering directory `$(@D)'
+make[4]: `tests/validate' is up to date.
+make[4]: `tests/drawtest' is up to date.
+make[4]: `tests/wandtest' is up to date.
+make[4]: `Magick++/demo/analyze' is up to date.
+make[4]: `Magick++/demo/button' is up to date.
+make[4]: `Magick++/demo/demo' is up to date.
+make[4]: `Magick++/demo/detrans' is up to date.
+make[4]: `Magick++/demo/flip' is up to date.
+make[4]: `Magick++/demo/gravity' is up to date.
+make[4]: `Magick++/demo/piddle' is up to date.
+make[4]: `Magick++/demo/shapes' is up to date.
+make[4]: `Magick++/demo/zoom' is up to date.
+make[4]: `Magick++/tests/appendImages' is up to date.
+make[4]: `Magick++/tests/attributes' is up to date.
+make[4]: `Magick++/tests/averageImages' is up to date.
+make[4]: `Magick++/tests/coalesceImages' is up to date.
+make[4]: `Magick++/tests/coderInfo' is up to date.
+make[4]: `Magick++/tests/color' is up to date.
+make[4]: `Magick++/tests/colorHistogram' is up to date.
+make[4]: `Magick++/tests/exceptions' is up to date.
+make[4]: `Magick++/tests/montageImages' is up to date.
+make[4]: `Magick++/tests/morphImages' is up to date.
+make[4]: `Magick++/tests/readWriteBlob' is up to date.
+make[4]: `Magick++/tests/readWriteImages' is up to date.
+make[4]: Leaving directory `$(@D)'
+/usr/gnu/bin/make  check-TESTS check-local
+make[4]: Entering directory `$(@D)'
+make[5]: Entering directory `$(@D)'
+FAIL: tests/cli-pipe.tap 1
+FAIL: tests/cli-pipe.tap 2
+FAIL: tests/cli-pipe.tap 3
+FAIL: tests/cli-pipe.tap 4
+FAIL: tests/cli-pipe.tap 5
+FAIL: tests/cli-pipe.tap 6
+FAIL: tests/cli-pipe.tap 7
+FAIL: tests/cli-pipe.tap 8
+ERROR: tests/cli-colorspace.tap - too few tests run (expected 19, got 0)
+ERROR: tests/cli-colorspace.tap - exited with status 1
+FAIL: tests/validate-compare.tap 1
+FAIL: tests/validate-composite.tap 1
+FAIL: tests/validate-convert.tap 1
+FAIL: tests/validate-identify.tap 1
+FAIL: tests/validate-import.tap 1
+FAIL: tests/validate-montage.tap 1
+FAIL: tests/validate-stream.tap 1
+FAIL: tests/validate-formats-in-memory.tap 1
+FAIL: tests/validate-formats-on-disk.tap 1
+FAIL: tests/drawtest.tap 1
+FAIL: tests/wandtest.tap 1
+FAIL: Magick++/tests/tests.tap 1
+FAIL: Magick++/tests/tests.tap 2
+FAIL: Magick++/tests/tests.tap 3
+FAIL: Magick++/tests/tests.tap 4
+FAIL: Magick++/tests/tests.tap 5
+PASS: Magick++/tests/tests.tap 6
+FAIL: Magick++/tests/tests.tap 7
+FAIL: Magick++/tests/tests.tap 8
+FAIL: Magick++/tests/tests.tap 9
+FAIL: Magick++/tests/tests.tap 10
+FAIL: Magick++/tests/tests.tap 11
+FAIL: Magick++/tests/tests.tap 12
+PASS: Magick++/demo/demos.tap 1
+FAIL: Magick++/demo/demos.tap 2
+FAIL: Magick++/demo/demos.tap 3
+FAIL: Magick++/demo/demos.tap 4
+FAIL: Magick++/demo/demos.tap 5
+FAIL: Magick++/demo/demos.tap 6
+FAIL: Magick++/demo/demos.tap 7
+FAIL: Magick++/demo/demos.tap 8
+FAIL: Magick++/demo/demos.tap 9
+FAIL: Magick++/demo/demos.tap 10
+FAIL: Magick++/demo/demos.tap 11
+FAIL: Magick++/demo/demos.tap 12
+FAIL: Magick++/demo/demos.tap 13
+FAIL: Magick++/demo/demos.tap 14
+FAIL: Magick++/demo/demos.tap 15
+FAIL: Magick++/demo/demos.tap 16
+FAIL: Magick++/demo/demos.tap 17
+FAIL: Magick++/demo/demos.tap 18
+FAIL: Magick++/demo/demos.tap 19
+FAIL: Magick++/demo/demos.tap 20
+FAIL: Magick++/demo/demos.tap 21
+FAIL: Magick++/demo/demos.tap 22
+FAIL: Magick++/demo/demos.tap 23
+FAIL: Magick++/demo/demos.tap 24
+make[6]: Entering directory `$(@D)'
+/usr/gnu/bin/make  all-recursive
+make[7]: Entering directory `$(@D)'
+Making all in .
+make[8]: Entering directory `$(@D)'
+Linking PerlMagick Sources ...
+make[8]: Leaving directory `$(@D)'
+make[7]: Leaving directory `$(@D)'
+make[6]: Leaving directory `$(@D)'
+============================================================================
+Testsuite summary for ImageMagick 6.8.3
+============================================================================
+# TOTAL: 57
+# PASS:  2
+# SKIP:  0
+# XFAIL: 0
+# FAIL:  53
+# XPASS: 0
+# ERROR: 2
+============================================================================
+See ./test-suite.log
+Please report to http://www.imagemagick.org
+============================================================================
+make[5]: *** [test-suite.log] Error 1
+make[5]: Leaving directory `$(@D)'
+make[4]: *** [check-TESTS] Error 2
+make[4]: Leaving directory `$(@D)'
+make[3]: *** [check-am] Error 2
+make[3]: Leaving directory `$(@D)'
+make[2]: *** [check-recursive] Error 1
+make[2]: Leaving directory `$(@D)'
+make[1]: *** [check] Error 2
+make[1]: Leaving directory `$(@D)'
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/imagemagick/test/results-64.master	Thu Feb 12 08:27:28 2015 -0800
@@ -0,0 +1,125 @@
+make[1]: Entering directory `$(@D)'
+/usr/gnu/bin/make  check-recursive
+make[2]: Entering directory `$(@D)'
+Making check in .
+make[3]: Entering directory `$(@D)'
+/usr/gnu/bin/make  tests/validate tests/drawtest tests/wandtest Magick++/demo/analyze Magick++/demo/button Magick++/demo/demo Magick++/demo/detrans Magick++/demo/flip Magick++/demo/gravity Magick++/demo/piddle Magick++/demo/shapes Magick++/demo/zoom Magick++/tests/appendImages Magick++/tests/attributes Magick++/tests/averageImages Magick++/tests/coalesceImages Magick++/tests/coderInfo Magick++/tests/color Magick++/tests/colorHistogram Magick++/tests/exceptions Magick++/tests/montageImages Magick++/tests/morphImages Magick++/tests/readWriteBlob Magick++/tests/readWriteImages
+make[4]: Entering directory `$(@D)'
+make[4]: `tests/validate' is up to date.
+make[4]: `tests/drawtest' is up to date.
+make[4]: `tests/wandtest' is up to date.
+make[4]: `Magick++/demo/analyze' is up to date.
+make[4]: `Magick++/demo/button' is up to date.
+make[4]: `Magick++/demo/demo' is up to date.
+make[4]: `Magick++/demo/detrans' is up to date.
+make[4]: `Magick++/demo/flip' is up to date.
+make[4]: `Magick++/demo/gravity' is up to date.
+make[4]: `Magick++/demo/piddle' is up to date.
+make[4]: `Magick++/demo/shapes' is up to date.
+make[4]: `Magick++/demo/zoom' is up to date.
+make[4]: `Magick++/tests/appendImages' is up to date.
+make[4]: `Magick++/tests/attributes' is up to date.
+make[4]: `Magick++/tests/averageImages' is up to date.
+make[4]: `Magick++/tests/coalesceImages' is up to date.
+make[4]: `Magick++/tests/coderInfo' is up to date.
+make[4]: `Magick++/tests/color' is up to date.
+make[4]: `Magick++/tests/colorHistogram' is up to date.
+make[4]: `Magick++/tests/exceptions' is up to date.
+make[4]: `Magick++/tests/montageImages' is up to date.
+make[4]: `Magick++/tests/morphImages' is up to date.
+make[4]: `Magick++/tests/readWriteBlob' is up to date.
+make[4]: `Magick++/tests/readWriteImages' is up to date.
+make[4]: Leaving directory `$(@D)'
+/usr/gnu/bin/make  check-TESTS check-local
+make[4]: Entering directory `$(@D)'
+make[5]: Entering directory `$(@D)'
+FAIL: tests/cli-pipe.tap 1
+FAIL: tests/cli-pipe.tap 2
+FAIL: tests/cli-pipe.tap 3
+FAIL: tests/cli-pipe.tap 4
+FAIL: tests/cli-pipe.tap 5
+FAIL: tests/cli-pipe.tap 6
+FAIL: tests/cli-pipe.tap 7
+FAIL: tests/cli-pipe.tap 8
+ERROR: tests/cli-colorspace.tap - too few tests run (expected 19, got 0)
+ERROR: tests/cli-colorspace.tap - exited with status 1
+FAIL: tests/validate-compare.tap 1
+FAIL: tests/validate-composite.tap 1
+FAIL: tests/validate-convert.tap 1
+FAIL: tests/validate-identify.tap 1
+FAIL: tests/validate-import.tap 1
+FAIL: tests/validate-montage.tap 1
+FAIL: tests/validate-stream.tap 1
+FAIL: tests/validate-formats-in-memory.tap 1
+FAIL: tests/validate-formats-on-disk.tap 1
+FAIL: tests/drawtest.tap 1
+FAIL: tests/wandtest.tap 1
+FAIL: Magick++/tests/tests.tap 1
+FAIL: Magick++/tests/tests.tap 2
+FAIL: Magick++/tests/tests.tap 3
+FAIL: Magick++/tests/tests.tap 4
+FAIL: Magick++/tests/tests.tap 5
+PASS: Magick++/tests/tests.tap 6
+FAIL: Magick++/tests/tests.tap 7
+FAIL: Magick++/tests/tests.tap 8
+FAIL: Magick++/tests/tests.tap 9
+FAIL: Magick++/tests/tests.tap 10
+FAIL: Magick++/tests/tests.tap 11
+FAIL: Magick++/tests/tests.tap 12
+PASS: Magick++/demo/demos.tap 1
+FAIL: Magick++/demo/demos.tap 2
+FAIL: Magick++/demo/demos.tap 3
+FAIL: Magick++/demo/demos.tap 4
+FAIL: Magick++/demo/demos.tap 5
+FAIL: Magick++/demo/demos.tap 6
+FAIL: Magick++/demo/demos.tap 7
+FAIL: Magick++/demo/demos.tap 8
+FAIL: Magick++/demo/demos.tap 9
+FAIL: Magick++/demo/demos.tap 10
+FAIL: Magick++/demo/demos.tap 11
+FAIL: Magick++/demo/demos.tap 12
+FAIL: Magick++/demo/demos.tap 13
+FAIL: Magick++/demo/demos.tap 14
+FAIL: Magick++/demo/demos.tap 15
+FAIL: Magick++/demo/demos.tap 16
+FAIL: Magick++/demo/demos.tap 17
+FAIL: Magick++/demo/demos.tap 18
+FAIL: Magick++/demo/demos.tap 19
+FAIL: Magick++/demo/demos.tap 20
+FAIL: Magick++/demo/demos.tap 21
+FAIL: Magick++/demo/demos.tap 22
+FAIL: Magick++/demo/demos.tap 23
+FAIL: Magick++/demo/demos.tap 24
+make[6]: Entering directory `$(@D)'
+/usr/gnu/bin/make  all-recursive
+make[7]: Entering directory `$(@D)'
+Making all in .
+make[8]: Entering directory `$(@D)'
+make[8]: Nothing to be done for `all-am'.
+make[8]: Leaving directory `$(@D)'
+make[7]: Leaving directory `$(@D)'
+make[6]: Leaving directory `$(@D)'
+============================================================================
+Testsuite summary for ImageMagick 6.8.3
+============================================================================
+# TOTAL: 57
+# PASS:  2
+# SKIP:  0
+# XFAIL: 0
+# FAIL:  53
+# XPASS: 0
+# ERROR: 2
+============================================================================
+See ./test-suite.log
+Please report to http://www.imagemagick.org
+============================================================================
+make[5]: *** [test-suite.log] Error 1
+make[5]: Leaving directory `$(@D)'
+make[4]: *** [check-TESTS] Error 2
+make[4]: Leaving directory `$(@D)'
+make[3]: *** [check-am] Error 2
+make[3]: Leaving directory `$(@D)'
+make[2]: *** [check-recursive] Error 1
+make[2]: Leaving directory `$(@D)'
+make[1]: *** [check] Error 2
+make[1]: Leaving directory `$(@D)'