summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Müller <ulm@gentoo.org>2024-08-28 20:20:22 +0200
committerUlrich Müller <ulm@gentoo.org>2024-08-28 20:22:23 +0200
commit91f7b1bdaeb7d6cefeb2d452398fe87a16cdc8c4 (patch)
treefbb80e5e8a27006ae092d369d2e13d968cd42055 /sci-visualization
parentapp-xemacs/ebuild-mode: add 1.74 (diff)
downloadgentoo-91f7b1bdaeb7d6cefeb2d452398fe87a16cdc8c4.tar.gz
gentoo-91f7b1bdaeb7d6cefeb2d452398fe87a16cdc8c4.tar.bz2
gentoo-91f7b1bdaeb7d6cefeb2d452398fe87a16cdc8c4.zip
sci-visualization/gnuplot: support Qt 6
Bug: https://bugs.gentoo.org/938547 Signed-off-by: Ulrich Müller <ulm@gentoo.org>
Diffstat (limited to 'sci-visualization')
-rw-r--r--sci-visualization/gnuplot/gnuplot-6.0.1-r1.ebuild225
1 files changed, 225 insertions, 0 deletions
diff --git a/sci-visualization/gnuplot/gnuplot-6.0.1-r1.ebuild b/sci-visualization/gnuplot/gnuplot-6.0.1-r1.ebuild
new file mode 100644
index 000000000000..6d1f04e29d39
--- /dev/null
+++ b/sci-visualization/gnuplot/gnuplot-6.0.1-r1.ebuild
@@ -0,0 +1,225 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{1,2,3,4} )
+WX_GTK_VER="3.2-gtk3"
+
+inherit autotools lua-single readme.gentoo-r1 toolchain-funcs wxwidgets
+
+DESCRIPTION="Command-line driven interactive plotting program"
+HOMEPAGE="http://www.gnuplot.info/"
+
+if [[ -z ${PV%%*9999} ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://git.code.sf.net/p/gnuplot/gnuplot-main"
+ EGIT_BRANCH="master"
+ MY_P="${PN}"
+ EGIT_CHECKOUT_DIR="${WORKDIR}/${MY_P}"
+else
+ MY_P="${P/_/.}"
+ SRC_URI="https://downloads.sourceforge.net/gnuplot/${MY_P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="gnuplot"
+SLOT="0"
+IUSE="amos aqua bitmap cairo doc examples +gd gpic latex libcaca libcerf lua metafont metapost qt5 qt6 readline regis tgif wxwidgets X"
+
+REQUIRED_USE="
+ doc? ( gd )
+ lua? ( ${LUA_REQUIRED_USE} )"
+
+RDEPEND="
+ amos? ( dev-libs/openspecfun )
+ cairo? (
+ x11-libs/cairo
+ x11-libs/pango )
+ gd? ( >=media-libs/gd-2.0.35-r3:2=[png] )
+ latex? (
+ virtual/latex-base
+ lua? (
+ dev-tex/pgf
+ >=dev-texlive/texlive-latexrecommended-2008-r2 ) )
+ libcaca? ( media-libs/libcaca )
+ lua? ( ${LUA_DEPS} )
+ qt5? ( !qt6? (
+ dev-qt/qtcore:5=
+ dev-qt/qtgui:5=
+ dev-qt/qtnetwork:5=
+ dev-qt/qtprintsupport:5=
+ dev-qt/qtsvg:5=
+ dev-qt/qtwidgets:5= ) )
+ qt6? (
+ dev-qt/qtbase:6=[gui,network,widgets]
+ dev-qt/qtsvg:6=
+ dev-qt/qt5compat:6= )
+ readline? ( sys-libs/readline:0= )
+ libcerf? ( sci-libs/libcerf )
+ wxwidgets? (
+ x11-libs/wxGTK:${WX_GTK_VER}[X]
+ x11-libs/cairo
+ x11-libs/pango
+ x11-libs/gtk+:3 )
+ X? (
+ x11-libs/libX11
+ x11-libs/libXaw )"
+
+DEPEND="${RDEPEND}
+ X? ( x11-base/xorg-proto )"
+
+BDEPEND="
+ virtual/pkgconfig
+ doc? (
+ virtual/latex-base
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-langgreek
+ dev-texlive/texlive-mathscience
+ app-text/ghostscript-gpl )
+ qt5? ( !qt6? ( dev-qt/linguist-tools:5 ) )"
+
+IDEPEND="latex? ( virtual/latex-base )"
+
+GP_VERSION="${PV%.*}"
+TEXMF="${EPREFIX}/usr/share/texmf-site"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-6.1-no-picins.patch
+ "${FILESDIR}"/${PN}-6.0.0-configure.patch
+ "${FILESDIR}"/${PN}-6.0.1-watchpoints.patch
+)
+
+pkg_setup() {
+ use lua && lua-single_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ if [[ ${PV##*.} = 9999 ]]; then
+ local dir
+ for dir in config demo m4 term tutorial; do
+ emake -C "$dir" -f Makefile.am.in Makefile.am
+ done
+ fi
+
+ # Add special version identification as required by provision 2
+ # of the gnuplot license
+ sed -i -e "1s/.*/& (Gentoo revision ${PR})/" PATCHLEVEL || die
+
+ eautoreconf
+
+ # Make sure we don't mix build & host flags.
+ sed -i \
+ -e 's:@CPPFLAGS@:$(BUILD_CPPFLAGS):' \
+ -e 's:@CFLAGS@:$(BUILD_CFLAGS):' \
+ -e 's:@LDFLAGS@:$(BUILD_LDFLAGS):' \
+ -e 's:@CC@:$(CC_FOR_BUILD):' \
+ docs/Makefile.in || die
+}
+
+src_configure() {
+ if ! use latex; then
+ sed -i -e '/SUBDIRS/s/LaTeX//' share/Makefile.in || die
+ fi
+
+ use wxwidgets && setup-wxwidgets
+
+ tc-export CC CXX #453174
+ tc-export_build_env BUILD_CC
+ export CC_FOR_BUILD=${BUILD_CC}
+
+ use qt5 && use qt6 && ewarn "USE flag \"qt6\" overrides \"qt5\""
+
+ econf \
+ --with-texdir="${TEXMF}/tex/latex/${PN}" \
+ --with-readline=$(usex readline gnu builtin) \
+ $(use_with amos) \
+ $(use_with bitmap bitmap-terminals) \
+ $(use_with cairo) \
+ $(use_with gd) \
+ $(use_with gpic) \
+ "$(use_with libcaca caca "${EPREFIX}/usr/$(get_libdir)")" \
+ $(use_with libcerf) \
+ $(use_with lua) \
+ $(use_with metafont) \
+ $(use_with metapost) \
+ $(use_with regis) \
+ $(use_with tgif) \
+ $(use_with X x) \
+ --enable-stats \
+ $(usev qt6 --with-qt=qt6 || use_with qt5 qt qt5) \
+ $(use_enable wxwidgets) \
+ DIST_CONTACT="https://bugs.gentoo.org/" \
+ EMACS=no
+}
+
+src_compile() {
+ # Prevent access violations, see bug 201871
+ export VARTEXFONTS="${T}/fonts"
+
+ emake all
+
+ # pdflatex fails in titlepag.tex: "Argument of  has an extra }."
+ # Install the pre-built gnuplot.pdf instead.
+ #if use doc; then
+ # if use cairo; then
+ # emake -C docs pdf
+ # else
+ # ewarn "Cannot build figures unless cairo is enabled."
+ # ewarn "Building documentation without figures."
+ # emake -C docs pdf_nofig
+ # mv docs/nofigures.pdf docs/gnuplot.pdf || die
+ # fi
+ #fi
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ dodoc BUGS NEWS PGPKEYS README* RELEASE_NOTES
+ newdoc term/PostScript/README README-ps
+ newdoc term/js/README README-js
+ use lua && newdoc term/lua/README README-lua
+
+ local DOC_CONTENTS='Gnuplot no longer links against pdflib. You can
+ use the "pdfcairo" terminal for PDF output.'
+ use cairo || DOC_CONTENTS+=' It is available with USE="cairo".'
+ 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."
+ readme.gentoo_create_doc
+
+ if use examples; then
+ # Demo files
+ insinto /usr/share/${PN}/${GP_VERSION}
+ doins -r demo
+ rm "${ED}"/usr/share/${PN}/${GP_VERSION}/demo/binary{1,2,3} || die
+ rm "${ED}"/usr/share/${PN}/${GP_VERSION}/demo/plugin/*.{o,so} || die
+ fi
+
+ if use doc; then
+ # Manual, FAQ
+ dodoc docs/gnuplot.pdf #FAQ.pdf
+ # Documentation for making PostScript files
+ docinto psdoc
+ dodoc docs/psdoc/{*.doc,*.tex,*.ps,*.gpi,README}
+ fi
+}
+
+src_test() {
+ emake check GNUTERM="dumb"
+}
+
+pkg_postinst() {
+ use latex && texmf-update
+ readme.gentoo_print_elog
+}
+
+pkg_postrm() {
+ use latex && texmf-update
+}