summaryrefslogtreecommitdiff
path: root/sci-libs/pgplot
diff options
context:
space:
mode:
Diffstat (limited to 'sci-libs/pgplot')
-rw-r--r--sci-libs/pgplot/Manifest3
-rw-r--r--sci-libs/pgplot/pgplot-5.2.2-r7.ebuild10
-rw-r--r--sci-libs/pgplot/pgplot-5.2.2-r8.ebuild177
3 files changed, 187 insertions, 3 deletions
diff --git a/sci-libs/pgplot/Manifest b/sci-libs/pgplot/Manifest
index 617d0c136607..caee28b7cf81 100644
--- a/sci-libs/pgplot/Manifest
+++ b/sci-libs/pgplot/Manifest
@@ -5,5 +5,6 @@ AUX pgplot-libpng15.patch 374 BLAKE2B 975eed22e5f2c4ff7bd169224eee766b5438ad25dd
AUX pgplot-makemake.patch 7901 BLAKE2B 65b6d9fa41667d95376530315269872a25fc9445753e0f7b57ebe02feb3bfbf8deb75e977c771a09c4bf7851e5a9d392c145916c054ebd5624309487a4756fad SHA512 a29bc78eb17397c8fc3a0ec0f8dcec28d5d3f1345b16b90c05aad6459c9b312b63d04e55882b99c47ab22e7b3e16ee3e437c684fb5f50a43aaecd5fc6915689a
AUX pgplot-tk86.patch 1863 BLAKE2B 23abf5177049d19ce782ff68987689fe9e6cac0267bd664c681bb1bd94a11da1898ed6c639d0a3773d64f43502c588352304e593672940fdf83e42ac00219ab2 SHA512 32abe4409cc1b63bf807a3544c36c163c6278dbe3dfd50ce24c6c65da6e22c8d8c0992217bab44c3e3105a11a6cad9b721c1ed8efe6835b46686072f40b83468
DIST pgplot522.tar.gz 1197397 BLAKE2B 9eafde628373abdbda7adeb365b107618197aa5884d16b27f42b20c7957efa9b09d64adbcbc311ec92b974427355f8410a35c3f12969d240e8e25f3a72cae82b SHA512 03a075c84506ead1d665a7105cd41c7cfbe19d12094cb36fb7459a0f6ee0df0638543b7eca92aaf80677984cc47a07b968f854db8eaa90ec605f78d89c615d1f
-EBUILD pgplot-5.2.2-r7.ebuild 4037 BLAKE2B e2b70aa410feae2b55d8c70f51f1f591f724e253f24a520ae4cf904b96346be37cbff8af9741d049a58c6197f902bd16b6cb3c46cb854701c390e431a2b9d5c1 SHA512 c63e0074ab1a8394303869301ba20cb5f18026a88dffc9e2cc7927bdc556a1dd1cfab18fbb6414011d09d413392d652849558fbd1a120471e470c7f2173e3950
+EBUILD pgplot-5.2.2-r7.ebuild 4170 BLAKE2B 3be7d2adffe915d305466593b8a33d85ad389e2695e7eca251ebc57dbacd49d392d50aa1120e0e93e260514f4a49ec05802f0f4d266df148f7e8fe5898f045fd SHA512 9062dbe660489143991ab0bd2350c4e450688c6e73d2964aa6e2aec43661636964c84850f174e2f259575f54cee662f295768fd67923b95627ea7980dd0dea89
+EBUILD pgplot-5.2.2-r8.ebuild 4184 BLAKE2B cc2eca52f3e1fe354f104794ebd8fb121ad09a5e6c850a2a9788ed19b78be94eafb015a481bddd22c7e5a1b63dc5ab779c1869be760020b1dd7b25192dc1068d SHA512 7fc2fd7304061667441aa536b49e0b62c05d64124d1db717ebc492c262a212aa8019bedecbe245e3615832954c592bad9a65ab9f7792b8cbe62e161a73006cfa
MISC metadata.xml 625 BLAKE2B bbd521da84f7e10f6f09957ba02f4d731705784b7958951f9b508642e17ecb8840bb4ff33d81cfbd21b19723416f3a4e44bbe22a568f79731fefd2c25ce1cb8a SHA512 52ee7b04c1294da75229ca6c7ad407e7b278c78998962a818519c5312ed4babdbb9a62c31ecfba12aa39b439aa0477a7170f6f644d90097d149ad3a5839f766f
diff --git a/sci-libs/pgplot/pgplot-5.2.2-r7.ebuild b/sci-libs/pgplot/pgplot-5.2.2-r7.ebuild
index 07e406e2d678..ca95b9fefd98 100644
--- a/sci-libs/pgplot/pgplot-5.2.2-r7.ebuild
+++ b/sci-libs/pgplot/pgplot-5.2.2-r7.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -11,8 +11,8 @@ DESCRIPTION="FORTRAN/C device-independent scientific graphic library"
HOMEPAGE="https://www.astro.caltech.edu/~tjp/pgplot/"
SRC_URI="ftp://ftp.astro.caltech.edu/pub/pgplot/${MY_P}.tar.gz"
-SLOT="0"
LICENSE="free-noncomm"
+SLOT="0"
KEYWORDS="amd64 ~arm ~ia64 ~ppc ~x86 ~amd64-linux ~x86-linux"
IUSE="doc motif static-libs tk"
@@ -66,6 +66,12 @@ src_prepare() {
}
src_configure() {
+ # -Werror=lto-type-mismatch
+ # https://bugs.gentoo.org/862918
+ #
+ # Upstream contact method is email. I have sent one.
+ filter-lto
+
# GCC 10 workaround
# bug #722190
append-fflags $(test-flags-FC -fallow-argument-mismatch)
diff --git a/sci-libs/pgplot/pgplot-5.2.2-r8.ebuild b/sci-libs/pgplot/pgplot-5.2.2-r8.ebuild
new file mode 100644
index 000000000000..e42bace2cf5a
--- /dev/null
+++ b/sci-libs/pgplot/pgplot-5.2.2-r8.ebuild
@@ -0,0 +1,177 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit fortran-2 flag-o-matic toolchain-funcs
+
+MY_P="${PN}${PV//.}"
+
+DESCRIPTION="FORTRAN/C device-independent scientific graphic library"
+HOMEPAGE="https://www.astro.caltech.edu/~tjp/pgplot/"
+SRC_URI="ftp://ftp.astro.caltech.edu/pub/pgplot/${MY_P}.tar.gz"
+
+LICENSE="free-noncomm"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ia64 ~ppc ~x86 ~amd64-linux ~x86-linux"
+IUSE="doc motif static-libs tk"
+
+RDEPEND="
+ media-libs/libpng:=
+ x11-libs/libX11:=
+ x11-libs/libXt:=
+ motif? ( x11-libs/motif:= )
+ tk? ( dev-lang/tk:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+ doc? ( virtual/latex-base )
+"
+
+S="${WORKDIR}/${PN}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-drivers.patch
+ "${FILESDIR}"/${PN}-makemake.patch
+ "${FILESDIR}"/${PN}-compile-setup.patch
+ "${FILESDIR}"/${PN}-headers.patch
+ "${FILESDIR}"/${PN}-libpng15.patch
+ "${FILESDIR}"/${PN}-tk86.patch
+)
+
+src_prepare() {
+ default
+
+ # fix pointers for 64 bits
+ if use amd64 || use ia64; then
+ sed -e 's/INTEGER PIXMAP/INTEGER*8 PIXMAP/g' \
+ -i drivers/{gi,pp,wd}driv.f || die "sed 64bits failed"
+ fi
+
+ cp sys_linux/g77_gcc.conf local.conf
+
+ sed -e "s:FCOMPL=.*:FCOMPL=\"$(tc-getFC)\":g" \
+ -e "s:CCOMPL=.*:CCOMPL=\"$(tc-getCC)\":g" \
+ -i local.conf || die "sed flags failed"
+
+ if [[ "$(tc-getFC)" = if* ]]; then
+ sed -e 's/-Wall//g' \
+ -e 's/TK_LIBS="/TK_LIBS="-nofor-main /' \
+ -i local.conf || die "sed drivers failed"
+ fi
+
+ sed -e "s:/usr/local/pgplot:${EPREFIX}/usr/$(get_libdir)/pgplot:g" \
+ -e "s:/usr/local/bin:${EPREFIX}/usr/bin:g" \
+ -i src/grgfil.f makehtml maketex || die "sed path failed"
+
+ use motif && sed -i -e '/XMDRIV/s/!//' drivers.list
+ use tk && sed -i -e '/TKDRIV/s/!//' drivers.list
+}
+
+src_configure() {
+ # -Werror=lto-type-mismatch
+ # https://bugs.gentoo.org/862918
+ #
+ # Upstream contact method is email. I have sent one.
+ filter-lto
+
+ # GCC 10 workaround
+ # bug #722190
+ append-fflags $(test-flags-FC -fallow-argument-mismatch)
+
+ ./makemake . linux
+ # post makefile creation prefix hack
+ sed -i -e "s|/usr|${EPREFIX}/usr|g" makefile || die
+}
+
+src_compile() {
+ emake \
+ CFLAGS="${CFLAGS} -fPIC" \
+ FFLAGS="${FFLAGS} -fPIC" \
+ shared cpg-shared pgxwin_server pgdisp pgplot.doc
+
+ use tk && emake CFLAGS="${CFLAGS} -fPIC" libtkpgplot.so
+ use motif && emake CFLAGS="${CFLAGS} -fPIC" libXmPgplot.so
+
+ emake -j1 clean
+ use static-libs && emake all cpg
+
+ if use doc; then
+ export VARTEXFONTS="${T}/fonts"
+ emake pgplot.html pgplot-routines.tex
+ pdflatex pgplot-routines.tex
+ pdflatex pgplot-routines.tex
+ fi
+
+ # this just cleans out not needed files
+ emake -j1 clean
+}
+
+src_test() {
+ # i can go to 16
+ local i j
+ for i in 1 2 3; do
+ emake pgdemo${i}
+ # j can also be LATEX CPS...
+ for j in NULL PNG PS CPS LATEX; do
+ local testexe=./test_${j}_${i}
+ echo "LD_LIBRARY_PATH=. ./pgdemo${i} <<EOF" > ${testexe}
+ echo "/${j}" >> ${testexe}
+ echo "EOF" >> ${testexe}
+ sh ${testexe} || die "test ${i} failed"
+ done
+ done
+}
+
+src_install() {
+ insinto /usr/$(get_libdir)/pgplot
+ doins grfont.dat grexec.f *.inc rgb.txt
+ echo "PGPLOT_FONT=${EPREFIX}/usr/$(get_libdir)/pgplot/grfont.dat" >> 99pgplot
+ doenvd 99pgplot
+
+ dolib.so libpgplot.so*
+ dobin pgxwin_server pgdisp
+
+ # C binding
+ insinto /usr/include
+ doins cpgplot.h
+ dolib.so libcpgplot.so*
+
+ if use motif; then
+ insinto /usr/include
+ doins XmPgplot.h
+ dolib.so libXmPgplot.so*
+ fi
+
+ if use tk; then
+ insinto /usr/include
+ doins tkpgplot.h
+ dolib.so libtkpgplot.so*
+ fi
+
+ use static-libs && dolib.a lib*pgplot.a
+
+ # minimal doc
+ dodoc aaaread.me pgplot.doc
+ newdoc pgdispd/aaaread.me pgdispd.txt
+
+ if use doc; then
+ dodoc cpg/cpgplot.doc applications/curvefit/curvefit.doc pgplot.html
+ dodoc pgplot-routines.pdf pgplot-routines.tex
+ docinto examples
+ dodoc -r examples/. cpg/cpgdemo.c
+ docompress -x /usr/share/doc/${PF}/examples
+ dodoc -r applications
+ docompress -x /usr/share/doc/${PF}/applications
+ if use motif; then
+ docinto pgm
+ dodoc -r pgmf/. drivers/xmotif/pgmdemo.c
+ docompress -x /usr/share/doc/${PF}/pgm
+ fi
+ if use tk; then
+ docinto pgtk
+ dodoc drivers/xtk/pgtkdemo.*
+ docompress -x /usr/share/doc/${PF}/pgtk
+ fi
+ fi
+}