diff options
author | V3n3RiX <venerix@koprulu.sector> | 2024-04-18 12:04:39 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2024-04-18 12:04:39 +0100 |
commit | 2d01b3d133c0fbf17de8d7b47905585af88bd6e4 (patch) | |
tree | f74eb9a3d16ed25f8c15b825f4d28b759ae99a42 /sci-mathematics/cadabra/cadabra-2.4.5.5.ebuild | |
parent | 97bacba3ead078e5db8b87ab651a3ffa7d82f60f (diff) |
gentoo auto-resync : 18:04:2024 - 12:04:39
Diffstat (limited to 'sci-mathematics/cadabra/cadabra-2.4.5.5.ebuild')
-rw-r--r-- | sci-mathematics/cadabra/cadabra-2.4.5.5.ebuild | 112 |
1 files changed, 112 insertions, 0 deletions
diff --git a/sci-mathematics/cadabra/cadabra-2.4.5.5.ebuild b/sci-mathematics/cadabra/cadabra-2.4.5.5.ebuild new file mode 100644 index 000000000000..de5c161c94ef --- /dev/null +++ b/sci-mathematics/cadabra/cadabra-2.4.5.5.ebuild @@ -0,0 +1,112 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +MAJOR="$(ver_cut 1)" +CADABRA="${PN}${MAJOR}" + +PYTHON_COMPAT=( python3_{10..12} ) + +inherit xdg-utils python-single-r1 cmake + +DESCRIPTION="Field-theory motivated approach to computer algebra" +HOMEPAGE="https://cadabra.science/ + https://github.com/kpeeters/cadabra2/" + +if [[ "${PV}" == *9999* ]] ; then + inherit git-r3 + + EGIT_REPO_URI="https://github.com/kpeeters/${CADABRA}.git" +else + SRC_URI="https://github.com/kpeeters/${CADABRA}/archive/${PV}.tar.gz + -> ${P}.tar.gz" + S="${WORKDIR}/${CADABRA}-${PV}" + + KEYWORDS="~amd64 ~x86" +fi + +LICENSE="GPL-3" +SLOT="0/${MAJOR}" +IUSE="gui +jupyter test" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" +RESTRICT="!test? ( test )" + +RDEPEND=" + ${PYTHON_DEPS} + app-text/dvipng + dev-cpp/glibmm:2 + dev-db/sqlite:3= + dev-libs/boost:= + dev-libs/gmp:=[cxx] + dev-libs/jsoncpp:= + dev-libs/libsigc++:2 + dev-texlive/texlive-basic + $(python_gen_cond_dep ' + dev-python/gmpy:2[${PYTHON_USEDEP}] + dev-python/matplotlib[${PYTHON_USEDEP}] + dev-python/sympy[${PYTHON_USEDEP}] + jupyter? ( dev-python/jupyter[${PYTHON_USEDEP}] ) + ') + gui? ( + dev-cpp/gtkmm:3.0 + ) +" +DEPEND=" + ${RDEPEND} +" +BDEPEND=" + $(python_gen_cond_dep 'dev-python/pybind11[${PYTHON_USEDEP}]') +" + +PATCHES=( "${FILESDIR}/${CADABRA}-CMake.patch" ) + +DOCS=( CODE_OF_CONDUCT.md CONTRIBUTING.md JUPYTER.rst README.rst ) + +xdg_update() { + if use gui ; then + xdg_icon_cache_update + xdg_desktop_database_update + xdg_mimeinfo_database_update + fi +} + +src_prepare() { + # Clean postinst script which calls libtool and icon-cache update + echo '#!/bin/sh' > "${S}/config/postinst.in" || die + + # Fix "PYTHON_EXECUTABLE" in Jupyter kernel + sed -i "s|@PYTHON_EXECUTABLE@|${EPYTHON}|" \ + "${S}/jupyterkernel/kernelspec/kernel.json.in" || die + + cmake_src_prepare +} + +src_configure() { + local -a mycmakeargs=( + -DENABLE_SYSTEM_JSONCPP=ON + -DPACKAGING_MODE=ON + -DUSE_PYTHON_3=ON + -DBUILD_AS_CPP_LIBRARY=OFF + -DENABLE_JUPYTER=OFF # special Xeus Jupyter kernel (uses xtl) + -DENABLE_MATHEMATICA=OFF + -DINSTALL_TARGETS_ONLY=OFF + -DBUILD_TESTS="$(usex test)" + -DENABLE_FRONTEND="$(usex gui)" + -DENABLE_PY_JUPYTER="$(usex jupyter)" + ) + cmake_src_configure +} + +src_install() { + cmake_src_install + python_optimize +} + +pkg_postinst() { + xdg_update +} + +pkg_postrm() { + xdg_update +} |