git: afd7a4fcb4e3 - main - math/R-cran-XLConnect: unbreak the port

From: Ronald Klop <ronald_at_FreeBSD.org>
Date: Wed, 08 Oct 2025 14:18:09 UTC
The branch main has been updated by ronald:

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

commit afd7a4fcb4e32238773ac31b819c22d4f60ba4fc
Author:     Ronald Klop <ronald@FreeBSD.org>
AuthorDate: 2025-10-06 20:27:10 +0000
Commit:     Ronald Klop <ronald@FreeBSD.org>
CommitDate: 2025-10-08 14:17:44 +0000

    math/R-cran-XLConnect: unbreak the port
    
    Replace symlinks on the classpath with the actual path to the jars.
    This works in 'make test' as well as in the actual installed package.
    
    PR:     289974
---
 math/R-cran-XLConnect/Makefile               | 23 +++--------------------
 math/R-cran-XLConnect/files/patch-R_onLoad.R | 22 +++++++++++++++++-----
 math/R-cran-XLConnect/pkg-plist              | 16 ----------------
 3 files changed, 20 insertions(+), 41 deletions(-)

diff --git a/math/R-cran-XLConnect/Makefile b/math/R-cran-XLConnect/Makefile
index 35a8b2e671c1..e15ea4fd742b 100644
--- a/math/R-cran-XLConnect/Makefile
+++ b/math/R-cran-XLConnect/Makefile
@@ -1,5 +1,5 @@
 PORTNAME=	XLConnect
-PORTVERSION=	1.2.2
+DISTVERSION=	1.2.2
 CATEGORIES=	math
 DISTNAME=	${PORTNAME}_${PORTVERSION}
 
@@ -26,24 +26,7 @@ TEST_DEPENDS=	R-cran-zoo>0:math/R-cran-zoo	\
 
 USES=		cran java
 
-# See PR 272855
-BROKEN=		a recent default JDK is required for a full apache-poi with bouncycastle
-
-DEP_JARS=	commons-codec commons-collections4 commons-compress commons-io	\
-		commons-lang3 commons-math log4j-api poi poi-ooxml poi-ooxml-full\
-		SparseBitSet xmlbeans
-
-post-stage:
-.for j in ${DEP_JARS}
-	${LN} -sf ${JAVALIBDIR}/${j}.jar ${STAGEDIR}${PREFIX}/${R_MOD_DIR}/java/
-.endfor
-	${LN} -sf ${JAVALIBDIR}/commons-lang3.jar	\
-		${STAGEDIR}${PREFIX}/${R_MOD_DIR}/java/commons-lang3-3.16.0.jar
-	${LN} -sf ${JAVALIBDIR}/commons-math.jar	\
-		${STAGEDIR}${PREFIX}/${R_MOD_DIR}/java/commons-math3.jar
-	${LN} -sf ${JAVALIBDIR}/commons-io.jar	\
-		${STAGEDIR}${PREFIX}/${R_MOD_DIR}/java/commons-io-2.18.0.jar
-	${LN} -sf ${JAVALIBDIR}/commons-codec.jar	\
-		${STAGEDIR}${PREFIX}/${R_MOD_DIR}/java/commons-codec-1.18.0.jar
+post-patch:
+	@${REINPLACE_CMD} -e 's|JAVALIBDIR|${JAVALIBDIR}|g' ${WRKSRC}/R/onLoad.R
 
 .include <bsd.port.mk>
diff --git a/math/R-cran-XLConnect/files/patch-R_onLoad.R b/math/R-cran-XLConnect/files/patch-R_onLoad.R
index c44134cc8c79..1317db929f59 100644
--- a/math/R-cran-XLConnect/files/patch-R_onLoad.R
+++ b/math/R-cran-XLConnect/files/patch-R_onLoad.R
@@ -1,11 +1,12 @@
---- R/onLoad.R.orig	2025-04-29 09:58:50 UTC
+--- R/onLoad.R.orig	2025-10-07 15:45:48 UTC
 +++ R/onLoad.R
-@@ -55,50 +55,7 @@
+@@ -55,50 +55,21 @@
      repo <- "https://repo1.maven.org/maven2"
    }
    apachePrefix <- paste0(repo, "/org/apache")
 -  sharedPaths <- tryCatch({
--    c(
++  sharedPaths <-
+     c(
 -      xlcEnsureDependenciesFor(
 -      paste0(apachePrefix, "/poi/poi-ooxml-full/5.4.1/poi-ooxml-full-5.4.1.jar"), "poi-ooxml-full.jar", 
 -      "5.4.1",  libname, pkgname),
@@ -42,13 +43,24 @@
 -    xlcEnsureDependenciesFor(
 -      paste0(repo, "/com/zaxxer/SparseBitSet/1.3/SparseBitSet-1.3.jar"), "SparseBitSet.jar",
 -      "1\\.([2-9]|[1-9][0-9]).*",  libname, pkgname)
--    )
++      "JAVALIBDIR/poi-ooxml-full.jar",
++      "JAVALIBDIR/poi-ooxml.jar",
++      "JAVALIBDIR/poi.jar",
++      "JAVALIBDIR/commons-compress.jar",
++      "JAVALIBDIR/commons-lang3.jar",
++      "JAVALIBDIR/xmlbeans.jar",
++      "JAVALIBDIR/commons-collections4.jar",
++      "JAVALIBDIR/commons-math.jar",
++      "JAVALIBDIR/log4j-api.jar",
++      "JAVALIBDIR/commons-codec.jar",
++      "JAVALIBDIR/commons-io.jar",
++      "JAVALIBDIR/SparseBitSet.jar"
+     )
 -  },
 -  error=function(e) {
 -          e
 -        }
 -  )
-+  sharedPaths <- ""
    .jpackage(name = pkgname, jars = "*", morePaths = sharedPaths, own.loader=TRUE)  
    # Perform general XLConnect settings - pass package description
    XLConnectSettings(packageDescription(pkgname))
diff --git a/math/R-cran-XLConnect/pkg-plist b/math/R-cran-XLConnect/pkg-plist
index c23b9d5691d5..d03cae491b25 100644
--- a/math/R-cran-XLConnect/pkg-plist
+++ b/math/R-cran-XLConnect/pkg-plist
@@ -57,25 +57,9 @@
 %%R_MOD_DIR%%/help/paths.rds
 %%R_MOD_DIR%%/html/00Index.html
 %%R_MOD_DIR%%/html/R.css
-%%R_MOD_DIR%%/java/SparseBitSet.jar
 %%R_MOD_DIR%%/java/XLConnect-3.1.1.jar
-%%R_MOD_DIR%%/java/commons-codec-1.18.0.jar
-%%R_MOD_DIR%%/java/commons-codec.jar
-%%R_MOD_DIR%%/java/commons-collections4.jar
-%%R_MOD_DIR%%/java/commons-compress.jar
-%%R_MOD_DIR%%/java/commons-io-2.18.0.jar
-%%R_MOD_DIR%%/java/commons-io.jar
-%%R_MOD_DIR%%/java/commons-lang3-3.16.0.jar
-%%R_MOD_DIR%%/java/commons-lang3.jar
-%%R_MOD_DIR%%/java/commons-math3.jar
-%%R_MOD_DIR%%/java/commons-math.jar
 %%R_MOD_DIR%%/java/curvesapi-1.08.jar
-%%R_MOD_DIR%%/java/log4j-api.jar
 %%R_MOD_DIR%%/java/log4j2.system.properties
-%%R_MOD_DIR%%/java/poi-ooxml-full.jar
-%%R_MOD_DIR%%/java/poi-ooxml.jar
-%%R_MOD_DIR%%/java/poi.jar
-%%R_MOD_DIR%%/java/xmlbeans.jar
 %%R_MOD_DIR%%/tests/run_tests.R
 %%R_MOD_DIR%%/unitTests/resources/test37.xlsx
 %%R_MOD_DIR%%/unitTests/resources/testBug106.xlsx