diff options
Diffstat (limited to 'sci-libs/pgplot')
-rw-r--r-- | sci-libs/pgplot/Manifest | 3 | ||||
-rw-r--r-- | sci-libs/pgplot/pgplot-5.2.2-r7.ebuild | 10 | ||||
-rw-r--r-- | sci-libs/pgplot/pgplot-5.2.2-r8.ebuild | 177 |
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 +} |