# Copyright 2022-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 PYTHON_COMPAT=( python3_{11..12} ) inherit python-single-r1 flag-o-matic autotools optfeature bash-completion-r1 MY_PN="Rivet" MY_PF=${MY_PN}-${PV} DESCRIPTION="Rivet toolkit (Robust Independent Validation of Experiment and Theory)" HOMEPAGE=" https://rivet.hepforge.org/ https://gitlab.com/hepcedar/rivet " if [[ ${PV} == 9999 ]]; then inherit git-r3 EGIT_REPO_URI="https://gitlab.com/hepcedar/rivet" else SRC_URI="https://www.hepforge.org/archive/rivet/${MY_PF}.tar.gz -> ${P}.tar.gz" S=${WORKDIR}/${MY_PF} KEYWORDS="~amd64" fi LICENSE="GPL-3+" SLOT="4" IUSE="+zlib +python +highfive" REQUIRED_USE=" python? ( ${PYTHON_REQUIRED_USE} ) " RDEPEND=" >=sci-physics/fastjet-3.4.0[plugins] >=sci-physics/fastjet-contrib-1.048 >=sci-physics/hepmc-3.1.1:3=[-cm(-),gev(+)] highfive? ( sci-libs/HighFive sci-libs/hdf5[cxx] ) sci-libs/gsl zlib? ( sys-libs/zlib ) python? ( ${PYTHON_DEPS} $(python_gen_cond_dep ' dev-python/matplotlib[${PYTHON_USEDEP}] ') >=sci-physics/yoda-2[${PYTHON_SINGLE_USEDEP}] ) !python? ( >=sci-physics/yoda-2 ) " DEPEND="${RDEPEND}" BDEPEND=" app-shells/bash python? ( $(python_gen_cond_dep ' >=dev-python/cython-0.29.24[${PYTHON_USEDEP}] ') ) " PATCHES=( "${FILESDIR}"/${PN}-3.1.6-binreloc.patch ) pkg_setup() { use python && python-single-r1_pkg_setup } src_prepare() { default eautoreconf } src_configure() { # Eigen complains about alignment (see https://gitlab.com/libeigen/eigen/-/issues/2523). # does this affect more cpus? replace-cpu-flags znver1 x86-64 # not posix compatible, only bash CONFIG_SHELL=${ESYSROOT}/bin/bash econf \ $(use_with zlib zlib "${ESYSROOT}/usr") \ --with-hepmc3="${ESYSROOT}/usr" \ $(usex highfive "--with-highfive=${ESYSROOT}/usr" "") \ --with-yoda="${ESYSROOT}/usr" \ --with-fastjet="${ESYSROOT}/usr" \ $(use_enable python pyext) \ $(usex python CYTHON="${ESYSROOT}/usr/bin/cython") } src_install() { default use python && python_optimize find "${ED}" -name '*.la' -delete || die if use python ; then newbashcomp "${ED}"/etc/bash_completion.d/${PN}-completion ${PN} bashcomp_alias ${PN} \ ${PN}-config \ ${PN}-build \ ${PN}-cmphistos \ make-plots \ ${PN}-mkhtml-tex \ ${PN}-mkhtml rm "${ED}"/etc/bash_completion.d/${PN}-completion || die fi } pkg_postinstall() { optfeature "latex plotting support" virtual/latex-base media-gfx/imagemagick app-text/ghostscript-gpl optfeature "python plotting support" dev-python/matplotlib }