From 48723b7fbd072415f642f5cbf8dd51f74168e2e9 Mon Sep 17 00:00:00 2001 From: Jauhien Piatlicki Date: Thu, 27 Aug 2015 00:20:55 +0200 Subject: [PATCH] sci-physics/herwig++: initial import from the science overlay Package-Manager: portage-2.2.20.1 --- sci-physics/herwig++/Manifest | 1 + .../files/herwig++-2.6.3-looptools.patch | 64 +++++++++++++++++++ sci-physics/herwig++/herwig++-2.7.1.ebuild | 59 +++++++++++++++++ sci-physics/herwig++/metadata.xml | 20 ++++++ 4 files changed, 144 insertions(+) create mode 100644 sci-physics/herwig++/Manifest create mode 100644 sci-physics/herwig++/files/herwig++-2.6.3-looptools.patch create mode 100644 sci-physics/herwig++/herwig++-2.7.1.ebuild create mode 100644 sci-physics/herwig++/metadata.xml diff --git a/sci-physics/herwig++/Manifest b/sci-physics/herwig++/Manifest new file mode 100644 index 0000000000000..5f93f048b626b --- /dev/null +++ b/sci-physics/herwig++/Manifest @@ -0,0 +1 @@ +DIST Herwig++-2.7.1.tar.bz2 3388956 SHA256 80a189376bb65f5ec4e64f42e76c00ea9102d8224010563a424fc11e619a6ad6 SHA512 643f389f13f22b30d0adb4ca601a11c2686f6db4746af51136601954af2ec20eb0af7b45981e764d8b71cb7206bfe310beea1fee069972868955b1f024b8d5e3 WHIRLPOOL 5336136e90c4f90e4e08a24a4d753ab61d1c4b033a23228ebb5bc039175987f4d70d7162a2319b635644a3fbaf24c9bbc1b901e92abb4bcaad27884e429d472a diff --git a/sci-physics/herwig++/files/herwig++-2.6.3-looptools.patch b/sci-physics/herwig++/files/herwig++-2.6.3-looptools.patch new file mode 100644 index 0000000000000..0c802977db6ae --- /dev/null +++ b/sci-physics/herwig++/files/herwig++-2.6.3-looptools.patch @@ -0,0 +1,64 @@ +--- Looptools/Makefile.am ++++ Looptools/Makefile.am +@@ -1,58 +1,12 @@ +-noinst_LTLIBRARIES = libHwLooptoolsXFC.la libHwLooptoolsCFC.la +-noinst_LTLIBRARIES += libHwLooptools.la +- +-EXTRA_DIST = include/lt.h include/ftypes.h include/ff.h include/ffwarn.h \ +- include/fferr.h include/defs.h include/looptools.h include/ffperm5.h \ +- include/clooptools.h include/cexternals.h include/externals.h \ +- util/solve-LU.F util/solve-LU.h util/solve-Eigen.F +- +-theXFCSOURCES = \ +-A/A0.F A/A00.F A/ffxa0.F A/ffca0.F B/Bget.F \ +-B/Bcoeff.F B/BcoeffC.F B/Bcoeffa.F B/Bcoeffb.F B/ffxb0.F \ +-B/ffcb0.F B/ffxb1.F B/ffcb1.F B/ffxb2p.F B/ffcb2p.F \ +-B/ffxdb0.F B/ffcdb0.F B/ffxdb1.F B/ffdel2.F B/ffcel2.F \ +-C/C0.F C/C0C.F C/Cget.F C/ffxc0.F C/ffcc0.F \ +-C/ffxc0i.F C/ffxc0p.F C/ffxc0p0.F C/ffcc0p.F C/ffdxc0.F \ +-C/ffdel3.F C/ffcel3.F D/D0.F D/D0C.F D/Dget.F \ +-D/ffxd0.F D/ffxd0h.F D/ffxd0i.F D/ffxd0p.F D/ffxd0m0.F \ +-D/ffxd0tra.F D/ffxdbd.F D/ffdcc0.F D/ffdel4.F D/ffd0c.F \ +-D/ffTn.F D/ffT13.F D/ffS2.F D/ffS3n.F D/ffRn.F \ +-E/E0.F E/Eget.F E/Ecoeffa.F E/Ecoeffb.F E/ffxe0.F \ +-E/ffdel5.F util/ini.F util/auxCD.F util/solve.F util/Dump.F \ +-util/Li2.F util/ffinit.F util/ffxli2.F util/ffcli2.F util/ffxxyz.F \ +-util/ffcxyz.F util/ffcrr.F util/ffcxr.F util/fftran.F util/ffabcd.F \ +-util/ff2dl2.F util/ffcxs3.F util/ffcxs4.F util/ffdcxs.F util/ffbndc.F +- +-## the following need -DCOMPLEXPARA +-theCFCSOURCES = \ +-A/A0.F A/A00.F B/Bget.F B/Bcoeffa.F C/Cget.F D/Dget.F E/E0.F \ +-E/Eget.F E/Ecoeffa.F E/Ecoeffb.F util/solve.F util/Dump.F util/Li2.F ++noinst_LTLIBRARIES = libHwLooptools.la + + commonCPPFLAGS = $(AM_CPPFLAGS) -I$(srcdir)/include + +-libHwLooptoolsXFC_la_SOURCES = $(theXFCSOURCES) +-libHwLooptoolsXFC_la_CPPFLAGS = $(commonCPPFLAGS) +-libHwLooptoolsXFC_la_FCFLAGS = $(AM_FCFLAGS) -ffixed-line-length-none +-libHwLooptoolsXFC_la_FFLAGS = $(AM_FFLAGS) -ffixed-line-length-none +- +-libHwLooptoolsCFC_la_SOURCES = $(theCFCSOURCES) +-libHwLooptoolsCFC_la_CPPFLAGS = $(commonCPPFLAGS) -DCOMPLEXPARA +-libHwLooptoolsCFC_la_FCFLAGS = $(AM_FCFLAGS) -ffixed-line-length-none +-libHwLooptoolsCFC_la_FFLAGS = $(AM_FFLAGS) -ffixed-line-length-none +- +-## installed already from "include/Makefile.am" +-## noinst_HEADERS = include/clooptools.h +- +-##if NEED_APPLE_FIXES +-##libHwLooptoolsXFC_la_LDFLAGS = -Wl,-single_module +-##libHwLooptoolsCFC_la_LDFLAGS = -Wl,-single_module +-##endif +- +-libHwLooptools_la_SOURCES = util/cache.c clooptools.cc ++libHwLooptools_la_SOURCES = clooptools.cc + libHwLooptools_la_CXXFLAGS = $(AM_CXXFLAGS) -Wno-strict-aliasing + libHwLooptools_la_CPPFLAGS = $(commonCPPFLAGS) + libHwLooptools_la_CFLAGS = $(AM_CFLAGS) -std=c99 +-libHwLooptools_la_LIBADD = libHwLooptoolsXFC.la libHwLooptoolsCFC.la ++libHwLooptools_la_LIBADD = -looptools + + + ## libHwLooptoolsHelper2_la_SOURCES = clooptools.cc diff --git a/sci-physics/herwig++/herwig++-2.7.1.ebuild b/sci-physics/herwig++/herwig++-2.7.1.ebuild new file mode 100644 index 0000000000000..4479a2c97b430 --- /dev/null +++ b/sci-physics/herwig++/herwig++-2.7.1.ebuild @@ -0,0 +1,59 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +AUTOTOOLS_AUTORECONF=1 +AUTOTOOLS_IN_SOURCE_BUILD=1 + +inherit autotools-utils eutils flag-o-matic multilib + +MYP=Herwig++-${PV} + +DESCRIPTION="High-Energy Physics event generator" +HOMEPAGE="http://herwig.hepforge.org/" +SRC_URI="http://www.hepforge.org/archive/herwig/${MYP}.tar.bz2" + +LICENSE="GPL-2" + +SLOT="0/15" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="c++11 fastjet static-libs" + +# >sci-physics/looptools-2.8 leads to misoperation +# and failing tests (it lacks some symbols) +RDEPEND=" + dev-libs/boost:0= + sci-libs/gsl:0= + <=sci-physics/looptools-2.8:0= + >=sci-physics/thepeg-1.9.2:0= + fastjet? ( sci-physics/fastjet:0= )" +DEPEND="${RDEPEND} + virtual/fortran" + +S="${WORKDIR}/${MYP}" + +src_prepare() { + epatch "${FILESDIR}"/${PN}-2.6.3-looptools.patch + find -name 'Makefile.am' -exec \ + sed -i -e '1ipkgdatadir=$(datadir)/herwig++' {} \; || die + autotools-utils_src_prepare +} + +src_configure() { + use prefix && \ + append-ldflags -Wl,-rpath,"${EPREFIX}"/usr/$(get_libdir)/ThePEG + local myeconfargs=( + --with-boost="${EPREFIX}"/usr + --with-thepeg="${EPREFIX}"/usr + $(use_enable c++11 stdcxx11) + $(use_with fastjet fastjet "${EPREFIX}"/usr) + ) + autotools-utils_src_configure +} + +pkg_preinst () { + sed -i -e "s|${ED}||g" "${ED}"/usr/share/herwig++/defaults/PDF.in || die + sed -i -e "s|${ED}||g" "${ED}"/usr/share/herwig++/HerwigDefaults.rpo || die +} diff --git a/sci-physics/herwig++/metadata.xml b/sci-physics/herwig++/metadata.xml new file mode 100644 index 0000000000000..73787df5d2473 --- /dev/null +++ b/sci-physics/herwig++/metadata.xml @@ -0,0 +1,20 @@ + + + +sci-physics + + jauhien@gentoo.org + + + Herwig++ is a completely new event generator, written in C++. + It is built on the experience gained with the well-known + event generator HERWIG. The aim is to provide a multi purpose + event generator with similar or improved capabilities (like angular + ordered parton evolution and the cluster hadronization model). + + + Build Herwig++ using the C++11 standard. + Experimental feature, not for production use. + Adds support for sci-physics/fastjet + +