public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Alexander Puck Neuwirth" <alexander@neuwirth-informatik.de>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/sci:master commit in: sci-physics/openloops/
Date: Thu, 12 Dec 2024 15:20:07 +0000 (UTC)	[thread overview]
Message-ID: <1734016765.d180ae1fc1c0fbd40b45f9576dfa8adba563d7b8.alexander@gentoo> (raw)

commit:     d180ae1fc1c0fbd40b45f9576dfa8adba563d7b8
Author:     Alexander Puck Neuwirth <alexander <AT> neuwirth-informatik <DOT> de>
AuthorDate: Thu Dec 12 13:34:51 2024 +0000
Commit:     Alexander Puck Neuwirth <alexander <AT> neuwirth-informatik <DOT> de>
CommitDate: Thu Dec 12 15:19:25 2024 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=d180ae1f

sci-physics/openloops: offer processes

Signed-off-by: Alexander Puck Neuwirth <alexander <AT> neuwirth-informatik.de>

 sci-physics/openloops/metadata.xml                 |  4 ++
 ...oops-2.1.3.ebuild => openloops-2.1.3-r1.ebuild} | 56 ++++++++++++++++------
 2 files changed, 46 insertions(+), 14 deletions(-)

diff --git a/sci-physics/openloops/metadata.xml b/sci-physics/openloops/metadata.xml
index 5bec6ac4c..a32ce734b 100644
--- a/sci-physics/openloops/metadata.xml
+++ b/sci-physics/openloops/metadata.xml
@@ -19,5 +19,9 @@
     <flag name="collier">Build with collier</flag>
     <flag name="extra">Build libs with extra</flag>
     <flag name="cuttools">Build with cuttools</flag>
+    <flag name="ppllj">Build pp to llj process</flag>
+    <flag name="pplljj">Build pp to lljj process</flag>
+    <flag name="pplnj-ckm">Build pp to lnj process with ckm matrix</flag>
+    <flag name="pplnjj-ckm">Build pp to lljj process with ckm matrix</flag>
   </use>
 </pkgmetadata>

diff --git a/sci-physics/openloops/openloops-2.1.3.ebuild b/sci-physics/openloops/openloops-2.1.3-r1.ebuild
similarity index 62%
rename from sci-physics/openloops/openloops-2.1.3.ebuild
rename to sci-physics/openloops/openloops-2.1.3-r1.ebuild
index a53eb1f9e..876bbdaa3 100644
--- a/sci-physics/openloops/openloops-2.1.3.ebuild
+++ b/sci-physics/openloops/openloops-2.1.3-r1.ebuild
@@ -14,13 +14,23 @@ DESCRIPTION="Evaluation of tree and one-loop matrix elements for any Standard Mo
 HOMEPAGE="https://openloops.hepforge.org/index.html"
 #SRC_URI="https://openloops.hepforge.org/downloads?f=${MY_P}.tar.gz -> ${MY_P}.tar.gz"
 #S="${WORKDIR}/${MY_P}"
-SRC_URI="https://gitlab.com/openloops/OpenLoops/-/archive/${MY_P}/${MY_PN}-${MY_P}.tar.bz2"
+# since the files are not publicly versioned we mirror them from
+# https://www.physik.uzh.ch/data/openloops/repositories/public/processes/2
+COMMON_URI="https://gitlab.com/openloopsmirror/"
+
+SRC_URI="
+	https://gitlab.com/openloops/OpenLoops/-/archive/${MY_P}/${MY_PN}-${MY_P}.tar.bz2
+	ppllj? ( ${COMMON_URI}/ppllj/-/archive/a3a36918/ppllj-a3a36918.tar.bz2 )
+	pplljj? ( ${COMMON_URI}/pplljj/-/archive/93a6e3f7/pplljj-93a6e3f7.tar.bz2 )
+	pplnj-ckm? ( ${COMMON_URI}/pplnj_ckm/-/archive/4d8743c/pplnj_ckm-4d8743c.tar.bz2 )
+	pplnjj-ckm? ( ${COMMON_URI}/pplnjj_ckm/-/archive/d3d5302/pplnjj_ckm-d3d5302.tar.bz2 )
+"
 S="${WORKDIR}/${MY_PN}-${MY_P}"
 
 LICENSE="GPL-3+"
 SLOT="0"
 KEYWORDS="~amd64"
-IUSE="+collier +cuttools +extra"
+IUSE="+collier +cuttools +extra ppllj pplljj pplnj-ckm pplnjj-ckm"
 REQUIRED_USE="${PYTHON_REQUIRED_USE}"
 
 RDEPEND="
@@ -39,7 +49,7 @@ PATCHES=(
 src_prepare() {
 	default
 	mv openloops.cfg.tmpl openloops.cfg || die
-	sed -i "s|scons -Q|scons -Q -C /opt/${MY_P}/|g" openloops || die
+	sed -i "s|\\\$BASEDIR/scons -Q|scons -Q -C /opt/${MY_P}/|g" openloops || die
 	if use extra ; then
 		sed -i "s|#compile_extra.*|compile_extra = 1|" openloops.cfg || die
 	fi
@@ -54,9 +64,7 @@ src_prepare() {
 	cc = $(tc-getCC)
 	cxx = $(tc-getCXX)
 	fortran_compiler = $(tc-getFC)
-	process_src_dir = ${EPREFIX}/opt/${MY_P}/process_src/
-	process_obj_dir = ${EPREFIX}/opt/${MY_P}/process_obj/
-	process_lib_dir = ${EPREFIX}/opt/${MY_P}/proclib/
+
 	release = $PV
 	import_env = @all
 	EOF
@@ -70,6 +78,22 @@ src_prepare() {
 
 src_compile() {
 	escons --cache-disable
+	for OLPROC in ppllj pplljj pplnj_ckm pplnjj_ckm;  do
+		if use ${OLPROC//_/-}; then
+			# move downloaded files to src
+			mkdir -p "${S}/process_src/${OLPROC}" || die
+			mv "${WORKDIR}/${OLPROC}-"*/* "${S}/process_src/${OLPROC}" || die
+			# compile it
+			escons auto=${OLPROC} generator=0
+		fi
+	done
+
+	# insert these later since we are done with compiling in ${S} now
+	cat <<-EOF >> openloops.cfg || die
+	process_src_dir = ${EPREFIX}/opt/${MY_P}/process_src/
+	process_obj_dir = ${EPREFIX}/opt/${MY_P}/process_obj/
+	process_lib_dir = ${EPREFIX}/usr/$(get_libdir)/
+	EOF
 }
 
 src_install() {
@@ -77,9 +101,17 @@ src_install() {
 	dobin openloops
 	cd include || die
 	doheader openloops.h
-	cd ../lib || die
+
 	# Also install so.version links
+	cd ../lib || die
 	dolib.so libolcommon.so* libopenloops.so* librambo.so* libtrred.so*
+	# install processes
+	cd ../proclib || die
+	dolib.so *.so
+	# also install the process info files
+	insinto /usr/$(get_libdir)/
+	doins *.info
+
 	cd ../lib_src/olcommon/mod || die
 	doheader *.mod
 	cd ../../openloops/mod || die
@@ -94,15 +126,11 @@ src_install() {
 	doins openloops.cfg SConstruct
 	doins -r pyol
 
-	# Previous method of allowing everyone everything
-	# maybe better to use a group for that
-	# for now like lhapdf just let root install
-	#fperms -R a=u /opt/${MY_P}
-	#fperms a=u /opt/${MY_P}
-
+	# no need to also install the source code
+	#doins -r process_src
 }
 
 pkg_postinst() {
 	elog "Install processes with openloops libinstall."
-	elog "They are installed in /opt/${MY_P}/proclib."
+	elog "They are installed in ${EPREFIX}/usr/$(get_libdir)/."
 }


             reply	other threads:[~2024-12-12 15:20 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-12 15:20 Alexander Puck Neuwirth [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-12-13 10:42 [gentoo-commits] proj/sci:master commit in: sci-physics/openloops/ Alexander Puck Neuwirth
2025-01-22 14:03 Alexander Puck Neuwirth
2025-02-13 17:58 Alexander Puck Neuwirth
2025-02-20 14:02 Alexander Puck Neuwirth

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1734016765.d180ae1fc1c0fbd40b45f9576dfa8adba563d7b8.alexander@gentoo \
    --to=alexander@neuwirth-informatik.de \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox