You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

94 lines
2.2 KiB

# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=6
inherit autotools elisp-common java-pkg-opt-2
MY_P=ThePEG-${PV}
DESCRIPTION="Toolkit for High Energy Physics Event Generation"
HOMEPAGE="http://home.thep.lu.se/ThePEG/"
TEST_URI="http://www.hepforge.org/archive/lhapdf/pdfsets/current"
SRC_URI="http://www.hepforge.org/archive/thepeg/${MY_P}.tar.bz2
test? ( hepmc? (
${TEST_URI}/cteq6ll.LHpdf
${TEST_URI}/cteq5l.LHgrid
${TEST_URI}/GRV98nlo.LHgrid
${TEST_URI}/MRST2001nlo.LHgrid ) )"
LICENSE="GPL-2"
SLOT="0/20"
KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
IUSE="c++11 emacs fastjet hepmc java lhapdf rivet static-libs test zlib"
RDEPEND="
sci-libs/gsl:0=
emacs? ( virtual/emacs )
fastjet? ( sci-physics/fastjet:0= )
hepmc? ( sci-physics/hepmc:0= )
java? ( >=virtual/jre-1.5:* )
lhapdf? ( >=sci-physics/lhapdf-6.0:0= )
rivet? ( sci-physics/rivet:0= )
zlib? ( sys-libs/zlib:0= )"
DEPEND="${RDEPEND}
test? ( sys-process/time )"
S="${WORKDIR}/${MY_P}"
PATCHES=( "${FILESDIR}"/${PN}-1.8.3-java.patch )
src_prepare() {
find -name 'Makefile.am' -exec \
sed -i -e '1ipkgdatadir=$(datadir)/thepeg' {} \; || die
# trick to force c++ linking
sed -i \
-e '1inodist_EXTRA_libThePEG_la_SOURCES = dummy.cxx' \
-e '/dist_pkgdata_DATA = ThePEG.el/d' \
lib/Makefile.am || die
default
java-pkg-opt-2_src_prepare
eautoreconf
}
src_configure() {
econf \
$(use_enable static-libs static) \
$(use_enable c++11 stdcxx11) \
$(use_with fastjet fastjet "${EPREFIX}"/usr) \
$(use_with hepmc hepmc "${EPREFIX}"/usr) \
$(use_with java javagui) \
$(use_with lhapdf lhapdf "${EPREFIX}"/usr) \
$(use_with rivet rivet "${EPREFIX}"/usr) \
$(use_with zlib zlib "${EPREFIX}"/usr)
}
src_compile() {
default
use emacs && elisp-compile lib/ThePEG.el
}
src_test() {
emake LHAPATH="${DISTDIR}" check
}
src_install() {
default
use emacs && elisp-install ${PN} lib/ThePEG.el{,c}
use java && java-pkg_newjar java/ThePEG.jar
cat <<-EOF > "${T}"/50${PN}
LDPATH="${EPREFIX}/usr/$(get_libdir)/ThePEG"
EOF
doenvd "${T}"/50${PN}
}
pkg_postinst() {
use emacs && elisp-site-regen
}
pkg_postrm() {
use emacs && elisp-site-regen
}