aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sci-visualization/gnuplot/gnuplot-4.2.6-r1.ebuild')
-rw-r--r--sci-visualization/gnuplot/gnuplot-4.2.6-r1.ebuild226
1 files changed, 226 insertions, 0 deletions
diff --git a/sci-visualization/gnuplot/gnuplot-4.2.6-r1.ebuild b/sci-visualization/gnuplot/gnuplot-4.2.6-r1.ebuild
new file mode 100644
index 000000000..08d4293d3
--- /dev/null
+++ b/sci-visualization/gnuplot/gnuplot-4.2.6-r1.ebuild
@@ -0,0 +1,226 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=2
+
+WX_GTK_VER="2.8"
+
+inherit autotools elisp-common eutils multilib wxwidgets
+
+MY_P="${P/_/-}"
+
+DESCRIPTION="Command-line driven interactive plotting program"
+HOMEPAGE="http://www.gnuplot.info/"
+SRC_URI="mirror://sourceforge/gnuplot/${MY_P}.tar.gz
+ mirror://gentoo/${PN}-4.2.5-lua-term.patch.bz2"
+
+LICENSE="gnuplot"
+GP_VERSION="${PV:0:3}"
+use multislot && SLOT="${PV:0:3}" || SLOT="0"
+KEYWORDS="~x86"
+IUSE="doc emacs +gd ggi latex lua multislot pdf plotutils readline svga wxwidgets X xemacs"
+RESTRICT="wxwidgets? ( test )"
+
+RDEPEND="
+ multislot? ( !!<=sci-visualization/gnuplot-4.2.6
+ !!sci-visualization/gnuplot[-mutlislot]
+ app-admin/eselect-gnuplot )
+ xemacs? ( app-editors/xemacs app-xemacs/texinfo app-xemacs/xemacs-base )
+ emacs? ( virtual/emacs !app-emacs/gnuplot-mode )
+ pdf? ( media-libs/pdflib )
+ lua? ( >=dev-lang/lua-5.1 )
+ ggi? ( media-libs/libggi )
+ gd? ( >=media-libs/gd-2[png] )
+ doc? ( virtual/latex-base
+ app-text/ghostscript-gpl )
+ latex? ( virtual/latex-base
+ lua? ( dev-tex/pgf
+ >=dev-texlive/texlive-latexrecommended-2008-r2 ) )
+ X? ( x11-libs/libXaw )
+ svga? ( media-libs/svgalib )
+ readline? ( >=sys-libs/readline-4.2 )
+ plotutils? ( media-libs/plotutils )
+ wxwidgets? ( x11-libs/wxGTK:2.8[X]
+ >=x11-libs/cairo-0.9
+ >=x11-libs/pango-1.10.3
+ >=x11-libs/gtk+-2.8 )"
+DEPEND="${RDEPEND}
+ dev-util/pkgconfig"
+
+S="${WORKDIR}/${MY_P}"
+E_SITEFILE="50${PN}-gentoo.el"
+TEXMF="/usr/share/texmf-site"
+
+pkg_setup() {
+ use wxwidgets && need-wxwidgets unicode
+ use wxwidgets && wxwidgets_pkg_setup
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-4.2.2-disable_texi_generation.patch #194216
+ epatch "${FILESDIR}"/${PN}-4.2.3-app-defaults.patch #219323
+ epatch "${FILESDIR}"/${PN}-4.2.3-disable-texhash.patch #201871
+ epatch "${WORKDIR}"/${PN}-4.2.5-lua-term.patch #233475
+ epatch "${FILESDIR}"/${PN}-4.2.5-configure-pkgconfig.patch #233475 c9
+ # Add Gentoo version identification since the licence requires it
+ epatch "${FILESDIR}"/${PN}-gentoo-version.patch
+
+ eautoreconf
+}
+
+src_configure() {
+ # See bug #156427.
+ if use latex ; then
+ sed -i -e "s:\`kpsexpand.*\`:${TEXMF}/tex/latex/${PN}/${GP_VERSION}:" \
+ share/LaTeX/Makefile.in || die "sed kpsexpand removed failed"
+ else
+ sed -i \
+ -e '/^SUBDIRS/ s/LaTeX//' share/Makefile.in || \
+ die "sed disable of LateX failed"
+ fi
+
+ myconf="${myconf} $(use_with X x)"
+ myconf="${myconf} $(use_with svga linux-vga)"
+ myconf="${myconf} $(use_with gd)"
+ myconf="${myconf} $(use_enable wxwidgets)"
+ myconf="${myconf} $(use_with plotutils plot /usr/$(get_libdir))"
+ myconf="${myconf} $(use_with pdf pdf /usr/$(get_libdir))"
+ myconf="${myconf} $(use_with lua)"
+ myconf="${myconf} $(use_with doc tutorial)"
+
+ use ggi \
+ && myconf="${myconf} --with-ggi=/usr/$(get_libdir)
+ --with-xmi=/usr/$(get_libdir)" \
+ || myconf="${myconf} --without-ggi"
+
+ use readline \
+ && myconf="${myconf} --with-readline=gnu" \
+ || myconf="${myconf} --with-readline=builtin"
+
+ myconf="${myconf} --without-lisp-files"
+ use multislot && myconf="${myconf} --program-suffix='-${GP_VERSION}'"
+
+ TEMACS=no
+ use xemacs && TEMACS=xemacs
+ use emacs && TEMACS=emacs
+
+ CFLAGS="${CFLAGS} -DGENTOO_REVISION=\\\"${PR}\\\"" \
+ EMACS=${TEMACS} \
+ appdefaultdir=/etc/X11/app-defaults/${PN}/${GP_VERSION} \
+ econf ${myconf} || die "econf failed"
+}
+
+src_compile() {
+ # Prevent access violations, see bug 201871
+ VARTEXFONTS="${T}/fonts"
+
+ # This is a hack to avoid sandbox violations when using the Linux console.
+ # Creating the DVI and PDF tutorials require /dev/svga to build the
+ # example plots.
+ addwrite /dev/svga:/dev/mouse:/dev/tts/0
+
+ emake || die "emake failed"
+
+ if use doc; then
+ # Avoid sandbox violation in epstopdf/ghostscript
+ addpredict /var/cache/fontconfig
+ cd docs
+ emake pdf || die "emake pdf failed"
+ cd ../tutorial
+ emake pdf || die "emake pdf tutorial failed"
+ fi
+}
+
+src_install () {
+ emake DESTDIR="${D}" install || die "emake install failed"
+
+ if use emacs; then
+ cd lisp
+ einfo "Configuring gnuplot-mode for GNU Emacs..."
+ EMACS="emacs" econf --with-lispdir="${SITELISP}/${PN}" || \
+ die "econf emacs failed"
+ emake DESTDIR="${D}" install || die "lisp install for emacs failed"
+ emake clean
+ cd ..
+
+ # Gentoo emacs site-lisp configuration
+ echo -e "\n;;; ${PN} site-lisp configuration\n" > ${E_SITEFILE}
+ echo -e "(add-to-list 'load-path \"@SITELISP@\")\n" >> ${E_SITEFILE}
+ sed '/^;; move/,+3 d' lisp/dotemacs >> ${E_SITEFILE}
+ elisp-site-file-install ${E_SITEFILE}
+ fi
+
+ if use xemacs; then
+ cd lisp
+ einfo "Configuring gnuplot-mode for XEmacs..."
+ EMACS="xemacs" \
+ econf --with-lispdir="/usr/lib/xemacs/site-packages/${PN}" || \
+ die "econf xemacs failed"
+ emake DESTDIR="${D}" install || die "lisp install for xemacs failed"
+ cd ..
+ fi
+
+ if use latex && use lua; then
+ # install style file in an (additional) place where TeX can find it
+ insinto "${TEXMF}/tex/latex/${PN}/${GP_VERSION}"
+ doins term/lua/gnuplot-lua-tikz.sty || die
+ fi
+
+ dodoc BUGS ChangeLog FAQ NEWS PATCHLEVEL PGPKEYS PORTING README* \
+ TODO VERSION
+ use lua && newdoc term/lua/README README-lua
+ newdoc term/PostScript/README README-ps
+
+ if use doc; then
+ # Demo files
+ insinto /usr/share/${PN}/${GP_VERSION}/demo
+ doins demo/*
+ # Manual
+ insinto /usr/share/doc/${PF}/manual
+ doins docs/gnuplot.pdf
+ # Tutorial
+ insinto /usr/share/doc/${PF}/tutorial
+ doins tutorial/{tutorial.dvi,tutorial.pdf}
+ # Documentation for making PostScript files
+ insinto /usr/share/doc/${PF}/psdoc
+ doins docs/psdoc/{*.doc,*.tex,*.ps,*.gpi,README}
+ fi
+
+ if ! use X; then
+ # see bug 194527
+ rm -rf "${D}/etc/X11"
+ fi
+ use multislot && \
+ mv "${D}/usr/share/info/gnuplot.info" "${D}/usr/share/info/gnuplot-${GP_VERSION}.info"
+}
+
+pkg_postinst() {
+ use multislot && eselect gnuplot update --if-unset --no-texupdate
+ use emacs && elisp-site-regen
+ use latex && texmf-update
+
+ if use svga; then
+ einfo "In order to enable ordinary users to use SVGA console graphics"
+ einfo "gnuplot needs to be set up as setuid root. Please note that"
+ einfo "this is usually considered to be a security hazard."
+ einfo "As root, manually \"chmod u+s /usr/bin/gnuplot\"."
+ fi
+ if use gd; then
+ echo
+ einfo "For font support in png/jpeg/gif output, you may have to"
+ einfo "set the GDFONTPATH and GNUPLOT_DEFAULT_GDFONT environment"
+ einfo "variables. See the FAQ file in /usr/share/doc/${PF}/"
+ einfo "for more information."
+ fi
+}
+
+pkg_postrm() {
+ #in the case that we uninstall the last multislot version
+ if use multislot; then
+ #rm symlinks
+ has_version sci-visualization/gnuplot || eselect gnuplot update --no-texupdate
+ fi
+ use emacs && elisp-site-regen
+ use latex && texmf-update
+}