# Copyright 1999-2004 Gentoo Technologies, Inc. # Distributed under the terms of the GNU General Public License v2 # $Header: $ # Known problems with this ebuild: # - Not support for libqhull. # - No documentation building. DESCRIPTION="A Scientific Plotting Library" HOMEPAGE="http://${PN}.sourceforge.net/" SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" LICENSE="LGPL-2" SLOT="0" KEYWORDS="~x86" IUSE="debug doc f77 gd-external gnome ifc java jpeg png python tcltk tetex truetype X itcl octave" DEPEND="${RDEPEND} dev-util/pkgconfig ifc? ( dev-lang/ifc )" # For documentation building (currently doesn't work). # doc? ( app-text/docbook-sgml-utils ) RDEPEND="virtual/glibc sys-apps/man dev-lang/perl app-text/opensp python? ( dev-python/numeric ) java? ( virtual/jre ) tetex? ( app-text/jadetex ) octave? ( app-sci/octave ) external-gd? ( media-libs/libgd ) truetype? ( media-libs/freetype ) X? ( virtual/x11 tcltk? ( dev-lang/tcl dev-lang/tk itcl? ( dev-tcltk/itcl ) ) gnome? ( gnome-base/gnome-libs ) )" # Optional support for libqhull (currently doesn't work). # qhull? ( media-libs/qhull ) # Documentation building (if it worked) would produce info files. # sys-apps/texinfo pkg_setup() { # If the fortran interface is wanted, the gnu f77 compiler # is needed unless ifc is used (which is taken care of in # the dependencies). use f77 && ! use ifc || if [ -z 'which g77' ]; then eerror "GNU fortran 77 compiler not found on the system." eerror "Please add f77 to your USE flags and reemerge gcc." die fi } src_compile() { # Doesn't compile with j > 1. MAKEOPTS="${MAKEOPTS} -e -j1" local EXTRA_CONF # Compilation options (debug, documentation). EXTRA_CONF="${EXTRA_CONF} $(use_with debug)" # Documentation building doesn't work. # The xml catalogs are not found. # if use doc; then # EXTRA_CONF="${EXTRA_CONF} --enable-builddoc \ # --with-xml-declaration=/usr/share/sgml/xml.dcl" # else # EXTRA_CONF="${EXTRA_CONF} --disable-builddoc" # fi EXTRA_CONF="${EXTRA_CONF} --disable-builddoc" # Language bindings. EXTRA_CONF="${EXTRA_CONF} $(use_enable python)" EXTRA_CONF="${EXTRA_CONF} $(use_enable java)" EXTRA_CONF="${EXTRA_CONF} $(use_enable octave)" if use ifc; then EXTRA_CONF="${EXTRA_CONF} --enable-f77 F77=/opt/intel/compiler70/ia32/bin/ifc" elif use f77; then EXTRA_CONF="${EXTRA_CONF} --enable-f77" else EXTRA_CONF="${EXTRA_CONF} --disable-f77" fi # Device drivers. EXTRA_CONF="${EXTRA_CONF} $(use_enable jpeg)" EXTRA_CONF="${EXTRA_CONF} $(use_enable png)" EXTRA_CONF="${EXTRA_CONF} $(use_enable tetex pstex)" # Dynamic driver loading causes segfaults. EXTRA_CONF="${EXTRA_CONF} --disable-dyndrivers" # The linuxvga driver doesn't compile. EXTRA_CONF="${EXTRA_CONF} --disable-linuxvga" # Support for optional libraries. EXTRA_CONF="${EXTRA_CONF} $(use_with truetype freetype)" # Support for libqhull doesn't work. The configure script # doesn't find the lib. # EXTRA_CONF="${EXTRA_CONF} $(use_with qhull)" EXTRA_CONF="${EXTRA_CONF} --without-qhull" # Additional X-dependent language bindings and device drivers. if use X; then EXTRA_CONF="${EXTRA_CONF} --with-x" if use tcltk; then EXTRA_CONF="${EXTRA_CONF} --enable-tcl" EXTRA_CONF="${EXTRA_CONF} $(use_enable itcl)" else EXTRA_CONF="${EXTRA_CONF} --disable-tcl" EXTRA_CONF="${EXTRA_CONF} --disable-tk" EXTRA_CONF="${EXTRA_CONF} --disable-itcl" fi EXTRA_CONF="${EXTRA_CONF} $(use_enable gnome)" else EXTRA_CONF="${EXTRA_CONF} --without-x" EXTRA_CONF="${EXTRA_CONF} --disable-tcl" EXTRA_CONF="${EXTRA_CONF} --disable-itcl" EXTRA_CONF="${EXTRA_CONF} --disable-gnome" fi econf ${EXTRA_CONF} || die emake || die } src_install() { make install DESTDIR=${D} || die # To match the Gentoo FSH. mv ${D}/usr/share/doc/${PN} ${D}/usr/share/doc/${PF} mv ${D}/usr/share/${PN}${PV} ${D}/usr/share/${PN} if use java; then mv ${D}/usr/lib/java/plplot ${D}/usr/share/${PN}/lib rm -r ${D}/usr/lib/java fi if use octave; then mv ${D}/usr/share/plplot_octave ${D}/usr/share/plplot/octave mv ${D}/usr/PLplot ${D}/usr/share/${PN}/octave/PLplot cd ${D}/usr/share/${PN}/octave/PLplot sed -ie 's:/usr/share/plplot_octave:/usr/share/plplot/octave:' plplot_octave_path.m fi # Gzip the basic documentation. gzip ${D}/usr/share/doc/${PF}/* # Install prebuilt documentation. use doc && dohtml doc/docbook/src/*.html }