summaryrefslogtreecommitdiff
path: root/sci-visualization
diff options
context:
space:
mode:
Diffstat (limited to 'sci-visualization')
-rw-r--r--sci-visualization/circos/Manifest1
-rw-r--r--sci-visualization/circos/circos-0.55.ebuild36
-rw-r--r--sci-visualization/circos/metadata.xml13
-rw-r--r--sci-visualization/epix/Manifest2
-rw-r--r--sci-visualization/epix/epix-1.2.10.ebuild67
-rw-r--r--sci-visualization/epix/epix-1.2.11-r1.ebuild67
-rw-r--r--sci-visualization/epix/epix-1.2.11.ebuild67
-rw-r--r--sci-visualization/epix/files/50epix-gentoo.el8
-rw-r--r--sci-visualization/epix/files/epix-1.2.10-autotools.patch85
-rw-r--r--sci-visualization/epix/files/epix-1.2.6-automake.patch27
-rw-r--r--sci-visualization/epix/files/epix-1.2.6-doc-gentoo.patch74
-rw-r--r--sci-visualization/epix/files/epix-1.2.9-autotools.patch94
-rw-r--r--sci-visualization/epix/metadata.xml15
-rw-r--r--sci-visualization/extrema/Manifest1
-rw-r--r--sci-visualization/extrema/extrema-4.4.5.ebuild58
-rw-r--r--sci-visualization/extrema/files/extrema-4.4.5-gcc46.patch15
-rw-r--r--sci-visualization/extrema/metadata.xml19
-rw-r--r--sci-visualization/fig2sxd/Manifest2
-rw-r--r--sci-visualization/fig2sxd/fig2sxd-0.21.ebuild38
-rw-r--r--sci-visualization/fig2sxd/files/fig2sxd-0.20-ldflags.patch12
-rw-r--r--sci-visualization/fig2sxd/files/fig2sxd-0.20-phony-check.patch9
-rw-r--r--sci-visualization/fig2sxd/metadata.xml12
-rw-r--r--sci-visualization/fityk/Manifest2
-rw-r--r--sci-visualization/fityk/fityk-1.2.1.ebuild90
-rw-r--r--sci-visualization/fityk/fityk-1.2.9.ebuild93
-rw-r--r--sci-visualization/fityk/metadata.xml30
-rw-r--r--sci-visualization/g3data/Manifest1
-rw-r--r--sci-visualization/g3data/files/g3data-1.5.3-makefile.patch44
-rw-r--r--sci-visualization/g3data/g3data-1.5.4.ebuild20
-rw-r--r--sci-visualization/g3data/metadata.xml13
-rw-r--r--sci-visualization/gcalc/Manifest1
-rw-r--r--sci-visualization/gcalc/gcalc-3.1_rc1.ebuild42
-rw-r--r--sci-visualization/gcalc/metadata.xml8
-rw-r--r--sci-visualization/gfsview/Manifest2
-rw-r--r--sci-visualization/gfsview/gfsview-20111003.ebuild30
-rw-r--r--sci-visualization/gfsview/gfsview-20120706.ebuild32
-rw-r--r--sci-visualization/gfsview/metadata.xml8
-rw-r--r--sci-visualization/ggobi/Manifest3
-rw-r--r--sci-visualization/ggobi/files/ggobi-2.1.10-desktop.patch11
-rw-r--r--sci-visualization/ggobi/files/ggobi-2.1.10-hardened.patch66
-rw-r--r--sci-visualization/ggobi/files/ggobi-2.1.8-graphviz.patch13
-rw-r--r--sci-visualization/ggobi/files/ggobi-2.1.8-plugindir.patch11
-rw-r--r--sci-visualization/ggobi/files/ggobi-2.1.8-syslibltdl.patch26
-rw-r--r--sci-visualization/ggobi/files/ggobi-2.1.9-as-needed.patch40
-rw-r--r--sci-visualization/ggobi/ggobi-2.1.10.ebuild57
-rw-r--r--sci-visualization/ggobi/ggobi-2.1.8.ebuild57
-rw-r--r--sci-visualization/ggobi/ggobi-2.1.9-r1.ebuild51
-rw-r--r--sci-visualization/ggobi/metadata.xml12
-rw-r--r--sci-visualization/gle/Manifest4
-rw-r--r--sci-visualization/gle/files/64gle-gentoo.el6
-rw-r--r--sci-visualization/gle/files/gle-4.2.4b-gcc-4.7.patch62
-rw-r--r--sci-visualization/gle/files/gle-4.2.4b-parallel.patch21
-rw-r--r--sci-visualization/gle/gle-4.2.4b.ebuild109
-rw-r--r--sci-visualization/gle/gle-4.2.4c.ebuild102
-rw-r--r--sci-visualization/gle/metadata.xml18
-rw-r--r--sci-visualization/gnuplot/Manifest3
-rw-r--r--sci-visualization/gnuplot/files/gnuplot-4.6.2-gdversion.patch21
-rw-r--r--sci-visualization/gnuplot/files/gnuplot-4.6.3-eldoc.patch16
-rw-r--r--sci-visualization/gnuplot/gnuplot-4.6.5.ebuild200
-rw-r--r--sci-visualization/gnuplot/gnuplot-5.0.1.ebuild193
-rw-r--r--sci-visualization/gnuplot/metadata.xml30
-rw-r--r--sci-visualization/grace/Manifest4
-rw-r--r--sci-visualization/grace/files/grace-5.1.21-fortran.patch26
-rw-r--r--sci-visualization/grace/files/grace-5.1.21-netcdf.patch11
-rw-r--r--sci-visualization/grace/files/grace-5.1.22-dlmodule.patch12
-rw-r--r--sci-visualization/grace/files/grace-5.1.22-ldflags.patch41
-rw-r--r--sci-visualization/grace/files/grace-5.1.22-libpng15.patch19
-rw-r--r--sci-visualization/grace/files/grace-5.1.22-mkstemp.patch55
-rw-r--r--sci-visualization/grace/files/grace.desktop8
-rw-r--r--sci-visualization/grace/grace-5.1.22-r2.ebuild107
-rw-r--r--sci-visualization/grace/grace-5.1.22-r3.ebuild111
-rw-r--r--sci-visualization/grace/grace-5.1.23-r1.ebuild111
-rw-r--r--sci-visualization/grace/grace-5.1.23.ebuild111
-rw-r--r--sci-visualization/grace/metadata.xml16
-rw-r--r--sci-visualization/gri/Manifest2
-rw-r--r--sci-visualization/gri/files/50gri-gentoo.el3
-rw-r--r--sci-visualization/gri/files/gri-2.12.18-postscript.patch97
-rw-r--r--sci-visualization/gri/files/gri-2.12.23-perl-5.16.patch23
-rw-r--r--sci-visualization/gri/files/gri-2.12.23-texinfo5.patch32
-rw-r--r--sci-visualization/gri/gri-2.12.19.ebuild84
-rw-r--r--sci-visualization/gri/gri-2.12.23.ebuild85
-rw-r--r--sci-visualization/gri/metadata.xml18
-rw-r--r--sci-visualization/gwyddion/Manifest1
-rw-r--r--sci-visualization/gwyddion/files/gwyddion-2.25-libpng15.patch10
-rw-r--r--sci-visualization/gwyddion/files/gwyddion-2.30-BGRA.patch22
-rw-r--r--sci-visualization/gwyddion/files/gwyddion-2.30-color-button-debris-crash.patch37
-rw-r--r--sci-visualization/gwyddion/gwyddion-2.39.ebuild90
-rw-r--r--sci-visualization/gwyddion/metadata.xml22
-rw-r--r--sci-visualization/kst/Manifest2
-rw-r--r--sci-visualization/kst/files/kst-2.0.7-cfitsio-includes.patch26
-rw-r--r--sci-visualization/kst/kst-2.0.7.ebuild65
-rw-r--r--sci-visualization/kst/kst-2.0.8.ebuild67
-rw-r--r--sci-visualization/kst/metadata.xml9
-rw-r--r--sci-visualization/labplot/Manifest1
-rw-r--r--sci-visualization/labplot/labplot-2.0.2.ebuild29
-rw-r--r--sci-visualization/labplot/labplot-9999.ebuild29
-rw-r--r--sci-visualization/labplot/metadata.xml10
-rw-r--r--sci-visualization/mayavi/Manifest1
-rw-r--r--sci-visualization/mayavi/files/mayavi-4.1.0-vtkQt.patch25
-rw-r--r--sci-visualization/mayavi/files/mayavi-4.2.0-doc.patch37
-rw-r--r--sci-visualization/mayavi/mayavi-4.3.0.ebuild76
-rw-r--r--sci-visualization/mayavi/metadata.xml24
-rw-r--r--sci-visualization/metadata.xml25
-rw-r--r--sci-visualization/nonolith-connect/Manifest1
-rw-r--r--sci-visualization/nonolith-connect/files/1.0.1-cflags-respect.patch69
-rw-r--r--sci-visualization/nonolith-connect/files/1.1-cflags-respect.patch70
-rw-r--r--sci-visualization/nonolith-connect/files/60-nonolith-connect.rules3
-rwxr-xr-xsci-visualization/nonolith-connect/files/nonolith-connect.initd17
-rw-r--r--sci-visualization/nonolith-connect/metadata.xml9
-rw-r--r--sci-visualization/nonolith-connect/nonolith-connect-1.1.ebuild54
-rw-r--r--sci-visualization/opendx-samples/Manifest2
-rw-r--r--sci-visualization/opendx-samples/files/opendx-samples-4.4.0-nojava.patch50
-rw-r--r--sci-visualization/opendx-samples/metadata.xml10
-rw-r--r--sci-visualization/opendx-samples/opendx-samples-4.4.0-r1.ebuild32
-rw-r--r--sci-visualization/opendx/Manifest1
-rw-r--r--sci-visualization/opendx/files/opendx-4.3.2-sys.h.patch23
-rw-r--r--sci-visualization/opendx/files/opendx-4.4.4-concurrent-make-fix.patch66
-rw-r--r--sci-visualization/opendx/files/opendx-4.4.4-dx-errno.patch11
-rw-r--r--sci-visualization/opendx/files/opendx-4.4.4-gcc43.patch315
-rw-r--r--sci-visualization/opendx/files/opendx-4.4.4-installpaths.patch330
-rw-r--r--sci-visualization/opendx/files/opendx-4.4.4-libtool.patch11
-rw-r--r--sci-visualization/opendx/files/opendx-4.4.4-magick.patch90
-rw-r--r--sci-visualization/opendx/files/opendx-4.4.4-null.patch14
-rw-r--r--sci-visualization/opendx/files/opendx-4.4.4-open.patch34
-rw-r--r--sci-visualization/opendx/files/opendx-4.4.4-szip.patch55
-rw-r--r--sci-visualization/opendx/files/opendx-4.4.4-xdg.patch26
-rw-r--r--sci-visualization/opendx/metadata.xml23
-rw-r--r--sci-visualization/opendx/opendx-4.4.4-r4.ebuild83
-rw-r--r--sci-visualization/opendx/opendx-4.4.4-r5.ebuild82
-rw-r--r--sci-visualization/paraview/Manifest3
-rw-r--r--sci-visualization/paraview/files/paraview-4.0.1-Protobuf.patch72
-rw-r--r--sci-visualization/paraview/files/paraview-4.0.1-gcc-4.7.patch28
-rw-r--r--sci-visualization/paraview/files/paraview-4.0.1-removesqlite.patch517
-rw-r--r--sci-visualization/paraview/files/paraview-4.0.1-vtk-cg-path.patch36
-rw-r--r--sci-visualization/paraview/files/paraview-4.0.1-vtknetcd.patch79
-rw-r--r--sci-visualization/paraview/files/paraview-4.0.1-xdmf-cstring.patch12
-rw-r--r--sci-visualization/paraview/files/paraview-4.1.0-glxext-legacy.patch9
-rw-r--r--sci-visualization/paraview/files/paraview-4.1.0-no-fatal-warnings.patch19
-rw-r--r--sci-visualization/paraview/files/paraview-4.1.0-vtk-freetype.patch22
-rw-r--r--sci-visualization/paraview/files/paraview-4.2.0-protobuf-2.patch161
-rw-r--r--sci-visualization/paraview/files/paraview-4.2.0-protobuf.patch39
-rw-r--r--sci-visualization/paraview/files/paraview-4.2.0-removesqlite.patch541
-rw-r--r--sci-visualization/paraview/files/paraview-4.2.0-vtk-freetype.patch22
-rw-r--r--sci-visualization/paraview/metadata.xml16
-rw-r--r--sci-visualization/paraview/paraview-4.1.0-r2.ebuild302
-rw-r--r--sci-visualization/paraview/paraview-4.2.0-r1.ebuild301
-rw-r--r--sci-visualization/paraview/paraview-4.3.1.ebuild301
-rw-r--r--sci-visualization/pythonprop/Manifest1
-rw-r--r--sci-visualization/pythonprop/metadata.xml12
-rw-r--r--sci-visualization/pythonprop/pythonprop-0.13.ebuild27
-rw-r--r--sci-visualization/pyxplot/Manifest2
-rw-r--r--sci-visualization/pyxplot/files/pyxplot-0.8.3-as-needed.patch56
-rw-r--r--sci-visualization/pyxplot/metadata.xml14
-rw-r--r--sci-visualization/pyxplot/pyxplot-0.7.1.ebuild46
-rw-r--r--sci-visualization/pyxplot/pyxplot-0.9.2.ebuild40
-rw-r--r--sci-visualization/qtiplot/Manifest2
-rw-r--r--sci-visualization/qtiplot/files/qtiplot-0.9.7.10-dont-install-qwt.patch22
-rw-r--r--sci-visualization/qtiplot/files/qtiplot-0.9.8.6-gold.patch15
-rw-r--r--sci-visualization/qtiplot/files/qtiplot-0.9.8.7-kde.patch16
-rw-r--r--sci-visualization/qtiplot/files/qtiplot-0.9.8.8-system-gl2ps.patch76
-rw-r--r--sci-visualization/qtiplot/files/qtiplot-0.9.8.9-PyQt4-4.10.patch32
-rw-r--r--sci-visualization/qtiplot/files/qtiplot-0.9.8.9-PyQt4-4.11.3.patch32
-rw-r--r--sci-visualization/qtiplot/files/qtiplot-0.9.8.9-adopt_to_alglib3.patch115
-rw-r--r--sci-visualization/qtiplot/files/qtiplot-0.9.8.9-crasher_without_internet.patch25
-rw-r--r--sci-visualization/qtiplot/files/qtiplot-0.9.8.9-origin-2.patch38
-rw-r--r--sci-visualization/qtiplot/files/qtiplot-0.9.8.9-private.patch15
-rw-r--r--sci-visualization/qtiplot/files/qtiplot-0.9.8.9-qt48.patch29
-rw-r--r--sci-visualization/qtiplot/files/qtiplot-0.9.8.9-set_col_values.patch18
-rw-r--r--sci-visualization/qtiplot/files/qtiplot-0.9.8.9-sip-4.15.patch31
-rw-r--r--sci-visualization/qtiplot/metadata.xml12
-rw-r--r--sci-visualization/qtiplot/qtiplot-0.9.8.9-r2.ebuild240
-rw-r--r--sci-visualization/qtiplot/qtiplot-0.9.8.9-r3.ebuild242
-rw-r--r--sci-visualization/quickplot/Manifest2
-rw-r--r--sci-visualization/quickplot/metadata.xml16
-rw-r--r--sci-visualization/quickplot/quickplot-0.10.6.ebuild44
-rw-r--r--sci-visualization/quickplot/quickplot-0.10.8.ebuild44
-rw-r--r--sci-visualization/spectromatic/Manifest1
-rw-r--r--sci-visualization/spectromatic/files/spectromatic-1.0-makefile.patch49
-rw-r--r--sci-visualization/spectromatic/files/spectromatic-1.0-stringliteral.patch78
-rw-r--r--sci-visualization/spectromatic/files/spectromatic-1.0-waveheaderstruct-amd64.patch103
-rw-r--r--sci-visualization/spectromatic/metadata.xml16
-rw-r--r--sci-visualization/spectromatic/spectromatic-1.0-r2.ebuild41
-rw-r--r--sci-visualization/spyview/Manifest2
-rw-r--r--sci-visualization/spyview/metadata.xml10
-rw-r--r--sci-visualization/spyview/spyview-20111018.ebuild51
-rw-r--r--sci-visualization/spyview/spyview-20130823.ebuild52
-rw-r--r--sci-visualization/veusz/Manifest7
-rw-r--r--sci-visualization/veusz/files/veusz.desktop10
-rw-r--r--sci-visualization/veusz/files/veusz.xml10
-rw-r--r--sci-visualization/veusz/metadata.xml20
-rw-r--r--sci-visualization/veusz/veusz-1.11.ebuild56
-rw-r--r--sci-visualization/veusz/veusz-1.20.1.ebuild64
-rw-r--r--sci-visualization/veusz/veusz-1.20.ebuild64
-rw-r--r--sci-visualization/veusz/veusz-1.21.1.ebuild75
-rw-r--r--sci-visualization/veusz/veusz-1.21.ebuild64
-rw-r--r--sci-visualization/veusz/veusz-1.22.ebuild71
-rw-r--r--sci-visualization/veusz/veusz-1.23.ebuild72
-rw-r--r--sci-visualization/visit/Manifest3
-rw-r--r--sci-visualization/visit/files/visit-2.7.3-dont_symlink_visit_dir.patch18
-rw-r--r--sci-visualization/visit/files/visit-2.7.3-findpython.patch19
-rw-r--r--sci-visualization/visit/files/visit-2.7.3-findsilo.patch12
-rw-r--r--sci-visualization/visit/files/visit-2.7.3-findvtk.patch24
-rw-r--r--sci-visualization/visit/files/visit-2.7.3-vtklibs.patch142
-rw-r--r--sci-visualization/visit/files/visit-2.8.2-dont_symlink_visit_dir.patch18
-rw-r--r--sci-visualization/visit/files/visit-2.8.2-findpython.patch19
-rw-r--r--sci-visualization/visit/files/visit-2.8.2-findsilo.patch12
-rw-r--r--sci-visualization/visit/files/visit-2.8.2-findvtk.patch29
-rw-r--r--sci-visualization/visit/files/visit-2.8.2-vtklibs.patch133
-rw-r--r--sci-visualization/visit/files/visit-2.9.0-cmakelist.patch10
-rw-r--r--sci-visualization/visit/files/visit-2.9.0-dont_symlink_visit_dir.patch18
-rw-r--r--sci-visualization/visit/files/visit-2.9.0-findpython.patch19
-rw-r--r--sci-visualization/visit/files/visit-2.9.0-findsilo.patch12
-rw-r--r--sci-visualization/visit/files/visit-2.9.0-findvtk.patch29
-rw-r--r--sci-visualization/visit/files/visit-2.9.0-vtklibs.patch133
-rw-r--r--sci-visualization/visit/files/visit-2.9.0-vtkmpi.patch46
-rw-r--r--sci-visualization/visit/metadata.xml20
-rw-r--r--sci-visualization/visit/visit-2.7.3.ebuild90
-rw-r--r--sci-visualization/visit/visit-2.8.2.ebuild99
-rw-r--r--sci-visualization/visit/visit-2.9.0.ebuild101
-rw-r--r--sci-visualization/xd3d/Manifest1
-rw-r--r--sci-visualization/xd3d/files/xd3d-8.3.1-cflags.patch41
-rw-r--r--sci-visualization/xd3d/files/xd3d-8.3.1-gentoo.diff86
-rw-r--r--sci-visualization/xd3d/files/xd3d-8.3.1-parallel.patch61
-rw-r--r--sci-visualization/xd3d/files/xd3d-8.3.1-rotated.patch10
-rw-r--r--sci-visualization/xd3d/metadata.xml13
-rw-r--r--sci-visualization/xd3d/xd3d-8.3.1.ebuild56
-rw-r--r--sci-visualization/xds-viewer/Manifest1
-rw-r--r--sci-visualization/xds-viewer/metadata.xml19
-rw-r--r--sci-visualization/xds-viewer/xds-viewer-0.6.ebuild25
-rw-r--r--sci-visualization/xgraph/Manifest3
-rw-r--r--sci-visualization/xgraph/files/xgraph-12.1-glibc-2.10.patch29
-rw-r--r--sci-visualization/xgraph/files/xgraph-makefile-gentoo.patch12
-rw-r--r--sci-visualization/xgraph/metadata.xml14
-rw-r--r--sci-visualization/xgraph/xgraph-12.1-r2.ebuild44
-rw-r--r--sci-visualization/xgraph/xgraph-12.1-r3.ebuild41
-rw-r--r--sci-visualization/xyscan/Manifest1
-rw-r--r--sci-visualization/xyscan/metadata.xml11
-rw-r--r--sci-visualization/xyscan/xyscan-3.3.1.ebuild39
-rw-r--r--sci-visualization/yt/Manifest2
-rw-r--r--sci-visualization/yt/files/yt-3.0-missing_package.patch12
-rw-r--r--sci-visualization/yt/metadata.xml18
-rw-r--r--sci-visualization/yt/yt-3.1.ebuild48
-rw-r--r--sci-visualization/yt/yt-3.2.ebuild47
-rw-r--r--sci-visualization/zhu3d/Manifest2
-rw-r--r--sci-visualization/zhu3d/files/zhu3d-4.2.4-gold.patch11
-rw-r--r--sci-visualization/zhu3d/metadata.xml16
-rw-r--r--sci-visualization/zhu3d/zhu3d-4.2.4.ebuild77
-rw-r--r--sci-visualization/zhu3d/zhu3d-4.2.6.ebuild78
248 files changed, 11819 insertions, 0 deletions
diff --git a/sci-visualization/circos/Manifest b/sci-visualization/circos/Manifest
new file mode 100644
index 00000000000..a749ed41ec8
--- /dev/null
+++ b/sci-visualization/circos/Manifest
@@ -0,0 +1 @@
+DIST circos-0.55.tgz 10163948 SHA256 3c9f3302b7becb8300d31153d9f8db5552491cb21f5b4cb2f3dc4ca9fd2a362d SHA512 3ebad082acd96b27281e6fcd996fb79022d982a93db59e1f3589a341df7f9855d7554fb92c88c41dc4679e7273d11c0372285a4059ec14a77f11d1d4014db9c1 WHIRLPOOL 4c242fbea59095f24d08eb18c9c9e145e6c7b783581297698a8b21d702019d621709a233bf4ba06928f00ced4eb9e50674f338d12265eaf948533a7ef0a2e251
diff --git a/sci-visualization/circos/circos-0.55.ebuild b/sci-visualization/circos/circos-0.55.ebuild
new file mode 100644
index 00000000000..8d443f8d554
--- /dev/null
+++ b/sci-visualization/circos/circos-0.55.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+DESCRIPTION="Circular layout visualization of genomic and other data"
+HOMEPAGE="http://mkweb.bcgsc.ca/circos/"
+SRC_URI="http://mkweb.bcgsc.ca/circos/distribution/${P}.tgz"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE=""
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+
+DEPEND="dev-perl/Config-General
+ dev-perl/GD
+ dev-perl/Math-Bezier
+ dev-perl/Math-Round
+ dev-perl/Math-VecStat
+ dev-perl/Params-Validate
+ dev-perl/Readonly
+ dev-perl/regexp-common
+ >=dev-perl/Set-IntSpan-1.11
+ dev-perl/Graphics-ColorObject
+ dev-perl/List-MoreUtils"
+RDEPEND="${DEPEND}"
+
+src_install() {
+ insinto /opt/${PN}
+ find * -maxdepth 0 -type d | xargs doins -r
+ exeinto /opt/${PN}/bin
+ doexe bin/circos bin/gddiag
+ dosym /opt/${PN}/bin/circos /usr/bin/circos
+ find * -maxdepth 0 -type f | xargs dodoc
+}
diff --git a/sci-visualization/circos/metadata.xml b/sci-visualization/circos/metadata.xml
new file mode 100644
index 00000000000..97aca918f62
--- /dev/null
+++ b/sci-visualization/circos/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>sci-biology</herd>
+<longdescription>
+ Circos visualizes data in a circular layout — this makes Circos
+ ideal for exploring relationships between objects or
+ positions. Circos is ideal for creating publication-quality
+ infographics and illustrations with a high data-to-ink ratio, richly
+ layered data and pleasant symmetries. You have fine control each element
+ in the figure to tailor its focus points and detail to your audience.
+</longdescription>
+</pkgmetadata>
diff --git a/sci-visualization/epix/Manifest b/sci-visualization/epix/Manifest
new file mode 100644
index 00000000000..5289ef810b3
--- /dev/null
+++ b/sci-visualization/epix/Manifest
@@ -0,0 +1,2 @@
+DIST epix-1.2.10_withpdf.tar.bz2 1704245 SHA256 ff211a4a0b946a7bff81a1e96dadefbcccd8c7c92d04fbf739b7ff55ba534c5f SHA512 031d9f514217ff209691c2f6eed6fe91551f97443d12d7a6aff9fba8edbefda11735175ff60471f34247daf7d4d8abd1d846825ec0a93d28330799aec48deeac WHIRLPOOL 7bdc28ae2b1dd575c2b5a045c584e85ac06aacceb0ec5a06d99249c10af69c8f258eaf81b17f7853cb82a50bb2809c8769c059f5805a5b09f7f8bdacdf8fa187
+DIST epix-1.2.11_withpdf.tar.bz2 1709429 SHA256 e6186a5564e26195887dadd94dba9c0ba596a1402cb5b9866dea10abc66ef4d7 SHA512 16d0edf13711e469a13faba83d47fbab983277a95cfed0e343089258da0b8a56104af9fc217aaa70928c50f10e7d152df93c3638cf2a65a2833142645a829a45 WHIRLPOOL 1540b35b87f7c663a37b45a8c33e3d9b93f07f10d6c54da7df4262b1a685be30ec65ddebd5c6d7030dd3f1c86a990223db05cfc5f93840265b56f902f085536a
diff --git a/sci-visualization/epix/epix-1.2.10.ebuild b/sci-visualization/epix/epix-1.2.10.ebuild
new file mode 100644
index 00000000000..0c629d22301
--- /dev/null
+++ b/sci-visualization/epix/epix-1.2.10.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit elisp-common bash-completion-r1 autotools eutils
+
+DESCRIPTION="2- and 3-D plotter for creating images (to be used in LaTeX)"
+HOMEPAGE="http://mathcs.holycross.edu/~ahwang/current/ePiX.html"
+SRC_URI="http://mathcs.holycross.edu/~ahwang/epix/${P}_withpdf.tar.bz2"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux"
+IUSE="doc emacs examples"
+
+DEPEND="
+ virtual/latex-base
+ dev-texlive/texlive-pstricks
+ dev-texlive/texlive-pictures
+ dev-texlive/texlive-latexextra
+ dev-tex/xcolor
+ emacs? ( virtual/emacs )"
+RDEPEND="${DEPEND}"
+SITEFILE=50${PN}-gentoo.el
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-1.2.10-autotools.patch
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ --disable-epix-el
+}
+
+src_install() {
+ default
+ if use emacs; then
+ # do compilation here as the make install target will
+ # create the .el file
+ elisp-compile *.el || die "elisp-compile failed!"
+ elisp-install ${PN} *.elc *.el || die "elisp-install failed!"
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+ newbashcomp bash_completions epix
+ bashcomp_alias epix flix elaps laps
+ if use doc; then
+ insinto /usr/share/doc/${PF}
+ doins doc/*gz
+ fi
+ if use examples; then
+ cd samples
+ insinto /usr/share/doc/${PF}/examples
+ doins *.xp *.flx *c *h README
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/sci-visualization/epix/epix-1.2.11-r1.ebuild b/sci-visualization/epix/epix-1.2.11-r1.ebuild
new file mode 100644
index 00000000000..a63e57bafb6
--- /dev/null
+++ b/sci-visualization/epix/epix-1.2.11-r1.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit elisp-common bash-completion-r1 autotools eutils
+
+DESCRIPTION="2- and 3-D plotter for creating images (to be used in LaTeX)"
+HOMEPAGE="http://mathcs.holycross.edu/~ahwang/current/ePiX.html"
+SRC_URI="http://mathcs.holycross.edu/~ahwang/epix/${P}_withpdf.tar.bz2"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux"
+IUSE="doc emacs examples"
+
+DEPEND="
+ virtual/latex-base
+ dev-texlive/texlive-pstricks
+ dev-texlive/texlive-pictures
+ dev-texlive/texlive-latexextra
+ dev-tex/xcolor
+ emacs? ( virtual/emacs )"
+RDEPEND="${DEPEND}"
+SITEFILE=50${PN}-gentoo.el
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-1.2.10-autotools.patch
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ --disable-epix-el
+}
+
+src_install() {
+ default
+ if use emacs; then
+ # do compilation here as the make install target will
+ # create the .el file
+ elisp-compile *.el || die "elisp-compile failed!"
+ elisp-install ${PN} *.elc *.el || die "elisp-install failed!"
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+ newbashcomp bash_completions epix
+ bashcomp_alias epix flix elaps laps
+ if use doc; then
+ insinto /usr/share/doc/${PF}
+ doins doc/*gz
+ fi
+ if use examples; then
+ cd samples
+ insinto /usr/share/doc/${PF}/examples
+ doins *.xp *.flx *c *h README
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/sci-visualization/epix/epix-1.2.11.ebuild b/sci-visualization/epix/epix-1.2.11.ebuild
new file mode 100644
index 00000000000..a63e57bafb6
--- /dev/null
+++ b/sci-visualization/epix/epix-1.2.11.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit elisp-common bash-completion-r1 autotools eutils
+
+DESCRIPTION="2- and 3-D plotter for creating images (to be used in LaTeX)"
+HOMEPAGE="http://mathcs.holycross.edu/~ahwang/current/ePiX.html"
+SRC_URI="http://mathcs.holycross.edu/~ahwang/epix/${P}_withpdf.tar.bz2"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux"
+IUSE="doc emacs examples"
+
+DEPEND="
+ virtual/latex-base
+ dev-texlive/texlive-pstricks
+ dev-texlive/texlive-pictures
+ dev-texlive/texlive-latexextra
+ dev-tex/xcolor
+ emacs? ( virtual/emacs )"
+RDEPEND="${DEPEND}"
+SITEFILE=50${PN}-gentoo.el
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-1.2.10-autotools.patch
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ --disable-epix-el
+}
+
+src_install() {
+ default
+ if use emacs; then
+ # do compilation here as the make install target will
+ # create the .el file
+ elisp-compile *.el || die "elisp-compile failed!"
+ elisp-install ${PN} *.elc *.el || die "elisp-install failed!"
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+ newbashcomp bash_completions epix
+ bashcomp_alias epix flix elaps laps
+ if use doc; then
+ insinto /usr/share/doc/${PF}
+ doins doc/*gz
+ fi
+ if use examples; then
+ cd samples
+ insinto /usr/share/doc/${PF}/examples
+ doins *.xp *.flx *c *h README
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/sci-visualization/epix/files/50epix-gentoo.el b/sci-visualization/epix/files/50epix-gentoo.el
new file mode 100644
index 00000000000..eb5d8eb1337
--- /dev/null
+++ b/sci-visualization/epix/files/50epix-gentoo.el
@@ -0,0 +1,8 @@
+;; sci-visualisation/epix site init file
+
+(add-to-list 'load-path "@SITELISP@")
+
+(autoload 'epix-mode "epix" "ePiX editing mode" t)
+(autoload 'flix-mode "epix" "flix editing mode" t)
+(add-to-list 'auto-mode-alist '("\\.xp\\'" . epix-mode))
+(add-to-list 'auto-mode-alist '("\\.flx\\'" . flix-mode))
diff --git a/sci-visualization/epix/files/epix-1.2.10-autotools.patch b/sci-visualization/epix/files/epix-1.2.10-autotools.patch
new file mode 100644
index 00000000000..03f93cd26c9
--- /dev/null
+++ b/sci-visualization/epix/files/epix-1.2.10-autotools.patch
@@ -0,0 +1,85 @@
+diff -Nur epix-1.2.10.orig/configure.ac epix-1.2.10/configure.ac
+--- epix-1.2.10.orig/configure.ac 2012-11-29 21:04:20.411280150 -0800
++++ epix-1.2.10/configure.ac 2012-11-29 21:14:00.462163755 -0800
+@@ -9,6 +9,7 @@
+ dnl Checks for programs.
+ AC_PROG_CXX
+ AC_PROG_LN_S
++AM_PROG_AR
+ AC_PROG_RANLIB
+ AC_PROG_MAKE_SET
+ AC_PROG_INSTALL
+diff -Nur epix-1.2.10.orig/doc/Makefile.am epix-1.2.10/doc/Makefile.am
+--- epix-1.2.10.orig/doc/Makefile.am 2012-11-29 21:04:20.414280167 -0800
++++ epix-1.2.10/doc/Makefile.am 2012-11-29 21:04:30.491329674 -0800
+@@ -1,7 +1,7 @@
+ # Makefile.am for ePiX v1.x "doc" directory
+ #
+
+-EPIXFLAGS = --no-defaults -I.. -L.. -lepix -v
++EPIXFLAGS = --no-defaults -I.. -L.. -lepix -q
+
+ %.eepic: %.xp
+ ../epix-local $(EPIXFLAGS) $<
+@@ -13,13 +13,13 @@
+ CLEANFILES = *~ *.aux *.dvi *.log *.out *.toc \
+ *.fdx *.flg *.fnd *.idx *.ilg *.ind \
+ epix.info epix.info.bz2 manual_src.tar manual.pdf manual.ps \
+- manual_src.tar.gz manual.pdf.gz manual.ps.gz manual-stamp
++ manual_src.tar.gz manual.pdf manual.ps.gz manual-stamp
+
+ MAINTAINERCLEANFILES = *.eepic *.aux *.dvi *.log *.out *.toc \
+ *.fdx *.flg *.fnd *.idx *.ilg *.ind
+
+ ## Targets ##
+-doc_DATA = manual.pdf.gz manual.ps.gz manual_src.tar.gz
++doc_DATA =
+
+ info_TEXINFOS = epix.texi
+
+@@ -42,8 +42,7 @@
+ gzip -9 -c manual.ps > manual.ps.gz
+
+ #PDF
+-manual.pdf.gz: manual-stamp
+- gzip -9 -c manual.pdf > manual.pdf.gz
++manual.pdf: manual-stamp
+
+ epix.info: manual-stamp epix.texi
+ makeinfo epix.texi 2>&1 >/dev/null
+diff -Nur epix-1.2.10.orig/Makefile.am epix-1.2.10/Makefile.am
+--- epix-1.2.10.orig/Makefile.am 2012-11-29 21:04:20.415280173 -0800
++++ epix-1.2.10/Makefile.am 2012-11-29 21:05:52.489734436 -0800
+@@ -56,7 +56,7 @@
+
+ EPIX_CONFFILES = bash_completions $(EPIX_EL)
+
+-EPIX_NOTEFILES = AUTHORS BUGS ChangeLog COPYING INSTALL NEWS POST-INSTALL \
++EPIX_NOTEFILES = AUTHORS BUGS ChangeLog NEWS POST-INSTALL \
+ README THANKS VERSION
+
+ EXTRA_DIST = $(bin_SCRIPTS) $(man_MANS) $(EPIX_CONFFILES) $(EPIX_NOTEFILES) \
+@@ -85,11 +85,6 @@
+ -e 's%@RUNTIME_COMPILER\@%$(CXX)%;' $< > $@-local
+ chmod a+x $@ $@-local
+
+-# libepix.a
+-libepix.a: $(libepix_a_OBJECTS)
+- ar -ru libepix.a $(libepix_a_OBJECTS)
+- $(RANLIB) libepix.a
+-
+ # object file dependencies
+ $(libepix_a_LIBADD): %.o: %.cc %.h
+
+diff -Nur epix-1.2.10.orig/samples/Makefile.am epix-1.2.10/samples/Makefile.am
+--- epix-1.2.10.orig/samples/Makefile.am 2012-11-29 21:04:20.416280179 -0800
++++ epix-1.2.10/samples/Makefile.am 2012-11-29 21:04:30.491329674 -0800
+@@ -7,7 +7,7 @@
+ CLEANFILES = *~ *.eepic *.eps sample_src.tar sample_src.tar.gz sample-stamp
+
+ ## Targets ##
+-doc_DATA = sample_src.tar.gz
++doc_DATA =
+
+
+ # tar up tex, xp, and eepic files
diff --git a/sci-visualization/epix/files/epix-1.2.6-automake.patch b/sci-visualization/epix/files/epix-1.2.6-automake.patch
new file mode 100644
index 00000000000..80e9fb2b356
--- /dev/null
+++ b/sci-visualization/epix/files/epix-1.2.6-automake.patch
@@ -0,0 +1,27 @@
+ Makefile.am | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 366c582..2edbfe0 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -15,7 +15,7 @@ SUBDIRS = . samples doc
+ bin_SCRIPTS = epix elaps flix laps
+
+ pkglib_LIBRARIES = libepix.a
+-pkglib_DATA = epix-lib.sh
++pkgdata_DATA = epix-lib.sh
+ include_HEADERS = epix.h
+
+ libepix_a_CXXSOURCES = active_screen.cc affine.cc angle_units.cc \
+@@ -107,8 +107,8 @@ install-data-local:
+ $(INSTALL_DATA) $(EPIX_CONFFILES) $(DESTDIR)$(docdir)/config
+
+ # This is being installed by install-exec, but should not be executable
+-install-exec-local: install-pkglibDATA
+- chmod a-x $(DESTDIR)$(pkglibdir)/epix-lib.sh
++install-exec-local: install-pkgdataDATA
++ chmod a-x $(DESTDIR)$(pkgdatadir)/epix-lib.sh
+
+ uninstall-local:
+ -rm -rf $(DESTDIR)$(docdir)/notes $(DESTDIR)$(docdir)/config
diff --git a/sci-visualization/epix/files/epix-1.2.6-doc-gentoo.patch b/sci-visualization/epix/files/epix-1.2.6-doc-gentoo.patch
new file mode 100644
index 00000000000..ce0ec81fb71
--- /dev/null
+++ b/sci-visualization/epix/files/epix-1.2.6-doc-gentoo.patch
@@ -0,0 +1,74 @@
+diff -Nura epix-1.2.6.orig/doc/Makefile.am epix-1.2.6/doc/Makefile.am
+--- epix-1.2.6.orig/doc/Makefile.am 2009-02-16 02:16:58.000000000 +0000
++++ epix-1.2.6/doc/Makefile.am 2009-04-13 18:11:18.310702097 +0100
+@@ -1,7 +1,7 @@
+ # Makefile.am for ePiX v1.x "doc" directory
+ #
+
+-EPIXFLAGS = --no-defaults -I.. -L.. -lepix -v
++EPIXFLAGS = --no-defaults -I.. -L.. -lepix -q
+
+ %.eepic: %.xp
+ ../epix-local $(EPIXFLAGS) $<
+@@ -13,13 +13,13 @@
+ CLEANFILES = *~ *.aux *.dvi *.log *.out *.toc \
+ *.fdx *.flg *.fnd *.idx *.ilg *.ind \
+ epix.info epix.info.bz2 manual_src.tar manual.pdf manual.ps \
+- manual_src.tar.gz manual.pdf.gz manual.ps.gz manual-stamp
++ manual_src.tar.gz manual.pdf manual.ps.gz manual-stamp
+
+ MAINTAINERCLEANFILES = *.eepic *.aux *.dvi *.log *.out *.toc \
+ *.fdx *.flg *.fnd *.idx *.ilg *.ind
+
+ ## Targets ##
+-doc_DATA = manual.pdf.gz manual.ps.gz manual_src.tar.gz
++doc_DATA =
+
+ info_TEXINFOS = epix.texi
+
+@@ -42,8 +42,7 @@
+ gzip -9 -c manual.ps > manual.ps.gz
+
+ #PDF
+-manual.pdf.gz: manual-stamp
+- gzip -9 -c manual.pdf > manual.pdf.gz
++manual.pdf: manual-stamp
+
+ epix.info: manual-stamp epix.texi
+ makeinfo epix.texi 2>&1 >/dev/null
+diff -Nura epix-1.2.6.orig/Makefile.am epix-1.2.6/Makefile.am
+--- epix-1.2.6.orig/Makefile.am 2008-07-01 03:48:22.000000000 +0100
++++ epix-1.2.6/Makefile.am 2009-04-13 17:58:15.273913638 +0100
+@@ -56,7 +56,7 @@
+
+ EPIX_CONFFILES = bash_completions $(EPIX_EL)
+
+-EPIX_NOTEFILES = AUTHORS BUGS ChangeLog COPYING INSTALL NEWS POST-INSTALL \
++EPIX_NOTEFILES = AUTHORS BUGS ChangeLog NEWS POST-INSTALL \
+ README THANKS VERSION
+
+ EXTRA_DIST = $(bin_SCRIPTS) $(man_MANS) $(EPIX_CONFFILES) $(EPIX_NOTEFILES) \
+@@ -102,9 +102,8 @@
+ # Extra things to install
+ install-data-local:
+ @echo; echo "Installing notes and configuration files"
+- ./mkinstalldirs $(DESTDIR)$(docdir)/notes $(DESTDIR)$(docdir)/config
+- $(INSTALL_DATA) $(EPIX_NOTEFILES) $(DESTDIR)$(docdir)/notes
+- $(INSTALL_DATA) $(EPIX_CONFFILES) $(DESTDIR)$(docdir)/config
++ ./mkinstalldirs $(DESTDIR)$(docdir)
++ $(INSTALL_DATA) $(EPIX_NOTEFILES) $(DESTDIR)$(docdir)
+
+ # This is being installed by install-exec, but should not be executable
+ install-exec-local: install-pkglibDATA
+diff -Nura epix-1.2.6.orig/samples/Makefile.am epix-1.2.6/samples/Makefile.am
+--- epix-1.2.6.orig/samples/Makefile.am 2008-07-01 03:55:14.000000000 +0100
++++ epix-1.2.6/samples/Makefile.am 2009-04-13 18:11:31.096963306 +0100
+@@ -7,7 +7,7 @@
+ CLEANFILES = *~ *.eepic *.eps sample_src.tar sample_src.tar.gz sample-stamp
+
+ ## Targets ##
+-doc_DATA = sample_src.tar.gz
++doc_DATA =
+
+
+ # tar up tex, xp, and eepic files
diff --git a/sci-visualization/epix/files/epix-1.2.9-autotools.patch b/sci-visualization/epix/files/epix-1.2.9-autotools.patch
new file mode 100644
index 00000000000..ebceb98dc30
--- /dev/null
+++ b/sci-visualization/epix/files/epix-1.2.9-autotools.patch
@@ -0,0 +1,94 @@
+* disable automatic install of doc and examples
+* update for newer autotools
+Patch by Sebastien Fabbro
+
+diff -Nur epix-1.2.9.orig/doc/Makefile.am epix-1.2.9/doc/Makefile.am
+--- epix-1.2.9.orig/doc/Makefile.am 2009-02-16 02:16:58.000000000 +0000
++++ epix-1.2.9/doc/Makefile.am 2012-02-19 16:46:02.123782104 +0000
+@@ -1,7 +1,7 @@
+ # Makefile.am for ePiX v1.x "doc" directory
+ #
+
+-EPIXFLAGS = --no-defaults -I.. -L.. -lepix -v
++EPIXFLAGS = --no-defaults -I.. -L.. -lepix -q
+
+ %.eepic: %.xp
+ ../epix-local $(EPIXFLAGS) $<
+@@ -13,13 +13,13 @@
+ CLEANFILES = *~ *.aux *.dvi *.log *.out *.toc \
+ *.fdx *.flg *.fnd *.idx *.ilg *.ind \
+ epix.info epix.info.bz2 manual_src.tar manual.pdf manual.ps \
+- manual_src.tar.gz manual.pdf.gz manual.ps.gz manual-stamp
++ manual_src.tar.gz manual.pdf manual.ps.gz manual-stamp
+
+ MAINTAINERCLEANFILES = *.eepic *.aux *.dvi *.log *.out *.toc \
+ *.fdx *.flg *.fnd *.idx *.ilg *.ind
+
+ ## Targets ##
+-doc_DATA = manual.pdf.gz manual.ps.gz manual_src.tar.gz
++doc_DATA =
+
+ info_TEXINFOS = epix.texi
+
+@@ -42,8 +42,7 @@
+ gzip -9 -c manual.ps > manual.ps.gz
+
+ #PDF
+-manual.pdf.gz: manual-stamp
+- gzip -9 -c manual.pdf > manual.pdf.gz
++manual.pdf: manual-stamp
+
+ epix.info: manual-stamp epix.texi
+ makeinfo epix.texi 2>&1 >/dev/null
+diff -Nur epix-1.2.9.orig/Makefile.am epix-1.2.9/Makefile.am
+--- epix-1.2.9.orig/Makefile.am 2010-01-25 02:42:26.000000000 +0000
++++ epix-1.2.9/Makefile.am 2012-02-19 16:50:24.890671835 +0000
+@@ -15,7 +15,8 @@
+ bin_SCRIPTS = epix elaps flix laps
+
+ pkglib_LIBRARIES = libepix.a
+-pkglib_DATA = epix-lib.sh
++pkgepixdir = $(pkglibdir)
++pkgepix_DATA = epix-lib.sh
+ include_HEADERS = epix.h
+
+ libepix_a_CXXSOURCES = active_screen.cc affine.cc angle_units.cc \
+@@ -56,7 +57,7 @@
+
+ EPIX_CONFFILES = bash_completions $(EPIX_EL)
+
+-EPIX_NOTEFILES = AUTHORS BUGS ChangeLog COPYING INSTALL NEWS POST-INSTALL \
++EPIX_NOTEFILES = AUTHORS BUGS ChangeLog NEWS POST-INSTALL \
+ README THANKS VERSION
+
+ EXTRA_DIST = $(bin_SCRIPTS) $(man_MANS) $(EPIX_CONFFILES) $(EPIX_NOTEFILES) \
+@@ -102,13 +103,12 @@
+ # Extra things to install
+ install-data-local:
+ @echo; echo "Installing notes and configuration files"
+- $(mkinstalldirs) $(DESTDIR)$(docdir)/notes $(DESTDIR)$(docdir)/config
+- $(INSTALL_DATA) $(EPIX_NOTEFILES) $(DESTDIR)$(docdir)/notes
+- $(INSTALL_DATA) $(EPIX_CONFFILES) $(DESTDIR)$(docdir)/config
++ $(mkinstalldirs) $(DESTDIR)$(docdir)
++ $(INSTALL_DATA) $(EPIX_NOTEFILES) $(DESTDIR)$(docdir)
+
+ # This is being installed by install-exec, but should not be executable
+-install-exec-local: install-pkglibDATA
+- chmod a-x $(DESTDIR)$(pkglibdir)/epix-lib.sh
++install-exec-local: install-pkgepixDATA
++ chmod a-x $(DESTDIR)$(pkgepixdir)/epix-lib.sh
+
+ uninstall-local:
+ -rm -rf $(DESTDIR)$(docdir)/notes $(DESTDIR)$(docdir)/config
+diff -Nur epix-1.2.9.orig/samples/Makefile.am epix-1.2.9/samples/Makefile.am
+--- epix-1.2.9.orig/samples/Makefile.am 2008-07-01 03:55:14.000000000 +0100
++++ epix-1.2.9/samples/Makefile.am 2012-02-19 16:46:02.123782104 +0000
+@@ -7,7 +7,7 @@
+ CLEANFILES = *~ *.eepic *.eps sample_src.tar sample_src.tar.gz sample-stamp
+
+ ## Targets ##
+-doc_DATA = sample_src.tar.gz
++doc_DATA =
+
+
+ # tar up tex, xp, and eepic files
diff --git a/sci-visualization/epix/metadata.xml b/sci-visualization/epix/metadata.xml
new file mode 100644
index 00000000000..1e8d734a8d9
--- /dev/null
+++ b/sci-visualization/epix/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <longdescription lang="en">
+ ePiX creates mathematically accurate figures, plots, and
+ movies using easy-to-learn syntax. The output is expressly suitable
+ for use with LaTeX; figures may be written in a LaTeX picture
+ environment containing PSTricks, tikz, or eepic macros, or as vector
+ (EPS or PDF) image files. The user interface resembles that of
+ LaTeX: You prepare a human-readable scene description in a text
+ editor, then compile the input file into a picture.
+ use ePiX, however.
+</longdescription>
+</pkgmetadata>
diff --git a/sci-visualization/extrema/Manifest b/sci-visualization/extrema/Manifest
new file mode 100644
index 00000000000..a934c66ea1b
--- /dev/null
+++ b/sci-visualization/extrema/Manifest
@@ -0,0 +1 @@
+DIST extrema-4.4.5.tar.gz 6536157 SHA256 ce648d6531c3d55501078073e08a18d70e880b6329b5b168a59db5213d048491 SHA512 933caac15b511fc599366d42472d38bfce5031dbfa7bb7139bcd222268307f0141b18eb885948b39e52a6f06980ad7575cb9b56a31ad81d4cd7b2af291402e87 WHIRLPOOL 870235201d564aefe0c8352fb71b02177072f2bf5ad228e0e64553c1a45c0e48284a5284d6fc7af1348f01b865c1550e507df894b884c4f4fb764e2b1923966d
diff --git a/sci-visualization/extrema/extrema-4.4.5.ebuild b/sci-visualization/extrema/extrema-4.4.5.ebuild
new file mode 100644
index 00000000000..4f4c0b8997a
--- /dev/null
+++ b/sci-visualization/extrema/extrema-4.4.5.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+WX_GTK_VER="2.8"
+inherit eutils fdo-mime wxwidgets
+
+DESCRIPTION="Interactive data analysis and visualization tool"
+HOMEPAGE="http://exsitewebware.com/extrema/"
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="doc examples static-libs"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+# File collision, see bug #249423
+RDEPEND="!sci-chemistry/psi
+ x11-libs/wxGTK:2.8[X]
+ dev-util/desktop-file-utils"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ sed -i \
+ -e 's/$(pkgdatadir)/$(DESTDIR)$(pkgdatadir)/g' \
+ src/Makefile.in || die
+ epatch "${FILESDIR}"/${P}-gcc46.patch
+}
+
+src_configure() {
+ # extrema cannot be compiled with versions of minuit
+ # available in portage
+ econf \
+ --enable-shared \
+ $(use_enable static-libs static)
+}
+
+src_install() {
+ default
+ make_desktop_entry ${PN}
+ dodir /usr/share/icons/hicolor
+ tar xjf extrema_icons.tar.bz2 -C "${ED}usr/share/icons/hicolor"
+ dosym ../../icons/hicolor/48x48/apps/extrema.png /usr/share/pixmaps/extrema.png
+
+ use doc && dodoc doc/*.pdf
+ if use examples; then
+ insinto /usr/share/doc/${PF}/examples
+ doins Scripts/*.pcm Scripts/*.dat || die
+ fi
+}
+
+pkg_postinst() {
+ fdo-mime_desktop_database_update
+}
+
+pkg_postrm() {
+ fdo-mime_desktop_database_update
+}
diff --git a/sci-visualization/extrema/files/extrema-4.4.5-gcc46.patch b/sci-visualization/extrema/files/extrema-4.4.5-gcc46.patch
new file mode 100644
index 00000000000..45a80429264
--- /dev/null
+++ b/sci-visualization/extrema/files/extrema-4.4.5-gcc46.patch
@@ -0,0 +1,15 @@
+Fix building with gcc-4.6
+
+https://bugs.gentoo.org/show_bug.cgi?id=363467
+
+Patch written by Kacper Kowalik <xarthisius@gentoo.org>
+--- a/src/Graphics/GRA_thiessenTriangulation.h
++++ b/src/Graphics/GRA_thiessenTriangulation.h
+@@ -19,6 +19,7 @@
+ #define GRA_THIESSENTRIANGULATION
+
+ #include <vector>
++#include <cstddef>
+
+ class GRA_thiessenTriangulation
+ {
diff --git a/sci-visualization/extrema/metadata.xml b/sci-visualization/extrema/metadata.xml
new file mode 100644
index 00000000000..56acf5b51a0
--- /dev/null
+++ b/sci-visualization/extrema/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <maintainer>
+ <email>grozin@gentoo.org</email>
+ <name>Andrey Grozin</name>
+ </maintainer>
+ <longdescription>
+ Extrema is a powerful visualization and data analysis tool that
+ enables researchers to quickly distill their large, complex data sets
+ into meaningful information. Its flexibility, sophistication, and
+ power allow you to easily develop your own commands and create highly
+ customized graphs.
+</longdescription>
+ <upstream>
+ <remote-id type="sourceforge">extrema</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sci-visualization/fig2sxd/Manifest b/sci-visualization/fig2sxd/Manifest
new file mode 100644
index 00000000000..e207a637c76
--- /dev/null
+++ b/sci-visualization/fig2sxd/Manifest
@@ -0,0 +1,2 @@
+DIST fig2sxd_0.21-2.diff.gz 2765 SHA256 b9dd3c562b81ea820276a8b5c4c2e0049c5c201624e9b02b6fa1faf106f6b28c SHA512 7b09a837fd2f59e27869dab788b8fd75f810eadf31f54ec1c7e4445ecc13093e68bb22cfc0b8163d65ae6e661cf8ad414c03172fa10367d3c14e2b0332eb1d2f WHIRLPOOL 3d718300ea0b1a21f3e5bc126d272239ea67225930014cd0205371a82cfbf5af3356dfcf1dfd1e258642e733f4a15404883da86084226e7ab4a329a7f94ab0b8
+DIST fig2sxd_0.21.orig.tar.gz 26083 SHA256 11a47f458c1d63f1c80dd49d8bb9dfc008cdb5d4d5c9a8611c258da3fdb8150a SHA512 666975716c56cdc9e8660e81f086887edd5d7e78e3d50c528130b264eec377cae0ba2ac17467a351d46c402f9f736c7b166c0b3849abe6d0d1187c7270b99152 WHIRLPOOL ec3818ab59d485a5dbbcd9e4d90b7bfcbfba9cbfdea80ae3d759f50af4c3923e97c3e0b22a93d7211a31449678e0a7b099c463a9d6c2007f5543e3276eba5895
diff --git a/sci-visualization/fig2sxd/fig2sxd-0.21.ebuild b/sci-visualization/fig2sxd/fig2sxd-0.21.ebuild
new file mode 100644
index 00000000000..c3a472c3d83
--- /dev/null
+++ b/sci-visualization/fig2sxd/fig2sxd-0.21.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="Utility to convert files in xfig format to OpenOffice.org Draw format"
+LICENSE="GPL-2"
+PVD=2
+
+HOMEPAGE="http://sourceforge.net/projects/fig2sxd"
+SRC_URI="mirror://sourceforge/${PN}/${PN}_${PV}.orig.tar.gz
+ mirror://sourceforge/${PN}/${PN}_${PV}-${PVD}.diff.gz"
+
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE=""
+
+RDEPEND="sys-libs/zlib"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ epatch "${WORKDIR}"/${PN}_${PV}-${PVD}.diff
+ epatch "${FILESDIR}"/${PN}-0.20-ldflags.patch
+ epatch "${FILESDIR}"/${PN}-0.20-phony-check.patch
+}
+
+src_compile() {
+ emake CXXFLAGS="${CXXFLAGS}" CXX="$(tc-getCXX)"
+}
+
+src_install() {
+ dobin ${PN}
+ doman ${PN}.1
+ dodoc changelog
+}
diff --git a/sci-visualization/fig2sxd/files/fig2sxd-0.20-ldflags.patch b/sci-visualization/fig2sxd/files/fig2sxd-0.20-ldflags.patch
new file mode 100644
index 00000000000..a9bd521d319
--- /dev/null
+++ b/sci-visualization/fig2sxd/files/fig2sxd-0.20-ldflags.patch
@@ -0,0 +1,12 @@
+diff -Naur fig2sxd-0.20/Makefile fig2sxd-0.20.new/Makefile
+--- fig2sxd-0.20/Makefile 2008-05-16 18:47:34.000000000 -0400
++++ fig2sxd-0.20.new/Makefile 2009-08-31 22:14:38.000000000 -0400
+@@ -51,7 +51,7 @@
+ LIBS = -lz
+
+ $(TARGET1): $(OBJECTS1)
+- $(CXX) -o $@ $^ $(LIBS)
++ $(CXX) $(LDFLAGS) $^ $(LIBS) -o $@
+
+ $(OBJECTS1): %.o: $(SRCDIR)%.cpp $(DEPEND)%.dep
+ $(CXX) $(CXXFLAGS) -o $@ -c $<
diff --git a/sci-visualization/fig2sxd/files/fig2sxd-0.20-phony-check.patch b/sci-visualization/fig2sxd/files/fig2sxd-0.20-phony-check.patch
new file mode 100644
index 00000000000..d9e76b8c978
--- /dev/null
+++ b/sci-visualization/fig2sxd/files/fig2sxd-0.20-phony-check.patch
@@ -0,0 +1,9 @@
+diff -Naur fig2sxd-0.20/Makefile fig2sxd-0.20.new/Makefile
+--- fig2sxd-0.20/Makefile 2008-05-16 18:47:34.000000000 -0400
++++ fig2sxd-0.20.new/Makefile 2009-08-31 22:22:07.000000000 -0400
+@@ -75,4 +75,4 @@
+ tar czf `date +"../fig2sxd-%Y-%m-%d-%H-%M.tar.gz"` -C $(SRCDIR)../ \
+ $(ARCHFILES)
+
+-.PHONY: all clean
++.PHONY: all clean check
diff --git a/sci-visualization/fig2sxd/metadata.xml b/sci-visualization/fig2sxd/metadata.xml
new file mode 100644
index 00000000000..95ebf7ed3d7
--- /dev/null
+++ b/sci-visualization/fig2sxd/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <longdescription lang="en">
+ This program converts a file in XFig format into a .sxd file for
+ OpenOffice.org Draw.
+</longdescription>
+ <upstream>
+ <remote-id type="sourceforge">fig2sxd</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sci-visualization/fityk/Manifest b/sci-visualization/fityk/Manifest
new file mode 100644
index 00000000000..d7d43724a98
--- /dev/null
+++ b/sci-visualization/fityk/Manifest
@@ -0,0 +1,2 @@
+DIST fityk-1.2.1.tar.bz2 1216009 SHA256 b98c88649b72fe7bf34507caf09008090bb13d0167cb1f9d0af6cba0fbb51ee0 SHA512 c81797c8609500ae21842d5d8a0557ded98453946826e6a9dde452af8789eb6ed393162eb3414946599762953e27c8849b827fbb9a53f80330fe244c3881a40c WHIRLPOOL bb76d394ce0a182a30ac1e6dceca67cf603b7789a480e0c5aa11b70e30837c19087e01843356fb778e1999e22d77544da0936c64056b32ad37e9ea34f45252cc
+DIST fityk-1.2.9.tar.bz2 1370476 SHA256 615f30296e6e6ed0cad3dfe4fd139b552c25437d6afd371652de4bd12c1a89be SHA512 e6d4846a0690ea5e7b94fc067de48d67d6342ff595844d709af9f3b978bf4bd9d0095ce348716fd0053c5575b4bff5825f8f126a53bf7e11f4e6e8a2cc6ddb1a WHIRLPOOL 5f60429565d8a301bcec11be660df9c8cd69b03a94375de14215e74f56b8a878038bb0b9e81658ad5ac4fecd5ff7d127cb6ba992e19a98a21ad49941d42247a5
diff --git a/sci-visualization/fityk/fityk-1.2.1.ebuild b/sci-visualization/fityk/fityk-1.2.1.ebuild
new file mode 100644
index 00000000000..c1a58ff1a24
--- /dev/null
+++ b/sci-visualization/fityk/fityk-1.2.1.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+WX_GTK_VER="2.9"
+GITHUB_USER="wojdyr"
+PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+
+inherit autotools-utils fdo-mime python-r1 wxwidgets
+
+DESCRIPTION="General-purpose nonlinear curve fitting and data analysis"
+HOMEPAGE="http://fityk.nieto.pl/"
+SRC_URI="http://github.com/downloads/${GITHUB_USER}/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+
+IUSE="gnuplot nlopt readline python static-libs wxwidgets"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+CDEPEND="
+ >=sci-libs/xylib-1
+ >=dev-lang/lua-5.1:0
+ nlopt? ( sci-libs/nlopt )
+ python? ( ${PYTHON_DEPS} )
+ readline? ( sys-libs/readline:0= )
+ wxwidgets? ( >=x11-libs/wxGTK-2.9.2:2.9 )"
+DEPEND="${CDEPEND}
+ dev-libs/boost
+ dev-lang/swig"
+RDEPEND="${CDEPEND}
+ gnuplot? ( sci-visualization/gnuplot )"
+
+src_configure() {
+ local myeconfargs=(
+ --docdir="${EPREFIX}/usr/share/doc/${PF}"
+ --disable-xyconvert
+ --disable-python
+ $(use_enable nlopt)
+ $(use_enable wxwidgets GUI)
+ $(use_with readline)
+ )
+ autotools-utils_src_configure
+ if use python; then
+ myeconfargs=(
+ --disable-xyconvert
+ --enable-python
+ --disable-nlopt
+ --disable-GUI
+ --without-readline )
+ python_foreach_impl autotools-utils_src_configure
+ fi
+}
+
+src_compile() {
+ autotools-utils_src_compile
+ python_copy_sources
+ if use python; then
+ python_compilation() {
+ pushd "${BUILD_DIR}"/fityk
+ einfo "in ${PWD}"
+ emake swig/_fityk.la
+ popd
+ }
+ python_foreach_impl python_compilation
+ fi
+}
+
+src_install() {
+ autotools-utils_src_install
+ if use python; then
+ python_installation() {
+ pushd "${BUILD_DIR}"/fityk
+ emake DESTDIR="${D}" install-pyexecLTLIBRARIES
+ popd
+ }
+ python_foreach_impl python_installation
+ fi
+}
+
+pkg_postinst() {
+ fdo-mime_desktop_database_update
+}
+
+pkg_postrm() {
+ fdo-mime_desktop_database_update
+}
diff --git a/sci-visualization/fityk/fityk-1.2.9.ebuild b/sci-visualization/fityk/fityk-1.2.9.ebuild
new file mode 100644
index 00000000000..3d33e7e75b4
--- /dev/null
+++ b/sci-visualization/fityk/fityk-1.2.9.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+WX_GTK_VER="3.0"
+
+PYTHON_COMPAT=( python2_7 python3_{3,4} )
+
+inherit autotools-utils fdo-mime python-r1 wxwidgets
+
+DESCRIPTION="General-purpose nonlinear curve fitting and data analysis"
+HOMEPAGE="http://fityk.nieto.pl/"
+SRC_URI="https://github.com/wojdyr/${PN}/releases/download/v${PV}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="gnuplot nlopt readline python static-libs wxwidgets"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+CDEPEND="
+ >=sci-libs/xylib-1
+ >=dev-lang/lua-5.1:0
+ nlopt? ( sci-libs/nlopt )
+ python? ( ${PYTHON_DEPS} )
+ readline? ( sys-libs/readline:* )
+ wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER} )"
+DEPEND="${CDEPEND}
+ dev-libs/boost
+ dev-lang/swig"
+RDEPEND="${CDEPEND}
+ gnuplot? ( sci-visualization/gnuplot )"
+
+src_prepare() {
+ use python && python_copy_sources
+ autotools-utils_src_prepare
+}
+
+src_configure() {
+ local myeconfargs=(
+ --docdir="${EPREFIX}/usr/share/doc/${PF}"
+ --disable-xyconvert
+ --disable-python
+ $(use_enable nlopt)
+ $(use_enable wxwidgets GUI)
+ $(use_with readline)
+ )
+ autotools-utils_src_configure
+ if use python; then
+ myeconfargs=(
+ --disable-xyconvert
+ --enable-python
+ --disable-nlopt
+ --disable-GUI
+ --without-readline )
+ python_foreach_impl autotools-utils_src_configure
+ fi
+}
+
+src_compile() {
+ autotools-utils_src_compile
+ if use python; then
+ python_compilation() {
+ cd "${BUILD_DIR}"/fityk || die
+ einfo "in ${PWD}"
+ emake swig/_fityk.la
+ }
+ python_foreach_impl python_compilation
+ fi
+}
+
+src_install() {
+ autotools-utils_src_install
+ if use python; then
+ python_installation() {
+ cd "${BUILD_DIR}"/fityk || die
+ emake DESTDIR="${D}" install-pyexecLTLIBRARIES
+ rm "${D}"/$(python_get_sitedir)/*.la || die
+ }
+ python_foreach_impl python_installation
+ fi
+}
+
+pkg_postinst() {
+ fdo-mime_desktop_database_update
+}
+
+pkg_postrm() {
+ fdo-mime_desktop_database_update
+}
diff --git a/sci-visualization/fityk/metadata.xml b/sci-visualization/fityk/metadata.xml
new file mode 100644
index 00000000000..46f8f9cf5df
--- /dev/null
+++ b/sci-visualization/fityk/metadata.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <longdescription lang="en">
+ Fityk is a program for nonlinear fitting of analytical functions
+ (especially peak-shaped) to data. It can also be used to display
+ data or to remove baseline from data.
+
+ It is reported to be used in crystallography, chromatography,
+ photoluminescence, infrared and Raman spectroscopy and other fields.
+
+ Fityk knows about common peak-shaped functions (Gaussian, Lorentzian,
+ Voigt, Pearson VII, bifurcated Gaussian, EMG, Doniach-Sunjic, etc.) and
+ polynomials. It also supports user-defined functions.
+
+ Fityk offers a graphical interface (and also command line
+ interface), various optimization methods (standard Marquardt
+ least-squares algorithm, Genetic Algorithms, Nelder-Mead simplex),
+ equality constraints, modeling error of x coordinate of points
+ (eg. zero-shift of instrument), handling series of datasets,
+ automation of common tasks with scripts, and more.
+</longdescription>
+ <use>
+ <flag name="nlopt">Enable optimization with <pkg>sci-libs/nlopt</pkg></flag>
+ </use>
+ <upstream>
+ <remote-id type="github">wojdyr/fityk</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sci-visualization/g3data/Manifest b/sci-visualization/g3data/Manifest
new file mode 100644
index 00000000000..24129d4331b
--- /dev/null
+++ b/sci-visualization/g3data/Manifest
@@ -0,0 +1 @@
+DIST g3data-1.5.4.tar.gz 127973 SHA256 ec729322fa8b47dd8f70ecef350ff880faf73e18b693cb5d4b2330f7ebb08b7a SHA512 b4651eb6ba87ddb745c46520ccf2d7146d179e69a614d7c6c247b82eaf188b30e955d60e7df59419f63a304a5c5215829d3bea3cc233d2729ff599c523d852e2 WHIRLPOOL 7736929e7131bf3b2adfef61d750ba4ead8550a59940c6c9bce18d028d036accc1547d6d95098dde6cb2cb283b57d4af608f62a8d3f89947c87e5ed3a94a2fe9
diff --git a/sci-visualization/g3data/files/g3data-1.5.3-makefile.patch b/sci-visualization/g3data/files/g3data-1.5.3-makefile.patch
new file mode 100644
index 00000000000..4f393442a69
--- /dev/null
+++ b/sci-visualization/g3data/files/g3data-1.5.3-makefile.patch
@@ -0,0 +1,44 @@
+--- Makefile.orig 2008-12-14 08:20:17.000000000 +0000
++++ Makefile 2009-02-26 19:26:26.052491697 +0000
+@@ -1,15 +1,13 @@
+-CC=gcc
+-CFLAGS=-Wall `pkg-config --cflags gtk+-2.0`
++MYCFLAGS=-Wall `pkg-config --cflags gtk+-2.0`
+ LIBS=`pkg-config --libs gtk+-2.0`
+ bindir ?= /usr/bin
+ mandir ?= /usr/share/man
+
+ .c.o:
+- $(CC) -c $(CFLAGS) $(CPPFLAGS) $<
++ $(CC) -c $(CFLAGS) $(CPPFLAGS) $(MYCFLAGS) $<
+
+-g3data: main.o sort.o points.o drawing.o g3data.1.gz
+- $(CC) $(CFLAGS) -o g3data main.o sort.o points.o drawing.o $(LIBS)
+- strip g3data
++g3data: main.o sort.o points.o drawing.o
++ $(CC) $(LDFLAGS) -o g3data main.o sort.o points.o drawing.o $(LIBS)
+
+ main.o: main.c main.h strings.h vardefs.h
+
+@@ -19,17 +17,17 @@
+
+ drawing.o: drawing.c main.h
+
+-g3data.1.gz: g3data.sgml
++g3data.1: g3data.sgml
+ rm -f *.1
+ onsgmls g3data.sgml | sgmlspl /usr/share/sgml/docbook/utils-0.6.14/helpers/docbook2man-spec.pl
+- gzip g3data.1
++ mv *.1 g3data.1
+
+ clean:
+- rm -f *.o g3data g3data.1.gz *~ manpage.*
++ rm -f *.o g3data g3data.1 *~ manpage.*
+
+ install:
+ install g3data $(bindir)
+- install g3data.1.gz $(mandir)/man1
++ install g3data.1 $(mandir)/man1
+
+ uninstall:
+ rm $(bindir)/g3data
diff --git a/sci-visualization/g3data/g3data-1.5.4.ebuild b/sci-visualization/g3data/g3data-1.5.4.ebuild
new file mode 100644
index 00000000000..0a9a42db057
--- /dev/null
+++ b/sci-visualization/g3data/g3data-1.5.4.ebuild
@@ -0,0 +1,20 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools-utils eutils
+
+DESCRIPTION="Tool for extracting data from graphs"
+HOMEPAGE="https://github.com/pn2200/g3data"
+SRC_URI="mirror://github/pn2200/g3data/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+RDEPEND="x11-libs/gtk+:2"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
diff --git a/sci-visualization/g3data/metadata.xml b/sci-visualization/g3data/metadata.xml
new file mode 100644
index 00000000000..a6da46e24f5
--- /dev/null
+++ b/sci-visualization/g3data/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <longdescription>
+ g3data is used for extracting data from graphs. In publications graphs are
+ often included, but the actual data is not. g3data makes the extraction
+ process much easier.
+</longdescription>
+ <upstream>
+ <remote-id type="github">pn2200/g3data</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sci-visualization/gcalc/Manifest b/sci-visualization/gcalc/Manifest
new file mode 100644
index 00000000000..3d34003270d
--- /dev/null
+++ b/sci-visualization/gcalc/Manifest
@@ -0,0 +1 @@
+DIST GCalc-3.1-rc1.tar.gz 543699 RMD160 8b5434869afc7cf23d2f3246373e85a6c4efa9e3 SHA1 42614aa974797216a38c58e6d3a840b6208c09dd SHA256 c22f0b2f0d11555d39cd9e6eacf025d84c736d01085d69592098489cba7ac99e
diff --git a/sci-visualization/gcalc/gcalc-3.1_rc1.ebuild b/sci-visualization/gcalc/gcalc-3.1_rc1.ebuild
new file mode 100644
index 00000000000..0ee0c5e512e
--- /dev/null
+++ b/sci-visualization/gcalc/gcalc-3.1_rc1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="4"
+
+inherit eutils java-pkg-2
+
+MY_P="GCalc-${PV/_/-}"
+DESCRIPTION="Java Mathematical Graphing System"
+HOMEPAGE="http://gcalc.net/"
+SRC_URI="http://gcalc.net/files/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+KEYWORDS="~amd64"
+IUSE=""
+SLOT="0"
+
+RDEPEND=">=virtual/jre-1.4
+ !!sci-mathematics/gcalc"
+DEPEND=">=virtual/jdk-1.4"
+
+S="${WORKDIR}/${MY_P}"
+
+java_prepare() {
+ find -name '*.jar' -exec rm -v {} + || die
+}
+
+src_compile() {
+ cd src || die
+ ejavac $(find . -name '*.java')
+
+ jar cf ${PN}.jar resources pluginlist.xml $(find . -name '*.class') || die
+}
+
+src_install() {
+ java-pkg_dojar src/${PN}.jar
+ java-pkg_dolauncher gcalc --main net.gcalc.calc.GCalc
+
+ newicon src/resources/gicon.png ${PN}.png || die
+ make_desktop_entry ${PN} "GCalc Java Mathematical Graphing System"
+}
diff --git a/sci-visualization/gcalc/metadata.xml b/sci-visualization/gcalc/metadata.xml
new file mode 100644
index 00000000000..7c075e6e4ef
--- /dev/null
+++ b/sci-visualization/gcalc/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>java</herd>
+<herd>sci</herd>
+<longdescription lang="en">
+</longdescription>
+</pkgmetadata>
diff --git a/sci-visualization/gfsview/Manifest b/sci-visualization/gfsview/Manifest
new file mode 100644
index 00000000000..65823fa784b
--- /dev/null
+++ b/sci-visualization/gfsview/Manifest
@@ -0,0 +1,2 @@
+DIST gfsview-20111003.tar.gz 703942 SHA256 448e03c730af3a2cca233f17a44bfda46f5400052ea1ed0f3dc863c8050b1122 SHA512 736394fd403e4b089251819e03b6aab31fe13db451e9bb9a9bf7b728dc64461e61323c38a63dae9ed855a5c213dc03fd5875c0332353420bd6ce4edb8a7eea24 WHIRLPOOL b834a7364eabac0bfe12789ff331507b188f9cc0fbbe505b57aea8c99998b7a6898842b427c7b0df60fcd23c776c9854793e37d5d5a436b306a8d882e4be3ec6
+DIST gfsview-snapshot-120706.tar.gz 707640 SHA256 b71fa85344fdf66330869d2d45b15c89e0c07ef420944c6d67975a85cae3c1fd SHA512 89d31a5a10c7ba21a16534b20faf6532c097c84375d09ce9940593b9e569e538db0e5174b9554e0890fb94b2194852b782e235f20dd9d7d609c08d88ac0bffa2 WHIRLPOOL 2cf0d44f820c6f2a2cda5e52faf48517d85d7a73c59623af657473ee7baeeeae57072c4f0dcba4dbbdbeb386dc01ccf3733bc8b148c53bcbc7252a4ba45d1fa3
diff --git a/sci-visualization/gfsview/gfsview-20111003.ebuild b/sci-visualization/gfsview/gfsview-20111003.ebuild
new file mode 100644
index 00000000000..7d3d396ccff
--- /dev/null
+++ b/sci-visualization/gfsview/gfsview-20111003.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+DESCRIPTION="Graphical viewer for Gerris simulation files"
+HOMEPAGE="http://gfs.sourceforge.net/"
+SRC_URI="http://dev.gentoo.org/~bicatali/distfiles/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="static-libs"
+
+RDEPEND=">=sci-libs/gerris-${PV}
+ media-libs/ftgl
+ media-libs/mesa[osmesa]
+ x11-libs/gtk+:2
+ >=x11-libs/gtkglext-1.0.6
+ x11-libs/startup-notification"
+
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+S="${WORKDIR}"/${P/-20/-snapshot-}
+
+src_configure() {
+ econf $(use_enable static-libs static)
+}
diff --git a/sci-visualization/gfsview/gfsview-20120706.ebuild b/sci-visualization/gfsview/gfsview-20120706.ebuild
new file mode 100644
index 00000000000..b848f1b13eb
--- /dev/null
+++ b/sci-visualization/gfsview/gfsview-20120706.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit autotools-utils
+
+MYP=${P/-20/-snapshot-}
+
+DESCRIPTION="Graphical viewer for Gerris simulation files"
+HOMEPAGE="http://gfs.sourceforge.net/"
+SRC_URI="http://gerris.dalembert.upmc.fr/gerris/tarballs/${MYP}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="static-libs"
+
+RDEPEND="sci-libs/gerris
+ media-libs/ftgl
+ media-libs/mesa[osmesa]
+ x11-libs/gtk+:2
+ >=x11-libs/gtkglext-1.0.6
+ x11-libs/startup-notification"
+
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+S="${WORKDIR}/${MYP}"
+
+export LIBS=-lGL
diff --git a/sci-visualization/gfsview/metadata.xml b/sci-visualization/gfsview/metadata.xml
new file mode 100644
index 00000000000..bab5e850a77
--- /dev/null
+++ b/sci-visualization/gfsview/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>sci</herd>
+<longdescription lang='en'>
+ GfsView is a graphical viewer for Gerris simulation files.
+</longdescription>
+</pkgmetadata>
diff --git a/sci-visualization/ggobi/Manifest b/sci-visualization/ggobi/Manifest
new file mode 100644
index 00000000000..ffad2e2e162
--- /dev/null
+++ b/sci-visualization/ggobi/Manifest
@@ -0,0 +1,3 @@
+DIST ggobi-2.1.8.tar.bz2 2531628 SHA256 2f814376d08a783628d2150d64cddda2e86b71f12847f1d51ba977197102fa8f
+DIST ggobi-2.1.9.tar.bz2 2778042 SHA256 9f47ccfdbae7ae22c0096e9a171a523505e031f68dfaf705799cb87d42d73dcc SHA512 cb19a74cea71a3c647b51d5f480c11f99fb1f13d7d5393d5bfa8ac2226cbdff4a133cc304936e50214533802108a876562e3fdd4bb1ced56ffad015d56907f08 WHIRLPOOL 4879f5549c5a70ba9b30866cf86bb3835f7834387ef2915c3ef750e03d6f1e62ef133f5fdba9dfc202c066a1152a4f3104485e40fa784949406cd043c03b2e2c
+DIST ggobi_2.1.10.orig.tar.bz2 2776784 SHA256 08881aacb70a7a80e3778197bb4c673e634aea403fb7f9e282df189764b96aa3 SHA512 40bc4a7fae992bf327d6b36c5aea7802279a3b6229242f31386e771636b4561260914a7fefb6a6337c1e1ab5a0682fbdd626389b83d9b57d0c2d050fac3723e5 WHIRLPOOL ee751f5278937433db76b8c43d032e1dd7d78541848ab7da412a2da2bebb9300bb4689578b1809328368024f5691b3371b579c882ea01f4ee37ae521cb23e76f
diff --git a/sci-visualization/ggobi/files/ggobi-2.1.10-desktop.patch b/sci-visualization/ggobi/files/ggobi-2.1.10-desktop.patch
new file mode 100644
index 00000000000..388cb85c975
--- /dev/null
+++ b/sci-visualization/ggobi/files/ggobi-2.1.10-desktop.patch
@@ -0,0 +1,11 @@
+--- xdg/ggobi.desktop.orig 2013-02-24 22:20:02.616872402 -0800
++++ xdg/ggobi.desktop 2013-02-24 22:20:13.293924862 -0800
+@@ -6,6 +6,6 @@
+ Comment=Multivariate interactive graphics for exploratory data analysis
+ TryExec=ggobi
+ Exec=ggobi
+-Icon=ggobi.png
+-Categories=Graphics;2DGraphics
++Icon=ggobi
++Categories=Graphics;2DGraphics;
+ MimeType=text/comma-separated-values;text/csv;application/csv;
diff --git a/sci-visualization/ggobi/files/ggobi-2.1.10-hardened.patch b/sci-visualization/ggobi/files/ggobi-2.1.10-hardened.patch
new file mode 100644
index 00000000000..63681a0a03e
--- /dev/null
+++ b/sci-visualization/ggobi/files/ggobi-2.1.10-hardened.patch
@@ -0,0 +1,66 @@
+Description: Upstream changes introduced in version 2.1.10-4
+ This patch has been created by dpkg-source during the package build.
+ Here's the last changelog entry, hopefully it gives details on why
+ those changes were made:
+ .
+ ggobi (2.1.10-4) unstable; urgency=low
+ .
+ * src/ggobi.c: Applied patch kindly supplied by Michael Lawrence to
+ address issues found under hardened compiler flags (Closes: #646260)
+ .
+ The person named in the Author field signed this changelog entry.
+Author: Dirk Eddelbuettel <edd@debian.org>
+Bug-Debian: http://bugs.debian.org/646260
+
+---
+The information above should follow the Patch Tagging Guidelines, please
+checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here
+are templates for supplementary fields that you might want to add:
+
+Origin: <vendor|upstream|other>, <url of original patch>
+Bug: <url in upstream bugtracker>
+Bug-Debian: http://bugs.debian.org/<bugnumber>
+Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber>
+Forwarded: <no|not-needed|url proving that it has been forwarded>
+Reviewed-By: <name and email of someone who approved the patch>
+Last-Update: <YYYY-MM-DD>
+
+--- ggobi-2.1.10.orig/src/ggobi.c
++++ ggobi-2.1.10/src/ggobi.c
+@@ -698,10 +698,10 @@ ValidateGGobiRef (ggobid * gg, gboolean
+ }
+
+ if (fatal) {
+- g_error (error_msg);
++ g_error ("%s", error_msg);
+ }
+ else
+- g_critical (error_msg);
++ g_critical ("%s", error_msg);
+
+ return (NULL);
+ }
+@@ -718,9 +718,9 @@ ValidateDatadRef (GGobiData * d, ggobid
+ }
+
+ if (fatal)
+- g_error (error_msg);
++ g_error ("%s", error_msg);
+ else
+- g_critical (error_msg);
++ g_critical ("%s", error_msg);
+
+ return (NULL);
+ }
+@@ -739,9 +739,9 @@ ValidateDisplayRef (displayd * d, ggobid
+ }
+
+ if (fatal)
+- g_error (error_msg);
++ g_error ("%s", error_msg);
+ else
+- g_critical (error_msg);
++ g_critical ("%s", error_msg);
+
+ return (NULL);
+ }
diff --git a/sci-visualization/ggobi/files/ggobi-2.1.8-graphviz.patch b/sci-visualization/ggobi/files/ggobi-2.1.8-graphviz.patch
new file mode 100644
index 00000000000..402551b7e52
--- /dev/null
+++ b/sci-visualization/ggobi/files/ggobi-2.1.8-graphviz.patch
@@ -0,0 +1,13 @@
+--- plugins/GraphLayout/graphviz.c 2009-03-15 15:03:18.000000000 -0400
++++ plugins/GraphLayout/graphviz.c 2009-03-15 15:04:30.000000000 -0400
+@@ -267,8 +267,8 @@
+ m = visible[i];
+ name = (gchar *) g_array_index (d->rowlab, gchar *, m);
+ node = agfindnode (graph, name);
+- pos[i][0] = (gdouble) ND_coord_i(node).x;
+- pos[i][1] = (gdouble) ND_coord_i(node).y;
++ pos[i][0] = (gdouble) ND_coord(node).x;
++ pos[i][1] = (gdouble) ND_coord(node).y;
+ }
+
+ } else if (layout_type == TWOPI_LAYOUT) {
diff --git a/sci-visualization/ggobi/files/ggobi-2.1.8-plugindir.patch b/sci-visualization/ggobi/files/ggobi-2.1.8-plugindir.patch
new file mode 100644
index 00000000000..0476f47a816
--- /dev/null
+++ b/sci-visualization/ggobi/files/ggobi-2.1.8-plugindir.patch
@@ -0,0 +1,11 @@
+--- plugins/Makefile.plugin.orig 2009-12-14 22:15:01.000000000 +0000
++++ plugins/Makefile.plugin 2009-12-14 22:15:16.000000000 +0000
+@@ -2,7 +2,7 @@
+
+ # Every plugin provides a single library to GGobi, define it here.
+ # Its name should start with 'lib' and end with '.la'.
+-plugindir = $(datadir)/ggobi/plugins/$(PACKAGE_NAME)
++plugindir = $(libdir)/ggobi/plugins/$(PACKAGE_NAME)
+ plugin_LTLIBRARIES = plugin.la
+
+ # Most plugins will only require GGobi and its dependencies (gtk, libxml2)
diff --git a/sci-visualization/ggobi/files/ggobi-2.1.8-syslibltdl.patch b/sci-visualization/ggobi/files/ggobi-2.1.8-syslibltdl.patch
new file mode 100644
index 00000000000..c381a98445c
--- /dev/null
+++ b/sci-visualization/ggobi/files/ggobi-2.1.8-syslibltdl.patch
@@ -0,0 +1,26 @@
+--- ./Makefile.am.orig 2009-12-14 20:56:57.000000000 +0000
++++ ./Makefile.am 2009-12-14 20:57:24.000000000 +0000
+@@ -1,4 +1,4 @@
+-SUBDIRS = libltdl src plugins po
++SUBDIRS = src plugins po
+
+ EXTRA_DIST = bootstrap CPLicense.txt
+
+--- ./configure.ac.orig 2009-12-14 20:56:49.000000000 +0000
++++ ./configure.ac 2009-12-14 21:00:11.000000000 +0000
+@@ -144,14 +144,12 @@
+ # and to support DLLs on Windows. Also build libltdl for loading plugins.
+ AC_DISABLE_STATIC
+ AC_LIBTOOL_WIN32_DLL
+-AC_LIBLTDL_CONVENIENCE
+-AC_LIBTOOL_DLOPEN
+ AC_PROG_LIBTOOL
+
+ # Configure libltdl build
++AC_WITH_LTDL
+ AC_SUBST(INCLTDL)
+ AC_SUBST(LIBLTDL)
+-AC_CONFIG_SUBDIRS(libltdl)
+
+ # Configure for building against local libintl
+ AC_SUBST(INCINTL)
diff --git a/sci-visualization/ggobi/files/ggobi-2.1.9-as-needed.patch b/sci-visualization/ggobi/files/ggobi-2.1.9-as-needed.patch
new file mode 100644
index 00000000000..3bec9b55c21
--- /dev/null
+++ b/sci-visualization/ggobi/files/ggobi-2.1.9-as-needed.patch
@@ -0,0 +1,40 @@
+--- configure.ac.orig 2012-06-26 05:46:07.000000000 +0100
++++ configure.ac 2012-06-26 05:46:44.000000000 +0100
+@@ -178,6 +178,8 @@
+ echo "Looking for gtk2"
+
+ PKG_CHECK_MODULES(GTK, [gtk+-2.0 >= 2.6.0])
++AC_CHECK_LIB(m,sqrt)
++PKG_CHECK_MODULES(GMODULE, [gmodule-2.0 >= 2.0])
+
+ AC_SUBST(GTK_CFLAGS)
+ AC_SUBST(GTK_LIBS)
+
+--- src/Makefile.am.orig 2012-06-26 04:53:20.000000000 +0100
++++ src/Makefile.am 2012-06-26 04:54:04.000000000 +0100
+@@ -4,7 +4,6 @@
+ libggobi_la_GOBHEADERS = $(libggobi_la_GOBS:%.gob=ggobi-%.h)
+ libggobi_la_GOBOBJECTS = $(libggobi_la_GOBS:%.gob=ggobi-%.lo)
+ libggobi_la_GOBSTAMPS = $(libggobi_la_GOBS:%.gob=.%.gob.stamp)
+-libggobi_la_LDFLAGS = @GTK_LIBS@ @LIBXML_LIBS@
+ libggobi_la_BUILT = array.c ash1d.c barchart.c barchartClass.c \
+ barchart_ui.c brush.c brush_api.c brush_bins.c brush_init.c brush_link.c \
+ brush_ui.c color.c color_ui.c cpanel.c display.c display_tree.c display_ui.c \
+@@ -27,7 +26,7 @@
+ write_csv.c write_xml.c wvis.c wvis_ui.c xlines.c xyplot.c \
+ xyplot_ui.c $(libggobi_la_GOBSOURCES)
+ libggobi_la_SOURCES = $(libggobi_la_BUILT) $(libggobi_la_GOBSTAMPS)
+-libggobi_la_LIBADD = $(libggobi_la_GOBOBJECTS)
++libggobi_la_LIBADD = $(libggobi_la_GOBOBJECTS) @GTK_LIBS@ @LIBXML_LIBS@ @GMODULE_LIBS@
+ libggobi_la_DEPENDENCIES = $(libggobi_la_GOBOBJECTS)
+ pkginclude_HEADERS = GGobiAPI.h ggobiClass.h tour1d_pp.h GGobiApp.h \
+ noop-toggle.h tour2d_pp.h GGobiEvents.h parcoordsClass.h tour_pp.h \
+@@ -59,7 +58,7 @@
+ # Windows specific
+ if OS_WIN32
+ libggobi_la_DEPENDENCIES+=libggobi.def
+-libggobi_la_LDFLAGS+=-Wc,-s -no-undefined -export-symbols libggobi.def
++libggobi_la_LDFLAGS=-Wc,-s -no-undefined -export-symbols libggobi.def
+ ggobi_LDFLAGS = -mwindows -s
+ endif
+
diff --git a/sci-visualization/ggobi/ggobi-2.1.10.ebuild b/sci-visualization/ggobi/ggobi-2.1.10.ebuild
new file mode 100644
index 00000000000..51c1a52bb7f
--- /dev/null
+++ b/sci-visualization/ggobi/ggobi-2.1.10.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils autotools
+
+DESCRIPTION="Visualization program for exploring high-dimensional data"
+HOMEPAGE="http://www.ggobi.org/"
+# source code release is not well published
+#SRC_URI="http://www.ggobi.org/downloads/${P}.tar.bz2"
+SRC_URI="mirror://debian/pool/main/g/${PN}/${PN}_${PV}.orig.tar.bz2"
+
+LICENSE="CPL-1.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="doc minimal nls"
+
+RDEPEND="
+ dev-libs/libxml2:2
+ media-gfx/graphviz
+ x11-libs/gtk+:2"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_prepare() {
+ sed -i \
+ -e 's|ND_coord_i|ND_coord|' \
+ plugins/GraphLayout/graphviz.c || die
+ rm m4/libtool.m4 m4/lt*m4 plugins/*/aclocal.m4 || die
+ epatch \
+ "${FILESDIR}"/${PN}-2.1.8-plugindir.patch \
+ "${FILESDIR}"/${PN}-2.1.9-as-needed.patch \
+ "${FILESDIR}"/${PN}-2.1.10-hardened.patch \
+ "${FILESDIR}"/${PN}-2.1.10-desktop.patch
+ # need the ${S} for recursivity lookup
+ AT_M4DIR="${S}"/m4 eautoreconf
+}
+
+src_configure() {
+ econf \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ --disable-rpath \
+ $(use_enable nls) \
+ $(use_with !minimal all-plugins)
+}
+
+src_compile() {
+ emake all ggobirc
+}
+
+src_install() {
+ default
+ insinto /etc/xdg/ggobi
+ doins ggobirc
+ use doc || rm "${ED}"/usr/share/doc/${PF}/*.pdf
+}
diff --git a/sci-visualization/ggobi/ggobi-2.1.8.ebuild b/sci-visualization/ggobi/ggobi-2.1.8.ebuild
new file mode 100644
index 00000000000..6ea20c2f9d4
--- /dev/null
+++ b/sci-visualization/ggobi/ggobi-2.1.8.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=2
+inherit eutils autotools
+
+DESCRIPTION="Visualization program for exploring high-dimensional data"
+HOMEPAGE="http://www.ggobi.org"
+SRC_URI="http://www.ggobi.org/downloads/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="minimal nls"
+
+RDEPEND="
+ >=media-gfx/graphviz-2.6
+ x11-libs/gtk+:2
+ dev-libs/libxml2:2"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_prepare() {
+ # build with external system libltdl
+ rm -rf libltdl
+
+ has_version ">=media-gfx/graphviz-2.22" && \
+ epatch "${FILESDIR}"/${P}-graphviz.patch
+ epatch "${FILESDIR}"/${P}-syslibltdl.patch
+ epatch "${FILESDIR}"/${P}-plugindir.patch
+ for f in $(find "${S}" -name "configure.ac"); do
+ sed -i -e '/AM_INIT/ a\AM_MAINTAINER_MODE' $f || die #342747
+ done
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --disable-maintainer-mode \
+ --disable-rpath \
+ $(use_enable nls) \
+ $(use_with !minimal all-plugins)
+}
+
+src_compile() {
+ emake || die "emake failed"
+ # generate default configuration
+ emake ggobirc || die "ggobi configuration generation failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+ dodoc README AUTHORS NEWS ChangeLog
+ insinto /etc/xdg/ggobi
+ doins ggobirc || die
+}
diff --git a/sci-visualization/ggobi/ggobi-2.1.9-r1.ebuild b/sci-visualization/ggobi/ggobi-2.1.9-r1.ebuild
new file mode 100644
index 00000000000..7de4154b835
--- /dev/null
+++ b/sci-visualization/ggobi/ggobi-2.1.9-r1.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit eutils autotools
+
+DESCRIPTION="Visualization program for exploring high-dimensional data"
+HOMEPAGE="http://www.ggobi.org/"
+SRC_URI="http://www.ggobi.org/downloads/${P}.tar.bz2"
+
+LICENSE="CPL-1.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="doc minimal nls"
+
+RDEPEND="media-gfx/graphviz
+ x11-libs/gtk+:2
+ dev-libs/libxml2:2"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_prepare() {
+ sed -i \
+ -e 's|ND_coord_i|ND_coord|' \
+ plugins/GraphLayout/graphviz.c || die
+ rm -f m4/libool.m4 m4/lt*m4
+ epatch \
+ "${FILESDIR}"/${PN}-2.1.8-plugindir.patch \
+ "${FILESDIR}"/${PN}-2.1.9-as-needed.patch
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --docdir="${EPREFIX}/usr/share/doc/${PF}" \
+ --disable-rpath \
+ $(use_enable nls) \
+ $(use_with !minimal all-plugins)
+}
+
+src_compile() {
+ emake all ggobirc
+}
+
+src_install() {
+ default
+ insinto /etc/xdg/ggobi
+ doins ggobirc
+ use doc || rm "${ED}"/usr/share/doc/${PF}/*.pdf
+}
diff --git a/sci-visualization/ggobi/metadata.xml b/sci-visualization/ggobi/metadata.xml
new file mode 100644
index 00000000000..0c302c1e014
--- /dev/null
+++ b/sci-visualization/ggobi/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>sci</herd>
+<longdescription lang="en">
+ GGobi is an open source visualization program for exploring
+ high-dimensional data. It provides highly dynamic and interactive
+ graphics such as tours, as well as familiar graphics such as the
+ scatterplot, barchart and parallel coordinates plots. Plots are
+ interactive and linked with brushing and identification.
+</longdescription>
+</pkgmetadata>
diff --git a/sci-visualization/gle/Manifest b/sci-visualization/gle/Manifest
new file mode 100644
index 00000000000..0db3aaca70a
--- /dev/null
+++ b/sci-visualization/gle/Manifest
@@ -0,0 +1,4 @@
+DIST GLEusersguide.pdf 2244780 SHA256 02c13fe038f8b4b7726ac3e6a74410e299f50cdccb2b040d7ed1fbc99b9cfbef
+DIST gle-graphics-4.2.4bf-src.tar.gz 2321414 SHA256 daa6881840b25bcce40fd12c0215ed13b4dfa4a91b3eb665123c890d7238747d SHA512 b7f42cdb09b0d52056997779284c9f02f0bb3049d9aaf2058fe08306568fc963ce845faa4773a16d2a84d937ecbd55f682ea9f6f553fde87d3f1d0d2891207d2 WHIRLPOOL 08d97c82b8b7078113d045f5d363fc6dacf5d78bd64d11d34c42ed19bfe9eb2da283932bc9fe1f8ee6091d4221712b725d06f2797c7d0b1e670c650fc91afa33
+DIST gle-graphics-4.2.4cf-src.tar.gz 2321647 SHA256 21715f2943ca528ec94a8e129175693afc3b59bb03f92540a2150ffe72ab47ef SHA512 961205fcb763ef0fd0b59cfffd144440ea7dea8a54a19e79caa97712245a51ceaaeda5b92ce2571852cec14357af696861bf9cd588aa08622cc8f1f5ebf3959a WHIRLPOOL 11465d836e8763fdc286f38ea9761d806174469b0c52e2f3ce3dacbbb1b5d587f1bf0aade3668b38c2b99668066e372782561ed4b1a2dbaf689095c149a8fcbe
+DIST gle-manual-4.2.2.pdf 2238766 SHA256 fbc4ba2613882d2d4ae3f8484c77aa27a257fc1b0ec02a46085c3651a2ace58e
diff --git a/sci-visualization/gle/files/64gle-gentoo.el b/sci-visualization/gle/files/64gle-gentoo.el
new file mode 100644
index 00000000000..841503ba6ee
--- /dev/null
+++ b/sci-visualization/gle/files/64gle-gentoo.el
@@ -0,0 +1,6 @@
+
+;;; gle site-lisp configuration
+
+(add-to-list 'load-path "@SITELISP@")
+(autoload 'gle-mode "gle-mode")
+(add-to-list 'auto-mode-alist '("\\.gle\\'" . gle-mode))
diff --git a/sci-visualization/gle/files/gle-4.2.4b-gcc-4.7.patch b/sci-visualization/gle/files/gle-4.2.4b-gcc-4.7.patch
new file mode 100644
index 00000000000..1a0c3a4f42c
--- /dev/null
+++ b/sci-visualization/gle/files/gle-4.2.4b-gcc-4.7.patch
@@ -0,0 +1,62 @@
+ src/gle/gle-interface/gle-base.h | 4 ++--
+ src/gle/tokens/RefCount.h | 2 +-
+ src/gle/tokens/StringKeyHash.h | 4 ++--
+ 3 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/src/gle/gle-interface/gle-base.h b/src/gle/gle-interface/gle-base.h
+index 26ce8f3..686c2df 100644
+--- a/src/gle/gle-interface/gle-base.h
++++ b/src/gle/gle-interface/gle-base.h
+@@ -130,7 +130,7 @@ inline GLERefCountObject* GLE_SET_RC(GLERefCountObject* rc, GLERefCountObject* v
+
+ template <class T> class GLERCVector : public vector< GLERC<T> > {
+ public:
+- inline void add(T* elem) { push_back(GLERC<T>(elem)); }
++ inline void add(T* elem) { this->push_back(GLERC<T>(elem)); }
+ inline T* get(int i) { return (*this)[i].get(); }
+ };
+
+@@ -147,7 +147,7 @@ public:
+ }
+ void deleteAll() {
+ for (typename vector<T*>::size_type i = 0; i < vector<T*>::size(); i++) {
+- T* elem = at(i);
++ T* elem = this->at(i);
+ if (elem != NULL) delete elem;
+ }
+ }
+diff --git a/src/gle/tokens/RefCount.h b/src/gle/tokens/RefCount.h
+index eef1824..d43540b 100644
+--- a/src/gle/tokens/RefCount.h
++++ b/src/gle/tokens/RefCount.h
+@@ -125,7 +125,7 @@ public:
+ template <class T> class MutableRefCountPtr : public RefCountPtr<T> {
+ public:
+ inline RefCountPtr<T>& operator =(RefCountPtr<T> src) {
+- setPtr(src.get()); return *this;
++ this->setPtr(src.get()); return *this;
+ };
+ };
+
+diff --git a/src/gle/tokens/StringKeyHash.h b/src/gle/tokens/StringKeyHash.h
+index 7db46c3..0966676 100644
+--- a/src/gle/tokens/StringKeyHash.h
++++ b/src/gle/tokens/StringKeyHash.h
+@@ -254,7 +254,7 @@ public:
+ return i->second;
+ } else {
+ ElemType nelem(key);
+- insert(StringKeyPair<ElemType>(key, nelem));
++ this->insert(StringKeyPair<ElemType>(key, nelem));
+ return nelem;
+ }
+ }
+@@ -309,7 +309,7 @@ public:
+ }
+
+ void add_item(int key, ElemType elem) {
+- insert(IntKeyPair<ElemType>(key, elem));
++ this->insert(IntKeyPair<ElemType>(key, elem));
+ }
+ };
+
diff --git a/sci-visualization/gle/files/gle-4.2.4b-parallel.patch b/sci-visualization/gle/files/gle-4.2.4b-parallel.patch
new file mode 100644
index 00000000000..1eff8c06710
--- /dev/null
+++ b/sci-visualization/gle/files/gle-4.2.4b-parallel.patch
@@ -0,0 +1,21 @@
+--- src/gui/MakefileAC.in.orig 2010-01-06 20:10:04.000000000 +0000
++++ src/gui/MakefileAC.in 2010-01-06 20:21:15.000000000 +0000
+@@ -84,14 +84,14 @@
+ qmake:
+ $(QMAKE_PROG) $(QMAKE_OPTS)
+
+-domake:
+- $(MAKE_PROG)
++domake: Makefile
++ $(MAKE)
+
+-repmake:
++repmake: Makefile
+ perl ../../platform/autopackage/qt-replace.pl Makefile
+
+ doclean:
+- -$(MAKE_PROG) clean
++ -$(MAKE) clean
+ -@$(RM) qgle install_qgle_name_mac Makefile
+ -@$(RMDIR) moc
+ -@$(RMDIR) objects
diff --git a/sci-visualization/gle/gle-4.2.4b.ebuild b/sci-visualization/gle/gle-4.2.4b.ebuild
new file mode 100644
index 00000000000..fa8f401df84
--- /dev/null
+++ b/sci-visualization/gle/gle-4.2.4b.ebuild
@@ -0,0 +1,109 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit eutils elisp-common qt4-r2 flag-o-matic autotools
+
+DESCRIPTION="Graphics Layout Engine"
+HOMEPAGE="http://glx.sourceforge.net/"
+MY_P=${PN}-graphics-${PV}
+MAN_V=4.2.2
+SRC_URI="mirror://sourceforge/glx/${MY_P}f-src.tar.gz
+ doc? ( mirror://sourceforge/glx/${PN}-manual-${MAN_V}.pdf
+ mirror://sourceforge/glx/GLEusersguide.pdf )"
+SLOT="0"
+LICENSE="BSD-2 emacs? ( GPL-2 ) qt4? ( GPL-2 )"
+IUSE="X qt4 jpeg png tiff doc emacs vim-syntax"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="sys-libs/ncurses
+ X? ( x11-libs/libX11 )
+ qt4? ( dev-qt/qtopengl:4 )
+ jpeg? ( virtual/jpeg )
+ png? ( media-libs/libpng )
+ tiff? ( media-libs/tiff )
+ emacs? ( virtual/emacs )"
+
+RDEPEND="${DEPEND}
+ app-text/ghostscript-gpl
+ virtual/latex-base
+ vim-syntax? ( || ( app-editors/vim app-editors/gvim ) )"
+
+S="${WORKDIR}"/${MY_P}
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-parallel.patch \
+ "${FILESDIR}"/${P}-gcc-4.7.patch
+ eaclocal
+ eautoconf
+}
+
+src_configure() {
+ # CPPFLAGS are understood as C++ flags
+ append-cppflags ${CXXFLAGS}
+ econf \
+ --without-rpath \
+ --with-manip \
+ $(use_with qt4 qt /usr) \
+ $(use_with X x) \
+ $(use_with jpeg) \
+ $(use_with png) \
+ $(use_with tiff)
+}
+
+src_compile() {
+ emake
+ if use emacs; then
+ cd contrib/editors/highlighting
+ mv ${PN}-emacs.el ${PN}-mode.el
+ elisp-compile ${PN}-mode.el || die
+ fi
+}
+
+src_install() {
+ # -jN failed to install some data files
+ emake -j1 DESTDIR="${D}" install
+ rmdir "${D}"/usr/share/doc/gle-graphics || die "rmdir gle-graphics failed"
+ dodoc README.txt
+
+ if use qt4; then
+ newicon src/gui/images/gle_icon.png gle.png
+ make_desktop_entry qgle GLE gle
+ newdoc src/gui/readme.txt gui_readme.txt
+ fi
+
+ if use doc; then
+ insinto /usr/share/doc/${PF}
+ doins "${DISTDIR}"/${PN}-manual-${MAN_V}.pdf \
+ "${DISTDIR}"/GLEusersguide.pdf
+ fi
+
+ if use emacs; then
+ elisp-install ${PN} contrib/editors/highlighting/gle-mode.{el,elc} || die
+ elisp-site-file-install "${FILESDIR}"/64gle-gentoo.el || die
+ fi
+
+ if use vim-syntax ; then
+ dodir /usr/share/vim/vimfiles/ftplugins \
+ /usr/share/vim/vimfiles/indent \
+ /usr/share/vim/vimfiles/syntax
+ cd contrib/editors/highlighting/vim
+ chmod 644 ftplugin/* indent/* syntax/*
+ insinto /usr/share/vim/vimfiles/ftplugins
+ doins ftplugin/*
+ insinto /usr/share/vim/vimfiles/indent
+ doins indent/*
+ insinto /usr/share/vim/vimfiles/syntax
+ doins syntax/*
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/sci-visualization/gle/gle-4.2.4c.ebuild b/sci-visualization/gle/gle-4.2.4c.ebuild
new file mode 100644
index 00000000000..05d4cff3688
--- /dev/null
+++ b/sci-visualization/gle/gle-4.2.4c.ebuild
@@ -0,0 +1,102 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils elisp-common qt4-r2 flag-o-matic autotools
+
+DESCRIPTION="Graphics Layout Engine"
+HOMEPAGE="http://glx.sourceforge.net/"
+MY_P=${PN}-graphics-${PV}
+MAN_V=4.2.2
+SRC_URI="mirror://sourceforge/glx/${MY_P}f-src.tar.gz
+ doc? ( mirror://sourceforge/glx/${PN}-manual-${MAN_V}.pdf
+ mirror://sourceforge/glx/GLEusersguide.pdf )"
+SLOT="0"
+LICENSE="BSD-2 emacs? ( GPL-2 ) qt4? ( GPL-2 )"
+IUSE="X qt4 jpeg png tiff doc emacs vim-syntax"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+
+DEPEND="
+ sys-libs/ncurses
+ X? ( x11-libs/libX11 )
+ qt4? ( dev-qt/qtopengl:4 )
+ jpeg? ( virtual/jpeg )
+ png? ( media-libs/libpng )
+ tiff? ( media-libs/tiff )
+ emacs? ( virtual/emacs )"
+
+RDEPEND="${DEPEND}
+ app-text/ghostscript-gpl
+ virtual/latex-base
+ vim-syntax? ( || ( app-editors/vim app-editors/gvim ) )"
+
+S="${WORKDIR}"/${MY_P}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-4.2.4b-parallel.patch
+ eaclocal
+ eautoconf
+}
+
+src_configure() {
+ # CPPFLAGS are understood as C++ flags
+ append-cppflags ${CXXFLAGS}
+ econf \
+ --without-rpath \
+ --with-manip \
+ $(use_with qt4 qt "${EPREFIX}"/usr) \
+ $(use_with X x) \
+ $(use_with jpeg) \
+ $(use_with png) \
+ $(use_with tiff)
+}
+
+src_compile() {
+ emake
+ if use emacs; then
+ cd contrib/editors/highlighting
+ mv ${PN}-emacs.el ${PN}-mode.el
+ elisp-compile ${PN}-mode.el || die
+ fi
+}
+
+src_install() {
+ # -jN failed to install some data files
+ emake -j1 DESTDIR="${D}" install
+ rmdir "${ED}"/usr/share/doc/gle-graphics || die "rmdir gle-graphics failed"
+ dodoc README.txt
+
+ if use qt4; then
+ newicon src/gui/images/gle_icon.png gle.png
+ make_desktop_entry qgle GLE gle
+ newdoc src/gui/readme.txt gui_readme.txt
+ fi
+
+ if use doc; then
+ insinto /usr/share/doc/${PF}
+ doins "${DISTDIR}"/${PN}-manual-${MAN_V}.pdf \
+ "${DISTDIR}"/GLEusersguide.pdf
+ fi
+
+ if use emacs; then
+ elisp-install ${PN} contrib/editors/highlighting/gle-mode.{el,elc} || die
+ elisp-site-file-install "${FILESDIR}"/64gle-gentoo.el || die
+ fi
+
+ if use vim-syntax ; then
+ dodir /usr/share/vim/vimfiles/{ftplugins,indent,syntax}
+ cd contrib/editors/highlighting/vim || die
+ chmod 644 ftplugin/* indent/* syntax/*
+ insinto /usr/share/vim/vimfiles
+ doins -r ftplugin indent syntax
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/sci-visualization/gle/metadata.xml b/sci-visualization/gle/metadata.xml
new file mode 100644
index 00000000000..c4293022a18
--- /dev/null
+++ b/sci-visualization/gle/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <maintainer>
+ <email>grozin@gentoo.org</email>
+ <name>Andrey Grozin</name>
+ </maintainer>
+ <longdescription>
+ GLE (Graphics Layout Engine) is a high-quality graphics package for
+ scientists, combining a user-friendly scripting language with a full
+ range of facilities for producing publication-quality graphs,
+ diagrams, posters and slides.
+</longdescription>
+ <upstream>
+ <remote-id type="sourceforge">glx</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sci-visualization/gnuplot/Manifest b/sci-visualization/gnuplot/Manifest
new file mode 100644
index 00000000000..d8bfd2ad1d1
--- /dev/null
+++ b/sci-visualization/gnuplot/Manifest
@@ -0,0 +1,3 @@
+DIST gnuplot-4.6.5.tar.gz 5035657 SHA256 e550f030c7d04570e89c3d4e3f6e82296816508419c86ab46c4dd73156519a2d SHA512 5a9c55d664105242aaf6356e707094a7dd5a80ba8d836bc7b3ce8836bcf5d2a57174d38220ea9efc58fa04f3c5f7d680ca5023482cff1a62b93549ff0530c47d WHIRLPOOL 9b3bc60668af708359c66f01d3780ee1547a03d8842af7010505c98ec3f870df846d167f557157e2ec6f85bf55cc03be02dc3514f533a3adaf9edc7fca61037b
+DIST gnuplot-5.0.1.tar.gz 4963747 SHA256 7cbc557e71df581ea520123fb439dea5f073adcc9010a2885dc80d4ed28b3c47 SHA512 f68ccef8ecad0d5f7c2eb5dc2c97ba14abba6e3324c36bb9ede5f87eef613942376a26e42e55fa8e9c908e2b732aa0b9f34d6d5c386e3d5cf9685bbca60fa094 WHIRLPOOL 7c1d7ec4e999d5d78fadc67cee1186988dbb1cd53feef19094554aa215a19ee6b136d7b65e692cba42bfdb19a06f036fc3fbe1b78cb55f9d0f1b8a740341d15c
+DIST gnuplot.info-4.6.2.tar.xz 182168 SHA256 73307153e8f525cce04d8c2c09ef28e422f21cd216d019f7aef8dbe71b6cc1bd SHA512 805e11933addefde41a15287e96bff9f4e307bbffbabe4bf1a9c49663a688702d9e738750d4ca6db475c9c09c0b6a14589b7e18392161610709e8864c626d4ff WHIRLPOOL bc16e1b6a798e214516aba413b3843045b0489038943dec6511722fed1eba772ba1067a8cdcada216afa903de5744c0722fa9f856a74d8f8e68fa27016704e53
diff --git a/sci-visualization/gnuplot/files/gnuplot-4.6.2-gdversion.patch b/sci-visualization/gnuplot/files/gnuplot-4.6.2-gdversion.patch
new file mode 100644
index 00000000000..a10e1cc8104
--- /dev/null
+++ b/sci-visualization/gnuplot/files/gnuplot-4.6.2-gdversion.patch
@@ -0,0 +1,21 @@
+Gnuplot supports using fontconfig in gd terminals. There was a bug in
+gd-2.0.35 that prevented this from working; therefore the mechanism
+was disabled by testing the GD version. Gentoo has backported the fix
+to media-libs/gd-2.0.35-r3 so our test can be different.
+
+Patch by Bernardo Costa <bernardofpc@gmail.com>.
+Gentoo specific, not to be submitted upstream.
+https://bugs.gentoo.org/462996
+https://bugs.gentoo.org/363367
+
+--- gnuplot-4.6.2-orig/term/gd.trm
++++ gnuplot-4.6.2/term/gd.trm
+@@ -149,7 +149,7 @@
+ /* Before version 2.0.36, the libgd function gdFTUseFontConfig() didn't */
+ /* do what we need. Test for earlier versions and ignore it. */
+ #ifdef GD_MAJOR_VERSION
+-# if (GD_MINOR_VERSION > 0 || GD_RELEASE_VERSION > 35)
++# if (GD_MINOR_VERSION > 0 || GD_RELEASE_VERSION >= 35)
+ # define gdUseFontConfig(x) gdFTUseFontConfig(x)
+ # endif
+ #endif
diff --git a/sci-visualization/gnuplot/files/gnuplot-4.6.3-eldoc.patch b/sci-visualization/gnuplot/files/gnuplot-4.6.3-eldoc.patch
new file mode 100644
index 00000000000..ad8395efda8
--- /dev/null
+++ b/sci-visualization/gnuplot/files/gnuplot-4.6.3-eldoc.patch
@@ -0,0 +1,16 @@
+https://bugs.gentoo.org/459172
+
+--- gnuplot-4.6.3-orig/docs/Makefile.in
++++ gnuplot-4.6.3/docs/Makefile.in
+@@ -398,9 +398,9 @@
+ @if test "$(EMACS)" != no; then \
+ test "$(top_srcdir)" = "$(top_builddir)" || echo "COPYING GNUPLOT.DOC" ; \
+ test "$(top_srcdir)" = "$(top_builddir)" || cp $(srcdir)/gnuplot.doc . ; \
+- $(EMACS) -batch -l $(srcdir)/doc2texi.el -f d2t-doc-to-texi ; \
++ $(EMACS) -batch -q -no-site-file -l $(srcdir)/doc2texi.el -f d2t-doc-to-texi ; \
+ echo "Compiling gnuplot-eldoc.el" ; \
+- $(EMACS) -batch --eval='(byte-compile-file "gnuplot-eldoc.el")' ; \
++ $(EMACS) -batch -q -no-site-file -f batch-byte-compile gnuplot-eldoc.el ; \
+ else \
+ echo "No emacs found - cannot create texinfo file" ; \
+ fi
diff --git a/sci-visualization/gnuplot/gnuplot-4.6.5.ebuild b/sci-visualization/gnuplot/gnuplot-4.6.5.ebuild
new file mode 100644
index 00000000000..bfaa171e314
--- /dev/null
+++ b/sci-visualization/gnuplot/gnuplot-4.6.5.ebuild
@@ -0,0 +1,200 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils flag-o-matic multilib readme.gentoo toolchain-funcs wxwidgets
+
+DESCRIPTION="Command-line driven interactive plotting program"
+HOMEPAGE="http://www.gnuplot.info/"
+
+if [[ -z ${PV%%*9999} ]]; then
+ inherit autotools cvs
+ ECVS_SERVER="gnuplot.cvs.sourceforge.net:/cvsroot/gnuplot"
+ ECVS_MODULE="gnuplot"
+ ECVS_BRANCH="branch-4-6-stable"
+ ECVS_USER="anonymous"
+ ECVS_CVS_OPTIONS="-dP"
+ MY_P="${PN}"
+ SRC_URI=""
+else
+ MY_P="${P/_/.}"
+ SRC_URI="mirror://sourceforge/gnuplot/${MY_P}.tar.gz
+ mirror://gentoo/${PN}.info-4.6.2.tar.xz"
+fi
+
+LICENSE="gnuplot bitmap? ( free-noncomm )"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 ~s390 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="aqua bitmap cairo doc examples +gd ggi latex lua plotutils qt4 readline svga thin-splines wxwidgets X"
+
+RDEPEND="
+ cairo? (
+ x11-libs/cairo
+ x11-libs/pango )
+ gd? ( >=media-libs/gd-2.0.35-r3[png] )
+ ggi? ( media-libs/libggi )
+ latex? (
+ virtual/latex-base
+ lua? (
+ dev-tex/pgf
+ >=dev-texlive/texlive-latexrecommended-2008-r2 ) )
+ lua? ( dev-lang/lua )
+ plotutils? ( media-libs/plotutils )
+ qt4? ( >=dev-qt/qtcore-4.5:4
+ >=dev-qt/qtgui-4.5:4
+ >=dev-qt/qtsvg-4.5:4 )
+ readline? ( sys-libs/readline )
+ svga? ( media-libs/svgalib )
+ wxwidgets? (
+ x11-libs/wxGTK:2.8[X]
+ x11-libs/cairo
+ x11-libs/pango
+ x11-libs/gtk+:2 )
+ X? ( x11-libs/libXaw )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ doc? (
+ virtual/latex-base
+ dev-texlive/texlive-latexextra
+ app-text/ghostscript-gpl )"
+
+S="${WORKDIR}/${MY_P}"
+
+GP_VERSION="${PV%.*}"
+E_SITEFILE="lisp/50${PN}-gentoo.el"
+TEXMF="${EPREFIX}/usr/share/texmf-site"
+
+src_prepare() {
+ if [[ -n ${PV%%*9999} ]]; then
+ epatch "${FILESDIR}/${PN}-4.6.2-gdversion.patch" #462996
+ mv "${WORKDIR}"/gnuplot-4.6.2/docs/gnuplot.info docs || die
+ touch docs/gnuplot.info || die #464092#c12 and #466758
+ else
+ local dir
+ for dir in config demo m4 term tutorial; do
+ emake -C "$dir" -f Makefile.am.in Makefile.am
+ done
+ eautoreconf
+ fi
+
+ # Add special version identification as required by provision 2
+ # of the gnuplot license
+ sed -i -e "1s/.*/& (Gentoo revision ${PR})/" PATCHLEVEL || die
+
+ # hacky workaround
+ # Please hack the buildsystem if you like
+ if use prefix && use qt4; then
+ append-ldflags -Wl,-rpath,"${EPREFIX}"/usr/$(get_libdir)/qt4
+ fi
+
+ DOC_CONTENTS='Gnuplot no longer links against pdflib, see the ChangeLog
+ for details. You can use the "pdfcairo" terminal for PDF output.'
+ use cairo || DOC_CONTENTS+=' It is available with USE="cairo".'
+ use svga && DOC_CONTENTS+='\n\nIn order to enable ordinary users to use
+ SVGA console graphics, gnuplot needs to be set up as setuid root.
+ Please note that this is usually considered to be a security hazard.
+ As root, manually "chmod u+s /usr/bin/gnuplot".'
+ use gd && DOC_CONTENTS+='\n\nFor font support in png/jpeg/gif output,
+ you may have to set the GDFONTPATH and GNUPLOT_DEFAULT_GDFONT
+ environment variables. See the FAQ file in /usr/share/doc/${PF}/
+ for more information.'
+ DOC_CONTENTS+='\n\ngnuplot-mode for Emacs is now maintained and
+ distributed separately; the gnuplot ebuild no longer installs it.
+ Emerge app-emacs/gnuplot-mode for Emacs support.'
+ has_version "${CATEGORY}/${PN}[emacs(-)]" && FORCE_PRINT_ELOG=1
+}
+
+src_configure() {
+ if ! use latex; then
+ sed -i -e '/SUBDIRS/s/LaTeX//' share/Makefile.in || die
+ fi
+
+ if use wxwidgets; then
+ WX_GTK_VER="2.8"
+ need-wxwidgets unicode
+ fi
+
+ tc-export CC CXX #453174
+
+ econf \
+ --without-pdf \
+ --with-texdir="${TEXMF}/tex/latex/${PN}" \
+ --with-readline=$(usex readline gnu builtin) \
+ --without-lisp-files \
+ $(use_with bitmap bitmap-terminals) \
+ $(use_with cairo) \
+ $(use_with doc tutorial) \
+ $(use_with gd) \
+ "$(use_with ggi ggi "${EPREFIX}/usr/$(get_libdir)")" \
+ "$(use_with ggi xmi "${EPREFIX}/usr/$(get_libdir)")" \
+ $(use_with lua) \
+ "$(use_with plotutils plot "${EPREFIX}/usr/$(get_libdir)")" \
+ $(use_with svga linux-vga) \
+ $(use_with X x) \
+ --enable-stats \
+ $(use_enable qt4 qt) \
+ $(use_enable thin-splines) \
+ $(use_enable wxwidgets) \
+ DIST_CONTACT="http://bugs.gentoo.org/" \
+ EMACS=no
+}
+
+src_compile() {
+ # Prevent access violations, see bug 201871
+ VARTEXFONTS="${T}/fonts"
+
+ # We believe that the following line is no longer needed.
+ # In case of problems file a bug report at bugs.gentoo.org.
+ #addwrite /dev/svga:/dev/mouse:/dev/tts/0
+
+ emake all info
+
+ if use doc; then
+ # Avoid sandbox violation in epstopdf/ghostscript
+ addpredict /var/cache/fontconfig
+ emake -C docs pdf
+ emake -C tutorial pdf
+ fi
+}
+
+src_install () {
+ emake -j1 DESTDIR="${D}" install
+
+ doinfo docs/gnuplot.info
+ dodoc BUGS ChangeLog NEWS PGPKEYS PORTING README*
+ newdoc term/PostScript/README README-ps
+ newdoc term/js/README README-js
+ use lua && newdoc term/lua/README README-lua
+ readme.gentoo_create_doc
+
+ if use examples; then
+ # Demo files
+ insinto /usr/share/${PN}/${GP_VERSION}
+ doins -r demo
+ rm -f "${ED}"/usr/share/${PN}/${GP_VERSION}/demo/Makefile*
+ rm -f "${ED}"/usr/share/${PN}/${GP_VERSION}/demo/binary*
+ fi
+
+ if use doc; then
+ # Manual, tutorial, FAQ
+ dodoc tutorial/{tutorial.dvi,tutorial.pdf} FAQ.pdf
+ # Documentation for making PostScript files
+ docinto psdoc
+ dodoc docs/psdoc/{*.doc,*.tex,*.ps,*.gpi,README}
+ fi
+}
+
+src_test() {
+ GNUTERM="unknown" default_src_test
+}
+
+pkg_postinst() {
+ use latex && texmf-update
+ readme.gentoo_print_elog
+}
+
+pkg_postrm() {
+ use latex && texmf-update
+}
diff --git a/sci-visualization/gnuplot/gnuplot-5.0.1.ebuild b/sci-visualization/gnuplot/gnuplot-5.0.1.ebuild
new file mode 100644
index 00000000000..ea423fb1337
--- /dev/null
+++ b/sci-visualization/gnuplot/gnuplot-5.0.1.ebuild
@@ -0,0 +1,193 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils flag-o-matic multilib readme.gentoo toolchain-funcs wxwidgets
+
+DESCRIPTION="Command-line driven interactive plotting program"
+HOMEPAGE="http://www.gnuplot.info/"
+
+if [[ -z ${PV%%*9999} ]]; then
+ inherit autotools cvs
+ ECVS_SERVER="gnuplot.cvs.sourceforge.net:/cvsroot/gnuplot"
+ ECVS_MODULE="gnuplot"
+ ECVS_BRANCH="branch-5-0-stable"
+ ECVS_USER="anonymous"
+ ECVS_CVS_OPTIONS="-dP"
+ MY_P="${PN}"
+ SRC_URI=""
+ KEYWORDS=""
+else
+ MY_P="${P/_/.}"
+ SRC_URI="mirror://sourceforge/gnuplot/${MY_P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sparc ~x86 ~ppc-aix ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+ inherit autotools
+fi
+
+LICENSE="gnuplot bitmap? ( free-noncomm )"
+SLOT="0"
+IUSE="aqua bitmap cairo compat doc examples +gd ggi latex libcaca libcerf lua qt4 readline svga wxwidgets X"
+
+RDEPEND="
+ cairo? (
+ x11-libs/cairo
+ x11-libs/pango )
+ gd? ( >=media-libs/gd-2.0.35-r3[png] )
+ ggi? ( media-libs/libggi )
+ latex? (
+ virtual/latex-base
+ lua? (
+ dev-tex/pgf
+ >=dev-texlive/texlive-latexrecommended-2008-r2 ) )
+ libcaca? ( media-libs/libcaca )
+ lua? ( dev-lang/lua:0 )
+ qt4? ( >=dev-qt/qtcore-4.5:4
+ >=dev-qt/qtgui-4.5:4
+ >=dev-qt/qtsvg-4.5:4 )
+ readline? ( sys-libs/readline:0 )
+ libcerf? ( sci-libs/libcerf )
+ svga? ( media-libs/svgalib )
+ wxwidgets? (
+ x11-libs/wxGTK:2.8[X]
+ x11-libs/cairo
+ x11-libs/pango
+ x11-libs/gtk+:2 )
+ X? ( x11-libs/libXaw )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ doc? (
+ virtual/latex-base
+ dev-texlive/texlive-latexextra
+ app-text/ghostscript-gpl )"
+
+S="${WORKDIR}/${MY_P}"
+
+GP_VERSION="${PV%.*}"
+E_SITEFILE="lisp/50${PN}-gentoo.el"
+TEXMF="${EPREFIX}/usr/share/texmf-site"
+
+src_prepare() {
+ if [[ -z ${PV%%*9999} ]]; then
+ local dir
+ for dir in config demo m4 term tutorial; do
+ emake -C "$dir" -f Makefile.am.in Makefile.am
+ done
+ eautoreconf
+ fi
+
+ # Add special version identification as required by provision 2
+ # of the gnuplot license
+ sed -i -e "1s/.*/& (Gentoo revision ${PR})/" PATCHLEVEL || die
+
+ # hacky workaround
+ # Please hack the buildsystem if you like
+ if use prefix && use qt4; then
+ append-ldflags -Wl,-rpath,"${EPREFIX}"/usr/$(get_libdir)/qt4
+ fi
+
+ DOC_CONTENTS='Gnuplot no longer links against pdflib, see the ChangeLog
+ for details. You can use the "pdfcairo" terminal for PDF output.'
+ use cairo || DOC_CONTENTS+=' It is available with USE="cairo".'
+ use svga && DOC_CONTENTS+='\n\nIn order to enable ordinary users to use
+ SVGA console graphics, gnuplot needs to be set up as setuid root.
+ Please note that this is usually considered to be a security hazard.
+ As root, manually "chmod u+s /usr/bin/gnuplot".'
+ use gd && DOC_CONTENTS+='\n\nFor font support in png/jpeg/gif output,
+ you may have to set the GDFONTPATH and GNUPLOT_DEFAULT_GDFONT
+ environment variables. See the FAQ file in /usr/share/doc/${PF}/
+ for more information.'
+}
+
+src_configure() {
+ if ! use latex; then
+ sed -i -e '/SUBDIRS/s/LaTeX//' share/Makefile.in || die
+ fi
+
+ if use wxwidgets; then
+ WX_GTK_VER="2.8"
+ need-wxwidgets unicode
+ fi
+
+ tc-export CC CXX #453174
+
+ econf \
+ --without-pdf \
+ --with-texdir="${TEXMF}/tex/latex/${PN}" \
+ --with-readline=$(usex readline gnu builtin) \
+ $(use_with bitmap bitmap-terminals) \
+ $(use_with cairo) \
+ $(use_enable compat backwards-compatibility) \
+ $(use_with doc tutorial) \
+ $(use_with gd) \
+ "$(use_with ggi ggi "${EPREFIX}/usr/$(get_libdir)")" \
+ "$(use_with ggi xmi "${EPREFIX}/usr/$(get_libdir)")" \
+ "$(use_with libcaca caca "${EPREFIX}/usr/$(get_libdir)")" \
+ $(use_with libcerf) \
+ $(use_with lua) \
+ $(use_with svga linux-vga) \
+ $(use_with X x) \
+ --enable-stats \
+ $(use_with qt4 qt qt4) \
+ $(use_enable wxwidgets) \
+ DIST_CONTACT="http://bugs.gentoo.org/" \
+ EMACS=no
+}
+
+src_compile() {
+ # Prevent access violations, see bug 201871
+ VARTEXFONTS="${T}/fonts"
+
+ # We believe that the following line is no longer needed.
+ # In case of problems file a bug report at bugs.gentoo.org.
+ #addwrite /dev/svga:/dev/mouse:/dev/tts/0
+
+ emake all
+
+ if use doc; then
+ # Avoid sandbox violation in epstopdf/ghostscript
+ addpredict /var/cache/fontconfig
+ emake -C docs gnuplot.pdf
+ emake -C tutorial pdf
+ fi
+}
+
+src_install () {
+ emake DESTDIR="${D}" install
+
+ dodoc BUGS ChangeLog NEWS PGPKEYS PORTING README*
+ newdoc term/PostScript/README README-ps
+ newdoc term/js/README README-js
+ use lua && newdoc term/lua/README README-lua
+ readme.gentoo_create_doc
+
+ if use examples; then
+ # Demo files
+ insinto /usr/share/${PN}/${GP_VERSION}
+ doins -r demo
+ rm -f "${ED}"/usr/share/${PN}/${GP_VERSION}/demo/Makefile*
+ rm -f "${ED}"/usr/share/${PN}/${GP_VERSION}/demo/binary*
+ fi
+
+ if use doc; then
+ # Manual, tutorial, FAQ
+ dodoc docs/gnuplot.pdf tutorial/{tutorial.dvi,tutorial.pdf} FAQ.pdf
+ # Documentation for making PostScript files
+ docinto psdoc
+ dodoc docs/psdoc/{*.doc,*.tex,*.ps,*.gpi,README}
+ fi
+}
+
+src_test() {
+ GNUTERM="unknown" default_src_test
+}
+
+pkg_postinst() {
+ use latex && texmf-update
+ readme.gentoo_print_elog
+}
+
+pkg_postrm() {
+ use latex && texmf-update
+}
diff --git a/sci-visualization/gnuplot/metadata.xml b/sci-visualization/gnuplot/metadata.xml
new file mode 100644
index 00000000000..eef87b58c4e
--- /dev/null
+++ b/sci-visualization/gnuplot/metadata.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <maintainer>
+ <email>ulm@gentoo.org</email>
+ <name>Ulrich Müller</name>
+ </maintainer>
+ <maintainer>
+ <email>ottxor@gentoo.org</email>
+ <name>Christoph Junghans</name>
+ </maintainer>
+ <longdescription>
+ Gnuplot is a command-driven interactive function plotting program.
+ It can be used to plot functions and data points in both two- and
+ three-dimensional plots in many different formats. It is designed
+ primarily for the visual display of scientific data.
+</longdescription>
+ <use>
+ <flag name="compat">Enable backwards compatibility with version 4 syntax</flag>
+ <flag name="gd">Add support for <pkg>media-libs/gd</pkg>.
+ Needed for GIF, JPEG, and PNG image output.</flag>
+ <flag name="libcerf">Enable special functions from <pkg>sci-libs/libcerf</pkg></flag>
+ <flag name="thin-splines">Enable thin plate splines</flag>
+ <flag name="bitmap">Enable dot-matrix printers and pbm terminal</flag>
+ </use>
+ <upstream>
+ <remote-id type="sourceforge">gnuplot</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sci-visualization/grace/Manifest b/sci-visualization/grace/Manifest
new file mode 100644
index 00000000000..f73411ce95b
--- /dev/null
+++ b/sci-visualization/grace/Manifest
@@ -0,0 +1,4 @@
+DIST grace-5.1.22.tar.gz 2516576 SHA256 4ce8f058b6c1267a842419a3edbf471421dea9cf5744783745b6cb375cdf5f25 SHA512 0187f0305ff5e404e9adab60e9f3d328121c9ab8352f0b65fa523e2e9078dcee073d347a252a5e8b516728cae24b1ac0718b5011ab17247ae9ea9149336866d4 WHIRLPOOL 206ceb7dee5572e756fe67d528925705ab3b56913f26d8c9b066b07423cdd6b4e70c0739e3b66bdf7aa992dae243755f81ea097e1a33b94817322bc30b33274a
+DIST grace-5.1.23.tar.gz 2501364 SHA256 69527950fd9c056a76b7a6bf4ac37a9b87acc565c12a941ffae3c9c5a822ca10 SHA512 84b75639a5065fb0a39204b55e82471be90d78b22530e541a4e58cb5bcd94a59d51e91da38d9fecb9c23e21744c0c3b31bb9db4fd26c656233a19cffd1eef7d3 WHIRLPOOL f807245acd084973d6436f404fc9eb146543a8ce34e0089ded098e771564e9d3bc6ae7023463674101cd161a1463ab3b97ee80df5b18e191b1e9ab94c7e6afc4
+DIST grace.png 338 SHA256 70130b7ddb7a64cf2d866aaf472d8badb12d72ac288275709689c631e23da9bc SHA512 804a693b867ad63f34964c7388f61719c558d253cb2c7bc7b6bd0647ad9b3ddc6b23d3950091b6804e4a94736f024486cf3dcce5f877135def34712ee95e4031 WHIRLPOOL 6cef65fc9329e7f49541e193a84c4f86498f422951ced1bd228ce854bab43a9ba5d9dfb44f780b1dcb030892cebd657d6de385df92710062f56c38f1e6cccd94
+DIST grace.png.tar 10240 SHA256 05215c72a2f45b513ba508287b5f693af145719b7a85497320d1e1e17695e99c SHA512 e94970b92894e58fd481d2f81e615c38b77fab7039985516a2ad9b2bb2bb7a82f4e3e8cdb639e7c0d55eaad6bf8abc636a342c94a356e3bd0520824252faddcf WHIRLPOOL 448e1c659475e38331c3ff2f050de52feb01db9623c0a250c7702debe920abf7e9bc56373f442d91d11ad6f55da3e9bbc58f52c1251223bdf405202ae8309556
diff --git a/sci-visualization/grace/files/grace-5.1.21-fortran.patch b/sci-visualization/grace/files/grace-5.1.21-fortran.patch
new file mode 100644
index 00000000000..921d965f389
--- /dev/null
+++ b/sci-visualization/grace/files/grace-5.1.21-fortran.patch
@@ -0,0 +1,26 @@
+--- grace_np/gracef_np.c.orig 2008-03-03 11:45:12.000000000 +0000
++++ grace_np/gracef_np.c 2008-03-03 12:05:37.000000000 +0000
+@@ -1,5 +1,11 @@
+ #include <config.h>
+
++#ifdef NEED_F77_UNDERSCORE
++# define F77_FNAME(fname) fname ## _
++#else
++# define F77_FNAME(fname) fname
++#endif
++
+ #if defined(WITH_F77_WRAPPER)
+
+ #include <stdio.h>
+@@ -8,11 +14,6 @@
+
+ #include "grace_np.h"
+
+-#ifdef NEED_F77_UNDERSCORE
+-# define F77_FNAME(fname) fname ## _
+-#else
+-# define F77_FNAME(fname) fname
+-#endif
+
+ typedef void (*GraceFortranFunctionType) (const char *str, int len);
+ static GraceFortranFunctionType fortran_error = (GraceFortranFunctionType) 0;
diff --git a/sci-visualization/grace/files/grace-5.1.21-netcdf.patch b/sci-visualization/grace/files/grace-5.1.21-netcdf.patch
new file mode 100644
index 00000000000..eabb27434e1
--- /dev/null
+++ b/sci-visualization/grace/files/grace-5.1.21-netcdf.patch
@@ -0,0 +1,11 @@
+--- configure.orig 2007-02-16 22:44:49.000000000 +0000
++++ configure 2007-09-28 23:03:29.000000000 +0100
+@@ -15181,7 +15181,7 @@
+ int main(void) {
+ char *vlib;
+ vlib = nc_inq_libvers();
+- if (strcmp(vlib, "3.0") < 0) {
++ if (((vlib[0] == '"') && (strcmp(vlib, "\"3.0") < 0)) || ((vlib[0] != '"') && (strcmp(vlib, "3.0") < 0))){
+ exit(1);
+ }
+ exit(0);
diff --git a/sci-visualization/grace/files/grace-5.1.22-dlmodule.patch b/sci-visualization/grace/files/grace-5.1.22-dlmodule.patch
new file mode 100644
index 00000000000..9e36b34e06f
--- /dev/null
+++ b/sci-visualization/grace/files/grace-5.1.22-dlmodule.patch
@@ -0,0 +1,12 @@
+--- src/dlmodule.c.orig 2005-11-13 07:45:16.000000000 +0900
++++ src/dlmodule.c 2008-06-16 15:28:33.000000000 +0900
+@@ -89,6 +89,9 @@
+ return RETURN_FAILURE;
+ }
+
++ /* clear error indicator */
++ dlerror();
++
+ newkey.data = dlsym(handle, dl_function);
+ if (!newkey.data && (error = dlerror()) != NULL) {
+ errmsg(error);
diff --git a/sci-visualization/grace/files/grace-5.1.22-ldflags.patch b/sci-visualization/grace/files/grace-5.1.22-ldflags.patch
new file mode 100644
index 00000000000..2a65cd23336
--- /dev/null
+++ b/sci-visualization/grace/files/grace-5.1.22-ldflags.patch
@@ -0,0 +1,41 @@
+Respect LDFLAGS
+
+http://bugs.gentoo.org/show_bug.cgi?id=336984
+
+--- grace-5.1.22/src/Makefile
++++ grace-5.1.22/src/Makefile
+@@ -37,10 +37,10 @@
+ include Make.dep
+
+ xmgrace$(EXE) : $(GROBJS) $(PARS_C) $(GUIOBJS) $(CEPHES_LIB)
+- $(CC) $(CFLAGS) $(GROBJS) $(GUIOBJS) -o $@ $(LDFLAGS) $(LIBS)
++ $(CC) $(LDFLAGS) $(CFLAGS) $(GROBJS) $(GUIOBJS) -o $@ $(LIBS)
+
+ grace$(EXE) : $(GROBJS) $(PARS_C) $(CEPHES_LIB)
+- $(CC) $(CFLAGS) $(GROBJS) -o $@ $(LDFLAGS) $(LIBS)
++ $(CC) $(LDFLAGS) $(CFLAGS) $(GROBJS) -o $@ $(LIBS)
+
+
+ buildinfo$(EXE) : buildinfo$(O)
+--- grace-5.1.22/auxiliary/Makefile
++++ grace-5.1.22/auxiliary/Makefile
+@@ -22,7 +22,7 @@
+ devclean : distclean
+
+ convcal$(EXE) : convcal.c
+- $(CC) $(CFLAGS0) $(CPPFLAGS) -o $@ convcal.c $(NOGUI_LIBS)
++ $(CC) $(LDFLAGS) $(CFLAGS0) $(CPPFLAGS) -o $@ convcal.c $(NOGUI_LIBS)
+
+ install : $(AUXILIARIES) $(PROGRAMS) $(SCRIPTS)
+ $(MKINSTALLDIRS) $(DESTDIR)$(GRACE_HOME)/auxiliary
+--- grace-5.1.22/grconvert/Makefile
++++ grace-5.1.22/grconvert/Makefile
+@@ -23,7 +23,7 @@
+ all : $(PROG)
+
+ $(PROG) : $(OBJS)
+- $(CC) -o $@ $(OBJS) $(LDFLAGS) $(LIBS)
++ $(CC) $(LDFLAGS) -o $@ $(OBJS) $(LIBS)
+
+ $(OBJS) : grconvert.h
+
diff --git a/sci-visualization/grace/files/grace-5.1.22-libpng15.patch b/sci-visualization/grace/files/grace-5.1.22-libpng15.patch
new file mode 100644
index 00000000000..43db9e0723a
--- /dev/null
+++ b/sci-visualization/grace/files/grace-5.1.22-libpng15.patch
@@ -0,0 +1,19 @@
+--- src/rstdrv.c
++++ src/rstdrv.c
+@@ -53,6 +53,7 @@
+ #endif
+
+ #ifdef HAVE_LIBPNG
++# include <zlib.h>
+ # include <png.h>
+ #endif
+
+@@ -885,7 +886,7 @@
+ return;
+ }
+
+- if (setjmp(png_ptr->jmpbuf)) {
++ if (setjmp(png_jmpbuf(png_ptr))) {
+ png_destroy_write_struct(&png_ptr, &info_ptr);
+ return;
+ }
diff --git a/sci-visualization/grace/files/grace-5.1.22-mkstemp.patch b/sci-visualization/grace/files/grace-5.1.22-mkstemp.patch
new file mode 100644
index 00000000000..402a5162c58
--- /dev/null
+++ b/sci-visualization/grace/files/grace-5.1.22-mkstemp.patch
@@ -0,0 +1,55 @@
+diff -Naur grace-5.1.22/src/editpwin.c grace-5.1.22.new/src/editpwin.c
+--- grace-5.1.22/src/editpwin.c 2006-06-03 17:19:52.000000000 -0400
++++ grace-5.1.22.new/src/editpwin.c 2008-07-26 12:45:21.000000000 -0400
+@@ -776,12 +776,12 @@
+ */
+ void do_ext_editor(int gno, int setno)
+ {
+- char *fname, ebuf[256];
++ char fname[64], ebuf[256];
+ FILE *cp;
+ int save_autos;
+
+- fname = tmpnam(NULL);
+- cp = grace_openw(fname);
++ strcpy(fname, "grace-XXXXXX");
++ cp = fdopen(mkstemp(fname), "wb");
+ if (cp == NULL) {
+ return;
+ }
+diff -Naur grace-5.1.22/src/plotone.c grace-5.1.22.new/src/plotone.c
+--- grace-5.1.22/src/plotone.c 2005-05-19 16:30:25.000000000 -0400
++++ grace-5.1.22.new/src/plotone.c 2008-07-26 12:45:40.000000000 -0400
+@@ -121,19 +121,27 @@
+ sprintf(print_file, "%s.%s", get_docbname(), dev.fext);
+ }
+ strcpy(fname, print_file);
++ prstream = grace_openw(fname);
+ } else {
++ int hdfd;
+ s = get_print_cmd();
+ if (s == NULL || s[0] == '\0') {
+ errmsg("No print command defined, output aborted");
+ return;
+ }
+- tmpnam(fname);
+- /* VMS doesn't like extensionless files */
+- strcat(fname, ".prn");
++ strcpy(fname, "grace-hardcopy-XXXXXX");
++ hdfd=mkstemp(fname);
++ if (hdfd == -1) {
++ errmsg("Could not create a temporary file, output aborted.");
++ return;
++ }
++ prstream = fdopen(hdfd, "wb");
++ if (prstream == NULL) {
++ errmsg("Could not create a temporary file, output aborted.");
++ return;
++ }
+ }
+
+- prstream = grace_openw(fname);
+-
+ if (prstream == NULL) {
+ return;
+ }
diff --git a/sci-visualization/grace/files/grace.desktop b/sci-visualization/grace/files/grace.desktop
new file mode 100644
index 00000000000..227d88d9cbe
--- /dev/null
+++ b/sci-visualization/grace/files/grace.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Name=Grace
+Comment=Numerical Data Processing and Visualization Tool
+Exec=xmgrace
+Icon=grace
+Terminal=false
+Type=Application
+Categories=Graphics;
diff --git a/sci-visualization/grace/grace-5.1.22-r2.ebuild b/sci-visualization/grace/grace-5.1.22-r2.ebuild
new file mode 100644
index 00000000000..5fc2aa5e809
--- /dev/null
+++ b/sci-visualization/grace/grace-5.1.22-r2.ebuild
@@ -0,0 +1,107 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+FORTRAN_NEEDED=fortran
+
+inherit eutils fortran-2 multilib toolchain-funcs
+
+DESCRIPTION="Motif based XY-plotting tool"
+HOMEPAGE="http://plasma-gate.weizmann.ac.il/Grace/"
+SRC_URI="
+ http://dev.gentoo.org/~jlec/distfiles/${PN}.png.tar
+ ftp://plasma-gate.weizmann.ac.il/pub/${PN}/src/stable/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="GPL-2 LGPL-2"
+KEYWORDS="amd64 ppc ppc64 x86 ~amd64-linux ~x86-linux"
+IUSE="fortran fftw jpeg netcdf png"
+
+DEPEND="
+ media-libs/t1lib
+ media-libs/tiff
+ sys-libs/zlib
+ >=x11-libs/motif-2.3:0
+ x11-libs/xbae
+ fftw? ( sci-libs/fftw:2.1 )
+ jpeg? ( virtual/jpeg )
+ netcdf? ( sci-libs/netcdf )
+ png? ( media-libs/libpng )"
+RDEPEND="${DEPEND}
+ x11-misc/xdg-utils"
+
+pkg_setup() {
+ fortran-2_pkg_setup
+ tc-export CC
+}
+
+src_prepare() {
+ # move tmpnam to mkstemp (adapted from debian)
+ epatch "${FILESDIR}"/${P}-mkstemp.patch
+ # fix configure instead of aclocal.m4
+ epatch "${FILESDIR}"/${PN}-5.1.21-netcdf.patch
+ # fix for missing defines when fortran is disabled
+ epatch "${FILESDIR}"/${PN}-5.1.21-fortran.patch
+ # fix a leak (from freebsd)
+ epatch "${FILESDIR}"/${P}-dlmodule.patch \
+ "${FILESDIR}"/${P}-ldflags.patch \
+ "${FILESDIR}"/${P}-libpng15.patch
+
+ # don't strip if not asked for
+ sed -i \
+ -e 's:$(INSTALL_PROGRAM) -s:$(INSTALL_PROGRAM):g' \
+ {auxiliary,grconvert,src}/Makefile || die
+
+ sed -i \
+ -e 's:$(GRACE_HOME)/bin:$(PREFIX)/bin:g' \
+ -e "s:\$(GRACE_HOME)/lib:\$(PREFIX)/$(get_libdir):g" \
+ -e 's:$(GRACE_HOME)/include:$(PREFIX)/include:g' \
+ -e 's:$(PREFIX)/man:$(PREFIX)/share/man:g' \
+ Makefile */Makefile || die "sed failed"
+
+ sed -i \
+ -e 's:bin/grconvert:grconvert:' \
+ -e 's:auxiliary/fdf2fit:fdf2fit:' \
+ gracerc || die
+}
+
+src_configure() {
+ local myconf
+ if use fortran; then
+ myconf="--with-f77=$(tc-getFC)"
+ else
+ myconf="--without-f77"
+ fi
+
+ # the configure script just produces a basic Make.conf
+ # and a config.h
+ econf \
+ --disable-pdfdrv \
+ --disable-xmhtml \
+ --without-bundled-xbae \
+ --without-bundled-t1lib \
+ --enable-grace-home="${EPREFIX}"/usr/share/${PN} \
+ --with-helpviewer="xdg-open %s" \
+ --with-editor="xdg-open %s" \
+ --with-printcmd="lpr" \
+ $(use_with fftw) \
+ $(use_enable fortran f77-wrapper) \
+ $(use_enable netcdf) \
+ $(use_enable jpeg jpegdrv) \
+ $(use_enable png pngdrv) \
+ ${myconf}
+}
+
+src_install() {
+ default
+
+ dosym ../../${PN}/examples /usr/share/doc/${PF}/examples
+ dosym ../../${PN}/doc /usr/share/doc/${PF}/html
+
+ doman "${ED}"/usr/share/doc/${PF}/html/*.1
+ rm -f "${ED}"/usr/share/doc/${PF}/html/*.1 || die
+ doicon "${WORKDIR}"/${PN}.png
+ make_desktop_entry xmgrace Grace grace
+}
diff --git a/sci-visualization/grace/grace-5.1.22-r3.ebuild b/sci-visualization/grace/grace-5.1.22-r3.ebuild
new file mode 100644
index 00000000000..f87a0fc19a9
--- /dev/null
+++ b/sci-visualization/grace/grace-5.1.22-r3.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+FORTRAN_NEEDED=fortran
+
+inherit eutils fortran-2 multilib toolchain-funcs
+
+DESCRIPTION="Motif based XY-plotting tool"
+HOMEPAGE="http://plasma-gate.weizmann.ac.il/Grace/"
+SRC_URI="
+ http://pkgs.fedoraproject.org/cgit/grace.git/plain/grace.png
+ http://dev.gentoo.org/~jlec/distfiles/${PN}.png.tar
+ ftp://plasma-gate.weizmann.ac.il/pub/${PN}/src/stable/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="GPL-2 LGPL-2"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="fortran fftw jpeg netcdf png"
+
+DEPEND="
+ media-libs/t1lib
+ media-libs/tiff
+ sys-libs/zlib
+ >=x11-libs/motif-2.3:0
+ x11-libs/xbae
+ fftw? ( sci-libs/fftw:2.1 )
+ jpeg? ( virtual/jpeg )
+ netcdf? ( sci-libs/netcdf )
+ png? ( media-libs/libpng )"
+RDEPEND="${DEPEND}
+ x11-misc/xdg-utils"
+
+pkg_setup() {
+ fortran-2_pkg_setup
+ tc-export CC
+}
+
+src_prepare() {
+ # move tmpnam to mkstemp (adapted from debian)
+ epatch "${FILESDIR}"/${P}-mkstemp.patch
+ # fix configure instead of aclocal.m4
+ epatch "${FILESDIR}"/${PN}-5.1.21-netcdf.patch
+ # fix for missing defines when fortran is disabled
+ epatch "${FILESDIR}"/${PN}-5.1.21-fortran.patch
+ # fix a leak (from freebsd)
+ epatch "${FILESDIR}"/${P}-dlmodule.patch \
+ "${FILESDIR}"/${P}-ldflags.patch \
+ "${FILESDIR}"/${P}-libpng15.patch
+
+ # don't strip if not asked for
+ sed -i \
+ -e 's:$(INSTALL_PROGRAM) -s:$(INSTALL_PROGRAM):g' \
+ {auxiliary,grconvert,src}/Makefile || die
+
+ sed -i \
+ -e 's:$(GRACE_HOME)/bin:$(PREFIX)/bin:g' \
+ -e "s:\$(GRACE_HOME)/lib:\$(PREFIX)/$(get_libdir):g" \
+ -e 's:$(GRACE_HOME)/include:$(PREFIX)/include:g' \
+ -e 's:$(PREFIX)/man:$(PREFIX)/share/man:g' \
+ Makefile */Makefile || die "sed failed"
+
+ sed -i \
+ -e 's:bin/grconvert:grconvert:' \
+ -e 's:auxiliary/fdf2fit:fdf2fit:' \
+ gracerc || die
+}
+
+src_configure() {
+ local myconf
+ if use fortran; then
+ myconf="--with-f77=$(tc-getFC)"
+ else
+ myconf="--without-f77"
+ fi
+
+ # the configure script just produces a basic Make.conf
+ # and a config.h
+ econf \
+ --disable-pdfdrv \
+ --disable-xmhtml \
+ --without-bundled-xbae \
+ --without-bundled-t1lib \
+ --enable-grace-home="${EPREFIX}"/usr/share/${PN} \
+ --with-helpviewer="xdg-open %s" \
+ --with-editor="xdg-open %s" \
+ --with-printcmd="lpr" \
+ --x-includes="${EPREFIX}"/usr/include \
+ --x-libraries="${EPREFIX}"/usr/$(get_libdir) \
+ $(use_with fftw) \
+ $(use_enable fortran f77-wrapper) \
+ $(use_enable netcdf) \
+ $(use_enable jpeg jpegdrv) \
+ $(use_enable png pngdrv) \
+ ${myconf}
+}
+
+src_install() {
+ default
+
+ dosym ../../${PN}/examples /usr/share/doc/${PF}/examples
+ dosym ../../${PN}/doc /usr/share/doc/${PF}/html
+
+ doman "${ED}"/usr/share/doc/${PF}/html/*.1
+ rm -f "${ED}"/usr/share/doc/${PF}/html/*.1 || die
+ doicon "${WORKDIR}"/${PN}.png
+ domenu "${FILESDIR}"/${PN}.desktop
+ doicon "${WORKDIR}"/${PN}.png
+}
diff --git a/sci-visualization/grace/grace-5.1.23-r1.ebuild b/sci-visualization/grace/grace-5.1.23-r1.ebuild
new file mode 100644
index 00000000000..bf75efa73ff
--- /dev/null
+++ b/sci-visualization/grace/grace-5.1.23-r1.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+FORTRAN_NEEDED=fortran
+
+inherit eutils fortran-2 multilib toolchain-funcs
+
+DESCRIPTION="Motif based XY-plotting tool"
+HOMEPAGE="http://plasma-gate.weizmann.ac.il/Grace/"
+SRC_URI="
+ http://pkgs.fedoraproject.org/cgit/grace.git/plain/grace.png
+ http://dev.gentoo.org/~jlec/distfiles/${PN}.png.tar
+ ftp://plasma-gate.weizmann.ac.il/pub/${PN}/src/stable/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="GPL-2 LGPL-2"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="fortran fftw jpeg netcdf png"
+
+DEPEND="
+ media-libs/t1lib
+ media-libs/tiff
+ sys-libs/zlib
+ >=x11-libs/motif-2.3:0
+ x11-libs/xbae
+ fftw? ( sci-libs/fftw:2.1 )
+ jpeg? ( virtual/jpeg )
+ netcdf? ( sci-libs/netcdf )
+ png? ( media-libs/libpng )"
+RDEPEND="${DEPEND}
+ x11-misc/xdg-utils"
+
+pkg_setup() {
+ fortran-2_pkg_setup
+ tc-export CC AR
+}
+
+src_prepare() {
+ # move tmpnam to mkstemp (adapted from debian)
+ epatch "${FILESDIR}"/${PN}-5.1.22-mkstemp.patch
+ # fix configure instead of aclocal.m4
+ epatch "${FILESDIR}"/${PN}-5.1.21-netcdf.patch
+ # fix for missing defines when fortran is disabled
+ epatch "${FILESDIR}"/${PN}-5.1.21-fortran.patch
+ # fix a leak (from freebsd)
+ epatch \
+ "${FILESDIR}"/${PN}-5.1.22-dlmodule.patch \
+ "${FILESDIR}"/${PN}-5.1.22-ldflags.patch
+
+ # don't strip if not asked for
+ sed -i \
+ -e 's:$(INSTALL_PROGRAM) -s:$(INSTALL_PROGRAM):g' \
+ {auxiliary,grconvert,src}/Makefile || die
+
+ sed -i \
+ -e 's:$(GRACE_HOME)/bin:$(PREFIX)/bin:g' \
+ -e "s:\$(GRACE_HOME)/lib:\$(PREFIX)/$(get_libdir):g" \
+ -e 's:$(GRACE_HOME)/include:$(PREFIX)/include:g' \
+ -e 's:$(PREFIX)/man:$(PREFIX)/share/man:g' \
+ Makefile */Makefile || die "sed failed"
+
+ sed -i \
+ -e 's:bin/grconvert:grconvert:' \
+ -e 's:auxiliary/fdf2fit:fdf2fit:' \
+ gracerc || die
+}
+
+src_configure() {
+ local myconf
+ if use fortran; then
+ myconf="--with-f77=$(tc-getFC)"
+ else
+ myconf="--without-f77"
+ fi
+
+ # the configure script just produces a basic Make.conf
+ # and a config.h
+ econf \
+ --disable-pdfdrv \
+ --disable-xmhtml \
+ --without-bundled-xbae \
+ --without-bundled-t1lib \
+ --enable-grace-home="${EPREFIX}"/usr/share/${PN} \
+ --with-helpviewer="xdg-open %s" \
+ --with-editor="xdg-open %s" \
+ --with-printcmd="lpr" \
+ --x-includes="${EPREFIX}"/usr/include \
+ --x-libraries="${EPREFIX}"/usr/$(get_libdir) \
+ $(use_with fftw) \
+ $(use_enable fortran f77-wrapper) \
+ $(use_enable netcdf) \
+ $(use_enable jpeg jpegdrv) \
+ $(use_enable png pngdrv) \
+ ${myconf}
+}
+
+src_install() {
+ default
+
+ dosym ../../${PN}/examples /usr/share/doc/${PF}/examples
+ dosym ../../${PN}/doc /usr/share/doc/${PF}/html
+
+ doman "${ED}"/usr/share/doc/${PF}/html/*.1
+ rm -f "${ED}"/usr/share/doc/${PF}/html/*.1 || die
+ doicon "${WORKDIR}"/${PN}.png
+ domenu "${FILESDIR}"/${PN}.desktop
+ doicon "${WORKDIR}"/${PN}.png
+}
diff --git a/sci-visualization/grace/grace-5.1.23.ebuild b/sci-visualization/grace/grace-5.1.23.ebuild
new file mode 100644
index 00000000000..134fe12d0f2
--- /dev/null
+++ b/sci-visualization/grace/grace-5.1.23.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+FORTRAN_NEEDED=fortran
+
+inherit eutils fortran-2 multilib toolchain-funcs
+
+DESCRIPTION="Motif based XY-plotting tool"
+HOMEPAGE="http://plasma-gate.weizmann.ac.il/Grace/"
+SRC_URI="
+ http://pkgs.fedoraproject.org/cgit/grace.git/plain/grace.png
+ http://dev.gentoo.org/~jlec/distfiles/${PN}.png.tar
+ ftp://plasma-gate.weizmann.ac.il/pub/${PN}/src/stable/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="GPL-2 LGPL-2"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="fortran fftw jpeg netcdf png"
+
+DEPEND="
+ media-libs/t1lib
+ media-libs/tiff
+ sys-libs/zlib
+ >=x11-libs/motif-2.3:0
+ x11-libs/xbae
+ fftw? ( sci-libs/fftw:2.1 )
+ jpeg? ( virtual/jpeg )
+ netcdf? ( sci-libs/netcdf )
+ png? ( media-libs/libpng )"
+RDEPEND="${DEPEND}
+ x11-misc/xdg-utils"
+
+pkg_setup() {
+ fortran-2_pkg_setup
+ tc-export CC
+}
+
+src_prepare() {
+ # move tmpnam to mkstemp (adapted from debian)
+ epatch "${FILESDIR}"/${PN}-5.1.22-mkstemp.patch
+ # fix configure instead of aclocal.m4
+ epatch "${FILESDIR}"/${PN}-5.1.21-netcdf.patch
+ # fix for missing defines when fortran is disabled
+ epatch "${FILESDIR}"/${PN}-5.1.21-fortran.patch
+ # fix a leak (from freebsd)
+ epatch \
+ "${FILESDIR}"/${PN}-5.1.22-dlmodule.patch \
+ "${FILESDIR}"/${PN}-5.1.22-ldflags.patch
+
+ # don't strip if not asked for
+ sed -i \
+ -e 's:$(INSTALL_PROGRAM) -s:$(INSTALL_PROGRAM):g' \
+ {auxiliary,grconvert,src}/Makefile || die
+
+ sed -i \
+ -e 's:$(GRACE_HOME)/bin:$(PREFIX)/bin:g' \
+ -e "s:\$(GRACE_HOME)/lib:\$(PREFIX)/$(get_libdir):g" \
+ -e 's:$(GRACE_HOME)/include:$(PREFIX)/include:g' \
+ -e 's:$(PREFIX)/man:$(PREFIX)/share/man:g' \
+ Makefile */Makefile || die "sed failed"
+
+ sed -i \
+ -e 's:bin/grconvert:grconvert:' \
+ -e 's:auxiliary/fdf2fit:fdf2fit:' \
+ gracerc || die
+}
+
+src_configure() {
+ local myconf
+ if use fortran; then
+ myconf="--with-f77=$(tc-getFC)"
+ else
+ myconf="--without-f77"
+ fi
+
+ # the configure script just produces a basic Make.conf
+ # and a config.h
+ econf \
+ --disable-pdfdrv \
+ --disable-xmhtml \
+ --without-bundled-xbae \
+ --without-bundled-t1lib \
+ --enable-grace-home="${EPREFIX}"/usr/share/${PN} \
+ --with-helpviewer="xdg-open %s" \
+ --with-editor="xdg-open %s" \
+ --with-printcmd="lpr" \
+ --x-includes="${EPREFIX}"/usr/include \
+ --x-libraries="${EPREFIX}"/usr/$(get_libdir) \
+ $(use_with fftw) \
+ $(use_enable fortran f77-wrapper) \
+ $(use_enable netcdf) \
+ $(use_enable jpeg jpegdrv) \
+ $(use_enable png pngdrv) \
+ ${myconf}
+}
+
+src_install() {
+ default
+
+ dosym ../../${PN}/examples /usr/share/doc/${PF}/examples
+ dosym ../../${PN}/doc /usr/share/doc/${PF}/html
+
+ doman "${ED}"/usr/share/doc/${PF}/html/*.1
+ rm -f "${ED}"/usr/share/doc/${PF}/html/*.1 || die
+ doicon "${WORKDIR}"/${PN}.png
+ domenu "${FILESDIR}"/${PN}.desktop
+ doicon "${WORKDIR}"/${PN}.png
+}
diff --git a/sci-visualization/grace/metadata.xml b/sci-visualization/grace/metadata.xml
new file mode 100644
index 00000000000..8aa335d964d
--- /dev/null
+++ b/sci-visualization/grace/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <herd>graphics</herd>
+ <longdescription lang="en">
+ Grace is a point-and-click tool that allows the user to draw X-Y
+ plots. This is the program formerly known as Xmgr.
+
+ A few of its features are: user defined scaling, tick marks, labels,
+ symbols, line styles, colors. Polynomial regression, splines, running
+ averages, DFT/FFT, cross/auto-correlation. Batch mode for unattended
+ plotting. Hardcopy support for PostScript, FrameMaker and several
+ image formats.
+</longdescription>
+</pkgmetadata>
diff --git a/sci-visualization/gri/Manifest b/sci-visualization/gri/Manifest
new file mode 100644
index 00000000000..683c8207cab
--- /dev/null
+++ b/sci-visualization/gri/Manifest
@@ -0,0 +1,2 @@
+DIST gri-2.12.19.tar.gz 1658449 SHA256 9c1b315f309268a64c538c691644ac83665c88a65c408d427afe8ed22592b6e6 SHA512 cf4c4675b5e5d38b3ef3f6db1209bd29e08b9d5547edc245ec78bbd0f0549937c6de0298c3bd3a565206ab2f8742c45a2344b227136f13412faf9734c5bbe3c6 WHIRLPOOL 5fa851fb8f13bcc3bdbf9d07c2af75295c3014a52b65e723e8ce9c9186af5c7a6a49df45cd3a9115fce562676df1ee07c1df68c6a19fec3e4f6134a528b5fe4b
+DIST gri-2.12.23.tar.gz 1668587 SHA256 a24e703f30250ed705c0a242aa59a24748259ea7355fca52152f367f45bfd2e7 SHA512 0b028c56e9603fd00480ad7a92461c1e60f7879d89bffb5b83a2ee52c8870546e584c75478777dbb2d4934095fe9a9d4efd2aa2ff756c1860459a1e0cc0b4216 WHIRLPOOL f272827cfa5fa65604dc2a116660a78b7b0ac1df6d5ddacd943fae5ab258d05546285bffb89779aabe710c79a04d3f665b25484af3bbf5ffa1762ca3cee0c245
diff --git a/sci-visualization/gri/files/50gri-gentoo.el b/sci-visualization/gri/files/50gri-gentoo.el
new file mode 100644
index 00000000000..e07d47c854a
--- /dev/null
+++ b/sci-visualization/gri/files/50gri-gentoo.el
@@ -0,0 +1,3 @@
+(add-to-list 'load-path "@SITELISP@")
+(autoload 'gri-mode "gri-mode" "Enter Gri-mode." t)
+(add-to-list 'auto-mode-alist '("\\.gri\\'" . gri-mode))
diff --git a/sci-visualization/gri/files/gri-2.12.18-postscript.patch b/sci-visualization/gri/files/gri-2.12.18-postscript.patch
new file mode 100644
index 00000000000..b3f3b730197
--- /dev/null
+++ b/sci-visualization/gri/files/gri-2.12.18-postscript.patch
@@ -0,0 +1,97 @@
+diff -Naur gri-2.12.18/src/extern.hh gri-2.12.18.new/src/extern.hh
+--- gri-2.12.18/src/extern.hh 2003-06-07 13:37:55.000000000 -0400
++++ gri-2.12.18.new/src/extern.hh 2008-11-01 10:46:40.000000000 -0400
+@@ -137,6 +137,7 @@
+
+ extern int _arrow_type;
+ extern bool _warn_offpage;
++extern bool _export_postscript;
+
+ extern std::vector<double> _dash;
+
+diff -Naur gri-2.12.18/src/gr.cc gri-2.12.18.new/src/gr.cc
+--- gri-2.12.18/src/gr.cc 2008-09-04 13:32:21.000000000 -0400
++++ gri-2.12.18.new/src/gr.cc 2008-11-01 10:52:24.000000000 -0400
+@@ -397,7 +397,16 @@
+ /*
+ * write conforming postscript prolog
+ */
+- fprintf(fp, "%%!PS-Adobe-2.0 EPSF-1.2\n");
++ //fprintf(fp, "%%!PS-Adobe-2.0 EPSF-1.2\n");
++ extern bool _export_postscript;
++ if (_export_postscript)
++ {
++ fprintf(fp, "%%!PS-Adobe-2.0\n");
++ }
++ else
++ {
++ fprintf(fp, "%%!PS-Adobe-2.0 EPSF-1.2\n");
++ }
+ if (privacy)
+ fprintf(fp, "%%%%Creator: %s\n", "");
+ else
+diff -Naur gri-2.12.18/src/gri.cc gri-2.12.18.new/src/gri.cc
+--- gri-2.12.18/src/gri.cc 2006-06-16 19:18:40.000000000 -0400
++++ gri-2.12.18.new/src/gri.cc 2008-11-01 10:46:40.000000000 -0400
+@@ -35,6 +35,7 @@
+ // Globals used elsewhere (variables begin with _).
+ int _arrow_type;
+ bool _warn_offpage;
++bool _export_postscript;
+ std::vector<double> _dash;
+ std::vector<DataFile> _dataFILE;
+ std::vector<CmdFile> _cmdFILE;
+diff -Naur gri-2.12.18/src/startup.cc gri-2.12.18.new/src/startup.cc
+--- gri-2.12.18/src/startup.cc 2008-06-12 08:57:26.000000000 -0400
++++ gri-2.12.18.new/src/startup.cc 2008-11-01 10:57:26.000000000 -0400
+@@ -188,6 +188,7 @@
+ _axes_offset = 0.0;
+ _use_default_for_query = false;
+ _warn_offpage = true;
++ _export_postscript = false;
+ PUT_VAR("..use_default_for_query..", 0.0);
+ PUT_VAR("..words_in_dataline..", 0.0); // just in case tested
+ PUT_VAR("..batch..", 0.0);
+@@ -681,6 +682,7 @@
+ #define FLAG_PUBLICATION 1009
+ #define FLAG_SUPERUSER 1010
+ #define FLAG_WARN_OFFPAGE 1011
++#define FLAG_POSTSCRIPT 1012
+ // I use the 'FLAG_...' numbers for options that lack single-character abbreviations.
+ static struct poptOption optionsTable[] = {
+ { "batch", 'b', POPT_ARG_NONE | POPT_ARGFLAG_ONEDASH, NULL, 'b' },
+@@ -703,6 +705,7 @@
+ { "version", 'v', POPT_ARG_NONE | POPT_ARGFLAG_ONEDASH, NULL, 'v' },
+ { "warn_offpage", '\0', POPT_ARG_NONE | POPT_ARGFLAG_ONEDASH, NULL, FLAG_WARN_OFFPAGE },
+ { "yes", 'y', POPT_ARG_NONE | POPT_ARGFLAG_ONEDASH, NULL, 'y' },
++ { "postscript", '\0', POPT_ARG_NONE | POPT_ARGFLAG_ONEDASH, NULL, FLAG_POSTSCRIPT },
+ { 0, 0, 0, 0, 0 }
+ };
+ const poptContext optCon =
+@@ -872,6 +875,8 @@
+ printf("Gri cannot read in '%s'\n",optArg);
+ }
+ break;
++ case FLAG_POSTSCRIPT
++ _export_postscript = true;
+ default:
+ printf("Unknown option\n");
+ break;
+@@ -1058,6 +1063,8 @@
+ } else if (!strcmp(argv[i], "-y") || !strcmp(argv[i], "-yes")) {
+ _use_default_for_query = true;
+ PUT_VAR("..use_default_for_query..", 1.0);
++ } else if (!strcmp(argv[i], "-postscript")){
++ _export_postscript = true;
+ #if 0
+ } else if (!strcmp(argv[i], "-e")) {
+ // User wants to do cmd in argv[i+1]
+@@ -1190,6 +1197,8 @@
+ gr_textput(" Makes Gri print out command lines as they are executed.\n");
+ gr_textput(" -true or -y\n");
+ gr_textput(" Makes Gri think the answer to all `query's is RETURN.\n");
++ gr_textput(" -postscript\n");
++ gr_textput(" Export a PostScript file instead of an EPS file.\n");
+ #if 0
+ gr_textput(" -e cmd\n");
+ gr_textput(" BUG: NOT IMPLEMENTED YET!\n");
diff --git a/sci-visualization/gri/files/gri-2.12.23-perl-5.16.patch b/sci-visualization/gri/files/gri-2.12.23-perl-5.16.patch
new file mode 100644
index 00000000000..14c89978ce7
--- /dev/null
+++ b/sci-visualization/gri/files/gri-2.12.23-perl-5.16.patch
@@ -0,0 +1,23 @@
+ doc/texinfo2HTML | 6 +++---
+ 1 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/doc/texinfo2HTML b/doc/texinfo2HTML
+index 39bed0e..43d3fe6 100755
+--- a/doc/texinfo2HTML
++++ b/doc/texinfo2HTML
+@@ -54,12 +54,12 @@ BUGS:
+ the end is here} and more blah
+ will not get the \@code{} item converted correctly.
+ ";
+-require "ctime.pl";
+-require "getopts.pl";
++use POSIX qw(strftime ctime);
++use Getopt::Std;
+
+ $debug = 0;
+
+-die if !&Getopts('h');
++die if !getopts('h');
+ $print_help = 0;
+ $print_help = $opt_h if $opt_h;
+ if ($print_help) {
diff --git a/sci-visualization/gri/files/gri-2.12.23-texinfo5.patch b/sci-visualization/gri/files/gri-2.12.23-texinfo5.patch
new file mode 100644
index 00000000000..dfc56fc574b
--- /dev/null
+++ b/sci-visualization/gri/files/gri-2.12.23-texinfo5.patch
@@ -0,0 +1,32 @@
+From 93a40c0b444fb5265b21a344b884b1c7bed49b5a Mon Sep 17 00:00:00 2001
+From: Dan Kelley <kelley.dan@gmail.com>
+Date: Mon, 5 Aug 2013 21:01:46 -0300
+Subject: [PATCH] Bug#718821 fixed
+
+Problem with a subsubsection following a section.
+---
+ doc/gri.texi | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/doc/gri.texi b/doc/gri.texi
+index 57c5e76..d16b6ff 100644
+--- a/doc/gri.texi
++++ b/doc/gri.texi
+@@ -18486,7 +18486,7 @@ Versions exist for MSDOS, windows, and Linux operating systems.
+ (Actually, the windows version is just the MSDOS version, which can be
+ run inside an msdos window within windows-95, windows-NT, etc.)
+
+-@subsubsection MSDOS Operating System
++@subsection MSDOS Operating System
+ @cindex compilation under MSDOS
+ @cindex MSDOS compilation
+
+@@ -18543,7 +18543,7 @@ To view the output, use a PostScript viewer such as GSview.
+
+
+
+-@subsubsection LINUX Operating System
++@subsection LINUX Operating System
+ @cindex compilation under Linux
+ @cindex linux compilation
+ @cindex LINUX compilation
diff --git a/sci-visualization/gri/gri-2.12.19.ebuild b/sci-visualization/gri/gri-2.12.19.ebuild
new file mode 100644
index 00000000000..754c65e08e2
--- /dev/null
+++ b/sci-visualization/gri/gri-2.12.19.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=2
+
+inherit eutils elisp-common
+
+DESCRIPTION="language for scientific graphics programming"
+HOMEPAGE="http://gri.sourceforge.net/"
+SRC_URI="mirror://sourceforge/gri/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86"
+IUSE="doc emacs examples"
+RESTRICT="test"
+
+DEPEND=">=sci-libs/netcdf-3.5.0
+ virtual/latex-base
+ media-gfx/imagemagick[png]
+ app-text/ghostscript-gpl
+ emacs? ( virtual/emacs )"
+
+RDEPEND="${DEPEND}"
+
+SITEFILE="50gri-gentoo.el"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-2.12.18-postscript.patch
+}
+
+src_compile() {
+ VARTEXFONTS="${T}/fonts" emake || die
+ if use emacs; then
+ elisp-compile src/*.el || die
+ fi
+}
+
+src_install() {
+ # Replace PREFIX now and correct paths in the startup message.
+ sed -e s,PREFIX/share/gri/doc/,/usr/share/doc/${P}/, -i "${S}/src/startup.msg"
+
+ einstall || die
+
+ # license text not necessary
+ rm "${D}"/usr/share/gri/doc/license.txt
+
+ # install target installs it always and in the wrong location
+ # remove it here and call elisp-install in case of USE=emacs below
+ rm -rf "${D}"/usr/share/emacs
+
+ if ! use doc; then
+ sed -e "s/Manual at.*//" -i "${D}"/usr/share/gri/startup.msg
+ rm "${D}"/usr/share/gri/doc/cmdrefcard.ps
+ rm "${D}"/usr/share/gri/doc/refcard.ps
+ rm -rf "${D}"/usr/share/gri/doc/html
+ fi
+ if ! use examples; then
+ sed -e "s/Examples at.*//" -i "${D}"/usr/share/gri/startup.msg
+ rm -rf "${D}"/usr/share/gri/doc/examples
+ fi
+
+ dodoc README
+
+ #move docs to the proper place
+ mv "${D}"/usr/share/gri/doc/* "${D}/usr/share/doc/${PF}"
+ rmdir "${D}/usr/share/gri/doc/"
+
+ if use emacs; then
+ cd src
+ elisp-install ${PN} *.{el,elc} || die
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}" \
+ || die
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/sci-visualization/gri/gri-2.12.23.ebuild b/sci-visualization/gri/gri-2.12.23.ebuild
new file mode 100644
index 00000000000..6f551067aec
--- /dev/null
+++ b/sci-visualization/gri/gri-2.12.23.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils elisp-common
+
+DESCRIPTION="Language for scientific graphics programming"
+HOMEPAGE="http://gri.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux"
+IUSE="doc emacs examples hdf5"
+
+DEPEND="
+ >=sci-libs/netcdf-4
+ virtual/latex-base
+ || ( media-gfx/imagemagick[png] media-gfx/graphicsmagick[png,imagemagick] )
+ app-text/ghostscript-gpl
+ emacs? ( virtual/emacs )"
+RDEPEND="${DEPEND}"
+
+SITEFILE="50gri-gentoo.el"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${PN}-2.12.18-postscript.patch \
+ "${FILESDIR}"/${P}-perl-5.16.patch \
+ "${FILESDIR}"/${P}-texinfo5.patch
+ # Makefile.am contains a call to the missing script that triggers gentoo qa
+ sed -i -e 's|${SHELL} ../missing --run tex|tex|g' \
+ doc/Makefile.in || die
+ sed \
+ -e "/system/d" \
+ -i doc/tst_suite/tst_rpn.gri || die
+}
+
+src_compile() {
+ # gentoo bug #302621
+ use hdf5 && has_version sci-libs/hdf5[mpi] && \
+ export CXX=mpicxx CC=mpicc
+ VARTEXFONTS="${T}/fonts" emake
+ use emacs && elisp-compile src/*.el
+}
+
+src_install() {
+ default
+ # license text not necessary
+ rm "${ED}"/usr/share/gri/doc/license.txt || die
+
+ # install target installs it always and in the wrong location
+ # remove it here and call elisp-install in case of USE=emacs below
+ rm -rf "${ED}"/usr/share/emacs || die
+
+ if ! use doc; then
+ sed -i -e "s/Manual at.*//" "${ED}"/usr/share/gri/startup.msg || die
+ rm "${ED}"/usr/share/gri/doc/{cmd,}refcard.ps || die
+ rm -rf "${ED}"/usr/share/gri/doc/html || die
+ fi
+ if ! use examples; then
+ sed -i -e "s/Examples at.*//" "${ED}"/usr/share/gri/startup.msg || die
+ rm -rf "${ED}"/usr/share/gri/doc/examples || die
+ fi
+ #move docs to the proper place
+ use doc || use examples && \
+ mv -f "${ED}"/usr/share/gri/doc/* "${ED}"/usr/share/doc/${PF}
+ rm -rf "${ED}"/usr/share/gri/doc || die
+
+ if use emacs; then
+ cd src
+ elisp-install ${PN} *.{el,elc}
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/sci-visualization/gri/metadata.xml b/sci-visualization/gri/metadata.xml
new file mode 100644
index 00000000000..afedbe7220b
--- /dev/null
+++ b/sci-visualization/gri/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <longdescription lang="en">
+ Gri is a language for scientific graphics programming. The word
+ "language" is important: Gri is command-driven, not
+ point/click. Some users liken Gri to LaTeX, since both provide
+ extensive power in exchange for patience in learning syntax. Gri can
+ make x-y graphs, contour graphs, and image graphs, in PostScript and
+ (someday) SVG formats. Control is provided over all aspects of
+ drawing, e.g. line widths, colors, and fonts. A TeX-like syntax
+ provides common mathematical symbols.
+</longdescription>
+ <upstream>
+ <remote-id type="sourceforge">gri</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sci-visualization/gwyddion/Manifest b/sci-visualization/gwyddion/Manifest
new file mode 100644
index 00000000000..16e036ba67f
--- /dev/null
+++ b/sci-visualization/gwyddion/Manifest
@@ -0,0 +1 @@
+DIST gwyddion-2.39.tar.xz 3130844 SHA256 f2346a706fa097e9186339f7e10b7837b20ce403b44bc7a85bc78b6b78a506d2 SHA512 5b9631c9eeb71a10d0be3533585eb61e8d27bc1147a1f3cf1ca333020271b579025ce752d302bd9474f1b3ed8c55ce679ac6a75bfb4a1093adef0727b824d435 WHIRLPOOL 90262b86d1bb01b6fdf5a67b447dc1177a523df368fbd040a87d7261e071844b86624dd6bb303c8a32302d16e5f7cb11e5f0744b2808e4f6d467cd27652efe23
diff --git a/sci-visualization/gwyddion/files/gwyddion-2.25-libpng15.patch b/sci-visualization/gwyddion/files/gwyddion-2.25-libpng15.patch
new file mode 100644
index 00000000000..f13eaa985ad
--- /dev/null
+++ b/sci-visualization/gwyddion/files/gwyddion-2.25-libpng15.patch
@@ -0,0 +1,10 @@
+--- modules/file/pixmap.c
++++ modules/file/pixmap.c
+@@ -39,6 +39,7 @@
+ #include <gtk/gtk.h>
+
+ #ifdef HAVE_PNG
++#include <zlib.h>
+ #include <png.h>
+ #endif
+
diff --git a/sci-visualization/gwyddion/files/gwyddion-2.30-BGRA.patch b/sci-visualization/gwyddion/files/gwyddion-2.30-BGRA.patch
new file mode 100644
index 00000000000..c3b59122b99
--- /dev/null
+++ b/sci-visualization/gwyddion/files/gwyddion-2.30-BGRA.patch
@@ -0,0 +1,22 @@
+Index: libgwydgets/gwy3dview.c
+===================================================================
+--- libgwydgets/gwy3dview.c (revision 13961)
++++ libgwydgets/gwy3dview.c (working copy)
+@@ -48,7 +48,6 @@
+ #include <GL/glext.h>
+ #endif
+ #endif
+-#endif
+
+ #ifndef GL_BGRA
+ #ifdef GL_BGRA_EXT
+@@ -57,6 +56,7 @@
+ #error FIXME: GL_BGRA is not available, should work around it.
+ #endif
+ #endif
++#endif
+
+ #include <libgwyddion/gwymacros.h>
+ #include <libgwyddion/gwymath.h>
+
+
diff --git a/sci-visualization/gwyddion/files/gwyddion-2.30-color-button-debris-crash.patch b/sci-visualization/gwyddion/files/gwyddion-2.30-color-button-debris-crash.patch
new file mode 100644
index 00000000000..e6ceedf919e
--- /dev/null
+++ b/sci-visualization/gwyddion/files/gwyddion-2.30-color-button-debris-crash.patch
@@ -0,0 +1,37 @@
+Index: modules/file/pixmap.c
+===================================================================
+--- modules/file/pixmap.c (revision 13902)
++++ modules/file/pixmap.c (revision 13903)
+@@ -2933,8 +2933,6 @@
+ gwy_rgba_to_gdk_color(&controls->args->inset_color, &gdkcolor);
+
+ dialog = gtk_color_selection_dialog_new(_("Change Inset Color"));
+- if (gtk_major_version == 2 && gtk_minor_version < 10)
+-
+ selector = GTK_COLOR_SELECTION_DIALOG(dialog)->colorsel;
+ gtk_color_selection_set_current_color(GTK_COLOR_SELECTION(selector),
+ &gdkcolor);
+Index: libgwydgets/gwygraphareadialog.c
+===================================================================
+--- libgwydgets/gwygraphareadialog.c (revision 13902)
++++ libgwydgets/gwygraphareadialog.c (revision 13903)
+@@ -383,7 +383,6 @@
+ dialog->color_dialog = selector;
+ dialog->old_color = cmodel->color;
+
+- if (gtk_major_version == 2 && gtk_minor_version < 10)
+ colorsel = GTK_COLOR_SELECTION_DIALOG(selector)->colorsel;
+ g_signal_connect(selector, "response",
+ G_CALLBACK(colorsel_response_cb), dialog);
+Index: libgwydgets/gwydgetutils.c
+===================================================================
+--- libgwydgets/gwydgetutils.c (revision 13902)
++++ libgwydgets/gwydgetutils.c (revision 13903)
+@@ -561,7 +561,6 @@
+ dialog = gtk_color_selection_dialog_new(dialog_title
+ ? dialog_title
+ : _("Change Mask Color"));
+- if (gtk_major_version == 2 && gtk_minor_version < 10)
+ selector = GTK_COLOR_SELECTION_DIALOG(dialog)->colorsel;
+ gtk_color_selection_set_current_color(GTK_COLOR_SELECTION(selector),
+ &gdkcolor);
diff --git a/sci-visualization/gwyddion/gwyddion-2.39.ebuild b/sci-visualization/gwyddion/gwyddion-2.39.ebuild
new file mode 100644
index 00000000000..028a8e1b9c3
--- /dev/null
+++ b/sci-visualization/gwyddion/gwyddion-2.39.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+AUTOTOOLS_IN_SOURCE_BUILD=1
+
+inherit autotools-utils fdo-mime gnome2-utils python-single-r1
+
+DESCRIPTION="Framework for Scanning Mode Microscopy data analysis"
+HOMEPAGE="http://gwyddion.net/"
+SRC_URI="http://gwyddion.net/download/${PV}/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux"
+IUSE="doc fits fftw gnome kde nls opengl perl python ruby sourceview xml X"
+
+RDEPEND="
+ media-libs/libpng:0
+ x11-libs/cairo
+ x11-libs/gtk+:2
+ x11-libs/libXmu
+ x11-libs/pango
+ fits? ( sci-libs/cfitsio )
+ fftw? ( sci-libs/fftw:3.0 )
+ gnome? ( gnome-base/gconf:2 )
+ kde? ( kde-base/kdelibs:4 )
+ opengl? ( virtual/opengl x11-libs/gtkglext )
+ perl? ( dev-lang/perl )
+ python? (
+ ${PYTHON_DEPS}
+ dev-python/pygtk:2[${PYTHON_USEDEP}]
+ )
+ ruby? ( dev-ruby/narray )
+ sourceview? ( x11-libs/gtksourceview:2.0 )
+ xml? ( dev-libs/libxml2:2 )"
+
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ doc? ( dev-util/gtk-doc )
+"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+MAKEOPTS+=" V=1"
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_configure() {
+ local myeconfargs=(
+ --disable-rpath
+ $(use_enable doc gtk-doc)
+ $(use_enable nls)
+ $(use_enable python pygwy)
+ $(use_enable fits cfitsio)
+ $(use_with perl)
+ $(use_with python)
+ $(use_with ruby)
+ $(use_with fftw fftw3)
+ $(use_with opengl gl) \
+ $(use_with sourceview gtksourceview)
+ $(use_with xml libxml2)
+ $(use_with X x)
+ $(use_with kde kde4-thumbnailer)
+ )
+ autotools-utils_src_configure
+}
+
+src_install() {
+ autotools-utils_src_install
+ use python && dodoc modules/pygwy/README.pygwy
+}
+
+pkg_postinst() {
+ use gnome && gnome2_gconf_install
+ fdo-mime_desktop_database_update
+}
+
+pkg_prerm() {
+ use gnome && gnome2_gconf_uninstall
+}
+
+pkg_postrm() {
+ fdo-mime_desktop_database_update
+}
diff --git a/sci-visualization/gwyddion/metadata.xml b/sci-visualization/gwyddion/metadata.xml
new file mode 100644
index 00000000000..2079a95b89c
--- /dev/null
+++ b/sci-visualization/gwyddion/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <longdescription lang="en">
+ Gwyddion is a modular program for SPM data analysis. Primarily it is
+ supposed to be used for analysis of height fields obtained by means of
+ scanning probe microscopy techniques (AFM, MFM, STM, NSOM), but
+ generally it can be used for any other height field analysis or
+ image analysis.
+</longdescription>
+ <use>
+ <flag name="sourceview">
+ Enable support for <pkg>x11-libs/gtksourceview</pkg>
+ </flag>
+ </use>
+ <use>
+ <flag name="fits">
+ Enable FITS image import via <pkg>sci-libs/cfitsio</pkg>
+ </flag>
+ </use>
+</pkgmetadata>
diff --git a/sci-visualization/kst/Manifest b/sci-visualization/kst/Manifest
new file mode 100644
index 00000000000..ecba3567ba0
--- /dev/null
+++ b/sci-visualization/kst/Manifest
@@ -0,0 +1,2 @@
+DIST Kst-2.0.7.tar.gz 11706657 SHA256 0ef0e1e85fa90472447eb53ee560970635532d2013d200d99ebdd105bd2eecee SHA512 d68968b9d161b74c42da87a3e5d9a2ade14e4c13e61526a0ef1e53538334b806d7f28ce3717e5a8ff85802b94aa2d7551422b873df5f180782994409ebc7ce17 WHIRLPOOL 654e054ceee5bb40de3a07d1a073c7192902616b018d355faa53770ed965eaf2dc83447f828af323401099a419ba2bfabfaacf77053e2ed4c79c123586683d3d
+DIST Kst-2.0.8.tar.gz 14527129 SHA256 cefbfd3e3710771985e08f02a397ef8ab407168fa8415d2c3c5740c031af18c6 SHA512 81be1e9ef189dbf087c5626b984297d4c8f84f22fce50c4933ea467a65f8595c0254af78d55f2b2e324934346f0758b7a0cf48d06d1108026b60b7ffba1221fb WHIRLPOOL d143cd2c88e7dcff1aeb53375272cf4b7a60f546a9c8dbd76bf8c9933575ab6fbb5f7e5f82f793dbde19d523af9314eeb8efecb8e82f30b3846ebf9d222d27d1
diff --git a/sci-visualization/kst/files/kst-2.0.7-cfitsio-includes.patch b/sci-visualization/kst/files/kst-2.0.7-cfitsio-includes.patch
new file mode 100644
index 00000000000..57238f8964e
--- /dev/null
+++ b/sci-visualization/kst/files/kst-2.0.7-cfitsio-includes.patch
@@ -0,0 +1,26 @@
+diff --git a/src/datasources/lfiio/lfiio.h b/src/datasources/lfiio/lfiio.h
+index bb6493c..8ed748c 100644
+--- a/src/datasources/lfiio/lfiio.h
++++ b/src/datasources/lfiio/lfiio.h
+@@ -18,7 +18,7 @@
+
+ #include <datasource.h>
+ #include <dataplugin.h>
+-#include <libcfitsio0/fitsio.h>
++#include <fitsio.h>
+
+ class LFIIOSource : public Kst::DataSource {
+ Q_OBJECT
+diff --git a/src/datasources/planckIDEF/planckIDEF.h b/src/datasources/planckIDEF/planckIDEF.h
+index 7fb226f..6e6d82f 100644
+--- a/src/datasources/planckIDEF/planckIDEF.h
++++ b/src/datasources/planckIDEF/planckIDEF.h
+@@ -16,7 +16,7 @@
+
+ #include <datasource.h>
+ #include <dataplugin.h>
+-#include <libcfitsio0/fitsio.h>
++#include <fitsio.h>
+
+ typedef struct {
+ QString file;
diff --git a/sci-visualization/kst/kst-2.0.7.ebuild b/sci-visualization/kst/kst-2.0.7.ebuild
new file mode 100644
index 00000000000..cf631d04cec
--- /dev/null
+++ b/sci-visualization/kst/kst-2.0.7.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+CMAKE_USE_DIR=${S}/cmake
+MY_PN="Kst"
+inherit cmake-utils multilib
+
+DESCRIPTION="Fast real-time large-dataset viewing and plotting tool for KDE4"
+HOMEPAGE="http://kst.kde.org/"
+SRC_URI="mirror://sourceforge/${PN}/${MY_PN}-${PV}.tar.gz"
+
+LICENSE="GPL-2 LGPL-2 FDL-1.2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug +qt4 qt5 test"
+
+REQUIRED_USE="^^ ( qt4 qt5 )"
+
+RESTRICT="test"
+
+RDEPEND="
+ qt4? (
+ dev-qt/qtcore:4
+ || ( ( >=dev-qt/qtgui-4.8.5:4 dev-qt/designer:4 ) <dev-qt/qtgui-4.8.5:4 )
+ dev-qt/qtopengl:4
+ dev-qt/qtsvg:4
+ )
+ qt5? (
+ dev-qt/qtconcurrent:5
+ dev-qt/qtcore:5
+ dev-qt/designer:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtopengl:5
+ dev-qt/qtprintsupport:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ )
+ sci-libs/cfitsio
+ sci-libs/getdata
+ sci-libs/gsl
+ sci-libs/netcdf-cxx:3
+"
+DEPEND="${RDEPEND}
+ test? ( dev-qt/qttest:4 )
+"
+
+DOCS=( AUTHORS ChangeLog )
+PATCHES=( "${FILESDIR}/${PN}-2.0.7-cfitsio-includes.patch" )
+
+src_configure() {
+ local mycmakeargs=(
+ -Dkst_install_libdir=$(get_libdir)
+ -Dkst_pch=OFF
+ -Dkst_release=$(usex debug OFF ON)
+ -Dkst_rpath=OFF
+ -Dkst_svnversion=OFF
+ $(cmake-utils_use test kst_test)
+ $(cmake-utils_use qt5 kst_qt5)
+ )
+ cmake-utils_src_configure
+}
diff --git a/sci-visualization/kst/kst-2.0.8.ebuild b/sci-visualization/kst/kst-2.0.8.ebuild
new file mode 100644
index 00000000000..9282a5e698d
--- /dev/null
+++ b/sci-visualization/kst/kst-2.0.8.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit cmake-utils multilib
+
+MY_P=Kst-${PV}
+
+DESCRIPTION="Fast real-time large-dataset viewing and plotting tool"
+HOMEPAGE="http://kst.kde.org/"
+SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.gz"
+
+LICENSE="GPL-2 LGPL-2 FDL-1.2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug +qt4 qt5 test"
+
+REQUIRED_USE="^^ ( qt4 qt5 )"
+
+RESTRICT="test"
+
+RDEPEND="
+ qt4? (
+ dev-qt/designer:4
+ dev-qt/qtcore:4
+ dev-qt/qtgui:4
+ dev-qt/qtopengl:4
+ dev-qt/qtsvg:4
+ )
+ qt5? (
+ dev-qt/designer:5
+ dev-qt/qtconcurrent:5
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtnetwork:5
+ dev-qt/qtopengl:5
+ dev-qt/qtprintsupport:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtxml:5
+ )
+ sci-libs/cfitsio
+ sci-libs/getdata
+ sci-libs/gsl
+ sci-libs/netcdf-cxx:3
+"
+DEPEND="${RDEPEND}
+ test? ( dev-qt/qttest:4 )
+"
+
+S=${WORKDIR}/${MY_P}
+
+DOCS=( AUTHORS README.kstScript )
+
+src_configure() {
+ local mycmakeargs=(
+ -Dkst_install_libdir="$(get_libdir)"
+ -Dkst_pch=OFF
+ -Dkst_release=$(usex debug OFF ON)
+ -Dkst_rpath=OFF
+ -Dkst_svnversion=OFF
+ $(cmake-utils_use test kst_test)
+ $(cmake-utils_use qt5 kst_qt5)
+ )
+ cmake-utils_src_configure
+}
diff --git a/sci-visualization/kst/metadata.xml b/sci-visualization/kst/metadata.xml
new file mode 100644
index 00000000000..7d74aa46f82
--- /dev/null
+++ b/sci-visualization/kst/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>qt</herd>
+ <upstream>
+ <remote-id type="sourceforge">kst</remote-id>
+ <bugs-to>http://bugs.kde.org/</bugs-to>
+ </upstream>
+</pkgmetadata>
diff --git a/sci-visualization/labplot/Manifest b/sci-visualization/labplot/Manifest
new file mode 100644
index 00000000000..7399f7078aa
--- /dev/null
+++ b/sci-visualization/labplot/Manifest
@@ -0,0 +1 @@
+DIST labplot-2.0.2.tar.xz 2696384 SHA256 f52e00006e2ce87aeda5bf15b950155e5db71cde4b0e1fb0819b6e71aaf6dee0 SHA512 6fb78f7f36dfd961690e4062646401fde86054323ffbf1d90986ae686201ad9f1bd5f2e6a914545f10d085355c490d63399ce92197770d7fb0cfccc91e24421b WHIRLPOOL 677f40ffb5cf151a160148da25cc364a6de62cfa5829bf70d4486e072ed05b6831d3975d31fa2ad6ef7c698b4abb44bdfd86efd9d29d1670e0bd5e57f9c4314e
diff --git a/sci-visualization/labplot/labplot-2.0.2.ebuild b/sci-visualization/labplot/labplot-2.0.2.ebuild
new file mode 100644
index 00000000000..93da819c637
--- /dev/null
+++ b/sci-visualization/labplot/labplot-2.0.2.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+if [[ "${PV}" != "9999" ]]; then
+ KEYWORDS="~amd64 ~x86"
+ SRC_URI="mirror://kde/stable/${PN}/${PV}/src/${P}.tar.xz"
+ inherit kde4-base
+else
+ EGIT_REPO_URI="git://anongit.kde.org/labplot"
+ inherit kde4-base git-r3
+fi
+
+MY_PN=LabPlot
+MY_P=${MY_PN}-${PV}
+
+DESCRIPTION="KDE data analysis and visualisation program"
+HOMEPAGE="https://edu.kde.org/applications/science/labplot/"
+
+LICENSE="GPL-2"
+SLOT="4"
+IUSE=""
+
+DEPEND="
+ sci-libs/gsl
+"
+RDEPEND="$DEPEND"
diff --git a/sci-visualization/labplot/labplot-9999.ebuild b/sci-visualization/labplot/labplot-9999.ebuild
new file mode 100644
index 00000000000..93da819c637
--- /dev/null
+++ b/sci-visualization/labplot/labplot-9999.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+if [[ "${PV}" != "9999" ]]; then
+ KEYWORDS="~amd64 ~x86"
+ SRC_URI="mirror://kde/stable/${PN}/${PV}/src/${P}.tar.xz"
+ inherit kde4-base
+else
+ EGIT_REPO_URI="git://anongit.kde.org/labplot"
+ inherit kde4-base git-r3
+fi
+
+MY_PN=LabPlot
+MY_P=${MY_PN}-${PV}
+
+DESCRIPTION="KDE data analysis and visualisation program"
+HOMEPAGE="https://edu.kde.org/applications/science/labplot/"
+
+LICENSE="GPL-2"
+SLOT="4"
+IUSE=""
+
+DEPEND="
+ sci-libs/gsl
+"
+RDEPEND="$DEPEND"
diff --git a/sci-visualization/labplot/metadata.xml b/sci-visualization/labplot/metadata.xml
new file mode 100644
index 00000000000..7fd6fa820d1
--- /dev/null
+++ b/sci-visualization/labplot/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <herd>kde</herd>
+ <maintainer>
+ <email>dilfridge@gentoo.org</email>
+ <name>Andreas K. Huettel</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/sci-visualization/mayavi/Manifest b/sci-visualization/mayavi/Manifest
new file mode 100644
index 00000000000..466a71a2aed
--- /dev/null
+++ b/sci-visualization/mayavi/Manifest
@@ -0,0 +1 @@
+DIST mayavi-4.3.0.tar.gz 7669453 SHA256 ebad81222809d18ad443cd11d62e768998467064628f8c13786ac692dd858b8d SHA512 1530c194ba5f94d7a2767dbc0e704892520c24c2af5ea8977c791922fa8a1ddf780d1589bf38b4efe4b5bc779c1ef6358d9664963fa9d4c5a1e75f6500f4a974 WHIRLPOOL 4f187ce7c4c6e8f040ef49a9586b6ab796382fa20f04c0f5ddf0870f9418f3622a4ad9bc846e4dd390f9dcf4482df84fa6673d5a76de643886e87954622ada58
diff --git a/sci-visualization/mayavi/files/mayavi-4.1.0-vtkQt.patch b/sci-visualization/mayavi/files/mayavi-4.1.0-vtkQt.patch
new file mode 100644
index 00000000000..6f5834ce131
--- /dev/null
+++ b/sci-visualization/mayavi/files/mayavi-4.1.0-vtkQt.patch
@@ -0,0 +1,25 @@
+From 2fece6b29c9f3eefa523c8131cce02f724e437f3 Mon Sep 17 00:00:00 2001
+Message-Id: <2fece6b29c9f3eefa523c8131cce02f724e437f3.1330934918.git.jlec@gentoo.org>
+From: martin <martin@think.(none)>
+Date: Sun, 19 Feb 2012 10:43:39 -0500
+Subject: [PATCH] FIX: don't wrap vtkQt classes
+
+---
+ tvtk/code_gen.py | 1 +
+ 1 files changed, 1 insertions(+), 0 deletions(-)
+
+diff --git a/tvtk/code_gen.py b/tvtk/code_gen.py
+index f0b0b60..377801e 100644
+--- a/tvtk/code_gen.py
++++ b/tvtk/code_gen.py
+@@ -92,6 +92,7 @@ class TVTKGenerator:
+ #classes = dir(vtk)
+ classes = [x.name for x in wrap_gen.get_tree() \
+ if x.name.startswith('vtk') and \
++ not x.name.startswith('vtkQt') and \
+ not issubclass(getattr(vtk, x.name), object) ]
+ for nodes in tree:
+ for node in nodes:
+--
+1.7.8.5
+
diff --git a/sci-visualization/mayavi/files/mayavi-4.2.0-doc.patch b/sci-visualization/mayavi/files/mayavi-4.2.0-doc.patch
new file mode 100644
index 00000000000..1cdb129871e
--- /dev/null
+++ b/sci-visualization/mayavi/files/mayavi-4.2.0-doc.patch
@@ -0,0 +1,37 @@
+ setup.py | 16 ++++++++--------
+ 1 file changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/setup.py b/setup.py
+index 0177c44..58d13b0 100644
+--- a/setup.py
++++ b/setup.py
+@@ -300,14 +300,14 @@ class MyBuild(build.build):
+ """
+
+ def run(self):
+- build_tvtk_classes_zip()
++# build_tvtk_classes_zip()
+ build.build.run(self)
+- self.run_command('gen_docs')
+- try:
+- self.run_command('build_docs')
+- except:
+- log.warn("Couldn't build documentation:\n%s" %
+- traceback.format_exception(*sys.exc_info()))
++# self.run_command('gen_docs')
++# try:
++# self.run_command('build_docs')
++# except:
++# log.warn("Couldn't build documentation:\n%s" %
++# traceback.format_exception(*sys.exc_info()))
+
+
+
+@@ -494,6 +494,6 @@ numpy.distutils.core.setup(
+ license = "BSD",
+ long_description = '\n'.join(DOCLINES[3:]),
+ platforms = ["Windows", "Linux", "Mac OS-X", "Unix", "Solaris"],
+- zip_safe = False,
++ zip_safe = True,
+ **config
+ )
diff --git a/sci-visualization/mayavi/mayavi-4.3.0.ebuild b/sci-visualization/mayavi/mayavi-4.3.0.ebuild
new file mode 100644
index 00000000000..c02d00125eb
--- /dev/null
+++ b/sci-visualization/mayavi/mayavi-4.3.0.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit distutils-r1 virtualx
+
+DESCRIPTION="Enthought Tool Suite: Scientific data 3-dimensional visualizer"
+HOMEPAGE="
+ http://code.enthought.com/projects/mayavi/
+ http://pypi.python.org/pypi/mayavi/"
+SRC_URI="http://www.enthought.com/repo/ets/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="2"
+KEYWORDS="amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="doc examples test"
+
+RDEPEND="
+ >=dev-python/apptools-4[${PYTHON_USEDEP}]
+ dev-python/configobj[${PYTHON_USEDEP}]
+ >=dev-python/envisage-4[${PYTHON_USEDEP}]
+ dev-python/ipython[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pyface[${PYTHON_USEDEP}]
+ >=dev-python/traitsui-4[${PYTHON_USEDEP}]
+ dev-python/wxpython[${PYTHON_USEDEP}]"
+CDEPEND="sci-libs/vtk[python]"
+DEPEND="
+ ${CDEPEND}
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
+ test? (
+ ${RDEPEND}
+ dev-python/nose[${PYTHON_USEDEP}]
+ dev-python/wxpython[opengl]
+ media-fonts/font-cursor-misc
+ media-fonts/font-misc-misc
+ )"
+
+#DOCS="docs/*.txt"
+
+# testsuite is a trainwreck; https://github.com/enthought/mayavi/issues/66
+#RESTRICT="test"
+
+PATCHES=( "${FILESDIR}"/${PN}-4.2.0-doc.patch )
+
+python_compile_all() {
+ if use doc; then
+ ${PYTHON} setup.py gen_docs || die
+ ${PYTHON} setup.py build_docs || die
+ fi
+}
+
+python_test() {
+
+ VIRTUALX_COMMAND="nosetests" virtualmake
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+ use doc && dohtml -r docs/build/mayavi/html/
+
+ if use examples; then
+ docompress -x usr/share/doc/${PF}/examples/
+ insinto /usr/share/doc/${PF}
+ doins -r examples
+ fi
+
+ newicon mayavi/core/ui/images/m2.png mayavi2.png
+ make_desktop_entry ${PN}2 \
+ "Mayavi2 2D/3D Scientific Visualization" ${PN}2
+}
diff --git a/sci-visualization/mayavi/metadata.xml b/sci-visualization/mayavi/metadata.xml
new file mode 100644
index 00000000000..54bc70ee9f0
--- /dev/null
+++ b/sci-visualization/mayavi/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>sci</herd>
+<longdescription lang="en">
+ Mayavi2 is a general purpose, cross-platform tool for 3-D scientific
+ data visualization. Its features include:
+ * Visualization of scalar, vector and tensor data in 2 and 3 dimensions.
+ * Easy scriptability using Python.
+ * Easy extendibility via custom sources, modules, and data filters.
+ * Reading several file formats: VTK (legacy and XML), PLOT3D, etc.
+ * Saving of visualizations.
+ * Saving rendered visualization in a variety of image formats.
+ * Convenient functionality for rapid scientific plotting via mlab
+
+ Mayavi2 has been designed with scriptability and extensibility in
+ mind. Mayavi2 provides a mayavi2 application which is usable by
+ itself. However, Mayavi2 may also be used as a plotting engine, in
+ scripts, like with matplotlib or gnuplot, as well as a library for
+ interactive visualizations in any other application. It may also be
+ used as an Envisage plug-in which allows it to be embedded in other
+ Envisage based applications natively.
+</longdescription>
+</pkgmetadata>
diff --git a/sci-visualization/metadata.xml b/sci-visualization/metadata.xml
new file mode 100644
index 00000000000..5ac373c53d8
--- /dev/null
+++ b/sci-visualization/metadata.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE catmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<catmetadata>
+ <longdescription lang="en">
+ The sci-visualization category contains scientific visualization
+ applications.
+ </longdescription>
+ <longdescription lang="pt">
+ A categoria sci-visualization contém aplicações de visualização
+ científicas.
+ </longdescription>
+ <longdescription lang="de">
+ Diese Kategorie beinhaltet wissendschaftliche
+ Visualisierungssoftware.
+ </longdescription>
+ <longdescription lang="pl">
+ Kategoria sci-visualization zawiera programy naukowe zwiÄ…zane z
+ wizualizacjÄ….
+ </longdescription>
+ <longdescription lang="es">
+ La categoría sci-visualization contiene aplicaciones científicas
+ de visualización.
+ </longdescription>
+</catmetadata>
+
diff --git a/sci-visualization/nonolith-connect/Manifest b/sci-visualization/nonolith-connect/Manifest
new file mode 100644
index 00000000000..471b6ca7c6b
--- /dev/null
+++ b/sci-visualization/nonolith-connect/Manifest
@@ -0,0 +1 @@
+DIST nonolith-connect-1.1.tar.bz2 559686 SHA256 0cfda84d83df4efea7c2c9765a3576fecf92d04dc4fee76397f3843022c2e749 SHA512 41fe49a21a2f773c04c8054f322d17958b3eadac82e7013c50ff73c13dc31baa4905d52c02b5270d636fbb5348aff7ca8b064a30a81e970083abd6e69f93aff9 WHIRLPOOL 5e8f600708e67deda3580185e627f33c77db920e0c99a53c31b476bcde6f625a6ce909d993075a0643d5b0894625da30b0d398b89ae9195e3c086e53b82b7043
diff --git a/sci-visualization/nonolith-connect/files/1.0.1-cflags-respect.patch b/sci-visualization/nonolith-connect/files/1.0.1-cflags-respect.patch
new file mode 100644
index 00000000000..46e0aed1d1f
--- /dev/null
+++ b/sci-visualization/nonolith-connect/files/1.0.1-cflags-respect.patch
@@ -0,0 +1,69 @@
+--- SConstruct
++++ SConstruct
+@@ -1,7 +1,21 @@
+ import sys, os, shutil
++import SCons.Util
+
+ env = Environment()
+
++if os.environ.has_key('CC'):
++ env['CC'] = os.environ['CC']
++if os.environ.has_key('CFLAGS'):
++ env['CCFLAGS'] += SCons.Util.CLVar(os.environ['CFLAGS'])
++if os.environ.has_key('CXX'):
++ env['CXX'] = os.environ['CXX']
++if os.environ.has_key('CXXFLAGS'):
++ env['CXXFLAGS'] += SCons.Util.CLVar(os.environ['CXXFLAGS'])
++if os.environ.has_key('LDFLAGS'):
++ env['LINKFLAGS'] += SCons.Util.CLVar(os.environ['LDFLAGS'])
++if "$CCFLAGS" in env['CXXCOM']:
++ env['CXXCOM'] = env['CXXCOM'].replace("$CCFLAGS","")
++
+ opts = Variables()
+ opts.Add(BoolVariable("mingwcross", "Cross-compile with mingw for Win32", 0))
+ opts.Add(BoolVariable("boost_static", "Statically link against Boost", 0))
+@@ -101,8 +115,7 @@
+ sources = Glob('*.cpp') + ['cee/cee.cpp', 'bootloader/bootloader.cpp']
+
+ json = env.Library('json',
+- Glob('libjson/Source/*.cpp'),
+- CCFLAGS = "-c -O3 -ffast-math -fexpensive-optimizations".split()
++ Glob('libjson/Source/*.cpp')
+ )
+
+ websocketpp = env.Library('websocketpp', ['websocketpp/src/'+i for i in [
+@@ -113,7 +126,7 @@
+ 'websocket_session.cpp',
+ 'sha1/sha1.cpp',
+ 'base64/base64.cpp'
+- ]], CCFLAGS=['-g', '-O3'])
++ ]])
+
+
+ libusb_cflags = []
+@@ -127,14 +140,21 @@
+ libusb_os = ['os/poll_windows.c', 'os/windows_usb.c', 'os/threads_windows.c']
+ libusb_cflags += ['-D OS_WINDOWS', '-DPOLL_NFDS_TYPE=unsigned int', '-D WINVER=0x0501']
+
+-libusb = env.Library('libusb_nonolith', ['libusb/libusb/'+i for i in [
++env_libusb = env.Clone()
++env_libusb.Append(CPPFLAGS=libusb_cflags)
++env_libusb.Append(CFLAGS=['-Ilibusb', '-Ilibusb/libusb'])
++
++libusb = env_libusb.Library('libusb_nonolith', ['libusb/libusb/'+i for i in [
+ 'core.c',
+ 'descriptor.c',
+ 'io.c',
+ 'sync.c',
+- ]+libusb_os], CFLAGS=['-g', '-O3', '-Ilibusb', '-Ilibusb/libusb']+libusb_cflags)
+-
++ ]+libusb_os])
+
+ libs += boostlibs
+
+-env.Program('nonolith-connect', sources, LIBS=libs, CCFLAGS=['-Wall', '-g', '-O3', '-Ilibusb', '-Iwebsocketpp/src', '-shared', "-DVERSION='%s'"%version], FRAMEWORKS=frameworks)
++env_main = env.Clone()
++env_main.Append(CPPFLAGS=["-DVERSION='%s'"%version])
++env_main.Append(CXXFLAGS=['-Ilibusb', '-Iwebsocketpp/src', '-Wall'])
++#env_main.Append(LINKFLAGS=['-shared'])
++env_main.Program('nonolith-connect', sources, LIBS=libs, FRAMEWORKS=frameworks)
diff --git a/sci-visualization/nonolith-connect/files/1.1-cflags-respect.patch b/sci-visualization/nonolith-connect/files/1.1-cflags-respect.patch
new file mode 100644
index 00000000000..c6b04c5fe33
--- /dev/null
+++ b/sci-visualization/nonolith-connect/files/1.1-cflags-respect.patch
@@ -0,0 +1,70 @@
+diff -uNr nonolith-connect-1.1.ORIG/SConstruct nonolith-connect-1.1/SConstruct
+--- nonolith-connect-1.1.ORIG/SConstruct 2012-03-22 10:02:11.398944187 +0000
++++ nonolith-connect-1.1/SConstruct 2012-03-22 10:05:23.149936839 +0000
+@@ -1,7 +1,21 @@
+ import sys, os, shutil
++import SCons.Util
+
+ env = Environment()
+
++if os.environ.has_key('CC'):
++ env['CC'] = os.environ['CC']
++if os.environ.has_key('CFLAGS'):
++ env['CCFLAGS'] += SCons.Util.CLVar(os.environ['CFLAGS'])
++if os.environ.has_key('CXX'):
++ env['CXX'] = os.environ['CXX']
++if os.environ.has_key('CXXFLAGS'):
++ env['CXXFLAGS'] += SCons.Util.CLVar(os.environ['CXXFLAGS'])
++if os.environ.has_key('LDFLAGS'):
++ env['LINKFLAGS'] += SCons.Util.CLVar(os.environ['LDFLAGS'])
++if "$CCFLAGS" in env['CXXCOM']:
++ env['CXXCOM'] = env['CXXCOM'].replace("$CCFLAGS","")
++
+ opts = Variables()
+ opts.Add(BoolVariable("mingwcross", "Cross-compile with mingw for Win32", 0))
+ opts.Add(BoolVariable("boost_static", "Statically link against Boost", 0))
+@@ -95,8 +109,7 @@
+ sources = Glob('*.cpp') + Glob('streaming_device/*.cpp') + ['cee/cee.cpp', 'bootloader/bootloader.cpp']
+
+ json = env.Library('json',
+- Glob('libjson/Source/*.cpp'),
+- CCFLAGS = "-c -O3 -ffast-math -fexpensive-optimizations".split()
++ Glob('libjson/Source/*.cpp')
+ )
+
+ websocketpp = env.Library('websocketpp', ['websocketpp/src/'+i for i in [
+@@ -107,7 +120,7 @@
+ 'websocket_session.cpp',
+ 'sha1/sha1.cpp',
+ 'base64/base64.cpp'
+- ]], CCFLAGS=['-g', '-O3'])
++ ]])
+
+
+ libusb_cflags = []
+@@ -121,14 +134,22 @@
+ libusb_os = ['os/poll_windows.c', 'os/windows_usb.c', 'os/threads_windows.c']
+ libusb_cflags += ['-D OS_WINDOWS', '-DPOLL_NFDS_TYPE=unsigned int', '-D WINVER=0x0501']
+
+-libusb = env.Library('libusb_nonolith', ['libusb/libusb/'+i for i in [
++env_libusb = env.Clone()
++env_libusb.Append(CPPFLAGS=libusb_cflags)
++env_libusb.Append(CFLAGS=['-Ilibusb', '-Ilibusb/libusb'])
++
++libusb = env_libusb.Library('libusb_nonolith', ['libusb/libusb/'+i for i in [
+ 'core.c',
+ 'descriptor.c',
+ 'io.c',
+ 'sync.c',
+- ]+libusb_os], CFLAGS=['-g', '-O3', '-Ilibusb', '-Ilibusb/libusb']+libusb_cflags)
++ ]+libusb_os])
+
+
+ libs += boostlibs
+
+-env.Program('nonolith-connect', sources, LIBS=libs, CCFLAGS=['-Wall', '-g', '-O3', '-Ilibusb', '-Iwebsocketpp/src', '-shared'], FRAMEWORKS=frameworks)
++env_main = env.Clone()
++env_main.Append(CXXFLAGS=['-Ilibusb', '-Iwebsocketpp/src', '-Wall'])
++#env_main.Append(LINKFLAGS=['-shared'])
++env_main.Program('nonolith-connect', sources, LIBS=libs, FRAMEWORKS=frameworks)
++
diff --git a/sci-visualization/nonolith-connect/files/60-nonolith-connect.rules b/sci-visualization/nonolith-connect/files/60-nonolith-connect.rules
new file mode 100644
index 00000000000..63d44d042f1
--- /dev/null
+++ b/sci-visualization/nonolith-connect/files/60-nonolith-connect.rules
@@ -0,0 +1,3 @@
+SUBSYSTEM=="usb", ATTR{idVendor}=="59e3", ATTR{idProduct}=="cee1", GROUP:="nonolithd", MODE="0666"
+SUBSYSTEM=="usb", ATTR{idVendor}=="59e3", ATTR{idProduct}=="b003", GROUP:="nonolithd", MODE="0666"
+SUBSYSTEM=="usb", ATTR{idVendor}=="59e3", ATTR{idProduct}=="bbbb", GROUP:="nonolithd", MODE="0666"
diff --git a/sci-visualization/nonolith-connect/files/nonolith-connect.initd b/sci-visualization/nonolith-connect/files/nonolith-connect.initd
new file mode 100755
index 00000000000..42ce559b684
--- /dev/null
+++ b/sci-visualization/nonolith-connect/files/nonolith-connect.initd
@@ -0,0 +1,17 @@
+#!/sbin/runscript
+
+depend() {
+ after logger
+}
+
+start() {
+ ebegin "Starting nonolith-connect"
+ start-stop-daemon --start --quiet -b -m -p /var/run/nonolith-connect.pid -u nonolithd:usb --exec /usr/bin/nonolith-connect
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping nonolith-connect"
+ start-stop-daemon --stop --quiet -p /var/run/nonolith-connect.pid
+ eend $?
+}
diff --git a/sci-visualization/nonolith-connect/metadata.xml b/sci-visualization/nonolith-connect/metadata.xml
new file mode 100644
index 00000000000..f14f3973253
--- /dev/null
+++ b/sci-visualization/nonolith-connect/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <maintainer>
+ <email>chainsaw@gentoo.org</email>
+ <name>Tony Vroon</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/sci-visualization/nonolith-connect/nonolith-connect-1.1.ebuild b/sci-visualization/nonolith-connect/nonolith-connect-1.1.ebuild
new file mode 100644
index 00000000000..19ded55ce79
--- /dev/null
+++ b/sci-visualization/nonolith-connect/nonolith-connect-1.1.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils scons-utils toolchain-funcs user
+
+DESCRIPTION="CEE (Control - Experiment - Explore) analog multitool"
+HOMEPAGE="http://www.nonolithlabs.com/cee/"
+SRC_URI="http://apps.nonolithlabs.com/download/source/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+RDEPEND="
+ dev-libs/boost
+ virtual/udev"
+DEPEND="${RDEPEND}"
+
+PATCHES=( "${FILESDIR}/${PV}-cflags-respect.patch" )
+
+pkg_setup() {
+ tc-export CC CXX
+ enewuser nonolithd -1 -1 /dev/null usb
+}
+
+src_prepare() {
+ epatch ${PATCHES[@]}
+}
+
+src_configure() {
+ myesconsargs=(
+ boost_static=0
+ )
+}
+
+src_compile() {
+ escons
+}
+
+src_install() {
+ dobin nonolith-connect
+ newinitd "${FILESDIR}"/nonolith-connect.initd nonolith-connect
+}
+
+pkg_postinst() {
+ einfo "Consider adding nonolith-connect to the default runlevel."
+ einfo "Please connect your CEE hardware, start nonolith-connect "
+ einfo "using the init script provided and then visit:"
+ einfo "http://apps.nonolithlabs.com/setup"
+}
diff --git a/sci-visualization/opendx-samples/Manifest b/sci-visualization/opendx-samples/Manifest
new file mode 100644
index 00000000000..01d637888dc
--- /dev/null
+++ b/sci-visualization/opendx-samples/Manifest
@@ -0,0 +1,2 @@
+DIST dxsamples-4.4.0.tar.gz 7791659 SHA256 ec2277facc8cf0f095a7fc4cb58391e053d5fd26c90d4711c927d2897dc455d9 SHA512 ae740be888728750de2cf21e94094a4aa01adec8ea0cfe937f03a67803ad7cb0d92968c8d4325e22022c698f871d4af45df02d3b8e8639434a1001dd46e0b311 WHIRLPOOL 1bbdb989177df544dacec4760190b3344406578fef75fc68ba83610b2c97712df3388efe2f2614e97e31a5fd4c3ffc8c7147b2baaf5b083b774a67000fb53335
+DIST opendx-samples-4.4.0-install.patch.bz2 4195 SHA256 0afa8404017169bb7d0eeb89debebbe9c20e04dd353ec491f65728178e49759d SHA512 3c276355d0796b2713d42ea11ce34d02c72e5b679aff4feb9792ec58c8a3c6aed1d79981d09a93b842d6d47fdc6cacd5fca4fc96f88cc764a90a5adf10797fc6 WHIRLPOOL 7b51eb21cd6dd15868ae0f161b3a7a6a767cc67cb8407a694f8b470ed9b4de4926bcdff3b86485d1df915450fa84c2fcc09221d089d5b4decc0743eb28276436
diff --git a/sci-visualization/opendx-samples/files/opendx-samples-4.4.0-nojava.patch b/sci-visualization/opendx-samples/files/opendx-samples-4.4.0-nojava.patch
new file mode 100644
index 00000000000..984f84a1033
--- /dev/null
+++ b/sci-visualization/opendx-samples/files/opendx-samples-4.4.0-nojava.patch
@@ -0,0 +1,50 @@
+--- dxsamples-4.4.0/Makefile.am.nojava 2002-01-28 21:53:08.000000000 +0100
++++ dxsamples-4.4.0/Makefile.am 2006-09-03 01:40:26.000000000 +0200
+@@ -1,6 +1,6 @@
+ ## Process this file with automake to produce Makefile.in
+
+-SUBDIRS = callmodule data dxlink java macros \
++SUBDIRS = callmodule data dxlink macros \
+ outboard program_guide programs scripts \
+ supervise tutorial user util stereo
+
+--- dxsamples-4.4.0/configure.ac-orig 2009-05-03 14:30:59.000000000 +1200
++++ dxsamples-4.4.0/configure.ac 2009-05-03 14:31:44.000000000 +1200
+@@ -25,11 +25,6 @@ AC_SUBST(RTL_LIBS)
+
+ SHELL=/bin/sh
+
+-AC_ARG_WITH(javadx,
+- [ --with-javadx enable JAVADX (default is yes)],
+- [with_javadx=$withval],
+- [with_javadx='yes'])
+-
+ AC_PROG_INSTALL
+ if test -z "$LN_S" ; then
+ AC_PROG_LN_S
+@@ -40,25 +35,8 @@ DX_GET_PREFIX
+ DX_GET_ARCH
+ DX_ARCH_SPECIFIC
+
+-MAKE_JAVADX_SAMPLES=""
+-if test "with_javadx" != 'no' ; then
+- failed=0;
+- passed=0;
+- DX_PROG_JAVAC(passed=`expr $passed + 1`,failed=`expr $failed + 1`)
+- DX_PROG_JAR(passed=`expr $passed + 1`,failed=`expr $failed + 1`)
+-
+- if test $failed -eq 0 ; then
+- DX_JAVADX_SETUP(passed=`expr $passed + 1`,failed=`expr $failed + 1`)
+- if test $failed -eq 0 ; then
+- MAKE_JAVADX_SAMPLES=samples
+- fi
+- fi
+-fi
+-
+ AC_OUTPUT( Makefile callmodule/Makefile callmodule/localmk \
+ data/Makefile dxlink/Makefile dxlink/dxlink_make \
+- java/samples/Makefile java/Makefile java/userdata/Makefile \
+- java/usermacros/Makefile java/nets/Makefile java/makes/Makefile \
+ macros/Makefile outboard/Makefile \
+ program_guide/Makefile program_guide/localmk program_guide/guidemake \
+ programs/2D_DATA/Makefile programs/3D_DATA/Makefile \
diff --git a/sci-visualization/opendx-samples/metadata.xml b/sci-visualization/opendx-samples/metadata.xml
new file mode 100644
index 00000000000..8d2b82e1c60
--- /dev/null
+++ b/sci-visualization/opendx-samples/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>sci</herd>
+<longdescription lang='en'>
+ This package contains examples of scripts and networks for the
+ OpenDX Data Explorer. They are referenced in the OpenDX tutorial,
+ but can also be used stand-alone to browse and investigate.
+</longdescription>
+</pkgmetadata>
diff --git a/sci-visualization/opendx-samples/opendx-samples-4.4.0-r1.ebuild b/sci-visualization/opendx-samples/opendx-samples-4.4.0-r1.ebuild
new file mode 100644
index 00000000000..14a24a5e850
--- /dev/null
+++ b/sci-visualization/opendx-samples/opendx-samples-4.4.0-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils autotools multilib
+
+MY_PN="dxsamples"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="Samples for IBM Data Explorer"
+HOMEPAGE="http://www.opendx.org/"
+SRC_URI="http://opendx.sdsc.edu/source/${MY_P}.tar.gz
+ mirror://gentoo/${P}-install.patch.bz2"
+LICENSE="IBM"
+SLOT="0"
+
+S="${WORKDIR}/${MY_P}"
+
+KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+RDEPEND=">=sci-visualization/opendx-4.4.4-r2"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ #absolutely no javadx for now
+ epatch "${FILESDIR}/${P}-nojava.patch"
+ epatch "${WORKDIR}/${P}-install.patch"
+ eautoreconf
+}
diff --git a/sci-visualization/opendx/Manifest b/sci-visualization/opendx/Manifest
new file mode 100644
index 00000000000..5b25fc6a7a2
--- /dev/null
+++ b/sci-visualization/opendx/Manifest
@@ -0,0 +1 @@
+DIST dx-4.4.4.tar.gz 9676049 SHA256 a9915e17d49c5499edd3df69ffeac0b7ba24f8b38ddf7509712b48eb3c21f1ff SHA512 e6ef0075a696c442fd4615eb32b9ebd3f85728321a33297e3402b19bbc6210953a6599d643fc0a20bc349fbc72411326c69187223ee0e65560603d8e6f7527ee WHIRLPOOL 6d6931fabfb054ff06464649b2b2ce5f094aa6d0c28f0f2e6ee22176ef4749d78f102ed9d0c27cf3c84ea10038d4502d908ec7a95a597d32f21574b277a54fa0
diff --git a/sci-visualization/opendx/files/opendx-4.3.2-sys.h.patch b/sci-visualization/opendx/files/opendx-4.3.2-sys.h.patch
new file mode 100644
index 00000000000..93bf18efb38
--- /dev/null
+++ b/sci-visualization/opendx/files/opendx-4.3.2-sys.h.patch
@@ -0,0 +1,23 @@
+diff -aurN dx-4.3.2-orig/configure.ac dx-4.3.2/configure.ac
+--- dx-4.3.2-orig/configure.ac 2007-07-19 00:59:55.000000000 -0500
++++ dx-4.3.2/configure.ac 2007-07-19 01:02:34.000000000 -0500
+@@ -1004,7 +1004,7 @@
+ Xm/ScrolledWP.h Xm/SelectioB.h Xm/SeparatoG.h Xm/SeparatoGP.h Xm/Separator.h \
+ Xm/Text.h Xm/TextF.h Xm/ToggleB.h Xm/ToggleBG.h Xm/Xm.h Xm/XmP.h Xm/XmStrDefs.h \
+ gl.h gl/device.h gl/gl.h invent.h iop/afb.h iop/mov.h iop/pfs.h license.h \
+- linux/kernel.h linux/sys.h math.h mingw32/dir.h mon.h net/if_arp.h net/route.h \
++ linux/kernel.h math.h mingw32/dir.h mon.h net/if_arp.h net/route.h \
+ os2.h setjmp.h starbase.c.h stddef.h stdio.h synch.h sys/access.h \
+ sys/ipc.h sys/m88kbcs.h sys/mman.h sys/mode.h sys/pstat.h sys/resource.h \
+ sys/svs.h sys/sysconfig.h sys/syslimits.h sys/sysmacros.h ulocks.h x11/xlibxtra.h \
+diff -aurN dx-4.3.2-orig/src/exec/libdx/memory.c dx-4.3.2/src/exec/libdx/memory.c
+--- dx-4.3.2-orig/src/exec/libdx/memory.c 2007-07-19 00:59:54.000000000 -0500
++++ dx-4.3.2/src/exec/libdx/memory.c 2007-07-19 01:01:57.000000000 -0500
+@@ -66,7 +66,6 @@
+
+ #if linux
+ #include <linux/kernel.h>
+-#include <linux/sys.h>
+ #include <sys/sysinfo.h>
+ #endif
+
diff --git a/sci-visualization/opendx/files/opendx-4.4.4-concurrent-make-fix.patch b/sci-visualization/opendx/files/opendx-4.4.4-concurrent-make-fix.patch
new file mode 100644
index 00000000000..ba2c9c8c43c
--- /dev/null
+++ b/sci-visualization/opendx/files/opendx-4.4.4-concurrent-make-fix.patch
@@ -0,0 +1,66 @@
+diff -Nuarp dx-4.4.4-orig/src/exec/dxmods/local.mk dx-4.4.4/src/exec/dxmods/local.mk
+--- dx-4.4.4-orig/src/exec/dxmods/local.mk 2008-09-11 22:31:38.000000000 +0200
++++ dx-4.4.4/src/exec/dxmods/local.mk 2008-09-11 22:33:44.000000000 +0200
+@@ -14,15 +14,15 @@ user.c: dx.mdf
+
+ dxcm.mdf: ${srcdir}/dxmdf.src
+ -rm -f dxcm.mdf
+- cp ${srcdir}/dxmdf.src tmp.c
+- $(CPP) $(INCLUDES) $(MDF) $(DEFS) tmp.c > dxcm.mdf
+- -rm -f tmp.c
++ cp ${srcdir}/dxmdf.src tmp-dxcm.c
++ $(CPP) $(INCLUDES) $(MDF) $(DEFS) tmp-dxcm.c > dxcm.mdf
++ -rm -f tmp-dxcm.c
+
+ dx.mdf: ${srcdir}/dxmdf.src
+ echo MYINC: $(MYINC)
+ -rm -f dx.mdf
+- cp ${srcdir}/dxmdf.src tmp.c
+- $(CPP) $(INCLUDES) $(MYINC) $(MDF) $(DEFS) -DCPLUSPLUS_UI -DEXECUTIVE_MODS tmp.c > dx.mdf
++ cp ${srcdir}/dxmdf.src tmp-dx.c
++ $(CPP) $(INCLUDES) $(MYINC) $(MDF) $(DEFS) -DCPLUSPLUS_UI -DEXECUTIVE_MODS tmp-dx.c > dx.mdf
+ @echo '/^ *$$/{' > stripl.sed
+ @echo 'N' >> stripl.sed
+ @echo '/^ *\\n *$$/D' >> stripl.sed
+@@ -30,7 +30,7 @@ dx.mdf: ${srcdir}/dxmdf.src
+ cat dx.mdf |sed '/^#/d' > tmp.mdf
+ cat tmp.mdf |sed -f stripl.sed > dx.mdf
+ @rm -f stripl.sed tmp.mdf
+- -rm -f tmp.c
++ -rm -f tmp-dx.c
+
+ .y.h:
+ $(YACC) $(YFLAGS) -d ${srcdir}/$*.y
+diff -Nuarp dx-4.4.4-orig/src/exec/dxmods/local.mk dx-4.4.4/src/exec/dxmods/local.mk
+--- dx-4.4.4-orig/src/exec/dxmods/local.mk.in 2008-09-11 22:31:38.000000000 +0200
++++ dx-4.4.4/src/exec/dxmods/local.mk.in 2008-09-11 22:33:44.000000000 +0200
+@@ -14,15 +14,15 @@ user.c: dx.mdf
+
+ dxcm.mdf: ${srcdir}/dxmdf.src
+ -rm -f dxcm.mdf
+- cp ${srcdir}/dxmdf.src tmp.c
+- $(CPP) $(INCLUDES) $(MDF) $(DEFS) tmp.c > dxcm.mdf
+- -rm -f tmp.c
++ cp ${srcdir}/dxmdf.src tmp-dxcm.c
++ $(CPP) $(INCLUDES) $(MDF) $(DEFS) tmp-dxcm.c > dxcm.mdf
++ -rm -f tmp-dxcm.c
+
+ dx.mdf: ${srcdir}/dxmdf.src
+ echo MYINC: $(MYINC)
+ -rm -f dx.mdf
+- cp ${srcdir}/dxmdf.src tmp.c
+- $(CPP) $(INCLUDES) $(MYINC) $(MDF) $(DEFS) -DCPLUSPLUS_UI -DEXECUTIVE_MODS tmp.c > dx.mdf
++ cp ${srcdir}/dxmdf.src tmp-dx.c
++ $(CPP) $(INCLUDES) $(MYINC) $(MDF) $(DEFS) -DCPLUSPLUS_UI -DEXECUTIVE_MODS tmp-dx.c > dx.mdf
+ @echo '/^ *$$/{' > stripl.sed
+ @echo 'N' >> stripl.sed
+ @echo '/^ *\\n *$$/D' >> stripl.sed
+@@ -30,7 +30,7 @@ dx.mdf: ${srcdir}/dxmdf.src
+ cat dx.mdf |sed '/^#/d' > tmp.mdf
+ cat tmp.mdf |sed -f stripl.sed > dx.mdf
+ @rm -f stripl.sed tmp.mdf
+- -rm -f tmp.c
++ -rm -f tmp-dx.c
+
+ .y.h:
+ $(YACC) $(YFLAGS) -d ${srcdir}/$*.y
diff --git a/sci-visualization/opendx/files/opendx-4.4.4-dx-errno.patch b/sci-visualization/opendx/files/opendx-4.4.4-dx-errno.patch
new file mode 100644
index 00000000000..70c1b28f0e4
--- /dev/null
+++ b/sci-visualization/opendx/files/opendx-4.4.4-dx-errno.patch
@@ -0,0 +1,11 @@
+diff -up dx-4.4.4/src/exec/dpexec/lex.c.errno dx-4.4.4/src/exec/dpexec/lex.c
+--- dx-4.4.4/src/exec/dpexec/lex.c.errno 2006-01-09 23:57:34.000000000 +0100
++++ dx-4.4.4/src/exec/dpexec/lex.c 2009-01-26 19:16:20.000000000 +0100
+@@ -504,6 +504,7 @@ int yylex(YYSTYPE *lvalp)
+ for (;;)
+ {
+ yyleng = 0;
++ errno = 0;
+
+ c = input();
+
diff --git a/sci-visualization/opendx/files/opendx-4.4.4-gcc43.patch b/sci-visualization/opendx/files/opendx-4.4.4-gcc43.patch
new file mode 100644
index 00000000000..64a3d91fee6
--- /dev/null
+++ b/sci-visualization/opendx/files/opendx-4.4.4-gcc43.patch
@@ -0,0 +1,315 @@
+diff -up dx-4.4.4/src/uipp/startup/StartupApplication.C.gcc43 dx-4.4.4/src/uipp/startup/StartupApplication.C
+--- dx-4.4.4/src/uipp/startup/StartupApplication.C.gcc43 2005-11-10 20:48:22.000000000 +0100
++++ dx-4.4.4/src/uipp/startup/StartupApplication.C 2008-01-07 21:55:03.000000000 +0100
+@@ -117,7 +117,7 @@ InitializeSignals(void)
+ #endif
+ }
+
+-boolean StartupApplication::initialize(unsigned int* argcp,
++boolean StartupApplication::initialize(int* argcp,
+ char** argv)
+ {
+ ASSERT(argcp);
+diff -up dx-4.4.4/src/uipp/startup/StartupApplication.h.gcc43 dx-4.4.4/src/uipp/startup/StartupApplication.h
+--- dx-4.4.4/src/uipp/startup/StartupApplication.h.gcc43 2003-09-20 07:33:56.000000000 +0200
++++ dx-4.4.4/src/uipp/startup/StartupApplication.h 2008-01-07 21:50:47.000000000 +0100
+@@ -84,7 +84,7 @@ class StartupApplication : public IBMApp
+ // Overrides the Application class version:
+ // Initializes Xt Intrinsics with option list (switches).
+ //
+- virtual boolean initialize(unsigned int* argcp, char**argv);
++ virtual boolean initialize(int* argcp, char**argv);
+
+ CommandScope *commandScope; // command scope
+
+diff -up dx-4.4.4/src/uipp/startup/Main.C.gcc43 dx-4.4.4/src/uipp/startup/Main.C
+--- dx-4.4.4/src/uipp/startup/Main.C.gcc43 2000-05-16 20:53:07.000000000 +0200
++++ dx-4.4.4/src/uipp/startup/Main.C 2008-01-07 19:57:58.000000000 +0100
+@@ -14,7 +14,7 @@
+ extern "C" void HCLXmInit();
+ #endif
+
+-int main(unsigned int argc,
++int main( int argc,
+ char** argv)
+ {
+ #if defined(HAVE_HCLXMINIT)
+diff -up dx-4.4.4/src/uipp/base/Application.C.gcc43 dx-4.4.4/src/uipp/base/Application.C
+--- dx-4.4.4/src/uipp/base/Application.C.gcc43 2005-11-09 19:56:17.000000000 +0100
++++ dx-4.4.4/src/uipp/base/Application.C 2008-01-07 22:39:15.000000000 +0100
+@@ -136,7 +136,7 @@ void Application::installDefaultResource
+ //this->setDefaultResources(baseWidget, Application::DefaultResources);
+ }
+
+-boolean Application::initializeWindowSystem(unsigned int *argcp, char **argv)
++boolean Application::initializeWindowSystem(int *argcp, char **argv)
+ {
+
+ //
+@@ -149,7 +149,7 @@ boolean Application::initializeWindowSys
+ NULL, // command line options table
+ 0, // number of entries in options table
+ #if XtSpecificationRelease > 4
+- (int*)argcp,
++ argcp,
+ #else
+ argcp,
+ #endif
+@@ -235,7 +235,7 @@ boolean Application::initializeWindowSys
+ return TRUE;
+ }
+
+-void Application::parseCommand(unsigned int* argcp, char** argv,
++void Application::parseCommand(int* argcp, char** argv,
+ XrmOptionDescList optlist, int optlistsize)
+ {
+ char res_file[256];
+@@ -280,7 +280,7 @@ void Application::parseCommand(unsigned
+ //
+ }
+
+-boolean Application::initialize(unsigned int* argcp, char** argv)
++boolean Application::initialize(int* argcp, char** argv)
+ {
+ //
+ // Initialize the window system if not done already.
+diff -up dx-4.4.4/src/uipp/base/Application.h.gcc43 dx-4.4.4/src/uipp/base/Application.h
+--- dx-4.4.4/src/uipp/base/Application.h.gcc43 2005-11-09 19:26:29.000000000 +0100
++++ dx-4.4.4/src/uipp/base/Application.h 2008-01-07 21:49:49.000000000 +0100
+@@ -49,7 +49,7 @@ class Application : public UIComponent,
+ //
+ // The main program needs to access protected member functions.
+ //
+- friend int main(unsigned int argc,
++ friend int main( int argc,
+ char** argv);
+
+
+@@ -71,9 +71,9 @@ class Application : public UIComponent,
+ //
+ // Initialize the window system.
+ //
+- virtual boolean initializeWindowSystem(unsigned int *argcp, char **argv);
++ virtual boolean initializeWindowSystem(int *argcp, char **argv);
+
+- virtual void parseCommand(unsigned int* argcp, char** argv,
++ virtual void parseCommand(int* argcp, char** argv,
+ XrmOptionDescList optlist, int optlistsize);
+
+ //
+@@ -145,7 +145,7 @@ class Application : public UIComponent,
+ // Initializes any Application specfic state. This routine should
+ // be called by main() or subclasses only.
+ //
+- virtual boolean initialize(unsigned int* argcp, char** argv);
++ virtual boolean initialize(int* argcp, char** argv);
+
+ //
+ // Allow others to access our event processing mechanism
+diff -up dx-4.4.4/src/uipp/base/IBMApplication.C.gcc43 dx-4.4.4/src/uipp/base/IBMApplication.C
+--- dx-4.4.4/src/uipp/base/IBMApplication.C.gcc43 2004-04-02 22:32:43.000000000 +0200
++++ dx-4.4.4/src/uipp/base/IBMApplication.C 2008-01-07 21:53:29.000000000 +0100
+@@ -349,7 +349,7 @@ int status;
+ }
+
+
+-boolean IBMApplication::initializeWindowSystem(unsigned int *argcp, char **argv)
++boolean IBMApplication::initializeWindowSystem(int *argcp, char **argv)
+ {
+
+ if (!this->Application::initializeWindowSystem(argcp, argv))
+@@ -375,7 +375,7 @@ boolean IBMApplication::initializeWindow
+ return TRUE;
+ }
+
+-boolean IBMApplication::initialize(unsigned int* argcp,
++boolean IBMApplication::initialize(int* argcp,
+ char** argv)
+ {
+ if (!this->Application::initialize(argcp,argv))
+diff -up dx-4.4.4/src/uipp/base/IBMApplication.h.gcc43 dx-4.4.4/src/uipp/base/IBMApplication.h
+--- dx-4.4.4/src/uipp/base/IBMApplication.h.gcc43 2003-09-20 07:35:22.000000000 +0200
++++ dx-4.4.4/src/uipp/base/IBMApplication.h 2008-01-07 21:50:19.000000000 +0100
+@@ -77,7 +77,7 @@ class IBMApplication : public Applicatio
+ //
+ // Initialize the window system.
+ //
+- virtual boolean initializeWindowSystem(unsigned int *argcp, char **argv);
++ virtual boolean initializeWindowSystem(int *argcp, char **argv);
+
+ //
+ // Protected member data:
+@@ -88,7 +88,7 @@ class IBMApplication : public Applicatio
+
+ HelpWin *helpWindow;
+
+- boolean initialize(unsigned int* argcp, char** argv);
++ boolean initialize(int* argcp, char** argv);
+
+ //
+ // Load application specific action routines
+diff -up dx-4.4.4/src/uipp/tutor/TutorApplication.h.gcc43 dx-4.4.4/src/uipp/tutor/TutorApplication.h
+--- dx-4.4.4/src/uipp/tutor/TutorApplication.h.gcc43 1999-05-10 17:46:30.000000000 +0200
++++ dx-4.4.4/src/uipp/tutor/TutorApplication.h 2008-01-07 21:49:29.000000000 +0100
+@@ -69,7 +69,7 @@ class TutorApplication : public IBMAppli
+ // Overrides the Application class version:
+ // Initializes Xt Intrinsics with option list (switches).
+ //
+- virtual boolean initialize(unsigned int* argcp,
++ virtual boolean initialize(int* argcp,
+ char** argv);
+
+ //
+diff -up dx-4.4.4/src/uipp/tutor/Main.C.gcc43 dx-4.4.4/src/uipp/tutor/Main.C
+--- dx-4.4.4/src/uipp/tutor/Main.C.gcc43 2000-05-16 20:53:15.000000000 +0200
++++ dx-4.4.4/src/uipp/tutor/Main.C 2008-01-07 19:57:39.000000000 +0100
+@@ -31,7 +31,7 @@ extern "C" void HCLXmInit();
+ //
+ const char *AssertMsgString = "Internal error detected at \"%s\":%d.\n";
+
+-int main(unsigned int argc,
++int main( int argc,
+ char** argv)
+ {
+ #if defined(HAVE_HCLXMINIT)
+diff -up dx-4.4.4/src/uipp/tutor/TutorApplication.C.gcc43 dx-4.4.4/src/uipp/tutor/TutorApplication.C
+--- dx-4.4.4/src/uipp/tutor/TutorApplication.C.gcc43 2006-05-08 18:20:14.000000000 +0200
++++ dx-4.4.4/src/uipp/tutor/TutorApplication.C 2008-01-07 21:56:09.000000000 +0100
+@@ -196,7 +196,7 @@ InitializeSignals(void)
+ #endif
+ }
+
+-boolean TutorApplication::initialize(unsigned int* argcp,
++boolean TutorApplication::initialize(int* argcp,
+ char** argv)
+ {
+ ASSERT(argcp);
+diff -up dx-4.4.4/src/uipp/widgets/MultiText.h.gcc43 dx-4.4.4/src/uipp/widgets/MultiText.h
+--- dx-4.4.4/src/uipp/widgets/MultiText.h.gcc43 2006-01-03 01:12:34.000000000 +0100
++++ dx-4.4.4/src/uipp/widgets/MultiText.h 2008-01-07 19:06:27.000000000 +0100
+@@ -91,7 +91,7 @@ typedef struct _XmMultiTextClassRec* XmM
+ #define XmNsmoothScroll "smoothScroll"
+ #define XmNwaitCursorCount "waitCursorCount"
+
+-#if !(defined(_Xm_h) || defined(XM_H))
++#if !(defined(_Xm_h) || defined(XM_H) || defined(_XM_XM_H))
+ #define XmNmarginHeight "marginHeight"
+ #define XmNmarginWidth "marginWidth"
+ #define XmNwordWrap "wordWrap"
+@@ -109,7 +109,7 @@ typedef struct _XmMultiTextClassRec* XmM
+ #define XmCSmoothScroll "SmoothScroll"
+ #define XmCWaitCursorCount "WaitCursorCount"
+
+-#if !(defined(_Xm_h) || defined(XM_H))
++#if !(defined(_Xm_h) || defined(XM_H) || defined(_XM_XM_H))
+ #define XmCMarginHeight "MarginHeight"
+ #define XmCMarginWidth "MarginWidth"
+ #define XmCWordWrap "WordWrap"
+diff -up dx-4.4.4/src/uipp/dxui/Main.C.gcc43 dx-4.4.4/src/uipp/dxui/Main.C
+--- dx-4.4.4/src/uipp/dxui/Main.C.gcc43 2005-12-07 18:50:53.000000000 +0100
++++ dx-4.4.4/src/uipp/dxui/Main.C 2008-01-07 19:57:21.000000000 +0100
+@@ -48,7 +48,7 @@ extern unsigned long _etext;
+ //
+ const char *AssertMsgString = "Internal error detected at \"%s\":%d.\n";
+
+-int main(unsigned int argc,
++int main( int argc,
+ char** argv)
+ {
+ #if defined(HAVE_HCLXMINIT)
+diff -up dx-4.4.4/src/uipp/prompter/GARApplication.h.gcc43 dx-4.4.4/src/uipp/prompter/GARApplication.h
+--- dx-4.4.4/src/uipp/prompter/GARApplication.h.gcc43 2003-09-20 07:33:21.000000000 +0200
++++ dx-4.4.4/src/uipp/prompter/GARApplication.h 2008-01-07 21:49:05.000000000 +0100
+@@ -129,7 +129,7 @@ class GARApplication : public IBMApplica
+ // Overrides the Application class version:
+ // Initializes Xt Intrinsics with option list (switches).
+ //
+- virtual boolean initialize(unsigned int* argcp,
++ virtual boolean initialize(int* argcp,
+ char** argv);
+
+ CommandScope *commandScope; // command scope
+diff -up dx-4.4.4/src/uipp/prompter/Main.C.gcc43 dx-4.4.4/src/uipp/prompter/Main.C
+--- dx-4.4.4/src/uipp/prompter/Main.C.gcc43 2000-05-16 20:52:59.000000000 +0200
++++ dx-4.4.4/src/uipp/prompter/Main.C 2008-01-07 19:57:01.000000000 +0100
+@@ -17,7 +17,7 @@ extern "C" void HCLXmInit();
+ #endif
+
+
+-int main(unsigned int argc,
++int main( int argc,
+ char** argv)
+ {
+ #if defined(HAVE_HCLXMINIT)
+diff -up dx-4.4.4/src/uipp/prompter/GARApplication.C.gcc43 dx-4.4.4/src/uipp/prompter/GARApplication.C
+--- dx-4.4.4/src/uipp/prompter/GARApplication.C.gcc43 2006-05-08 18:20:13.000000000 +0200
++++ dx-4.4.4/src/uipp/prompter/GARApplication.C 2008-01-07 21:54:28.000000000 +0100
+@@ -198,7 +198,7 @@ InitializeSignals(void)
+ }
+ }
+
+-boolean GARApplication::initialize(unsigned int* argcp,
++boolean GARApplication::initialize(int* argcp,
+ char** argv)
+ {
+ ASSERT(argcp);
+diff -up dx-4.4.4/src/uipp/dxuilib/DXApplication.h.gcc43 dx-4.4.4/src/uipp/dxuilib/DXApplication.h
+--- dx-4.4.4/src/uipp/dxuilib/DXApplication.h.gcc43 2006-05-08 18:20:10.000000000 +0200
++++ dx-4.4.4/src/uipp/dxuilib/DXApplication.h 2008-01-07 21:14:12.000000000 +0100
+@@ -372,7 +372,7 @@ class DXApplication : public IBMApplicat
+ // Overrides the Application class version:
+ // Initializes Xt Intrinsics with option list (switches).
+ //
+- virtual boolean initialize(unsigned int* argcp,
++ virtual boolean initialize(int* argcp,
+ char** argv);
+
+ //
+diff -up dx-4.4.4/src/uipp/dxuilib/DXApplication.C.gcc43 dx-4.4.4/src/uipp/dxuilib/DXApplication.C
+--- dx-4.4.4/src/uipp/dxuilib/DXApplication.C.gcc43 2006-06-22 21:45:34.000000000 +0200
++++ dx-4.4.4/src/uipp/dxuilib/DXApplication.C 2008-01-07 21:32:56.000000000 +0100
+@@ -2248,7 +2248,7 @@ void DXApplication::installDefaultResour
+ this->setDefaultResources(baseWidget, _defaultDXResources);
+ this->IBMApplication::installDefaultResources(baseWidget);
+ }
+-boolean DXApplication::initialize(unsigned int* argcp,
++boolean DXApplication::initialize(int* argcp,
+ char** argv)
+ {
+ boolean wasSetBusy = FALSE;
+diff -up dx-4.4.4/src/uipp/mb/Main.C.gcc43 dx-4.4.4/src/uipp/mb/Main.C
+--- dx-4.4.4/src/uipp/mb/Main.C.gcc43 2000-05-20 19:49:40.000000000 +0200
++++ dx-4.4.4/src/uipp/mb/Main.C 2008-01-07 19:56:41.000000000 +0100
+@@ -22,7 +22,7 @@ extern "C" void HCLXmInit();
+ //
+ const char *AssertMsgString = "Internal error detected at \"%s\":%d.\n";
+
+-int main(unsigned int argc,
++int main( int argc,
+ char** argv)
+ {
+ #if defined(HAVE_HCLXMINIT)
+diff -up dx-4.4.4/src/uipp/mb/MBApplication.C.gcc43 dx-4.4.4/src/uipp/mb/MBApplication.C
+--- dx-4.4.4/src/uipp/mb/MBApplication.C.gcc43 2006-05-08 18:20:13.000000000 +0200
++++ dx-4.4.4/src/uipp/mb/MBApplication.C 2008-01-07 21:51:15.000000000 +0100
+@@ -117,7 +117,7 @@ InitializeSignals(void)
+ #endif
+ }
+
+-boolean MBApplication::initialize(unsigned int* argcp,
++boolean MBApplication::initialize(int* argcp,
+ char** argv)
+ {
+ ASSERT(argcp);
+diff -up dx-4.4.4/src/uipp/mb/MBApplication.h.gcc43 dx-4.4.4/src/uipp/mb/MBApplication.h
+--- dx-4.4.4/src/uipp/mb/MBApplication.h.gcc43 1999-05-10 17:46:25.000000000 +0200
++++ dx-4.4.4/src/uipp/mb/MBApplication.h 2008-01-07 21:48:38.000000000 +0100
+@@ -51,7 +51,7 @@ class MBApplication : public IBMApplicat
+ // Overrides the Application class version:
+ // Initializes Xt Intrinsics with option list (switches).
+ //
+- virtual boolean initialize(unsigned int* argcp,
++ virtual boolean initialize(int* argcp,
+ char** argv);
+
+ static MBResource resource;
diff --git a/sci-visualization/opendx/files/opendx-4.4.4-installpaths.patch b/sci-visualization/opendx/files/opendx-4.4.4-installpaths.patch
new file mode 100644
index 00000000000..3c0b6d9a899
--- /dev/null
+++ b/sci-visualization/opendx/files/opendx-4.4.4-installpaths.patch
@@ -0,0 +1,330 @@
+diff -up dx-4.4.4/bin/dx.in.r dx-4.4.4/bin/dx.in
+--- dx-4.4.4/bin/dx.in.r 2004-05-31 18:12:05.000000000 +0200
++++ dx-4.4.4/bin/dx.in 2009-01-26 23:57:11.000000000 +0100
+@@ -60,14 +60,7 @@ exit 1
+ #
+ longhelp() {
+
+-if test -f "$dxroot/man/catl/dx.l" ; then
+- more "$dxroot/man/catl/dx.l"
+-else
+- echo "cannot find $dxroot/man/catl/dx.l"
+- echo "set the DXROOT environment variable to the root of the"
+- echo "dx installation tree and try again."
+-fi
+-exit 1
++man dx
+
+ cat << EOFlonghelp
+ command line parameters:
+@@ -286,7 +279,7 @@ fi
+
+
+ if [ -z "$DXROOT" ]; then
+- prefix=@prefix@
++ prefix=@libdir@
+ DXROOT=$prefix/dx
+ fi
+ export DXROOT
+@@ -507,7 +507,7 @@ export DXARCH
+
+ # default to running locally, from @prefix@/dx
+ exhost=$thishost
+-dxroot=@prefix@/dx
++dxroot=@libdir@/dx
+ startup=1 # run the startup window by default
+
+
+diff -up dx-4.4.4/bin/Makefile.am.r dx-4.4.4/bin/Makefile.am
+--- dx-4.4.4/bin/Makefile.am.r 2003-07-12 02:11:37.000000000 +0200
++++ dx-4.4.4/bin/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -1,6 +1,6 @@
+ ## Process this file with automake to produce Makefile.in
+
+-dxbindir = $(prefix)/dx/bin
++dxbindir = $(libdir)/dx/bin
+ bindir = $(prefix)/bin
+
+ EXTRA_SCRIPTS = mdf2c dx
+diff -up dx-4.4.4/bin/mdf2c.in.r dx-4.4.4/bin/mdf2c.in
+--- dx-4.4.4/bin/mdf2c.in.r 1999-12-14 05:13:04.000000000 +0100
++++ dx-4.4.4/bin/mdf2c.in 2009-01-26 23:57:11.000000000 +0100
+@@ -1,6 +1,6 @@
+ #!/bin/sh
+ # Configure is looking for the following line
+-prefix=@prefix@
++prefix=@libdir@
+ DFLTROOT=$prefix/dx
+ root=${DXROOT=${DXEXECROOT=$DFLTROOT}}
+
+diff -up dx-4.4.4/doc/Makefile.am.r dx-4.4.4/doc/Makefile.am
+--- dx-4.4.4/doc/Makefile.am.r 1999-04-05 13:57:03.000000000 +0200
++++ dx-4.4.4/doc/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -1,6 +1,6 @@
+ ## Process this file with automake to produce Makefile.in
+
+-docdir = $(prefix)/dx/doc
++docdir = $(datadir)/dx/doc
+
+ doc_DATA = \
+ README README_SMP README_alphax README_aviion README_hp700 \
+diff -up dx-4.4.4/fonts/Makefile.am.r dx-4.4.4/fonts/Makefile.am
+--- dx-4.4.4/fonts/Makefile.am.r 2003-07-12 02:11:37.000000000 +0200
++++ dx-4.4.4/fonts/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -1,6 +1,6 @@
+ ## Process this file with automake to produce Makefile.in
+
+-fontdir = $(prefix)/dx/fonts
++fontdir = $(libdir)/dx/fonts
+
+ font_DATA = \
+ README area.dx cyril_d.dx \
+diff -up dx-4.4.4/help/Makefile.am.r dx-4.4.4/help/Makefile.am
+--- dx-4.4.4/help/Makefile.am.r 2003-07-12 02:11:37.000000000 +0200
++++ dx-4.4.4/help/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -1,6 +1,6 @@
+ ## Process this file with automake to produce Makefile.in
+
+-helpdir = $(prefix)/dx/help
++helpdir = $(libdir)/dx/help
+
+ EXTRA_DIST = $(helpfiles1) $(helpfiles2) $(helpfiles3) $(helpfiles4) $(helpfiles5) \
+ $(helpfiles6) $(helpfiles7) $(helpfiles8) $(helpfiles9) $(helpfiles10) \
+diff -up dx-4.4.4/html/images/Makefile.am.r dx-4.4.4/html/images/Makefile.am
+--- dx-4.4.4/html/images/Makefile.am.r 2002-04-01 10:51:13.000000000 +0200
++++ dx-4.4.4/html/images/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -1,5 +1,5 @@
+
+-imagesdir = $(prefix)/dx/html/images
++imagesdir = $(libdir)/dx/html/images
+
+ images1 = \
+ 3dcurs.gif adctlpt.gif arch.gif autoax.gif autoexp.gif \
+diff -up dx-4.4.4/html/Makefile.am.r dx-4.4.4/html/Makefile.am
+--- dx-4.4.4/html/Makefile.am.r 2003-07-12 02:11:39.000000000 +0200
++++ dx-4.4.4/html/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -1,6 +1,6 @@
+ ## Process this file with automake to produce Makefile.in
+
+-htmldir = $(prefix)/dx/html
++htmldir = $(libdir)/dx/html
+
+ SUBDIRS = pages images
+
+diff -up dx-4.4.4/html/pages/Makefile.am.r dx-4.4.4/html/pages/Makefile.am
+--- dx-4.4.4/html/pages/Makefile.am.r 2002-06-20 06:38:03.000000000 +0200
++++ dx-4.4.4/html/pages/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -1,4 +1,4 @@
+-pagesdir = $(prefix)/dx/html/pages
++pagesdir = $(libdir)/dx/html/pages
+
+ pages1 = \
+ insgu002.htm insgu003.htm insgu004.htm insgu005.htm insgu006.htm \
+diff -up dx-4.4.4/include/dx/Makefile.am.r dx-4.4.4/include/dx/Makefile.am
+--- dx-4.4.4/include/dx/Makefile.am.r 1999-05-26 01:35:16.000000000 +0200
++++ dx-4.4.4/include/dx/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -1,6 +1,6 @@
+ ## Process this file with automake to produce Makefile.in
+
+-dxincdir = $(prefix)/dx/include/dx
++dxincdir = $(prefix)/include/dx
+
+ dxinc_HEADERS = \
+ UserInteractors.h advanced.h arch.h array.h arrayhandles.h \
+diff -up dx-4.4.4/include/Makefile.am.r dx-4.4.4/include/Makefile.am
+--- dx-4.4.4/include/Makefile.am.r 2006-04-09 05:44:49.000000000 +0200
++++ dx-4.4.4/include/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -1,4 +1,4 @@
+-dxincdir = $(prefix)/dx/include
++dxincdir = $(prefix)/include
+ SUBDIRS = dx
+ dxinc_HEADERS = dxl.h dxstereo.h
+ nodist_dxinc_HEADERS = dxconfig.h
+diff -up dx-4.4.4/lib/Makefile.am.r dx-4.4.4/lib/Makefile.am
+--- dx-4.4.4/lib/Makefile.am.r 2003-08-22 01:22:13.000000000 +0200
++++ dx-4.4.4/lib/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -1,4 +1,4 @@
+-libsdir = $(prefix)/dx/lib
++libsdir = $(libdir)/dx/lib
+
+ libs_DATA = colors.txt dxexec.def dxexec.exp dxexec.imp dxexec.ifs \
+ dxfSaveCurrentImage.net dxrc mdf2c.awk messages outboard.c
+diff -up dx-4.4.4/man/Makefile.am.r dx-4.4.4/man/Makefile.am
+--- dx-4.4.4/man/Makefile.am.r 1999-04-03 18:31:28.000000000 +0200
++++ dx-4.4.4/man/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -1,4 +1,4 @@
+ ## Process this file with automake to produce Makefile.in
+
+-SUBDIRS = manl catl
++SUBDIRS = manl
+
+diff -up dx-4.4.4/man/manl/Makefile.am.r dx-4.4.4/man/manl/Makefile.am
+--- dx-4.4.4/man/manl/Makefile.am.r 2002-05-20 06:47:06.000000000 +0200
++++ dx-4.4.4/man/manl/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -1,6 +1,6 @@
+ ## Process this file with automake to produce Makefile.in
+
+-mandir = $(prefix)/dx/man
++mandir = $(datadir)/man
+
+ man_MANS = dx.l
+ EXTRA_DIST = $(man_MANS)
+diff -up dx-4.4.4/src/exec/dxexec/Makefile.am.r dx-4.4.4/src/exec/dxexec/Makefile.am
+--- dx-4.4.4/src/exec/dxexec/Makefile.am.r 2006-01-11 17:24:39.000000000 +0100
++++ dx-4.4.4/src/exec/dxexec/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -9,7 +9,7 @@ noinst_LTLIBRARIES = libDXEXEC.la
+ libDXEXEC_la_SOURCES = main.c
+ libDXEXEC_la_CFLAGS = $(AM_CFLAGS)
+
+-bindir = $(prefix)/dx/bin_@ARCH@
++bindir = $(libdir)/dx/bin_@ARCH@
+ bin_PROGRAMS = dxexec
+
+ dxexec_LDADD = ../dpexec/libDPEXEC.la ../dxmods/libDXMODS.la ../dxmods/user.lo \
+diff -up dx-4.4.4/src/exec/dxmods/Makefile.am.r dx-4.4.4/src/exec/dxmods/Makefile.am
+--- dx-4.4.4/src/exec/dxmods/Makefile.am.r 2003-08-19 00:51:10.000000000 +0200
++++ dx-4.4.4/src/exec/dxmods/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -1,8 +1,8 @@
+ ## Process this file with automake to produce Makefile.in
+
+ INCLUDES = -I${top_srcdir}/include -I${srcdir}/../dpexec -I$(BUILDBASE)/include -D@ARCH@
+
+-dxmdfdir = $(prefix)/dx/lib
++dxmdfdir = $(libdir)/dx/lib
+ noinst_LTLIBRARIES = libDXMODS.la libusercm.la libuser.la libDXMODSN.la
+ SUFFIXES = .c .y .c .s .h .o
+
+@@ -13,6 +14,8 @@ DISTCLEANFILES = dx.mdf dxcm.mdf user.c
+
+ dxmdf_DATA = dx.mdf
+
++user.c: dx.mdf
++
+ _complex.o: _compparse.h
+
+ HEADERS1 = \
+diff -up dx-4.4.4/src/exec/libdx/Makefile.am.r dx-4.4.4/src/exec/libdx/Makefile.am
+--- dx-4.4.4/src/exec/libdx/Makefile.am.r 2006-03-27 20:56:53.000000000 +0200
++++ dx-4.4.4/src/exec/libdx/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -7,7 +7,7 @@ MICRO_VERSION=@MICRO_VERSION@
+ #INCLUDES = -I../../../include -D@ARCH@
+ INCLUDES = -I${top_srcdir}/include -D@ARCH@
+
+-dxlibdir = $(prefix)/dx/lib_@ARCH@
++dxlibdir = $(libdir)/dx/lib_@ARCH@
+
+ noinst_LTLIBRARIES = libLIBDX.la libcallm.la libmem.la
+ #dxlib_LIBRARIES = libDXlite.a
+diff -up dx-4.4.4/src/exec/Makefile.am.r dx-4.4.4/src/exec/Makefile.am
+--- dx-4.4.4/src/exec/Makefile.am.r 2003-09-17 00:40:40.000000000 +0200
++++ dx-4.4.4/src/exec/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -1,6 +1,6 @@
+ SUBDIRS = libdx dxmods hwrender dpexec dxexec
+
+-dxlibdir = $(prefix)/dx/lib_@ARCH@
++dxlibdir = $(libdir)/dx/lib_@ARCH@
+
+ MAJOR_VERSION=@MAJOR_VERSION@
+ MINOR_VERSION=@MINOR_VERSION@
+diff -up dx-4.4.4/src/misc/Makefile.am.r dx-4.4.4/src/misc/Makefile.am
+--- dx-4.4.4/src/misc/Makefile.am.r 2003-07-12 02:12:13.000000000 +0200
++++ dx-4.4.4/src/misc/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -4,7 +4,7 @@ INCLUDES = -I${top_srcdir}/include -D@AR
+
+ dxbindir = $(prefix)/bin
+ noinst_PROGRAMS = dxlocal
+-archmakdir = $(prefix)/dx/lib_$(ARCH)
++archmakdir = $(libdir)/dx/lib_$(ARCH)
+ archmak_DATA = arch.mak
+
+ dxlocal_SOURCES = dx.c utils.c
+@@ -15,5 +15,5 @@ install-exec-local:
+ if test ! -z "@INSTALL_BIN_PROGRAM@" ; then \
+ $(mkinstalldirs) $(prefix)/bin ; \
+ $(INSTALL) dxlocal@EXEEXT@ \
+- $(prefix)/dx/bin_$(ARCH)/@INSTALL_BIN_PROGRAM@@EXEEXT@ ; \
++ $(libdir)/dx/bin_$(ARCH)/@INSTALL_BIN_PROGRAM@@EXEEXT@ ; \
+ fi
+diff -up dx-4.4.4/src/uipp/dxl/Makefile.am.r dx-4.4.4/src/uipp/dxl/Makefile.am
+--- dx-4.4.4/src/uipp/dxl/Makefile.am.r 2003-07-12 02:12:16.000000000 +0200
++++ dx-4.4.4/src/uipp/dxl/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -7,7 +7,7 @@ MICRO_VERSION=@MICRO_VERSION@
+
+ INCLUDES = -I${top_srcdir}/include -D@ARCH@
+
+-dxlibdir = $(prefix)/dx/lib_@ARCH@
++dxlibdir = $(libdir)/dx/lib_@ARCH@
+
+ noinst_HEADERS = \
+ dxlP.h \
+diff -up dx-4.4.4/src/uipp/dxui/Makefile.am.r dx-4.4.4/src/uipp/dxui/Makefile.am
+--- dx-4.4.4/src/uipp/dxui/Makefile.am.r 2003-07-12 02:12:17.000000000 +0200
++++ dx-4.4.4/src/uipp/dxui/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -2,7 +2,7 @@
+
+ INCLUDES = -I${srcdir}/../base -I${top_srcdir}/include -I${srcdir}/../dxuilib -D@ARCH@
+
+-dxbindir = $(prefix)/dx/bin_@ARCH@
++dxbindir = $(libdir)/dx/bin_@ARCH@
+ dxbin_PROGRAMS = dxui
+
+
+diff -up dx-4.4.4/src/uipp/mb/Makefile.am.r dx-4.4.4/src/uipp/mb/Makefile.am
+--- dx-4.4.4/src/uipp/mb/Makefile.am.r 2003-08-20 16:21:33.000000000 +0200
++++ dx-4.4.4/src/uipp/mb/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -2,7 +2,7 @@
+
+ INCLUDES = -I${top_srcdir}/include -I${srcdir}/../base -I${srcdir}/../widgets -D@ARCH@
+
+-dxbindir = $(prefix)/dx/bin_@ARCH@
++dxbindir = $(libdir)/dx/bin_@ARCH@
+
+ dxbin_PROGRAMS = builder
+
+diff -up dx-4.4.4/src/uipp/prompter/Makefile.am.r dx-4.4.4/src/uipp/prompter/Makefile.am
+--- dx-4.4.4/src/uipp/prompter/Makefile.am.r 2003-11-04 05:20:14.000000000 +0100
++++ dx-4.4.4/src/uipp/prompter/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -2,7 +2,7 @@
+
+ INCLUDES = -I${srcdir}/../base -I${top_srcdir}/include -D@ARCH@
+
+-dxbindir = $(prefix)/dx/bin_@ARCH@
++dxbindir = $(libdir)/dx/bin_@ARCH@
+
+ dxbin_PROGRAMS = prompter
+
+diff -up dx-4.4.4/src/uipp/startup/Makefile.am.r dx-4.4.4/src/uipp/startup/Makefile.am
+--- dx-4.4.4/src/uipp/startup/Makefile.am.r 2003-07-12 02:12:29.000000000 +0200
++++ dx-4.4.4/src/uipp/startup/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -2,7 +2,7 @@
+
+ INCLUDES = -I${top_srcdir}/include -I${srcdir}/../base -D@ARCH@
+
+-dxbindir = $(prefix)/dx/bin_@ARCH@
++dxbindir = $(libdir)/dx/bin_@ARCH@
+
+ dxbin_PROGRAMS = startupui
+
+diff -up dx-4.4.4/src/uipp/tutor/Makefile.am.r dx-4.4.4/src/uipp/tutor/Makefile.am
+--- dx-4.4.4/src/uipp/tutor/Makefile.am.r 2003-07-12 02:12:29.000000000 +0200
++++ dx-4.4.4/src/uipp/tutor/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -2,7 +2,7 @@
+
+ INCLUDES = -I${top_srcdir}/include -I${srcdir}/../base -D@ARCH@
+
+-dxbindir = $(prefix)/dx/bin_@ARCH@
++dxbindir = $(libdir)/dx/bin_@ARCH@
+
+ dxbin_PROGRAMS = tutor
+
+diff -up dx-4.4.4/src/uipp/ui/Makefile.am.r dx-4.4.4/src/uipp/ui/Makefile.am
+--- dx-4.4.4/src/uipp/ui/Makefile.am.r 2001-04-12 16:29:02.000000000 +0200
++++ dx-4.4.4/src/uipp/ui/Makefile.am 2009-01-26 23:57:11.000000000 +0100
+@@ -1,6 +1,6 @@
+ ## Process this file with automake to produce Makefile.in
+
+-uidatadir = $(prefix)/dx/ui
++uidatadir = $(libdir)/dx/ui
+
+ DATA1 = \
+ icon50.dat icon50.xpm logo.dat logo.xpm ui.mdf Basic2D.cfg Basic2D.net \
diff --git a/sci-visualization/opendx/files/opendx-4.4.4-libtool.patch b/sci-visualization/opendx/files/opendx-4.4.4-libtool.patch
new file mode 100644
index 00000000000..2a5aad6d439
--- /dev/null
+++ b/sci-visualization/opendx/files/opendx-4.4.4-libtool.patch
@@ -0,0 +1,11 @@
+diff -Naur dx-4.4.4/configure.ac dx-4.4.4.new/configure.ac
+--- dx-4.4.4/configure.ac 2006-08-21 17:56:08.000000000 -0400
++++ dx-4.4.4.new/configure.ac 2008-06-29 07:31:08.000000000 -0400
+@@ -10,6 +10,7 @@
+ AM_INIT_AUTOMAKE
+ AC_DISABLE_SHARED
+ AC_PROG_LIBTOOL
++AC_PROG_CXX
+
+ VERSION_STRING="04.4.4000"
+ MAJOR_VERSION=4
diff --git a/sci-visualization/opendx/files/opendx-4.4.4-magick.patch b/sci-visualization/opendx/files/opendx-4.4.4-magick.patch
new file mode 100644
index 00000000000..5b50470970c
--- /dev/null
+++ b/sci-visualization/opendx/files/opendx-4.4.4-magick.patch
@@ -0,0 +1,90 @@
+newer magick libraries, use pkg-config, add possibility to link with
+graphicsmagick, fix for as-needed
+
+--- dx-4.4.4.orig/src/exec/dxmods/_im_image.c
++++ dx-4.4.4/src/exec/dxmods/_im_image.c
+@@ -329,7 +329,7 @@
+ DestroyImageInfo(new_frame_info);
+ DestroyImageInfo(image_info);
+ #if MagickLibVersion > 0x0537
+- DestroyConstitute();
++ ConstituteComponentTerminus();
+ #endif
+ DXSetError(ERROR_INTERNAL, "reason = %s, description = %s",
+ image->exception.reason,
+@@ -346,7 +346,7 @@
+ DestroyImageInfo(new_frame_info);
+ DestroyImageInfo(image_info);
+ #if MagickLibVersion > 0x0537
+- DestroyConstitute();
++ ConstituteComponentTerminus();
+ #endif
+ DXErrorReturn( ERROR_INTERNAL , "out of memory allocating buffer _im_image.c");
+ }
+@@ -375,7 +375,7 @@
+ DestroyImageInfo(image_info);
+ DestroyImageInfo(new_frame_info);
+ #if MagickLibVersion > 0x0537
+- DestroyConstitute();
++ ConstituteComponentTerminus();
+ #endif
+
+ DEBUGMESSAGE("back from DestroyImage");
+@@ -491,7 +491,7 @@
+ DestroyImage(image);
+ DestroyImageInfo(image_info);
+ #if MagickLibVersion > 0x0537
+- DestroyConstitute();
++ ConstituteComponentTerminus();
+ #endif
+ }
+ return (OK);
+--- dx-4.4.4.orig/configure.ac
++++ dx-4.4.4/configure.ac
+@@ -799,7 +799,29 @@
+ LIB_MAGICK=''
+ if test "$with_magick" != 'no'
+ then
+- AS_MESSAGE([checking for ImageMagick support ......])
++ found=0
++ static_lib="libGraphicsMagick.a"
++ PKG_CHECK_MODULES(GraphicsMagick, GraphicsMagick, [found=1], [found=0])
++ MAGICK_CFLAGS="$GraphicsMagick_CFLAGS"
++ MAGICK_LIBS="$GraphicsMagick_LIBS"
++ if test $found -eq 0
++ then
++ static_lib="libMagick.a"
++ PKG_CHECK_MODULES(ImageMagick, ImageMagick, [found=1], [found=0])
++ MAGICK_CFLAGS="$ImageMagick_CFLAGS"
++ MAGICK_LIBS="$ImageMagick_LIBS"
++ fi
++ if test $found -eq 1
++ then
++ CFLAGS="$CFLAGS $MAGICK_CFLAGS"
++dnl UNIQUIFY will remove duplicate library tokens leaving the last instance.
++ AC_UTILS_UNIQUIFY([$LIBS $MAGICK_LIBS], LIBS)
++ FMT_LIBS="$FMT_LIBS $static_lib"
++ AC_DEFINE(HAVE_LIBMAGICK, 1, [Define to 1 if you have the ImageMagick libraries])
++ have_magick='yes'
++dnl legacy checks installations without pkg-config
++ else
++ AS_MESSAGE([checking for ImageMagick support (no pkg-config) ......])
+ AC_CHECK_PROG(HAVE_MC, Magick-config, yes, no)
+
+ failed=0;
+@@ -866,6 +888,7 @@
+ fi
+ fi
+ fi
++fi
+
+ AC_LANG([C++])
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[int a = true;]])],
+--- dx-4.4.4.orig/src/exec/dxmods/Makefile.am
++++ dx-4.4.4/src/exec/dxmods/Makefile.am
+@@ -113,4 +113,5 @@
+ $(SOURCES6) \
+ $(SOURCES7)
+
++libDXMODS_la_LIBADD = @MAGICK_LIBS@
+ @LOCALMAKE@
diff --git a/sci-visualization/opendx/files/opendx-4.4.4-null.patch b/sci-visualization/opendx/files/opendx-4.4.4-null.patch
new file mode 100644
index 00000000000..5d3022a3a9d
--- /dev/null
+++ b/sci-visualization/opendx/files/opendx-4.4.4-null.patch
@@ -0,0 +1,14 @@
+diff -up dx-4.4.4/src/exec/libdx/xwindow.c.null dx-4.4.4/src/exec/libdx/xwindow.c
+--- dx-4.4.4/src/exec/libdx/xwindow.c.null 2000-06-12 07:45:40.000000000 +0200
++++ dx-4.4.4/src/exec/libdx/xwindow.c 2009-11-08 15:10:13.000000000 +0100
+@@ -29,7 +29,9 @@ Error
+ DXRegisterWindowHandlerWithCheckProc(Error (*proc) (int, Pointer),
+ int (*check)(int, Pointer), Display *d, Pointer arg)
+ {
+- int fd = ConnectionNumber(d);
++ int fd;
++ if (d) fd = ConnectionNumber(d);
++ else return ERROR;
+
+ if (! DXRegisterInputHandlerWithCheckProc(proc, check, fd, arg))
+ return ERROR;
diff --git a/sci-visualization/opendx/files/opendx-4.4.4-open.patch b/sci-visualization/opendx/files/opendx-4.4.4-open.patch
new file mode 100644
index 00000000000..b62ebd094be
--- /dev/null
+++ b/sci-visualization/opendx/files/opendx-4.4.4-open.patch
@@ -0,0 +1,34 @@
+diff -up dx-4.4.4/src/exec/libdx/fileio.c.open dx-4.4.4/src/exec/libdx/fileio.c
+--- dx-4.4.4/src/exec/libdx/fileio.c.open 2006-01-05 23:55:47.000000000 +0100
++++ dx-4.4.4/src/exec/libdx/fileio.c 2008-09-24 19:16:30.000000000 +0200
+@@ -263,7 +263,7 @@ Error _dxffile_open(char *name, int rw)
+ case 2:/* read/write */
+ fd = open(name, O_RDWR);
+ if (fd < 0) {
+- fd = open(name, O_WRONLY | O_CREAT);
++ fd = open(name, O_WRONLY | O_CREAT, S_IRUSR | S_IWUSR);
+ if (fd < 0) {
+ DXSetError(ERROR_DATA_INVALID,
+ "can't open/create file '%s'", name);
+diff -up dx-4.4.4/src/exec/libdx/plock.c.open dx-4.4.4/src/exec/libdx/plock.c
+--- dx-4.4.4/src/exec/libdx/plock.c.open 2002-07-17 06:48:18.000000000 +0200
++++ dx-4.4.4/src/exec/libdx/plock.c 2008-09-24 19:16:30.000000000 +0200
+@@ -37,7 +37,8 @@ struct seminfo *__buf; /* buffer fo
+
+ #define SEM_FLAGS (IPC_CREAT | S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH)
+ #define SHM_FLAGS (IPC_CREAT | S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH)
+-#define OPEN_FLAGS (O_CREAT | S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH)
++#define OPEN_FLAGS (O_CREAT)
++#define OPEN_MODE (S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH)
+ #define IS_MINE(a) (locks->_owner[a] == getpid())
+ #define SET_OWNER(a) (locks->_owner[a] = getpid())
+ #define CLEAR_OWNER(a) (locks->_owner[a] = 0)
+@@ -268,7 +269,7 @@ PLockInit()
+
+ if (stat(LOCKFILE, &statbuf))
+ {
+- int fd = open(LOCKFILE, OPEN_FLAGS);
++ int fd = open(LOCKFILE, OPEN_FLAGS, OPEN_MODE);
+ if (fd < 0)
+ {
+ fprintf(stderr, "initLocks: error accessing locks shared block: open\n");
diff --git a/sci-visualization/opendx/files/opendx-4.4.4-szip.patch b/sci-visualization/opendx/files/opendx-4.4.4-szip.patch
new file mode 100644
index 00000000000..5e63d4e6b21
--- /dev/null
+++ b/sci-visualization/opendx/files/opendx-4.4.4-szip.patch
@@ -0,0 +1,55 @@
+--- configure.ac.orig 2009-06-14 22:10:24.000000000 +1200
++++ configure.ac 2009-06-14 22:26:29.000000000 +1200
+@@ -148,6 +148,12 @@ AC_ARG_WITH(netcdf,
+ [with_netcdf=$withval],
+ [with_netcdf='yes'])
+
++# Enable szip.
++AC_ARG_WITH(szlib,
++ [ --with-szlib Use szlib library for external szlib I/O (default is yes)],
++ [with_szlib=$withval],
++ [with_szlib='yes'])
++
+ # Enable 64-bit arenas, if supported
+ AC_ARG_WITH(large-arenas,
+ [ --with-large-arenas enable 64-bit arenas, when available (default is no)],
+@@ -790,6 +796,39 @@ fi
+
+
+ #
++# Check for szlib
++#
++have_szlib='no'
++LIB_SZLIB=''
++if test "$with_szlib" != 'no'
++then
++ AS_MESSAGE([checking for szlib ......])
++ failed=0;
++ passed=0;
++ AC_CHECK_HEADERS(szlib.h, passed=`expr $passed + 1`,failed=`expr $failed + 1`)
++ AC_CHECK_LIB(sz, SZ_BufftoBuffCompress,passed=`expr $passed + 1`,failed=`expr $failed + 1`,)
++ AC_MSG_CHECKING(if szlib package is complete)
++ if test $passed -gt 0
++ then
++ if test $failed -gt 0
++ then
++ AC_MSG_RESULT(no -- some components failed test)
++ have_szlib='no (failed tests)'
++ else
++ LIB_SZLIB='-lsz'
++ LIBS="$LIB_SZLIB $LIBS"
++ FMT_LIBS="$FMT_LIBS libsz.a"
++ AC_DEFINE(HAVE_LIBSZIP, 1, [Define to 1 if you have the SZLIB libraries])
++ AC_MSG_RESULT(yes)
++ have_szlib='yes'
++ fi
++ else
++ AC_MSG_RESULT(no)
++ fi
++fi
++
++
++#
+ # Check for IMAGEMAGICK
+ #
+ have_magick='no'
diff --git a/sci-visualization/opendx/files/opendx-4.4.4-xdg.patch b/sci-visualization/opendx/files/opendx-4.4.4-xdg.patch
new file mode 100644
index 00000000000..c5b38f274bc
--- /dev/null
+++ b/sci-visualization/opendx/files/opendx-4.4.4-xdg.patch
@@ -0,0 +1,26 @@
+diff -up bin/url_handler.sh.orig bin/url_handler.sh
+--- bin/url_handler.sh.orig 2009-05-02 23:21:08.000000000 +1200
++++ bin/url_handler.sh 2009-05-02 23:24:25.000000000 +1200
+@@ -27,21 +27,7 @@ case $method in
+ mailto) mutt `echo "$url" | sed 's;^[^:]*:\(.*\);\1;'`
+ ;;
+
+- *) use_xbrowser=n
+- case "$DISPLAY" in
+- :0) use_xbrowser=y
+- ;;
+- :0.*) use_xbrowser=y
+- ;;
+- unix:0.*) use_xbrowser=y
+- ;;
+- esac
+- if [ $use_xbrowser = n ]; then
+- lynx "$url"
+- else
+- netscape -remote "openURL($url)" 2> /dev/null || \
+- (netscape "$url" &)
+- fi
++ *) xdg-open "$url"
+ ;;
+ esac
+
diff --git a/sci-visualization/opendx/metadata.xml b/sci-visualization/opendx/metadata.xml
new file mode 100644
index 00000000000..01052375760
--- /dev/null
+++ b/sci-visualization/opendx/metadata.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>sci</herd>
+<longdescription lang='en'>
+ The Open Data Explorer brings together dynamic computational
+ and rendering tools in a dynamic, programmable framework that
+ enables users to rapidly create visualizations of highly complex
+ data from disparate sources.
+
+ Data Explorer can be used to add visualization capabilities to
+ existing applications. It is used by companies and institutions for
+ applications in a large variety of visualization fields including
+ computational fluid dynamics, medical imagery, computational
+ chemistry, and engineering analysis.
+</longdescription>
+<use>
+ <flag name='cdf'>Add support for <pkg>sci-libs/cdf</pkg> data exchange
+ format</flag>
+ <flag name='hdf'>Add support for the Hierarchical Data Format
+ (<pkg>sci-libs/hdf</pkg>)</flag>
+</use>
+</pkgmetadata>
diff --git a/sci-visualization/opendx/opendx-4.4.4-r4.ebuild b/sci-visualization/opendx/opendx-4.4.4-r4.ebuild
new file mode 100644
index 00000000000..f77e7e6b17d
--- /dev/null
+++ b/sci-visualization/opendx/opendx-4.4.4-r4.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+MYP=dx-${PV}
+inherit eutils flag-o-matic autotools multilib
+
+DESCRIPTION="3D data visualization tool"
+HOMEPAGE="http://www.opendx.org/"
+SRC_URI="http://opendx.sdsc.edu/source/${MYP}.tar.gz"
+
+LICENSE="IBM"
+SLOT="0"
+KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux"
+IUSE="hdf cdf netcdf tiff imagemagick szip smp"
+
+RDEPEND="x11-libs/libXmu
+ x11-libs/libXi
+ x11-libs/libXp
+ x11-libs/libXpm
+ >=x11-libs/motif-2.3:0
+ virtual/opengl
+ virtual/glu
+ szip? ( sci-libs/szip )
+ hdf? ( sci-libs/hdf )
+ cdf? ( sci-libs/cdf )
+ netcdf? ( sci-libs/netcdf )
+ tiff? ( media-libs/tiff )
+ imagemagick? ( || ( media-gfx/imagemagick media-gfx/graphicsmagick ) )"
+
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+S="${WORKDIR}/${MYP}"
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-4.3.2-sys.h.patch"
+ epatch "${FILESDIR}/${P}-installpaths.patch"
+ epatch "${FILESDIR}/${P}-xdg.patch"
+ epatch "${FILESDIR}/${P}-gcc43.patch"
+ epatch "${FILESDIR}/${P}-dx-errno.patch"
+ epatch "${FILESDIR}/${P}-libtool.patch"
+ epatch "${FILESDIR}/${P}-concurrent-make-fix.patch"
+ epatch "${FILESDIR}/${P}-open.patch"
+ epatch "${FILESDIR}/${P}-szip.patch"
+ epatch "${FILESDIR}/${P}-null.patch"
+ epatch "${FILESDIR}/${P}-magick.patch"
+ eautoreconf
+}
+
+src_configure() {
+ # check flag filtering
+ # with gcc 3.3.2 I had an infinite loop on src/exec/libdx/zclipQ.c
+ append-flags -fno-strength-reduce
+
+ # (#82672)
+ filter-flags -finline-functions
+ replace-flags -O3 -O2
+
+ # opendx uses this variable
+ unset ARCH
+
+ # javadx is currently broken. we may try to fix it someday.
+ econf \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --with-x \
+ --without-javadx \
+ $(use_with szip szlib) \
+ $(use_with cdf) \
+ $(use_with netcdf) \
+ $(use_with hdf) \
+ $(use_with tiff) \
+ $(use_with imagemagick magick) \
+ $(use_enable smp smp-linux)
+}
+
+src_install() {
+ default
+ newicon src/uipp/ui/icon50.xpm ${PN}.xpm
+ make_desktop_entry dx "Open Data Explorer"
+}
diff --git a/sci-visualization/opendx/opendx-4.4.4-r5.ebuild b/sci-visualization/opendx/opendx-4.4.4-r5.ebuild
new file mode 100644
index 00000000000..f8655bc1fac
--- /dev/null
+++ b/sci-visualization/opendx/opendx-4.4.4-r5.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+MYP=dx-${PV}
+inherit eutils flag-o-matic autotools multilib
+
+DESCRIPTION="3D data visualization tool"
+HOMEPAGE="http://www.opendx.org/"
+SRC_URI="http://opendx.sdsc.edu/source/${MYP}.tar.gz"
+
+LICENSE="IBM"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux"
+IUSE="hdf cdf netcdf tiff imagemagick szip smp"
+
+RDEPEND="x11-libs/libXmu
+ x11-libs/libXi
+ x11-libs/libXp
+ x11-libs/libXpm
+ >=x11-libs/motif-2.3:0
+ virtual/opengl
+ virtual/glu
+ szip? ( sci-libs/szip )
+ hdf? ( sci-libs/hdf )
+ cdf? ( sci-libs/cdf )
+ netcdf? ( sci-libs/netcdf )
+ tiff? ( media-libs/tiff )
+ imagemagick? ( media-gfx/imagemagick )"
+
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+S="${WORKDIR}/${MYP}"
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-4.3.2-sys.h.patch"
+ epatch "${FILESDIR}/${P}-installpaths.patch"
+ epatch "${FILESDIR}/${P}-xdg.patch"
+ epatch "${FILESDIR}/${P}-gcc43.patch"
+ epatch "${FILESDIR}/${P}-dx-errno.patch"
+ epatch "${FILESDIR}/${P}-libtool.patch"
+ epatch "${FILESDIR}/${P}-concurrent-make-fix.patch"
+ epatch "${FILESDIR}/${P}-open.patch"
+ epatch "${FILESDIR}/${P}-szip.patch"
+ epatch "${FILESDIR}/${P}-null.patch"
+ eautoreconf
+}
+
+src_configure() {
+ # check flag filtering
+ # with gcc 3.3.2 I had an infinite loop on src/exec/libdx/zclipQ.c
+ append-flags -fno-strength-reduce
+
+ # (#82672)
+ filter-flags -finline-functions
+ replace-flags -O3 -O2
+
+ # opendx uses this variable
+ unset ARCH
+
+ # javadx is currently broken. we may try to fix it someday.
+ econf \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --with-x \
+ --without-javadx \
+ $(use_with szip szlib) \
+ $(use_with cdf) \
+ $(use_with netcdf) \
+ $(use_with hdf) \
+ $(use_with tiff) \
+ $(use_with imagemagick magick) \
+ $(use_enable smp smp-linux)
+}
+
+src_install() {
+ default
+ newicon src/uipp/ui/icon50.xpm ${PN}.xpm
+ make_desktop_entry dx "Open Data Explorer"
+}
diff --git a/sci-visualization/paraview/Manifest b/sci-visualization/paraview/Manifest
new file mode 100644
index 00000000000..98844ecd888
--- /dev/null
+++ b/sci-visualization/paraview/Manifest
@@ -0,0 +1,3 @@
+DIST ParaView-v4.1.0-source.tar.gz 50460304 SHA256 80ef898c158d7fd9ceb0bcd83be1f679eef06ce4f20514a2435330cc97a3fdf3 SHA512 da91f7332a91746d60968a9d6cc1fe4878a3710f8e4a3d675dc65c337d6844f39df4c3e307d424ee0d2a832fd3c0f3d0c4da6a8b0a2aa6902920988fb53b9f7f WHIRLPOOL c3572d12f05b8443eb21a342c140d55e3c41e2af383aa850491aaeec412e62a45a4ee44e6d772dc9b6f141028911cb96b22a7818c6f15bc80bb8553d37008d96
+DIST ParaView-v4.2.0-source.tar.gz 50285547 SHA256 ac26cc5fe5ce82d27531727a01242353d40984826eaa580edea0791887a07b6b SHA512 611f641ccaa62b285c595df0318da94a9e0e67a1c3040f60c33bdd32bf980db8371c84958c9d5f3191cfd5249969a60f51f8e5dfa9bd234c96ec51caecdb37c8 WHIRLPOOL 1c81a95e00f06b3c60e31c82aa6e87979c6d9b8000ca7298904d8c3f09df58153f6dde7b96df5f538a991f5764862d3059d1395db61f12464306d3c3fe919fe7
+DIST ParaView-v4.3.1-source.tar.gz 50842525 SHA256 d534c475fc052215ecadf4ad19d9c7996c634b5d965951292b966710509a2542 SHA512 73c17f7ba757647869b26992c0ac3a6b9298bce9d2b8c2fca28286064f2b83a29753028a29c6f478654fffc96c9d9f5dd638c64df2b05ded425da122109d31e3 WHIRLPOOL 3db1d02db95acf16f29c4784714985e4f6f7a32fbdf7fa58ad85ecfaf6ab60d7959ea3d5a3ab5d36739e56f1ee5b025d9b6275749966b576324629f14e96bde0
diff --git a/sci-visualization/paraview/files/paraview-4.0.1-Protobuf.patch b/sci-visualization/paraview/files/paraview-4.0.1-Protobuf.patch
new file mode 100644
index 00000000000..6a09a1ac9a7
--- /dev/null
+++ b/sci-visualization/paraview/files/paraview-4.0.1-Protobuf.patch
@@ -0,0 +1,72 @@
+http://paraview.org/Bug/view.php?id=13656
+
+diff -up ParaView/ParaViewCore/ServerImplementation/Core/CMakeLists.txt.Protobuf ParaView/ParaViewCore/ServerImplementation/Core/CMakeLists.txt
+--- ParaView/ParaViewCore/ServerImplementation/Core/CMakeLists.txt.Protobuf 2012-11-08 07:51:51.000000000 -0700
++++ ParaView/ParaViewCore/ServerImplementation/Core/CMakeLists.txt 2012-11-13 15:17:53.980027098 -0700
+@@ -81,16 +81,24 @@
+ #------------------------------------------------------------------------------
+ # Generate the protbuf message file.
+ #------------------------------------------------------------------------------
+-get_target_property(PROTOC_LOCATION protoc_compiler LOCATION)
++if (VTK_USE_SYSTEM_PROTOBUF)
++ set (_PROTOC_COMPILER protoc)
++ set (_PROTOC_DEPEND "")
++else()
++ set (_PROTOC_COMPILER protoc_compiler)
++ set (_PROTOC_DEPEND ${_PROTOC_COMPILER})
++endif()
++
++get_target_property(PROTOC_LOCATION ${_PROTOC_COMPILER} LOCATION)
+ add_custom_command(
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/vtkPVMessage.pb.h
+ ${CMAKE_CURRENT_BINARY_DIR}/vtkPVMessage.pb.cc
+
+- COMMAND protoc_compiler
++ COMMAND ${_PROTOC_COMPILER}
+ "--cpp_out=dllexport_decl=VTKPVSERVERIMPLEMENTATIONCORE_EXPORT:${CMAKE_CURRENT_BINARY_DIR}"
+ --proto_path "@CMAKE_CURRENT_SOURCE_DIR@"
+ "${CMAKE_CURRENT_SOURCE_DIR}/vtkPVMessage.proto"
+- DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/vtkPVMessage.proto protoc_compiler
++ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/vtkPVMessage.proto ${_PROTOC_DEPEND}
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+ )
+
+@@ -109,5 +117,9 @@
+ vtk_module_library(vtkPVServerImplementationCore
+ ${Module_SRCS})
+
++if (VTK_USE_SYSTEM_PROTOBUF)
++ target_link_libraries(vtkPVServerImplementationCore ${CMAKE_THREAD_LIBS_INIT})
++endif()
++
+ add_dependencies(vtkPVServerImplementationCore
+ protobuf_code_generation)
+diff -up ParaView/ThirdParty/protobuf/CMakeLists.txt.Protobuf ParaView/ThirdParty/protobuf/CMakeLists.txt
+--- ParaView/ThirdParty/protobuf/CMakeLists.txt.Protobuf 2012-11-08 07:51:51.000000000 -0700
++++ ParaView/ThirdParty/protobuf/CMakeLists.txt 2012-11-13 15:09:31.526673020 -0700
+@@ -34,7 +34,7 @@
+ set (PROTOBUF_INSTALL_LIB_DIR ${VTK_INSTALL_LIBRARY_DIR})
+ set (PROTOBUF_INSTALL_EXPORT_NAME ${VTK_INSTALL_EXPORT_NAME})
+
+-vtk_module_third_party(protobuf
++vtk_module_third_party(Protobuf
+ INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/vtkprotobuf/src
+ LIBRARIES protobuf
+ )
+@@ -42,10 +42,12 @@
+ # protobuf exports it's build-dir targets to a custom file
+ # (PROTOBUF_EXPORTS.cmake). We don't care much about that. We export
+ # build-dir targets ourselves.
+-vtk_target_export(protobuf)
+-vtk_target_export(protobuf-lite)
+-if (NOT CMAKE_CROSSCOMPILING)
+- vtk_compile_tools_target_export(protoc_compiler)
++if (NOT VTK_USE_SYSTEM_PROTOBUF)
++ vtk_target_export(protobuf)
++ vtk_target_export(protobuf-lite)
++ if (NOT CMAKE_CROSSCOMPILING)
++ vtk_compile_tools_target_export(protoc_compiler)
++ endif()
+ endif()
+
+ # All these exports don't add any install rules. However we make protobuf itself
diff --git a/sci-visualization/paraview/files/paraview-4.0.1-gcc-4.7.patch b/sci-visualization/paraview/files/paraview-4.0.1-gcc-4.7.patch
new file mode 100644
index 00000000000..1b941cfa943
--- /dev/null
+++ b/sci-visualization/paraview/files/paraview-4.0.1-gcc-4.7.patch
@@ -0,0 +1,28 @@
+Description: fix FTBFS with gcc-4.7
+Author: Mathieu Malaterre <malat@debian.org>
+Origin: http://anonscm.debian.org/gitweb/?p=collab-maint/vtk.git;a=commitdiff;h=428e763c995bb303805e07da70c1a34fc103d208
+Reviewed-by: Anton Gladky <gladky.anton@gmail.com>
+Last-Update: 2012-05-08
+
+--- a/VTK/Rendering/FreeType/vtkFreeTypeTools.cxx
++++ b/VTK/Rendering/FreeType/vtkFreeTypeTools.cxx
+@@ -35,6 +35,8 @@
+ using namespace ftgl;
+ #endif
+
++#include <stdint.h>
++
+ // Print debug info
+ #define VTK_FTFC_DEBUG 0
+ #define VTK_FTFC_DEBUG_CD 0
+--- a/VTK/Rendering/FreeType/vtkFreeTypeUtilities.cxx
++++ b/VTK/Rendering/FreeType/vtkFreeTypeUtilities.cxx
+@@ -36,6 +36,8 @@
+ using namespace ftgl;
+ #endif
+
++#include <stdint.h>
++
+ // Print debug info
+
+ #define VTK_FTFC_DEBUG 0
diff --git a/sci-visualization/paraview/files/paraview-4.0.1-removesqlite.patch b/sci-visualization/paraview/files/paraview-4.0.1-removesqlite.patch
new file mode 100644
index 00000000000..be495b4fbb3
--- /dev/null
+++ b/sci-visualization/paraview/files/paraview-4.0.1-removesqlite.patch
@@ -0,0 +1,517 @@
+Description: Import patch from VTK to remove sqlite
+Author: Mathieu Malaterre <mathieu.malaterre@gmail.com>
+Last-Update: Mon Feb 11 14:58:03 UTC 2013
+
+remove the internal copy of sqlite (vtksqlite)
+http://patch-tracker.debian.org/patch/series/view/paraview/3.14.1-7/removesqlite.patch
+
+--- VTK/IO/SQL/vtkSQLiteDatabase.cxx
++++ VTK/IO/SQL/vtkSQLiteDatabase.cxx
+@@ -29,7 +29,7 @@
+ #include <vtksys/ios/fstream>
+ #include <vtksys/ios/sstream>
+
+-#include <vtksqlite/vtk_sqlite3.h>
++#include <sqlite3.h>
+
+ vtkStandardNewMacro(vtkSQLiteDatabase);
+
+@@ -307,15 +307,15 @@
+ }
+ }
+
+- int result = vtk_sqlite3_open(this->DatabaseFileName, & (this->SQLiteInstance));
++ int result = sqlite3_open(this->DatabaseFileName, & (this->SQLiteInstance));
+
+- if (result != VTK_SQLITE_OK)
++ if (result != SQLITE_OK)
+ {
+ vtkDebugMacro(<<"SQLite open() failed. Error code is "
+ << result << " and message is "
+- << vtk_sqlite3_errmsg(this->SQLiteInstance) );
++ << sqlite3_errmsg(this->SQLiteInstance) );
+
+- vtk_sqlite3_close(this->SQLiteInstance);
++ sqlite3_close(this->SQLiteInstance);
+ return false;
+ }
+ else
+@@ -334,8 +334,8 @@
+ }
+ else
+ {
+- int result = vtk_sqlite3_close(this->SQLiteInstance);
+- if (result != VTK_SQLITE_OK)
++ int result = sqlite3_close(this->SQLiteInstance);
++ if (result != SQLITE_OK)
+ {
+ vtkWarningMacro(<< "Close(): SQLite returned result code " << result);
+ }
+@@ -374,7 +374,7 @@
+ if (!status)
+ {
+ vtkErrorMacro(<< "GetTables(): Database returned error: "
+- << vtk_sqlite3_errmsg(this->SQLiteInstance) );
++ << sqlite3_errmsg(this->SQLiteInstance) );
+ query->Delete();
+ return this->Tables;
+ }
+@@ -403,7 +403,7 @@
+ if (!status)
+ {
+ vtkErrorMacro(<< "GetRecord(" << table << "): Database returned error: "
+- << vtk_sqlite3_errmsg(this->SQLiteInstance) );
++ << sqlite3_errmsg(this->SQLiteInstance) );
+ query->Delete();
+ return NULL;
+ }
+@@ -467,10 +467,10 @@
+ // ----------------------------------------------------------------------
+ bool vtkSQLiteDatabase::HasError()
+ {
+- return (vtk_sqlite3_errcode(this->SQLiteInstance)!=VTK_SQLITE_OK);
++ return (sqlite3_errcode(this->SQLiteInstance)!=SQLITE_OK);
+ }
+
+ const char* vtkSQLiteDatabase::GetLastErrorText()
+ {
+- return vtk_sqlite3_errmsg(this->SQLiteInstance);
++ return sqlite3_errmsg(this->SQLiteInstance);
+ }
+--- VTK/IO/SQL/vtkSQLiteQuery.cxx
++++ VTK/IO/SQL/vtkSQLiteQuery.cxx
+@@ -25,7 +25,7 @@
+ #include "vtkVariant.h"
+ #include "vtkVariantArray.h"
+
+-#include <vtksqlite/vtk_sqlite3.h>
++#include <sqlite3.h>
+
+ #include <assert.h>
+
+@@ -43,7 +43,7 @@
+ {
+ this->Statement = NULL;
+ this->InitialFetch = true;
+- this->InitialFetchResult=VTK_SQLITE_DONE;
++ this->InitialFetchResult=SQLITE_DONE;
+ this->LastErrorText = NULL;
+ this->TransactionInProgress = false;
+ }
+@@ -61,7 +61,7 @@
+ {
+ if (this->Database != NULL)
+ {
+- vtk_sqlite3_finalize(this->Statement);
++ sqlite3_finalize(this->Statement);
+ this->Statement = NULL;
+ }
+ }
+@@ -131,8 +131,8 @@
+ if (this->Statement)
+ {
+ vtkDebugMacro(<<"Finalizing old statement");
+- int finalizeStatus = vtk_sqlite3_finalize(this->Statement);
+- if (finalizeStatus != VTK_SQLITE_OK)
++ int finalizeStatus = sqlite3_finalize(this->Statement);
++ if (finalizeStatus != SQLITE_OK)
+ {
+ vtkWarningMacro(<<"SetQuery(): Finalize returned unexpected code "
+ << finalizeStatus);
+@@ -151,19 +151,19 @@
+ return false;
+ }
+
+- vtk_sqlite3 *db = dbContainer->SQLiteInstance;
++ sqlite3 *db = dbContainer->SQLiteInstance;
+ const char *unused_statement;
+
+- int prepareStatus = vtk_sqlite3_prepare_v2(db,
++ int prepareStatus = sqlite3_prepare_v2(db,
+ this->Query,
+ static_cast<int>(strlen(this->Query)),
+ &this->Statement,
+ &unused_statement);
+
+- if (prepareStatus != VTK_SQLITE_OK)
++ if (prepareStatus != SQLITE_OK)
+ {
+- this->SetLastErrorText(vtk_sqlite3_errmsg(db));
+- vtkWarningMacro(<<"SetQuery(): vtk_sqlite3_prepare_v2() failed with error message "
++ this->SetLastErrorText(sqlite3_errmsg(db));
++ vtkWarningMacro(<<"SetQuery(): sqlite3_prepare_v2() failed with error message "
+ << this->GetLastErrorText()
+ << " on statement: '"
+ << this->Query << "'");
+@@ -194,31 +194,31 @@
+ }
+ else
+ {
+- vtk_sqlite3_reset(this->Statement);
++ sqlite3_reset(this->Statement);
+ }
+
+ vtkDebugMacro(<<"Execute(): Query ready to execute.");
+
+ this->InitialFetch = true;
+- int result = vtk_sqlite3_step(this->Statement);
++ int result = sqlite3_step(this->Statement);
+ this->InitialFetchResult = result;
+
+- if (result == VTK_SQLITE_DONE)
++ if (result == SQLITE_DONE)
+ {
+ this->SetLastErrorText(NULL);
+ this->Active = true;
+ return true;
+ }
+- else if (result != VTK_SQLITE_ROW)
++ else if (result != SQLITE_ROW)
+ {
+ vtkSQLiteDatabase *dbContainer =
+ vtkSQLiteDatabase::SafeDownCast(this->Database);
+ assert(dbContainer != NULL);
+
+- vtk_sqlite3 *db = dbContainer->SQLiteInstance;
++ sqlite3 *db = dbContainer->SQLiteInstance;
+
+- this->SetLastErrorText(vtk_sqlite3_errmsg(db));
+- vtkDebugMacro(<< "Execute(): vtk_sqlite3_step() returned error message "
++ this->SetLastErrorText(sqlite3_errmsg(db));
++ vtkDebugMacro(<< "Execute(): sqlite3_step() returned error message "
+ << this->GetLastErrorText());
+ this->Active = false;
+ return false;
+@@ -239,7 +239,7 @@
+ }
+ else
+ {
+- return vtk_sqlite3_column_count(this->Statement);
++ return sqlite3_column_count(this->Statement);
+ }
+ }
+
+@@ -259,7 +259,7 @@
+ }
+ else
+ {
+- return vtk_sqlite3_column_name(this->Statement, column);
++ return sqlite3_column_name(this->Statement, column);
+ }
+ }
+
+@@ -279,22 +279,22 @@
+ }
+ else
+ {
+- switch (vtk_sqlite3_column_type(this->Statement, column))
++ switch (sqlite3_column_type(this->Statement, column))
+ {
+- case VTK_SQLITE_INTEGER:
++ case SQLITE_INTEGER:
+ return VTK_INT;
+- case VTK_SQLITE_FLOAT:
++ case SQLITE_FLOAT:
+ return VTK_FLOAT;
+- case VTK_SQLITE_TEXT:
++ case SQLITE_TEXT:
+ return VTK_STRING;
+- case VTK_SQLITE_BLOB:
++ case SQLITE_BLOB:
+ return VTK_STRING; // until we have a BLOB type of our own
+- case VTK_SQLITE_NULL:
++ case SQLITE_NULL:
+ return VTK_VOID; // ??? what makes sense here?
+ default:
+ {
+ vtkErrorMacro(<<"GetFieldType(): Unknown data type "
+- << vtk_sqlite3_column_type(this->Statement, column)
++ << sqlite3_column_type(this->Statement, column)
+ <<" from SQLite.");
+ return VTK_VOID;
+ }
+@@ -315,7 +315,7 @@
+ {
+ vtkDebugMacro(<<"NextRow(): Initial fetch being handled.");
+ this->InitialFetch = false;
+- if (this->InitialFetchResult == VTK_SQLITE_DONE)
++ if (this->InitialFetchResult == SQLITE_DONE)
+ {
+ return false;
+ }
+@@ -326,12 +326,12 @@
+ }
+ else
+ {
+- int result = vtk_sqlite3_step(this->Statement);
+- if (result == VTK_SQLITE_DONE)
++ int result = sqlite3_step(this->Statement);
++ if (result == SQLITE_DONE)
+ {
+ return false;
+ }
+- else if (result == VTK_SQLITE_ROW)
++ else if (result == SQLITE_ROW)
+ {
+ return true;
+ }
+@@ -339,8 +339,8 @@
+ {
+ vtkSQLiteDatabase *dbContainer = vtkSQLiteDatabase::SafeDownCast( this->Database );
+ assert(dbContainer != NULL);
+- vtk_sqlite3 *db = dbContainer->SQLiteInstance;
+- this->SetLastErrorText(vtk_sqlite3_errmsg(db));
++ sqlite3 *db = dbContainer->SQLiteInstance;
++ this->SetLastErrorText(sqlite3_errmsg(db));
+ vtkErrorMacro(<<"NextRow(): Database returned error code "
+ << result << " with the following message: "
+ << this->GetLastErrorText());
+@@ -366,33 +366,33 @@
+ }
+ else
+ {
+- switch (vtk_sqlite3_column_type(this->Statement, column))
++ switch (sqlite3_column_type(this->Statement, column))
+ {
+- case VTK_SQLITE_INTEGER:
+- return vtkVariant(vtk_sqlite3_column_int(this->Statement, column));
++ case SQLITE_INTEGER:
++ return vtkVariant(sqlite3_column_int(this->Statement, column));
+
+- case VTK_SQLITE_FLOAT:
+- return vtkVariant(vtk_sqlite3_column_double(this->Statement, column));
++ case SQLITE_FLOAT:
++ return vtkVariant(sqlite3_column_double(this->Statement, column));
+
+- case VTK_SQLITE_TEXT:
++ case SQLITE_TEXT:
+ {
+ vtksys_ios::ostringstream str;
+- str << vtk_sqlite3_column_text(this->Statement, column);
++ str << sqlite3_column_text(this->Statement, column);
+ return vtkVariant(vtkStdString(str.str()));
+ }
+
+- case VTK_SQLITE_BLOB:
++ case SQLITE_BLOB:
+ {
+ // This is a hack ... by passing the BLOB to vtkStdString with an explicit
+ // byte count, we ensure that the string will store all of the BLOB's bytes,
+ // even if there are NULL values.
+
+ return vtkVariant(vtkStdString(
+- static_cast<const char*>(vtk_sqlite3_column_blob(this->Statement, column)),
+- vtk_sqlite3_column_bytes(this->Statement, column)));
++ static_cast<const char*>(sqlite3_column_blob(this->Statement, column)),
++ sqlite3_column_bytes(this->Statement, column)));
+ }
+
+- case VTK_SQLITE_NULL:
++ case SQLITE_NULL:
+ default:
+ return vtkVariant();
+ }
+@@ -423,11 +423,11 @@
+ vtkSQLiteDatabase *dbContainer = vtkSQLiteDatabase::SafeDownCast( this->Database );
+ assert(dbContainer != NULL);
+
+- vtk_sqlite3 *db = dbContainer->SQLiteInstance;
++ sqlite3 *db = dbContainer->SQLiteInstance;
+ char *errorMessage = NULL;
+- int result = vtk_sqlite3_exec(db, BEGIN_TRANSACTION, NULL, NULL, &errorMessage);
++ int result = sqlite3_exec(db, BEGIN_TRANSACTION, NULL, NULL, &errorMessage);
+
+- if (result == VTK_SQLITE_OK)
++ if (result == SQLITE_OK)
+ {
+ this->TransactionInProgress = true;
+ this->SetLastErrorText(NULL);
+@@ -451,7 +451,7 @@
+ {
+ if (this->Statement)
+ {
+- vtk_sqlite3_finalize(this->Statement);
++ sqlite3_finalize(this->Statement);
+ this->Statement = NULL;
+ }
+
+@@ -463,11 +463,11 @@
+
+ vtkSQLiteDatabase *dbContainer = vtkSQLiteDatabase::SafeDownCast( this->Database );
+ assert(dbContainer != NULL);
+- vtk_sqlite3 *db = dbContainer->SQLiteInstance;
++ sqlite3 *db = dbContainer->SQLiteInstance;
+ char *errorMessage = NULL;
+- int result = vtk_sqlite3_exec(db, COMMIT_TRANSACTION, NULL, NULL, &errorMessage);
++ int result = sqlite3_exec(db, COMMIT_TRANSACTION, NULL, NULL, &errorMessage);
+
+- if (result == VTK_SQLITE_OK)
++ if (result == SQLITE_OK)
+ {
+ this->TransactionInProgress = false;
+ this->SetLastErrorText(NULL);
+@@ -499,11 +499,11 @@
+
+ vtkSQLiteDatabase *dbContainer = vtkSQLiteDatabase::SafeDownCast( this->Database );
+ assert(dbContainer != NULL);
+- vtk_sqlite3 *db = dbContainer->SQLiteInstance;
++ sqlite3 *db = dbContainer->SQLiteInstance;
+ char *errorMessage = NULL;
+- int result = vtk_sqlite3_exec(db, ROLLBACK_TRANSACTION, NULL, NULL, &errorMessage);
++ int result = sqlite3_exec(db, ROLLBACK_TRANSACTION, NULL, NULL, &errorMessage);
+
+- if (result == VTK_SQLITE_OK)
++ if (result == SQLITE_OK)
+ {
+ this->TransactionInProgress = false;
+ this->SetLastErrorText(NULL);
+@@ -647,11 +647,11 @@
+ if (this->Active)
+ {
+ this->Active = false;
+- vtk_sqlite3_reset(this->Statement);
++ sqlite3_reset(this->Statement);
+ }
+- int status = vtk_sqlite3_bind_int(this->Statement, index+1, value);
++ int status = sqlite3_bind_int(this->Statement, index+1, value);
+
+- if (status != VTK_SQLITE_OK)
++ if (status != SQLITE_OK)
+ {
+ vtksys_ios::ostringstream errormessage;
+ errormessage << "sqlite_bind_int returned error: " << status;
+@@ -676,11 +676,11 @@
+ if (this->Active)
+ {
+ this->Active = false;
+- vtk_sqlite3_reset(this->Statement);
++ sqlite3_reset(this->Statement);
+ }
+- int status = vtk_sqlite3_bind_int(this->Statement, index+1, static_cast<vtk_sqlite_int64>(value));
++ int status = sqlite3_bind_int(this->Statement, index+1, static_cast<sqlite_int64>(value));
+
+- if (status != VTK_SQLITE_OK)
++ if (status != SQLITE_OK)
+ {
+ vtksys_ios::ostringstream errormessage;
+ errormessage << "sqlite_bind_int64 returned error: " << status;
+@@ -705,12 +705,12 @@
+ if (this->Active)
+ {
+ this->Active = false;
+- vtk_sqlite3_reset(this->Statement);
++ sqlite3_reset(this->Statement);
+ }
+
+- int status = vtk_sqlite3_bind_double(this->Statement, index+1, value);
++ int status = sqlite3_bind_double(this->Statement, index+1, value);
+
+- if (status != VTK_SQLITE_OK)
++ if (status != SQLITE_OK)
+ {
+ vtksys_ios::ostringstream errormessage;
+ errormessage << "sqlite_bind_double returned error: " << status;
+@@ -734,12 +734,12 @@
+ if (this->Active)
+ {
+ this->Active = false;
+- vtk_sqlite3_reset(this->Statement);
++ sqlite3_reset(this->Statement);
+ }
+
+- int status = vtk_sqlite3_bind_text(this->Statement, index+1, value, length, VTK_SQLITE_TRANSIENT);
++ int status = sqlite3_bind_text(this->Statement, index+1, value, length, SQLITE_TRANSIENT);
+
+- if (status != VTK_SQLITE_OK)
++ if (status != SQLITE_OK)
+ {
+ vtksys_ios::ostringstream errormessage;
+ errormessage << "sqlite_bind_text returned error: " << status;
+@@ -763,17 +763,17 @@
+ if (this->Active)
+ {
+ this->Active = false;
+- vtk_sqlite3_reset(this->Statement);
++ sqlite3_reset(this->Statement);
+ }
+
+ int status =
+- vtk_sqlite3_bind_blob(this->Statement,
++ sqlite3_bind_blob(this->Statement,
+ index+1,
+ data,
+ length,
+- VTK_SQLITE_TRANSIENT);
++ SQLITE_TRANSIENT);
+
+- if (status != VTK_SQLITE_OK)
++ if (status != SQLITE_OK)
+ {
+ vtksys_ios::ostringstream errormessage;
+ errormessage << "sqlite_bind_blob returned error: " << status;
+@@ -797,12 +797,12 @@
+ if (this->Active)
+ {
+ this->Active = false;
+- vtk_sqlite3_reset(this->Statement);
++ sqlite3_reset(this->Statement);
+ }
+
+- int status = vtk_sqlite3_clear_bindings(this->Statement);
++ int status = sqlite3_clear_bindings(this->Statement);
+
+- if (status != VTK_SQLITE_OK)
++ if (status != SQLITE_OK)
+ {
+ vtksys_ios::ostringstream errormessage;
+ errormessage << "sqlite_clear_bindings returned error: " << status;
+--- VTK/IO/SQL/vtkSQLiteDatabase.h
++++ VTK/IO/SQL/vtkSQLiteDatabase.h
+@@ -49,7 +49,7 @@
+ class vtkSQLQuery;
+ class vtkSQLiteQuery;
+ class vtkStringArray;
+-struct vtk_sqlite3;
++struct sqlite3;
+
+ class VTKIOSQL_EXPORT vtkSQLiteDatabase : public vtkSQLDatabase
+ {
+@@ -147,7 +147,7 @@
+ virtual bool ParseURL(const char* url);
+
+ private:
+- vtk_sqlite3 *SQLiteInstance;
++ sqlite3 *SQLiteInstance;
+
+ // We want this to be private, a user of this class
+ // should not be setting this for any reason
+--- VTK/IO/SQL/vtkSQLiteQuery.h
++++ VTK/IO/SQL/vtkSQLiteQuery.h
+@@ -47,7 +47,7 @@
+ class vtkSQLiteDatabase;
+ class vtkVariant;
+ class vtkVariantArray;
+-struct vtk_sqlite3_stmt;
++struct sqlite3_stmt;
+
+ class VTKIOSQL_EXPORT vtkSQLiteQuery : public vtkSQLQuery
+ {
+@@ -155,7 +155,7 @@
+ vtkSQLiteQuery(const vtkSQLiteQuery &); // Not implemented.
+ void operator=(const vtkSQLiteQuery &); // Not implemented.
+
+- vtk_sqlite3_stmt *Statement;
++ sqlite3_stmt *Statement;
+ bool InitialFetch;
+ int InitialFetchResult;
+ char *LastErrorText;
+--- VTK/ThirdParty/sqlite/CMakeLists.txt
++++ VTK/ThirdParty/sqlite/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-set(vtksqlite_THIRD_PARTY 1)
+-set(vtksqlite_LIBRARIES vtksqlite)
++#set(vtksqlite_THIRD_PARTY 1)
++set(vtksqlite_LIBRARIES sqlite3)
+ vtk_module_export_info()
+-add_subdirectory(vtksqlite)
++#add_subdirectory(vtksqlite)
diff --git a/sci-visualization/paraview/files/paraview-4.0.1-vtk-cg-path.patch b/sci-visualization/paraview/files/paraview-4.0.1-vtk-cg-path.patch
new file mode 100644
index 00000000000..58ddde97d4f
--- /dev/null
+++ b/sci-visualization/paraview/files/paraview-4.0.1-vtk-cg-path.patch
@@ -0,0 +1,36 @@
+--- ParaView-3.98.0-src/VTK/CMake/FindCg.cmake
++++ ParaView-3.98.0-src/VTK/CMake/FindCg.cmake
+@@ -82,6 +82,7 @@
+ FIND_PROGRAM( CG_COMPILER cgc
+ /usr/bin
+ /usr/local/bin
++ /opt/nvidia-cg-toolkit/bin
+ DOC "The Cg Compiler"
+ )
+ GET_FILENAME_COMPONENT(CG_COMPILER_DIR "${CG_COMPILER}" PATH)
+@@ -89,6 +90,7 @@
+ FIND_PATH( CG_INCLUDE_PATH Cg/cg.h
+ /usr/include
+ /usr/local/include
++ /opt/nvidia-cg-toolkit/include
+ ${CG_COMPILER_SUPER_DIR}/include
+ DOC "The directory where Cg/cg.h resides"
+ )
+@@ -98,6 +100,8 @@
+ /usr/lib
+ /usr/local/lib64
+ /usr/local/lib
++ /opt/nvidia-cg-toolkit/lib64
++ /opt/nvidia-cg-toolkit/lib
+ ${CG_COMPILER_SUPER_DIR}/lib64
+ ${CG_COMPILER_SUPER_DIR}/lib
+ DOC "The Cg runtime library"
+@@ -108,6 +112,8 @@
+ /usr/lib
+ /usr/local/lib64
+ /usr/local/lib
++ /opt/nvidia-cg-toolkit/lib64
++ /opt/nvidia-cg-toolkit/lib
+ ${CG_COMPILER_SUPER_DIR}/lib64
+ ${CG_COMPILER_SUPER_DIR}/lib
+ DOC "The Cg runtime library"
diff --git a/sci-visualization/paraview/files/paraview-4.0.1-vtknetcd.patch b/sci-visualization/paraview/files/paraview-4.0.1-vtknetcd.patch
new file mode 100644
index 00000000000..a478b7dfc2d
--- /dev/null
+++ b/sci-visualization/paraview/files/paraview-4.0.1-vtknetcd.patch
@@ -0,0 +1,79 @@
+adapted from debian patch need to be applied after paraview-3.14.1-removesqlite.patch
+
+--- ParaView-3.98.0-src/VTK/ThirdParty/netcdf/CMakeLists.txt
++++ ParaView-3.98.0-src/VTK/ThirdParty/netcdf/CMakeLists.txt
+@@ -1,8 +1,8 @@
+-set(vtknetcdf_THIRD_PARTY 1)
+-set(vtknetcdf_LIBRARIES vtkNetCDF vtkNetCDF_cxx)
+-set(vtknetcdf_INCLUDE_DIRS
+- ${vtknetcdf_SOURCE_DIR}/vtknetcdf/include
+- ${vtknetcdf_BINARY_DIR}/vtknetcdf
+- )
++#set(vtknetcdf_THIRD_PARTY 1)
++set(vtknetcdf_LIBRARIES netcdf netcdf_c++)
++#set(vtknetcdf_INCLUDE_DIRS
++# ${vtknetcdf_SOURCE_DIR}/vtknetcdf/include
++# ${vtknetcdf_BINARY_DIR}/vtknetcdf
++# )
+ vtk_module_export_info()
+-add_subdirectory(vtknetcdf)
++#add_subdirectory(vtknetcdf)
+--- ParaView-3.98.0-src/VTK/ThirdParty/netcdf/vtk_netcdf.h
++++ ParaView-3.98.0-src/VTK/ThirdParty/netcdf/vtk_netcdf.h
+@@ -16,6 +16,6 @@
+ #define __vtk_netcdf_h
+
+ /* Use the netcdf library configured for VTK. */
+-#include <vtknetcdf/include/netcdf.h>
++#include <netcdf.h>
+
+ #endif
+--- ParaView-3.98.0-src/VTK/ThirdParty/netcdf/vtk_netcdfcpp.h
++++ ParaView-3.98.0-src/VTK/ThirdParty/netcdf/vtk_netcdfcpp.h
+@@ -16,6 +16,6 @@
+ #define __vtk_netcdfcpp_h
+
+ /* Use the netcdf library configured for VTK. */
+-#include <vtknetcdf/cxx/netcdfcpp.h>
++#include <netcdfcpp.h>
+
+ #endif
+--- ParaView-3.98.0-src/VTK/ThirdParty/exodusII/vtkexodusII/test/CMakeLists.txt
++++ ParaView-3.98.0-src/VTK/ThirdParty/exodusII/vtkexodusII/test/CMakeLists.txt
+@@ -21,7 +21,7 @@
+ )
+
+ add_executable(ExoIICTests ${ExoIICTests})
+-target_link_libraries(ExoIICTests vtkCommon vtkexoIIc vtkNetCDF)
++target_link_libraries(ExoIICTests vtkCommon vtkexoIIc netcdf)
+
+ set(TestsToRun ${ExoIICTests})
+ remove(TestsToRun ExoIICTests.cxx)
+--- ParaView-3.98.0-src/VTK/ThirdParty/exodusII/vtkexodusII/CMakeLists.txt
++++ ParaView-3.98.0-src/VTK/ThirdParty/exodusII/vtkexodusII/CMakeLists.txt
+@@ -241,7 +241,7 @@
+
+
+ VTK_ADD_LIBRARY(vtkexoIIc ${cbind_SRCS})
+-TARGET_LINK_LIBRARIES(vtkexoIIc vtkNetCDF)
++TARGET_LINK_LIBRARIES(vtkexoIIc netcdf)
+
+ IF(NOT VTK_INSTALL_NO_DEVELOPMENT)
+ # INSTALL_FILES(${VTK_INSTALL_INCLUDE_DIR}/vtkexodus2 .h
+--- ParaView-3.98.0-src/VTK/IO/NetCDF/CMakeLists.txt
++++ ParaView-3.98.0-src/VTK/IO/NetCDF/CMakeLists.txt
+@@ -10,5 +10,5 @@
+
+ vtk_module_library(vtkIONetCDF ${Module_SRCS})
+
+-target_link_libraries(vtkIONetCDF vtkNetCDF_cxx)
++target_link_libraries(vtkIONetCDF netcdf netcdf_c++)
+ set_target_properties(vtkIONetCDF PROPERTIES LINK_INTERFACE_LIBRARIES "")
+--- ParaView-3.98.0-src/VTK/IO/ParallelNetCDF/CMakeLists.txt
++++ ParaView-3.98.0-src/VTK/IO/ParallelNetCDF/CMakeLists.txt
+@@ -8,4 +8,4 @@
+
+ vtk_module_library(vtkIOParallelNetCDF ${Module_SRCS})
+
+-target_link_libraries(vtkIOParallelNetCDF vtkNetCDF_cxx)
++target_link_libraries(vtkIOParallelNetCDF netcdf netcdf_c++)
diff --git a/sci-visualization/paraview/files/paraview-4.0.1-xdmf-cstring.patch b/sci-visualization/paraview/files/paraview-4.0.1-xdmf-cstring.patch
new file mode 100644
index 00000000000..665f40ad4fa
--- /dev/null
+++ b/sci-visualization/paraview/files/paraview-4.0.1-xdmf-cstring.patch
@@ -0,0 +1,12 @@
+gcc header fix
+
+--- ParaView-3.98.0-src/VTK/ThirdParty/xdmf2/vtkxdmf2/libsrc/XdmfObject.h
++++ ParaView-3.98.0-src/VTK/ThirdParty/xdmf2/vtkxdmf2/libsrc/XdmfObject.h
+@@ -82,6 +82,7 @@
+ # ifdef UNIX
+ # include "sys/file.h"
+ # include "strings.h"
++# include <cstring>
+ # define STRCASECMP strcasecmp
+ # define STRNCASECMP strncasecmp
+ # define STRCMP strcmp
diff --git a/sci-visualization/paraview/files/paraview-4.1.0-glxext-legacy.patch b/sci-visualization/paraview/files/paraview-4.1.0-glxext-legacy.patch
new file mode 100644
index 00000000000..65a5b20d60f
--- /dev/null
+++ b/sci-visualization/paraview/files/paraview-4.1.0-glxext-legacy.patch
@@ -0,0 +1,9 @@
+--- a/ParaView-v4.1.0/VTK/Rendering/OpenGL/vtkXOpenGLRenderWindow.cxx_orig 2014-01-11 15:02:10.000000000 +0100
++++ b/ParaView-v4.1.0/VTK/Rendering/OpenGL/vtkXOpenGLRenderWindow.cxx 2014-11-11 13:12:25.000000000 +0100
+@@ -28,5 +28,5 @@
+ // define GLX_GLXEXT_LEGACY to prevent glx.h to include glxext.h provided by
+ // the system
+-//#define GLX_GLXEXT_LEGACY
++#define GLX_GLXEXT_LEGACY
+ #include "GL/glx.h"
+
diff --git a/sci-visualization/paraview/files/paraview-4.1.0-no-fatal-warnings.patch b/sci-visualization/paraview/files/paraview-4.1.0-no-fatal-warnings.patch
new file mode 100644
index 00000000000..531be2f614f
--- /dev/null
+++ b/sci-visualization/paraview/files/paraview-4.1.0-no-fatal-warnings.patch
@@ -0,0 +1,19 @@
+diff --git a/VTK/CMake/vtkCompilerExtras.cmake b/VTK/CMake/vtkCompilerExtras.cmake
+index 05b2db9..48d9395 100644
+--- a/VTK/CMake/vtkCompilerExtras.cmake
++++ b/VTK/CMake/vtkCompilerExtras.cmake
+@@ -15,11 +15,11 @@ if(CMAKE_COMPILER_IS_GNUCXX)
+ # If we are compiling on Linux then set some extra linker flags too
+ if(CMAKE_SYSTEM_NAME MATCHES Linux)
+ set(CMAKE_SHARED_LINKER_FLAGS
+- "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}")
++ "-Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}")
+ set(CMAKE_MODULE_LINKER_FLAGS
+- "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}")
++ "-Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}")
+ set (CMAKE_EXE_LINKER_FLAGS
+- "-Wl,--fatal-warnings -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}")
++ "-Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}")
+ endif()
+
+ # Now check if we can use visibility to selectively export symbols
diff --git a/sci-visualization/paraview/files/paraview-4.1.0-vtk-freetype.patch b/sci-visualization/paraview/files/paraview-4.1.0-vtk-freetype.patch
new file mode 100644
index 00000000000..b7d3e409cde
--- /dev/null
+++ b/sci-visualization/paraview/files/paraview-4.1.0-vtk-freetype.patch
@@ -0,0 +1,22 @@
+--- a/ParaView-v4.2.0-source/VTK/Rendering/FreeType/vtkFreeTypeTools.cxx_orig 2014-12-23 09:25:35.000000000 +0100
++++ b/ParaView-v4.2.0-source/VTK/Rendering/FreeType/vtkFreeTypeTools.cxx 2014-12-24 09:40:31.886953389 +0100
+@@ -1185,7 +1185,7 @@
+ if (bitmap)
+ {
+ metaData.ascent = std::max(bitmapGlyph->top - 1, metaData.ascent);
+- metaData.descent = std::min(-(bitmap->rows - (bitmapGlyph->top - 1)),
++ metaData.descent = std::min(-(static_cast<int>(bitmap->rows) - (bitmapGlyph->top - 1)),
+ metaData.descent);
+ }
+ ++heightString;
+@@ -1952,8 +1952,8 @@
+ if (bitmap)
+ {
+ bbox[0] = std::min(bbox[0], pen[0] + bitmapGlyph->left);
+- bbox[1] = std::max(bbox[1], pen[0] + bitmapGlyph->left + bitmap->width);
+- bbox[2] = std::min(bbox[2], pen[1] + bitmapGlyph->top - 1 - bitmap->rows);
++ bbox[1] = std::max(bbox[1], pen[0] + bitmapGlyph->left + static_cast<int>(bitmap->width));
++ bbox[2] = std::min(bbox[2], pen[1] + bitmapGlyph->top - 1 - static_cast<int>(bitmap->rows));
+ bbox[3] = std::max(bbox[3], pen[1] + bitmapGlyph->top - 1);
+ }
+ else
diff --git a/sci-visualization/paraview/files/paraview-4.2.0-protobuf-2.patch b/sci-visualization/paraview/files/paraview-4.2.0-protobuf-2.patch
new file mode 100644
index 00000000000..f1ea7b5b01b
--- /dev/null
+++ b/sci-visualization/paraview/files/paraview-4.2.0-protobuf-2.patch
@@ -0,0 +1,161 @@
+diff --git a/ParaViewCore/ServerImplementation/Core/vtkPVMessage.proto b/ParaViewCore/ServerImplementation/Core/vtkPVMessage.proto
+index 60e084c..aed5832 100644
+--- a/ParaViewCore/ServerImplementation/Core/vtkPVMessage.proto
++++ b/ParaViewCore/ServerImplementation/Core/vtkPVMessage.proto
+@@ -21,7 +21,7 @@ message Variant {
+ MAP = 7;
+ }
+
+- required Type type = 1;
++ optional Type type = 1;
+ repeated sint64 idtype = 3;
+ repeated sint32 integer = 4;
+ repeated double float64 = 5;
+@@ -47,8 +47,8 @@ message MessageCollection
+
+ message Message
+ {
+- required uint64 global_id = 1;
+- required uint32 location = 2;
++ optional uint64 global_id = 1;
++ optional uint32 location = 2;
+ optional bool share_only = 3 [default = false];
+ optional bool req_def = 4 [default = false];
+ optional uint32 client_id = 5 [default = 0];
+@@ -62,10 +62,10 @@ message DefinitionHeader
+ {
+ extend Message {
+ // The classname for the driver process i.e. the client, typically
+- required string client_class = 10;
++ optional string client_class = 10;
+
+ // The classname for the process where the processing occurs
+- required string server_class = 11;
++ optional string server_class = 11;
+ }
+ }
+
+@@ -76,32 +76,32 @@ message ProxyState
+
+ message SubProxy
+ {
+- required string name = 1;
+- required uint32 global_id = 2;
++ optional string name = 1;
++ optional uint32 global_id = 2;
+ }
+
+ message Annotation
+ {
+- required string key = 1;
+- required string value = 2;
++ optional string key = 1;
++ optional string value = 2;
+ }
+
+ message UserData
+ {
+- required string key = 1;
++ optional string key = 1;
+ repeated Variant variant = 2;
+ }
+
+ message Property
+ {
+- required string name = 1;
++ optional string name = 1;
+ optional Variant value = 2;
+ repeated UserData user_data = 3;
+ }
+
+ extend Message {
+- required string xml_group = 20;
+- required string xml_name = 21;
++ optional string xml_group = 20;
++ optional string xml_name = 21;
+ optional string xml_sub_proxy_name = 22;
+ repeated Property property = 23;
+ repeated SubProxy subproxy = 24;
+@@ -118,8 +118,8 @@ message PXMRegistrationState
+ message Entry
+ {
+ optional string group = 1;
+- required string name = 2;
+- required uint64 global_id = 3;
++ optional string name = 2;
++ optional uint64 global_id = 3;
+ }
+
+ extend Message {
+@@ -135,9 +135,9 @@ message ProxyDefinitionState
+ {
+ message ProxyXMLDefinition
+ {
+- required string group = 1;
+- required string name = 2;
+- required string xml = 3;
++ optional string group = 1;
++ optional string name = 2;
++ optional string xml = 3;
+ }
+
+ extend Message {
+@@ -181,9 +181,9 @@ message LinkState {
+ OUTPUT = 2;
+ }
+
+- required uint32 proxy = 1;
++ optional uint32 proxy = 1;
+ optional string property_name = 2;
+- required Direction direction = 3;
++ optional Direction direction = 3;
+ }
+
+ extend Message {
+@@ -206,7 +206,7 @@ message MousePointer {
+ }
+
+ extend Message {
+- required uint32 view = 70;
++ optional uint32 view = 70;
+ optional double x = 71 [default = 0];
+ optional double y = 72 [default = 0];
+ optional bool forceShow = 73 [default = false];
+@@ -219,7 +219,7 @@ message MousePointer {
+ message ChartViewBounds {
+
+ extend Message {
+- required uint32 view = 75;
++ optional uint32 view = 75;
+ repeated double range = 76;
+ }
+ }
+@@ -229,7 +229,7 @@ message ChartViewBounds {
+ message ClientsInformation {
+
+ message ClientInfo {
+- required uint32 user = 1;
++ optional uint32 user = 1;
+ optional string name = 2;
+ optional bool is_master = 3 [default = false];
+ optional bool follow_cam = 4 [default = false];
+@@ -242,8 +242,8 @@ message ClientsInformation {
+
+ message ChatMessage {
+ extend Message {
+- required uint32 author = 84;
+- required string txt = 85;
++ optional uint32 author = 84;
++ optional string txt = 85;
+ }
+ }
+
+@@ -256,7 +256,7 @@ message QtEvent {
+ }
+
+ extend Message {
+- required QtEventType type = 98;
++ optional QtEventType type = 98;
+ }
+ }
+
diff --git a/sci-visualization/paraview/files/paraview-4.2.0-protobuf.patch b/sci-visualization/paraview/files/paraview-4.2.0-protobuf.patch
new file mode 100644
index 00000000000..498ad9b78ac
--- /dev/null
+++ b/sci-visualization/paraview/files/paraview-4.2.0-protobuf.patch
@@ -0,0 +1,39 @@
+http://paraview.org/Bug/view.php?id=13656
+
+---
+ ParaViewCore/ServerImplementation/Core/CMakeLists.txt | 12 ++++++++++--
+ 1 file changed, 10 insertions(+), 2 deletions(-)
+
+diff --git a/ParaViewCore/ServerImplementation/Core/CMakeLists.txt b/ParaViewCore/ServerImplementation/Core/CMakeLists.txt
+index 5ca5168..2a7ff4b 100644
+--- a/ParaViewCore/ServerImplementation/Core/CMakeLists.txt
++++ b/ParaViewCore/ServerImplementation/Core/CMakeLists.txt
+@@ -82,15 +82,23 @@ set (${vtk-module}_HDRS
+ #------------------------------------------------------------------------------
+ # Generate the protbuf message file.
+ #------------------------------------------------------------------------------
++if (VTK_USE_SYSTEM_PROTOBUF)
++ set (_PROTOC_COMPILER protoc)
++ set (_PROTOC_DEPEND "")
++else()
++ set (_PROTOC_COMPILER protoc_compiler)
++ set (_PROTOC_DEPEND ${_PROTOC_COMPILER})
++endif()
++
+ add_custom_command(
+ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/vtkPVMessage.pb.h
+ ${CMAKE_CURRENT_BINARY_DIR}/vtkPVMessage.pb.cc
+
+- COMMAND protoc_compiler
++ COMMAND ${_PROTOC_COMPILER}
+ "--cpp_out=dllexport_decl=VTKPVSERVERIMPLEMENTATIONCORE_EXPORT:${CMAKE_CURRENT_BINARY_DIR}"
+ --proto_path "${CMAKE_CURRENT_SOURCE_DIR}"
+ "${CMAKE_CURRENT_SOURCE_DIR}/vtkPVMessage.proto"
+- DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/vtkPVMessage.proto protoc_compiler
++ DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/vtkPVMessage.proto ${_PROTOC_DEPEND}
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+ )
+
+--
+2.0.5
+
diff --git a/sci-visualization/paraview/files/paraview-4.2.0-removesqlite.patch b/sci-visualization/paraview/files/paraview-4.2.0-removesqlite.patch
new file mode 100644
index 00000000000..98619627c7c
--- /dev/null
+++ b/sci-visualization/paraview/files/paraview-4.2.0-removesqlite.patch
@@ -0,0 +1,541 @@
+Description: Import patch from VTK to remove sqlite
+Author: Mathieu Malaterre <mathieu.malaterre@gmail.com>
+Last-Update: Mon Feb 11 14:58:03 UTC 2013
+
+remove the internal copy of sqlite (vtksqlite)
+http://patch-tracker.debian.org/patch/series/view/paraview/3.14.1-7/removesqlite.patch
+
+--- VTK/IO/SQL/vtkSQLiteDatabase.cxx
++++ VTK/IO/SQL/vtkSQLiteDatabase.cxx
+@@ -29,7 +29,7 @@
+ #include <vtksys/ios/fstream>
+ #include <vtksys/ios/sstream>
+
+-#include <vtksqlite/vtk_sqlite3.h>
++#include <sqlite3.h>
+
+ vtkStandardNewMacro(vtkSQLiteDatabase);
+
+@@ -307,15 +307,15 @@
+ }
+ }
+
+- int result = vtk_sqlite3_open(this->DatabaseFileName, & (this->SQLiteInstance));
++ int result = sqlite3_open(this->DatabaseFileName, & (this->SQLiteInstance));
+
+- if (result != VTK_SQLITE_OK)
++ if (result != SQLITE_OK)
+ {
+ vtkDebugMacro(<<"SQLite open() failed. Error code is "
+ << result << " and message is "
+- << vtk_sqlite3_errmsg(this->SQLiteInstance) );
++ << sqlite3_errmsg(this->SQLiteInstance) );
+
+- vtk_sqlite3_close(this->SQLiteInstance);
++ sqlite3_close(this->SQLiteInstance);
+ return false;
+ }
+ else
+@@ -334,8 +334,8 @@
+ }
+ else
+ {
+- int result = vtk_sqlite3_close(this->SQLiteInstance);
+- if (result != VTK_SQLITE_OK)
++ int result = sqlite3_close(this->SQLiteInstance);
++ if (result != SQLITE_OK)
+ {
+ vtkWarningMacro(<< "Close(): SQLite returned result code " << result);
+ }
+@@ -374,7 +374,7 @@
+ if (!status)
+ {
+ vtkErrorMacro(<< "GetTables(): Database returned error: "
+- << vtk_sqlite3_errmsg(this->SQLiteInstance) );
++ << sqlite3_errmsg(this->SQLiteInstance) );
+ query->Delete();
+ return this->Tables;
+ }
+@@ -403,7 +403,7 @@
+ if (!status)
+ {
+ vtkErrorMacro(<< "GetRecord(" << table << "): Database returned error: "
+- << vtk_sqlite3_errmsg(this->SQLiteInstance) );
++ << sqlite3_errmsg(this->SQLiteInstance) );
+ query->Delete();
+ return NULL;
+ }
+@@ -467,10 +467,10 @@
+ // ----------------------------------------------------------------------
+ bool vtkSQLiteDatabase::HasError()
+ {
+- return (vtk_sqlite3_errcode(this->SQLiteInstance)!=VTK_SQLITE_OK);
++ return (sqlite3_errcode(this->SQLiteInstance)!=SQLITE_OK);
+ }
+
+ const char* vtkSQLiteDatabase::GetLastErrorText()
+ {
+- return vtk_sqlite3_errmsg(this->SQLiteInstance);
++ return sqlite3_errmsg(this->SQLiteInstance);
+ }
+--- VTK/IO/SQL/vtkSQLiteQuery.cxx
++++ VTK/IO/SQL/vtkSQLiteQuery.cxx
+@@ -25,7 +25,7 @@
+ #include "vtkVariant.h"
+ #include "vtkVariantArray.h"
+
+-#include <vtksqlite/vtk_sqlite3.h>
++#include <sqlite3.h>
+
+ #include <assert.h>
+
+@@ -43,7 +43,7 @@
+ {
+ this->Statement = NULL;
+ this->InitialFetch = true;
+- this->InitialFetchResult=VTK_SQLITE_DONE;
++ this->InitialFetchResult=SQLITE_DONE;
+ this->LastErrorText = NULL;
+ this->TransactionInProgress = false;
+ }
+@@ -61,7 +61,7 @@
+ {
+ if (this->Database != NULL)
+ {
+- vtk_sqlite3_finalize(this->Statement);
++ sqlite3_finalize(this->Statement);
+ this->Statement = NULL;
+ }
+ }
+@@ -131,8 +131,8 @@
+ if (this->Statement)
+ {
+ vtkDebugMacro(<<"Finalizing old statement");
+- int finalizeStatus = vtk_sqlite3_finalize(this->Statement);
+- if (finalizeStatus != VTK_SQLITE_OK)
++ int finalizeStatus = sqlite3_finalize(this->Statement);
++ if (finalizeStatus != SQLITE_OK)
+ {
+ vtkWarningMacro(<<"SetQuery(): Finalize returned unexpected code "
+ << finalizeStatus);
+@@ -151,19 +151,19 @@
+ return false;
+ }
+
+- vtk_sqlite3 *db = dbContainer->SQLiteInstance;
++ sqlite3 *db = dbContainer->SQLiteInstance;
+ const char *unused_statement;
+
+- int prepareStatus = vtk_sqlite3_prepare_v2(db,
++ int prepareStatus = sqlite3_prepare_v2(db,
+ this->Query,
+ static_cast<int>(strlen(this->Query)),
+ &this->Statement,
+ &unused_statement);
+
+- if (prepareStatus != VTK_SQLITE_OK)
++ if (prepareStatus != SQLITE_OK)
+ {
+- this->SetLastErrorText(vtk_sqlite3_errmsg(db));
+- vtkWarningMacro(<<"SetQuery(): vtk_sqlite3_prepare_v2() failed with error message "
++ this->SetLastErrorText(sqlite3_errmsg(db));
++ vtkWarningMacro(<<"SetQuery(): sqlite3_prepare_v2() failed with error message "
+ << this->GetLastErrorText()
+ << " on statement: '"
+ << this->Query << "'");
+@@ -194,31 +194,31 @@
+ }
+ else
+ {
+- vtk_sqlite3_reset(this->Statement);
++ sqlite3_reset(this->Statement);
+ }
+
+ vtkDebugMacro(<<"Execute(): Query ready to execute.");
+
+ this->InitialFetch = true;
+- int result = vtk_sqlite3_step(this->Statement);
++ int result = sqlite3_step(this->Statement);
+ this->InitialFetchResult = result;
+
+- if (result == VTK_SQLITE_DONE)
++ if (result == SQLITE_DONE)
+ {
+ this->SetLastErrorText(NULL);
+ this->Active = true;
+ return true;
+ }
+- else if (result != VTK_SQLITE_ROW)
++ else if (result != SQLITE_ROW)
+ {
+ vtkSQLiteDatabase *dbContainer =
+ vtkSQLiteDatabase::SafeDownCast(this->Database);
+ assert(dbContainer != NULL);
+
+- vtk_sqlite3 *db = dbContainer->SQLiteInstance;
++ sqlite3 *db = dbContainer->SQLiteInstance;
+
+- this->SetLastErrorText(vtk_sqlite3_errmsg(db));
+- vtkDebugMacro(<< "Execute(): vtk_sqlite3_step() returned error message "
++ this->SetLastErrorText(sqlite3_errmsg(db));
++ vtkDebugMacro(<< "Execute(): sqlite3_step() returned error message "
+ << this->GetLastErrorText());
+ this->Active = false;
+ return false;
+@@ -239,7 +239,7 @@
+ }
+ else
+ {
+- return vtk_sqlite3_column_count(this->Statement);
++ return sqlite3_column_count(this->Statement);
+ }
+ }
+
+@@ -259,7 +259,7 @@
+ }
+ else
+ {
+- return vtk_sqlite3_column_name(this->Statement, column);
++ return sqlite3_column_name(this->Statement, column);
+ }
+ }
+
+@@ -279,22 +279,22 @@
+ }
+ else
+ {
+- switch (vtk_sqlite3_column_type(this->Statement, column))
++ switch (sqlite3_column_type(this->Statement, column))
+ {
+- case VTK_SQLITE_INTEGER:
++ case SQLITE_INTEGER:
+ return VTK_INT;
+- case VTK_SQLITE_FLOAT:
++ case SQLITE_FLOAT:
+ return VTK_FLOAT;
+- case VTK_SQLITE_TEXT:
++ case SQLITE_TEXT:
+ return VTK_STRING;
+- case VTK_SQLITE_BLOB:
++ case SQLITE_BLOB:
+ return VTK_STRING; // until we have a BLOB type of our own
+- case VTK_SQLITE_NULL:
++ case SQLITE_NULL:
+ return VTK_VOID; // ??? what makes sense here?
+ default:
+ {
+ vtkErrorMacro(<<"GetFieldType(): Unknown data type "
+- << vtk_sqlite3_column_type(this->Statement, column)
++ << sqlite3_column_type(this->Statement, column)
+ <<" from SQLite.");
+ return VTK_VOID;
+ }
+@@ -315,7 +315,7 @@
+ {
+ vtkDebugMacro(<<"NextRow(): Initial fetch being handled.");
+ this->InitialFetch = false;
+- if (this->InitialFetchResult == VTK_SQLITE_DONE)
++ if (this->InitialFetchResult == SQLITE_DONE)
+ {
+ return false;
+ }
+@@ -326,12 +326,12 @@
+ }
+ else
+ {
+- int result = vtk_sqlite3_step(this->Statement);
+- if (result == VTK_SQLITE_DONE)
++ int result = sqlite3_step(this->Statement);
++ if (result == SQLITE_DONE)
+ {
+ return false;
+ }
+- else if (result == VTK_SQLITE_ROW)
++ else if (result == SQLITE_ROW)
+ {
+ return true;
+ }
+@@ -339,8 +339,8 @@
+ {
+ vtkSQLiteDatabase *dbContainer = vtkSQLiteDatabase::SafeDownCast( this->Database );
+ assert(dbContainer != NULL);
+- vtk_sqlite3 *db = dbContainer->SQLiteInstance;
+- this->SetLastErrorText(vtk_sqlite3_errmsg(db));
++ sqlite3 *db = dbContainer->SQLiteInstance;
++ this->SetLastErrorText(sqlite3_errmsg(db));
+ vtkErrorMacro(<<"NextRow(): Database returned error code "
+ << result << " with the following message: "
+ << this->GetLastErrorText());
+@@ -366,33 +366,33 @@
+ }
+ else
+ {
+- switch (vtk_sqlite3_column_type(this->Statement, column))
++ switch (sqlite3_column_type(this->Statement, column))
+ {
+- case VTK_SQLITE_INTEGER:
+- return vtkVariant(vtk_sqlite3_column_int(this->Statement, column));
++ case SQLITE_INTEGER:
++ return vtkVariant(sqlite3_column_int(this->Statement, column));
+
+- case VTK_SQLITE_FLOAT:
+- return vtkVariant(vtk_sqlite3_column_double(this->Statement, column));
++ case SQLITE_FLOAT:
++ return vtkVariant(sqlite3_column_double(this->Statement, column));
+
+- case VTK_SQLITE_TEXT:
++ case SQLITE_TEXT:
+ {
+ vtksys_ios::ostringstream str;
+- str << vtk_sqlite3_column_text(this->Statement, column);
++ str << sqlite3_column_text(this->Statement, column);
+ return vtkVariant(vtkStdString(str.str()));
+ }
+
+- case VTK_SQLITE_BLOB:
++ case SQLITE_BLOB:
+ {
+ // This is a hack ... by passing the BLOB to vtkStdString with an explicit
+ // byte count, we ensure that the string will store all of the BLOB's bytes,
+ // even if there are NULL values.
+
+ return vtkVariant(vtkStdString(
+- static_cast<const char*>(vtk_sqlite3_column_blob(this->Statement, column)),
+- vtk_sqlite3_column_bytes(this->Statement, column)));
++ static_cast<const char*>(sqlite3_column_blob(this->Statement, column)),
++ sqlite3_column_bytes(this->Statement, column)));
+ }
+
+- case VTK_SQLITE_NULL:
++ case SQLITE_NULL:
+ default:
+ return vtkVariant();
+ }
+@@ -423,11 +423,11 @@
+ vtkSQLiteDatabase *dbContainer = vtkSQLiteDatabase::SafeDownCast( this->Database );
+ assert(dbContainer != NULL);
+
+- vtk_sqlite3 *db = dbContainer->SQLiteInstance;
++ sqlite3 *db = dbContainer->SQLiteInstance;
+ char *errorMessage = NULL;
+- int result = vtk_sqlite3_exec(db, BEGIN_TRANSACTION, NULL, NULL, &errorMessage);
++ int result = sqlite3_exec(db, BEGIN_TRANSACTION, NULL, NULL, &errorMessage);
+
+- if (result == VTK_SQLITE_OK)
++ if (result == SQLITE_OK)
+ {
+ this->TransactionInProgress = true;
+ this->SetLastErrorText(NULL);
+@@ -451,7 +451,7 @@
+ {
+ if (this->Statement)
+ {
+- vtk_sqlite3_finalize(this->Statement);
++ sqlite3_finalize(this->Statement);
+ this->Statement = NULL;
+ }
+
+@@ -463,11 +463,11 @@
+
+ vtkSQLiteDatabase *dbContainer = vtkSQLiteDatabase::SafeDownCast( this->Database );
+ assert(dbContainer != NULL);
+- vtk_sqlite3 *db = dbContainer->SQLiteInstance;
++ sqlite3 *db = dbContainer->SQLiteInstance;
+ char *errorMessage = NULL;
+- int result = vtk_sqlite3_exec(db, COMMIT_TRANSACTION, NULL, NULL, &errorMessage);
++ int result = sqlite3_exec(db, COMMIT_TRANSACTION, NULL, NULL, &errorMessage);
+
+- if (result == VTK_SQLITE_OK)
++ if (result == SQLITE_OK)
+ {
+ this->TransactionInProgress = false;
+ this->SetLastErrorText(NULL);
+@@ -499,11 +499,11 @@
+
+ vtkSQLiteDatabase *dbContainer = vtkSQLiteDatabase::SafeDownCast( this->Database );
+ assert(dbContainer != NULL);
+- vtk_sqlite3 *db = dbContainer->SQLiteInstance;
++ sqlite3 *db = dbContainer->SQLiteInstance;
+ char *errorMessage = NULL;
+- int result = vtk_sqlite3_exec(db, ROLLBACK_TRANSACTION, NULL, NULL, &errorMessage);
++ int result = sqlite3_exec(db, ROLLBACK_TRANSACTION, NULL, NULL, &errorMessage);
+
+- if (result == VTK_SQLITE_OK)
++ if (result == SQLITE_OK)
+ {
+ this->TransactionInProgress = false;
+ this->SetLastErrorText(NULL);
+@@ -647,11 +647,11 @@
+ if (this->Active)
+ {
+ this->Active = false;
+- vtk_sqlite3_reset(this->Statement);
++ sqlite3_reset(this->Statement);
+ }
+- int status = vtk_sqlite3_bind_int(this->Statement, index+1, value);
++ int status = sqlite3_bind_int(this->Statement, index+1, value);
+
+- if (status != VTK_SQLITE_OK)
++ if (status != SQLITE_OK)
+ {
+ vtksys_ios::ostringstream errormessage;
+ errormessage << "sqlite_bind_int returned error: " << status;
+@@ -676,11 +676,11 @@
+ if (this->Active)
+ {
+ this->Active = false;
+- vtk_sqlite3_reset(this->Statement);
++ sqlite3_reset(this->Statement);
+ }
+- int status = vtk_sqlite3_bind_int(this->Statement, index+1, static_cast<vtk_sqlite_int64>(value));
++ int status = sqlite3_bind_int(this->Statement, index+1, static_cast<sqlite_int64>(value));
+
+- if (status != VTK_SQLITE_OK)
++ if (status != SQLITE_OK)
+ {
+ vtksys_ios::ostringstream errormessage;
+ errormessage << "sqlite_bind_int64 returned error: " << status;
+@@ -705,12 +705,12 @@
+ if (this->Active)
+ {
+ this->Active = false;
+- vtk_sqlite3_reset(this->Statement);
++ sqlite3_reset(this->Statement);
+ }
+
+- int status = vtk_sqlite3_bind_double(this->Statement, index+1, value);
++ int status = sqlite3_bind_double(this->Statement, index+1, value);
+
+- if (status != VTK_SQLITE_OK)
++ if (status != SQLITE_OK)
+ {
+ vtksys_ios::ostringstream errormessage;
+ errormessage << "sqlite_bind_double returned error: " << status;
+@@ -734,12 +734,12 @@
+ if (this->Active)
+ {
+ this->Active = false;
+- vtk_sqlite3_reset(this->Statement);
++ sqlite3_reset(this->Statement);
+ }
+
+- int status = vtk_sqlite3_bind_text(this->Statement, index+1, value, length, VTK_SQLITE_TRANSIENT);
++ int status = sqlite3_bind_text(this->Statement, index+1, value, length, SQLITE_TRANSIENT);
+
+- if (status != VTK_SQLITE_OK)
++ if (status != SQLITE_OK)
+ {
+ vtksys_ios::ostringstream errormessage;
+ errormessage << "sqlite_bind_text returned error: " << status;
+@@ -763,17 +763,17 @@
+ if (this->Active)
+ {
+ this->Active = false;
+- vtk_sqlite3_reset(this->Statement);
++ sqlite3_reset(this->Statement);
+ }
+
+ int status =
+- vtk_sqlite3_bind_blob(this->Statement,
++ sqlite3_bind_blob(this->Statement,
+ index+1,
+ data,
+ length,
+- VTK_SQLITE_TRANSIENT);
++ SQLITE_TRANSIENT);
+
+- if (status != VTK_SQLITE_OK)
++ if (status != SQLITE_OK)
+ {
+ vtksys_ios::ostringstream errormessage;
+ errormessage << "sqlite_bind_blob returned error: " << status;
+@@ -797,12 +797,12 @@
+ if (this->Active)
+ {
+ this->Active = false;
+- vtk_sqlite3_reset(this->Statement);
++ sqlite3_reset(this->Statement);
+ }
+
+- int status = vtk_sqlite3_clear_bindings(this->Statement);
++ int status = sqlite3_clear_bindings(this->Statement);
+
+- if (status != VTK_SQLITE_OK)
++ if (status != SQLITE_OK)
+ {
+ vtksys_ios::ostringstream errormessage;
+ errormessage << "sqlite_clear_bindings returned error: " << status;
+--- VTK/IO/SQL/vtkSQLiteDatabase.h
++++ VTK/IO/SQL/vtkSQLiteDatabase.h
+@@ -49,7 +49,7 @@
+ class vtkSQLQuery;
+ class vtkSQLiteQuery;
+ class vtkStringArray;
+-struct vtk_sqlite3;
++struct sqlite3;
+
+ class VTKIOSQL_EXPORT vtkSQLiteDatabase : public vtkSQLDatabase
+ {
+@@ -147,7 +147,7 @@
+ virtual bool ParseURL(const char* url);
+
+ private:
+- vtk_sqlite3 *SQLiteInstance;
++ sqlite3 *SQLiteInstance;
+
+ // We want this to be private, a user of this class
+ // should not be setting this for any reason
+--- VTK/IO/SQL/vtkSQLiteQuery.h
++++ VTK/IO/SQL/vtkSQLiteQuery.h
+@@ -47,7 +47,7 @@
+ class vtkSQLiteDatabase;
+ class vtkVariant;
+ class vtkVariantArray;
+-struct vtk_sqlite3_stmt;
++struct sqlite3_stmt;
+
+ class VTKIOSQL_EXPORT vtkSQLiteQuery : public vtkSQLQuery
+ {
+@@ -155,7 +155,7 @@
+ vtkSQLiteQuery(const vtkSQLiteQuery &); // Not implemented.
+ void operator=(const vtkSQLiteQuery &); // Not implemented.
+
+- vtk_sqlite3_stmt *Statement;
++ sqlite3_stmt *Statement;
+ bool InitialFetch;
+ int InitialFetchResult;
+ char *LastErrorText;
+--- VTK/ThirdParty/sqlite/CMakeLists.txt
++++ VTK/ThirdParty/sqlite/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-set(vtksqlite_THIRD_PARTY 1)
+-set(vtksqlite_LIBRARIES vtksqlite)
+-vtk_module_export_info()
+-add_subdirectory(vtksqlite)
++#set(vtksqlite_THIRD_PARTY 1)
++#set(vtksqlite_LIBRARIES sqlite3)
++#vtk_module_export_info()
++#add_subdirectory(vtksqlite)
+--- VTK/ThirdParty/sqlite/module.cmake
++++ VTK/ThirdParty/sqlite/module.cmake
+@@ -1 +1 @@
+-vtk_module(vtksqlite EXCLUDE_FROM_WRAPPING)
++#vtk_module(vtksqlite EXCLUDE_FROM_WRAPPING)
+--- VTK/IO/SQL/module.cmake
++++ VTK/IO/SQL/module.cmake
+@@ -5,7 +5,7 @@
+ vtkIOCore
+ PRIVATE_DEPENDS
+ vtksys
+- vtksqlite # We should consider splitting this into a module.
++# vtksqlite # We should consider splitting this into a module.
+ TEST_DEPENDS
+ vtkIOLegacy
+ vtkTestingIOSQL
+--- VTK/IO/SQL/CMakeLists.txt
++++ VTK/IO/SQL/CMakeLists.txt
+@@ -28,3 +28,4 @@
+ )
+
+ vtk_module_library(vtkIOSQL ${Module_SRCS} ${SQLite_SRCS})
++target_link_libraries(vtkIOSQL -lsqlite3)
diff --git a/sci-visualization/paraview/files/paraview-4.2.0-vtk-freetype.patch b/sci-visualization/paraview/files/paraview-4.2.0-vtk-freetype.patch
new file mode 100644
index 00000000000..b7d3e409cde
--- /dev/null
+++ b/sci-visualization/paraview/files/paraview-4.2.0-vtk-freetype.patch
@@ -0,0 +1,22 @@
+--- a/ParaView-v4.2.0-source/VTK/Rendering/FreeType/vtkFreeTypeTools.cxx_orig 2014-12-23 09:25:35.000000000 +0100
++++ b/ParaView-v4.2.0-source/VTK/Rendering/FreeType/vtkFreeTypeTools.cxx 2014-12-24 09:40:31.886953389 +0100
+@@ -1185,7 +1185,7 @@
+ if (bitmap)
+ {
+ metaData.ascent = std::max(bitmapGlyph->top - 1, metaData.ascent);
+- metaData.descent = std::min(-(bitmap->rows - (bitmapGlyph->top - 1)),
++ metaData.descent = std::min(-(static_cast<int>(bitmap->rows) - (bitmapGlyph->top - 1)),
+ metaData.descent);
+ }
+ ++heightString;
+@@ -1952,8 +1952,8 @@
+ if (bitmap)
+ {
+ bbox[0] = std::min(bbox[0], pen[0] + bitmapGlyph->left);
+- bbox[1] = std::max(bbox[1], pen[0] + bitmapGlyph->left + bitmap->width);
+- bbox[2] = std::min(bbox[2], pen[1] + bitmapGlyph->top - 1 - bitmap->rows);
++ bbox[1] = std::max(bbox[1], pen[0] + bitmapGlyph->left + static_cast<int>(bitmap->width));
++ bbox[2] = std::min(bbox[2], pen[1] + bitmapGlyph->top - 1 - static_cast<int>(bitmap->rows));
+ bbox[3] = std::max(bbox[3], pen[1] + bitmapGlyph->top - 1);
+ }
+ else
diff --git a/sci-visualization/paraview/metadata.xml b/sci-visualization/paraview/metadata.xml
new file mode 100644
index 00000000000..56a4243517e
--- /dev/null
+++ b/sci-visualization/paraview/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>tamiko@gentoo.org</email>
+ <name>Matthias Maier</name>
+ </maintainer>
+ <use>
+ <flag name="boost">Enable the usage of dev-libs/boost</flag>
+ <flag name="coprocessing">Enable the coprocessing infrastructure which is mainly useful in the context of clusters</flag>
+ <flag name="cg">Add support for nvidia's cg shaders</flag>
+ <flag name="nvcontrol">Add NVCONTROL support for OpenGL options</flag>
+ <flag name="plugins">Build and install additional plugins</flag>
+ <flag name="development">Install development files including headers</flag>
+ </use>
+</pkgmetadata>
diff --git a/sci-visualization/paraview/paraview-4.1.0-r2.ebuild b/sci-visualization/paraview/paraview-4.1.0-r2.ebuild
new file mode 100644
index 00000000000..20bed184c00
--- /dev/null
+++ b/sci-visualization/paraview/paraview-4.1.0-r2.ebuild
@@ -0,0 +1,302 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+inherit eutils multilib versionator python-single-r1 cmake-utils
+
+MAIN_PV=$(get_major_version)
+MAJOR_PV=$(get_version_component_range 1-2)
+MY_P="ParaView-v${PV}-source"
+
+DESCRIPTION="ParaView is a powerful scientific data visualization application"
+HOMEPAGE="http://www.paraview.org"
+SRC_URI="http://www.paraview.org/files/v${MAJOR_PV}/${MY_P}.tar.gz"
+RESTRICT="mirror"
+
+LICENSE="paraview GPL-2"
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+IUSE="boost cg coprocessing development doc examples ffmpeg mpi mysql nvcontrol plugins python qt4 sqlite tcl test tk"
+RESTRICT="test"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )
+ mysql? ( sqlite )" # "vtksqlite, needed by vtkIOSQL" and "vtkIOSQL, needed by vtkIOMySQL"
+
+RDEPEND="
+ dev-libs/expat
+ dev-libs/jsoncpp
+ dev-libs/libxml2:2
+ <dev-libs/protobuf-2.6
+ media-libs/freetype
+ media-libs/libpng:0
+ media-libs/libtheora
+ media-libs/tiff:0=
+ sci-libs/hdf5[mpi=]
+ >=sci-libs/netcdf-4.2[hdf5]
+ >=sci-libs/netcdf-cxx-4.2:3
+ sys-libs/zlib
+ virtual/jpeg:0
+ virtual/opengl
+ >=x11-libs/gl2ps-1.3.8
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXmu
+ x11-libs/libXt
+ boost? ( >=dev-libs/boost-1.40.0[mpi?,${PYTHON_USEDEP}] )
+ coprocessing? (
+ plugins? (
+ dev-python/PyQt4
+ dev-qt/qtgui:4
+ )
+ )
+ ffmpeg? ( virtual/ffmpeg )
+ mpi? ( virtual/mpi[cxx,romio] )
+ mysql? ( virtual/mysql )
+ python? (
+ ${PYTHON_DEPS}
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/sip[${PYTHON_USEDEP}]
+ dev-python/twisted-core[${PYTHON_USEDEP}]
+ dev-python/zope-interface[${PYTHON_USEDEP}]
+ mpi? ( dev-python/mpi4py[${PYTHON_USEDEP}] )
+ qt4? ( dev-python/PyQt4[opengl,webkit,${PYTHON_USEDEP}] )
+ )
+ qt4? (
+ dev-qt/designer:4
+ dev-qt/qtgui:4
+ dev-qt/qtopengl:4
+ dev-qt/qthelp:4[compat]
+ dev-qt/qtsql:4
+ dev-qt/qtwebkit:4
+ )
+ sqlite? ( dev-db/sqlite:3 )
+ tcl? ( dev-lang/tcl:0= )
+ tk? ( dev-lang/tk:0= )"
+DEPEND="${RDEPEND}
+ doc? ( app-doc/doxygen )"
+
+S=${WORKDIR}/${MY_P%-source}
+
+pkg_setup() {
+ python-single-r1_pkg_setup
+ PVLIBDIR=$(get_libdir)/${PN}-${MAJOR_PV}
+}
+
+src_prepare() {
+ # see patch headers for description
+ epatch "${FILESDIR}"/${PN}-4.0.1-xdmf-cstring.patch \
+ "${FILESDIR}"/${PN}-4.0.1-removesqlite.patch \
+ "${FILESDIR}"/${PN}-4.0.1-gcc-4.7.patch \
+ "${FILESDIR}"/${PN}-4.0.1-vtk-cg-path.patch \
+ "${FILESDIR}"/${PN}-4.0.1-Protobuf.patch \
+ "${FILESDIR}"/${P}-glxext-legacy.patch \
+ "${FILESDIR}"/${P}-no-fatal-warnings.patch \
+ "${FILESDIR}"/${P}-vtk-freetype.patch
+
+ # lib64 fixes
+ sed -i \
+ -e "s:/usr/lib:${EPREFIX}/usr/$(get_libdir):g" \
+ VTK/ThirdParty/xdmf2/vtkxdmf2/libsrc/CMakeLists.txt || die
+ sed -i \
+ -e "s:\/lib\/python:\/$(get_libdir)\/python:g" \
+ VTK/ThirdParty/xdmf2/vtkxdmf2/CMake/setup_install_paths.py || die
+ sed -i \
+ -e "s:lib/paraview-:$(get_libdir)/paraview-:g" \
+ CMakeLists.txt \
+ Plugins/SciberQuestToolKit/CMakeLists.txt \
+ ParaViewConfig.cmake.in \
+ CoProcessing/PythonCatalyst/vtkCPPythonScriptPipeline.cxx \
+ ParaViewCore/ClientServerCore/Core/vtkProcessModuleInitializePython.h \
+ ParaViewCore/ClientServerCore/Core/vtkPVPluginTracker.cxx \
+ Plugins/SciberQuestToolKit/ParaViewPlugin/CMakeLists.txt \
+ Plugins/SciberQuestToolKit/SciberQuest/CMakeLists.txt || die
+
+ # no proper switch
+ use nvcontrol || {
+ sed -i \
+ -e '/VTK_USE_NVCONTROL/s#1#0#' \
+ VTK/Rendering/OpenGL/CMakeLists.txt || die
+ }
+}
+
+src_configure() {
+ local mysql_lib mysql_includedir
+
+ if use mysql ; then
+ if [[ $(mysql_config --version | sed 's/\.//g') -lt 5529 ]] ; then
+ mysql_lib="/usr/$(get_libdir)/mysql/libmysqlclient.so"
+ mysql_includedir="/usr/include/mysql"
+ else
+ mysql_lib="$(mysql_config --variable=pkglibdir)/libmysqlclient.so"
+ mysql_includedir="$(mysql_config --variable=pkgincludedir)"
+ fi
+ fi
+
+ # TODO: use system jsoncpp
+ # VTK_USE_SYSTEM_QTTESTING
+ # PARAVIEW_USE_SYSTEM_AUTOBAHN
+ local mycmakeargs=(
+ -DPV_INSTALL_LIB_DIR="${PVLIBDIR}"
+ -DCMAKE_INSTALL_PREFIX="${EPREFIX}"/usr
+ -DEXPAT_INCLUDE_DIR="${EPREFIX}"/usr/include
+ -DEXPAT_LIBRARY="${EPREFIX}"/usr/$(get_libdir)/libexpat.so
+ -DOPENGL_gl_LIBRARY="${EPREFIX}"/usr/$(get_libdir)/libGL.so
+ -DOPENGL_glu_LIBRARY="${EPREFIX}"/usr/$(get_libdir)/libGLU.so
+ -DBUILD_SHARED_LIBS=ON
+ -DVTK_USE_SYSTEM_EXPAT=ON
+ -DVTK_USE_SYSTEM_FREETYPE=ON
+ -DVTK_USE_SYSTEM_GL2PS=ON
+ -DVTK_USE_SYSTEM_HDF5=ON
+ -DVTK_USE_SYSTEM_JPEG=ON
+ -DVTK_USE_SYSTEM_JSONCPP=ON
+ -DVTK_USE_SYSTEM_LIBXML2=ON
+ -DVTK_USE_SYSTEM_NETCDF=ON
+ -DVTK_USE_SYSTEM_OGGTHEORA=ON
+ -DVTK_USE_SYSTEM_PNG=ON
+ -DVTK_USE_SYSTEM_PROTOBUF=ON
+ -DVTK_USE_SYSTEM_TIFF=ON
+ -DVTK_USE_SYSTEM_XDMF2=OFF
+ -DVTK_USE_SYSTEM_ZLIB=ON
+ -DPARAVIEW_USE_SYSTEM_MPI4PY=ON
+ -DVTK_USE_SYSTEM_ZOPE=ON
+ -DVTK_USE_SYSTEM_TWISTED=ON
+ -DCMAKE_VERBOSE_MAKEFILE=ON
+ -DCMAKE_COLOR_MAKEFILE=TRUE
+ -DVTK_USE_OFFSCREEN=TRUE
+ -DCMAKE_USE_PTHREADS=ON
+ -DVTK_USE_FFMPEG_ENCODER=OFF
+ -DPROTOC_LOCATION=$(type -P protoc)
+ -DVTK_Group_StandAlone=ON
+ -DMYSQL_INCLUDE_DIRECTORIES="$(usex mysql "${mysql_includedir}" "")"
+ -DMYSQL_LIBRARY="$(usex mysql "${mysql_lib}" "")"
+ # force this module due to incorrect build system deps
+ # wrt bug 460528
+ -DModule_vtkUtilitiesProcessXML=ON
+ )
+
+ # TODO: XDMF_USE_MYSQL?
+ # VTK_WRAP_JAVA
+ mycmakeargs+=(
+ $(cmake-utils_use development PARAVIEW_INSTALL_DEVELOPMENT_FILES)
+ $(cmake-utils_use qt4 PARAVIEW_BUILD_QT_GUI)
+ $(cmake-utils_use qt4 Module_vtkGUISupportQtOpenGL)
+ $(cmake-utils_use qt4 Module_vtkGUISupportQtSQL)
+ $(cmake-utils_use qt4 Module_vtkGUISupportQtWebkit)
+ $(cmake-utils_use qt4 Module_vtkRenderingQt)
+ $(cmake-utils_use qt4 Module_vtkViewsQt)
+ $(cmake-utils_use qt4 VTK_Group_ParaViewQt)
+ $(cmake-utils_use qt4 VTK_Group_Qt)
+ $(cmake-utils_use !qt4 PQWIDGETS_DISABLE_QTWEBKIT)
+ $(cmake-utils_use boost Module_vtkInfovisBoost)
+ $(cmake-utils_use boost Module_vtkInfovisBoostGraphAlg)
+ $(cmake-utils_use mpi PARAVIEW_USE_MPI)
+ $(cmake-utils_use mpi PARAVIEW_USE_MPI_SSEND)
+ $(cmake-utils_use mpi PARAVIEW_USE_ICE_T)
+ $(cmake-utils_use mpi VTK_Group_MPI)
+ $(cmake-utils_use mpi VTK_XDMF_USE_MPI)
+ $(cmake-utils_use mpi XDMF_BUILD_MPI)
+ $(cmake-utils_use python PARAVIEW_ENABLE_PYTHON)
+ $(cmake-utils_use python VTK_Group_ParaViewPython)
+ $(cmake-utils_use python XDMF_WRAP_PYTHON)
+ $(cmake-utils_use python Module_vtkPython)
+ $(cmake-utils_use python Module_pqPython)
+ $(cmake-utils_use python Module_vtkWrappingPythonCore)
+ $(cmake-utils_use python Module_vtkPVPythonSupport)
+ $(cmake-utils_use python Module_AutobahnPython)
+ $(cmake-utils_use python Module_Twisted)
+ $(cmake-utils_use python Module_ZopeInterface)
+ $(cmake-utils_use python Module_vtkmpi4py)
+ $(usex qt4 "$(cmake-utils_use python Module_pqPython)" "-DModule_pqPython=OFF")
+ $(cmake-utils_use doc BUILD_DOCUMENTATION)
+ $(cmake-utils_use doc PARAVIEW_BUILD_WEB_DOCUMENTATION)
+ $(cmake-utils_use examples BUILD_EXAMPLES)
+ $(cmake-utils_use cg VTK_USE_CG_SHADERS)
+ $(cmake-utils_use mysql Module_vtkIOMySQL)
+ $(cmake-utils_use sqlite Module_vtksqlite)
+ $(cmake-utils_use coprocessing PARAVIEW_ENABLE_CATALYST)
+ $(cmake-utils_use ffmpeg PARAVIEW_ENABLE_FFMPEG)
+ $(cmake-utils_use ffmpeg VTK_USE_FFMPEG_ENCODER)
+ $(cmake-utils_use ffmpeg Module_vtkIOFFMPEG)
+ $(cmake-utils_use tk VTK_Group_Tk)
+ $(cmake-utils_use tk VTK_USE_TK)
+ $(cmake-utils_use tk Module_vtkRenderingTk)
+ $(cmake-utils_use tcl Module_vtkTclTk)
+ $(cmake-utils_use tcl Module_vtkWrappingTcl)
+ $(cmake-utils_use test BUILD_TESTING)
+ )
+
+ if use qt4 ; then
+ mycmakeargs+=( -DVTK_INSTALL_QT_DIR=/${PVLIBDIR}/plugins/designer )
+ if use python ; then
+ # paraview cannot guess sip directory properly
+ mycmakeargs+=( -DSIP_INCLUDE_DIR="${EPREFIX}$(python_get_includedir)" )
+ fi
+ fi
+
+ # TODO: MantaView VaporPlugin VRPlugin
+ mycmakeargs+=(
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_AdiosReader)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_AnalyzeNIfTIIO)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_ArrowGlyph)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_EyeDomeLighting)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_ForceTime)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_GMVReader)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_H5PartReader)
+ $(cmake-utils_use plugins RAVIEW_BUILD_PLUGIN_MobileRemoteControl)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_Moments)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_NonOrthogonalSource)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_PacMan)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_PointSprite)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_PrismPlugin)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_QuadView)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_SLACTools)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_SciberQuestToolKit)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_SierraPlotTools)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_StreamingParticles)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_SurfaceLIC)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_UncertaintyRendering)
+ # these are always needed for plugins
+ $(cmake-utils_use plugins Module_vtkFiltersFlowPaths)
+ $(cmake-utils_use plugins Module_vtkPVServerManagerApplication)
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ # set up the environment
+ echo "LDPATH=${EPREFIX}/usr/${PVLIBDIR}" > "${T}"/40${PN}
+
+ newicon "${S}"/Applications/ParaView/pvIcon.png paraview.png
+ make_desktop_entry paraview "Paraview" paraview
+
+ use python && python_optimize "${D}"/usr/$(get_libdir)/${PN}-${MAJOR_PV}
+}
+
+pkg_postinst() {
+ # with Qt4.5 there seem to be issues reading data files
+ # under certain locales. Setting LC_ALL=C should fix these.
+ elog ""
+ elog "If you experience data corruption during parsing of"
+ elog "data files with paraview please try setting your"
+ elog "locale to LC_ALL=C."
+ elog "If you plan to use paraview component from an existing shell"
+ elog "you should run env-update and . /etc/profile first"
+ elog ""
+ elog "paraview no longer exports bundled python modules in PYTHONPATH"
+ elog "globally due to clashes of bundled packages with system-wide"
+ elog "site-packages. If you want to use paraview's python modules"
+ elog "export"
+ elog " PYTHONPATH=${EPREFIX}/usr/${PVLIBDIR}:${EPREFIX}/usr/${PVLIBDIR}/site-packages"
+ elog "as needed."
+}
diff --git a/sci-visualization/paraview/paraview-4.2.0-r1.ebuild b/sci-visualization/paraview/paraview-4.2.0-r1.ebuild
new file mode 100644
index 00000000000..62bbc1f8814
--- /dev/null
+++ b/sci-visualization/paraview/paraview-4.2.0-r1.ebuild
@@ -0,0 +1,301 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+inherit eutils multilib versionator python-single-r1 cmake-utils
+
+MAIN_PV=$(get_major_version)
+MAJOR_PV=$(get_version_component_range 1-2)
+MY_P="ParaView-v${PV}-source"
+
+DESCRIPTION="ParaView is a powerful scientific data visualization application"
+HOMEPAGE="http://www.paraview.org"
+SRC_URI="http://www.paraview.org/files/v${MAJOR_PV}/${MY_P}.tar.gz"
+RESTRICT="mirror"
+
+LICENSE="paraview GPL-2"
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+IUSE="boost cg coprocessing development doc examples ffmpeg mpi mysql nvcontrol plugins python qt4 sqlite tcl test tk"
+RESTRICT="test"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )
+ mysql? ( sqlite )" # "vtksqlite, needed by vtkIOSQL" and "vtkIOSQL, needed by vtkIOMySQL"
+
+RDEPEND="
+ dev-libs/expat
+ dev-libs/jsoncpp
+ dev-libs/libxml2:2
+ <dev-libs/protobuf-2.6
+ media-libs/freetype
+ media-libs/libpng:0
+ media-libs/libtheora
+ media-libs/tiff:0=
+ sci-libs/hdf5[mpi=]
+ >=sci-libs/netcdf-4.2[hdf5]
+ >=sci-libs/netcdf-cxx-4.2:3
+ sys-libs/zlib
+ virtual/jpeg:0
+ virtual/opengl
+ >=x11-libs/gl2ps-1.3.8
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXmu
+ x11-libs/libXt
+ boost? ( >=dev-libs/boost-1.40.0[mpi?,${PYTHON_USEDEP}] )
+ coprocessing? (
+ plugins? (
+ dev-python/PyQt4
+ dev-qt/qtgui:4
+ )
+ )
+ ffmpeg? ( virtual/ffmpeg )
+ mpi? ( virtual/mpi[cxx,romio] )
+ mysql? ( virtual/mysql )
+ python? (
+ ${PYTHON_DEPS}
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/sip[${PYTHON_USEDEP}]
+ dev-python/twisted-core[${PYTHON_USEDEP}]
+ dev-python/zope-interface[${PYTHON_USEDEP}]
+ mpi? ( dev-python/mpi4py[${PYTHON_USEDEP}] )
+ qt4? ( dev-python/PyQt4[opengl,webkit,${PYTHON_USEDEP}] )
+ )
+ qt4? (
+ dev-qt/designer:4
+ dev-qt/qtgui:4
+ dev-qt/qtopengl:4
+ dev-qt/qthelp:4[compat]
+ dev-qt/qtsql:4
+ dev-qt/qtwebkit:4
+ )
+ sqlite? ( dev-db/sqlite:3 )
+ tcl? ( dev-lang/tcl:0= )
+ tk? ( dev-lang/tk:0= )"
+DEPEND="${RDEPEND}
+ doc? ( app-doc/doxygen )"
+
+S="${WORKDIR}/${MY_P}"
+
+pkg_setup() {
+ python-single-r1_pkg_setup
+ PVLIBDIR=$(get_libdir)/${PN}-${MAJOR_PV}
+}
+
+src_prepare() {
+ # see patch headers for description
+ epatch "${FILESDIR}"/${PN}-4.0.1-xdmf-cstring.patch \
+ "${FILESDIR}"/${P}-removesqlite.patch \
+ "${FILESDIR}"/${PN}-4.0.1-gcc-4.7.patch \
+ "${FILESDIR}"/${P}-protobuf.patch \
+ "${FILESDIR}"/${P}-protobuf-2.patch \
+ "${FILESDIR}"/${PN}-4.1.0-no-fatal-warnings.patch \
+ "${FILESDIR}"/${P}-vtk-freetype.patch
+
+ # lib64 fixes
+ sed -i \
+ -e "s:/usr/lib:${EPREFIX}/usr/$(get_libdir):g" \
+ VTK/ThirdParty/xdmf2/vtkxdmf2/libsrc/CMakeLists.txt || die
+ sed -i \
+ -e "s:\/lib\/python:\/$(get_libdir)\/python:g" \
+ VTK/ThirdParty/xdmf2/vtkxdmf2/CMake/setup_install_paths.py || die
+ sed -i \
+ -e "s:lib/paraview-:$(get_libdir)/paraview-:g" \
+ CMakeLists.txt \
+ Plugins/SciberQuestToolKit/CMakeLists.txt \
+ ParaViewConfig.cmake.in \
+ CoProcessing/PythonCatalyst/vtkCPPythonScriptPipeline.cxx \
+ ParaViewCore/ClientServerCore/Core/vtkProcessModuleInitializePython.h \
+ ParaViewCore/ClientServerCore/Core/vtkPVPluginTracker.cxx \
+ Plugins/SciberQuestToolKit/ParaViewPlugin/CMakeLists.txt \
+ Plugins/SciberQuestToolKit/SciberQuest/CMakeLists.txt || die
+
+ # no proper switch
+ use nvcontrol || {
+ sed -i \
+ -e '/VTK_USE_NVCONTROL/s#1#0#' \
+ VTK/Rendering/OpenGL/CMakeLists.txt || die
+ }
+}
+
+src_configure() {
+ local mysql_lib mysql_includedir
+
+ if use mysql ; then
+ if [[ $(mysql_config --version | sed 's/\.//g') -lt 5529 ]] ; then
+ mysql_lib="/usr/$(get_libdir)/mysql/libmysqlclient.so"
+ mysql_includedir="/usr/include/mysql"
+ else
+ mysql_lib="$(mysql_config --variable=pkglibdir)/libmysqlclient.so"
+ mysql_includedir="$(mysql_config --variable=pkgincludedir)"
+ fi
+ fi
+
+ # TODO: use system jsoncpp
+ # VTK_USE_SYSTEM_QTTESTING
+ # PARAVIEW_USE_SYSTEM_AUTOBAHN
+ local mycmakeargs=(
+ -DPV_INSTALL_LIB_DIR="${PVLIBDIR}"
+ -DCMAKE_INSTALL_PREFIX="${EPREFIX}"/usr
+ -DEXPAT_INCLUDE_DIR="${EPREFIX}"/usr/include
+ -DEXPAT_LIBRARY="${EPREFIX}"/usr/$(get_libdir)/libexpat.so
+ -DOPENGL_gl_LIBRARY="${EPREFIX}"/usr/$(get_libdir)/libGL.so
+ -DOPENGL_glu_LIBRARY="${EPREFIX}"/usr/$(get_libdir)/libGLU.so
+ -DBUILD_SHARED_LIBS=ON
+ -DVTK_USE_SYSTEM_EXPAT=ON
+ -DVTK_USE_SYSTEM_FREETYPE=ON
+ -DVTK_USE_SYSTEM_GL2PS=ON
+ -DVTK_USE_SYSTEM_HDF5=ON
+ -DVTK_USE_SYSTEM_JPEG=ON
+ -DVTK_USE_SYSTEM_JSONCPP=ON
+ -DVTK_USE_SYSTEM_LIBXML2=ON
+ -DVTK_USE_SYSTEM_NETCDF=ON
+ -DVTK_USE_SYSTEM_OGGTHEORA=ON
+ -DVTK_USE_SYSTEM_PNG=ON
+ -DVTK_USE_SYSTEM_PROTOBUF=ON
+ -DVTK_USE_SYSTEM_TIFF=ON
+ -DVTK_USE_SYSTEM_XDMF2=OFF
+ -DVTK_USE_SYSTEM_ZLIB=ON
+ -DPARAVIEW_USE_SYSTEM_MPI4PY=ON
+ -DVTK_USE_SYSTEM_ZOPE=ON
+ -DVTK_USE_SYSTEM_TWISTED=ON
+ -DCMAKE_VERBOSE_MAKEFILE=ON
+ -DCMAKE_COLOR_MAKEFILE=TRUE
+ -DVTK_USE_OFFSCREEN=TRUE
+ -DCMAKE_USE_PTHREADS=ON
+ -DVTK_USE_FFMPEG_ENCODER=OFF
+ -DPROTOC_LOCATION=$(type -P protoc)
+ -DVTK_Group_StandAlone=ON
+ -DMYSQL_INCLUDE_DIRECTORIES="$(usex mysql "${mysql_includedir}" "")"
+ -DMYSQL_LIBRARY="$(usex mysql "${mysql_lib}" "")"
+ # force this module due to incorrect build system deps
+ # wrt bug 460528
+ -DModule_vtkUtilitiesProcessXML=ON
+ )
+
+ # TODO: XDMF_USE_MYSQL?
+ # VTK_WRAP_JAVA
+ mycmakeargs+=(
+ $(cmake-utils_use development PARAVIEW_INSTALL_DEVELOPMENT_FILES)
+ $(cmake-utils_use qt4 PARAVIEW_BUILD_QT_GUI)
+ $(cmake-utils_use qt4 Module_vtkGUISupportQtOpenGL)
+ $(cmake-utils_use qt4 Module_vtkGUISupportQtSQL)
+ $(cmake-utils_use qt4 Module_vtkGUISupportQtWebkit)
+ $(cmake-utils_use qt4 Module_vtkRenderingQt)
+ $(cmake-utils_use qt4 Module_vtkViewsQt)
+ $(cmake-utils_use qt4 VTK_Group_ParaViewQt)
+ $(cmake-utils_use qt4 VTK_Group_Qt)
+ $(cmake-utils_use !qt4 PQWIDGETS_DISABLE_QTWEBKIT)
+ $(cmake-utils_use boost Module_vtkInfovisBoost)
+ $(cmake-utils_use boost Module_vtkInfovisBoostGraphAlg)
+ $(cmake-utils_use mpi PARAVIEW_USE_MPI)
+ $(cmake-utils_use mpi PARAVIEW_USE_MPI_SSEND)
+ $(cmake-utils_use mpi PARAVIEW_USE_ICE_T)
+ $(cmake-utils_use mpi VTK_Group_MPI)
+ $(cmake-utils_use mpi VTK_XDMF_USE_MPI)
+ $(cmake-utils_use mpi XDMF_BUILD_MPI)
+ $(cmake-utils_use python PARAVIEW_ENABLE_PYTHON)
+ $(cmake-utils_use python VTK_Group_ParaViewPython)
+ $(cmake-utils_use python XDMF_WRAP_PYTHON)
+ $(cmake-utils_use python Module_vtkPython)
+ $(cmake-utils_use python Module_pqPython)
+ $(cmake-utils_use python Module_vtkWrappingPythonCore)
+ $(cmake-utils_use python Module_vtkPVPythonSupport)
+ $(cmake-utils_use python Module_AutobahnPython)
+ $(cmake-utils_use python Module_Twisted)
+ $(cmake-utils_use python Module_ZopeInterface)
+ $(cmake-utils_use python Module_vtkmpi4py)
+ $(usex qt4 "$(cmake-utils_use python Module_pqPython)" "-DModule_pqPython=OFF")
+ $(cmake-utils_use doc BUILD_DOCUMENTATION)
+ $(cmake-utils_use doc PARAVIEW_BUILD_WEB_DOCUMENTATION)
+ $(cmake-utils_use examples BUILD_EXAMPLES)
+ $(cmake-utils_use cg VTK_USE_CG_SHADERS)
+ $(cmake-utils_use mysql Module_vtkIOMySQL)
+ $(cmake-utils_use sqlite Module_vtksqlite)
+ $(cmake-utils_use coprocessing PARAVIEW_ENABLE_CATALYST)
+ $(cmake-utils_use ffmpeg PARAVIEW_ENABLE_FFMPEG)
+ $(cmake-utils_use ffmpeg VTK_USE_FFMPEG_ENCODER)
+ $(cmake-utils_use ffmpeg Module_vtkIOFFMPEG)
+ $(cmake-utils_use tk VTK_Group_Tk)
+ $(cmake-utils_use tk VTK_USE_TK)
+ $(cmake-utils_use tk Module_vtkRenderingTk)
+ $(cmake-utils_use tcl Module_vtkTclTk)
+ $(cmake-utils_use tcl Module_vtkWrappingTcl)
+ $(cmake-utils_use test BUILD_TESTING)
+ )
+
+ if use qt4 ; then
+ mycmakeargs+=( -DVTK_INSTALL_QT_DIR=/${PVLIBDIR}/plugins/designer )
+ if use python ; then
+ # paraview cannot guess sip directory properly
+ mycmakeargs+=( -DSIP_INCLUDE_DIR="${EPREFIX}$(python_get_includedir)" )
+ fi
+ fi
+
+ # TODO: MantaView VaporPlugin VRPlugin
+ mycmakeargs+=(
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_AdiosReader)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_AnalyzeNIfTIIO)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_ArrowGlyph)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_EyeDomeLighting)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_ForceTime)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_GMVReader)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_H5PartReader)
+ $(cmake-utils_use plugins RAVIEW_BUILD_PLUGIN_MobileRemoteControl)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_Moments)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_NonOrthogonalSource)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_PacMan)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_PointSprite)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_PrismPlugin)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_QuadView)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_SLACTools)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_SciberQuestToolKit)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_SierraPlotTools)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_StreamingParticles)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_SurfaceLIC)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_UncertaintyRendering)
+ # these are always needed for plugins
+ $(cmake-utils_use plugins Module_vtkFiltersFlowPaths)
+ $(cmake-utils_use plugins Module_vtkPVServerManagerApplication)
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ # set up the environment
+ echo "LDPATH=${EPREFIX}/usr/${PVLIBDIR}" > "${T}"/40${PN}
+
+ newicon "${S}"/Applications/ParaView/pvIcon-32x32.png paraview.png
+ make_desktop_entry paraview "Paraview" paraview
+
+ use python && python_optimize "${D}"/usr/$(get_libdir)/${PN}-${MAJOR_PV}
+}
+
+pkg_postinst() {
+ # with Qt4.5 there seem to be issues reading data files
+ # under certain locales. Setting LC_ALL=C should fix these.
+ elog ""
+ elog "If you experience data corruption during parsing of"
+ elog "data files with paraview please try setting your"
+ elog "locale to LC_ALL=C."
+ elog "If you plan to use paraview component from an existing shell"
+ elog "you should run env-update and . /etc/profile first"
+ elog ""
+ elog "paraview no longer exports bundled python modules in PYTHONPATH"
+ elog "globally due to clashes of bundled packages with system-wide"
+ elog "site-packages. If you want to use paraview's python modules"
+ elog "export"
+ elog " PYTHONPATH=${EPREFIX}/usr/${PVLIBDIR}:${EPREFIX}/usr/${PVLIBDIR}/site-packages"
+ elog "as needed."
+}
diff --git a/sci-visualization/paraview/paraview-4.3.1.ebuild b/sci-visualization/paraview/paraview-4.3.1.ebuild
new file mode 100644
index 00000000000..bba20916be9
--- /dev/null
+++ b/sci-visualization/paraview/paraview-4.3.1.ebuild
@@ -0,0 +1,301 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+inherit eutils multilib versionator python-single-r1 cmake-utils
+
+MAIN_PV=$(get_major_version)
+MAJOR_PV=$(get_version_component_range 1-2)
+MY_P="ParaView-v${PV}-source"
+
+DESCRIPTION="ParaView is a powerful scientific data visualization application"
+HOMEPAGE="http://www.paraview.org"
+SRC_URI="http://www.paraview.org/files/v${MAJOR_PV}/${MY_P}.tar.gz"
+RESTRICT="mirror"
+
+LICENSE="paraview GPL-2"
+KEYWORDS="~amd64 ~x86"
+SLOT="0"
+IUSE="boost cg coprocessing development doc examples ffmpeg mpi mysql nvcontrol plugins python qt4 sqlite tcl test tk"
+RESTRICT="test"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )
+ mysql? ( sqlite )" # "vtksqlite, needed by vtkIOSQL" and "vtkIOSQL, needed by vtkIOMySQL"
+
+RDEPEND="
+ dev-libs/expat
+ >=dev-libs/jsoncpp-0.10.1
+ dev-libs/libxml2:2
+ <dev-libs/protobuf-2.6
+ media-libs/freetype
+ media-libs/libpng:0
+ media-libs/libtheora
+ media-libs/tiff:0=
+ sci-libs/hdf5[mpi=]
+ >=sci-libs/netcdf-4.2[hdf5]
+ >=sci-libs/netcdf-cxx-4.2:3
+ sys-libs/zlib
+ virtual/jpeg:0
+ virtual/opengl
+ >=x11-libs/gl2ps-1.3.8
+ x11-libs/libX11
+ x11-libs/libXext
+ x11-libs/libXmu
+ x11-libs/libXt
+ coprocessing? (
+ plugins? (
+ dev-python/PyQt4
+ dev-qt/qtgui:4
+ )
+ )
+ ffmpeg? ( virtual/ffmpeg )
+ mpi? ( virtual/mpi[cxx,romio] )
+ mysql? ( virtual/mysql )
+ python? (
+ ${PYTHON_DEPS}
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/sip[${PYTHON_USEDEP}]
+ dev-python/twisted-core
+ dev-python/zope-interface[${PYTHON_USEDEP}]
+ mpi? ( dev-python/mpi4py )
+ qt4? ( dev-python/PyQt4[opengl,webkit,${PYTHON_USEDEP}] )
+ )
+ qt4? (
+ dev-qt/designer:4
+ dev-qt/qtgui:4
+ dev-qt/qtopengl:4
+ dev-qt/qthelp:4[compat]
+ dev-qt/qtsql:4
+ dev-qt/qtwebkit:4
+ )
+ sqlite? ( dev-db/sqlite:3 )
+ tcl? ( dev-lang/tcl:0= )
+ tk? ( dev-lang/tk:0= )"
+DEPEND="${RDEPEND}
+ ${PYTHON_DEPS}
+ boost? ( >=dev-libs/boost-1.40.0[mpi?,${PYTHON_USEDEP}] )
+ doc? ( app-doc/doxygen )"
+
+S="${WORKDIR}/${MY_P}"
+
+pkg_setup() {
+ python-single-r1_pkg_setup
+ PVLIBDIR=$(get_libdir)/${PN}-${MAJOR_PV}
+}
+
+src_prepare() {
+ # see patch headers for description
+ epatch "${FILESDIR}"/${PN}-4.0.1-xdmf-cstring.patch \
+ "${FILESDIR}"/${PN}-4.2.0-removesqlite.patch \
+ "${FILESDIR}"/${PN}-4.0.1-gcc-4.7.patch \
+ "${FILESDIR}"/${PN}-4.2.0-protobuf.patch \
+ "${FILESDIR}"/${PN}-4.2.0-protobuf-2.patch \
+ "${FILESDIR}"/${PN}-4.1.0-no-fatal-warnings.patch \
+ "${FILESDIR}"/${PN}-4.2.0-vtk-freetype.patch
+
+ # lib64 fixes
+ sed -i \
+ -e "s:/usr/lib:${EPREFIX}/usr/$(get_libdir):g" \
+ VTK/ThirdParty/xdmf2/vtkxdmf2/libsrc/CMakeLists.txt || die
+ sed -i \
+ -e "s:\/lib\/python:\/$(get_libdir)\/python:g" \
+ VTK/ThirdParty/xdmf2/vtkxdmf2/CMake/setup_install_paths.py || die
+ sed -i \
+ -e "s:lib/paraview-:$(get_libdir)/paraview-:g" \
+ CMakeLists.txt \
+ Plugins/SciberQuestToolKit/CMakeLists.txt \
+ ParaViewConfig.cmake.in \
+ CoProcessing/PythonCatalyst/vtkCPPythonScriptPipeline.cxx \
+ ParaViewCore/ClientServerCore/Core/vtkProcessModuleInitializePython.h \
+ ParaViewCore/ClientServerCore/Core/vtkPVPluginTracker.cxx \
+ Plugins/SciberQuestToolKit/ParaViewPlugin/CMakeLists.txt \
+ Plugins/SciberQuestToolKit/SciberQuest/CMakeLists.txt || die
+
+ # no proper switch
+ use nvcontrol || {
+ sed -i \
+ -e '/VTK_USE_NVCONTROL/s#1#0#' \
+ VTK/Rendering/OpenGL/CMakeLists.txt || die
+ }
+}
+
+src_configure() {
+ local mysql_lib mysql_includedir
+
+ if use mysql ; then
+ if [[ $(mysql_config --version | sed 's/\.//g') -lt 5529 ]] ; then
+ mysql_lib="/usr/$(get_libdir)/mysql/libmysqlclient.so"
+ mysql_includedir="/usr/include/mysql"
+ else
+ mysql_lib="$(mysql_config --variable=pkglibdir)/libmysqlclient.so"
+ mysql_includedir="$(mysql_config --variable=pkgincludedir)"
+ fi
+ fi
+
+ # VTK_USE_SYSTEM_QTTESTING
+ # PARAVIEW_USE_SYSTEM_AUTOBAHN
+ local mycmakeargs=(
+ -DPV_INSTALL_LIB_DIR="${PVLIBDIR}"
+ -DCMAKE_INSTALL_PREFIX="${EPREFIX}"/usr
+ -DEXPAT_INCLUDE_DIR="${EPREFIX}"/usr/include
+ -DEXPAT_LIBRARY="${EPREFIX}"/usr/$(get_libdir)/libexpat.so
+ -DOPENGL_gl_LIBRARY="${EPREFIX}"/usr/$(get_libdir)/libGL.so
+ -DOPENGL_glu_LIBRARY="${EPREFIX}"/usr/$(get_libdir)/libGLU.so
+ -DBUILD_SHARED_LIBS=ON
+ -DVTK_USE_SYSTEM_EXPAT=ON
+ -DVTK_USE_SYSTEM_FREETYPE=ON
+ -DVTK_USE_SYSTEM_GL2PS=ON
+ -DVTK_USE_SYSTEM_HDF5=ON
+ -DVTK_USE_SYSTEM_JPEG=ON
+ -DVTK_USE_SYSTEM_JSONCPP=ON
+ -DVTK_USE_SYSTEM_LIBXML2=ON
+ -DVTK_USE_SYSTEM_NETCDF=ON
+ -DVTK_USE_SYSTEM_OGGTHEORA=ON
+ -DVTK_USE_SYSTEM_PNG=ON
+ -DVTK_USE_SYSTEM_PROTOBUF=ON
+ -DVTK_USE_SYSTEM_TIFF=ON
+ -DVTK_USE_SYSTEM_XDMF2=OFF
+ -DVTK_USE_SYSTEM_ZLIB=ON
+ -DPARAVIEW_USE_SYSTEM_MPI4PY=ON
+ -DVTK_USE_SYSTEM_ZOPE=ON
+ -DVTK_USE_SYSTEM_TWISTED=ON
+ -DCMAKE_VERBOSE_MAKEFILE=ON
+ -DCMAKE_COLOR_MAKEFILE=TRUE
+ -DVTK_USE_OFFSCREEN=TRUE
+ -DCMAKE_USE_PTHREADS=ON
+ -DVTK_USE_FFMPEG_ENCODER=OFF
+ -DPROTOC_LOCATION=$(type -P protoc)
+ -DVTK_Group_StandAlone=ON
+ -DMYSQL_INCLUDE_DIRECTORIES="$(usex mysql "${mysql_includedir}" "")"
+ -DMYSQL_LIBRARY="$(usex mysql "${mysql_lib}" "")"
+ # force this module due to incorrect build system deps
+ # wrt bug 460528
+ -DModule_vtkUtilitiesProcessXML=ON
+ )
+
+ # TODO: XDMF_USE_MYSQL?
+ # VTK_WRAP_JAVA
+ mycmakeargs+=(
+ $(cmake-utils_use development PARAVIEW_INSTALL_DEVELOPMENT_FILES)
+ $(cmake-utils_use qt4 PARAVIEW_BUILD_QT_GUI)
+ $(cmake-utils_use qt4 Module_vtkGUISupportQtOpenGL)
+ $(cmake-utils_use qt4 Module_vtkGUISupportQtSQL)
+ $(cmake-utils_use qt4 Module_vtkGUISupportQtWebkit)
+ $(cmake-utils_use qt4 Module_vtkRenderingQt)
+ $(cmake-utils_use qt4 Module_vtkViewsQt)
+ $(cmake-utils_use qt4 VTK_Group_ParaViewQt)
+ $(cmake-utils_use qt4 VTK_Group_Qt)
+ $(cmake-utils_use !qt4 PQWIDGETS_DISABLE_QTWEBKIT)
+ $(cmake-utils_use boost Module_vtkInfovisBoost)
+ $(cmake-utils_use boost Module_vtkInfovisBoostGraphAlg)
+ $(cmake-utils_use mpi PARAVIEW_USE_MPI)
+ $(cmake-utils_use mpi PARAVIEW_USE_MPI_SSEND)
+ $(cmake-utils_use mpi PARAVIEW_USE_ICE_T)
+ $(cmake-utils_use mpi VTK_Group_MPI)
+ $(cmake-utils_use mpi VTK_XDMF_USE_MPI)
+ $(cmake-utils_use mpi XDMF_BUILD_MPI)
+ $(cmake-utils_use python PARAVIEW_ENABLE_PYTHON)
+ $(cmake-utils_use python VTK_Group_ParaViewPython)
+ $(cmake-utils_use python XDMF_WRAP_PYTHON)
+ $(cmake-utils_use python Module_vtkPython)
+ $(cmake-utils_use python Module_pqPython)
+ $(cmake-utils_use python Module_vtkWrappingPythonCore)
+ $(cmake-utils_use python Module_vtkPVPythonSupport)
+ $(cmake-utils_use python Module_AutobahnPython)
+ $(cmake-utils_use python Module_Twisted)
+ $(cmake-utils_use python Module_ZopeInterface)
+ $(cmake-utils_use python Module_vtkmpi4py)
+ $(usex qt4 "$(cmake-utils_use python Module_pqPython)" "-DModule_pqPython=OFF")
+ $(cmake-utils_use doc BUILD_DOCUMENTATION)
+ $(cmake-utils_use doc PARAVIEW_BUILD_WEB_DOCUMENTATION)
+ $(cmake-utils_use examples BUILD_EXAMPLES)
+ $(cmake-utils_use cg VTK_USE_CG_SHADERS)
+ $(cmake-utils_use mysql Module_vtkIOMySQL)
+ $(cmake-utils_use sqlite Module_vtksqlite)
+ $(cmake-utils_use coprocessing PARAVIEW_ENABLE_CATALYST)
+ $(cmake-utils_use ffmpeg PARAVIEW_ENABLE_FFMPEG)
+ $(cmake-utils_use ffmpeg VTK_USE_FFMPEG_ENCODER)
+ $(cmake-utils_use ffmpeg Module_vtkIOFFMPEG)
+ $(cmake-utils_use tk VTK_Group_Tk)
+ $(cmake-utils_use tk VTK_USE_TK)
+ $(cmake-utils_use tk Module_vtkRenderingTk)
+ $(cmake-utils_use tcl Module_vtkTclTk)
+ $(cmake-utils_use tcl Module_vtkWrappingTcl)
+ $(cmake-utils_use test BUILD_TESTING)
+ )
+
+ if use qt4 ; then
+ mycmakeargs+=( -DVTK_INSTALL_QT_DIR=/${PVLIBDIR}/plugins/designer )
+ if use python ; then
+ # paraview cannot guess sip directory properly
+ mycmakeargs+=( -DSIP_INCLUDE_DIR="${EPREFIX}$(python_get_includedir)" )
+ fi
+ fi
+
+ # TODO: MantaView VaporPlugin VRPlugin
+ mycmakeargs+=(
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_AdiosReader)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_AnalyzeNIfTIIO)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_ArrowGlyph)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_EyeDomeLighting)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_ForceTime)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_GMVReader)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_H5PartReader)
+ $(cmake-utils_use plugins RAVIEW_BUILD_PLUGIN_MobileRemoteControl)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_Moments)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_NonOrthogonalSource)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_PacMan)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_PointSprite)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_PrismPlugin)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_QuadView)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_SLACTools)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_SciberQuestToolKit)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_SierraPlotTools)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_StreamingParticles)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_SurfaceLIC)
+ $(cmake-utils_use plugins PARAVIEW_BUILD_PLUGIN_UncertaintyRendering)
+ # these are always needed for plugins
+ $(cmake-utils_use plugins Module_vtkFiltersFlowPaths)
+ $(cmake-utils_use plugins Module_vtkPVServerManagerApplication)
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ # set up the environment
+ echo "LDPATH=${EPREFIX}/usr/${PVLIBDIR}" > "${T}"/40${PN}
+
+ newicon "${S}"/Applications/ParaView/pvIcon-32x32.png paraview.png
+ make_desktop_entry paraview "Paraview" paraview
+
+ use python && python_optimize "${D}"/usr/$(get_libdir)/${PN}-${MAJOR_PV}
+}
+
+pkg_postinst() {
+ # with Qt4.5 there seem to be issues reading data files
+ # under certain locales. Setting LC_ALL=C should fix these.
+ elog ""
+ elog "If you experience data corruption during parsing of"
+ elog "data files with paraview please try setting your"
+ elog "locale to LC_ALL=C."
+ elog "If you plan to use paraview component from an existing shell"
+ elog "you should run env-update and . /etc/profile first"
+ elog ""
+ elog "paraview no longer exports bundled python modules in PYTHONPATH"
+ elog "globally due to clashes of bundled packages with system-wide"
+ elog "site-packages. If you want to use paraview's python modules"
+ elog "export"
+ elog " PYTHONPATH=${EPREFIX}/usr/${PVLIBDIR}:${EPREFIX}/usr/${PVLIBDIR}/site-packages"
+ elog "as needed."
+}
diff --git a/sci-visualization/pythonprop/Manifest b/sci-visualization/pythonprop/Manifest
new file mode 100644
index 00000000000..90f7bcbb5de
--- /dev/null
+++ b/sci-visualization/pythonprop/Manifest
@@ -0,0 +1 @@
+DIST pythonprop-0.13.tar.gz 217721 SHA256 c89aa97876755679ccb2fa9baf7b1d20dc7a36f4b8aa4aa35cbf338e7370cbf5 SHA512 b637f48369c926c8dd680a433d46236dc4fa70be79b2325d8f82e320b2d75b1e6d7d992bd81022d27fb6ab118d92178c7ad5ad94f6011a396e4a28d7431bbf2b WHIRLPOOL b6e43058d0495cf54cc7b0f3755531ac06b6c196adc6b76ac1ccd0e60a4b46be477c06d6c480d6822ba75d8da1594c9d727996d52cf4ef80daecaa6df1bd5ec4
diff --git a/sci-visualization/pythonprop/metadata.xml b/sci-visualization/pythonprop/metadata.xml
new file mode 100644
index 00000000000..bafe77814a1
--- /dev/null
+++ b/sci-visualization/pythonprop/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci-electronics</herd>
+ <maintainer>
+ <email>tomjbe@gentoo.org</email>
+ <name>Thomas Beierlein</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">pythonprop</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sci-visualization/pythonprop/pythonprop-0.13.ebuild b/sci-visualization/pythonprop/pythonprop-0.13.ebuild
new file mode 100644
index 00000000000..a0e6bdada4d
--- /dev/null
+++ b/sci-visualization/pythonprop/pythonprop-0.13.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+PYTHON_COMPAT=( python2_7 )
+
+inherit python-single-r1
+
+DESCRIPTION="Scripts to prepare and plot VOACAP propagation predictions"
+HOMEPAGE="http://www.qsl.net/hz1jw/pythonprop"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="sci-electronics/voacapl
+ dev-python/matplotlib[gtk]
+ dev-python/basemap"
+DEPEND="${RDEPEND}"
+
+src_install() {
+ emake DESTDIR="${D}" install
+ dodoc AUTHORS ChangeLog NEWS TODO
+}
diff --git a/sci-visualization/pyxplot/Manifest b/sci-visualization/pyxplot/Manifest
new file mode 100644
index 00000000000..dd31f92ffc2
--- /dev/null
+++ b/sci-visualization/pyxplot/Manifest
@@ -0,0 +1,2 @@
+DIST pyxplot_0.7.1.tar.gz 2439857 SHA256 262b4337c1fdb8e54c11eb76415b814243f6dbab28163fd1e208378d860d2a84
+DIST pyxplot_0.9.2.tar.gz 4131841 SHA256 1c592a0bc77caec445a8d72534471c01d66ca1806309e6c983847c2e0b95e689 SHA512 34c43fec36dd579161c7adb9f0bab012c5d3e59c904526f82a70a31685b88a231c300ab4dbdff376b29fdd5698c376d55f7a2f2786d7960c4de7e6e0776fa844 WHIRLPOOL f380489231f01ad81f983bb7fe11fb0323ca3d5dedeb60c84739e122c567e3581bb04962ecf83f21751d49a773d129b2b332b0aed4e9192ec064b5ee14714881
diff --git a/sci-visualization/pyxplot/files/pyxplot-0.8.3-as-needed.patch b/sci-visualization/pyxplot/files/pyxplot-0.8.3-as-needed.patch
new file mode 100644
index 00000000000..bdb1507a888
--- /dev/null
+++ b/sci-visualization/pyxplot/files/pyxplot-0.8.3-as-needed.patch
@@ -0,0 +1,56 @@
+--- Makefile.skel.orig 2010-09-24 14:54:19.000000000 +0100
++++ Makefile.skel 2010-09-25 20:35:30.000000000 +0100
+@@ -120,17 +120,17 @@
+
+ $(LOCAL_BINDIR)/pyxplot: $(PPL_OBJECTS)
+ mkdir -p $(LOCAL_BINDIR)
+- $(LINK) $(LDFLAGS) $(LIBS) $(PPL_OBJECTS) -o $(LOCAL_BINDIR)/pyxplot
++ $(LINK) $(LDFLAGS) $(PPL_OBJECTS) $(LIBS) -o $(LOCAL_BINDIR)/pyxplot
+
+ $(LOCAL_BINDIR)/debug/pyxplot: $(PPL_OBJECTS_DEBUG)
+ mkdir -p $(LOCAL_BINDIR)/debug
+ echo "The files in this directory are binaries with debugging options enabled: they produce activity logs called 'pyxplot.log'. It should be noted that these binaries can up to ten times slower than non-debugging versions." > $(LOCAL_BINDIR)/debug/README
+- $(LINK) $(LDFLAGS) $(LIBS) $(PPL_OBJECTS_DEBUG) -o $(LOCAL_BINDIR)/debug/pyxplot
++ $(LINK) $(LDFLAGS) $(PPL_OBJECTS_DEBUG) $(LIBS) -o $(LOCAL_BINDIR)/debug/pyxplot
+
+ $(LOCAL_BINDIR)/install/pyxplot: $(PPL_OBJECTS_INSTALL)
+ mkdir -p $(LOCAL_BINDIR)/install
+ echo "The files in this directory are binaries intended to be installed with 'make install'. They should not be used in their present location, as they contain hard-coded links to files which are created by the 'make install' step." > $(LOCAL_BINDIR)/debug/README
+- $(LINK) $(LDFLAGS) $(LIBS) $(PPL_OBJECTS_INSTALL) -o $(LOCAL_BINDIR)/install/pyxplot
++ $(LINK) $(LDFLAGS) $(PPL_OBJECTS_INSTALL) $(LIBS) -o $(LOCAL_BINDIR)/install/pyxplot
+
+ #
+ # Make the pyxplot_watch binaries
+@@ -138,15 +138,15 @@
+
+ $(LOCAL_BINDIR)/pyxplot_watch: $(PPLW_OBJECTS)
+ mkdir -p $(LOCAL_BINDIR)
+- $(LINK) $(LDFLAGS) $(LIBS) $(PPLW_OBJECTS) -o $(LOCAL_BINDIR)/pyxplot_watch
++ $(LINK) $(LDFLAGS) $(PPLW_OBJECTS) $(LIBS) -o $(LOCAL_BINDIR)/pyxplot_watch
+
+ $(LOCAL_BINDIR)/debug/pyxplot_watch: $(PPLW_OBJECTS_DEBUG)
+ mkdir -p $(LOCAL_BINDIR)/debug
+- $(LINK) $(LDFLAGS) $(LIBS) $(PPLW_OBJECTS_DEBUG) -o $(LOCAL_BINDIR)/debug/pyxplot_watch
++ $(LINK) $(LDFLAGS) $(PPLW_OBJECTS_DEBUG) $(LIBS) -o $(LOCAL_BINDIR)/debug/pyxplot_watch
+
+ $(LOCAL_BINDIR)/install/pyxplot_watch: $(PPLW_OBJECTS_INSTALL)
+ mkdir -p $(LOCAL_BINDIR)/install
+- $(LINK) $(LDFLAGS) $(LIBS) $(PPLW_OBJECTS_INSTALL) -o $(LOCAL_BINDIR)/install/pyxplot_watch
++ $(LINK) $(LDFLAGS) $(PPLW_OBJECTS_INSTALL) $(LIBS) -o $(LOCAL_BINDIR)/install/pyxplot_watch
+
+ #
+ # Make fits helper binaries
+@@ -154,11 +154,11 @@
+
+ $(LOCAL_BINDIR)/pyxplot_fitshelper: $(FITSHELP_OBJECTS)
+ mkdir -p $(LOCAL_BINDIR)
+- $(LINK) $(LDFLAGS) $(LINK_FITSIO) $(LIBS) $(FITSHELP_OBJECTS) -o $(LOCAL_BINDIR)/pyxplot_fitshelper
++ $(LINK) $(LDFLAGS) $(FITSHELP_OBJECTS) $(LIBS) $(LINK_FITSIO) -o $(LOCAL_BINDIR)/pyxplot_fitshelper
+
+ $(LOCAL_BINDIR)/install/pyxplot_fitshelper: $(FITSHELP_OBJECTS_INSTALL)
+ mkdir -p $(LOCAL_BINDIR)/install
+- $(LINK) $(LDFLAGS) $(LINK_FITSIO) $(LIBS) $(FITSHELP_OBJECTS_INSTALL) -o $(LOCAL_BINDIR)/install/pyxplot_fitshelper
++ $(LINK) $(LDFLAGS) $(FITSHELP_OBJECTS_INSTALL) $(LIBS) $(LINK_FITSIO) -o $(LOCAL_BINDIR)/install/pyxplot_fitshelper
+
+ #
+ # Make time helper
diff --git a/sci-visualization/pyxplot/metadata.xml b/sci-visualization/pyxplot/metadata.xml
new file mode 100644
index 00000000000..6659594ec46
--- /dev/null
+++ b/sci-visualization/pyxplot/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <longdescription lang="en">
+ PyXPlot is a command-line graphing package with a simple interface
+ that produces publication-quality output. Its command line interface is very
+ gnuplot oriented and has actually some compatibility. The output
+ is based on LaTeX typesetting environment.
+</longdescription>
+ <upstream>
+ <remote-id type="sourceforge">pyxplot</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sci-visualization/pyxplot/pyxplot-0.7.1.ebuild b/sci-visualization/pyxplot/pyxplot-0.7.1.ebuild
new file mode 100644
index 00000000000..e9a30394830
--- /dev/null
+++ b/sci-visualization/pyxplot/pyxplot-0.7.1.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+PYTHON_DEPEND="2"
+
+inherit eutils python
+
+DESCRIPTION="Gnuplot like graphing program publication-quality figures"
+HOMEPAGE="http://www.pyxplot.org.uk/"
+SRC_URI="http://www.pyxplot.org.uk/src/${PN}_${PV}.tar.gz"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+RDEPEND="virtual/latex-base
+ sci-libs/scipy
+ app-text/gv
+ || ( media-gfx/imagemagick media-gfx/graphicsmagick[imagemagick] )"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${PN}"
+
+pkg_setup() {
+ python_set_active_version 2
+ python_pkg_setup
+}
+
+src_prepare() {
+ sed -i \
+ -e "s:^\(USRDIR=\).*:\1/usr:g" \
+ -e "s:^\(SRCDIR=\).*:\1$(python_get_sitedir)/${PN}:g" \
+ -e 's:^\(MANDIR=\).*:\1${USRDIR}/share/man/man1:g' \
+ -e "s:^\(DOCDIR=\).*:\1\${USRDIR}/share/doc/${PF}:g" \
+ -e '/install:/,$s:${\(SRC\|BIN\|DOC\|MAN\)DIR:${DESTDIR}/${\1DIR:g' \
+ -e "/pyc/d" \
+ -e 's/ex_\*/{ex_,fig}\*/' \
+ Makefile.skel || die "sed Makefile.skel failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+ dodoc README AUTHORS ChangeLog
+}
diff --git a/sci-visualization/pyxplot/pyxplot-0.9.2.ebuild b/sci-visualization/pyxplot/pyxplot-0.9.2.ebuild
new file mode 100644
index 00000000000..82905daaa08
--- /dev/null
+++ b/sci-visualization/pyxplot/pyxplot-0.9.2.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit multilib python-single-r1
+
+DESCRIPTION="Gnuplot like graphing program publication-quality figures"
+HOMEPAGE="http://www.pyxplot.org.uk/"
+SRC_URI="mirror://sourceforge/${PN}/${PN}_${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+RDEPEND="
+ app-text/gv
+ dev-libs/libxml2:2
+ media-libs/libpng
+ sci-libs/cfitsio
+ sci-libs/fftw:3.0
+ sci-libs/gsl
+ sci-libs/scipy[${PYTHON_USEDEP}]
+ virtual/latex-base
+ || ( media-gfx/imagemagick media-gfx/graphicsmagick[imagemagick] )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_prepare() {
+ sed \
+ -e "s:/usr/local:${EROOT}usr/:" \
+ -e "s:/lib/:/$(get_libdir)/:" \
+ -e "s:/doc/${PN}:/doc/${PF}:" \
+ -i Makefile.skel || die "sed Makefile.skel failed"
+ sed -i -e 's/-ltermcap//' configure || die
+}
diff --git a/sci-visualization/qtiplot/Manifest b/sci-visualization/qtiplot/Manifest
new file mode 100644
index 00000000000..1fd7b6f384e
--- /dev/null
+++ b/sci-visualization/qtiplot/Manifest
@@ -0,0 +1,2 @@
+DIST qtiplot-0.9.8.9-origin.patch.bz2 104708 SHA256 e83d7212be0fadae31b14c8a86b655fdb3b7c7b8fc80b1e2d91eb0a7e96b1e99 SHA512 62f5bb531c2fc7e061661ab5733a70acf9a61ff90a934af42b5741c63478caebabc8240f37d25660f623c5cbcd530e1303e967a095ca99b3452f29cfb5200b69 WHIRLPOOL 94b4b704737c2e6bb86caa00497164749df7eb01b13b49d06daa8f33b3e34d23782bde4fec617f35755c2e2f4286327bb39270bf48a9f020e94ef113f9d962bb
+DIST qtiplot-0.9.8.9.tar.bz2 16202943 SHA256 a523ea259516d7581abaf2fe376507d152db32f71d88176cff18f5bc391b9ef0 SHA512 3a0cb7b49c508f56228e8e3a259b4fd34c872410ad14ef1d8656372e3e8ab9f92e59094a9cc1a75680099a8832f7472ad31462b3ae8a9e132ac7056d5245cf2a WHIRLPOOL 3cf9d9ab7d58301364a61f6c5ad51858ffe1e6214c5971c1d042c7894fcb70fa4b28fe0e6631f142ab8fa9b2c2b979e4e178bc44b1961cde70b29d9aaa2c7d3f
diff --git a/sci-visualization/qtiplot/files/qtiplot-0.9.7.10-dont-install-qwt.patch b/sci-visualization/qtiplot/files/qtiplot-0.9.7.10-dont-install-qwt.patch
new file mode 100644
index 00000000000..86e4d4c6a9c
--- /dev/null
+++ b/sci-visualization/qtiplot/files/qtiplot-0.9.7.10-dont-install-qwt.patch
@@ -0,0 +1,22 @@
+diff --git a/3rdparty/qwt/qwtconfig.pri b/3rdparty/qwt/qwtconfig.pri
+index b7d0d0e..e36f131 100755
+--- a/3rdparty/qwt/qwtconfig.pri
++++ b/3rdparty/qwt/qwtconfig.pri
+@@ -7,17 +7,6 @@ VER_MIN = 2
+ VER_PAT = 0
+ VERSION = $${VER_MAJ}.$${VER_MIN}.$${VER_PAT}
+
+-unix {
+- INSTALLBASE = /usr/local/qwt-5.2.0
+-}
+-
+-win32 {
+- INSTALLBASE = C:/Qwt-5.2.0
+-}
+-
+-target.path = $$INSTALLBASE/lib
+-headers.path = $$INSTALLBASE/include
+-doc.path = $$INSTALLBASE/doc
+
+ ######################################################################
+ # qmake internal options
diff --git a/sci-visualization/qtiplot/files/qtiplot-0.9.8.6-gold.patch b/sci-visualization/qtiplot/files/qtiplot-0.9.8.6-gold.patch
new file mode 100644
index 00000000000..3b6757533a5
--- /dev/null
+++ b/sci-visualization/qtiplot/files/qtiplot-0.9.8.6-gold.patch
@@ -0,0 +1,15 @@
+ qtiplot/qtiplot.pro | 1 +
+ 1 files changed, 1 insertions(+), 0 deletions(-)
+
+diff --git a/qtiplot/qtiplot.pro b/qtiplot/qtiplot.pro
+index 99e0e36..b7cf373 100755
+--- a/qtiplot/qtiplot.pro
++++ b/qtiplot/qtiplot.pro
+@@ -20,6 +20,7 @@ LIBS += $$MUPARSER_LIBS
+ LIBS += $$QWT_LIBS
+ LIBS += $$QWT3D_LIBS
+ LIBS += $$GSL_LIBS
++LIBS += -lz
+
+ #############################################################################
+ ###################### BASIC PROJECT PROPERTIES #############################
diff --git a/sci-visualization/qtiplot/files/qtiplot-0.9.8.7-kde.patch b/sci-visualization/qtiplot/files/qtiplot-0.9.8.7-kde.patch
new file mode 100644
index 00000000000..af1dca42da4
--- /dev/null
+++ b/sci-visualization/qtiplot/files/qtiplot-0.9.8.7-kde.patch
@@ -0,0 +1,16 @@
+ qtiplot/src/plot2D/Graph.cpp | 1 +
+ 1 files changed, 1 insertions(+), 0 deletions(-)
+
+diff --git a/qtiplot/src/plot2D/Graph.cpp b/qtiplot/src/plot2D/Graph.cpp
+index 626172a..d4eab1b 100755
+--- a/qtiplot/src/plot2D/Graph.cpp
++++ b/qtiplot/src/plot2D/Graph.cpp
+@@ -73,7 +73,8 @@
+ #include <PatternBox.h>
+ #include <SymbolBox.h>
+ #include <LinearColorMap.h>
+
++#include <QPaintEngine>
+ #include <QApplication>
+ #include <QBitmap>
+ #include <QClipboard>
diff --git a/sci-visualization/qtiplot/files/qtiplot-0.9.8.8-system-gl2ps.patch b/sci-visualization/qtiplot/files/qtiplot-0.9.8.8-system-gl2ps.patch
new file mode 100644
index 00000000000..d7b40c414b1
--- /dev/null
+++ b/sci-visualization/qtiplot/files/qtiplot-0.9.8.8-system-gl2ps.patch
@@ -0,0 +1,76 @@
+ 3rdparty/qwtplot3d/qwtplot3d.pri | 8 ++++----
+ 3rdparty/qwtplot3d/qwtplot3d.pro | 3 ---
+ 3rdparty/qwtplot3d/src/qwt3d_io_gl2ps.cpp | 2 +-
+ 3rdparty/qwtplot3d/src/qwt3d_label.cpp | 2 +-
+ 4 files changed, 6 insertions(+), 9 deletions(-)
+
+diff --git a/3rdparty/qwtplot3d/qwtplot3d.pri b/3rdparty/qwtplot3d/qwtplot3d.pri
+index 45a0c3e..16bbe53 100755
+--- a/3rdparty/qwtplot3d/qwtplot3d.pri
++++ b/3rdparty/qwtplot3d/qwtplot3d.pri
+@@ -8,6 +8,8 @@ DEPENDPATH += src \
+ 3rdparty\gl2ps
+ INCLUDEPATH += .
+
++LIBS+=-lgl2ps
++
+ # Input
+ HEADERS += include/qwt3d_extglwidget.h \
+ include/qwt3d_color.h \
+@@ -37,8 +39,7 @@ HEADERS += include/qwt3d_extglwidget.h \
+ include/qwt3d_volumeplot.h \
+ include/qwt3d_graphplot.h \
+ include/qwt3d_multiplot.h \
+- include/qwt3d_io_gl2ps.h \
+- 3rdparty/gl2ps/gl2ps.h
++ include/qwt3d_io_gl2ps.h
+ SOURCES += src/qwt3d_extglwidget.cpp \
+ src/qwt3d_axis.cpp \
+ src/qwt3d_color.cpp \
+@@ -62,5 +63,4 @@ SOURCES += src/qwt3d_extglwidget.cpp \
+ src/qwt3d_function.cpp \
+ src/qwt3d_gridplot.cpp \
+ src/qwt3d_meshplot.cpp \
+- src/qwt3d_io_gl2ps.cpp \
+- 3rdparty/gl2ps/gl2ps.c
++ src/qwt3d_io_gl2ps.cpp
+diff --git a/3rdparty/qwtplot3d/qwtplot3d.pro b/3rdparty/qwtplot3d/qwtplot3d.pro
+index 95c8e26..18d03e3 100755
+--- a/3rdparty/qwtplot3d/qwtplot3d.pro
++++ b/3rdparty/qwtplot3d/qwtplot3d.pro
+@@ -31,9 +31,6 @@ RCC_DIR = $$DESTDIR/tmp
+ MOC_DIR = $$DESTDIR/tmp
+
+ DEFINES += GL2PS_HAVE_LIBPNG
+-INCLUDEPATH += ../zlib/
+-INCLUDEPATH += ../libpng/
+-LIBS += ../libpng/libpng.a
+
+ # install
+ target.path = lib
+diff --git a/3rdparty/qwtplot3d/src/qwt3d_io_gl2ps.cpp b/3rdparty/qwtplot3d/src/qwt3d_io_gl2ps.cpp
+index bc7a9d8..589cfd2 100755
+--- a/3rdparty/qwtplot3d/src/qwt3d_io_gl2ps.cpp
++++ b/3rdparty/qwtplot3d/src/qwt3d_io_gl2ps.cpp
+@@ -6,7 +6,7 @@
+ #include <locale.h>
+
+ #include "qwt3d_openglhelper.h"
+-#include "../3rdparty/gl2ps/gl2ps.h"
++#include "gl2ps.h"
+ #include "qwt3d_io_gl2ps.h"
+ #include "qwt3d_plot.h"
+
+diff --git a/3rdparty/qwtplot3d/src/qwt3d_label.cpp b/3rdparty/qwtplot3d/src/qwt3d_label.cpp
+index 7e54ad9..cc8bd60 100755
+--- a/3rdparty/qwtplot3d/src/qwt3d_label.cpp
++++ b/3rdparty/qwtplot3d/src/qwt3d_label.cpp
+@@ -1,7 +1,7 @@
+ #include <qbitmap.h>
+ #include "qwt3d_label.h"
+ #include "qwt3d_plot.h"
+-#include "../3rdparty/gl2ps/gl2ps.h"
++#include "gl2ps.h"
+
+ using namespace Qwt3D;
+
diff --git a/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-PyQt4-4.10.patch b/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-PyQt4-4.10.patch
new file mode 100644
index 00000000000..67bd0a32d10
--- /dev/null
+++ b/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-PyQt4-4.10.patch
@@ -0,0 +1,32 @@
+ qtiplot/python-sipcmd.py | 21 ++++++++++++++++++---
+ 1 file changed, 18 insertions(+), 3 deletions(-)
+
+diff --git a/qtiplot/python-sipcmd.py b/qtiplot/python-sipcmd.py
+index f643194..d8d1ef2 100755
+--- a/qtiplot/python-sipcmd.py
++++ b/qtiplot/python-sipcmd.py
+@@ -27,6 +27,21 @@
+ # #
+ ############################################################################
+
+-from PyQt4 import pyqtconfig
+-config = pyqtconfig.Configuration()
+-print " ".join([config.sip_bin, "-I", config.pyqt_sip_dir, config.pyqt_sip_flags])
++from __future__ import print_function
++
++import os
++import sipconfig
++import PyQt4.QtCore
++
++try:
++ # >= 4.10
++ SIP_FLAGS = PyQt4.QtCore.PYQT_CONFIGURATION['sip_flags']
++except:
++ import PyQt4.pyqtconfig
++ SIP_FLAGS = PyQt4.pyqtconfig.Configuration().pyqt_sip_flags
++
++PYQT_SIP_DIR = os.path.join(sipconfig.Configuration().default_sip_dir)
++SIP_BIN = sipconfig.Configuration().sip_bin
++SIP_INC_DIR = sipconfig.Configuration().sip_inc_dir
++
++print(" ".join([SIP_BIN, "-I", PYQT_SIP_DIR, SIP_FLAGS]))
diff --git a/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-PyQt4-4.11.3.patch b/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-PyQt4-4.11.3.patch
new file mode 100644
index 00000000000..a011782550d
--- /dev/null
+++ b/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-PyQt4-4.11.3.patch
@@ -0,0 +1,32 @@
+ qtiplot/python-sipcmd.py | 21 ++++++++++++++++++---
+ 1 file changed, 18 insertions(+), 3 deletions(-)
+
+diff --git a/qtiplot/python-sipcmd.py b/qtiplot/python-sipcmd.py
+index f643194..d8d1ef2 100755
+--- a/qtiplot/python-sipcmd.py
++++ b/qtiplot/python-sipcmd.py
+@@ -27,6 +27,21 @@
+ # #
+ ############################################################################
+
+-from PyQt4 import pyqtconfig
+-config = pyqtconfig.Configuration()
+-print " ".join([config.sip_bin, "-I", config.pyqt_sip_dir, config.pyqt_sip_flags])
++from __future__ import print_function
++
++import os
++import sipconfig
++import PyQt4.QtCore
++
++try:
++ # >= 4.10
++ SIP_FLAGS = PyQt4.QtCore.PYQT_CONFIGURATION['sip_flags']
++except:
++ import PyQt4.pyqtconfig
++ SIP_FLAGS = PyQt4.pyqtconfig.Configuration().pyqt_sip_flags
++
++PYQT_SIP_DIR = os.path.join(sipconfig.Configuration().default_sip_dir, 'PyQt4')
++SIP_BIN = sipconfig.Configuration().sip_bin
++SIP_INC_DIR = sipconfig.Configuration().sip_inc_dir
++
++print(" ".join([SIP_BIN, "-I", PYQT_SIP_DIR, SIP_FLAGS]))
diff --git a/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-adopt_to_alglib3.patch b/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-adopt_to_alglib3.patch
new file mode 100644
index 00000000000..8f1bde25a03
--- /dev/null
+++ b/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-adopt_to_alglib3.patch
@@ -0,0 +1,115 @@
+Description: adoptation to alglib3.
+Author: Anton Gladky <gladk@debian.org>
+Last-Update: 2013-05-16
+
+--- a/qtiplot/src/analysis/dialogs/GriddingDialog.cpp
++++ b/qtiplot/src/analysis/dialogs/GriddingDialog.cpp
+@@ -41,7 +41,7 @@
+ #include <QComboBox>
+ #include <QLayout>
+
+-#include <idwint.h>
++#include <interpolation.h>
+
+ GriddingDialog::GriddingDialog(Table* t, const QString& colName, int nodes, QWidget* parent, Qt::WFlags fl )
+ : QDialog( parent, fl ),
+@@ -365,26 +365,27 @@
+ Matrix* m = app->newMatrix(rows, cols);
+ m->setCoordinates(xmin, xmax, ymin, ymax);
+
+- idwinterpolant z;
++ alglib::idwinterpolant z;
++
+ switch (boxMethod->currentIndex()){
+ case 0:
+- idwbuildmodifiedshepardr(xy, d_nodes, 2, boxRadius->value(), z);
++ alglib::idwbuildmodifiedshepardr(xy, d_nodes, 2, boxRadius->value(), z);
+ break;
+ case 1:
+- idwbuildmodifiedshepard(xy, d_nodes, 2, boxModel->currentIndex() + 1, boxNQ->value(), boxNW->value(), z);
++ alglib::idwbuildmodifiedshepard(xy, d_nodes, 2, boxModel->currentIndex() + 1, boxNQ->value(), boxNW->value(), z);
+ break;
+ case 2:
+- idwbuildnoisy(xy, d_nodes, 2, boxModel->currentIndex() + 1, boxNQ->value(), boxNW->value(), z);
++ alglib::idwbuildnoisy(xy, d_nodes, 2, boxModel->currentIndex() + 1, boxNQ->value(), boxNW->value(), z);
+ break;
+ }
+
+- ap::real_1d_array p;
++ alglib::real_1d_array p;
+ p.setlength(2);
+ for (int i = 0; i < rows; i++){
+ p(1) = ymin + i*ystep;
+ for (int j = 0; j < cols; j++){
+ p(0) = xmin + j*xstep;
+- m->setCell(i, j, idwcalc(z, p));
++ m->setCell(i, j, alglib::idwcalc(z, p));
+ }
+ }
+
+@@ -435,20 +436,20 @@
+ double xstep = fabs(xmax - xmin)/(cols - 1);
+ double ystep = fabs(ymax - ymin)/(rows - 1);
+
+- idwinterpolant z;
++ alglib::idwinterpolant z;
+ switch (boxMethod->currentIndex()){
+ case 0:
+- idwbuildmodifiedshepardr(xy, d_nodes, 2, boxRadius->value(), z);
++ alglib::idwbuildmodifiedshepardr(xy, d_nodes, 2, boxRadius->value(), z);
+ break;
+ case 1:
+- idwbuildmodifiedshepard(xy, d_nodes, 2, boxModel->currentIndex() + 1, boxNQ->value(), boxNW->value(), z);
++ alglib::idwbuildmodifiedshepard(xy, d_nodes, 2, boxModel->currentIndex() + 1, boxNQ->value(), boxNW->value(), z);
+ break;
+ case 2:
+- idwbuildnoisy(xy, d_nodes, 2, boxModel->currentIndex() + 1, boxNQ->value(), boxNW->value(), z);
++ alglib::idwbuildnoisy(xy, d_nodes, 2, boxModel->currentIndex() + 1, boxNQ->value(), boxNW->value(), z);
+ break;
+ }
+
+- ap::real_1d_array p;
++ alglib::real_1d_array p;
+ p.setlength(2);
+
+ double **data_matrix = Matrix::allocateMatrixData(cols, rows);
+@@ -456,7 +457,7 @@
+ p(1) = ymin + i*ystep;
+ for (int j = 0; j < cols; j++){
+ p(0) = xmin + j*xstep;
+- data_matrix[j][i] = idwcalc(z, p);
++ data_matrix[j][i] = alglib::idwcalc(z, p);
+ }
+ }
+
+--- a/qtiplot/src/analysis/dialogs/GriddingDialog.h
++++ b/qtiplot/src/analysis/dialogs/GriddingDialog.h
+@@ -71,7 +71,7 @@
+
+ QString d_col_name;
+ int d_nodes;
+- ap::real_2d_array xy;
++ alglib::real_2d_array xy;
+
+ QPushButton* buttonFit;
+ QPushButton* buttonCancel;
+--- a/qtiplot/src/matrix/MatrixModel.cpp
++++ b/qtiplot/src/matrix/MatrixModel.cpp
+@@ -45,7 +45,7 @@
+ #include <stdlib.h>
+
+ #ifdef HAVE_ALGLIB
+- #include <spline2d.h>
++ #include <interpolation.h>
+ #endif
+
+ MatrixModel::MatrixModel(int rows, int cols, QObject *parent)
+@@ -1026,7 +1026,7 @@
+ #ifdef HAVE_ALGLIB
+ QApplication::setOverrideCursor(QCursor(Qt::WaitCursor));
+
+- ap::real_2d_array oldValues, newValues;
++ alglib::real_2d_array oldValues, newValues;
+ oldValues.setlength(d_rows, d_cols);
+ newValues.setlength(rows, cols);
+
diff --git a/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-crasher_without_internet.patch b/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-crasher_without_internet.patch
new file mode 100644
index 00000000000..fe542341e99
--- /dev/null
+++ b/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-crasher_without_internet.patch
@@ -0,0 +1,25 @@
+Description: Crashes if not connected to the internet.
+Author: Scott Howard <showard@debian.org>
+Bug-Debian: http://bugs.debian.org/626915
+
+Index: qtiplot/qtiplot/src/core/ApplicationWindow.cpp
+===================================================================
+--- qtiplot.orig/qtiplot/src/core/ApplicationWindow.cpp 2012-11-07 11:14:15.021706679 -0500
++++ qtiplot/qtiplot/src/core/ApplicationWindow.cpp 2012-11-07 11:14:22.853706641 -0500
+@@ -16228,11 +16228,12 @@
+ if (hostInfo.error() != QHostInfo::NoError){
+ QApplication::restoreOverrideCursor();
+ QMessageBox::critical(this, tr("QtiPlot - Error"), qtiplotWeb + ": " + hostInfo.errorString());
+- exit(0);
++ QApplication::restoreOverrideCursor();
++ }
++ else {
++ QApplication::restoreOverrideCursor();
++ showDonationsPage();
+ }
+-
+- QApplication::restoreOverrideCursor();
+- showDonationsPage();
+ }
+
+ void ApplicationWindow::parseCommandLineArguments(const QStringList& args)
diff --git a/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-origin-2.patch b/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-origin-2.patch
new file mode 100644
index 00000000000..d85420b790f
--- /dev/null
+++ b/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-origin-2.patch
@@ -0,0 +1,38 @@
+diff -ruN qtiplot-0.9.8.9-origin/qtiplot/exportEMF.pro qtiplot-0.9.8.9/qtiplot/exportEMF.pro
+--- qtiplot-0.9.8.9-origin/qtiplot/exportEMF.pro 2012-01-21 20:39:03.000000000 +0100
++++ qtiplot-0.9.8.9/qtiplot/exportEMF.pro 2012-01-21 20:32:45.000000000 +0100
+@@ -5,6 +5,7 @@
+
+ INCLUDEPATH += $$QWT_INCLUDEPATH
+ INCLUDEPATH += $$GSL_INCLUDEPATH
++INCLUDEPATH += $$EMF_INCLUDEPATH
+
+ include(src/core/core.pri)
+ include(src/lib/libqti.pri)
+diff -ruN qtiplot-0.9.8.9-origin/qtiplot/qtiplot.pro qtiplot-0.9.8.9/qtiplot/qtiplot.pro
+--- qtiplot-0.9.8.9-origin/qtiplot/qtiplot.pro 2011-11-07 10:17:21.000000000 +0100
++++ qtiplot-0.9.8.9/qtiplot/qtiplot.pro 2012-01-21 20:44:11.000000000 +0100
+@@ -236,9 +236,9 @@
+ ###############################################################
+
+ TARGET = qtiplot
+-DESTDIR = ../
++DESTDIR = ./
+ LIBS += ../tmp/qtiplot/libFreeSoftwareQtiPlotExportEMF.a \
+ ../tmp/qtiplot/libFreeSoftwareQtiPlotImportOPJ.a
+
+ include(src/plugins/exportEMF/exportEMF.pri)
+-include(src/plugins/OriginPlugin/OriginPlugin.pri)
+\ Kein Zeilenumbruch am Dateiende.
++include(src/plugins/OriginPlugin/OriginPlugin.pri)
+diff -ruN qtiplot-0.9.8.9-origin/qtiplot/src/plugins/exportEMF/exportEMF.pri qtiplot-0.9.8.9/qtiplot/src/plugins/exportEMF/exportEMF.pri
+--- qtiplot-0.9.8.9-origin/qtiplot/src/plugins/exportEMF/exportEMF.pri 2011-10-27 13:44:34.000000000 +0200
++++ qtiplot-0.9.8.9/qtiplot/src/plugins/exportEMF/exportEMF.pri 2012-01-21 20:51:34.000000000 +0100
+@@ -10,5 +10,5 @@
+ SOURCES += src/plugins/exportEMF/exportEMF.cpp \
+ src/plugins/exportEMF/3rdparty/EmfEngine/src/EmfEngine.cpp \
+ src/plugins/exportEMF/3rdparty/EmfEngine/src/EmfPaintDevice.cpp
+-
+-LIBS += -lgdi32
++
++LIBS += -lEMF
diff --git a/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-private.patch b/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-private.patch
new file mode 100644
index 00000000000..7bec3771813
--- /dev/null
+++ b/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-private.patch
@@ -0,0 +1,15 @@
+diff -ruN qtiplot-0.9.8.9.orig/qtiplot/src/plot2D/ImageWidget.h qtiplot-0.9.8.9/qtiplot/src/plot2D/ImageWidget.h
+--- qtiplot-0.9.8.9.orig/qtiplot/src/plot2D/ImageWidget.h 2010-10-17 09:04:05.000000000 +0200
++++ qtiplot-0.9.8.9/qtiplot/src/plot2D/ImageWidget.h 2013-11-01 12:11:36.559973891 +0100
+@@ -67,10 +67,10 @@
+ void setWindowName(const QString& name){d_window_name = name;};
+
+ static QPixmap windowPixmap(ApplicationWindow *mw, const QString& name, const QSize& size);
++ void paintEvent(QPaintEvent *e);
+
+ private:
+ void draw(QPainter *painter, const QRect& r);
+- void paintEvent(QPaintEvent *e);
+ QPixmap d_pix;
+ //! The file from which the image was loaded.
+ QString d_file_name;
diff --git a/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-qt48.patch b/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-qt48.patch
new file mode 100644
index 00000000000..31c8a5ee7af
--- /dev/null
+++ b/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-qt48.patch
@@ -0,0 +1,29 @@
+ 3rdparty/qwtplot3d/include/qwt3d_openglhelper.h | 2 ++
+ qtiplot/src/plot3D/Cone3D.cpp | 1 +
+ 2 files changed, 3 insertions(+), 0 deletions(-)
+
+diff --git a/3rdparty/qwtplot3d/include/qwt3d_openglhelper.h b/3rdparty/qwtplot3d/include/qwt3d_openglhelper.h
+index 0ee80de..3d02e3f 100755
+--- a/3rdparty/qwtplot3d/include/qwt3d_openglhelper.h
++++ b/3rdparty/qwtplot3d/include/qwt3d_openglhelper.h
+@@ -8,6 +8,8 @@
+ #include <QtOpenGL/qgl.h>
+ #endif
+
++#include <GL/glu.h>
++
+ namespace Qwt3D
+ {
+
+diff --git a/qtiplot/src/plot3D/Cone3D.cpp b/qtiplot/src/plot3D/Cone3D.cpp
+index 16df12d..169d5c7 100755
+--- a/qtiplot/src/plot3D/Cone3D.cpp
++++ b/qtiplot/src/plot3D/Cone3D.cpp
+@@ -27,6 +27,7 @@
+ * *
+ ***************************************************************************/
+ #include <math.h>
++#include <GL/glu.h>
+ #include "qwt3d_color.h"
+ #include "qwt3d_plot.h"
+ #include <qwt3d_curve.h>
diff --git a/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-set_col_values.patch b/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-set_col_values.patch
new file mode 100644
index 00000000000..5afe43eb3da
--- /dev/null
+++ b/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-set_col_values.patch
@@ -0,0 +1,18 @@
+Description: if you don't initialize the "i" variable, or initialize it to 0.0
+ qtiplot won't let you set the column values using muparser.
+Author: Scott Howard <showard@debian.org>
+Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=707736
+
+Index: qtiplot/qtiplot/src/table/Table.cpp
+===================================================================
+--- qtiplot.orig/qtiplot/src/table/Table.cpp 2013-06-08 02:06:35.550201324 -0400
++++ qtiplot/qtiplot/src/table/Table.cpp 2013-06-08 02:08:30.026204044 -0400
+@@ -564,7 +564,7 @@
+ QApplication::setOverrideCursor(QCursor(Qt::WaitCursor));
+
+ muParserScript *mup = new muParserScript(scriptEnv, cmd, this, QString("<%1>").arg(colName(col)));
+- double *r = mup->defineVariable("i");
++ double *r = mup->defineVariable("i",startRow + 1.0);
+ mup->defineVariable("j", (double)col);
+ mup->defineVariable("sr", startRow + 1.0);
+ mup->defineVariable("er", endRow + 1.0);
diff --git a/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-sip-4.15.patch b/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-sip-4.15.patch
new file mode 100644
index 00000000000..c08163019a3
--- /dev/null
+++ b/sci-visualization/qtiplot/files/qtiplot-0.9.8.9-sip-4.15.patch
@@ -0,0 +1,31 @@
+--- ./qtiplot/src/analysis/FFT.cpp.orig 2011-07-06 11:51:08.000000000 +0000
++++ ./qtiplot/src/analysis/FFT.cpp 2013-10-23 23:07:45.674925476 +0000
+@@ -353,7 +353,7 @@
+ ml->arrangeLayers(false, false);
+ }
+
+-bool FFT::setDataFromTable(Table *t, const QString& realColName, const QString& imagColName, int from, int to)
++bool FFT::setDataFromTable(Table *t, const QString& realColName, const QString& imagColName, int from, int to, bool unused)
+ {
+ d_init_err = true;
+
+--- ./qtiplot/src/analysis/FFT.h.orig 2011-07-05 22:05:03.000000000 +0000
++++ ./qtiplot/src/analysis/FFT.h 2013-10-23 23:11:34.277924367 +0000
+@@ -52,6 +52,8 @@
+ Matrix *realOutputMatrix(){return d_re_out_matrix;}
+ Matrix *imaginaryOutputMatrix(){return d_im_out_matrix;}
+
++ bool setDataFromTable(Table *t, const QString& realColName, const QString& imagColName = QString(), int from = 0, int to = -1, bool unused = false);
++
+ private:
+ void init();
+ void output();
+@@ -60,8 +62,6 @@
+ void fftTable();
+ void fftMatrix();
+
+- bool setDataFromTable(Table *t, const QString& realColName, const QString& imagColName = QString(), int from = 0, int to = -1);
+-
+ double d_sampling;
+ //! Flag telling if an inverse FFT must be performed.
+ bool d_inverse;
diff --git a/sci-visualization/qtiplot/metadata.xml b/sci-visualization/qtiplot/metadata.xml
new file mode 100644
index 00000000000..51a10f76451
--- /dev/null
+++ b/sci-visualization/qtiplot/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <longdescription>
+ Data analysis and scientific plotting package. This is a clone of the
+ popular Origin software available on another well known platform implemented
+ in Qt with powerful 2D and 3D data plotting, ASCII import and powerful
+ spreadsheet data manipulation using column logic. Curve fitting and other
+ statistical tools are also available.
+ </longdescription>
+</pkgmetadata>
diff --git a/sci-visualization/qtiplot/qtiplot-0.9.8.9-r2.ebuild b/sci-visualization/qtiplot/qtiplot-0.9.8.9-r2.ebuild
new file mode 100644
index 00000000000..c2f255af2a3
--- /dev/null
+++ b/sci-visualization/qtiplot/qtiplot-0.9.8.9-r2.ebuild
@@ -0,0 +1,240 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils qt4-r2 fdo-mime python-single-r1 toolchain-funcs
+
+DESCRIPTION="Qt based clone of the Origin plotting package"
+HOMEPAGE="http://soft.proindependent.com/qtiplot.html
+ http://www.staff.science.uu.nl/~zeven101/qtiplot.html"
+SRC_URI="
+ http://dev.gentoo.org/~dilfridge/distfiles/${P}.tar.bz2
+ http://dev.gentoo.org/~dilfridge/distfiles/${P}-origin.patch.bz2"
+
+LICENSE="GPL-2 GPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux"
+IUSE="bindist doc mono latex python"
+
+LANGS="cn cz de es fr ja ro ru sv"
+for l in ${LANGS}; do
+ lu=${l/cz/cs}
+ lu=${lu/cn/zh_CN}
+ IUSE="${IUSE} linguas_${lu}"
+done
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+# qwtplot3d much modified from original upstream
+# >=x11-libs/qwt-5.3 they are using trunk checkouts
+CDEPEND="
+ media-libs/libemf
+ dev-qt/qthelp:4
+ dev-qt/qtgui:4
+ dev-qt/qtopengl:4
+ dev-qt/qt3support:4
+ dev-qt/qthelp:4[compat]
+ dev-qt/qtsvg:4
+ >=x11-libs/gl2ps-1.3.5[png]
+ >=dev-cpp/muParser-1.32
+ >=dev-libs/boost-1.35.0:=
+ dev-libs/quazip
+ media-libs/libpng:=
+ sci-libs/alglib
+ sci-libs/gsl
+ sci-libs/tamu_anova
+ latex? ( dev-tex/qtexengine )
+ mono? ( dev-dotnet/libgdiplus )
+ python? ( ${PYTHON_DEPS} )"
+DEPEND="${CDEPEND}
+ virtual/pkgconfig
+ python? ( >=dev-python/sip-4.9[${PYTHON_USEDEP}] )
+ doc? (
+ >=app-text/docbook-sgml-utils-0.6.14-r1
+ >=app-text/docbook-xml-dtd-4.4-r2:4.4 )"
+
+RDEPEND="${CDEPEND}
+ python? ( dev-python/PyQt4[X,${PYTHON_USEDEP}] )"
+
+PATCHES=(
+ "${DISTDIR}"/${P}-origin.patch.bz2
+ "${FILESDIR}"/${P}-origin-2.patch
+ "${FILESDIR}"/${P}-qt48.patch
+ "${FILESDIR}"/${PN}-0.9.8.8-system-gl2ps.patch
+ "${FILESDIR}"/${PN}-0.9.7.10-dont-install-qwt.patch
+ "${FILESDIR}"/${PN}-0.9.8.6-gold.patch
+ "${FILESDIR}"/${PN}-0.9.8.7-kde.patch
+ "${FILESDIR}"/${P}-set_col_values.patch
+ "${FILESDIR}"/${P}-adopt_to_alglib3.patch
+ "${FILESDIR}"/${P}-crasher_without_internet.patch
+ "${FILESDIR}"/${P}-private.patch
+ "${FILESDIR}"/${P}-sip-4.15.patch
+ "${FILESDIR}"/${P}-PyQt4-4.10.patch
+ )
+
+RESTRICT="!bindist? ( bindist )"
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ local mylibs
+
+ qt4-r2_src_prepare
+
+ rm -rf 3rdparty/{liborigin,QTeXEngine,/qwtplot3d/3rdparty/gl2ps/,boost,alglib} || die
+ sed \
+ -e "s:dll:static:g" \
+ -e "/INSTALLS/d" \
+ -i 3rdparty/qwtplot3d/*.pro
+
+ mylibs="${mylibs} -lquazip"
+ use mono && mylibs="${mylibs} $($(tc-getPKG_CONFIG) --libs libgdiplus)"
+
+ # Check build.conf for changes on bump.
+ cat > build.conf <<-EOF
+ # Automatically generated by Gentoo ebuild
+ isEmpty( QTI_ROOT ) {
+ message( "each file including this config needs to set QTI_ROOT to the dir containing this file!" )
+ }
+
+ MUPARSER_LIBS = $($(tc-getPKG_CONFIG) --libs muparser)
+ GSL_LIBS = $($(tc-getPKG_CONFIG) --libs gsl)
+ QWT_INCLUDEPATH = \$\$QTI_ROOT/3rdparty/qwt/src
+ QWT_LIBS = \$\$QTI_ROOT/3rdparty/qwt/lib/libqwt.a
+ QWT3D_INCLUDEPATH = \$\$QTI_ROOT/3rdparty/qwtplot3d/include
+ QWT3D_LIBS = \$\$QTI_ROOT/3rdparty/qwtplot3d/lib/libqwtplot3d.a
+ EMF_INCLUDEPATH = "${EPREFIX}/usr/include/libEMF
+ SYS_LIBS = -lgl2ps ${mylibs} -lGLU
+
+ LUPDATE = lupdate
+ LRELEASE = lrelease
+
+ SCRIPTING_LANGS += muParser
+
+ CONFIG += release
+ CONFIG += CustomInstall
+ DEFINES += SCRIPTING_CONSOLE
+
+ LIBPNG_LIBS = $($(tc-getPKG_CONFIG) --libs libpng)
+ TAMUANOVA_LIBS = -ltamuanova
+ TAMUANOVA_INCLUDEPATH = "${EPREFIX}/usr/include/tamu_anova"
+ ALGLIB_LIBS = -lalglib
+
+ EOF
+
+ use bindist && echo "DEFINES += QTIPLOT_SUPPORT" >> build.conf
+ use bindist || echo "DEFINES += QTIPLOT_PRO" >> build.conf
+ use python && echo "SCRIPTING_LANGS += Python" >> build.conf
+ use python && echo "PYTHON = ${EPYTHON}" >> build.conf
+ use latex && echo "TEX_ENGINE_LIBS = -lQTeXEngine" >> build.conf
+
+ sed \
+ -e "s:doc/${PN}/manual:doc/${PN}/html:" \
+ -e '/INSTALLS.*documentation/d' \
+ -e '/INSTALLS.*manual/d' \
+ -e "/INSTALLBASE/s: /usr: ${EPREFIX}/usr:g" \
+ -e 's:/usr/local/qtiplot:$$INSTALLBASE:g' \
+ -i qtiplot/qtiplot.pro || die
+
+ if use python; then
+ sed \
+ -e "s:/usr/local/${PN}:${EPREFIX}$(python_get_sitedir)/qtiplot:" \
+ -i qtiplot/qtiplot.pro || die
+ fi
+
+ sed \
+ -e "/^target.path/s:/usr:${EPREFIX}/usr:g" \
+ -i fitPlugins/*/*.pro || die
+
+ sed -e '/manual/d' -i qtiplot.pro || die
+
+ sed -e "s:QTIPLOT_PRO:QTIPLOT_PROFESSIONAL:g" -i qtiplot/src/core/main.cpp || die
+
+ # Drop langs only if LINGUAS is not empty
+ if [[ -n ${LINGUAS} ]]; then
+ for l in ${LANGS}; do
+ lu=${l/cz/cs}
+ lu=${lu/cn/zh_CN}
+ use linguas_${lu} || \
+ sed -e "s:translations/qtiplot_${l}.[tq][sm]::" \
+ -i qtiplot/qtiplot.pro || die
+ done
+ fi
+
+ sed \
+ -e "s:d_python_config_folder + \":\"${EPREFIX}/usr/share/qtiplot:g" \
+ -i qtiplot/src/core/ApplicationWindow.cpp || die
+
+ chmod -x qtiplot/qti_wordlist.txt
+
+ # sed out debian paths
+ sed -e 's:\(/usr/share/sgml/\)docbook/stylesheet/dsssl/modular\(/html/docbook.dsl\):\1stylesheets/dsssl/docbook\2:' \
+ -i manual/qtiplot.dsl || die
+ sed -e 's:\(/usr/share/\)xml/docbook/stylesheet/nwalsh\(/html/chunk.xsl\):\1sgml/docbook/xsl-stylesheets\2:' \
+ -i manual/qtiplot_html.xsl || die
+
+ sed \
+ -e '1i#define OF(x) x' \
+ -i 3rdparty/zlib/minigzip.c || die
+}
+
+src_configure() {
+ use amd64 && export QMAKESPEC="linux-g++-64"
+ eqmake4
+}
+
+src_compile() {
+ emake
+ lrelease qtiplot/qtiplot.pro || die
+ if use doc; then
+ cd manual
+ emake web
+ fi
+}
+
+src_install() {
+ qt4-r2_src_install
+
+ insinto /usr/share/qtiplot
+ doins qtiplot/qti_wordlist.txt
+
+ newicon qtiplot_logo.png qtiplot.png
+ make_desktop_entry qtiplot "QtiPlot Scientific Plotting" qtiplot
+
+ use doc && dohtml -r manual/html/*
+
+ use python && python_optimize
+
+ if [[ -n ${LINGUAS} ]]; then
+ insinto /usr/share/${PN}/translations
+ for l in ${LANGS}; do
+ lu=${l/cz/cs}
+ lu=${lu/cn/zh_CN}
+ use linguas_${lu} && \
+ doins qtiplot/translations/qtiplot_${l}.qm
+ done
+ fi
+}
+
+pkg_postinst() {
+ if use python; then
+ elog "You might want to emerge"
+ elog "\t dev-python/pygsl"
+ elog "\t dev-python/rpy"
+ elog "\t sci-libs/scipy and"
+ elog "\t dev-python/sympy"
+ elog "to gain full python support."
+ fi
+
+ fdo-mime_desktop_database_update
+}
+
+pkg_postrm() {
+ fdo-mime_desktop_database_update
+}
diff --git a/sci-visualization/qtiplot/qtiplot-0.9.8.9-r3.ebuild b/sci-visualization/qtiplot/qtiplot-0.9.8.9-r3.ebuild
new file mode 100644
index 00000000000..6441b0be5b7
--- /dev/null
+++ b/sci-visualization/qtiplot/qtiplot-0.9.8.9-r3.ebuild
@@ -0,0 +1,242 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils qt4-r2 fdo-mime python-single-r1 toolchain-funcs
+
+DESCRIPTION="Qt based clone of the Origin plotting package"
+HOMEPAGE="http://soft.proindependent.com/qtiplot.html
+ http://www.staff.science.uu.nl/~zeven101/qtiplot.html"
+SRC_URI="
+ http://dev.gentoo.org/~dilfridge/distfiles/${P}.tar.bz2
+ http://dev.gentoo.org/~dilfridge/distfiles/${P}-origin.patch.bz2"
+
+LICENSE="GPL-2 GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="bindist doc mono latex python"
+
+LANGS="cn cz de es fr ja ro ru sv"
+for l in ${LANGS}; do
+ lu=${l/cz/cs}
+ lu=${lu/cn/zh_CN}
+ IUSE="${IUSE} linguas_${lu}"
+done
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+# qwtplot3d much modified from original upstream
+# >=x11-libs/qwt-5.3 they are using trunk checkouts
+CDEPEND="
+ media-libs/libemf
+ dev-qt/qthelp:4
+ dev-qt/qtgui:4
+ dev-qt/qtopengl:4
+ dev-qt/qt3support:4
+ dev-qt/qthelp:4[compat]
+ dev-qt/qtsvg:4
+ >=x11-libs/gl2ps-1.3.5[png]
+ >=dev-cpp/muParser-1.32
+ >=dev-libs/boost-1.35.0:=
+ dev-libs/quazip
+ media-libs/libpng:=
+ sci-libs/alglib
+ sci-libs/gsl
+ sci-libs/tamu_anova
+ latex? ( dev-tex/qtexengine )
+ mono? ( dev-dotnet/libgdiplus )
+ python? (
+ ${PYTHON_DEPS}
+ >=dev-python/PyQt4-4.11.3[X,${PYTHON_USEDEP}]
+ )"
+DEPEND="${CDEPEND}
+ virtual/pkgconfig
+ python? ( >=dev-python/sip-4.16.5[${PYTHON_USEDEP}] )
+ doc? (
+ >=app-text/docbook-sgml-utils-0.6.14-r1
+ >=app-text/docbook-xml-dtd-4.4-r2:4.4 )"
+
+RDEPEND="${CDEPEND}"
+
+PATCHES=(
+ "${DISTDIR}"/${P}-origin.patch.bz2
+ "${FILESDIR}"/${P}-origin-2.patch
+ "${FILESDIR}"/${P}-qt48.patch
+ "${FILESDIR}"/${PN}-0.9.8.8-system-gl2ps.patch
+ "${FILESDIR}"/${PN}-0.9.7.10-dont-install-qwt.patch
+ "${FILESDIR}"/${PN}-0.9.8.6-gold.patch
+ "${FILESDIR}"/${PN}-0.9.8.7-kde.patch
+ "${FILESDIR}"/${P}-set_col_values.patch
+ "${FILESDIR}"/${P}-adopt_to_alglib3.patch
+ "${FILESDIR}"/${P}-crasher_without_internet.patch
+ "${FILESDIR}"/${P}-private.patch
+ "${FILESDIR}"/${P}-sip-4.15.patch
+ "${FILESDIR}"/${P}-PyQt4-4.11.3.patch
+ )
+
+RESTRICT="!bindist? ( bindist )"
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ local mylibs
+
+ qt4-r2_src_prepare
+
+ rm -rf 3rdparty/{liborigin,QTeXEngine,/qwtplot3d/3rdparty/gl2ps/,boost,alglib} || die
+ sed \
+ -e "s:dll:static:g" \
+ -e "/INSTALLS/d" \
+ -i 3rdparty/qwtplot3d/*.pro
+
+ mylibs="${mylibs} -lquazip"
+ use mono && mylibs="${mylibs} $($(tc-getPKG_CONFIG) --libs libgdiplus)"
+
+ # Check build.conf for changes on bump.
+ cat > build.conf <<-EOF
+ # Automatically generated by Gentoo ebuild
+ isEmpty( QTI_ROOT ) {
+ message( "each file including this config needs to set QTI_ROOT to the dir containing this file!" )
+ }
+
+ MUPARSER_LIBS = $($(tc-getPKG_CONFIG) --libs muparser)
+ GSL_LIBS = $($(tc-getPKG_CONFIG) --libs gsl)
+ QWT_INCLUDEPATH = \$\$QTI_ROOT/3rdparty/qwt/src
+ QWT_LIBS = \$\$QTI_ROOT/3rdparty/qwt/lib/libqwt.a
+ QWT3D_INCLUDEPATH = \$\$QTI_ROOT/3rdparty/qwtplot3d/include
+ QWT3D_LIBS = \$\$QTI_ROOT/3rdparty/qwtplot3d/lib/libqwtplot3d.a
+ EMF_INCLUDEPATH = "${EPREFIX}/usr/include/libEMF
+ SYS_LIBS = -lgl2ps ${mylibs} -lGLU
+
+ LUPDATE = lupdate
+ LRELEASE = lrelease
+
+ SCRIPTING_LANGS += muParser
+
+ CONFIG += release
+ CONFIG += CustomInstall
+ DEFINES += SCRIPTING_CONSOLE
+
+ LIBPNG_LIBS = $($(tc-getPKG_CONFIG) --libs libpng)
+ TAMUANOVA_LIBS = -ltamuanova
+ TAMUANOVA_INCLUDEPATH = "${EPREFIX}/usr/include/tamu_anova"
+ ALGLIB_LIBS = -lalglib
+
+ EOF
+
+ use bindist && echo "DEFINES += QTIPLOT_SUPPORT" >> build.conf
+ use bindist || echo "DEFINES += QTIPLOT_PRO" >> build.conf
+ use python && echo "SCRIPTING_LANGS += Python" >> build.conf
+ use python && echo "PYTHON = ${EPYTHON}" >> build.conf
+ use latex && echo "TEX_ENGINE_LIBS = -lQTeXEngine" >> build.conf
+
+ sed \
+ -e "s:doc/${PN}/manual:doc/${PN}/html:" \
+ -e '/INSTALLS.*documentation/d' \
+ -e '/INSTALLS.*manual/d' \
+ -e "/INSTALLBASE/s: /usr: ${EPREFIX}/usr:g" \
+ -e 's:/usr/local/qtiplot:$$INSTALLBASE:g' \
+ -i qtiplot/qtiplot.pro || die
+
+ if use python; then
+ sed \
+ -e "s:/usr/local/${PN}:${EPREFIX}$(python_get_sitedir)/qtiplot:" \
+ -i qtiplot/qtiplot.pro || die
+ fi
+
+ sed \
+ -e "/^target.path/s:/usr:${EPREFIX}/usr:g" \
+ -i fitPlugins/*/*.pro || die
+
+ sed -e '/manual/d' -i qtiplot.pro || die
+
+ sed -e "s:QTIPLOT_PRO:QTIPLOT_PROFESSIONAL:g" -i qtiplot/src/core/main.cpp || die
+
+ # Drop langs only if LINGUAS is not empty
+ if [[ -n ${LINGUAS} ]]; then
+ for l in ${LANGS}; do
+ lu=${l/cz/cs}
+ lu=${lu/cn/zh_CN}
+ use linguas_${lu} || \
+ sed -e "s:translations/qtiplot_${l}.[tq][sm]::" \
+ -i qtiplot/qtiplot.pro || die
+ done
+ fi
+
+ sed \
+ -e "s:d_python_config_folder + \":\"${EPREFIX}/usr/share/qtiplot:g" \
+ -i qtiplot/src/core/ApplicationWindow.cpp || die
+
+ chmod -x qtiplot/qti_wordlist.txt
+
+ # sed out debian paths
+ sed -e 's:\(/usr/share/sgml/\)docbook/stylesheet/dsssl/modular\(/html/docbook.dsl\):\1stylesheets/dsssl/docbook\2:' \
+ -i manual/qtiplot.dsl || die
+ sed -e 's:\(/usr/share/\)xml/docbook/stylesheet/nwalsh\(/html/chunk.xsl\):\1sgml/docbook/xsl-stylesheets\2:' \
+ -i manual/qtiplot_html.xsl || die
+
+ sed \
+ -e '1i#define OF(x) x' \
+ -i 3rdparty/zlib/minigzip.c || die
+}
+
+src_configure() {
+ use amd64 && export QMAKESPEC="linux-g++-64"
+ eqmake4
+}
+
+src_compile() {
+ emake
+ lrelease qtiplot/qtiplot.pro || die
+ if use doc; then
+ cd manual
+ emake web
+ fi
+}
+
+src_install() {
+ qt4-r2_src_install
+
+ insinto /usr/share/qtiplot
+ doins qtiplot/qti_wordlist.txt
+
+ newicon qtiplot_logo.png qtiplot.png
+ make_desktop_entry qtiplot "QtiPlot Scientific Plotting" qtiplot
+
+ use doc && dohtml -r manual/html/*
+
+ use python && python_optimize
+
+ if [[ -n ${LINGUAS} ]]; then
+ insinto /usr/share/${PN}/translations
+ for l in ${LANGS}; do
+ lu=${l/cz/cs}
+ lu=${lu/cn/zh_CN}
+ use linguas_${lu} && \
+ doins qtiplot/translations/qtiplot_${l}.qm
+ done
+ fi
+}
+
+pkg_postinst() {
+ if use python; then
+ elog "You might want to emerge"
+ elog "\t dev-python/pygsl"
+ elog "\t dev-python/rpy"
+ elog "\t sci-libs/scipy and"
+ elog "\t dev-python/sympy"
+ elog "to gain full python support."
+ fi
+
+ fdo-mime_desktop_database_update
+}
+
+pkg_postrm() {
+ fdo-mime_desktop_database_update
+}
diff --git a/sci-visualization/quickplot/Manifest b/sci-visualization/quickplot/Manifest
new file mode 100644
index 00000000000..e58f25ba309
--- /dev/null
+++ b/sci-visualization/quickplot/Manifest
@@ -0,0 +1,2 @@
+DIST quickplot-0.10.6.tar.xz 445172 SHA256 6560dcfade541ed183d0609682a64915d66f437bf7268e1f221216b2a453d878 SHA512 10b5277d8d0b8febc3c663256f3912bdd9d879b3038a5fdd3a7adc223419893ee56b825f04b5bee29883f30acb3b6a329d8e314b049fef26d6220192767d4adb WHIRLPOOL d0f2b49db8fb3e74c7f4483a65bf278dd9c196833f341f2ea5d1d5b91bf36b2549e8465d64eed410e7c63a1cd6bef85e49200f102c79dc9d39a0a59be2e26ede
+DIST quickplot-0.10.8.tar.bz2 531610 SHA256 ec3946daf978f9c18537c88c15be9e84f84097ab3bb7b04dae62edad5ba91456 SHA512 e382206ba70849755e4110070a5e6b128bea4502ef623c59aa041ba84ed407e0ad06c62366b3bbcd71f8a76a3e651a04efab61edeb616ab6321c5680b03afa95 WHIRLPOOL 84216eadfe905741c19ce036c621d6386a538bcee939ea7abd3e6bd90e2249f858b51400fbe8d79a0c3ccb93fabd00915012d3443afebac00c71d667ac4faf5f
diff --git a/sci-visualization/quickplot/metadata.xml b/sci-visualization/quickplot/metadata.xml
new file mode 100644
index 00000000000..ccaedd7cfc1
--- /dev/null
+++ b/sci-visualization/quickplot/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <longdescription>
+ Quickplot is a fast interactive 2D plotter with infinite zooming, value
+ picking, pipe input, and unlimited plots displayed. Quickplot is meant for
+ looking at your data quickly and of secondary importance is making static
+ pictures of your data. It's a data viewer, not a plot editor. It reads
+ ASCII text and sound files. It has lots of command line options, making it
+ very shell script friendly.
+</longdescription>
+ <upstream>
+ <remote-id type="sourceforge">quickplot</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sci-visualization/quickplot/quickplot-0.10.6.ebuild b/sci-visualization/quickplot/quickplot-0.10.6.ebuild
new file mode 100644
index 00000000000..eb15ab191f0
--- /dev/null
+++ b/sci-visualization/quickplot/quickplot-0.10.6.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+AUTOTOOLS_AUTORECONF=true
+
+inherit autotools-utils eutils
+
+DESCRIPTION="A fast interactive 2D plotter"
+HOMEPAGE="http://quickplot.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.xz"
+
+SLOT="0"
+LICENSE="GPL-3"
+KEYWORDS="amd64 ~ppc ~x86 ~amd64-linux ~x86-linux"
+IUSE="static-libs"
+
+RDEPEND="
+ media-libs/libsndfile
+ >=sys-libs/readline-0.6.2
+ x11-libs/gtk+:3"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_prepare() {
+ sed '/libquickplot_la_LIBADD/s:$: -lm:g' -i Makefile.am || die
+ autotools-utils_src_prepare
+}
+
+src_configure() {
+ local myeconfargs=(
+ --htmldir="${EPREFIX}/usr/share/doc/${PF}/html"
+ )
+ autotools-utils_src_configure
+}
+
+src_install () {
+ autotools-utils_src_install
+ make_desktop_entry 'quickplot --no-pipe' Quickplot quickplot Graphics
+ mv "${ED}"/usr/share/applications/quickplot*.desktop \
+ "${ED}"/usr/share/applications/quickplot.desktop || die
+}
diff --git a/sci-visualization/quickplot/quickplot-0.10.8.ebuild b/sci-visualization/quickplot/quickplot-0.10.8.ebuild
new file mode 100644
index 00000000000..c1b72dec996
--- /dev/null
+++ b/sci-visualization/quickplot/quickplot-0.10.8.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+AUTOTOOLS_AUTORECONF=true
+
+inherit autotools-utils eutils
+
+DESCRIPTION="A fast interactive 2D plotter"
+HOMEPAGE="http://quickplot.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
+
+SLOT="0"
+LICENSE="GPL-3"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux"
+IUSE="static-libs"
+
+RDEPEND="
+ media-libs/libsndfile
+ >=sys-libs/readline-0.6.2
+ x11-libs/gtk+:3"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_prepare() {
+ sed '/libquickplot_la_LIBADD/s:$: -lm:g' -i Makefile.am || die
+ autotools-utils_src_prepare
+}
+
+src_configure() {
+ local myeconfargs=(
+ --htmldir="${EPREFIX}/usr/share/doc/${PF}/html"
+ )
+ autotools-utils_src_configure
+}
+
+src_install () {
+ autotools-utils_src_install
+ make_desktop_entry 'quickplot --no-pipe' Quickplot quickplot Graphics
+ mv "${ED}"/usr/share/applications/quickplot*.desktop \
+ "${ED}"/usr/share/applications/quickplot.desktop || die
+}
diff --git a/sci-visualization/spectromatic/Manifest b/sci-visualization/spectromatic/Manifest
new file mode 100644
index 00000000000..885e46568eb
--- /dev/null
+++ b/sci-visualization/spectromatic/Manifest
@@ -0,0 +1 @@
+DIST spectromatic_1.0-1.tar.gz 13724 SHA256 5ed057c6c37cc7c5a6a1c8975cb0a74085baa8b18467f4643d40c0986fc45fd4 SHA512 b83acaacd21f7eb12ee3fd955073e8f95c02649de833a6087cf62786b20d8d1bf9a5b62920c17435510237797c6bc3a378921c4c1c2c4e4f74acbca49becfd6c WHIRLPOOL e724a8159624979980241f14bd72010431ad3c51382b9f29a2b5676b3e0585db2dbcb5341fb1fe599706024ece95d290a6aabd6aa5ac64e837640cdaf52a90fe
diff --git a/sci-visualization/spectromatic/files/spectromatic-1.0-makefile.patch b/sci-visualization/spectromatic/files/spectromatic-1.0-makefile.patch
new file mode 100644
index 00000000000..48f9d902335
--- /dev/null
+++ b/sci-visualization/spectromatic/files/spectromatic-1.0-makefile.patch
@@ -0,0 +1,49 @@
+Respect LDFLAGS, CFLAGS, CC #334715
+Fix install paths
+
+--- Makefile
++++ Makefile
+@@ -1,33 +1,29 @@
+ # Makefile for spectromatic
+
+-CFLAGS = -O2 -Wall
+-LIBS = -lgsl -lgslcblas -lpng -lm
++LIBS = -lpng `pkg-config --libs gsl`
+ DESTDIR =
+-TOPLEVEL_HOME = /usr
++TOPLEVEL_HOME ?= /usr
+
+-CC = gcc -I.
+-
+ SRC = spectromatic.c wave.c
+
+ OBJ = $(SRC:.c=.o)
+
+ TARGET = spectromatic
+
+-install: all
+- mkdir -p $(DESTDIR)$(TOPLEVEL_HOME)/bin
+- mkdir -p $(DESTDIR)$(TOPLEVEL_HOME)/man/man1
+- install -o root -g root -m 0755 spectromatic $(DESTDIR)$(TOPLEVEL_HOME)/bin
+- install -o root -g root -m 0644 man/spectromatic.1 $(DESTDIR)$(TOPLEVEL_HOME)/man/man1
+-
+ all: $(OBJ)
+- $(CC) -o $(TARGET) $(OBJ) $(LIBS)
+- strip $(TARGET)
++ $(CC) $(LDFLAGS) $(OBJ) $(LIBS) -o $(TARGET)
++
++install: $(TARGET)
++ mkdir -p $(DESTDIR)$(TOPLEVEL_HOME)/bin
++ mkdir -p $(DESTDIR)$(TOPLEVEL_HOME)/share/man/man1
++ install -m 0755 spectromatic $(DESTDIR)$(TOPLEVEL_HOME)/bin
++ install -m 0644 man/spectromatic.1 $(DESTDIR)$(TOPLEVEL_HOME)/share/man/man1
+
+ clean:
+ $(RM) $(TARGET) $(OBJ)
+
+ .c.o:
+- $(CC) $(CFLAGS) -c $<
++ $(CC) $(CFLAGS) -I. -c $<
+
+ .o:
+ $(CC) $< $(LIBS) -o $@
diff --git a/sci-visualization/spectromatic/files/spectromatic-1.0-stringliteral.patch b/sci-visualization/spectromatic/files/spectromatic-1.0-stringliteral.patch
new file mode 100644
index 00000000000..2d18f01b216
--- /dev/null
+++ b/sci-visualization/spectromatic/files/spectromatic-1.0-stringliteral.patch
@@ -0,0 +1,78 @@
+diff -ru spectromatic-1.0/spectromatic.c spectromatic-1.0-new/spectromatic.c
+--- spectromatic-1.0/spectromatic.c 2002-03-30 06:17:34.000000000 +0100
++++ spectromatic-1.0-new/spectromatic.c 2004-07-02 21:25:49.485524639 +0200
+@@ -21,6 +21,7 @@
+ ****************************************************************************/
+
+ #include <stdio.h>
++#include <stdlib.h>
+ #include <malloc.h>
+ #include <png.h>
+ #include <string.h>
+@@ -37,36 +38,36 @@
+ void usage (char *pname)
+ {
+ fprintf (stderr,
+-"
+-Usage: %s [options] file.wav
+-
+-Options:
+- --window <size> FFT window size (default: 2048)
+-
+- --step <size> Slide the window by <size> samples each time
+- (default: 200)
+-
+- --inverse White/Colour-on-black
+-
+- --logarithmic Intensity is calculated by
+- log10 (1 + 9 * (amplitude / max_amp)) -
+- better for visualising weaker signals
+-
+- --combine XYZ Determines how a stereo signal is
+- represented as an RGB image. The argument is
+- a 3-character block, each character
+- corresponding to R, G and B components. It
+- may take values of L, R, A, D, X or Z,
+- meaning Left, Right, Average, Difference,
+- Cross-Correlation or Zero respectively.
+-
+- --verbose Slightly less quiet
+-
+- --version Print out the version
+-
+- --help You're in it.
+-
+-", pname);
++"\n"
++"Usage: %s [options] file.wav\n"
++"\n"
++"Options:\n"
++" --window <size> FFT window size (default: 2048)\n"
++"\n"
++" --step <size> Slide the window by <size> samples each time \n"
++" (default: 200)\n"
++"\n"
++" --inverse White/Colour-on-black\n"
++"\n"
++" --logarithmic Intensity is calculated by\n"
++" log10 (1 + 9 * (amplitude / max_amp)) -\n"
++" better for visualising weaker signals\n"
++"\n"
++" --combine XYZ Determines how a stereo signal is\n"
++" represented as an RGB image. The argument is\n"
++" a 3-character block, each character\n"
++" corresponding to R, G and B components. It\n"
++" may take values of L, R, A, D, X or Z,\n"
++" meaning Left, Right, Average, Difference,\n"
++" Cross-Correlation or Zero respectively.\n"
++"\n"
++" --verbose Slightly less quiet\n"
++"\n"
++" --version Print out the version\n"
++"\n"
++" --help You're in it.\n"
++"\n"
++, pname);
+
+
+ exit (-1);
diff --git a/sci-visualization/spectromatic/files/spectromatic-1.0-waveheaderstruct-amd64.patch b/sci-visualization/spectromatic/files/spectromatic-1.0-waveheaderstruct-amd64.patch
new file mode 100644
index 00000000000..edfb7af8c4b
--- /dev/null
+++ b/sci-visualization/spectromatic/files/spectromatic-1.0-waveheaderstruct-amd64.patch
@@ -0,0 +1,103 @@
+--- wave.c.orig 2012-08-06 18:54:21.829756875 -0700
++++ wave.c 2012-08-06 19:04:35.818049655 -0700
+@@ -1,11 +1,26 @@
+ #include <stdio.h>
+ #include <string.h>
++#include <endian.h>
+ #include "wave.h"
+
+ int read_header (FILE *f, waveheaderstruct *header)
+ {
++ waveheaderstruct h;
+ fseek (f, 0, SEEK_SET);
+- return fread (header, 1, sizeof (waveheaderstruct), f);
++ size_t red = fread (&h, 1, sizeof (waveheaderstruct), f);
++
++ h.length = le32toh(h.length);
++ h.length_chunk = le32toh(h.length_chunk);
++ h.format = le16toh(h.format);
++ h.modus = le16toh(h.modus);
++ h.sample_fq = le32toh(h.sample_fq);
++ h.byte_p_sec = le32toh(h.byte_p_sec);
++ h.byte_p_spl = le16toh(h.byte_p_spl);
++ h.bit_p_spl = le16toh(h.bit_p_spl);
++ h.data_length = le32toh(h.data_length);
++
++ *header = h;
++ return red;
+ }
+
+ int read_frames (FILE *f, int start, int length, char *data)
+@@ -52,12 +67,12 @@
+
+ read_header (f, &header);
+
+- printf ("Length: %lu\n", header.length);
+- printf ("Length Chunk: %lu\n", header.length_chunk);
++ printf ("Length: %lu\n", (unsigned long)header.length);
++ printf ("Length Chunk: %lu\n", (unsigned long)header.length_chunk);
+ printf ("Format: %u\n", header.format);
+ printf ("Modus: %u\n", header.modus);
+- printf ("Sample Frequency: %lu\n", header.sample_fq);
+- printf ("Bytes per Second: %lu\n", header.byte_p_sec);
++ printf ("Sample Frequency: %lu\n", (unsigned long)header.sample_fq);
++ printf ("Bytes per Second: %lu\n", (unsigned long)header.byte_p_sec);
+ printf ("Bytes per Sample: %u\n", header.byte_p_spl);
+- printf ("Data Length: %lu\n", header.data_length);
++ printf ("Data Length: %lu\n", (unsigned long)header.data_length);
+ }
+--- wave.h.orig 2012-08-06 18:55:38.009165756 -0700
++++ wave.h 2012-08-06 18:55:50.377232324 -0700
+@@ -22,24 +22,25 @@
+ #ifndef WAVE_H
+ #define WAVE_H
+
+-typedef unsigned long ulongT;
+-typedef unsigned short ushortT;
++#include <stdint.h>
+
++#pragma pack(push,1)
+ typedef struct { /* header for WAV-Files */
+- char main_chunk[4]; /* 'RIFF' */
+- unsigned long length; /* length of file */
+- char chunk_type[4]; /* 'WAVE' */
+- char sub_chunk[4]; /* 'fmt' */
+- unsigned long length_chunk; /* length sub_chunk, always 16 bytes */
+- unsigned short format; /* always 1 = PCM-Code */
+- unsigned short modus; /* 1 = Mono, 2 = Stereo */
+- unsigned long sample_fq; /* Sample Freq */
+- unsigned long byte_p_sec; /* Data per sec */
+- unsigned short byte_p_spl; /* Bytes per sample */
+- unsigned short bit_p_spl; /* bits per sample, 8, 12, 16 */
+- char data_chunk[4]; /* 'data' */
+- unsigned long data_length; /* length of data */
+-} waveheaderstruct;
++ uint8_t main_chunk[4]; /* 'RIFF' */
++ uint32_t length; /* length of file */
++ uint8_t chunk_type[4]; /* 'WAVE' */
++ uint8_t sub_chunk[4]; /* 'fmt' */
++ uint32_t length_chunk; /* length sub_chunk, always 16 bytes */
++ uint16_t format; /* always 1 = PCM-Code */
++ uint16_t modus; /* 1 = Mono, 2 = Stereo */
++ uint32_t sample_fq; /* Sample Freq */
++ uint32_t byte_p_sec; /* Data per sec */
++ uint16_t byte_p_spl; /* Bytes per sample */
++ uint16_t bit_p_spl; /* bits per sample, 8, 12, 16 */
++ uint8_t data_chunk[4]; /* 'data' */
++ uint32_t data_length; /* length of data */
++} __attribute__ ((__packed__)) waveheaderstruct;
++#pragma pack(pop)
+
+ int read_header (FILE *f, waveheaderstruct *header);
+ int read_frames (FILE *f, int start, int length, char *data);
+--- spectromatic.c.orig 2012-08-06 18:54:05.260668605 -0700
++++ spectromatic.c 2012-08-06 19:28:18.637679446 -0700
+@@ -217,7 +217,7 @@
+ if (header.modus == 2)
+ ch2 = (double*) malloc (window_size * sizeof (double));
+
+- fprintf (stderr, "samples = %li, step_size = %i, window_size = %i\n", header.data_length / header.byte_p_spl, step_size, window_size);
++ fprintf (stderr, "samples = %lu, step_size = %i, window_size = %i\n", (unsigned long)header.data_length / header.byte_p_spl, step_size, window_size);
+
+ for (i = -window_size; i < window_size + (int)(header.data_length / header.byte_p_spl); i += step_size) {
+ read_frames (f, i, window_size, data);
diff --git a/sci-visualization/spectromatic/metadata.xml b/sci-visualization/spectromatic/metadata.xml
new file mode 100644
index 00000000000..df3ad6ba7d0
--- /dev/null
+++ b/sci-visualization/spectromatic/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <longdescription lang="en">
+ Spectromatic is a program for generating spectrograms from audio
+ files. Spectrograms are a form of simple time-frequency analysis which
+ lets you see how the distribution of energy at different frequencies
+ in an audio stream change over time. For example, if you play a scale
+ on a musical instrument, you will see a climbing and/or descending
+ pattern of blobs as you move from left to right.
+ Spectromatic reads its input as mono or stereo 16-bit wave files, and
+ writes the output image to an elongated PNG image (colour for stereo,
+ grayscale for mono audio).
+</longdescription>
+</pkgmetadata>
diff --git a/sci-visualization/spectromatic/spectromatic-1.0-r2.ebuild b/sci-visualization/spectromatic/spectromatic-1.0-r2.ebuild
new file mode 100644
index 00000000000..0dcd9f0e1a1
--- /dev/null
+++ b/sci-visualization/spectromatic/spectromatic-1.0-r2.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils toolchain-funcs
+
+MY_P=${PN}_${PV}-1
+
+DESCRIPTION="Generates time-frequency analysis images from wav files"
+HOMEPAGE="http://ieee.uow.edu.au/~daniel/software/spectromatic/"
+SRC_URI="http://ieee.uow.edu.au/~daniel/software/spectromatic/dist/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+RDEPEND="
+ media-libs/libpng:0
+ sci-libs/gsl"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+DOCS=( README )
+
+PATCHES=(
+ "${FILESDIR}"/${P}-makefile.patch
+ "${FILESDIR}"/${P}-stringliteral.patch
+ "${FILESDIR}"/${P}-waveheaderstruct-amd64.patch
+)
+
+pkg_setup() {
+ tc-export CC
+ export TOPLEVEL_HOME="${EROOT}/usr"
+}
+
+src_prepare() {
+ epatch ${PATCHES[@]}
+}
diff --git a/sci-visualization/spyview/Manifest b/sci-visualization/spyview/Manifest
new file mode 100644
index 00000000000..874ee488567
--- /dev/null
+++ b/sci-visualization/spyview/Manifest
@@ -0,0 +1,2 @@
+DIST spyview-20111018.tar.gz 3721357 SHA256 aad98c243e4455cbb4c82af6aeb374b50d9483cf25945ba571cb59b3d7c71a41 SHA512 6191068a431486692918029a0350275500d46993252ac29678f470e0a4c89ab0e57feb438241b8159dd6aa6583eb4d4d3d970553abae515ce5b8c1dc49deabb6 WHIRLPOOL c6c0bec9301fd89cb8f00198f403d36da4ed93b2ad8e09ad0456e2533e8b4a46dc2ae8565664be8f71d3ed75dc8b86d2c172b0511d02b0ec49a02dd42be22168
+DIST spyview-20130823.tgz 3279013 SHA256 1927278ed31ab3b1a15d6294f73ae55de71f97165b1787e5abd7e323272d4ea1 SHA512 c25b3955e32000c0477091aad465d18c0c1aa4bcd00f8f9aee3454cdbdf98d8bbfa4e072a860d37836710dd6cd859deba1a764c8453526602317eda1b3ce0435 WHIRLPOOL f1aefa797571aaba8cc95c3925eb0f6bafe1568f2952eb9c7b98e8c544242305ce9d963524610536bd1d0d9df9b16f2f8b0356e001561be68f4d4e61d891fc42
diff --git a/sci-visualization/spyview/metadata.xml b/sci-visualization/spyview/metadata.xml
new file mode 100644
index 00000000000..331d38a1cc6
--- /dev/null
+++ b/sci-visualization/spyview/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>dilfridge@gentoo.org</email>
+ <name>Andreas K. Huettel</name>
+ </maintainer>
+ <longdescription lang="en">
+</longdescription>
+</pkgmetadata>
diff --git a/sci-visualization/spyview/spyview-20111018.ebuild b/sci-visualization/spyview/spyview-20111018.ebuild
new file mode 100644
index 00000000000..4252f092e48
--- /dev/null
+++ b/sci-visualization/spyview/spyview-20111018.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit flag-o-matic eutils multilib
+
+DESCRIPTION="Interactive plotting program"
+HOMEPAGE="http://kavli.nano.tudelft.nl/~gsteele/spyview/"
+SRC_URI="http://kavli.nano.tudelft.nl/~gsteele/${PN}/versions/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+COMMON_DEPEND="
+ >=dev-libs/boost-1.42
+ media-libs/netpbm
+ x11-libs/fltk:1[opengl]
+ app-text/ghostscript-gpl
+ virtual/glu
+"
+
+DEPEND="${COMMON_DEPEND}
+ sys-apps/groff"
+
+RDEPEND="${COMMON_DEPEND}
+ sci-visualization/gnuplot"
+
+src_unpack() {
+ default
+ mv -v "${WORKDIR}"/spyview-20* "${S}" || die
+}
+
+src_prepare() {
+ append-cflags $(fltk-config --cflags)
+ append-cxxflags $(fltk-config --cxxflags) -I/usr/include/netpbm
+
+ # append-ldflags $(fltk-config --ldflags)
+ # this one leads to an insane amount of warnings
+
+ append-ldflags -L$(dirname $(fltk-config --libs))
+
+ find "${S}" -name Makefile.in -exec sed -i -e 's:-mwindows -mconsole::g' {} + || die
+}
+
+src_configure() {
+ econf --datadir=/usr/share/spyview --docdir=/usr/share/doc/${PF}
+}
diff --git a/sci-visualization/spyview/spyview-20130823.ebuild b/sci-visualization/spyview/spyview-20130823.ebuild
new file mode 100644
index 00000000000..f6c4fd0e1c4
--- /dev/null
+++ b/sci-visualization/spyview/spyview-20130823.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit autotools flag-o-matic eutils multilib
+
+DESCRIPTION="Interactive plotting program"
+HOMEPAGE="http://kavli.nano.tudelft.nl/~gsteele/spyview/"
+SRC_URI="http://nsweb.tn.tudelft.nl/gitweb/?p=spyview.git;a=snapshot;h=879615fcc662e8572f99854557010d014bb4651e;sf=tgz -> $P.tgz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~x86"
+IUSE=""
+
+COMMON_DEPEND="
+ dev-libs/boost:=
+ media-libs/netpbm
+ x11-libs/fltk:1[opengl]
+ app-text/ghostscript-gpl
+ virtual/glu
+"
+
+DEPEND="${COMMON_DEPEND}
+ sys-apps/groff"
+
+RDEPEND="${COMMON_DEPEND}
+ sci-visualization/gnuplot"
+
+src_unpack() {
+ default
+ mv -v "${WORKDIR}"/spyview-* "${S}" || die
+}
+
+src_prepare() {
+ append-cflags $(fltk-config --cflags)
+ append-cxxflags $(fltk-config --cxxflags) -I/usr/include/netpbm
+
+ # append-ldflags $(fltk-config --ldflags)
+ # this one leads to an insane amount of warnings
+ append-ldflags -L$(dirname $(fltk-config --libs))
+
+ find "${S}" -name Makefile.am -exec sed -i -e 's:-mwindows -mconsole::g' {} + || die
+
+ eautoreconf
+}
+
+src_configure() {
+ econf --datadir=/usr/share/spyview --docdir=/usr/share/doc/${PF}
+}
diff --git a/sci-visualization/veusz/Manifest b/sci-visualization/veusz/Manifest
new file mode 100644
index 00000000000..3ceab2ed78c
--- /dev/null
+++ b/sci-visualization/veusz/Manifest
@@ -0,0 +1,7 @@
+DIST veusz-1.11.tar.gz 1579404 SHA256 7ded2b8788f7420ea76dd499a485473fddce1f2587e9c93e453743b194d08e94
+DIST veusz-1.20.1.tar.gz 1778707 SHA256 64c7f1624f14ae898aa5a4b0e1de7933bfa3fffb6cb272853c8acdd471c66814 SHA512 2b477e03dec895914a34206750285ff6dcba53ff23bab79403194b893e22b03063179c26a812b3bd98c00ea71cfda062a5b345b9bd7c1acdf5682c4acc9be755 WHIRLPOOL c8a0ff3752ac152b2029b224f97cb9331dc3ded2c38968e9c5f5cf15355ae1c830e8d6da7de075a1d5d6f2d20b142a5475eb2dc262eff9de028f11afb57c9f92
+DIST veusz-1.20.tar.gz 1774169 SHA256 6a73b357f0c0602e6fd45eaec3a5a305181101f15e16c9c3621a5ea2df4d6743 SHA512 68453c15a8e6b81034a458e65524a28ba1649d6e25443d2c90a2fd32e11b56a470d2c176c1908d243195e747dd0c4ca4cc1ed9390cc0e8d3d9737b52798f54a8 WHIRLPOOL b3560554e360e6b79ef4631d90f19c708b5351179844eeb836c250a4bdb2ced95f0bff69064ae2e3be8ac21965a1bcea11c90a1b9b5a59ced7f610a0029d1391
+DIST veusz-1.21.1.tar.gz 1804339 SHA256 fa1ba0129228218c804fc7c654cdfd4d6c4b5a93830a307afc893eb126b0a2c5 SHA512 6fa40674fb9100522e7fefa3d49759488c7ee0d11b90bb2a7de6ccb4f03da53e8e2024027987df8638fa1a7742845ac6e8263d9942ac287d1e4c2e1dece42dd8 WHIRLPOOL 9f5d7e874c7547c87eaf348661d72ad2b72fe8ead966b713c136a5a11e1fbfce073009fb58601887a98c729be78566178016472d80ccca3e7330ad633a809be0
+DIST veusz-1.21.tar.gz 1803048 SHA256 15dae8891d7d87d13c097b93b0c65e6b9c657f919a735a0b2e59260733feb7d0 SHA512 1fb061f31f258b2c17f5200c9d25b6aa94c1cf85b675097ab236e6772c87721b3bbe9d655c0ffe698f087e2e116aa371824a58ce380def9beadde37c8e49bf1c WHIRLPOOL dfa8212590e4b9b190918814e77111601f4ffb26932ccb3c0a9d38ddbb510fc5aad4dcd4268da74dcf717278940ffe7c621325aee906e1526e956bed8b493847
+DIST veusz-1.22.tar.gz 1809097 SHA256 46665217787053a2524adf425db4ceab667a69098de1548c03e512c2bd8cefbb SHA512 dca03c04280e63dae9e709e6269382cc9b5e33ea253137cda5cdb1873c5588638a0609dcec763abae8bf15d41d5b624baa4761f2e195c462821faf2f87830231 WHIRLPOOL 34c211fa570d2cb91678966e8ff68d9720002a246d8ce3431d193d3bc7bceee914ace4c010a5d9340800df17ee6825775f0248b8aabfff12aa98cc87dfb26bda
+DIST veusz-1.23.tar.gz 1822000 SHA256 6ba03cef320764cf8d1cc62f6ab20e52727a86faf21c45382e999f596d62c301 SHA512 4a7ec1e94338bbcc072caf7256da8185b999814e9c2cda907c7989fd5b80efda49029c801f49d4b95a8745f3b47bf0e4b16732f9524558e3466321d27d696646 WHIRLPOOL 11f246a8139c324f8ef58ce28b9108a6d416722909b28af69d154bd283409105fb6c5cc4e19ad5630f870766e2a741b68f51076f171e12974c53b180e5974b8e
diff --git a/sci-visualization/veusz/files/veusz.desktop b/sci-visualization/veusz/files/veusz.desktop
new file mode 100644
index 00000000000..c4780f047e7
--- /dev/null
+++ b/sci-visualization/veusz/files/veusz.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Name=Veusz
+GenericName=Veusz scientific plotting
+Comment=For graphing and manipulation of scientific data
+MimeType=application/x-veusz;
+Exec=veusz %F
+Icon=veusz
+Terminal=false
+Type=Application
+Categories=Graphics;DataVisualization;
diff --git a/sci-visualization/veusz/files/veusz.xml b/sci-visualization/veusz/files/veusz.xml
new file mode 100644
index 00000000000..7e6d83d322f
--- /dev/null
+++ b/sci-visualization/veusz/files/veusz.xml
@@ -0,0 +1,10 @@
+<?xml version='1.0'?>
+<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
+ <mime-type type="application/x-veusz">
+ <comment>Veusz saved graph</comment>
+ <glob pattern="*.vsz"/>
+ <magic priority="50">
+ <match type="string" value="# Veusz saved document" offset="0"/>
+ </magic>
+ </mime-type>
+</mime-info>
diff --git a/sci-visualization/veusz/metadata.xml b/sci-visualization/veusz/metadata.xml
new file mode 100644
index 00000000000..7c60390db52
--- /dev/null
+++ b/sci-visualization/veusz/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <longdescription lang="en">
+ A Qt based scientific plotting package written in Python using PyQt. It is
+ designed to produce publication ready Postscript output. It provides a GUI,
+ command line and scripting interface (based on Python) to its plotting
+ facilities.
+</longdescription>
+ <use>
+ <flag name="fits">Add FITS format via <pkg>dev-python/astropy</pkg></flag>
+ <flag name="emf">Add FITS format via <pkg>dev-python/pyemf</pkg></flag>
+ <flag name="minuit">Use Minuit during fitting via<pkg>dev-python/pyminuit</pkg></flag>
+ <flag name="vo">Add Virtual Observatory tools via <pkg>dev-python/astropy</pkg></flag>
+ </use>
+ <upstream>
+ <remote-id type="pypi">veusz</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sci-visualization/veusz/veusz-1.11.ebuild b/sci-visualization/veusz/veusz-1.11.ebuild
new file mode 100644
index 00000000000..1f0fd9987c0
--- /dev/null
+++ b/sci-visualization/veusz/veusz-1.11.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="3"
+PYTHON_DEPEND="2"
+SUPPORT_PYTHON_ABIS="1"
+RESTRICT_PYTHON_ABIS="3.* *-jython"
+
+inherit distutils eutils fdo-mime
+
+DESCRIPTION="Qt based scientific plotting package with good Postscript output"
+HOMEPAGE="http://home.gna.org/veusz/ http://pypi.python.org/pypi/veusz"
+SRC_URI="http://download.gna.org/${PN}/${P}.tar.gz"
+
+IUSE="doc examples fits"
+SLOT="0"
+KEYWORDS="amd64 x86"
+LICENSE="GPL-2"
+
+DEPEND="dev-python/numpy"
+RDEPEND="${DEPEND}
+ dev-python/PyQt4[X,svg]
+ fits? ( dev-python/pyfits )"
+
+PYTHON_CFLAGS=("2.* + -fno-strict-aliasing")
+
+src_install() {
+ distutils_src_install
+ insinto /usr/share/doc/${PF}
+ if use examples; then
+ doins -r examples || die "examples install failed"
+ fi
+ if use doc; then
+ cd Documents
+ insinto /usr/share/doc/${PF}
+ doins manual.pdf || die "doins failed"
+ insinto /usr/share/doc/${PF}/html
+ doins -r manual.html manimages \
+ || die "doc install failed"
+ fi
+ newicon "${S}"/windows/icons/veusz_48.png veusz.png
+ domenu "${FILESDIR}"/veusz.desktop || die "domenu failed"
+ insinto /usr/share/mime/packages
+ doins "${FILESDIR}"/veusz.xml || die "doins failed"
+}
+
+pkg_postinst() {
+ distutils_pkg_postinst
+ fdo-mime_desktop_database_update
+}
+
+pkg_postrm() {
+ distutils_pkg_postrm
+ fdo-mime_desktop_database_update
+}
diff --git a/sci-visualization/veusz/veusz-1.20.1.ebuild b/sci-visualization/veusz/veusz-1.20.1.ebuild
new file mode 100644
index 00000000000..e4c002a8fdc
--- /dev/null
+++ b/sci-visualization/veusz/veusz-1.20.1.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_3} )
+
+inherit eutils fdo-mime distutils-r1 virtualx
+
+DESCRIPTION="Qt scientific plotting package with good Postscript output"
+HOMEPAGE="http://home.gna.org/veusz/"
+SRC_URI="http://download.gna.org/${PN}/${P}.tar.gz"
+
+IUSE="dbus doc emf fits hdf5 vo"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+LICENSE="GPL-2"
+
+DEPEND="dev-python/numpy[${PYTHON_USEDEP}]"
+RDEPEND="${DEPEND}
+ >=dev-python/PyQt4-4.6[X,svg,${PYTHON_USEDEP}]
+ dbus? ( dev-python/dbus-python[${PYTHON_USEDEP}] )
+ emf? ( dev-python/pyemf[$(python_gen_usedep 'python2*')] )
+ fits? ( dev-python/astropy[${PYTHON_USEDEP}] )
+ hdf5? ( dev-python/h5py[${PYTHON_USEDEP}] )
+ vo? (
+ dev-python/astropy[${PYTHON_USEDEP}]
+ dev-python/sampy[$(python_gen_usedep 'python2*')]
+ )"
+
+python_test() {
+ distutils_install_for_testing
+ cd tests || die
+ VIRTUALX_COMMAND="${EPYTHON}" \
+ VEUSZ_RESOURCE_DIR="${TEST_DIR}/lib/veusz" \
+ virtualmake runselftest.py
+}
+
+python_install() {
+ distutils-r1_python_install
+ # symlink the license, bug #341653
+ ln -s "${PORTDIR}"/licenses/${LICENSE} \
+ "${D}/$(python_get_sitedir)"/${PN}/COPYING || die
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+ use doc && dodoc Documents/manual.pdf && \
+ dohtml -r Documents/{manimages,manual.html}
+
+ doicon icons/veusz.png
+ domenu "${FILESDIR}"/veusz.desktop
+ insinto /usr/share/mime/packages
+ doins "${FILESDIR}"/veusz.xml
+}
+
+pkg_postinst() {
+ fdo-mime_desktop_database_update
+}
+
+pkg_postrm() {
+ fdo-mime_desktop_database_update
+}
diff --git a/sci-visualization/veusz/veusz-1.20.ebuild b/sci-visualization/veusz/veusz-1.20.ebuild
new file mode 100644
index 00000000000..e4c002a8fdc
--- /dev/null
+++ b/sci-visualization/veusz/veusz-1.20.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_3} )
+
+inherit eutils fdo-mime distutils-r1 virtualx
+
+DESCRIPTION="Qt scientific plotting package with good Postscript output"
+HOMEPAGE="http://home.gna.org/veusz/"
+SRC_URI="http://download.gna.org/${PN}/${P}.tar.gz"
+
+IUSE="dbus doc emf fits hdf5 vo"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+LICENSE="GPL-2"
+
+DEPEND="dev-python/numpy[${PYTHON_USEDEP}]"
+RDEPEND="${DEPEND}
+ >=dev-python/PyQt4-4.6[X,svg,${PYTHON_USEDEP}]
+ dbus? ( dev-python/dbus-python[${PYTHON_USEDEP}] )
+ emf? ( dev-python/pyemf[$(python_gen_usedep 'python2*')] )
+ fits? ( dev-python/astropy[${PYTHON_USEDEP}] )
+ hdf5? ( dev-python/h5py[${PYTHON_USEDEP}] )
+ vo? (
+ dev-python/astropy[${PYTHON_USEDEP}]
+ dev-python/sampy[$(python_gen_usedep 'python2*')]
+ )"
+
+python_test() {
+ distutils_install_for_testing
+ cd tests || die
+ VIRTUALX_COMMAND="${EPYTHON}" \
+ VEUSZ_RESOURCE_DIR="${TEST_DIR}/lib/veusz" \
+ virtualmake runselftest.py
+}
+
+python_install() {
+ distutils-r1_python_install
+ # symlink the license, bug #341653
+ ln -s "${PORTDIR}"/licenses/${LICENSE} \
+ "${D}/$(python_get_sitedir)"/${PN}/COPYING || die
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+ use doc && dodoc Documents/manual.pdf && \
+ dohtml -r Documents/{manimages,manual.html}
+
+ doicon icons/veusz.png
+ domenu "${FILESDIR}"/veusz.desktop
+ insinto /usr/share/mime/packages
+ doins "${FILESDIR}"/veusz.xml
+}
+
+pkg_postinst() {
+ fdo-mime_desktop_database_update
+}
+
+pkg_postrm() {
+ fdo-mime_desktop_database_update
+}
diff --git a/sci-visualization/veusz/veusz-1.21.1.ebuild b/sci-visualization/veusz/veusz-1.21.1.ebuild
new file mode 100644
index 00000000000..deb1e3baef5
--- /dev/null
+++ b/sci-visualization/veusz/veusz-1.21.1.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+
+inherit eutils fdo-mime distutils-r1 virtualx
+
+DESCRIPTION="Qt scientific plotting package with good Postscript output"
+HOMEPAGE="http://home.gna.org/veusz/"
+SRC_URI="http://download.gna.org/${PN}/${P}.tar.gz"
+
+IUSE="dbus doc emf fits hdf5 vo"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+LICENSE="GPL-2"
+
+CDEPEND="
+ dev-python/numpy[${PYTHON_USEDEP}]
+ >=dev-python/PyQt4-4.6[X,svg,${PYTHON_USEDEP}]
+"
+RDEPEND="${CDEPEND}
+ dbus? ( dev-python/dbus-python[${PYTHON_USEDEP}] )
+ emf? ( dev-python/pyemf[$(python_gen_usedep 'python2*')] )
+ fits? ( dev-python/astropy[${PYTHON_USEDEP}] )
+ hdf5? ( dev-python/h5py[${PYTHON_USEDEP}] )
+ vo? (
+ dev-python/astropy[${PYTHON_USEDEP}]
+ dev-python/sampy[$(python_gen_usedep 'python2*')]
+ )"
+DEPEND="${CDEPEND}
+ dev-python/sip[${PYTHON_USEDEP}]
+ "
+
+python_prepare_all() {
+ sed \
+ -e "/sipconfig.Configuration/s:'PyQt4':'':g" \
+ -i pyqtdistutils.py || die
+}
+
+python_test() {
+ distutils_install_for_testing
+ cd tests || die
+ VIRTUALX_COMMAND="${EPYTHON}" \
+ VEUSZ_RESOURCE_DIR="${TEST_DIR}/lib/veusz" \
+ virtualmake runselftest.py
+}
+
+python_install() {
+ distutils-r1_python_install
+ # symlink the license, bug #341653
+ ln -s "${PORTDIR}"/licenses/${LICENSE} \
+ "${D}/$(python_get_sitedir)"/${PN}/COPYING || die
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+ use doc && dodoc Documents/manual.pdf && \
+ dohtml -r Documents/{manimages,manual.html}
+
+ doicon icons/veusz.png
+ domenu "${FILESDIR}"/veusz.desktop
+ insinto /usr/share/mime/packages
+ doins "${FILESDIR}"/veusz.xml
+}
+
+pkg_postinst() {
+ fdo-mime_desktop_database_update
+}
+
+pkg_postrm() {
+ fdo-mime_desktop_database_update
+}
diff --git a/sci-visualization/veusz/veusz-1.21.ebuild b/sci-visualization/veusz/veusz-1.21.ebuild
new file mode 100644
index 00000000000..e4c002a8fdc
--- /dev/null
+++ b/sci-visualization/veusz/veusz-1.21.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_3} )
+
+inherit eutils fdo-mime distutils-r1 virtualx
+
+DESCRIPTION="Qt scientific plotting package with good Postscript output"
+HOMEPAGE="http://home.gna.org/veusz/"
+SRC_URI="http://download.gna.org/${PN}/${P}.tar.gz"
+
+IUSE="dbus doc emf fits hdf5 vo"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+LICENSE="GPL-2"
+
+DEPEND="dev-python/numpy[${PYTHON_USEDEP}]"
+RDEPEND="${DEPEND}
+ >=dev-python/PyQt4-4.6[X,svg,${PYTHON_USEDEP}]
+ dbus? ( dev-python/dbus-python[${PYTHON_USEDEP}] )
+ emf? ( dev-python/pyemf[$(python_gen_usedep 'python2*')] )
+ fits? ( dev-python/astropy[${PYTHON_USEDEP}] )
+ hdf5? ( dev-python/h5py[${PYTHON_USEDEP}] )
+ vo? (
+ dev-python/astropy[${PYTHON_USEDEP}]
+ dev-python/sampy[$(python_gen_usedep 'python2*')]
+ )"
+
+python_test() {
+ distutils_install_for_testing
+ cd tests || die
+ VIRTUALX_COMMAND="${EPYTHON}" \
+ VEUSZ_RESOURCE_DIR="${TEST_DIR}/lib/veusz" \
+ virtualmake runselftest.py
+}
+
+python_install() {
+ distutils-r1_python_install
+ # symlink the license, bug #341653
+ ln -s "${PORTDIR}"/licenses/${LICENSE} \
+ "${D}/$(python_get_sitedir)"/${PN}/COPYING || die
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+ use doc && dodoc Documents/manual.pdf && \
+ dohtml -r Documents/{manimages,manual.html}
+
+ doicon icons/veusz.png
+ domenu "${FILESDIR}"/veusz.desktop
+ insinto /usr/share/mime/packages
+ doins "${FILESDIR}"/veusz.xml
+}
+
+pkg_postinst() {
+ fdo-mime_desktop_database_update
+}
+
+pkg_postrm() {
+ fdo-mime_desktop_database_update
+}
diff --git a/sci-visualization/veusz/veusz-1.22.ebuild b/sci-visualization/veusz/veusz-1.22.ebuild
new file mode 100644
index 00000000000..6de5028c509
--- /dev/null
+++ b/sci-visualization/veusz/veusz-1.22.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 python3_{3,4} )
+
+inherit eutils fdo-mime distutils-r1 virtualx
+
+DESCRIPTION="Qt scientific plotting package with good Postscript output"
+HOMEPAGE="http://home.gna.org/veusz/"
+SRC_URI="http://download.gna.org/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="dbus doc emf fits hdf5 minuit vo"
+
+CDEPEND="
+ dev-python/numpy[${PYTHON_USEDEP}]
+ >=dev-python/PyQt4-4.6[X,svg,${PYTHON_USEDEP}]
+"
+RDEPEND="${CDEPEND}
+ dbus? ( dev-python/dbus-python[${PYTHON_USEDEP}] )
+ emf? ( dev-python/pyemf[$(python_gen_usedep 'python2*')] )
+ fits? ( dev-python/astropy[${PYTHON_USEDEP}] )
+ hdf5? ( dev-python/h5py[${PYTHON_USEDEP}] )
+ minuit? ( dev-python/pyminuit[${PYTHON_USEDEP}] )
+ vo? (
+ dev-python/astropy[${PYTHON_USEDEP}]
+ dev-python/sampy[$(python_gen_usedep 'python2*')]
+ )"
+DEPEND="${CDEPEND}
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ dev-python/sip[${PYTHON_USEDEP}]
+ "
+
+python_test() {
+ distutils_install_for_testing
+ cd tests || die
+ VIRTUALX_COMMAND="${EPYTHON}" \
+ VEUSZ_RESOURCE_DIR="${TEST_DIR}/lib/veusz" \
+ virtualmake runselftest.py
+}
+
+python_install() {
+ distutils-r1_python_install
+ # symlink the license, bug #341653
+ ln -s "${PORTDIR}"/licenses/${LICENSE} \
+ "${D}/$(python_get_sitedir)"/${PN}/COPYING || die
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+ use doc && dodoc Documents/manual.pdf && \
+ dohtml -r Documents/{manimages,manual.html}
+
+ doicon icons/veusz.png
+ domenu "${FILESDIR}"/veusz.desktop
+ insinto /usr/share/mime/packages
+ doins "${FILESDIR}"/veusz.xml
+}
+
+pkg_postinst() {
+ fdo-mime_desktop_database_update
+}
+
+pkg_postrm() {
+ fdo-mime_desktop_database_update
+}
diff --git a/sci-visualization/veusz/veusz-1.23.ebuild b/sci-visualization/veusz/veusz-1.23.ebuild
new file mode 100644
index 00000000000..42bfe9dd428
--- /dev/null
+++ b/sci-visualization/veusz/veusz-1.23.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 python3_{3,4} )
+
+inherit eutils fdo-mime distutils-r1 virtualx
+
+DESCRIPTION="Qt scientific plotting package with good Postscript output"
+HOMEPAGE="http://home.gna.org/veusz/"
+SRC_URI="http://download.gna.org/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="dbus doc emf fits hdf5 minuit vo"
+
+CDEPEND="
+ dev-python/numpy[${PYTHON_USEDEP}]
+ >=dev-python/PyQt4-4.11.4[X,svg,${PYTHON_USEDEP}]
+"
+RDEPEND="${CDEPEND}
+ dbus? ( dev-python/dbus-python[${PYTHON_USEDEP}] )
+ emf? ( dev-python/pyemf[$(python_gen_usedep 'python2*')] )
+ fits? ( dev-python/astropy[${PYTHON_USEDEP}] )
+ hdf5? ( dev-python/h5py[${PYTHON_USEDEP}] )
+ minuit? ( dev-python/pyminuit[${PYTHON_USEDEP}] )
+ vo? (
+ dev-python/astropy[${PYTHON_USEDEP}]
+ dev-python/sampy[$(python_gen_usedep 'python2*')]
+ )"
+DEPEND="${CDEPEND}
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ dev-python/sip[${PYTHON_USEDEP}]
+ "
+
+python_test() {
+ distutils_install_for_testing
+ cd tests || die
+ VIRTUALX_COMMAND="${EPYTHON}" \
+ VEUSZ_RESOURCE_DIR="${S}" \
+ virtualmake runselftest.py
+}
+
+python_install() {
+ distutils-r1_python_install
+ # symlink the license, bug #341653
+ rm "${D}/$(python_get_sitedir)"/${PN}/{COPYING,AUTHORS,ChangeLog} || die
+ ln -s "${PORTDIR}"/licenses/${LICENSE} \
+ "${D}/$(python_get_sitedir)"/${PN}/COPYING || die
+}
+
+python_install_all() {
+ distutils-r1_python_install_all
+ use doc && dodoc Documents/manual.pdf && \
+ dohtml -r Documents/{manimages,manual.html}
+
+ doicon icons/veusz.png
+ domenu "${FILESDIR}"/veusz.desktop
+ insinto /usr/share/mime/packages
+ doins "${FILESDIR}"/veusz.xml
+}
+
+pkg_postinst() {
+ fdo-mime_desktop_database_update
+}
+
+pkg_postrm() {
+ fdo-mime_desktop_database_update
+}
diff --git a/sci-visualization/visit/Manifest b/sci-visualization/visit/Manifest
new file mode 100644
index 00000000000..c3f00bcbc74
--- /dev/null
+++ b/sci-visualization/visit/Manifest
@@ -0,0 +1,3 @@
+DIST visit2.7.3.tar.gz 82475238 SHA256 e4ed7b20c4c0fb5aac49181f8ddeae3d2d5a73b1662756ddcaa9d08776a7c39f SHA512 5eea2667482a9b70cf4794446da69595c1145839dfae0afdf961589a09b0f3ad41c44b607f96dbb3e4a3c1ba77161d77a1e0342d6a4e2df8bc73040110c7e8f1 WHIRLPOOL a1157d2424d93037e1ffd8dd10ebc47ae9f3d074a63a811bcadf6db5349dea348432e63d414d4a62a156c9423a1d5fdb240f34b2ec4262e8647def40d999759a
+DIST visit2.8.2.tar.gz 88008002 SHA256 43d652dde540e3a5db34a2105d89432fa1d018b104ed0508dfb18f4287a43eb3 SHA512 1c2c2b6cad49b32b5cbc7f7ffba5c6ffb98ee88dfeae5c51af5e581ad53fb1efb8fc222b796696e607abd4b748855141de072414bdec1b1ad4e7ac01a928db8d WHIRLPOOL dadfd48bf9522fc67547f2d7fc4332f300d06e3f04f1bd23189f4a6d806286b46420e4caecaba616bf9f954ea3e202efcee7e899d10444304f7f79809e8fc6d9
+DIST visit2.9.0.tar.gz 87058013 SHA256 98d7a80d95f4083fffc23a65cff28abd126e2eb0fff43591663818aaa1338fcf SHA512 889a6ff6f0c45064c0705a8a41fd268ad865619e42eb7a3302a520bcb2a3c182a40bc6870ec80c0994fa649f3030f6283b9783fab37b938d4b77fd3c1ab10d15 WHIRLPOOL 8d6e9370fddda7d28c16882a04ac2c196b0c42ffd72436ca601413b7483c72d4b33691a9dc7340d71d536fead3d6692f1491c2bed32ed27ceba0c745b9555380
diff --git a/sci-visualization/visit/files/visit-2.7.3-dont_symlink_visit_dir.patch b/sci-visualization/visit/files/visit-2.7.3-dont_symlink_visit_dir.patch
new file mode 100644
index 00000000000..0953e5b9e60
--- /dev/null
+++ b/sci-visualization/visit/files/visit-2.7.3-dont_symlink_visit_dir.patch
@@ -0,0 +1,18 @@
+diff -ru visit2.7.1.old2/src/CMakeLists.txt visit2.7.1/src/CMakeLists.txt
+--- visit2.7.1.old2/src/CMakeLists.txt 2014-01-27 22:10:06.520297262 +0100
++++ visit2.7.1/src/CMakeLists.txt 2014-01-27 22:11:30.520298002 +0100
+@@ -807,14 +807,6 @@
+ \"${VISIT_VERSION}\"
+ \"${CMAKE_INSTALL_PREFIX}/beta\")
+ ")
+- ELSE(VISIT_INSTALL_AS_BETA)
+- INSTALL(CODE "
+- MESSAGE(\"Symlinking current to ${VISIT_VERSION}\")
+- EXECUTE_PROCESS(WORKING_DIRECTORY \${CMAKE_INSTALL_PREFIX}
+- COMMAND \${CMAKE_COMMAND} -E create_symlink
+- \"${VISIT_VERSION}\"
+- \"${CMAKE_INSTALL_PREFIX}/current\")
+- ")
+ ENDIF(VISIT_INSTALL_AS_BETA)
+ ENDIF(WIN32)
+ MARK_AS_ADVANCED(
diff --git a/sci-visualization/visit/files/visit-2.7.3-findpython.patch b/sci-visualization/visit/files/visit-2.7.3-findpython.patch
new file mode 100644
index 00000000000..180ffbf379a
--- /dev/null
+++ b/sci-visualization/visit/files/visit-2.7.3-findpython.patch
@@ -0,0 +1,19 @@
+diff -ru visit2.7.1.old/src/CMake/FindVisItPython.cmake visit2.7.1.new/src/CMake/FindVisItPython.cmake
+--- visit2.7.1.old/src/CMake/FindVisItPython.cmake 2013-09-13 21:06:57.000000000 +0200
++++ visit2.7.1.new/src/CMake/FindVisItPython.cmake 2014-01-25 20:30:06.948654123 +0100
+@@ -141,11 +141,12 @@
+ FIND_LIBRARY(PYTHON_LIBRARY
+ NAMES python${_CURRENT_VERSION_NO_DOTS} python${_CURRENT_VERSION}
+ PATHS
+- ${PYTHON_DIR}/lib
+- ${PYTHON_DIR}/libs
+- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\${_CURRENT_VERSION}\\InstallPath]/libs
++ ${PYTHON_DIR}/lib
++ ${PYTHON_DIR}/lib64
++ ${PYTHON_DIR}/libs
++ [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\${_CURRENT_VERSION}\\InstallPath]/libs
+ NO_DEFAULT_PATH
+ NO_CMAKE_ENVIRONMENT_PATH
+ NO_CMAKE_PATH
+ NO_SYSTEM_ENVIRONMENT_PATH)
+
diff --git a/sci-visualization/visit/files/visit-2.7.3-findsilo.patch b/sci-visualization/visit/files/visit-2.7.3-findsilo.patch
new file mode 100644
index 00000000000..04d73c37fc1
--- /dev/null
+++ b/sci-visualization/visit/files/visit-2.7.3-findsilo.patch
@@ -0,0 +1,12 @@
+diff -ru visit2.7.1-old/src/CMake/FindSilo.cmake visit2.7.1-new/src/CMake/FindSilo.cmake
+--- visit2.7.1-old/src/CMake/FindSilo.cmake 2013-11-20 20:30:44.000000000 +0100
++++ visit2.7.1-new/src/CMake/FindSilo.cmake 2014-02-01 02:22:29.410541850 +0100
+@@ -90,7 +90,7 @@
+ NO_CMAKE_PATH
+ NO_SYSTEM_ENVIRONMENT_PATH)
+ IF(SILOH5_LIBRARY_EXISTS)
+- SET_UP_THIRD_PARTY(SILO lib include siloh5)
++ SET_UP_THIRD_PARTY(SILO lib include siloh5 hdf5 z)
+ ELSE(SILOH5_LIBRARY_EXISTS)
+ SET_UP_THIRD_PARTY(SILO lib include silo)
+ ENDIF(SILOH5_LIBRARY_EXISTS)
diff --git a/sci-visualization/visit/files/visit-2.7.3-findvtk.patch b/sci-visualization/visit/files/visit-2.7.3-findvtk.patch
new file mode 100644
index 00000000000..c241e139eab
--- /dev/null
+++ b/sci-visualization/visit/files/visit-2.7.3-findvtk.patch
@@ -0,0 +1,24 @@
+diff -ru visit2.7.1.old/src/CMake/FindVisItVTK.cmake visit2.7.1.new/src/CMake/FindVisItVTK.cmake
+--- visit2.7.1.old/src/CMake/FindVisItVTK.cmake 2013-09-13 21:06:57.000000000 +0200
++++ visit2.7.1.new/src/CMake/FindVisItVTK.cmake 2014-01-25 20:30:06.948654123 +0100
+@@ -234,11 +234,17 @@
+
+ # check for python wrappers
+ IF (NOT WIN32)
+- FILE(GLOB VTK_PY_WRAPPERS_DIR ${VTK_LIBRARY_DIRS}/python*/)
++ FILE(GLOB VTK_PY_WRAPPERS_DIRECTORIES ${VTK_LIBRARY_DIRS}/python*/)
+ ELSE (NOT WIN32)
+- FILE(GLOB VTK_PY_WRAPPERS_DIR ${VISIT_VTK_DIR}/lib)
++ FILE(GLOB VTK_PY_WRAPPERS_DIRECTORIES ${VISIT_VTK_DIR}/lib)
+ ENDIF (NOT WIN32)
+-MESSAGE(STATUS " VTK_PY_WRAPPERS_DIR=${VTK_PY_WRAPPERS_DIR}")
++MESSAGE(STATUS " VTK_PY_WRAPPERS_DIRECTORIES=${VTK_PY_WRAPPERS_DIRECTORIES}")
++
++FOREACH(X ${VTK_PY_WRAPPERS_DIRECTORIES})
++ IF(EXISTS "${X}/site-packages/vtk")
++ SET(VTK_PY_WRAPPERS_DIR "${X}")
++ ENDIF()
++ENDFOREACH(X)
+
+ IF(EXISTS ${VTK_PY_WRAPPERS_DIR}/site-packages/vtk)
+ MESSAGE(STATUS "Found VTK Python Wrappers - ${VTK_PY_WRAPPERS_DIR}")
diff --git a/sci-visualization/visit/files/visit-2.7.3-vtklibs.patch b/sci-visualization/visit/files/visit-2.7.3-vtklibs.patch
new file mode 100644
index 00000000000..9f2416dba2a
--- /dev/null
+++ b/sci-visualization/visit/files/visit-2.7.3-vtklibs.patch
@@ -0,0 +1,142 @@
+diff -ru visit2.7.1.old/src/engine/main/CMakeLists.txt visit2.7.1.new/src/engine/main/CMakeLists.txt
+--- visit2.7.1.old/src/engine/main/CMakeLists.txt 2013-09-13 21:13:13.000000000 +0200
++++ visit2.7.1.new/src/engine/main/CMakeLists.txt 2014-01-25 20:30:06.948654123 +0100
+@@ -184,8 +184,8 @@
+ ${engine_ser_exe_EPlot_ser}
+ engine_ser
+ visit_verdict
+- vtkjpeg
+- vtkpng
++ jpeg
++ png
+ ${VTKZLIB_LIB}
+ ${VTK_FREETYPE_LIBRARIES}
+ vtkftgl
+@@ -268,8 +268,8 @@
+ ${engine_par_exe_EPlot_par}
+ engine_par
+ visit_verdict
+- vtkjpeg
+- vtkpng
++ jpeg
++ png
+ ${VTKZLIB_LIB}
+ ${VTK_FREETYPE_LIBRARIES}
+ vtkftgl
+diff -ru visit2.7.1.old/src/mdserver/main/CMakeLists.txt visit2.7.1.new/src/mdserver/main/CMakeLists.txt
+--- visit2.7.1.old/src/mdserver/main/CMakeLists.txt 2013-09-13 21:07:04.000000000 +0200
++++ visit2.7.1.new/src/mdserver/main/CMakeLists.txt 2014-01-25 20:30:06.948654123 +0100
+@@ -118,10 +118,10 @@
+ visit_verdict
+ vtkCommonCore
+ vtkIOCore
+- vtktiff
++ tiff
+ ${VTKZLIB_LIB}
+- vtkpng
+- vtkjpeg
++ png
++ jpeg
+ ${ZLIB_LIB}
+ ${CMAKE_THREAD_LIBS}
+ ${DL_LIB}
+diff -ru visit2.7.1.old/src/svn_bin/static_simV2.py visit2.7.1.new/src/svn_bin/static_simV2.py
+--- visit2.7.1.old/src/svn_bin/static_simV2.py 2013-09-13 21:12:52.000000000 +0200
++++ visit2.7.1.new/src/svn_bin/static_simV2.py 2014-01-25 20:30:06.948654123 +0100
+@@ -176,7 +176,7 @@
+ #
+ # Print the link lines that we'd have to use to get the -l's
+ #
+-vtk_libs="-lvtkCommon -lvtkGraphics -lvtkHybrid -lvtkRendering -lvtkImaging -lvtkGenericFiltering -lvtkFiltering -lvtkIO -lvtksys -lvtkfreetype -lvtkftgl -lvtkjpeg -lvtktiff -lvtkpng -lvtkexpat -lvtklibxml2 -lvtkzlib "
++vtk_libs="-lvtkCommon -lvtkGraphics -lvtkHybrid -lvtkRendering -lvtkImaging -lvtkGenericFiltering -lvtkFiltering -lvtkIO -lvtksys -lvtkfreetype -lvtkftgl -ljpeg -ltiff -lpng -lexpat -lvtklibxml2 -lz "
+ frameworks = "-lGL "
+ if sys.platform == "darwin":
+ frameworks = "-framework OpenGL -framework AGL -framework SystemConfiguration -framework IOKit -framework Cocoa "
+diff -ru visit2.7.1.old/src/tools/convert/CMakeLists.txt visit2.7.1.new/src/tools/convert/CMakeLists.txt
+--- visit2.7.1.old/src/tools/convert/CMakeLists.txt 2013-10-09 22:15:21.000000000 +0200
++++ visit2.7.1.new/src/tools/convert/CMakeLists.txt 2014-01-25 20:30:06.948654123 +0100
+@@ -104,8 +104,8 @@
+ )
+
+ SET(VTK_EXTRA_LIBS
+-vtkjpeg
+-vtkpng
++jpeg
++png
+ ${VTKZLIB_LIB}
+ ${VTK_FREETYPE_LIBRARIES}
+ vtkftgl
+diff -ru visit2.7.1.old/src/tools/dataserver/CMakeLists.txt visit2.7.1.new/src/tools/dataserver/CMakeLists.txt
+--- visit2.7.1.old/src/tools/dataserver/CMakeLists.txt 2013-09-13 21:08:25.000000000 +0200
++++ visit2.7.1.new/src/tools/dataserver/CMakeLists.txt 2014-01-25 20:30:06.948654123 +0100
+@@ -69,9 +69,9 @@
+ )
+
+ SET(VTK_EXTRA_LIBS
+-vtktiff
+-vtkjpeg
+-vtkpng
++tiff
++jpeg
++png
+ ${VTKZLIB_LIB}
+ ${VTK_FREETYPE_LIBRARIES}
+ vtkftgl
+diff -ru visit2.7.1.old/src/tools/mcurvit/CMakeLists.txt visit2.7.1.new/src/tools/mcurvit/CMakeLists.txt
+--- visit2.7.1.old/src/tools/mcurvit/CMakeLists.txt 2013-09-13 21:08:15.000000000 +0200
++++ visit2.7.1.new/src/tools/mcurvit/CMakeLists.txt 2014-01-25 20:30:06.948654123 +0100
+@@ -104,9 +104,9 @@
+ )
+
+ SET(VTK_EXTRA_LIBS
+-vtktiff
+-vtkjpeg
+-vtkpng
++tiff
++jpeg
++png
+ ${VTKZLIB_LIB}
+ ${VTK_FREETYPE_LIBRARIES}
+ vtkftgl
+diff -ru visit2.7.1.old/src/tools/protocol/CMakeLists.txt visit2.7.1.new/src/tools/protocol/CMakeLists.txt
+--- visit2.7.1.old/src/tools/protocol/CMakeLists.txt 2013-09-13 21:08:16.000000000 +0200
++++ visit2.7.1.new/src/tools/protocol/CMakeLists.txt 2014-01-25 20:30:06.948654123 +0100
+@@ -75,9 +75,9 @@
+ )
+
+ SET(VTK_EXTRA_LIBS
+-vtktiff
+-vtkjpeg
+-vtkpng
++tiff
++jpeg
++png
+ ${VTKZLIB_LIB}
+ ${VTK_FREETYPE_LIBRARIES}
+ vtkftgl
+diff -ru visit2.7.1.old/src/viewer/main/CMakeLists.txt visit2.7.1.new/src/viewer/main/CMakeLists.txt
+--- visit2.7.1.old/src/viewer/main/CMakeLists.txt 2013-09-13 21:08:36.000000000 +0200
++++ visit2.7.1.new/src/viewer/main/CMakeLists.txt 2014-01-25 20:30:06.948654123 +0100
+@@ -272,8 +272,8 @@
+ ${viewer_exe_IPlot}
+ ${viewer_exe_VPlot}
+ viewer
+- vtkpng
+- vtkjpeg
++ png
++ jpeg
+ ${VTKZLIB_LIB}
+ ${VTK_FREETYPE_LIBRARIES}
+ vtkftgl
+diff -ru visit2.7.1.old/src/visit_vtk/full/CMakeLists.txt visit2.7.1.new/src/visit_vtk/full/CMakeLists.txt
+--- visit2.7.1.old/src/visit_vtk/full/CMakeLists.txt 2013-09-13 21:07:03.000000000 +0200
++++ visit2.7.1.new/src/visit_vtk/full/CMakeLists.txt 2014-01-25 20:30:06.948654123 +0100
+@@ -122,7 +122,7 @@
+ LINK_DIRECTORIES(${LIBRARY_OUTPUT_DIRECTORY} ${VTK_LIBRARY_DIRS})
+
+ ADD_LIBRARY(visit_vtk ${VISIT_VTK_SOURCES})
+-TARGET_LINK_LIBRARIES(visit_vtk lightweight_visit_vtk vtkFiltersExtraction vtkFiltersFlowPaths vtkImagingHybrid vtkRenderingOpenGL vtkRenderingFreeType vtkRenderingFreeTypeOpenGL vtkInteractionStyle vtktiff)
++TARGET_LINK_LIBRARIES(visit_vtk lightweight_visit_vtk vtkFiltersExtraction vtkFiltersFlowPaths vtkImagingHybrid vtkRenderingOpenGL vtkRenderingFreeType vtkRenderingFreeTypeOpenGL vtkInteractionStyle tiff)
+ # Add vtk definitions
+ ADD_TARGET_DEFINITIONS(visit_vtk "${VTK_DEFINITIONS}")
+
diff --git a/sci-visualization/visit/files/visit-2.8.2-dont_symlink_visit_dir.patch b/sci-visualization/visit/files/visit-2.8.2-dont_symlink_visit_dir.patch
new file mode 100644
index 00000000000..0953e5b9e60
--- /dev/null
+++ b/sci-visualization/visit/files/visit-2.8.2-dont_symlink_visit_dir.patch
@@ -0,0 +1,18 @@
+diff -ru visit2.7.1.old2/src/CMakeLists.txt visit2.7.1/src/CMakeLists.txt
+--- visit2.7.1.old2/src/CMakeLists.txt 2014-01-27 22:10:06.520297262 +0100
++++ visit2.7.1/src/CMakeLists.txt 2014-01-27 22:11:30.520298002 +0100
+@@ -807,14 +807,6 @@
+ \"${VISIT_VERSION}\"
+ \"${CMAKE_INSTALL_PREFIX}/beta\")
+ ")
+- ELSE(VISIT_INSTALL_AS_BETA)
+- INSTALL(CODE "
+- MESSAGE(\"Symlinking current to ${VISIT_VERSION}\")
+- EXECUTE_PROCESS(WORKING_DIRECTORY \${CMAKE_INSTALL_PREFIX}
+- COMMAND \${CMAKE_COMMAND} -E create_symlink
+- \"${VISIT_VERSION}\"
+- \"${CMAKE_INSTALL_PREFIX}/current\")
+- ")
+ ENDIF(VISIT_INSTALL_AS_BETA)
+ ENDIF(WIN32)
+ MARK_AS_ADVANCED(
diff --git a/sci-visualization/visit/files/visit-2.8.2-findpython.patch b/sci-visualization/visit/files/visit-2.8.2-findpython.patch
new file mode 100644
index 00000000000..180ffbf379a
--- /dev/null
+++ b/sci-visualization/visit/files/visit-2.8.2-findpython.patch
@@ -0,0 +1,19 @@
+diff -ru visit2.7.1.old/src/CMake/FindVisItPython.cmake visit2.7.1.new/src/CMake/FindVisItPython.cmake
+--- visit2.7.1.old/src/CMake/FindVisItPython.cmake 2013-09-13 21:06:57.000000000 +0200
++++ visit2.7.1.new/src/CMake/FindVisItPython.cmake 2014-01-25 20:30:06.948654123 +0100
+@@ -141,11 +141,12 @@
+ FIND_LIBRARY(PYTHON_LIBRARY
+ NAMES python${_CURRENT_VERSION_NO_DOTS} python${_CURRENT_VERSION}
+ PATHS
+- ${PYTHON_DIR}/lib
+- ${PYTHON_DIR}/libs
+- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\${_CURRENT_VERSION}\\InstallPath]/libs
++ ${PYTHON_DIR}/lib
++ ${PYTHON_DIR}/lib64
++ ${PYTHON_DIR}/libs
++ [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\${_CURRENT_VERSION}\\InstallPath]/libs
+ NO_DEFAULT_PATH
+ NO_CMAKE_ENVIRONMENT_PATH
+ NO_CMAKE_PATH
+ NO_SYSTEM_ENVIRONMENT_PATH)
+
diff --git a/sci-visualization/visit/files/visit-2.8.2-findsilo.patch b/sci-visualization/visit/files/visit-2.8.2-findsilo.patch
new file mode 100644
index 00000000000..04d73c37fc1
--- /dev/null
+++ b/sci-visualization/visit/files/visit-2.8.2-findsilo.patch
@@ -0,0 +1,12 @@
+diff -ru visit2.7.1-old/src/CMake/FindSilo.cmake visit2.7.1-new/src/CMake/FindSilo.cmake
+--- visit2.7.1-old/src/CMake/FindSilo.cmake 2013-11-20 20:30:44.000000000 +0100
++++ visit2.7.1-new/src/CMake/FindSilo.cmake 2014-02-01 02:22:29.410541850 +0100
+@@ -90,7 +90,7 @@
+ NO_CMAKE_PATH
+ NO_SYSTEM_ENVIRONMENT_PATH)
+ IF(SILOH5_LIBRARY_EXISTS)
+- SET_UP_THIRD_PARTY(SILO lib include siloh5)
++ SET_UP_THIRD_PARTY(SILO lib include siloh5 hdf5 z)
+ ELSE(SILOH5_LIBRARY_EXISTS)
+ SET_UP_THIRD_PARTY(SILO lib include silo)
+ ENDIF(SILOH5_LIBRARY_EXISTS)
diff --git a/sci-visualization/visit/files/visit-2.8.2-findvtk.patch b/sci-visualization/visit/files/visit-2.8.2-findvtk.patch
new file mode 100644
index 00000000000..2fec72e1f4f
--- /dev/null
+++ b/sci-visualization/visit/files/visit-2.8.2-findvtk.patch
@@ -0,0 +1,29 @@
+--- visit2.8.2/src/CMake/FindVisItVTK.cmake.orig 2015-01-09 12:18:54.467780216 +0100
++++ visit2.8.2/src/CMake/FindVisItVTK.cmake 2015-01-09 12:19:59.737780932 +0100
+@@ -234,15 +234,22 @@
+
+ # check for python wrappers
+ IF (NOT WIN32)
+- FILE(GLOB VTK_PY_WRAPPERS_DIR ${VTK_LIBRARY_DIRS}/python*/)
++ FILE(GLOB VTK_PY_WRAPPERS_DIRECTORIES ${VTK_LIBRARY_DIRS}/python*/)
+ ELSE (NOT WIN32)
+ IF(${VTK_VERSION} VERSION_LESS "6.1.0")
+- FILE(GLOB VTK_PY_WRAPPERS_DIR ${VISIT_VTK_DIR}/lib)
++ FILE(GLOB VTK_PY_WRAPPERS_DIRECTORIES ${VISIT_VTK_DIR}/lib)
+ ELSE()
+- FILE(GLOB VTK_PY_WRAPPERS_DIR ${VISIT_VTK_DIR}/lib/python*)
++ FILE(GLOB VTK_PY_WRAPPERS_DIRECTORIES ${VISIT_VTK_DIR}/lib/python*)
+ ENDIF()
+ ENDIF (NOT WIN32)
+-MESSAGE(STATUS " VTK_PY_WRAPPERS_DIR=${VTK_PY_WRAPPERS_DIR}")
++MESSAGE(STATUS " VTK_PY_WRAPPERS_DIRECTORIES=${VTK_PY_WRAPPERS_DIRECTORIES}")
++
++FOREACH(X ${VTK_PY_WRAPPERS_DIRECTORIES})
++ IF(EXISTS "${X}/site-packages/vtk")
++ SET(VTK_PY_WRAPPERS_DIR "${X}")
++ ENDIF()
++ENDFOREACH(X)
++
+
+ IF(EXISTS ${VTK_PY_WRAPPERS_DIR}/site-packages/vtk)
+ MESSAGE(STATUS "Found VTK Python Wrappers - ${VTK_PY_WRAPPERS_DIR}")
diff --git a/sci-visualization/visit/files/visit-2.8.2-vtklibs.patch b/sci-visualization/visit/files/visit-2.8.2-vtklibs.patch
new file mode 100644
index 00000000000..a6b47096e81
--- /dev/null
+++ b/sci-visualization/visit/files/visit-2.8.2-vtklibs.patch
@@ -0,0 +1,133 @@
+diff -ur visit2.8.2-old/src/engine/main/CMakeLists.txt visit2.8.2-new/src/engine/main/CMakeLists.txt
+--- visit2.8.2-old/src/engine/main/CMakeLists.txt 2014-10-01 00:28:19.000000000 +0200
++++ visit2.8.2-new/src/engine/main/CMakeLists.txt 2015-01-05 15:14:43.850783973 +0100
+@@ -188,8 +188,8 @@
+ ${engine_ser_exe_EPlot_ser}
+ engine_ser
+ visit_verdict
+- vtkjpeg
+- vtkpng
++ jpeg
++ png
+ ${VTKZLIB_LIB}
+ ${VTK_FREETYPE_LIBRARIES}
+ vtkftgl
+@@ -273,8 +273,8 @@
+ ${engine_par_exe_EPlot_par}
+ engine_par
+ visit_verdict
+- vtkjpeg
+- vtkpng
++ jpeg
++ png
+ ${VTKZLIB_LIB}
+ ${VTK_FREETYPE_LIBRARIES}
+ vtkftgl
+diff -ur visit2.8.2-old/src/mdserver/main/CMakeLists.txt visit2.8.2-new/src/mdserver/main/CMakeLists.txt
+--- visit2.8.2-old/src/mdserver/main/CMakeLists.txt 2014-08-11 23:45:16.000000000 +0200
++++ visit2.8.2-new/src/mdserver/main/CMakeLists.txt 2015-01-05 15:15:41.810784062 +0100
+@@ -119,10 +119,10 @@
+ visit_verdict
+ vtkCommonCore
+ vtkIOCore
+- vtktiff
++ tiff
+ ${VTKZLIB_LIB}
+- vtkpng
+- vtkjpeg
++ png
++ jpeg
+ ${ZLIB_LIB}
+ ${CMAKE_THREAD_LIBS}
+ ${DL_LIB}
+diff -ur visit2.8.2-old/src/tools/convert/CMakeLists.txt visit2.8.2-new/src/tools/convert/CMakeLists.txt
+--- visit2.8.2-old/src/tools/convert/CMakeLists.txt 2014-08-11 23:46:08.000000000 +0200
++++ visit2.8.2-new/src/tools/convert/CMakeLists.txt 2015-01-05 15:14:28.880783951 +0100
+@@ -105,8 +105,8 @@
+ )
+
+ SET(VTK_EXTRA_LIBS
+-vtkjpeg
+-vtkpng
++jpeg
++png
+ ${VTKZLIB_LIB}
+ ${VTK_FREETYPE_LIBRARIES}
+ vtkftgl
+diff -ur visit2.8.2-old/src/tools/dataserver/CMakeLists.txt visit2.8.2-new/src/tools/dataserver/CMakeLists.txt
+--- visit2.8.2-old/src/tools/dataserver/CMakeLists.txt 2014-08-11 23:46:12.000000000 +0200
++++ visit2.8.2-new/src/tools/dataserver/CMakeLists.txt 2015-01-05 15:13:02.000783818 +0100
+@@ -70,9 +70,9 @@
+ )
+
+ SET(VTK_EXTRA_LIBS
+-vtktiff
+-vtkjpeg
+-vtkpng
++tiff
++jpeg
++png
+ ${VTKZLIB_LIB}
+ ${VTK_FREETYPE_LIBRARIES}
+ vtkftgl
+diff -ur visit2.8.2-old/src/tools/mcurvit/CMakeLists.txt visit2.8.2-new/src/tools/mcurvit/CMakeLists.txt
+--- visit2.8.2-old/src/tools/mcurvit/CMakeLists.txt 2014-08-11 23:46:11.000000000 +0200
++++ visit2.8.2-new/src/tools/mcurvit/CMakeLists.txt 2015-01-05 15:16:02.400784093 +0100
+@@ -104,9 +104,9 @@
+ )
+
+ SET(VTK_EXTRA_LIBS
+-vtktiff
+-vtkjpeg
+-vtkpng
++tiff
++jpeg
++png
+ ${VTKZLIB_LIB}
+ ${VTK_FREETYPE_LIBRARIES}
+ vtkftgl
+diff -ur visit2.8.2-old/src/tools/protocol/CMakeLists.txt visit2.8.2-new/src/tools/protocol/CMakeLists.txt
+--- visit2.8.2-old/src/tools/protocol/CMakeLists.txt 2014-08-11 23:46:14.000000000 +0200
++++ visit2.8.2-new/src/tools/protocol/CMakeLists.txt 2015-01-05 15:12:46.480783795 +0100
+@@ -76,9 +76,9 @@
+ )
+
+ SET(VTK_EXTRA_LIBS
+-vtktiff
+-vtkjpeg
+-vtkpng
++tiff
++jpeg
++png
+ ${VTKZLIB_LIB}
+ ${VTK_FREETYPE_LIBRARIES}
+ vtkftgl
+diff -ur visit2.8.2-old/src/viewer/main/CMakeLists.txt visit2.8.2-new/src/viewer/main/CMakeLists.txt
+--- visit2.8.2-old/src/viewer/main/CMakeLists.txt 2014-08-11 23:46:26.000000000 +0200
++++ visit2.8.2-new/src/viewer/main/CMakeLists.txt 2015-01-05 15:12:11.380783741 +0100
+@@ -279,8 +279,8 @@
+ ${viewer_exe_IPlot}
+ ${viewer_exe_VPlot}
+ viewer
+- vtkpng
+- vtkjpeg
++ png
++ jpeg
+ ${VTKZLIB_LIB}
+ ${VTK_FREETYPE_LIBRARIES}
+ vtkftgl
+diff -ur visit2.8.2-old/src/visit_vtk/full/CMakeLists.txt visit2.8.2-new/src/visit_vtk/full/CMakeLists.txt
+--- visit2.8.2-old/src/visit_vtk/full/CMakeLists.txt 2014-08-11 23:45:14.000000000 +0200
++++ visit2.8.2-new/src/visit_vtk/full/CMakeLists.txt 2015-01-05 15:11:17.680783659 +0100
+@@ -125,9 +125,9 @@
+ ADD_LIBRARY(visit_vtk ${VISIT_VTK_SOURCES})
+
+ IF(HAVE_LIB_R)
+- TARGET_LINK_LIBRARIES(visit_vtk lightweight_visit_vtk vtkFiltersExtraction vtkFiltersFlowPaths vtkImagingHybrid vtkRenderingOpenGL vtkRenderingFreeType vtkRenderingFreeTypeOpenGL vtkInteractionStyle vtktiff vtkFiltersStatisticsGnuR)
++ TARGET_LINK_LIBRARIES(visit_vtk lightweight_visit_vtk vtkFiltersExtraction vtkFiltersFlowPaths vtkImagingHybrid vtkRenderingOpenGL vtkRenderingFreeType vtkRenderingFreeTypeOpenGL vtkInteractionStyle vtkFiltersStatisticsGnuR)
+ ELSE(HAVE_LIB_R)
+- TARGET_LINK_LIBRARIES(visit_vtk lightweight_visit_vtk vtkFiltersExtraction vtkFiltersFlowPaths vtkImagingHybrid vtkRenderingOpenGL vtkRenderingFreeType vtkRenderingFreeTypeOpenGL vtkInteractionStyle vtktiff)
++ TARGET_LINK_LIBRARIES(visit_vtk lightweight_visit_vtk vtkFiltersExtraction vtkFiltersFlowPaths vtkImagingHybrid vtkRenderingOpenGL vtkRenderingFreeType vtkRenderingFreeTypeOpenGL vtkInteractionStyle)
+ ENDIF(HAVE_LIB_R)
+ # Add vtk definitions
+ ADD_TARGET_DEFINITIONS(visit_vtk "${VTK_DEFINITIONS}")
diff --git a/sci-visualization/visit/files/visit-2.9.0-cmakelist.patch b/sci-visualization/visit/files/visit-2.9.0-cmakelist.patch
new file mode 100644
index 00000000000..8c8618a2421
--- /dev/null
+++ b/sci-visualization/visit/files/visit-2.9.0-cmakelist.patch
@@ -0,0 +1,10 @@
+--- CMakeLists.txt.orig 2015-06-25 07:30:40.907149341 +0200
++++ CMakeLists.txt 2015-06-25 07:30:57.537148929 +0200
+@@ -991,7 +991,6 @@
+ DIRECTORY_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE
+ GROUP_READ GROUP_WRITE GROUP_EXECUTE
+ WORLD_READ WORLD_EXECUTE
+- CONFIGURATIONS "" None Debug Release RelWithDebInfo MinSizeRel
+ FILES_MATCHING PATTERN "*.h"
+ PATTERN "*.hpp"
+ PATTERN ".svn" EXCLUDE
diff --git a/sci-visualization/visit/files/visit-2.9.0-dont_symlink_visit_dir.patch b/sci-visualization/visit/files/visit-2.9.0-dont_symlink_visit_dir.patch
new file mode 100644
index 00000000000..0953e5b9e60
--- /dev/null
+++ b/sci-visualization/visit/files/visit-2.9.0-dont_symlink_visit_dir.patch
@@ -0,0 +1,18 @@
+diff -ru visit2.7.1.old2/src/CMakeLists.txt visit2.7.1/src/CMakeLists.txt
+--- visit2.7.1.old2/src/CMakeLists.txt 2014-01-27 22:10:06.520297262 +0100
++++ visit2.7.1/src/CMakeLists.txt 2014-01-27 22:11:30.520298002 +0100
+@@ -807,14 +807,6 @@
+ \"${VISIT_VERSION}\"
+ \"${CMAKE_INSTALL_PREFIX}/beta\")
+ ")
+- ELSE(VISIT_INSTALL_AS_BETA)
+- INSTALL(CODE "
+- MESSAGE(\"Symlinking current to ${VISIT_VERSION}\")
+- EXECUTE_PROCESS(WORKING_DIRECTORY \${CMAKE_INSTALL_PREFIX}
+- COMMAND \${CMAKE_COMMAND} -E create_symlink
+- \"${VISIT_VERSION}\"
+- \"${CMAKE_INSTALL_PREFIX}/current\")
+- ")
+ ENDIF(VISIT_INSTALL_AS_BETA)
+ ENDIF(WIN32)
+ MARK_AS_ADVANCED(
diff --git a/sci-visualization/visit/files/visit-2.9.0-findpython.patch b/sci-visualization/visit/files/visit-2.9.0-findpython.patch
new file mode 100644
index 00000000000..180ffbf379a
--- /dev/null
+++ b/sci-visualization/visit/files/visit-2.9.0-findpython.patch
@@ -0,0 +1,19 @@
+diff -ru visit2.7.1.old/src/CMake/FindVisItPython.cmake visit2.7.1.new/src/CMake/FindVisItPython.cmake
+--- visit2.7.1.old/src/CMake/FindVisItPython.cmake 2013-09-13 21:06:57.000000000 +0200
++++ visit2.7.1.new/src/CMake/FindVisItPython.cmake 2014-01-25 20:30:06.948654123 +0100
+@@ -141,11 +141,12 @@
+ FIND_LIBRARY(PYTHON_LIBRARY
+ NAMES python${_CURRENT_VERSION_NO_DOTS} python${_CURRENT_VERSION}
+ PATHS
+- ${PYTHON_DIR}/lib
+- ${PYTHON_DIR}/libs
+- [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\${_CURRENT_VERSION}\\InstallPath]/libs
++ ${PYTHON_DIR}/lib
++ ${PYTHON_DIR}/lib64
++ ${PYTHON_DIR}/libs
++ [HKEY_LOCAL_MACHINE\\SOFTWARE\\Python\\PythonCore\\${_CURRENT_VERSION}\\InstallPath]/libs
+ NO_DEFAULT_PATH
+ NO_CMAKE_ENVIRONMENT_PATH
+ NO_CMAKE_PATH
+ NO_SYSTEM_ENVIRONMENT_PATH)
+
diff --git a/sci-visualization/visit/files/visit-2.9.0-findsilo.patch b/sci-visualization/visit/files/visit-2.9.0-findsilo.patch
new file mode 100644
index 00000000000..04d73c37fc1
--- /dev/null
+++ b/sci-visualization/visit/files/visit-2.9.0-findsilo.patch
@@ -0,0 +1,12 @@
+diff -ru visit2.7.1-old/src/CMake/FindSilo.cmake visit2.7.1-new/src/CMake/FindSilo.cmake
+--- visit2.7.1-old/src/CMake/FindSilo.cmake 2013-11-20 20:30:44.000000000 +0100
++++ visit2.7.1-new/src/CMake/FindSilo.cmake 2014-02-01 02:22:29.410541850 +0100
+@@ -90,7 +90,7 @@
+ NO_CMAKE_PATH
+ NO_SYSTEM_ENVIRONMENT_PATH)
+ IF(SILOH5_LIBRARY_EXISTS)
+- SET_UP_THIRD_PARTY(SILO lib include siloh5)
++ SET_UP_THIRD_PARTY(SILO lib include siloh5 hdf5 z)
+ ELSE(SILOH5_LIBRARY_EXISTS)
+ SET_UP_THIRD_PARTY(SILO lib include silo)
+ ENDIF(SILOH5_LIBRARY_EXISTS)
diff --git a/sci-visualization/visit/files/visit-2.9.0-findvtk.patch b/sci-visualization/visit/files/visit-2.9.0-findvtk.patch
new file mode 100644
index 00000000000..2fec72e1f4f
--- /dev/null
+++ b/sci-visualization/visit/files/visit-2.9.0-findvtk.patch
@@ -0,0 +1,29 @@
+--- visit2.8.2/src/CMake/FindVisItVTK.cmake.orig 2015-01-09 12:18:54.467780216 +0100
++++ visit2.8.2/src/CMake/FindVisItVTK.cmake 2015-01-09 12:19:59.737780932 +0100
+@@ -234,15 +234,22 @@
+
+ # check for python wrappers
+ IF (NOT WIN32)
+- FILE(GLOB VTK_PY_WRAPPERS_DIR ${VTK_LIBRARY_DIRS}/python*/)
++ FILE(GLOB VTK_PY_WRAPPERS_DIRECTORIES ${VTK_LIBRARY_DIRS}/python*/)
+ ELSE (NOT WIN32)
+ IF(${VTK_VERSION} VERSION_LESS "6.1.0")
+- FILE(GLOB VTK_PY_WRAPPERS_DIR ${VISIT_VTK_DIR}/lib)
++ FILE(GLOB VTK_PY_WRAPPERS_DIRECTORIES ${VISIT_VTK_DIR}/lib)
+ ELSE()
+- FILE(GLOB VTK_PY_WRAPPERS_DIR ${VISIT_VTK_DIR}/lib/python*)
++ FILE(GLOB VTK_PY_WRAPPERS_DIRECTORIES ${VISIT_VTK_DIR}/lib/python*)
+ ENDIF()
+ ENDIF (NOT WIN32)
+-MESSAGE(STATUS " VTK_PY_WRAPPERS_DIR=${VTK_PY_WRAPPERS_DIR}")
++MESSAGE(STATUS " VTK_PY_WRAPPERS_DIRECTORIES=${VTK_PY_WRAPPERS_DIRECTORIES}")
++
++FOREACH(X ${VTK_PY_WRAPPERS_DIRECTORIES})
++ IF(EXISTS "${X}/site-packages/vtk")
++ SET(VTK_PY_WRAPPERS_DIR "${X}")
++ ENDIF()
++ENDFOREACH(X)
++
+
+ IF(EXISTS ${VTK_PY_WRAPPERS_DIR}/site-packages/vtk)
+ MESSAGE(STATUS "Found VTK Python Wrappers - ${VTK_PY_WRAPPERS_DIR}")
diff --git a/sci-visualization/visit/files/visit-2.9.0-vtklibs.patch b/sci-visualization/visit/files/visit-2.9.0-vtklibs.patch
new file mode 100644
index 00000000000..a6b47096e81
--- /dev/null
+++ b/sci-visualization/visit/files/visit-2.9.0-vtklibs.patch
@@ -0,0 +1,133 @@
+diff -ur visit2.8.2-old/src/engine/main/CMakeLists.txt visit2.8.2-new/src/engine/main/CMakeLists.txt
+--- visit2.8.2-old/src/engine/main/CMakeLists.txt 2014-10-01 00:28:19.000000000 +0200
++++ visit2.8.2-new/src/engine/main/CMakeLists.txt 2015-01-05 15:14:43.850783973 +0100
+@@ -188,8 +188,8 @@
+ ${engine_ser_exe_EPlot_ser}
+ engine_ser
+ visit_verdict
+- vtkjpeg
+- vtkpng
++ jpeg
++ png
+ ${VTKZLIB_LIB}
+ ${VTK_FREETYPE_LIBRARIES}
+ vtkftgl
+@@ -273,8 +273,8 @@
+ ${engine_par_exe_EPlot_par}
+ engine_par
+ visit_verdict
+- vtkjpeg
+- vtkpng
++ jpeg
++ png
+ ${VTKZLIB_LIB}
+ ${VTK_FREETYPE_LIBRARIES}
+ vtkftgl
+diff -ur visit2.8.2-old/src/mdserver/main/CMakeLists.txt visit2.8.2-new/src/mdserver/main/CMakeLists.txt
+--- visit2.8.2-old/src/mdserver/main/CMakeLists.txt 2014-08-11 23:45:16.000000000 +0200
++++ visit2.8.2-new/src/mdserver/main/CMakeLists.txt 2015-01-05 15:15:41.810784062 +0100
+@@ -119,10 +119,10 @@
+ visit_verdict
+ vtkCommonCore
+ vtkIOCore
+- vtktiff
++ tiff
+ ${VTKZLIB_LIB}
+- vtkpng
+- vtkjpeg
++ png
++ jpeg
+ ${ZLIB_LIB}
+ ${CMAKE_THREAD_LIBS}
+ ${DL_LIB}
+diff -ur visit2.8.2-old/src/tools/convert/CMakeLists.txt visit2.8.2-new/src/tools/convert/CMakeLists.txt
+--- visit2.8.2-old/src/tools/convert/CMakeLists.txt 2014-08-11 23:46:08.000000000 +0200
++++ visit2.8.2-new/src/tools/convert/CMakeLists.txt 2015-01-05 15:14:28.880783951 +0100
+@@ -105,8 +105,8 @@
+ )
+
+ SET(VTK_EXTRA_LIBS
+-vtkjpeg
+-vtkpng
++jpeg
++png
+ ${VTKZLIB_LIB}
+ ${VTK_FREETYPE_LIBRARIES}
+ vtkftgl
+diff -ur visit2.8.2-old/src/tools/dataserver/CMakeLists.txt visit2.8.2-new/src/tools/dataserver/CMakeLists.txt
+--- visit2.8.2-old/src/tools/dataserver/CMakeLists.txt 2014-08-11 23:46:12.000000000 +0200
++++ visit2.8.2-new/src/tools/dataserver/CMakeLists.txt 2015-01-05 15:13:02.000783818 +0100
+@@ -70,9 +70,9 @@
+ )
+
+ SET(VTK_EXTRA_LIBS
+-vtktiff
+-vtkjpeg
+-vtkpng
++tiff
++jpeg
++png
+ ${VTKZLIB_LIB}
+ ${VTK_FREETYPE_LIBRARIES}
+ vtkftgl
+diff -ur visit2.8.2-old/src/tools/mcurvit/CMakeLists.txt visit2.8.2-new/src/tools/mcurvit/CMakeLists.txt
+--- visit2.8.2-old/src/tools/mcurvit/CMakeLists.txt 2014-08-11 23:46:11.000000000 +0200
++++ visit2.8.2-new/src/tools/mcurvit/CMakeLists.txt 2015-01-05 15:16:02.400784093 +0100
+@@ -104,9 +104,9 @@
+ )
+
+ SET(VTK_EXTRA_LIBS
+-vtktiff
+-vtkjpeg
+-vtkpng
++tiff
++jpeg
++png
+ ${VTKZLIB_LIB}
+ ${VTK_FREETYPE_LIBRARIES}
+ vtkftgl
+diff -ur visit2.8.2-old/src/tools/protocol/CMakeLists.txt visit2.8.2-new/src/tools/protocol/CMakeLists.txt
+--- visit2.8.2-old/src/tools/protocol/CMakeLists.txt 2014-08-11 23:46:14.000000000 +0200
++++ visit2.8.2-new/src/tools/protocol/CMakeLists.txt 2015-01-05 15:12:46.480783795 +0100
+@@ -76,9 +76,9 @@
+ )
+
+ SET(VTK_EXTRA_LIBS
+-vtktiff
+-vtkjpeg
+-vtkpng
++tiff
++jpeg
++png
+ ${VTKZLIB_LIB}
+ ${VTK_FREETYPE_LIBRARIES}
+ vtkftgl
+diff -ur visit2.8.2-old/src/viewer/main/CMakeLists.txt visit2.8.2-new/src/viewer/main/CMakeLists.txt
+--- visit2.8.2-old/src/viewer/main/CMakeLists.txt 2014-08-11 23:46:26.000000000 +0200
++++ visit2.8.2-new/src/viewer/main/CMakeLists.txt 2015-01-05 15:12:11.380783741 +0100
+@@ -279,8 +279,8 @@
+ ${viewer_exe_IPlot}
+ ${viewer_exe_VPlot}
+ viewer
+- vtkpng
+- vtkjpeg
++ png
++ jpeg
+ ${VTKZLIB_LIB}
+ ${VTK_FREETYPE_LIBRARIES}
+ vtkftgl
+diff -ur visit2.8.2-old/src/visit_vtk/full/CMakeLists.txt visit2.8.2-new/src/visit_vtk/full/CMakeLists.txt
+--- visit2.8.2-old/src/visit_vtk/full/CMakeLists.txt 2014-08-11 23:45:14.000000000 +0200
++++ visit2.8.2-new/src/visit_vtk/full/CMakeLists.txt 2015-01-05 15:11:17.680783659 +0100
+@@ -125,9 +125,9 @@
+ ADD_LIBRARY(visit_vtk ${VISIT_VTK_SOURCES})
+
+ IF(HAVE_LIB_R)
+- TARGET_LINK_LIBRARIES(visit_vtk lightweight_visit_vtk vtkFiltersExtraction vtkFiltersFlowPaths vtkImagingHybrid vtkRenderingOpenGL vtkRenderingFreeType vtkRenderingFreeTypeOpenGL vtkInteractionStyle vtktiff vtkFiltersStatisticsGnuR)
++ TARGET_LINK_LIBRARIES(visit_vtk lightweight_visit_vtk vtkFiltersExtraction vtkFiltersFlowPaths vtkImagingHybrid vtkRenderingOpenGL vtkRenderingFreeType vtkRenderingFreeTypeOpenGL vtkInteractionStyle vtkFiltersStatisticsGnuR)
+ ELSE(HAVE_LIB_R)
+- TARGET_LINK_LIBRARIES(visit_vtk lightweight_visit_vtk vtkFiltersExtraction vtkFiltersFlowPaths vtkImagingHybrid vtkRenderingOpenGL vtkRenderingFreeType vtkRenderingFreeTypeOpenGL vtkInteractionStyle vtktiff)
++ TARGET_LINK_LIBRARIES(visit_vtk lightweight_visit_vtk vtkFiltersExtraction vtkFiltersFlowPaths vtkImagingHybrid vtkRenderingOpenGL vtkRenderingFreeType vtkRenderingFreeTypeOpenGL vtkInteractionStyle)
+ ENDIF(HAVE_LIB_R)
+ # Add vtk definitions
+ ADD_TARGET_DEFINITIONS(visit_vtk "${VTK_DEFINITIONS}")
diff --git a/sci-visualization/visit/files/visit-2.9.0-vtkmpi.patch b/sci-visualization/visit/files/visit-2.9.0-vtkmpi.patch
new file mode 100644
index 00000000000..40aa7b8e2e5
--- /dev/null
+++ b/sci-visualization/visit/files/visit-2.9.0-vtkmpi.patch
@@ -0,0 +1,46 @@
+diff -ru visit2.8.2-old/src/tools/annotations/CMakeLists.txt visit2.8.2-new/src/tools/annotations/CMakeLists.txt
+--- visit2.8.2-old/src/tools/annotations/CMakeLists.txt 2014-08-11 23:46:11.000000000 +0200
++++ visit2.8.2-new/src/tools/annotations/CMakeLists.txt 2015-01-07 08:19:35.000735956 +0100
+@@ -54,9 +54,9 @@
+ # Specify the libraries to link against
+ TARGET_LINK_LIBRARIES(text2polys vtkIOLegacy)
+ IF(HAVE_LIB_R)
+-TARGET_LINK_LIBRARIES(time_annotation vtkRenderingOpenGL vtkRenderingFreeType vtkRenderingFreeTypeOpenGL vtkInteractionStyle vtkFiltersStatisticsGnuR vtksys vtkIOImage)
++TARGET_LINK_LIBRARIES(time_annotation vtkRenderingOpenGL vtkRenderingFreeType vtkRenderingFreeTypeOpenGL vtkInteractionStyle vtkFiltersStatisticsGnuR vtksys vtkIOMPIImage)
+ ELSE(HAVE_LIB_R)
+-TARGET_LINK_LIBRARIES(time_annotation vtkRenderingOpenGL vtkRenderingFreeType vtkRenderingFreeTypeOpenGL vtkInteractionStyle vtksys vtkIOImage)
++TARGET_LINK_LIBRARIES(time_annotation vtkRenderingOpenGL vtkRenderingFreeType vtkRenderingFreeTypeOpenGL vtkInteractionStyle vtksys vtkIOMPIImage)
+ ENDIF(HAVE_LIB_R)
+ # add vtk definitions
+ ADD_TARGET_DEFINITIONS(time_annotation "${VTK_DEFINITIONS}")
+diff -ru visit2.8.2-old/src/vtkqt/CMakeLists.txt visit2.8.2-new/src/vtkqt/CMakeLists.txt
+--- visit2.8.2-old/src/vtkqt/CMakeLists.txt 2014-08-11 23:46:46.000000000 +0200
++++ visit2.8.2-new/src/vtkqt/CMakeLists.txt 2015-01-07 08:19:00.950735904 +0100
+@@ -64,9 +64,9 @@
+
+ # Specify the libraries to link against on Windows & Mac
+ IF(HAVE_LIB_R)
+- TARGET_LINK_LIBRARIES(vtkqt vtkCommonCore vtkGUISupportQtOpenGL vtkIOImage vtkRenderingOpenGL vtkRenderingFreeTypeOpenGL ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} ${QT_QTOPENGL_LIBRARY} ${OPENGL_gl_LIBRARY} vtkFiltersStatisticsGnuR)
++ TARGET_LINK_LIBRARIES(vtkqt vtkCommonCore vtkGUISupportQtOpenGL vtkIOMPIImage vtkRenderingOpenGL vtkRenderingFreeTypeOpenGL ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} ${QT_QTOPENGL_LIBRARY} ${OPENGL_gl_LIBRARY} vtkFiltersStatisticsGnuR)
+ ELSE(HAVE_LIB_R)
+- TARGET_LINK_LIBRARIES(vtkqt vtkCommonCore vtkGUISupportQtOpenGL vtkIOImage vtkRenderingOpenGL vtkRenderingFreeTypeOpenGL ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} ${QT_QTOPENGL_LIBRARY} ${OPENGL_gl_LIBRARY})
++ TARGET_LINK_LIBRARIES(vtkqt vtkCommonCore vtkGUISupportQtOpenGL vtkIOMPIImage vtkRenderingOpenGL vtkRenderingFreeTypeOpenGL ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} ${QT_QTOPENGL_LIBRARY} ${OPENGL_gl_LIBRARY})
+ ENDIF(HAVE_LIB_R)
+ # Add vtk definitions
+ ADD_TARGET_DEFINITIONS(vtkqt "${VTK_DEFINITIONS}")
+--- visit2.8.2-old/src/visit_vtk/full/CMakeLists.txt 2015-01-14 13:08:53.249224731 +0100
++++ visit2.8.2-new/src/visit_vtk/full/CMakeLists.txt 2015-01-14 13:08:28.569224460 +0100
+@@ -125,9 +125,11 @@
+ ADD_LIBRARY(visit_vtk ${VISIT_VTK_SOURCES})
+
+ IF(HAVE_LIB_R)
+- TARGET_LINK_LIBRARIES(visit_vtk lightweight_visit_vtk vtkFiltersExtraction vtkFiltersFlowPaths vtkImagingHybrid vtkRenderingOpenGL vtkRenderingFreeType vtkRenderingFreeTypeOpenGL vtkInteractionStyle vtkFiltersStatisticsGnuR)
++ TARGET_LINK_LIBRARIES(visit_vtk lightweight_visit_vtk vtkFiltersExtraction
++ vtkFiltersFlowPaths vtkIOMPIImage vtkImagingHybrid vtkRenderingOpenGL vtkRenderingFreeType vtkRenderingFreeTypeOpenGL vtkInteractionStyle vtkFiltersStatisticsGnuR)
+ ELSE(HAVE_LIB_R)
+- TARGET_LINK_LIBRARIES(visit_vtk lightweight_visit_vtk vtkFiltersExtraction vtkFiltersFlowPaths vtkImagingHybrid vtkRenderingOpenGL vtkRenderingFreeType vtkRenderingFreeTypeOpenGL vtkInteractionStyle)
++ TARGET_LINK_LIBRARIES(visit_vtk lightweight_visit_vtk vtkFiltersExtraction
++ vtkFiltersFlowPaths vtkIOMPIImage vtkImagingHybrid vtkRenderingOpenGL vtkRenderingFreeType vtkRenderingFreeTypeOpenGL vtkInteractionStyle)
+ ENDIF(HAVE_LIB_R)
+ # Add vtk definitions
+ ADD_TARGET_DEFINITIONS(visit_vtk "${VTK_DEFINITIONS}")
diff --git a/sci-visualization/visit/metadata.xml b/sci-visualization/visit/metadata.xml
new file mode 100644
index 00000000000..e21bd2fef7c
--- /dev/null
+++ b/sci-visualization/visit/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <longdescription>
+ VisIt is a free, open source, platform independent, distributed,
+ parallel, visualization tool for visualizing data defined on two-
+ and three-dimensional structured and unstructured meshes.
+ </longdescription>
+ <maintainer>
+ <email>slis@gentoo.org</email>
+ </maintainer>
+ <use>
+ <flag name="cgns">
+ Builds the reader for the CFD General Notation System file format.
+ </flag>
+ <flag name="silo">
+ Adds support for reading .silo files.
+ </flag>
+ </use>
+</pkgmetadata>
diff --git a/sci-visualization/visit/visit-2.7.3.ebuild b/sci-visualization/visit/visit-2.7.3.ebuild
new file mode 100644
index 00000000000..f005d0a2105
--- /dev/null
+++ b/sci-visualization/visit/visit-2.7.3.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+
+inherit cmake-utils python-single-r1
+
+DESCRIPTION="A software that delivers parallel interactive visualizations"
+HOMEPAGE="https://wci.llnl.gov/codes/visit/home.html"
+SRC_URI="http://portal.nersc.gov/svn/visit/trunk/releases/${PV}/${PN}${PV}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="cgns debug hdf5 netcdf silo tcmalloc threads"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ tcmalloc? ( dev-util/google-perftools )
+ cgns? ( sci-libs/cgnslib )
+ hdf5? ( sci-libs/hdf5 )
+ netcdf? ( sci-libs/netcdf )
+ silo? ( sci-libs/silo )
+ >=sci-libs/vtk-6.0.0[imaging,python,rendering,qt4,${PYTHON_USEDEP}]
+ sys-libs/zlib"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${PN}${PV}/src"
+PATCHES=(
+ "${FILESDIR}/${P}-findpython.patch"
+ "${FILESDIR}/${P}-findsilo.patch"
+ "${FILESDIR}/${P}-findvtk.patch"
+ "${FILESDIR}/${P}-vtklibs.patch"
+ "${FILESDIR}/${P}-dont_symlink_visit_dir.patch"
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_PREFIX=/opt/visit
+ -DPYTHON_INCLUDE_DIR="$(python_get_includedir)"
+ -DPYTHON_DIR="${EPREFIX}/usr"
+ -DVISIT_PYTHON_SKIP_INSTALL=true
+ -DVISIT_VTK_SKIP_INSTALL=true
+ -DQT_BIN="${EPREFIX}/usr/bin"
+ -DVISIT_ZLIB_DIR="${EPREFIX}/usr"
+ $(cmake-utils_use threads VISIT_THREAD)
+ )
+ if use hdf5; then
+ mycmakeargs+=( -DHDF5_DIR="${EPREFIX}/usr" )
+ fi
+ if use tcmalloc; then
+ mycmakeargs+=( -DTCMALLOC_DIR="${EPREFIX}/usr" )
+ fi
+ if use cgns; then
+ mycmakeargs+=( -DCGNS_DIR="${EPREFIX}/usr" )
+ fi
+ if use silo; then
+ mycmakeargs+=( -DSILO_DIR="${EPREFIX}/usr" )
+ fi
+ if use netcdf; then
+ mycmakeargs+=( -DNETCDF_DIR="${EPREFIX}/usr" )
+ fi
+
+ cmake-utils_src_configure
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ PACKAGES_DIR="${ROOT}opt/visit/${PV}/linux-$(arch)/lib/site-packages"
+ cd "${ED}${PACKAGES_DIR}"
+ for i in *; do
+ dosym "${PACKAGES_DIR}/${i}" "$(python_get_sitedir)/$i"
+ done
+
+ cat > "${T}"/99visit <<- EOF
+ PATH=${EPREFIX}/opt/visit/bin
+ LDPATH=${EPREFIX}/opt/visit/${PV}/linux-$(arch)/lib/
+ EOF
+ doenvd "${T}"/99visit
+}
+
+pkg_postinst () {
+ ewarn "Remember to run "
+ ewarn "env-update && source /etc/profile"
+ ewarn "if you want to use visit in already opened session"
+}
diff --git a/sci-visualization/visit/visit-2.8.2.ebuild b/sci-visualization/visit/visit-2.8.2.ebuild
new file mode 100644
index 00000000000..ded486e29c7
--- /dev/null
+++ b/sci-visualization/visit/visit-2.8.2.ebuild
@@ -0,0 +1,99 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+
+inherit cmake-utils python-single-r1
+
+DESCRIPTION="A software that delivers parallel interactive visualizations"
+HOMEPAGE="https://wci.llnl.gov/codes/visit/home.html"
+SRC_URI="http://portal.nersc.gov/svn/visit/trunk/releases/${PV}/${PN}${PV}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="cgns debug hdf5 mpi netcdf silo tcmalloc threads"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ tcmalloc? ( dev-util/google-perftools )
+ cgns? ( sci-libs/cgnslib )
+ hdf5? ( sci-libs/hdf5 )
+ netcdf? ( sci-libs/netcdf )
+ silo? ( sci-libs/silo )
+ >=sci-libs/vtk-6.0.0[imaging,mpi?,python,rendering,qt4,${PYTHON_USEDEP}]
+ sys-libs/zlib"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${PN}${PV}/src"
+PATCHES=(
+ "${FILESDIR}/${P}-findpython.patch"
+ "${FILESDIR}/${P}-findsilo.patch"
+ "${FILESDIR}/${P}-findvtk.patch"
+ "${FILESDIR}/${P}-vtklibs.patch"
+ "${FILESDIR}/${P}-dont_symlink_visit_dir.patch"
+)
+
+src_prepare() {
+ for p in ${PATCHES[@]} ; do
+ epatch "${p}"
+ done
+ if use mpi ; then
+ epatch "${FILESDIR}/${P}-vtkmpi.patch"
+ fi
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_PREFIX=/opt/visit
+ -DPYTHON_INCLUDE_DIR="$(python_get_includedir)"
+ -DPYTHON_DIR="${EPREFIX}/usr"
+ -DVISIT_PYTHON_SKIP_INSTALL=true
+ -DVISIT_VTK_SKIP_INSTALL=true
+ -DQT_BIN="${EPREFIX}/usr/bin"
+ -DVISIT_ZLIB_DIR="${EPREFIX}/usr"
+ $(cmake-utils_use threads VISIT_THREAD)
+ )
+ if use hdf5; then
+ mycmakeargs+=( -DHDF5_DIR="${EPREFIX}/usr" )
+ fi
+ if use tcmalloc; then
+ mycmakeargs+=( -DTCMALLOC_DIR="${EPREFIX}/usr" )
+ fi
+ if use cgns; then
+ mycmakeargs+=( -DCGNS_DIR="${EPREFIX}/usr" )
+ fi
+ if use silo; then
+ mycmakeargs+=( -DSILO_DIR="${EPREFIX}/usr" )
+ fi
+ if use netcdf; then
+ mycmakeargs+=( -DNETCDF_DIR="${EPREFIX}/usr" )
+ fi
+
+ cmake-utils_src_configure
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ PACKAGES_DIR="${ROOT}opt/${PN}/${PV}/linux-$(arch)/lib/site-packages"
+ cd "${ED}${PACKAGES_DIR}"
+ for i in *; do
+ dosym "${PACKAGES_DIR}/${i}" "$(python_get_sitedir)/$i"
+ done
+
+ cat > "${T}"/99visit <<- EOF
+ PATH=${EPREFIX}/opt/${PN}/bin
+ LDPATH=${EPREFIX}/opt/${PN}/${PV}/linux-$(arch)/lib/
+ EOF
+ doenvd "${T}"/99visit
+}
+
+pkg_postinst () {
+ ewarn "Remember to run "
+ ewarn "env-update && source /etc/profile"
+ ewarn "if you want to use visit in already opened session"
+}
diff --git a/sci-visualization/visit/visit-2.9.0.ebuild b/sci-visualization/visit/visit-2.9.0.ebuild
new file mode 100644
index 00000000000..a74f83e29e5
--- /dev/null
+++ b/sci-visualization/visit/visit-2.9.0.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+PYTHON_COMPAT=( python2_7 )
+
+inherit cmake-utils python-single-r1
+
+DESCRIPTION="A software that delivers parallel interactive visualizations"
+HOMEPAGE="https://wci.llnl.gov/codes/visit/home.html"
+SRC_URI="http://portal.nersc.gov/svn/visit/trunk/releases/${PV}/${PN}${PV}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="cgns debug hdf5 mpi netcdf silo tcmalloc threads"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ tcmalloc? ( dev-util/google-perftools )
+ cgns? ( sci-libs/cgnslib )
+ hdf5? ( sci-libs/hdf5 )
+ netcdf? ( sci-libs/netcdf )
+ silo? ( sci-libs/silo )
+ >=sci-libs/vtk-6.0.0[imaging,mpi=,python,rendering,qt4,${PYTHON_USEDEP}]
+ sys-libs/zlib"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${PN}${PV}/src"
+PATCHES=(
+ "${FILESDIR}/${P}-findpython.patch"
+ "${FILESDIR}/${P}-findsilo.patch"
+ "${FILESDIR}/${P}-findvtk.patch"
+ "${FILESDIR}/${P}-vtklibs.patch"
+ "${FILESDIR}/${P}-dont_symlink_visit_dir.patch"
+ "${FILESDIR}/${P}-cmakelist.patch"
+)
+
+src_prepare() {
+ for p in ${PATCHES[@]} ; do
+ epatch "${p}"
+ done
+ if use mpi ; then
+ epatch "${FILESDIR}/${P}-vtkmpi.patch"
+ fi
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_PREFIX=/opt/visit
+ -DPYTHON_INCLUDE_DIR="$(python_get_includedir)"
+ -DPYTHON_DIR="${EPREFIX}/usr"
+ -DVISIT_PYTHON_SKIP_INSTALL=true
+ -DVISIT_VTK_SKIP_INSTALL=true
+ -DQT_BIN="${EPREFIX}/usr/bin"
+ -DVISIT_ZLIB_DIR="${EPREFIX}/usr"
+ -DVISIT_HEADERS_SKIP_INSTALL=false
+ $(cmake-utils_use threads VISIT_THREAD)
+ )
+ if use hdf5; then
+ mycmakeargs+=( -DHDF5_DIR="${EPREFIX}/usr" )
+ fi
+ if use tcmalloc; then
+ mycmakeargs+=( -DTCMALLOC_DIR="${EPREFIX}/usr" )
+ fi
+ if use cgns; then
+ mycmakeargs+=( -DCGNS_DIR="${EPREFIX}/usr" )
+ fi
+ if use silo; then
+ mycmakeargs+=( -DSILO_DIR="${EPREFIX}/usr" )
+ fi
+ if use netcdf; then
+ mycmakeargs+=( -DNETCDF_DIR="${EPREFIX}/usr" )
+ fi
+
+ cmake-utils_src_configure
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ PACKAGES_DIR="${ROOT}opt/${PN}/${PV}/linux-$(arch)/lib/site-packages"
+ cd "${ED}${PACKAGES_DIR}"
+ for i in *; do
+ dosym "${PACKAGES_DIR}/${i}" "$(python_get_sitedir)/$i"
+ done
+
+ cat > "${T}"/99visit <<- EOF
+ PATH=${EPREFIX}/opt/${PN}/bin
+ LDPATH=${EPREFIX}/opt/${PN}/${PV}/linux-$(arch)/lib/
+ EOF
+ doenvd "${T}"/99visit
+}
+
+pkg_postinst () {
+ ewarn "Remember to run "
+ ewarn "env-update && source /etc/profile"
+ ewarn "if you want to use visit in already opened session"
+}
diff --git a/sci-visualization/xd3d/Manifest b/sci-visualization/xd3d/Manifest
new file mode 100644
index 00000000000..18ef77192a3
--- /dev/null
+++ b/sci-visualization/xd3d/Manifest
@@ -0,0 +1 @@
+DIST xd3d-8.3.1.tar.gz 2188216 SHA256 f363cabec88fb5055fe86fb9973d7122e93dfd4a803517b9f90be18131ef8816 SHA512 a02e1b53b1d393c8184866b0693394f596bb3c1eb5f49d00a41dd7bb972f08ba8d1621e7a1f197b015551d9483c9c76c07dac5e199961de775b9ff63c898c89e WHIRLPOOL de1ffd61ee99bc12474a37e37049ceec0d7f36a4d0095f556f2cbffb407cc90f98540052bb7a31666387d310ee169fd06cba68b18dd633583148e46664e74419
diff --git a/sci-visualization/xd3d/files/xd3d-8.3.1-cflags.patch b/sci-visualization/xd3d/files/xd3d-8.3.1-cflags.patch
new file mode 100644
index 00000000000..b62129b41bf
--- /dev/null
+++ b/sci-visualization/xd3d/files/xd3d-8.3.1-cflags.patch
@@ -0,0 +1,41 @@
+ src/various/Makefile | 16 ++++++++--------
+ 1 files changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/src/various/Makefile b/src/various/Makefile
+index 7188b2a..80f47ec 100644
+--- a/src/various/Makefile
++++ b/src/various/Makefile
+@@ -3,25 +3,25 @@ include ../../RULES
+ all :; make clair clairc3d create_c3d obscur obscurc3d tradavoir translation txt2avoir
+
+ clair : clair.f $(LIBRAIRIE) ;\
+-$(LINK) $(BINDIR)/clair $(INCF) clair.f $(LIBRAIRIE) $(LINKOPTX)
++$(LINK) $(BINDIR)/clair $(FCFLAGS) $(INCF) clair.f $(LIBRAIRIE) $(LINKOPTX)
+
+ clairc3d : clairc3d.f $(LIBRAIRIE) ;\
+-$(LINK) $(BINDIR)/clairc3d $(INCF) clairc3d.f $(LIBRAIRIE) $(LINKOPTX)
++$(LINK) $(BINDIR)/clairc3d $(FCFLAGS) $(INCF) clairc3d.f $(LIBRAIRIE) $(LINKOPTX)
+
+ create_c3d : create_c3d.f $(LIBRAIRIE) ;\
+-$(LINK) $(BINDIR)/create_c3d $(INCF) create_c3d.f $(LIBRAIRIE) $(LINKOPTX)
++$(LINK) $(BINDIR)/create_c3d $(FCFLAGS) $(INCF) create_c3d.f $(LIBRAIRIE) $(LINKOPTX)
+
+ obscur : obscur.f $(LIBRAIRIE) ;\
+-$(LINK) $(BINDIR)/obscur $(INCF) obscur.f $(LIBRAIRIE) $(LINKOPTX)
++$(LINK) $(BINDIR)/obscur $(FCFLAGS) $(INCF) obscur.f $(LIBRAIRIE) $(LINKOPTX)
+
+ obscurc3d : obscurc3d.f $(LIBRAIRIE) ;\
+-$(LINK) $(BINDIR)/obscurc3d $(INCF) obscurc3d.f $(LIBRAIRIE) $(LINKOPTX)
++$(LINK) $(BINDIR)/obscurc3d $(FCFLAGS) $(INCF) obscurc3d.f $(LIBRAIRIE) $(LINKOPTX)
+
+ tradavoir : tradavoir.f $(LIBRAIRIE) ;\
+-$(LINK) $(BINDIR)/tradavoir $(INCF) tradavoir.f $(LIBRAIRIE) $(LINKOPTX)
++$(LINK) $(BINDIR)/tradavoir $(FCFLAGS) $(INCF) tradavoir.f $(LIBRAIRIE) $(LINKOPTX)
+
+ translation : translation.f $(LIBRAIRIE) ;\
+-$(LINK) $(BINDIR)/translation $(INCF) translation.f $(LIBRAIRIE) $(LINKOPTX)
++$(LINK) $(BINDIR)/translation $(FCFLAGS) $(INCF) translation.f $(LIBRAIRIE) $(LINKOPTX)
+
+ txt2avoir : txt2avoir.f $(LIBRAIRIE) ;\
+-$(LINK) $(BINDIR)/txt2avoir $(INCF) txt2avoir.f $(LIBRAIRIE) $(LINKOPTX)
++$(LINK) $(BINDIR)/txt2avoir $(FCFLAGS) $(INCF) txt2avoir.f $(LIBRAIRIE) $(LINKOPTX)
diff --git a/sci-visualization/xd3d/files/xd3d-8.3.1-gentoo.diff b/sci-visualization/xd3d/files/xd3d-8.3.1-gentoo.diff
new file mode 100644
index 00000000000..4e7c52b7724
--- /dev/null
+++ b/sci-visualization/xd3d/files/xd3d-8.3.1-gentoo.diff
@@ -0,0 +1,86 @@
+diff -Naur RULES.gentoo RULES.gentoo
+--- RULES.gentoo 1969-12-31 19:00:00.000000000 -0500
++++ RULES.gentoo 2008-01-21 06:41:41.000000000 -0500
+@@ -0,0 +1,82 @@
++#--------------------------------------------------------
++# Configuration file for the Makefiles of xd3d |
++# François Jouve 2005 (Francois.Jouve@Polytechnique.fr) |
++#--------------------------------------------------------
++
++#
++# Modifiable parameters
++#
++
++#
++# Root directory of the distribution
++#
++#XD3D_DIR = $(HOME)/xd3d-8.1.0
++XD3D_DIR = Please_Configure
++
++#
++# Install directory
++#
++#INSTALL_DIR = /usr/local/bin
++INSTALL_DIR = ##D##/usr/bin
++
++#
++# Location of the X11 lib (libX11.a)
++#
++#LIBX11 = /usr/X11R6/lib
++LIBX11 = /usr/##lib##/
++
++#
++# Language parameter
++#
++#LANGUAGE = FRANCAIS
++#LANGUAGE = ENGLISH
++LANGUAGE = ENGLISH
++
++#
++# Max memory for xd3d (MBytes)
++#
++#MEMORY_XD3D = 64
++MEMORY_XD3D = 64
++
++#
++# Fortran compiler
++#
++COMPILF = $(FC)
++
++#
++# C compiler
++#
++COMPILC = $(CC)
++RANLIB = ranlib
++AR = ar r
++STRIP = echo $@
++
++#
++# Options for the Fortran compiler
++#
++OPTF = $(FFLAGS)
++#
++# Options for the C compiler
++#
++OPTC = $(CFLAGS)
++
++#-----------------------------------------------
++# You should not need to change anything below !
++#-----------------------------------------------
++
++SRCDIR = $(XD3D_DIR)/src
++BINDIR = $(XD3D_DIR)/bin
++LIBDIR = $(XD3D_DIR)/lib
++SUFF =
++INCF = -I$(XD3D_DIR)/src/include
++INCC = -I$(LIBX11)/../include
++
++LINK = $(COMPILF) $(LDFLAGS) -o
++LINKOPT = -lc -lm
++LINKOPTX = -L$(LIBX11) -lX11 -lXpm -lc -lm
++LIBRAIRIE = $(LIBDIR)/question_lib.a
++MYXLIB = $(LIBDIR)/my_Xlib.a
++INTERP = $(LIBDIR)/interp.a
++
++.f.o: ; $(COMPILF) $(INCF) $(OPTF) -c $*.f
++.c.o: ; $(COMPILC) $(INCC) $(OPTC) -D$(LANGUAGE) -c $*.c
diff --git a/sci-visualization/xd3d/files/xd3d-8.3.1-parallel.patch b/sci-visualization/xd3d/files/xd3d-8.3.1-parallel.patch
new file mode 100644
index 00000000000..8161fda3d9a
--- /dev/null
+++ b/sci-visualization/xd3d/files/xd3d-8.3.1-parallel.patch
@@ -0,0 +1,61 @@
+--- ./src/various/Makefile.orig 2009-12-04 18:16:57.000000000 +0000
++++ ./src/various/Makefile 2009-12-04 18:17:13.000000000 +0000
+@@ -1,6 +1,6 @@
+ include ../../RULES
+
+-all :; make clair clairc3d create_c3d obscur obscurc3d tradavoir translation txt2avoir
++all : clair clairc3d create_c3d obscur obscurc3d tradavoir translation txt2avoir
+
+ clair : clair.f $(LIBRAIRIE) ;\
+ $(LINK) $(BINDIR)/clair $(INCF) clair.f $(LIBRAIRIE) $(LINKOPTX)
+--- ./src/X/Makefile.orig 2009-12-04 18:16:06.000000000 +0000
++++ ./src/X/Makefile 2009-12-04 18:16:36.000000000 +0000
+@@ -118,7 +118,7 @@
+ lib : $(LIBMARC)
+ $(LIBMARC) : $(OBJETS) $(OBJETSMARC) ; $(AR) $@ $(OBJETS) $(OBJETSMARC) ; $(RANLIB) $@
+
+-all :; make ; make lib
++all : lib
+
+ clean : ; /bin/rm -f $(OBJETS) $(LIB) $(LIBMARC)
+
+--- ./Makefile.orig 2009-12-04 18:12:08.000000000 +0000
++++ ./Makefile 2009-12-04 19:06:37.000000000 +0000
+@@ -13,22 +13,24 @@
+ $(BINDIR)/xd3d$(SUFF) \
+ $(BINDIR)/xgraphic$(SUFF)
+
+-all :; make libs ; make utils ; make xgraphic ; make xd3d
++all : libs utils xgraphic xd3d
+
+ install :; /bin/cp -pidvu $(EXE) ./infps $(INSTALL_DIR)
+
+ libs :; \
+-cd $(SRCDIR)/qlib ; echo "---- Building utility lib ----" ; make ;\
+-cd $(SRCDIR)/interp ; echo "---- Building parsing lib ----" ; make ;\
+-cd $(SRCDIR)/X ; echo "---- Building X interface lib ----" ; make
+-
+-xd3d :; cd $(SRCDIR)/d3d ; echo "---- Building xd3d ----" ; make
+-
+-xgraphic :; cd $(SRCDIR)/graphic ; echo "---- Building xgraphic ----" ; make
+-
+-utils :; \
+-echo " ---- Building various utils ----" ;\
+-cd $(SRCDIR)/trad_nopo ; make ;\
+-cd $(SRCDIR)/various ; make
++cd $(SRCDIR)/qlib ; echo "---- Building utility lib ----" ; $(MAKE) ;\
++cd $(SRCDIR)/interp ; echo "---- Building parsing lib ----" ;$(MAKE) ;\
++cd $(SRCDIR)/X ; echo "---- Building X interface lib ----" ; $(MAKE)
++
++xd3d : libs
++ cd $(SRCDIR)/d3d ; echo "---- Building xd3d ----" ; $(MAKE)
++
++xgraphic : libs
++ cd $(SRCDIR)/graphic ; echo "---- Building xgraphic ----" ; $(MAKE)
++
++utils : libs
++ echo " ---- Building various utils ----" ;\
++ cd $(SRCDIR)/trad_nopo ; $(MAKE) ;\
++ cd $(SRCDIR)/various ; $(MAKE)
+
+ clean :; /bin/rm -f $(SRCDIR)/*/*.o $(LIBRAIRIE) $(MYXLIB) $(INTERP) $(EXE)
diff --git a/sci-visualization/xd3d/files/xd3d-8.3.1-rotated.patch b/sci-visualization/xd3d/files/xd3d-8.3.1-rotated.patch
new file mode 100644
index 00000000000..9e66dcab586
--- /dev/null
+++ b/sci-visualization/xd3d/files/xd3d-8.3.1-rotated.patch
@@ -0,0 +1,10 @@
+--- src/X/rotated.c.orig 2009-12-04 18:09:55.000000000 +0000
++++ src/X/rotated.c 2009-12-04 18:10:37.000000000 +0000
+@@ -29,6 +29,7 @@
+ #include <stdio.h>
+ #include <math.h>
+ #include <string.h>
++#include <stdlib.h>
+ #include "rotated.h"
+
+
diff --git a/sci-visualization/xd3d/metadata.xml b/sci-visualization/xd3d/metadata.xml
new file mode 100644
index 00000000000..31da504e2cc
--- /dev/null
+++ b/sci-visualization/xd3d/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <longdescription>
+ xd3d is a simple scientific visualization tool designed to be easy to learn.
+ It can plot 2d and 3d meshes, with shadowing, contour plots, vector fields,
+ iso-contour (3d), as well as 3d surfaces z=f(x,y) defined by an algebraic
+ expression or a cloud of points. It generates high quality vector PostScript
+ files for scientific publications and still or animated bitmap images.
+ It includes the graph plotter xgraphic.
+</longdescription>
+</pkgmetadata>
diff --git a/sci-visualization/xd3d/xd3d-8.3.1.ebuild b/sci-visualization/xd3d/xd3d-8.3.1.ebuild
new file mode 100644
index 00000000000..124c8543050
--- /dev/null
+++ b/sci-visualization/xd3d/xd3d-8.3.1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils fortran-2 multilib toolchain-funcs
+
+DESCRIPTION="Scientific visualization tool"
+HOMEPAGE="http://www.cmap.polytechnique.fr/~jouve/xd3d/"
+SRC_URI="mirror://gentoo/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc ppc64 x86 ~amd64-linux ~x86-linux"
+IUSE="examples"
+
+RDEPEND="
+ x11-libs/libXpm"
+DEPEND="${RDEPEND}
+ app-shells/tcsh"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-gentoo.diff \
+ "${FILESDIR}"/${P}-parallel.patch \
+ "${FILESDIR}"/${P}-rotated.patch \
+ "${FILESDIR}"/${P}-cflags.patch
+ sed \
+ -e 's:"zutil.h":<zlib.h>:g' \
+ -i src/qlib/timestuff.c || die
+}
+
+src_configure() {
+ tc-export CC
+ sed \
+ -e "s:##D##:${ED}:" \
+ -e "s:##lib##:$(get_libdir):" \
+ -i RULES.gentoo \
+ || die "failed to set up RULES.gentoo"
+ ./configure -arch=gentoo || die "configure failed."
+}
+
+src_install() {
+ dodir /usr/bin
+ emake install
+
+ dodoc BUGS CHANGELOG FAQ FORMATS README
+ insinto /usr/share/doc/${PF}
+ doins Manuals/*
+
+ if use examples; then
+ insinto /usr/share/doc/${PF}/
+ doins -r Examples
+ fi
+}
diff --git a/sci-visualization/xds-viewer/Manifest b/sci-visualization/xds-viewer/Manifest
new file mode 100644
index 00000000000..fc5d5fb554a
--- /dev/null
+++ b/sci-visualization/xds-viewer/Manifest
@@ -0,0 +1 @@
+DIST xds-viewer-0.6.tar.gz 408315 SHA256 a4088246f002fd33add8fe1ea5453696e2a3e01d4c1ae189a496274b46da5a75
diff --git a/sci-visualization/xds-viewer/metadata.xml b/sci-visualization/xds-viewer/metadata.xml
new file mode 100644
index 00000000000..b260d92eaab
--- /dev/null
+++ b/sci-visualization/xds-viewer/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci-chemistry</herd>
+ <longdescription lang="en">
+ XDS-Viewer is a program for viewing X-ray diffraction and control
+ images in the context of data processing by the XDS Program Package
+ (external link). Potential users of the software are scientists
+ working in the field of crystallography. The XDS-Viewer is a
+ standalone program which has build-in support for a subset of the
+ Crystallographic Binary File Format CBF (external link). Other file
+ formats are supported through an external convertion program that
+ comes with XDS. XDS-Viewer will automatically invoke the convertion
+ program for images other than CBF.
+</longdescription>
+ <upstream>
+ <remote-id type="sourceforge">xds-viewer</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sci-visualization/xds-viewer/xds-viewer-0.6.ebuild b/sci-visualization/xds-viewer/xds-viewer-0.6.ebuild
new file mode 100644
index 00000000000..6a79a58ef30
--- /dev/null
+++ b/sci-visualization/xds-viewer/xds-viewer-0.6.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit cmake-utils
+
+DESCRIPTION="Viewing X-ray diffraction and control images in the context of data processing by the XDS"
+HOMEPAGE="http://xds-viewer.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+RDEPEND="
+ dev-libs/glib:2
+ media-libs/libpng
+ dev-qt/qtgui:4"
+DEPEND="${RDEPEND}"
+
+DOCS="README"
+HTML_DOCS="src/doc/*"
diff --git a/sci-visualization/xgraph/Manifest b/sci-visualization/xgraph/Manifest
new file mode 100644
index 00000000000..08c6324624a
--- /dev/null
+++ b/sci-visualization/xgraph/Manifest
@@ -0,0 +1,3 @@
+DIST xgraph-12.1.tar.gz 145278 SHA256 0aa17d3fa3abfa8b6679fc26812a988332a2a0f1f48973d17429089015672b08 SHA512 67c1faea0f423717cf97c4613e7c288ad17e952f7f0c7cc555d3d3cffaaef890b3b8d77f9421ab5842f8c65dea3393820e296b38d7a3eae2a0b80eb0b8fc948c WHIRLPOOL 16f5abba42e42196bed2994b2d83fb5a5266c4d0fdfa0b8bdd52f175f9046c09167544e93f45945cb1cf045319e725f9154c0ffdb9d8ac06eb4e8839a5c7cc3c
+DIST xgraph_12.1-10.diff.gz 48172 SHA256 5f0ee8dededaafb054b3d87431acc9b1b6486b8375775aac889d993e35f4e8d5 SHA512 060973645e5371a8f768650f31ad4560060ce171a9ee12308c5776a5e550784bb30cd3a55017c7a3856f27701376bb3f30af2c0b96d4902c89e68fd6c0114f78 WHIRLPOOL 0ea2a260005126d7c6f1fb9d3d335ec2cf6d7467b71441763d9a911055adc46d2805c1e9d32327c1762c2ad8fb6a290b5f579460ea0aa064ecba5e98f0337f83
+DIST xgraph_12.1-16.debian.tar.gz 23154 SHA256 a10daac6dca06938c4d96b8b82c8070b2763f6e0761030e0dfd2bb3fb338212a SHA512 6942d85d453a63191b11f6f52bee592c765023068d022e62b94b6fc6b0ed46ce57c9cc00bfcb53cd5f943997cef23724513c1433cdfbf11c7debac5760de1d26 WHIRLPOOL c6584cc98b0cf9e5cee85a4f1287dbb836aa7a0165d6c0c1d4066e0aefb4ce700d31e57d54cf8c051a5e1eb5e6c6410d1979b140628ea5ad90dbe1b2bc8fb336
diff --git a/sci-visualization/xgraph/files/xgraph-12.1-glibc-2.10.patch b/sci-visualization/xgraph/files/xgraph-12.1-glibc-2.10.patch
new file mode 100644
index 00000000000..e2514083c1d
--- /dev/null
+++ b/sci-visualization/xgraph/files/xgraph-12.1-glibc-2.10.patch
@@ -0,0 +1,29 @@
+diff -ur xgraph-12.1.orig/dialog.c xgraph-12.1/dialog.c
+--- xgraph-12.1.orig/dialog.c 2009-08-09 01:02:01.000000000 +0300
++++ xgraph-12.1/dialog.c 2009-08-09 01:02:40.000000000 +0300
+@@ -775,7 +775,7 @@
+ memset(new_info->lines, 0, sizeof(Window) * E_LINES);
+
+ lineptr = text;
+- while (getline(&lineptr, line)) {
++ while (get_line(&lineptr, line)) {
+ if (new_info->num_lines >= new_info->alloc_lines) {
+ int old_alloc_lines_size = new_info->alloc_lines * sizeof(Window);
+ new_info->alloc_lines *= 2;
+@@ -886,7 +886,7 @@
+
+
+ int
+-getline(tptr, lptr)
++get_line(tptr, lptr)
+ char **tptr;
+ char *lptr;
+
+diff -ur xgraph-12.1.orig/dialog.h xgraph-12.1/dialog.h
+--- xgraph-12.1.orig/dialog.h 2009-08-09 01:02:01.000000000 +0300
++++ xgraph-12.1/dialog.h 2009-08-09 01:02:43.000000000 +0300
+@@ -1,3 +1,3 @@
+ extern void msg_box(char *, char *);
+-extern int getline(char **, char *);
++extern int get_line(char **, char *);
+ extern void do_error(char *);
diff --git a/sci-visualization/xgraph/files/xgraph-makefile-gentoo.patch b/sci-visualization/xgraph/files/xgraph-makefile-gentoo.patch
new file mode 100644
index 00000000000..e863742994d
--- /dev/null
+++ b/sci-visualization/xgraph/files/xgraph-makefile-gentoo.patch
@@ -0,0 +1,12 @@
+diff -Naur xgraph-12.1/Makefile.in xgraph-12.1-new/Makefile.in
+--- xgraph-12.1/Makefile.in 1999-12-20 16:40:32.000000000 -0500
++++ xgraph-12.1-new/Makefile.in 2006-08-12 10:04:18.000000000 -0400
+@@ -80,7 +80,7 @@
+
+ # C_WARNINGS = -Wall
+ C_WARNINGS =
+-CFLAGS = $(ADDITIONAL_INCLUDES) $(C_WARNINGS) -g $(X_CFLAGS)
++CFLAGS = $(ADDITIONAL_INCLUDES) $(C_WARNINGS) @CFLAGS@ $(X_CFLAGS)
+
+ xgraph_LDADD = $(ADDITIONAL_LIBS) $(X_LIBS) $(X_PRE_LIBS) $(X_EXTRA_LIBS) -lX11 -lm
+ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
diff --git a/sci-visualization/xgraph/metadata.xml b/sci-visualization/xgraph/metadata.xml
new file mode 100644
index 00000000000..96df77f1e46
--- /dev/null
+++ b/sci-visualization/xgraph/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <longdescription lang="en">
+ Accepts data files or stdin in a form similar to the unix program
+ graph and displays line graphs, scatter plots, or bar charts on an
+ X11 display. Fully annotated with title, axis numbering and
+ labels, and legend. Zooming with the mouse is supported. Can
+ generate hardcopy output to Postscript printers and HPGL
+ plotters. Output can be directly pasted into idraw (drawtool) for
+ further annotation. Particularly useful in shell scripts.
+ </longdescription>
+</pkgmetadata>
diff --git a/sci-visualization/xgraph/xgraph-12.1-r2.ebuild b/sci-visualization/xgraph/xgraph-12.1-r2.ebuild
new file mode 100644
index 00000000000..566069fca92
--- /dev/null
+++ b/sci-visualization/xgraph/xgraph-12.1-r2.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=3
+inherit eutils autotools
+
+DEB_PR=10
+DESCRIPTION="X11 Plotting Utility"
+HOMEPAGE="http://www.isi.edu/nsnam/xgraph/"
+SRC_URI="http://www.isi.edu/nsnam/dist/${P}.tar.gz
+ mirror://debian/pool/main/${PN:0:1}/${PN}/${PN}_${PV}-${DEB_PR}.diff.gz"
+
+LICENSE="xgraph"
+SLOT="0"
+KEYWORDS="amd64 ppc sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="examples"
+DEPEND="x11-libs/libSM
+ x11-libs/libX11"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${WORKDIR}"/${PN}_${PV}-${DEB_PR}.diff
+ epatch "${FILESDIR}"/${P}-glibc-2.10.patch
+ # respect user flags
+ sed -i -e "s/-g/${CFLAGS}/" Makefile.am
+ eautoreconf
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "Compilation failed."
+ dodoc README*
+ if use examples; then
+ insinto /usr/share/doc/${PF}
+ doins -r examples || die "Failed to install example files."
+ fi
+
+ dodir /usr/share/man/man1
+ mv "${ED}"/usr/share/man/manm/xgraph.man \
+ "${ED}"/usr/share/man/man1/xgraph.1 || \
+ die "Failed to correct man page location."
+ rm -Rf "${ED}"/usr/share/man/manm/ || \
+ die "Failed to remove bogus manm directory."
+}
diff --git a/sci-visualization/xgraph/xgraph-12.1-r3.ebuild b/sci-visualization/xgraph/xgraph-12.1-r3.ebuild
new file mode 100644
index 00000000000..dbcad563fa3
--- /dev/null
+++ b/sci-visualization/xgraph/xgraph-12.1-r3.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+inherit eutils autotools
+
+DEB_PR=16
+
+DESCRIPTION="X11 Plotting Utility"
+HOMEPAGE="http://www.isi.edu/nsnam/xgraph/"
+SRC_URI="http://www.isi.edu/nsnam/dist/${P}.tar.gz
+ mirror://debian/pool/main/${PN:0:1}/${PN}/${PN}_${PV}-${DEB_PR}.debian.tar.gz"
+
+LICENSE="xgraph"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="examples"
+DEPEND="x11-libs/libSM
+ x11-libs/libX11"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${WORKDIR}"/debian/patches/debian-changes
+ rm configure.in Makefile.in
+ eautoreconf
+}
+
+src_install() {
+ default
+ dodoc "${WORKDIR}"/debian/changelog
+ if use examples; then
+ insinto /usr/share/doc/${PF}
+ doins -r examples
+ fi
+ dodir /usr/share/man/man1
+ mv "${ED}"/usr/share/man/manm/xgraph.man \
+ "${ED}"/usr/share/man/man1/xgraph.1 || die
+ rm -r "${ED}"/usr/share/man/manm || die
+}
diff --git a/sci-visualization/xyscan/Manifest b/sci-visualization/xyscan/Manifest
new file mode 100644
index 00000000000..bf58755f247
--- /dev/null
+++ b/sci-visualization/xyscan/Manifest
@@ -0,0 +1 @@
+DIST xyscan-3.31-src.tar.gz 1122203 SHA256 6cfecaf801453fbc20f358ee39370aad950c80769933e5b451e0a5cc927a928d SHA512 418456348d2493cc365c4cae4760a246d8113e1b0cf74c03aa385a5a40b02c20fdb873c007afea7e244e493c52eb2803cee4da0338f6e090ef87f20dc9a50f42 WHIRLPOOL 29a7650fba5270c2106944de2b6bc1200a44e8d92d9dcebe855951310a7eacafe721e529c0801f80317c12a1714782bada04fd1da6d365ebc86d2e83cbce98dc
diff --git a/sci-visualization/xyscan/metadata.xml b/sci-visualization/xyscan/metadata.xml
new file mode 100644
index 00000000000..627b4845781
--- /dev/null
+++ b/sci-visualization/xyscan/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>sci</herd>
+<longdescription lang="en">
+ xyscan is a tool for scientist in the need to extract data points,
+ i.e. numeric values, from a plot. It allows to scan the plots and
+ extract data points including the size of the error bars (both in x
+ and y). It can handle plots with linear and logarithmic scales.
+</longdescription>
+</pkgmetadata>
diff --git a/sci-visualization/xyscan/xyscan-3.3.1.ebuild b/sci-visualization/xyscan/xyscan-3.3.1.ebuild
new file mode 100644
index 00000000000..a4adade1518
--- /dev/null
+++ b/sci-visualization/xyscan/xyscan-3.3.1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+LANGS="fr"
+
+inherit eutils qt4-r2 versionator
+
+MY_PV=$(replace_version_separator 2 '')
+
+DESCRIPTION="Tool for extracting data points from graphs"
+HOMEPAGE="http://star.physics.yale.edu/~ullrich/xyscanDistributionPage/"
+SRC_URI="http://star.physics.yale.edu/~ullrich/${PN}DistributionPage/${MY_PV}/${PN}-${MY_PV}-src.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+DEPEND="dev-qt/qtcore:4
+ dev-qt/qtgui:4"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${PN}"
+
+src_prepare() {
+ sed -i \
+ -e "s:qApp->applicationDirPath() + \"/../docs\":\"${EPREFIX}/usr/share/doc/${PF}/html\":" \
+ xyscanWindow.cpp || die "Failed to fix docs path"
+}
+
+src_install() {
+ dobin xyscan
+ dohtml -r docs/en/*
+ use linguas_fr && doins -r docs/fr
+ newicon images/xyscanIcon.png xyscan.png
+ make_desktop_entry xyscan "xyscan data point extractor"
+}
diff --git a/sci-visualization/yt/Manifest b/sci-visualization/yt/Manifest
new file mode 100644
index 00000000000..8fb15f25a3c
--- /dev/null
+++ b/sci-visualization/yt/Manifest
@@ -0,0 +1,2 @@
+DIST yt-3.1.tar.gz 4217651 SHA256 6ca295d6dc94b4936434ffcc9cc2a7b55776c632e43391d958520f2a9aac9176 SHA512 0708fdf4fbed6aee04a4133fecb9eddb06b09ce02020ad8ae0d32c6601f26088532f4de6d3c2b5d600874e041470fe43af0a904051b965f1e9c945ec1199e775 WHIRLPOOL e72d9b9bd4b4e101d5168d7089325fd83d0be51e4b07c00dcbd1081b07693ce359db4b82366872992084be9e055298b95ba290d61ef85dad84cbe01f72f305bd
+DIST yt-3.2.tar.gz 23845436 SHA256 5c3b91b5886904c1a569b7d38c1ae574ca79b47adf7ba867a2044b4b55afacba SHA512 d3452a07c9d8e53d291816a73023d73bf97367f7f974dc0e52993af7a0e38675983295a52fd73b50a00bad925e3a7b780dfb75f588d7a59d8020539baa9847d4 WHIRLPOOL 742c3dca8ff4dd703dc93004bbb56d0957e8b5678c1fcb8c96d30586b8c65087b66e70e1440ae5e314f355a59edb46cab6c76d4224c96316bf0e5c064cc6bc7e
diff --git a/sci-visualization/yt/files/yt-3.0-missing_package.patch b/sci-visualization/yt/files/yt-3.0-missing_package.patch
new file mode 100644
index 00000000000..164445bb08a
--- /dev/null
+++ b/sci-visualization/yt/files/yt-3.0-missing_package.patch
@@ -0,0 +1,12 @@
+diff --git a/yt/analysis_modules/setup.py b/yt/analysis_modules/setup.py
+index 423fb52..f06d4e6 100644
+--- a/yt/analysis_modules/setup.py
++++ b/yt/analysis_modules/setup.py
+@@ -6,6 +6,7 @@ def configuration(parent_package='', top_path=None):
+ config.make_config_py() # installs __config__.py
+ config.add_subpackage("absorption_spectrum")
+ config.add_subpackage("cosmological_observation")
++ config.add_subpackage("halo_analysis")
+ config.add_subpackage("halo_finding")
+ config.add_subpackage("halo_mass_function")
+ config.add_subpackage("level_sets")
diff --git a/sci-visualization/yt/metadata.xml b/sci-visualization/yt/metadata.xml
new file mode 100644
index 00000000000..ebd98f7b52e
--- /dev/null
+++ b/sci-visualization/yt/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci</herd>
+ <maintainer>
+ <email>xarthisius@gentoo.org</email>
+ <name>Kacper Kowalik</name>
+ </maintainer>
+ <longdescription>yt is an analysis and visualization system written in Python,
+ designed for use with Astrophysical Simulation codes. yt can process data in a
+ myriad of ways and make a variety of visualizations. It is designed to be portable
+ across simulation codes, and it is developed by developers from a variety of
+ institutions and backgrounds.
+ </longdescription>
+ <upstream>
+ <remote-id type="pypi">yt</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sci-visualization/yt/yt-3.1.ebuild b/sci-visualization/yt/yt-3.1.ebuild
new file mode 100644
index 00000000000..39b4c3f9c00
--- /dev/null
+++ b/sci-visualization/yt/yt-3.1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit distutils-r1 flag-o-matic
+
+DESCRIPTION="Astrophysical Simulation Analysis and Vizualization package"
+HOMEPAGE="http://yt-project.org/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="test"
+
+CDEPEND="media-libs/freetype:2
+ media-libs/libpng:0=
+ sci-libs/hdf5:="
+RDEPEND="${CDEPEND}
+ dev-python/ipython[notebook,${PYTHON_USEDEP}]
+ dev-python/pyx[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/h5py[${PYTHON_USEDEP}]
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ dev-python/sympy[${PYTHON_USEDEP}]"
+DEPEND="${CDEPEND}
+ >=dev-python/cython-0.19[${PYTHON_USEDEP}]
+ >=dev-python/setuptools-0.7[${PYTHON_USEDEP}]
+ test? ( ${RDEPEND}
+ dev-python/nose[${PYTHON_USEDEP}]
+ )"
+
+python_prepare_all() {
+ append-flags -fno-strict-aliasing
+ sed -i yt/utilities/setup.py \
+ -e "s:/usr:${EPREFIX}/usr:g" || die
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ pushd "${BUILD_DIR}"/lib > /dev/null
+ nosetests -sv || die "Tests fail with ${EPYTHON} ${PWD}"
+ popd > /dev/null
+}
diff --git a/sci-visualization/yt/yt-3.2.ebuild b/sci-visualization/yt/yt-3.2.ebuild
new file mode 100644
index 00000000000..9a3f6f55d48
--- /dev/null
+++ b/sci-visualization/yt/yt-3.2.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_4} )
+
+inherit distutils-r1 flag-o-matic
+
+DESCRIPTION="Astrophysical Simulation Analysis and Vizualization package"
+HOMEPAGE="http://yt-project.org/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="test"
+
+CDEPEND="media-libs/libpng:0=
+ sci-libs/hdf5:=
+ dev-python/numpy[${PYTHON_USEDEP}]"
+RDEPEND="${CDEPEND}
+ dev-python/ipython[notebook,${PYTHON_USEDEP}]
+ dev-python/h5py[${PYTHON_USEDEP}]
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ dev-python/sympy[${PYTHON_USEDEP}]"
+# dev-python/pyx[${PYTHON_USEDEP}]
+DEPEND="${CDEPEND}
+ >=dev-python/cython-0.22[${PYTHON_USEDEP}]
+ >=dev-python/setuptools-0.7[${PYTHON_USEDEP}]
+ test? ( ${RDEPEND}
+ dev-python/nose[${PYTHON_USEDEP}]
+ )"
+
+python_prepare_all() {
+ append-flags -fno-strict-aliasing
+ sed -i yt/utilities/setup.py \
+ -e "s:/usr:${EPREFIX}/usr:g" || die
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ pushd "${BUILD_DIR}"/lib > /dev/null
+ nosetests -sv || die "Tests fail with ${EPYTHON} ${PWD}"
+ popd > /dev/null
+}
diff --git a/sci-visualization/zhu3d/Manifest b/sci-visualization/zhu3d/Manifest
new file mode 100644
index 00000000000..8f3da37cb17
--- /dev/null
+++ b/sci-visualization/zhu3d/Manifest
@@ -0,0 +1,2 @@
+DIST zhu3d-4.2.4.tar.gz 942827 SHA256 bb40273b69c2b0b3aa295fd4d239cbda68cdc576d728b7ca0de3491e46e7f88f SHA512 7b38fa8da837d0f64ca32face6fe9e1d7d97893c13c3f91bce93c712914dc0ce163137e091423135080c1b1219ebed435ef7dbab3a74edf26c133d7ddb1c6c1e WHIRLPOOL f8ebe1f0e1cab1bd439504c4a2e21599d22d29d606a82503d736407202e8464acbfdddacb4d8b6b11b59eddde7ec38974dcad9b14fcacf480a4994f0dee46c73
+DIST zhu3d-4.2.6.tar.gz 953395 SHA256 59aec1898dd598b4a085f7e83420ff926bbeb73027f29887dcd3495659b529df SHA512 105c68e0bfff7b2dbb71d3ed713033e82a729db7d3d8f6e3de038ced53db0829e0b0b146e6b042d954983af830c6834921be58d72bde90012461047d5d99dfd1 WHIRLPOOL fd28a3a6bf58b1eddf5716f279797ed224cbd16f273992e70d9a93129e923120053e4440103bb3456f7f2bf5b36adf6dc31f9d13ed8214a444101a61c106b5e2
diff --git a/sci-visualization/zhu3d/files/zhu3d-4.2.4-gold.patch b/sci-visualization/zhu3d/files/zhu3d-4.2.4-gold.patch
new file mode 100644
index 00000000000..64a6ad42b3d
--- /dev/null
+++ b/sci-visualization/zhu3d/files/zhu3d-4.2.4-gold.patch
@@ -0,0 +1,11 @@
+--- zhu3d.pro
++++ zhu3d.pro
+@@ -48,7 +48,7 @@
+ CONFIG += release
+ TARGET = zhu3d
+ QT += opengl
+-
++LIBS += -lGLU
+
+ # ============================================================================
+ # Optimisation switches. For both GCC/ICC compilers -O3 is default.
diff --git a/sci-visualization/zhu3d/metadata.xml b/sci-visualization/zhu3d/metadata.xml
new file mode 100644
index 00000000000..07ba1a46b48
--- /dev/null
+++ b/sci-visualization/zhu3d/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sci-mathematics</herd>
+ <longdescription lang="en">
+ Zhu3D allows you to interactively view and animate mathematical
+ functions, isosurfaces and a further independent parametric system.
+ Numerical solutions of equation systems are found with an adaptive
+ random search. The OpenGL-viewer supports zooming, scaling, rotating
+ and translating as well as filed lightning or surface properties.
+ Special effects are transparency, textures, fog and motion blur.
+</longdescription>
+ <upstream>
+ <remote-id type="sourceforge">zhu3d</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sci-visualization/zhu3d/zhu3d-4.2.4.ebuild b/sci-visualization/zhu3d/zhu3d-4.2.4.ebuild
new file mode 100644
index 00000000000..aa7a3949f98
--- /dev/null
+++ b/sci-visualization/zhu3d/zhu3d-4.2.4.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+LANGS="cs de es fr zh"
+
+inherit eutils qt4-r2
+
+DESCRIPTION="Interactive 3D mathematical function viewer"
+HOMEPAGE="http://sourceforge.net/projects/zhu3d"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+DEPEND="
+ virtual/glu
+ virtual/opengl
+ dev-qt/qtcore:4
+ dev-qt/qtgui:4
+ dev-qt/qtopengl:4"
+RDEPEND="${DEPEND}"
+
+PATCHES=( "${FILESDIR}/${P}-gold.patch" )
+
+src_prepare() {
+ qt4-r2_src_prepare
+
+ local datadir=/usr/share/${PN}
+ sed \
+ -e "s:^SYSDIR=:SYSDIR=${datadir}/system:" \
+ -e "s:^TEXDIR=:TEXDIR=${datadir}/textures:" \
+ -e "s:^WORKDIR=:WORKDIR=${datadir}/work:" \
+ -e "s:^DOCDIR=:DOCDIR=/usr/share/doc/${PF}/html:" \
+ -i ${PN}.pri || die "sed zhu3d.pri failed"
+
+ sed \
+ -e "/# Optimisation/,/# Include/d" \
+ -i zhu3d.pro || die "optimisation sed failed"
+}
+
+src_install() {
+ # not working: emake install INSTALL_ROOT="${D}" || die
+ dobin zhu3d
+
+ dodoc {readme,src/changelog}.txt
+ dohtml doc/*.png doc/${PN}_en.html
+
+ local lang
+ for lang in ${LANGS} ; do
+ if use linguas_${lang} ; then
+
+ insinto /usr/share/${PN}/system/languages
+ doins system/languages/${PN}_${lang}.qm
+
+ if [ -e doc/${PN}_${lang}.html ] ; then
+ dohtml doc/${PN}_${lang}.html
+ fi
+ fi
+ done
+
+ insinto /usr/share/${PN}
+ doins -r work/textures
+
+ insinto /usr/share/${PN}/work
+ doins -r work/*.zhu work/slideshow
+
+ insinto /usr/share/${PN}/system
+ doins -r system/*.zhu system/icons
+
+ doicon system/icons/${PN}.png
+ make_desktop_entry ${PN} "Zhu3D Function Viewer" ${PN} "Education;Science;Math;Qt"
+}
diff --git a/sci-visualization/zhu3d/zhu3d-4.2.6.ebuild b/sci-visualization/zhu3d/zhu3d-4.2.6.ebuild
new file mode 100644
index 00000000000..84708edb289
--- /dev/null
+++ b/sci-visualization/zhu3d/zhu3d-4.2.6.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+LANGS="cs de es fr zh"
+
+inherit eutils qt4-r2
+
+DESCRIPTION="Interactive 3D mathematical function viewer"
+HOMEPAGE="http://sourceforge.net/projects/zhu3d"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+DEPEND="
+ virtual/glu
+ virtual/opengl
+ dev-qt/qtcore:4
+ dev-qt/qtgui:4
+ dev-qt/qtopengl:4"
+RDEPEND="${DEPEND}"
+
+PATCHES=( "${FILESDIR}"/${PN}-4.2.4-gold.patch )
+
+src_prepare() {
+ qt4-r2_src_prepare
+
+ local datadir=/usr/share/${PN}
+ sed \
+ -e "s:^SYSDIR=:SYSDIR=${datadir}/system:" \
+ -e "s:^TEXDIR=:TEXDIR=${datadir}/textures:" \
+ -e "s:^WORKDIR=:WORKDIR=${datadir}/work:" \
+ -e "s:^DOCDIR=:DOCDIR=/usr/share/doc/${PF}/html:" \
+ -i ${PN}.pri || die "sed zhu3d.pri failed"
+
+ sed \
+ -e "/# Optimisation/,/# Include/d" \
+ -i zhu3d.pro || die "optimisation sed failed"
+}
+
+src_install() {
+ # not working: emake install INSTALL_ROOT="${D}" || die
+ dobin zhu3d
+
+ dodoc {readme,src/changelog}.txt
+ dohtml doc/*.png doc/${PN}_en.html
+
+ local lang
+ for lang in ${LANGS} ; do
+ if use linguas_${lang} ; then
+
+ insinto /usr/share/${PN}/system/languages
+ doins system/languages/${PN}_${lang}.qm
+
+ if [ -e doc/${PN}_${lang}.html ] ; then
+ dohtml doc/${PN}_${lang}.html
+ fi
+ fi
+ done
+
+ insinto /usr/share/${PN}
+ doins -r work/textures
+
+ insinto /usr/share/${PN}/work
+ doins -r work/*.zhu work/slideshow
+
+ insinto /usr/share/${PN}/system
+ doins -r system/*.zhu system/icons
+
+ doicon system/icons/${PN}.png
+ make_desktop_entry ${PN} "Zhu3D Function Viewer" \
+ ${PN} "Education;Science;Math;Qt"
+}