summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sci-visualization/hippodraw')
-rw-r--r--sci-visualization/hippodraw/ChangeLog13
-rw-r--r--sci-visualization/hippodraw/files/hippodraw-1.21.3-gcc4.3.patch10
-rw-r--r--sci-visualization/hippodraw/files/hippodraw-1.21.3-minuit2.patch45
-rw-r--r--sci-visualization/hippodraw/files/hippodraw-1.21.3-wcslib.patch31
-rw-r--r--sci-visualization/hippodraw/hippodraw-1.21.3-r1.ebuild141
-rw-r--r--sci-visualization/hippodraw/metadata.xml43
6 files changed, 276 insertions, 7 deletions
diff --git a/sci-visualization/hippodraw/ChangeLog b/sci-visualization/hippodraw/ChangeLog
index 1578b6244bfc..4452492bffe8 100644
--- a/sci-visualization/hippodraw/ChangeLog
+++ b/sci-visualization/hippodraw/ChangeLog
@@ -1,6 +1,17 @@
# ChangeLog for sci-visualization/hippodraw
# Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sci-visualization/hippodraw/ChangeLog,v 1.5 2008/07/08 01:31:12 markusle Exp $
+# $Header: /var/cvsroot/gentoo-x86/sci-visualization/hippodraw/ChangeLog,v 1.6 2008/07/17 17:15:14 bicatali Exp $
+
+*hippodraw-1.21.3-r1 (17 Jul 2008)
+
+ 17 Jul 2008; Sébastien Fabbro <bicatali@gentoo.org>
+ files/hippodraw-1.21.3-gcc4.3.patch,
+ +files/hippodraw-1.21.3-minuit2.patch,
+ +files/hippodraw-1.21.3-wcslib.patch, metadata.xml,
+ +hippodraw-1.21.3-r1.ebuild:
+ Revision to add WCS support, added qt4 support, fixed some configure
+ options to avoid automagics, and various sed fixes. Also added use local
+ flag in metadata.xml
08 Jul 2008; Markus Dittrich <markusle@gentoo.org>
+files/hippodraw-1.21.3-test-fix.patch, hippodraw-1.21.3.ebuild:
diff --git a/sci-visualization/hippodraw/files/hippodraw-1.21.3-gcc4.3.patch b/sci-visualization/hippodraw/files/hippodraw-1.21.3-gcc4.3.patch
index f57c994841c8..647148d9365a 100644
--- a/sci-visualization/hippodraw/files/hippodraw-1.21.3-gcc4.3.patch
+++ b/sci-visualization/hippodraw/files/hippodraw-1.21.3-gcc4.3.patch
@@ -199,3 +199,13 @@ diff -Naur HippoDraw-1.21.3/qt/QtViewImp.cxx HippoDraw-1.21.3.new/qt/QtViewImp.c
using namespace hippodraw;
+--- HippoDraw-1.21.3/transforms/PeriodicBinaryTransform.cxx 2008-07-15 22:48:51.000000000 +0100
++++ HippoDraw-1.21.3/transforms/PeriodicBinaryTransform.cxx 2008-07-15 22:49:25.000000000 +0100
+@@ -32,6 +32,7 @@
+ #include <stdexcept>
+ #include <sstream>
+ #include <cassert>
++#include <cstring>
+
+ using namespace hippodraw;
+
diff --git a/sci-visualization/hippodraw/files/hippodraw-1.21.3-minuit2.patch b/sci-visualization/hippodraw/files/hippodraw-1.21.3-minuit2.patch
new file mode 100644
index 000000000000..8713b2ea46a6
--- /dev/null
+++ b/sci-visualization/hippodraw/files/hippodraw-1.21.3-minuit2.patch
@@ -0,0 +1,45 @@
+--- config/m4/pfkeb_have_minuit2.m4.orig 2008-07-15 18:39:21.000000000 +0100
++++ config/m4/pfkeb_have_minuit2.m4 2008-07-15 18:40:47.000000000 +0100
+@@ -44,7 +44,7 @@
+ [pfk_minuit2_include="/usr/local/include"])
+
+ AC_ARG_WITH([minuit2-lib],
+- [ --with-minuit2-lib=DIR Minuit2 libMinuit2Base.so file is in DIR
++ [ --with-minuit2-lib=DIR Minuit2 libMinuit2.so file is in DIR
+ (default:/usr/local/lib:/usr/lib)],
+ [pfk_minuit2_lib=$with_minuit2_lib],
+ [pfk_minuit2_lib="/usr/local/lib"])
+@@ -54,9 +54,9 @@
+ else
+ MINUIT2_CXXFLAGS="-I$pfk_minuit2_include"
+ if test x$enable_rpath = xno; then
+- MINUIT2_LDFLAGS="-L$pfk_minuit2_lib -lMinuit2Base"
++ MINUIT2_LDFLAGS="-L$pfk_minuit2_lib -lMinuit2"
+ else
+- MINUIT2_LDFLAGS="-L$pfk_minuit2_lib -lMinuit2Base -R$pfk_minuit2_lib"
++ MINUIT2_LDFLAGS="-L$pfk_minuit2_lib -lMinuit2 -R$pfk_minuit2_lib"
+ fi
+ AC_MSG_NOTICE([checking Minuit2 install with
+ MINUIT2_CXXFLAGS=$MINUIT2_CXXFLAGS
+@@ -65,18 +65,18 @@
+ PFK_SHARED_SUFFIX
+ no_good=no
+ AC_CHECK_FILE($pfk_minuit2_include/Minuit2/FCNBase.h,, no_good=yes )
+- AC_CHECK_FILE($pfk_minuit2_lib/libMinuit2Base.$pfk_so,, no_good=yes )
++ AC_CHECK_FILE($pfk_minuit2_lib/libMinuit2.$pfk_so,, no_good=yes )
+
+ if test x$no_good = xyes; then
+ MINUIT2_CXXFLAGS="-I/usr/include"
+- MINUIT2_LDFLAGS="-L/usr/lib -lMinuit2Base"
++ MINUIT2_LDFLAGS="-L/usr/lib -lMinuit2"
+ AC_MSG_NOTICE([checking Minuit2 install with
+ MINUIT2_CXXFLAGS=$MINUIT2_CXXFLAGS
+ MINUIT2_LDFLAGS=$MINUIT2_LDFLAGS])
+
+ no_good=no
+ AC_CHECK_FILE(/usr/include/Minuit2/FCNBase.h,, no_good=yes )
+- AC_CHECK_FILE(/usr/lib/libMinuit2Base.$pfk_so,, no_good=yes )
++ AC_CHECK_FILE(/usr/lib/libMinuit2.$pfk_so,, no_good=yes )
+ if test x$no_good = xyes; then
+ have_minuit2=no
+ else
diff --git a/sci-visualization/hippodraw/files/hippodraw-1.21.3-wcslib.patch b/sci-visualization/hippodraw/files/hippodraw-1.21.3-wcslib.patch
new file mode 100644
index 000000000000..6e1d9af082ce
--- /dev/null
+++ b/sci-visualization/hippodraw/files/hippodraw-1.21.3-wcslib.patch
@@ -0,0 +1,31 @@
+--- qt/CanvasView.cxx.orig 2007-07-02 19:17:16.000000000 +0100
++++ qt/CanvasView.cxx 2008-07-15 23:20:57.000000000 +0100
+@@ -67,9 +67,7 @@
+ #undef PACKAGE_TARNAME
+ #undef PACKAGE_VERSION
+ #ifdef _WIN32
+-#include "wcslib/C/config.h"
+ #else
+-#include "wcslib/config.h"
+ #endif
+ #endif
+
+@@ -2850,7 +2848,6 @@
+
+ #ifdef HAVE_WCSLIB
+ about += "<li> WCSlib ";
+- about += PACKAGE_VERSION;
+ #endif
+ about += "</ul>";
+
+--- config/m4/pfkeb_have_wcslib.m4.orig 2008-07-16 16:11:34.000000000 +0100
++++ config/m4/pfkeb_have_wcslib.m4 2008-07-16 16:11:50.000000000 +0100
+@@ -61,7 +61,7 @@
+ pfk_save_libs=$LIBS
+ LDFLAGS=$WCSLIB_LDFLAGS
+ AC_CHECK_FILE($pfk_wcslib_include/wcslib/wcs.h,, no_good=yes )
+- AC_CHECK_LIB(wcs, wcsset, no_good=no, no_good=yes )
++ AC_CHECK_LIB(wcs, wcsset, , no_good=yes )
+ LDFLAGS=$pfk_save_ldflags
+ # do not want -lwcs in LIBS
+ LIBS=$pfk_save_libs
diff --git a/sci-visualization/hippodraw/hippodraw-1.21.3-r1.ebuild b/sci-visualization/hippodraw/hippodraw-1.21.3-r1.ebuild
new file mode 100644
index 000000000000..1751b232c871
--- /dev/null
+++ b/sci-visualization/hippodraw/hippodraw-1.21.3-r1.ebuild
@@ -0,0 +1,141 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-visualization/hippodraw/hippodraw-1.21.3-r1.ebuild,v 1.1 2008/07/17 17:15:14 bicatali Exp $
+
+EAPI=1
+
+inherit eutils autotools multilib qt3 qt4
+
+MY_PN=HippoDraw
+
+DESCRIPTION="Highly interactive data analysis Qt environment for C++ and python"
+HOMEPAGE="http://www.slac.stanford.edu/grp/ek/hippodraw/"
+SRC_URI="ftp://ftp.slac.stanford.edu/users/pfkeb/${PN}/${MY_PN}-${PV}.tar.gz"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="doc examples +fits +numpy qt4 root wcs"
+
+CDEPEND="dev-libs/boost
+ virtual/latex-base
+ media-libs/netpbm
+ fits? ( sci-libs/cfitsio )
+ numpy? ( dev-python/numpy )
+ qt4? ( || ( >=x11-libs/qt-4.2:4
+ ( x11-libs/qt-gui:4 x11-libs/qt-qt3support:4 ) ) )
+ !qt4? ( $(qt_min_version 3.1) )
+ root? ( >=sci-physics/root-5 )
+ !root? ( sci-libs/minuit )
+ wcs? ( sci-astronomy/wcslib )"
+
+DEPEND="${CDEPEND}
+ doc? ( app-doc/doxygen )"
+
+RDEPEND="${CDEPEND}
+ numpy? ( fits? ( dev-python/pyfits ) )"
+
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+QT4_BUILT_WITH_USE_CHECK="qt3support"
+
+pkg_setup() {
+ # need python threads (see bug #224269)
+ if ! built_with_use dev-lang/python threads; then
+ die "hippodraw needs dev-lang/python with USE=\"threads\""
+ fi
+ use qt4 && qt4_pkg_setup
+}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/${P}-gcc4.3.patch
+ epatch "${FILESDIR}"/${P}-numarray.patch
+ epatch "${FILESDIR}"/${P}-test-fix.patch
+ epatch "${FILESDIR}"/${P}-minuit2.patch
+ epatch "${FILESDIR}"/${P}-wcslib.patch
+
+ # fix the install doc directory to gentoo's one
+ local docdir=/usr/share/doc/${PF}
+ sed -i \
+ -e "s:\(docdir\).*=.*:\1= ${docdir}:" \
+ -e "s:\(INSTALLDIR\).*=.*:\1= \$(DESTDIR)${docdir}/html:" \
+ -e "/^DOCS_STR/s:\(DOCS_STR\).*=.*:\1 = \\\\\"${docdir}/html\\\\\":" \
+ -e "s:\$(pkgdatadir)/examples:${docdir}/examples:" \
+ -e 's:LICENSE:README:' \
+ {.,doc,examples,qt}/Makefile.am || die "sed for docdir failed"
+
+ AT_M4DIR=config/m4 eautoreconf
+}
+
+src_compile() {
+ local myconf="
+ --disable-numarraybuild
+ $(use_enable numpy numpybuild)
+ $(use_enable doc help)"
+ # All these longuish conf options are necessary
+ # or else a huge patch
+ if use qt4; then
+ myconf="${myconf} --with-Qt-include-dir=no"
+ myconf="${myconf} --with-Qt-lib-dir=no"
+ myconf="${myconf} --with-Qt-bin-dir=no"
+ myconf="${myconf} --with-qt4-include=/usr/include/qt4"
+ myconf="${myconf} --with-qt4-lib=/usr/$(get_libdir)/qt4"
+ myconf="${myconf} --with-qt4-dir=/usr"
+ else
+ myconf="${myconf} --with-Qt-include-dir=/usr/qt/3/include"
+ myconf="${myconf} --with-Qt-lib-dir=/usr/qt/3/$(get_libdir)"
+ myconf="${myconf} --with-Qt-bin-dir=/usr/qt/3/bin"
+ myconf="${myconf} --with-qt4-include=no"
+ myconf="${myconf} --with-qt4-lib=no"
+ myconf="${myconf} --with-qt4-dir=no"
+ fi
+
+ if use root; then
+ myconf="${myconf} --with-root-include=$(root-config --incdir)"
+ myconf="${myconf} --with-root-lib=$(root-config --libdir)"
+ myconf="${myconf} --with-minuit2-lib=no"
+ else
+ myconf="${myconf} --with-minuit2-include=/usr/include"
+ myconf="${myconf} --with-minuit2-lib=/usr/$(get_libdir)"
+ myconf="${myconf} --with-root-lib=no"
+ fi
+
+ if use fits; then
+ myconf="${myconf} --with-cfitsio-include=/usr/include"
+ myconf="${myconf} --with-cfitsio-lib=/usr/$(get_libdir)"
+ else
+ myconf="${myconf} --with-cfitsio-lib=no"
+ fi
+
+ if use wcs; then
+ myconf="${myconf} --with-wcslib-include=/usr/include"
+ myconf="${myconf} --with-wcslib-lib=/usr/$(get_libdir)"
+ else
+ myconf="${myconf} --with-wcslib-include=no"
+ myconf="${myconf} --with-wcslib-lib=no"
+ fi
+
+ econf ${myconf} || die "econf failed"
+
+ emake || die "emake failed"
+ if use doc; then
+ emake docs || die "emake docs failed"
+ fi
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+ dosym ../${MY_PN}/hippoApp.png /usr/share/pixmaps/hippoApp.png
+ make_desktop_entry hippodraw HippoDraw hippoApp
+ if use examples; then
+ insinto /usr/share/doc/${PF}/testsuite
+ doins testsuite/*.py || die "examples install failed"
+ insinto /usr/share/doc/${PF}/examples
+ doins examples/*.{fits,tnt,data,baddata}*
+ else
+ # these are automatically installed
+ rm -rf "${D}"usr/share/doc/${PF}/examples || die
+ fi
+}
diff --git a/sci-visualization/hippodraw/metadata.xml b/sci-visualization/hippodraw/metadata.xml
index cc4b9a869ff4..8976f69d4d3b 100644
--- a/sci-visualization/hippodraw/metadata.xml
+++ b/sci-visualization/hippodraw/metadata.xml
@@ -3,11 +3,42 @@
<pkgmetadata>
<herd>sci</herd>
<longdescription lang="en">
-HippoDraw provides a highly interactive data analysis environment. It
-is written in C++ with the Qt library. HippoDraw can be used as a
-stand-alone application or a Python extension module. In the latter
-case, Python is effectively the scripting language for HippoDraw. It
-was made for high energy astrophysics, but it is not specific. It
-contains good support for histograms and fitting.
+ HippoDraw provides a highly interactive data analysis environment. It
+ is written in C++ with the Qt library. HippoDraw can be used as a
+ stand-alone application or a Python extension module. In the latter
+ case, Python is effectively the scripting language for HippoDraw. It
+ was made for high energy astrophysics, but it is not specific. It
+ contains good support for histograms and fitting.
</longdescription>
+<use>
+ <flag name="fits">
+ Enable HippoDraw's built-in support for reading FITS files,
+ by using the CFITSIO library. FITS binary and ASCII tables are
+ supported as well as images. When combine with numpy flag, it can
+ also use the pyfits package.
+ </flag>
+ <flag name="numarray">
+ Enable support for the obsolete numerical python array package
+ numarray. Should not be used, since it's being deprecated.
+ See bug #, and switch to numpy.
+ </flag>
+ <flag name="numpy">
+ Enable support for the numerical array manipulation and
+ computational capabilities of numpy in python.
+ HippoDraw can return a numerical array to Python from any of the type
+ of objects that are supported. One can also import data
+ to a HippoDraw from a numpy array.
+ </flag>
+ <flag name="root">
+ Adds support for ROOT input/ouput system, storing a table of data
+ as TBranch objects each with a single TLeaf. Files of this type
+ can be imported by HippoDraw as a RootNTuple. Also if root flag is
+ selected, it can use root::minuit for minimization instead of
+ standalone minuit library.
+ </flag>
+ <flag name="wcs">
+ Adds 10 built-in transforms to HippoDraw via the World Coordinate
+ System library for FITS files.
+ </flag>
+</use>
</pkgmetadata>