git: 3edd10773b45 - main - biology/gatk: Add dependencies biology/fermi-lite and biology/gkl; Add python dependency for tests

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Sun, 04 Aug 2024 20:07:21 UTC
The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=3edd10773b45b981c57493e4eab9f9873bf42715

commit 3edd10773b45b981c57493e4eab9f9873bf42715
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2024-08-04 20:05:10 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2024-08-04 20:07:19 +0000

    biology/gatk: Add dependencies biology/fermi-lite and biology/gkl; Add python dependency for tests
---
 biology/gatk/Makefile         | 15 ++++++++++++---
 biology/gatk/files/gatk.sh.in |  4 +++-
 2 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/biology/gatk/Makefile b/biology/gatk/Makefile
index 1200e614cba3..3bbda36b4492 100644
--- a/biology/gatk/Makefile
+++ b/biology/gatk/Makefile
@@ -1,5 +1,6 @@
 PORTNAME=	gatk
 DISTVERSION=	4.6.0.0
+PORTREVISION=	1
 CATEGORIES=	biology java
 EXTRACT_ONLY=	${DISTNAME}${EXTRACT_SUFX}
 
@@ -11,8 +12,10 @@ LICENSE=	BSD3CLAUSE
 LICENSE_FILE=	${WRKSRC}/LICENSE.TXT
 
 BUILD_DEPENDS=	gradle:devel/gradle
+RUN_DEPENDS=	${LOCALBASE}/lib/libfml.so:biology/fermi-lite \
+		gkl>0:biology/gkl
 
-USES=		gettext-runtime
+USES=		gettext-runtime python:test
 USE_JAVA=	yes
 
 JAVA_VERSION=	17 # Java 8 fails on aarch64: Internal Error (assembler_aarch64.hpp:237), pid=76025, tid=0x000000000006e359 guarantee(val < (1U << nbits)) failed: Field too big for insn
@@ -27,10 +30,13 @@ NO_ARCH=	yes
 
 DEPS_CACHE_DIR=	${WRKDIR}
 
+TEST_ENV=	${MAKE_ENV} JAVA_TOOL_OPTIONS="-DLIBBWA_PATH=${PREFIX}/lib/libfml.so"
+
 PLIST_FILES=	bin/${PORTNAME} \
 		${JAVAJARDIR}/GenomeAnalysisTK-${PORTVERSION}.jar
 
-BINARY_ALIAS=	java=${JAVA}
+BINARY_ALIAS=	java=${JAVA} \
+		python=${PYTHON_CMD}
 
 # to rebuild the deps archive:
 #   1. set DEV_UPDATE_MODE=yes
@@ -109,6 +115,9 @@ do-install:
 
 do-test: # tests require WITH_LARGE_FILES=ON, and they use a lot of disk space
 	@cd ${WRKSRC} && \
-		${SETENV} ${MAKE_ENV} gradle test
+		${SETENV} ${TEST_ENV} gradle -DLIBBWA_PATH=${PREFIX}/lib/libfml.so test
+
+# tests results as of version 4.6.0.0_1: 288433 tests completed, 301 failed, 37 skipped, see https://github.com/broadinstitute/gatk/issues/8940
+# see https://github.com/broadinstitute/gatk/issues/8939: Tests fail to find libgkl libraries in /usr/local/lib
 
 .include <bsd.port.mk>
diff --git a/biology/gatk/files/gatk.sh.in b/biology/gatk/files/gatk.sh.in
index 913bb0dcce65..d3d5c0f7bf5a 100644
--- a/biology/gatk/files/gatk.sh.in
+++ b/biology/gatk/files/gatk.sh.in
@@ -22,4 +22,6 @@ if [ $MEM_OPTS_SET_BY_USER = "no" ]; then
 fi
 
 # execute the command
-%%JAVA%% $MEM_OPTS -jar %%JAVAJARDIR%%/GenomeAnalysisTK-%%PORTVERSION%%.jar "$@"
+# add the LIBBWA_PATH system parameter (not sure whether the env. var or argument alone are sufficient)
+JAVA_TOOL_OPTIONS="-DLIBBWA_PATH=%%PREFIX%%/lib/libfml.so" \
+%%JAVA%% $MEM_OPTS -DLIBBWA_PATH=%%PREFIX%%/lib/libfml.so -jar %%JAVAJARDIR%%/GenomeAnalysisTK-%%PORTVERSION%%.jar "$@"