diff options
-rw-r--r-- | sci-mathematics/scilab/Manifest | 1 | ||||
-rw-r--r-- | sci-mathematics/scilab/scilab-6.0.2.ebuild | 293 | ||||
-rw-r--r-- | sci-mathematics/scilab/scilab-6.1.0.ebuild | 2 |
3 files changed, 295 insertions, 1 deletions
diff --git a/sci-mathematics/scilab/Manifest b/sci-mathematics/scilab/Manifest index 52ffafabf..e968c71c9 100644 --- a/sci-mathematics/scilab/Manifest +++ b/sci-mathematics/scilab/Manifest @@ -1 +1,2 @@ +DIST scilab-6.0.2-src.tar.gz 76126980 BLAKE2B 477132ccff5ad6d5615be80e6e63f2fa66ff806b6675373cf85f4204bbe27cfaf0fa7071e24b3d11ea2549860429c18fe8458cfd622c76030a741c101598fc96 SHA512 194fbf02e83436e5be8949fadf67e7b9b739eaa02d876b01505634d59b2d02adbf2c48a50bc2fe61c25956cae6aea4f832f429506dcab26d4e110d1bcd9ddfef DIST scilab-6.1.0-src.tar.gz 80556033 BLAKE2B ccea329a5d24bf03a95ae4ab02098a3d3fcd592b59d1ca31fb82da41592a19b1a6240151099ec9be1db9b277d852a5310ee7c3be8fd551d5832863bd7f41890c SHA512 d88eadb97abbb95611235d13982e2831e3570766315eef9205cd7a5717765b1f554befee7c9f01938b87f412f14c4f57e79dd78065773d96dfa6f058fd3acb7c diff --git a/sci-mathematics/scilab/scilab-6.0.2.ebuild b/sci-mathematics/scilab/scilab-6.0.2.ebuild new file mode 100644 index 000000000..1345ca324 --- /dev/null +++ b/sci-mathematics/scilab/scilab-6.0.2.ebuild @@ -0,0 +1,293 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +JAVA_PKG_OPT_USE="gui" +VIRTUALX_REQUIRED="manual" + +inherit autotools bash-completion-r1 check-reqs eutils flag-o-matic \ + fortran-2 java-pkg-opt-2 pax-utils toolchain-funcs virtualx xdg-utils + +DESCRIPTION="Scientific software package for numerical computations" +HOMEPAGE="http://www.scilab.org/" +SRC_URI="http://www.scilab.org/download/${PV}/${P}-src.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="" + +IUSE="debug doc emf fftw +gui +matio mpi nls openmp + static-libs test tk +umfpack +xcos" +REQUIRED_USE="xcos? ( gui ) doc? ( gui )" + +RESTRICT="test" + +IUSE_L10N="fr zh zh ru ca de es pt ja it uk pl cs" +L10N_DOC="fr pt ja ru" + +map_lang() { + local lang=${1/_/-} + case $1 in + # Retain the following, which have a specific subtag + de_*|en_*|pt_*|zh_*) ;; + # Consider all other xx_XX as duplicates of the generic xx tag + *_*) lang=${1%%_*} ;; + esac + echo ${lang} +} + +prev_l= +for l in ${IUSE_L10N}; do + l=$(map_lang ${l}) + [[ ${l} != "${prev_l}" ]] && IUSE+=" l10n_${l}" + prev_l=${l} +done +unset l prev_l + +CDEPEND=" + dev-libs/libpcre + dev-libs/libxml2:2 + sci-libs/hdf5[mpi=] + >=sci-libs/arpack-3 + sys-devel/gettext + sys-libs/ncurses:0= + sys-libs/readline:0= + virtual/lapack + emf? ( + dev-java/freehep-graphicsio:0 + dev-java/freehep-graphicsio-emf:0 + dev-java/freehep-graphics2d:0 + dev-java/freehep-io:0 + dev-java/freehep-graphicsbase:0 + ) + fftw? ( sci-libs/fftw:3.0 ) + gui? ( + dev-java/avalon-framework:4.2 + >=dev-java/batik-1.8:= + dev-java/commons-io:1 + dev-java/commons-logging:0 + >=dev-java/flexdock-1.2.4:0 + >=dev-java/fop-2.0:0 + ~dev-java/gluegen-2.2.4:2.2 + dev-java/javahelp:0 + dev-java/jeuclid-core:0 + dev-java/jgoodies-looks:2.6 + >=dev-java/jlatexmath-1.0.3:1 + >=dev-java/jlatexmath-fop-1.0.3:1 + ~dev-java/jogl-2.2.4:2.2 + >=dev-java/jrosetta-1.0.4:0 + >dev-java/lucene-2:=[contrib(-)] + dev-java/skinlf:0 + dev-java/xmlgraphics-commons:2 + virtual/opengl + xcos? ( dev-java/jgraphx:= ) + ) + matio? ( >=sci-libs/matio-1.5 ) + tk? ( dev-lang/tk:0= ) + umfpack? ( sci-libs/umfpack )" + +RDEPEND="${CDEPEND} + gui? ( >=virtual/jre-1.8 )" + +DEPEND="${CDEPEND} + virtual/pkgconfig + debug? ( dev-util/lcov ) + gui? ( + >=virtual/jdk-1.6 + doc? ( app-text/docbook-xsl-stylesheets + dev-java/xml-commons-external:1.4 + dev-java/saxon:9 ) + xcos? ( dev-lang/ocaml ) + ) + test? ( + dev-java/junit:4 + dev-java/ant-junit4:0 + gui? ( ${VIRTUALX_DEPEND} ) )" + +DOCS=( "ACKNOWLEDGEMENTS" "README_Unix" "Readme_Visual.txt" ) + +PATCHES=( + "${FILESDIR}/${PN}-6.1.0-followlinks.patch" + "${FILESDIR}/${PN}-6.1.0-gluegen.patch" + "${FILESDIR}/${PN}-6.1.0-accessviolation.patch" + "${FILESDIR}/${PN}-6.1.0-missinglib.patch" + "${FILESDIR}/${PN}-6.1.0-freehep.patch" + "${FILESDIR}/${PN}-6.1.0-libxml.patch" +) + +pkg_pretend() { + use doc && CHECKREQS_MEMORY="512M" check-reqs_pkg_pretend +} + +pkg_setup() { + if use openmp; then + if [[ $(tc-getCC) == *gcc* ]] && ! tc-has-openmp; then + ewarn "You are using a gcc without OpenMP capabilities" + die "Need an OpenMP capable compiler" + fi + FORTRAN_NEED_OPENMP=1 + fi + FORTRAN_STANDARD="77 90" + fortran-2_pkg_setup + #bug 8053 + #unset F77 + java-pkg-opt-2_pkg_setup + + # fails to compile in src/fortran/optml2.f:172:50 without this + append-fflags -fallow-argument-mismatch + + ALL_L10N="en_US" + ALL_L10N_DOC="en_US" + for l in ${IUSE_L10N}; do + use l10n_${l} && ALL_L10N="${ALL_L10N} ${l}" + done + for l in ${L10N_DOC}; do + use l10n_${l} && ALL_L10N_DOC="${ALL_L10N_DOC} ${l}" + done + export ALL_L10N ALL_L10N_DOC +} + +src_prepare() { + default + + # works for me on x86, but users are having + # trouble without see #282 on github + append-ldflags $(no-as-needed) + + # increases java heap to 512M when building docs (sync with cheqreqs above) + use doc && eapply "${FILESDIR}/${P}-java-heap.patch" + + # use the L10N variable that we set + sed -i -e "/^ALL_LINGUAS=/d" -e "/^ALL_LINGUAS_DOC=/d" -i configure.ac ||die + + # make sure the DOCBOOK_ROOT variable is set + sed -i -e "s/xsl-stylesheets-\*/xsl-stylesheets/g" bin/scilab* || die + + # remove self closing <br /> (error our with javadoc8) + # already upstream commit 2103082c + find . -name '*.java' -exec sed -i "s|<br />|<BR>|" {} \; ||die + + #add specific gentoo java directories + if use gui; then + sed -i -e "s|/usr/lib/jogl2|/usr/lib/jogl-2.2|" \ + -e "s|/usr/lib64/jogl2|/usr/lib64/jogl-2.2|" configure.ac || die + sed -i -e "s|/usr/lib/gluegen2|/usr/lib/gluegen-2.2|" \ + -e "s|/usr/lib64/gluegen2|/usr/lib64/gluegen-2.2|" \ + -e "s|AC_CHECK_LIB(\[gluegen2-rt|AC_CHECK_LIB([gluegen-rt|" \ + configure.ac || die + + sed -i -e "s/jogl2/jogl-2.2/" -e "s/gluegen2/gluegen-2.2/" \ + etc/librarypath.xml || die + fi + + mkdir jar || die + pushd jar >/dev/null + if use gui; then + java-pkg_jar-from jlatexmath-1,flexdock,skinlf + java-pkg_jar-from jgoodies-looks-2.6,jrosetta + java-pkg_jar-from avalon-framework-4.2,jeuclid-core + java-pkg_jar-from xmlgraphics-commons-2,commons-io-1 + java-pkg_jar-from jogl-2.2 jogl-all.jar jogl2.jar + java-pkg_jar-from gluegen-2.2 gluegen-rt.jar gluegen2-rt.jar + java-pkg_jar-from fop fop.jar + java-pkg_jar-from javahelp jhall.jar + java-pkg_jar-from jlatexmath-fop-1 + use xcos && java-pkg_jar-from jgraphx + if use doc; then + java-pkg_jar-from --build-only batik-1.8 batik-all.jar + java-pkg_jar-from --build-only saxon-9 saxon.jar saxon9he.jar + java-pkg_jar-from --build-only xml-commons-external-1.4 xml-apis-ext.jar + fi + fi + if use emf; then + java-pkg_jar-from freehep-graphicsio-emf,freehep-graphics2d + java-pkg_jar-from freehep-graphicsio,freehep-io,freehep-graphicsbase + fi + if use test; then + java-pkg_jar-from junit-4 junit.jar junit4.jar + java-pkg_jar-from ant-junit + fi + popd + + java-pkg-opt-2_src_prepare + eautoconf +} + +src_configure() { + if use gui; then + export JAVA_HOME="$(java-config -O)" + else + unset JAVAC + fi + + export BLAS_LIBS="$($(tc-getPKG_CONFIG) --libs blas)" + export LAPACK_LIBS="$($(tc-getPKG_CONFIG) --libs lapack)" + export F77_LDFLAGS="${LDFLAGS}" + + econf \ + --enable-relocatable \ + --disable-rpath \ + --with-docbook="${EPREFIX}/usr/share/sgml/docbook/xsl-stylesheets" \ + --disable-static-system-lib \ + $(use_enable debug) \ + $(use_enable debug code-coverage) \ + $(use_enable debug debug-C) \ + $(use_enable debug debug-CXX) \ + $(use_enable debug debug-fortran) \ + $(use_enable debug debug-java) \ + $(use_enable debug debug-linker) \ + $(use_enable doc build-help) \ + $(use_enable nls) \ + $(use_enable nls build-localization) \ + $(use_enable static-libs static) \ + $(use_enable test compilation-tests) \ + $(use_with emf) \ + $(use_with fftw) \ + $(use_with gui) \ + $(use_with gui javasci) \ + $(use_with matio) \ + $(use_with openmp) \ + $(use_with tk) \ + $(use_with umfpack) \ + $(use_with xcos) \ + $(use_with xcos modelica) \ + $(use_with mpi) +} + +src_compile() { + addpredict /proc/mtrr + default + pax-mark m .libs/scilab-bin + use doc && emake doc +} + +src_test() { + if use gui; then + Xemake check + else + emake check + fi +} + +src_install() { + default + prune_libtool_files --all + rm -rf "${D}"/usr/share/scilab/modules/*/tests ||die + newbashcomp "${FILESDIR}"/"${PN}".bash_completion "${PN}" + echo "SEARCH_DIRS_MASK=${EPREFIX}/usr/$(get_libdir)/scilab" \ + > 50-"${PN}" + insinto /etc/revdep-rebuild && doins "50-${PN}" +} + +pkg_postinst() { + xdg_mimeinfo_database_update + einfo "If you are using the NVIDIA binary drivers, and run into graphics" + einfo "crashes, you may try to run scilab as follows:" + einfo "EGL_DRIVER=egl_glx scilab" + einfo "See upstream http://bugzilla.scilab.org/show_bug.cgi?id=12940" +} + +pkg_postrm() { + xdg_mimeinfo_database_update +} diff --git a/sci-mathematics/scilab/scilab-6.1.0.ebuild b/sci-mathematics/scilab/scilab-6.1.0.ebuild index c2a4bf0e5..cbe726794 100644 --- a/sci-mathematics/scilab/scilab-6.1.0.ebuild +++ b/sci-mathematics/scilab/scilab-6.1.0.ebuild @@ -77,7 +77,7 @@ CDEPEND=" >=dev-java/jlatexmath-fop-1.0.3:1 ~dev-java/jogl-2.2.4:2.2 >=dev-java/jrosetta-1.0.4:0 - >dev-java/lucene-2:=[contrib] + >dev-java/lucene-2:=[contrib(-)] dev-java/skinlf:0 dev-java/xmlgraphics-commons:2 virtual/opengl |