git: 160a45c50393 - main - science/rdkit: update 2025_03_1 → 2025.09.1

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Fri, 31 Oct 2025 05:25:45 UTC
The branch main has been updated by yuri:

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

commit 160a45c503936dc2d37ab0f19d861e129ed39d18
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2025-10-31 05:25:27 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2025-10-31 05:25:43 +0000

    science/rdkit: update 2025_03_1 → 2025.09.1
---
 science/rdkit/Makefile                   | 61 ++++++++++++++++++++++----------
 science/rdkit/distinfo                   | 30 ++++++++++------
 science/rdkit/files/patch-CMakeLists.txt | 27 +++++++-------
 science/rdkit/pkg-plist                  | 24 +++++++++++++
 4 files changed, 98 insertions(+), 44 deletions(-)

diff --git a/science/rdkit/Makefile b/science/rdkit/Makefile
index 6f80768ea090..2adc312943b3 100644
--- a/science/rdkit/Makefile
+++ b/science/rdkit/Makefile
@@ -1,12 +1,19 @@
 PORTNAME=	rdkit
 DISTVERSIONPREFIX=	Release_
-DISTVERSION=	2025_03_1
-PORTREVISION=	3
+DISTVERSION=	2025_09_1
 CATEGORIES=	science
-MASTER_SITES=	LOCAL/yuri/:font # unstable, changing font file: https://fonts.google.com/download?family=Comic%20Neue&dummy=/:font
-DISTFILES=	ComicNeue-Regular.ttf:font
+MASTER_SITES=	https://github.com/schrodinger/maeparser/archive/:maeparser \
+		https://github.com/schrodinger/coordgenlibs/archive/:coordgen \
+		https://codeload.github.com/Glysade/chemdraw/tar.gz/refs/tags/:chemdraw \
+		https://github.com/Tencent/rapidjson/archive/:rapidjson \
+		LOCAL/yuri/:font # unstable, changing font file: https://fonts.google.com/download?family=Comic%20Neue&dummy=/:font
+DISTFILES=	v${MAEPARSER_VERSION}.tar.gz:maeparser \
+		v${COORDGEN_VERSION}.tar.gz:coordgen \
+		v${CHEMDRAW_VERSION}:chemdraw \
+		v${RAPIDJSON_VERSION}.tar.gz:rapidjson \
+		ComicNeue-Regular.ttf:font
 DIST_SUBDIR=	${PORTNAME}-${PORTVERSION}
-EXTRACT_ONLY=	${DISTFILES:C/:.*//:N*.ttf}
+EXTRACT_ONLY=	${DISTFILES:C/:.*//:Nv*:N*.ttf}
 
 MAINTAINER=	yuri@FreeBSD.org
 COMMENT=	Collection of cheminformatics and machine-learning software
@@ -16,20 +23,12 @@ WWW=		https://www.rdkit.org/ \
 LICENSE=	BSD3CLAUSE
 LICENSE_FILE=	${WRKSRC}/license.txt
 
-BROKEN_FreeBSD_15_aarch64=	clang-17 crashes, see https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=272652
-BROKEN_FreeBSD_15_amd64=	clang-17 crashes, see https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=272652
-BROKEN_FreeBSD_15_i386=		clang-17 crashes, see https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=272652
-BROKEN_FreeBSD_16_amd64=	clang-17 crashes, see https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=272652
-
 BUILD_DEPENDS=	catch>0:devel/catch \
-		flex:textproc/flex \
-		rapidjson>=0:devel/rapidjson
+		flex:textproc/flex
 LIB_DEPENDS=	libboost_thread.so:devel/boost-libs \
-		libcoordgen.so:science/coordgenlibs \
-		libfreetype.so:print/freetype2 \
-		libmaeparser.so:science/maeparser
+		libfreetype.so:print/freetype2
 
-USES=		bison:build cmake:testing compiler:c++11-lang eigen:3 gnome python
+USES=		bison:build cmake:testing compiler:c++11-lang eigen:3 gnome pkgconfig python
 USE_GNOME=	cairo
 USE_LDCONFIG=	yes
 
@@ -38,6 +37,11 @@ GH_TUPLE=	rareylab:RingDecomposerLib:v1.1.3_rdkit:RingDecomposerLib/External/Rin
 GH_TUPLE+=	ncbi:pubchem-align3d:daefab3:align3d/External/pubchem_shape/pubchem-align3d \
 		aantron:better-enums:520d8ee:better_enums/better_enums
 
+MAEPARSER_VERSION=	1.3.3
+COORDGEN_VERSION=	3.0.2
+CHEMDRAW_VERSION=	1.0.10
+RAPIDJSON_VERSION=	1.1.0
+
 CMAKE_ON=	RDK_BUILD_CAIRO_SUPPORT
 CMAKE_OFF=	RDK_INSTALL_INTREE RDK_USE_FLEXBISON \
 		RDK_INSTALL_STATIC_LIBS RDK_SWIG_STATIC RDK_PGSQL_STATIC \
@@ -90,14 +94,35 @@ PLIST_SUB+=	LITTLE_ENDIAN=""
 .endif
 
 post-extract:
-	@${MKDIR} ${WRKSRC}/External/rapidjson-1.1.0
-	@cd ${WRKSRC}/External/rapidjson-1.1.0 && ${LN} -s ${LOCALBASE}/include/rapidjson include
+	#@${MKDIR} ${WRKSRC}/External/rapidjson-1.1.0
+	#@cd ${WRKSRC}/External/rapidjson-1.1.0 && ${LN} -s ${LOCALBASE}/include/rapidjson include
 	@cd ${WRKSRC}/Data/Fonts && ${CP} ${DISTDIR}/${DIST_SUBDIR}/ComicNeue-Regular.ttf .
 	@${CP} ${WRKSRC}/better_enums/enum.h ${WRKSRC}/Code/RDGeneral
 
+post-patch:
+	# replace the URLs for fetched libs with the local file path to the distfiles, so that it can be used without internet access
+	@${REINPLACE_CMD} \
+		-e 's|https://github.com/schrodinger/maeparser/archive/|file://${DISTDIR}/${DIST_SUBDIR}/|g' \
+		${WRKSRC}/External/CoordGen/CMakeLists.txt
+	@${REINPLACE_CMD} \
+		-e 's|https://github.com/schrodinger/coordgenlibs/archive/|file://${DISTDIR}/${DIST_SUBDIR}/|g' \
+		${WRKSRC}/External/CoordGen/CMakeLists.txt
+	@${REINPLACE_CMD} \
+		-e 's|https://codeload.github.com/Glysade/chemdraw/tar.gz/refs/tags/|file://${DISTDIR}/${DIST_SUBDIR}/|g' \
+		${WRKSRC}/External/ChemDraw/CMakeLists.txt
+	@${REINPLACE_CMD} \
+		-e 's|https://github.com/Tencent/rapidjson/archive/|file://${DISTDIR}/${DIST_SUBDIR}/|g' \
+		${WRKSRC}/Code/GraphMol/MolInterchange/CMakeLists.txt
+
+pre-build:
+	@${REINPLACE_CMD} \
+		-e 's|const SizeType length;|SizeType length;|g' \
+		${WRKSRC}/External/rapidjson/rapidjson-1.1.0/include/rapidjson/document.h
+
 post-install-PGSQL-on:
 	@${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/postgresql/rdkit.so
 
 # many tests fail, see https://github.com/rdkit/rdkit/issues/7779
+# tests as of 2025_09_1: 65% tests passed, 24 tests failed out of 68
 
 .include <bsd.port.mk>
diff --git a/science/rdkit/distinfo b/science/rdkit/distinfo
index fe4d068e756e..e84d47fcbb7e 100644
--- a/science/rdkit/distinfo
+++ b/science/rdkit/distinfo
@@ -1,11 +1,19 @@
-TIMESTAMP = 1744735395
-SHA256 (rdkit-2025.03.1/ComicNeue-Regular.ttf) = 4f0f67d826565ed55f91ca6512e5562d0f2a39030fc7208519354438bc783ff6
-SIZE (rdkit-2025.03.1/ComicNeue-Regular.ttf) = 21915
-SHA256 (rdkit-2025.03.1/rdkit-rdkit-Release_2025_03_1_GH0.tar.gz) = 947e5aa004047fbec4bf4ba93b84a50ca7f68e248a0654080d8ca0cdb06e3534
-SIZE (rdkit-2025.03.1/rdkit-rdkit-Release_2025_03_1_GH0.tar.gz) = 82192067
-SHA256 (rdkit-2025.03.1/rareylab-RingDecomposerLib-v1.1.3_rdkit_GH0.tar.gz) = 944b5816712a48bbf88aa25d4300ce11871ddf6e971218eac08f90ed2192f715
-SIZE (rdkit-2025.03.1/rareylab-RingDecomposerLib-v1.1.3_rdkit_GH0.tar.gz) = 137931
-SHA256 (rdkit-2025.03.1/ncbi-pubchem-align3d-daefab3_GH0.tar.gz) = d7814a00a39f6a798bc1611d0f7bbd1abc91d754309527a9038a0dad42d848c0
-SIZE (rdkit-2025.03.1/ncbi-pubchem-align3d-daefab3_GH0.tar.gz) = 112376
-SHA256 (rdkit-2025.03.1/aantron-better-enums-520d8ee_GH0.tar.gz) = 29ef26e79eb489b3ef71f85f904f3f1173ffefc6c853219bee7520188805eca5
-SIZE (rdkit-2025.03.1/aantron-better-enums-520d8ee_GH0.tar.gz) = 136592
+TIMESTAMP = 1761887207
+SHA256 (rdkit-2025.09.1/v1.3.3.tar.gz) = 78e7571a779ea4952e752ecef57c62fb26463947e29ef7f4b31b11988d88ca07
+SIZE (rdkit-2025.09.1/v1.3.3.tar.gz) = 39896
+SHA256 (rdkit-2025.09.1/v3.0.2.tar.gz) = f67697434f7fec03bca150a6d84ea0e8409f6ec49d5aab43badc5833098ff4e3
+SIZE (rdkit-2025.09.1/v3.0.2.tar.gz) = 166817
+SHA256 (rdkit-2025.09.1/v1.0.10) = 300680457c92a61ba49b678405906054ab64d3635c49309e37ea2a96c513fa8d
+SIZE (rdkit-2025.09.1/v1.0.10) = 1043718
+SHA256 (rdkit-2025.09.1/v1.1.0.tar.gz) = bf7ced29704a1e696fbccf2a2b4ea068e7774fa37f6d7dd4039d0787f8bed98e
+SIZE (rdkit-2025.09.1/v1.1.0.tar.gz) = 1019402
+SHA256 (rdkit-2025.09.1/ComicNeue-Regular.ttf) = 4f0f67d826565ed55f91ca6512e5562d0f2a39030fc7208519354438bc783ff6
+SIZE (rdkit-2025.09.1/ComicNeue-Regular.ttf) = 21915
+SHA256 (rdkit-2025.09.1/rdkit-rdkit-Release_2025_09_1_GH0.tar.gz) = 7fb3510b69af358009e2d0763c1d9665ac34f4c2cd3314cf5210ee3d5a33d501
+SIZE (rdkit-2025.09.1/rdkit-rdkit-Release_2025_09_1_GH0.tar.gz) = 82885226
+SHA256 (rdkit-2025.09.1/rareylab-RingDecomposerLib-v1.1.3_rdkit_GH0.tar.gz) = 944b5816712a48bbf88aa25d4300ce11871ddf6e971218eac08f90ed2192f715
+SIZE (rdkit-2025.09.1/rareylab-RingDecomposerLib-v1.1.3_rdkit_GH0.tar.gz) = 137931
+SHA256 (rdkit-2025.09.1/ncbi-pubchem-align3d-daefab3_GH0.tar.gz) = d7814a00a39f6a798bc1611d0f7bbd1abc91d754309527a9038a0dad42d848c0
+SIZE (rdkit-2025.09.1/ncbi-pubchem-align3d-daefab3_GH0.tar.gz) = 112376
+SHA256 (rdkit-2025.09.1/aantron-better-enums-520d8ee_GH0.tar.gz) = 29ef26e79eb489b3ef71f85f904f3f1173ffefc6c853219bee7520188805eca5
+SIZE (rdkit-2025.09.1/aantron-better-enums-520d8ee_GH0.tar.gz) = 136592
diff --git a/science/rdkit/files/patch-CMakeLists.txt b/science/rdkit/files/patch-CMakeLists.txt
index 2145ea31191e..4d7146e3b2c3 100644
--- a/science/rdkit/files/patch-CMakeLists.txt
+++ b/science/rdkit/files/patch-CMakeLists.txt
@@ -1,6 +1,6 @@
---- CMakeLists.txt.orig	2025-03-31 18:11:10 UTC
+--- CMakeLists.txt.orig	2025-09-30 06:13:45 UTC
 +++ CMakeLists.txt
-@@ -78,12 +78,12 @@ if(NOT MSVC)
+@@ -81,12 +81,12 @@ if(NOT MSVC)
  
  if(NOT MSVC)
    if(RDK_OPTIMIZE_POPCNT)
@@ -17,26 +17,23 @@
      endif()
    endif()
  endif()
-@@ -166,18 +166,6 @@ endif()
+@@ -179,15 +179,7 @@ endif()
    FetchContent_MakeAvailable(Catch2)
  endif()
  
--#include better-enums
--find_package(better_enums 0 QUIET)
--if(NOT better_enums)
--  Include(FetchContent)
--
--  FetchContent_Declare(
--    better_enums
--    GIT_REPOSITORY https://github.com/aantron/better-enums.git
--    GIT_TAG        c35576bed0295689540b39873126129adfa0b4c8 # 0.11.3
--  )
--endif()
+-# make sure we have better_enums
+-Include(FetchContent)
+ 
+-FetchContent_Declare(
+-  better_enums
+-  GIT_REPOSITORY https://github.com/aantron/better-enums.git
+-  GIT_TAG        c35576bed0295689540b39873126129adfa0b4c8 # 0.11.3
+-)
 -
  if(RDK_INSTALL_INTREE)
    set(RDKit_BinDir "${CMAKE_SOURCE_DIR}/bin")
    set(RDKit_LibDir "${CMAKE_SOURCE_DIR}/lib")
-@@ -530,12 +518,14 @@ if(NOT RDK_INSTALL_INTREE)
+@@ -535,12 +527,14 @@ if(NOT RDK_INSTALL_INTREE)
        COMPONENT data
        PATTERN ".svn" EXCLUDE
        )
diff --git a/science/rdkit/pkg-plist b/science/rdkit/pkg-plist
index db5a4c43384e..c4c3acd8b3c9 100644
--- a/science/rdkit/pkg-plist
+++ b/science/rdkit/pkg-plist
@@ -133,6 +133,8 @@ include/rdkit/GraphMol/Descriptors/USRDescriptor.h
 include/rdkit/GraphMol/Descriptors/WHIM.h
 include/rdkit/GraphMol/DistGeomHelpers/BoundsMatrixBuilder.h
 include/rdkit/GraphMol/DistGeomHelpers/Embedder.h
+include/rdkit/GraphMol/EnumerateStereoisomers/EnumerateStereoisomers.h
+include/rdkit/GraphMol/EnumerateStereoisomers/Flippers.h
 include/rdkit/GraphMol/FMCS/FMCS.h
 include/rdkit/GraphMol/FMCS/Graph.h
 include/rdkit/GraphMol/FileParsers/CDXMLParser.h
@@ -291,6 +293,8 @@ include/rdkit/GraphMol/TautomerQuery/TautomerQuery.h
 include/rdkit/GraphMol/Trajectory/Snapshot.h
 include/rdkit/GraphMol/Trajectory/Trajectory.h
 include/rdkit/GraphMol/atomic_data.h
+include/rdkit/GraphMol/chemdraw.h
+include/rdkit/GraphMol/chemdrawreaction.h
 include/rdkit/GraphMol/details.h
 include/rdkit/GraphMol/new_canon.h
 include/rdkit/Numerics/Alignment/AlignPoints.h
@@ -381,6 +385,9 @@ lib/libRDKitCIPLabeler.so.1.%%SHLIB_VER%%
 lib/libRDKitCatalogs.so
 lib/libRDKitCatalogs.so.1
 lib/libRDKitCatalogs.so.1.%%SHLIB_VER%%
+lib/libRDKitChemDraw.so
+lib/libRDKitChemDraw.so.1
+lib/libRDKitChemDraw.so.1.%%SHLIB_VER%%
 lib/libRDKitChemReactions.so
 lib/libRDKitChemReactions.so.1
 lib/libRDKitChemReactions.so.1.%%SHLIB_VER%%
@@ -411,6 +418,9 @@ lib/libRDKitDistGeometry.so.1.%%SHLIB_VER%%
 lib/libRDKitEigenSolvers.so
 lib/libRDKitEigenSolvers.so.1
 lib/libRDKitEigenSolvers.so.1.%%SHLIB_VER%%
+lib/libRDKitEnumerateStereoisomers.so
+lib/libRDKitEnumerateStereoisomers.so.1
+lib/libRDKitEnumerateStereoisomers.so.1.%%SHLIB_VER%%
 lib/libRDKitFMCS.so
 lib/libRDKitFMCS.so.1
 lib/libRDKitFMCS.so.1.%%SHLIB_VER%%
@@ -498,6 +508,12 @@ lib/libRDKitPubChemShape.so.1.%%SHLIB_VER%%
 %%PYTHON%%lib/libRDKitRDBoost.so
 %%PYTHON%%lib/libRDKitRDBoost.so.1
 %%PYTHON%%lib/libRDKitRDBoost.so.1.%%SHLIB_VER%%
+lib/libRDKitRDChemDrawLib.so
+lib/libRDKitRDChemDrawLib.so.1
+lib/libRDKitRDChemDrawLib.so.1.%%SHLIB_VER%%
+lib/libRDKitRDChemDrawReactionLib.so
+lib/libRDKitRDChemDrawReactionLib.so.1
+lib/libRDKitRDChemDrawReactionLib.so.1.%%SHLIB_VER%%
 lib/libRDKitRDGeneral.so
 lib/libRDKitRDGeneral.so.1
 lib/libRDKitRDGeneral.so.1.%%SHLIB_VER%%
@@ -552,12 +568,18 @@ lib/libRDKitTautomerQuery.so.1.%%SHLIB_VER%%
 lib/libRDKitTrajectory.so
 lib/libRDKitTrajectory.so.1
 lib/libRDKitTrajectory.so.1.%%SHLIB_VER%%
+lib/libRDKitcoordgen.so
+lib/libRDKitcoordgen.so.1
+lib/libRDKitcoordgen.so.1.%%SHLIB_VER%%
 lib/libRDKitga.so
 lib/libRDKitga.so.1
 lib/libRDKitga.so.1.%%SHLIB_VER%%
 %%LITTLE_ENDIAN%%lib/libRDKithc.so
 %%LITTLE_ENDIAN%%lib/libRDKithc.so.1
 %%LITTLE_ENDIAN%%lib/libRDKithc.so.1.%%SHLIB_VER%%
+lib/libRDKitmaeparser.so
+lib/libRDKitmaeparser.so.1
+lib/libRDKitmaeparser.so.1.%%SHLIB_VER%%
 %%PGSQL%%lib/postgresql/rdkit.so
 %%PYTHON%%lib/libRDKitpubchem_align3d.so
 %%PYTHON%%lib/libRDKitpubchem_align3d.so.1
@@ -688,12 +710,14 @@ lib/libRDKitga.so.1.%%SHLIB_VER%%
 %%PYTHON%%%%PYTHON_SITELIBDIR%%/rdkit/Chem/nbtests/rdkit-structure-renderer.ipynb
 %%PYTHON%%%%PYTHON_SITELIBDIR%%/rdkit/Chem/rdAbbreviations.so
 %%PYTHON%%%%PYTHON_SITELIBDIR%%/rdkit/Chem/rdCIPLabeler.so
+%%PYTHON%%%%PYTHON_SITELIBDIR%%/rdkit/Chem/rdChemDraw.so
 %%PYTHON%%%%PYTHON_SITELIBDIR%%/rdkit/Chem/rdChemReactions.so
 %%PYTHON%%%%PYTHON_SITELIBDIR%%/rdkit/Chem/rdChemicalFeatures.so
 %%PYTHON%%%%PYTHON_SITELIBDIR%%/rdkit/Chem/rdCoordGen.so
 %%PYTHON%%%%PYTHON_SITELIBDIR%%/rdkit/Chem/rdDepictor.so
 %%PYTHON%%%%PYTHON_SITELIBDIR%%/rdkit/Chem/rdDeprotect.so
 %%PYTHON%%%%PYTHON_SITELIBDIR%%/rdkit/Chem/rdDistGeom.so
+%%PYTHON%%%%PYTHON_SITELIBDIR%%/rdkit/Chem/rdEnumerateStereoisomers.so
 %%PYTHON%%%%PYTHON_SITELIBDIR%%/rdkit/Chem/rdFMCS.so
 %%PYTHON%%%%PYTHON_SITELIBDIR%%/rdkit/Chem/rdFingerprintGenerator.so
 %%PYTHON%%%%PYTHON_SITELIBDIR%%/rdkit/Chem/rdForceFieldHelpers.so