commit:     f2514ab6256f2ab036304106a299988462e51f77
Author:     Alexander Puck Neuwirth <alexander <AT> neuwirth-informatik <DOT> 
de>
AuthorDate: Thu Nov 21 16:22:46 2024 +0000
Commit:     Alexander Puck Neuwirth <alexander <AT> neuwirth-informatik <DOT> 
de>
CommitDate: Thu Nov 21 17:00:53 2024 +0000
URL:        https://gitweb.gentoo.org/proj/sci.git/commit/?id=f2514ab6

sci-physics/oneloop: Fortran mpfun90 fixes

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

 .../oneloop/files/oneloop-3.6_p20200731-mpfun90.patch      | 14 ++++++++++++++
 sci-physics/oneloop/oneloop-3.6_p20200731.ebuild           | 12 ++++++++----
 2 files changed, 22 insertions(+), 4 deletions(-)

diff --git a/sci-physics/oneloop/files/oneloop-3.6_p20200731-mpfun90.patch 
b/sci-physics/oneloop/files/oneloop-3.6_p20200731-mpfun90.patch
new file mode 100644
index 000000000..2ec32afbd
--- /dev/null
+++ b/sci-physics/oneloop/files/oneloop-3.6_p20200731-mpfun90.patch
@@ -0,0 +1,14 @@
+--- a/src/avh_olo_boxc.f90     2024-11-21 17:54:03.444134677 +0100
++++ b/src/avh_olo_boxc.f90     2024-11-21 17:55:47.760664651 +0100
+@@ -179,9 +179,9 @@
+      aptmp(3) = areal((pp(5)-pp(3)-pp(4))**2-4*pp(3)*pp(4))
+      aptmp(4) = areal((pp(6)-pp(4)-pp(1))**2-4*pp(4)*pp(1))
+      icase = sort_4(aptmp)
+-     if (all(aptmp.ge.rZRO)) then
++     if ((aptmp(1).ge.rZRO) .and. (aptmp(2).ge.rZRO) .and. (aptmp(3).ge.rZRO) 
.and. (aptmp(4).ge.rZRO) ) then
+        icase = prmB(icase)
+-     elseif (all(aptmp.le.rZRO)) then
++     elseif ((aptmp(1).le.rZRO) .and. (aptmp(2).le.rZRO) 
.and.(aptmp(3).le.rZRO) .and.(aptmp(4).le.rZRO) ) then
+        errorcode = errorcode+1
+        if (eunit.ge.0) write(eunit,*) 'ERROR in OneLOop boxc: ' &
+          ,'no positive lambda, returning 0'

diff --git a/sci-physics/oneloop/oneloop-3.6_p20200731.ebuild 
b/sci-physics/oneloop/oneloop-3.6_p20200731.ebuild
index e25833759..b022ed653 100644
--- a/sci-physics/oneloop/oneloop-3.6_p20200731.ebuild
+++ b/sci-physics/oneloop/oneloop-3.6_p20200731.ebuild
@@ -27,9 +27,9 @@ REQUIRED_USE="
 "
 
 DEPEND="
-       qpkind? ( sci-libs/qd )
-       qpkind16? ( sci-libs/qd )
-       arprec? ( sci-libs/arprec )
+       qpkind? ( sci-libs/qd[fortran] )
+       qpkind16? ( sci-libs/qd[fortran] )
+       arprec? ( sci-libs/arprec[fortran] )
        mpfun90? ( sci-libs/mpfun90 )
 "
 RDEPEND="${DEPEND}"
@@ -38,6 +38,10 @@ BDEPEND="
        app-arch/unzip
 "
 
+PATCHES=(
+       "${FILESDIR}"/${P}-mpfun90.patch
+)
+
 src_configure() {
        tc-export FC
        # set fortran
@@ -92,7 +96,7 @@ src_compile() {
        ${EPYTHON} ./create.py source || die "Failed to compile"
        # create.py does not use soname, so we do it ourself
        #./create.py dynamic || die
-       ${FC} -O -fPIC -c avh_olo.f90 -o avh_olo.o || die
+       ${FC} ${FFLAGS} -O -fPIC -I"${ESYSROOT}"/usr/include 
-I"${ESYSROOT}"/usr/include/qd -c avh_olo.f90 -o avh_olo.o || die
        ${FC} ${LDFLAGS} -Wl,-soname,libavh_olo.so -shared -o libavh_olo.so *.o 
|| die
 }
 

Reply via email to