public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-chemistry/openbabel/
Date: Mon, 24 Mar 2025 09:16:21 +0000 (UTC)	[thread overview]
Message-ID: <1742807754.714bdc8b5ba99e156a92fd2f4025a41e157e5a20.sam@gentoo> (raw)

commit:     714bdc8b5ba99e156a92fd2f4025a41e157e5a20
Author:     Nicolas PARLANT <nicolas.parlant <AT> parhuet <DOT> fr>
AuthorDate: Thu Mar 13 15:04:29 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Mar 24 09:15:54 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=714bdc8b

sci-chemistry/openbabel: sync live

sync with last version

Signed-off-by: Nicolas PARLANT <nicolas.parlant <AT> parhuet.fr>
Closes: https://github.com/gentoo/gentoo/pull/41087
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sci-chemistry/openbabel/openbabel-9999.ebuild | 164 ++++++++++----------------
 1 file changed, 60 insertions(+), 104 deletions(-)

diff --git a/sci-chemistry/openbabel/openbabel-9999.ebuild b/sci-chemistry/openbabel/openbabel-9999.ebuild
index fc4d6cab575e..84485db4537d 100644
--- a/sci-chemistry/openbabel/openbabel-9999.ebuild
+++ b/sci-chemistry/openbabel/openbabel-9999.ebuild
@@ -1,12 +1,12 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
 
-PYTHON_COMPAT=( python3_{10..12} )
+PYTHON_COMPAT=( python3_{10..13} )
 WX_GTK_VER=3.2-gtk3
 
-inherit cmake desktop flag-o-matic perl-functions python-r1 toolchain-funcs wxwidgets xdg-utils
+inherit cmake desktop flag-o-matic perl-functions python-r1 toolchain-funcs wxwidgets xdg
 
 DESCRIPTION="Interconverts file formats used in molecular modeling"
 HOMEPAGE="https://openbabel.org/ https://github.com/openbabel/openbabel/"
@@ -17,7 +17,7 @@ if [[ "${PV}" == *9999* ]]; then
 else
 	if [[ "${PV}" == *_p* ]]; then	# eg., openbabel-3.1.1_p20210325
 		# Set to commit hash
-		OPENBABEL_COMMIT=08e23f39b0cc39b4eebd937a5a2ffc1a7bac3e1b
+		OPENBABEL_COMMIT="889c350feb179b43aa43985799910149d4eaa2bc"
 		SRC_URI="https://github.com/${PN}/${PN}/archive/${OPENBABEL_COMMIT}.tar.gz -> ${P}.tar.gz"
 		S="${WORKDIR}/${PN}-${OPENBABEL_COMMIT}"
 	else
@@ -25,63 +25,49 @@ else
 		SRC_URI="https://github.com/${PN}/${PN}/archive/${MY_P}.tar.gz -> ${P}.tar.gz"
 		S="${WORKDIR}/${PN}-${MY_P}"
 	fi
-	KEYWORDS="amd64 ~arm ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+	KEYWORDS="~amd64 ~arm ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
 fi
 
-SRC_URI="${SRC_URI}
-	https://openbabel.org/docs/dev/_static/babel130.png -> ${PN}.png
-	https://openbabel.org/OBTitle.jpg ->  ${PN}.jpg"
-
+LICENSE="GPL-2"
 # See src/CMakeLists.txt for LIBRARY_VERSION
 SLOT="0/7.0.0"
-LICENSE="GPL-2"
 IUSE="cpu_flags_arm_neon cpu_flags_x86_sse2 cpu_flags_x86_sse4_2 doc examples +inchi json minimal openmp perl png python test wxwidgets"
-
 RESTRICT="!test? ( test )"
-
-# Inaccurate dependency logic upstream
 REQUIRED_USE="
 	python? ( ${PYTHON_REQUIRED_USE} )
-	test? ( inchi json !minimal wxwidgets )
-"
-
-BDEPEND="
-	dev-lang/perl
-	doc? (
-		app-text/doxygen
-		dev-texlive/texlive-latex
-	)
-	perl? ( >=dev-lang/swig-2 )
-	python? ( >=dev-lang/swig-2 )
-	test? ( dev-lang/python )
+	test? ( inchi !minimal python? ( json png ) ${PYTHON_REQUIRED_USE} )
 "
 
-COMMON_DEPEND="
+RDEPEND="
 	dev-cpp/eigen:3
-	dev-libs/libxml2:2
 	sys-libs/zlib:=
 	inchi? ( sci-libs/inchi )
 	json? ( >=dev-libs/rapidjson-1.1.0 )
-	png? ( x11-libs/cairo )
+	!minimal? (
+		dev-libs/libxml2:2
+		png? ( x11-libs/cairo )
+	)
+	perl? ( dev-lang/perl:= )
 	python? ( ${PYTHON_DEPS} )
 	wxwidgets? ( x11-libs/wxGTK:${WX_GTK_VER}[X] )
 "
-
-DEPEND="
-	${COMMON_DEPEND}
-	perl? ( dev-lang/perl )
-"
-
-RDEPEND="
-	${COMMON_DEPEND}
-	perl? (
-		dev-lang/perl:=
-		!sci-chemistry/openbabel-perl
+DEPEND="${RDEPEND}"
+BDEPEND="
+	dev-lang/perl
+	doc? (
+		app-text/doxygen
+		dev-texlive/texlive-latex
 	)
+	perl? ( dev-lang/swig )
+	python? ( dev-lang/swig )
+	test? ( dev-lang/python )
 "
 
 PATCHES=(
-	"${FILESDIR}"/openbabel-3.1.1-fix-time-check-cmake.patch
+	# Set include dir only for global implementation
+	"${FILESDIR}"/${PN}-3.1.1_p2024-fix_pybind.patch
+	# prevent installation of examples in /usr/bin
+	"${FILESDIR}"/${PN}-3.1.1_p2024-fix_examples.patch
 )
 
 pkg_pretend() {
@@ -92,13 +78,13 @@ pkg_setup() {
 	[[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
 }
 
-prepare_python_bindings() {
+gen_python_bindings() {
 	mkdir -p scripts/${EPYTHON} || die
 	# Appends to scripts/CMakeLists.txt, substituting the correct tags, for
 	# each valid python implementation,
-	cat "${FILESDIR}"/${PN}-python.cmake | \
+	cat "${FILESDIR}"/${PN}-python-r2.cmake | \
 		sed -e "s|@@EPYTHON@@|${EPYTHON}|" \
-			-e "s|@@PYTHON_INCUDE_DIR@@|$(python_get_includedir)|" \
+			-e "s|@@PYTHON_INCLUDE_DIR@@|$(python_get_includedir)|" \
 			-e "s|@@PYTHON_LIBS@@|$(python_get_LIBS)|" \
 			-e "s|@@PYTHON_SITEDIR@@|$(python_get_sitedir)|" >> \
 				scripts/CMakeLists.txt || die
@@ -107,51 +93,10 @@ prepare_python_bindings() {
 src_prepare() {
 	cmake_src_prepare
 
-	if use perl; then
-		perl_set_version
-
-		sed -e "/\${LIB_INSTALL_DIR}\/auto/s|\${LIB_INSTALL_DIR}|${VENDOR_ARCH}|" \
-			-e "/\${LIB_INSTALL_DIR}\/Chemistry/s|\${LIB_INSTALL_DIR}|${VENDOR_ARCH}|" \
-			-i scripts/CMakeLists.txt || die
-	fi
-
-	if use python; then
-		# Skip the python bindings sections as we'll append our own
-		sed -e '/^if (PYTHON_BINDINGS)$/s|PYTHON_BINDINGS|false|' \
-			-i {scripts,test}/CMakeLists.txt || die
-		if use test; then
-			# Problems with testbindings built with -O2
-			local test_skip="@unittest.skip('Similar to Issue #2138')"
-			sed -e "/def testTemplates/s|^|    ${test_skip}\\n|" \
-				-i test/testbindings.py || die
-			test_skip="@unittest.skip('Similar to Issue #2246')"
-			sed -e "/^def test_write_string/s|^|${test_skip}\\n|" \
-				-i test/testobconv_writers.py || die
-			fi
-		python_foreach_impl prepare_python_bindings
-	fi
-
-	# Remove dependency automagic
-	if ! use png; then
-		sed -e '/^find_package(Cairo/d' -i CMakeLists.txt || die
-	fi
-	if ! use wxwidgets; then
-		sed -e '/^find_package(wxWidgets/d' -i CMakeLists.txt || die
-	fi
-	if ! use inchi; then
-		sed -e '/^else()$/s|else\(\)|elseif\(false\)|' \
-			-i cmake/modules/FindInchi.cmake || die
-	fi
-
-	# Don't install example bins to /usr/bin
-	if use examples; then
-		sed -e "/RUNTIME DESTINATION/s|bin|share/doc/${PF}/examples|" \
-			-i doc/examples/CMakeLists.txt || die
-	fi
+	# Prevent bundled inchi as fallback
+	rm -r include/inchi || die
 
-	# boost is only used if building with gcc-3.x, which isn't supported in
-	# Gentoo. Still, it shouldn't look for, and include, its headers
-	sed -e '/find_package(Boost/d' -i {{tools,src}/,}CMakeLists.txt || die
+	use python && python_foreach_impl gen_python_bindings
 }
 
 src_configure() {
@@ -170,36 +115,59 @@ src_configure() {
 	}
 
 	local mycmakeargs=(
+		$(cmake_use_find_package png Cairo)
+		$(cmake_use_find_package wxwidgets wxWidgets)
+		-DCMAKE_SKIP_RPATH=ON
 		-DBUILD_DOCS=$(usex doc)
 		-DBUILD_EXAMPLES=$(usex examples)
 		-DBUILD_GUI=$(usex wxwidgets)
 		-DENABLE_OPENMP=$(usex openmp)
 		-DENABLE_TESTS=$(usex test)
 		-DMINIMAL_BUILD=$(usex minimal)
-		# Set this, otherwise it defaults to true and forces WITH_INCHI=true
+		# All three required to comply w/ useflag and prevent bundled lib
 		-DOPENBABEL_USE_SYSTEM_INCHI=$(usex inchi)
+		-DADD_INCHI_FORMAT=$(usex inchi)
+		-DWITH_INCHI=$(usex inchi)
 		-DOPTIMIZE_NATIVE=OFF
 		-DPERL_BINDINGS=$(usex perl)
 		-DPYTHON_BINDINGS=$(usex python)
 		-DRUN_SWIG=$(use_bindings)
 		-DWITH_COORDGEN=false
-		-DWITH_INCHI=$(usex inchi)
 		-DWITH_JSON=$(usex json)
+		# MEAPARSER
+		-DCMAKE_DISABLE_FIND_PACKAGE_Boost=ON
 		-DWITH_MAEPARSER=false
 	)
 
+	if use perl; then
+		perl_set_version
+		mycmakeargs+=(
+			-DPERL_INSTDIR="${VENDOR_ARCH}"
+		)
+	fi
+
 	if use test; then
 		# Help cmake find the python interpreter when dev-lang/python-exec is built
 		# without native-symlinks support.
 		python_setup
-		mycmakeargs+=( -DPYTHON_EXECUTABLE="${PYTHON}" )
+		mycmakeargs+=(
+			-DPYTHON_EXECUTABLE="${PYTHON}"
+		)
 	fi
 
 	cmake_src_configure
 }
 
 src_test() {
-	# Wierd deadlock causes system_load to keep rising
+	local CMAKE_SKIP_TESTS=(
+		# https://github.com/openbabel/openbabel/issues/2766
+		test_align_{4,5}
+	)
+	! use wxwidgets && CMAKE_SKIP_TESTS+=(
+		test_tautomer_{22,27}
+	)
+
+	# Weird deadlock causes system_load to keep rising
 	cmake_src_test -j1
 }
 
@@ -214,9 +182,6 @@ src_install() {
 	for x in doc/*.html; do
 		[[ ${x} != doc/api*.html ]] && dodoc ${x}
 	done
-	# Rendered in some html pages
-	newdoc "${DISTDIR}"/${PN}.png babel130.png
-	newdoc "${DISTDIR}"/${PN}.jpg OBTitle.jpg
 
 	if use doc; then
 		cmake_src_install docs
@@ -240,7 +205,6 @@ src_install() {
 		# Needed by the povray example
 		dosym ../../../../${PN}/${babel_ver}/babel_povray3.inc \
 			/usr/share/doc/${PF}/examples/povray/babel31.inc
-
 	fi
 
 	if use perl; then
@@ -267,14 +231,6 @@ src_install() {
 
 	if use wxwidgets; then
 		make_desktop_entry obgui "Open Babel" ${PN}
-		doicon "${DISTDIR}"/${PN}.png
+		newicon "${S}"/src/GUI/babel.xpm ${PN}.xpm
 	fi
 }
-
-pkg_postinst() {
-	use wxwidgets && xdg_desktop_database_update
-}
-
-pkg_postrm() {
-	use wxwidgets && xdg_desktop_database_update
-}


             reply	other threads:[~2025-03-24  9:16 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-03-24  9:16 Sam James [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-07-30 21:13 [gentoo-commits] repo/gentoo:master commit in: sci-chemistry/openbabel/ Pacho Ramos
2024-07-30 21:13 Pacho Ramos
2024-06-29 18:08 Andreas Sturmlechner
2024-04-11 17:52 Arthur Zamarin
2023-11-24 14:31 Pacho Ramos
2023-02-23 13:20 Andrew Ammerlaan
2022-05-16  8:12 David Seifert
2022-03-10 21:12 Sam James
2022-03-07 14:33 Jakov Smolić
2022-03-07 14:33 Jakov Smolić
2021-12-15 10:09 Andrew Ammerlaan
2021-12-15 10:09 Andrew Ammerlaan
2021-03-28 11:00 Sam James
2021-03-28 10:00 Agostino Sarubbo
2021-01-18 10:14 David Seifert
2020-12-18 10:48 Agostino Sarubbo
2020-12-02  3:06 Thomas Deutschmann
2020-09-07  8:55 David Seifert
2019-09-29 11:26 Pacho Ramos
2017-10-05 12:05 Michael Palimaka
2017-09-12 22:58 Matt Turner
2017-07-31 11:36 Tobias Klausmann
2017-06-03  8:39 Justin Lecher
2015-11-07  9:09 Justin Lecher
2015-11-04 19:28 Justin Lecher
2015-11-04 15:17 Agostino Sarubbo
2015-11-01 13:49 Mikle Kolyada
2015-10-30  9:18 Agostino Sarubbo
2015-10-27 18:04 Justin Lecher
2015-10-25 10:31 Pacho Ramos

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=1742807754.714bdc8b5ba99e156a92fd2f4025a41e157e5a20.sam@gentoo \
    --to=sam@gentoo.org \
    --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