media-gfx/imagemagick: update to 6.9.7.4

Previous version of ImageMagick (6.7.8.7) uses an older version of pnglib
(1.5) and has problems with loading certain type of images with
chromaticities map. This is a reason why it was generating warnings.

BUG=chromium:717247
TEST=Run graphics_Sanity test with new version of ImageMagick.\
Conversion warning disappered

Change-Id: I613798fcb3a9a689bc4c0ba8611d8aba980721de
Signed-off-by: Robert Tarasov <tutankhamen@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/497171
Commit-Ready: Ilja H. Friedel <ihf@chromium.org>
Reviewed-by: Ilja H. Friedel <ihf@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>
diff --git a/media-gfx/imagemagick/Manifest b/media-gfx/imagemagick/Manifest
index 2537ad5..9212ac6 100644
--- a/media-gfx/imagemagick/Manifest
+++ b/media-gfx/imagemagick/Manifest
@@ -1 +1 @@
-DIST ImageMagick-6.7.8-7.tar.xz 7830744 RMD160 5aa7e4240d69e2eeb8e8d45521b71d49ee82b3bf SHA1 0e7c749848867fd9632a2084f8a152886cc3f077 SHA256 593e09bec0e6def3f9d6d6b0f7970ddd37dd9420a1286ce27e3f4ba26b78f114
+DIST ImageMagick-6.9.7-4.tar.xz 8797776 SHA256 68842c55ed9c958b84aae17974961cefff4212bf7146f09fd15c09dbdc2d9629 SHA512 9ee9cf01c486575183a67e418bdbdcf4ac2b7ea2f9ff033db6a74f8271af0567da00f020dd8c18e042221d20444bed21d5d5256944ddeaf9916b62bf1844acf6 WHIRLPOOL 7c75006dafd28bb0fe02e130b4fcbae5fe54c6fbfdb29ba6b49796a14354e7aeb56b80c498eb57a4a8c7b383af025406dfeba66735ba89fd35d61125b51e7d41
diff --git a/media-gfx/imagemagick/files/imagemagick-6.7.8.7-freetype.patch b/media-gfx/imagemagick/files/imagemagick-6.7.8.7-freetype.patch
deleted file mode 100644
index ce1332f..0000000
--- a/media-gfx/imagemagick/files/imagemagick-6.7.8.7-freetype.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-https://sourceforge.net/tracker/?func=detail&aid=3601612&group_id=73485&atid=537940
-
---- a/configure
-+++ b/configure
-@@ -26488,7 +26488,6 @@
- 
- # Assume that delegate headers reside under same directory as ImageMagick
- # installation prefix.
--MAGICK_CPPFLAGS="-I$INCLUDE_DIR/ImageMagick $MAGICK_CPPFLAGS"
- 
- #
- # Find the X11 RGB database
-@@ -29490,8 +29490,8 @@
-     then
-       freetype_prefix=`${freetype_config} --prefix`
-       freetype_exec_prefix=`${freetype_config} --exec-prefix`
--      LDFLAGS="$LDFLAGS -L${freetype_exec_prefix}/lib"
--      CPPFLAGS="$CPPFLAGS -I${freetype_prefix}/include/freetype2"
-+      LDFLAGS="$LDFLAGS `${PKG_CONFIG:-pkg-config} freetype2 --libs`"
-+      CPPFLAGS="$CPPFLAGS `${PKG_CONFIG:-pkg-config} freetype2 --cflags`"
-     fi
- 
- dnl First see if there is a library
-@@ -35767,7 +35767,7 @@
- MAGICK_CXXFLAGS="$CXXFLAGS"
- MAGICK_CPPFLAGS=`echo $MAGICK_CPPFLAGS | sed -e 's/  */ /g'`
- MAGICK_PCFLAGS=`echo $MAGICK_PCFLAGS | sed -e 's/  */ /g'`
--MAGICK_LDFLAGS="-L$LIB_DIR $LDFLAGS"
-+MAGICK_LDFLAGS="$LDFLAGS"
- MAGICK_LIBS="-lMagickCore $MAGICK_DEP_LIBS $MAGICK_API_LIBLTDL"
- 
- 
diff --git a/media-gfx/imagemagick/imagemagick-6.7.8.7.ebuild b/media-gfx/imagemagick/imagemagick-6.9.7.4.ebuild
similarity index 63%
rename from media-gfx/imagemagick/imagemagick-6.7.8.7.ebuild
rename to media-gfx/imagemagick/imagemagick-6.9.7.4.ebuild
index 85d2d3c..81cfbb1 100644
--- a/media-gfx/imagemagick/imagemagick-6.7.8.7.ebuild
+++ b/media-gfx/imagemagick/imagemagick-6.9.7.4.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2013 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-gfx/imagemagick/imagemagick-6.7.8.7.ebuild,v 1.10 2013/01/21 05:18:23 vapier Exp $
 
-EAPI=4
-inherit multilib toolchain-funcs versionator libtool eutils
+EAPI=5
+
+inherit eutils flag-o-matic libtool multilib toolchain-funcs versionator
 
 MY_P=ImageMagick-$(replace_version_separator 3 '-')
 
@@ -12,13 +12,14 @@
 SRC_URI="mirror://${PN}/${MY_P}.tar.xz"
 
 LICENSE="imagemagick"
-SLOT="0"
+SLOT="0/${PV}"
 KEYWORDS="*"
 IUSE="autotrace bzip2 corefonts cxx djvu fftw fontconfig fpx graphviz hdri jbig jpeg jpeg2k lcms lqr lzma opencl openexr openmp pango perl png postscript q32 q64 q8 raw static-libs svg test tiff truetype webp wmf X xml zlib"
 
 RESTRICT="perl? ( userpriv )"
 
-RDEPEND=">=sys-devel/libtool-2.2.6b
+RDEPEND="
+	dev-libs/libltdl:0
 	autotrace? ( >=media-gfx/autotrace-0.31.1 )
 	bzip2? ( app-arch/bzip2 )
 	corefonts? ( media-fonts/corefonts )
@@ -27,25 +28,25 @@
 	fontconfig? ( media-libs/fontconfig )
 	fpx? ( >=media-libs/libfpx-1.3.0-r1 )
 	graphviz? ( media-gfx/graphviz )
-	jbig? ( media-libs/jbigkit )
-	jpeg? ( virtual/jpeg )
-	jpeg2k? ( media-libs/jasper )
-	lcms? ( media-libs/lcms:2 )
+	jbig? ( >=media-libs/jbigkit-2:= )
+	jpeg? ( virtual/jpeg:0 )
+	jpeg2k? ( >=media-libs/openjpeg-2.1.0:2 )
+	lcms? ( media-libs/lcms:2= )
 	lqr? ( media-libs/liblqr )
 	opencl? ( virtual/opencl )
-	openexr? ( media-libs/openexr )
+	openexr? ( media-libs/openexr:0= )
 	pango? ( x11-libs/pango )
-	perl? ( >=dev-lang/perl-5.8.8 )
-	png? ( media-libs/libpng:0 )
+	perl? ( >=dev-lang/perl-5.8.8:0= )
+	png? ( media-libs/libpng:0= )
 	postscript? ( app-text/ghostscript-gpl )
 	raw? ( media-gfx/ufraw )
 	svg? ( gnome-base/librsvg )
-	tiff? ( media-libs/tiff:0 )
+	tiff? ( media-libs/tiff:0= )
 	truetype? (
 		media-fonts/urw-fonts
 		>=media-libs/freetype-2
 		)
-	webp? ( media-libs/libwebp )
+	webp? ( media-libs/libwebp:0= )
 	wmf? ( media-libs/libwmf )
 	X? (
 		x11-libs/libICE
@@ -53,9 +54,9 @@
 		x11-libs/libXext
 		x11-libs/libXt
 		)
-	xml? ( dev-libs/libxml2 )
+	xml? ( dev-libs/libxml2:= )
 	lzma? ( app-arch/xz-utils )
-	zlib? ( sys-libs/zlib )"
+	zlib? ( sys-libs/zlib:= )"
 DEPEND="${RDEPEND}
 	!media-gfx/graphicsmagick[imagemagick]
 	virtual/pkgconfig
@@ -67,8 +68,22 @@
 S=${WORKDIR}/${MY_P}
 
 src_prepare() {
-	epatch "${FILESDIR}"/${PN}-6.7.8.7-freetype.patch
+	default
+
 	elibtoolize # for Darwin modules
+
+	# For testsuite, see https://bugs.gentoo.org/show_bug.cgi?id=500580#c3
+	shopt -s nullglob
+	mesa_cards=$(echo -n /dev/dri/card* | sed 's/ /:/g')
+	if test -n "${mesa_cards}"; then
+		addpredict "${mesa_cards}"
+	fi
+	ati_cards=$(echo -n /dev/ati/card* | sed 's/ /:/g')
+	if test -n "${ati_cards}"; then
+		addpredict "${ati_cards}"
+	fi
+	shopt -u nullglob
+	addpredict /dev/nvidiactl
 }
 
 src_configure() {
@@ -80,14 +95,14 @@
 	local openmp=disable
 	use openmp && { tc-has-openmp && openmp=enable; }
 
+	[[ ${CHOST} == *-solaris* ]] && append-ldflags -lnsl -lsocket
+
+	CONFIG_SHELL=$(type -P bash) \
 	econf \
 		$(use_enable static-libs static) \
 		$(use_enable hdri) \
 		$(use_enable opencl) \
 		--with-threads \
-		--without-included-ltdl \
-		--with-ltdl-include='' \
-		--with-ltdl-lib='' \
 		--with-modules \
 		--with-quantum-depth=${depth} \
 		$(use_with cxx magick-plus-plus) \
@@ -109,9 +124,8 @@
 		$(use_with graphviz gvc) \
 		$(use_with jbig) \
 		$(use_with jpeg) \
-		$(use_with jpeg2k jp2) \
-		--without-lcms \
-		$(use_with lcms lcms2) \
+		$(use_with jpeg2k openjp2) \
+		$(use_with lcms) \
 		$(use_with lqr) \
 		$(use_with lzma) \
 		$(use_with openexr) \
@@ -123,24 +137,24 @@
 		$(use_with corefonts windows-font-dir "${EPREFIX}"/usr/share/fonts/corefonts) \
 		$(use_with wmf) \
 		$(use_with xml) \
-		--${openmp}-openmp
+		--${openmp}-openmp \
+		--with-gcc-arch=no-automagic
 }
 
 src_test() {
-	if has_version ~${CATEGORY}/${P}; then
-		emake -j1 check
-	else
-		ewarn "Skipping testsuite because installed version doesn't match."
-	fi
+	LD_LIBRARY_PATH="${S}/coders/.libs:${S}/filters/.libs:${S}/Magick++/lib/.libs:${S}/magick/.libs:${S}/wand/.libs" \
+	emake check
 }
 
 src_install() {
+	# Ensure documentation installation files and paths with each release!
 	emake \
 		DESTDIR="${D}" \
-		DOCUMENTATION_PATH="${EPREFIX}"/usr/share/doc/${PF} \
+		DOCUMENTATION_PATH="${EPREFIX}"/usr/share/doc/${PF}/html \
 		install
 
-	dodoc {AUTHORS,NEWS,README}.txt ChangeLog
+	rm -f "${ED}"/usr/share/doc/${PF}/html/{ChangeLog,LICENSE,NEWS.txt}
+	dodoc {AUTHORS,README}.txt ChangeLog
 
 	if use perl; then
 		find "${ED}" -type f -name perllocal.pod -exec rm -f {} +
@@ -148,4 +162,16 @@
 	fi
 
 	find "${ED}" -name '*.la' -exec sed -i -e "/^dependency_libs/s:=.*:='':" {} +
+
+	if use opencl; then
+		cat <<-EOF > "${T}"/99${PN}
+		SANDBOX_PREDICT="/dev/nvidiactl:/dev/ati/card:/dev/dri/card"
+		EOF
+
+		insinto /etc/sandbox.d
+		doins "${T}"/99${PN} #472766
+	fi
+
+	insinto /usr/share/${PN}
+	doins config/*icm
 }
diff --git a/media-gfx/imagemagick/metadata.xml b/media-gfx/imagemagick/metadata.xml
index 9ea268a..8aeae81 100644
--- a/media-gfx/imagemagick/metadata.xml
+++ b/media-gfx/imagemagick/metadata.xml
@@ -1,18 +1,21 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
-  <herd>graphics</herd>
+  <maintainer type="project">
+    <email>graphics@gentoo.org</email>
+    <name>Gentoo Graphics Project</name>
+  </maintainer>
   <use>
-    <flag name='autotrace'>Use <pkg>media-gfx/autotrace</pkg> to convert bitmaps into vector graphics</flag>
-    <flag name='corefonts'>Use <pkg>media-fonts/corefonts</pkg> which is required by some commands</flag> 
-    <flag name='fpx'>Enable <pkg>media-libs/libfpx</pkg> support</flag>
-    <flag name='hdri'>enable High Dynamic Range Images formats</flag>
-    <flag name='lqr'>Enable experimental liquid rescale support using <pkg>media-libs/liblqr</pkg></flag>
-    <flag name='opencl'>Enable OpenCL support</flag>
-    <flag name='pango'>Enable Pango support using <pkg>x11-libs/pango</pkg></flag>
-    <flag name='q32'>Set quantum depth value to 32</flag>
-    <flag name='q64'>Set quantum depth value to 64</flag>
-    <flag name='q8'>Set quantum depth value to 8</flag>
-    <flag name='webp'>Enable webp image format support using <pkg>media-libs/libwebp</pkg></flag>
+    <flag name="autotrace">Use <pkg>media-gfx/autotrace</pkg> to convert bitmaps into vector graphics</flag>
+    <flag name="corefonts">Use <pkg>media-fonts/corefonts</pkg> which is required by some commands</flag>
+    <flag name="fpx">Enable <pkg>media-libs/libfpx</pkg> support</flag>
+    <flag name="hdri">enable High Dynamic Range Images formats</flag>
+    <flag name="lqr">Enable experimental liquid rescale support using <pkg>media-libs/liblqr</pkg></flag>
+    <flag name="opencl">Enable OpenCL support</flag>
+    <flag name="pango">Enable Pango support using <pkg>x11-libs/pango</pkg></flag>
+    <flag name="q32">Set quantum depth value to 32</flag>
+    <flag name="q64">Set quantum depth value to 64</flag>
+    <flag name="q8">Set quantum depth value to 8</flag>
+    <flag name="webp">Enable webp image format support using <pkg>media-libs/libwebp</pkg></flag>
   </use>
 </pkgmetadata>