commit:     d196b32569741896563d110e114232911683dc12
Author:     Paul Zander <negril.nx+gentoo <AT> gmail <DOT> com>
AuthorDate: Thu May  1 19:34:06 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu May  8 06:26:40 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d196b325

media-gfx/netgen: add 6.2.2501, update 6.2.2406

Backport test fixes to 6.2.2406

Closes: https://bugs.gentoo.org/904312
Closes: https://bugs.gentoo.org/927171
Closes: https://bugs.gentoo.org/945059
Signed-off-by: Paul Zander <negril.nx+gentoo <AT> gmail.com>
Part-of: https://github.com/gentoo/gentoo/pull/41967
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-gfx/netgen/Manifest                          |  1 +
 media-gfx/netgen/netgen-6.2.2406.ebuild            |  5 +-
 ...tgen-6.2.2406.ebuild => netgen-6.2.2501.ebuild} | 65 ++++++++++++++--------
 3 files changed, 46 insertions(+), 25 deletions(-)

diff --git a/media-gfx/netgen/Manifest b/media-gfx/netgen/Manifest
index a9e003798953..a6b0ad40a8c8 100644
--- a/media-gfx/netgen/Manifest
+++ b/media-gfx/netgen/Manifest
@@ -1 +1,2 @@
 DIST netgen-6.2.2406.tar.gz 3452436 BLAKE2B 
4cb42f20e7627a98e54a9f2e6da5d1b4af174fa7e33c6f72a731b4879c3e4324b20016f1980d2ceb50976fedc2b001a0824e2edd03b03c434c49baa947ded126
 SHA512 
262e57dca39519c797ea58b32eb886d523926aa48979b31df0c61839f9db09eea76346d3519742b7173a78a80335c16960860772646edd20f365dab1e1a6bed8
+DIST netgen-6.2.2501.tar.gz 3328069 BLAKE2B 
68387ffdf3ff4025b8b68377aa5744077a5ab4718e1a9213bd2103e58dce8750355ad7031b8cc533345fa84bfa4b1c96f30f9e1efb977141d97a35f40dbf57a8
 SHA512 
7a39b8bc17216a69239e1f3774793f65e8ac3b1837b0859a730bba8967a4791a76ea5041a94e7de1e1e42f8d12b8ab59dfa06eadcf048f3c99dce57b360faa45

diff --git a/media-gfx/netgen/netgen-6.2.2406.ebuild 
b/media-gfx/netgen/netgen-6.2.2406.ebuild
index cdd5a51aa5b6..ddb8a2b1bc57 100644
--- a/media-gfx/netgen/netgen-6.2.2406.ebuild
+++ b/media-gfx/netgen/netgen-6.2.2406.ebuild
@@ -151,12 +151,15 @@ src_test() {
        DESTDIR="${T}" cmake_build install
 
        if use python; then
-               export 
PYTHONPATH="${T}/$(python_get_sitedir):${T}/usr/$(get_libdir):${BUILD_DIR}/libsrc/core"
+               local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+               local -x NETGENDIR="${T}/usr/bin"
+               export 
PYTHONPATH="${T}$(python_get_sitedir):${T}/usr/$(get_libdir):${BUILD_DIR}/libsrc/core"
        fi
 
        CMAKE_SKIP_TESTS=(
                '^unit_symboltable$'
                '^pytest$' # SEGFAULT
+               '^pytest-mpi$' # needs pytest-mpi
        )
        cmake_src_test
 }

diff --git a/media-gfx/netgen/netgen-6.2.2406.ebuild 
b/media-gfx/netgen/netgen-6.2.2501.ebuild
similarity index 70%
copy from media-gfx/netgen/netgen-6.2.2406.ebuild
copy to media-gfx/netgen/netgen-6.2.2501.ebuild
index cdd5a51aa5b6..c09f468b3e6c 100644
--- a/media-gfx/netgen/netgen-6.2.2406.ebuild
+++ b/media-gfx/netgen/netgen-6.2.2501.ebuild
@@ -3,8 +3,8 @@
 
 EAPI=8
 
-PYTHON_COMPAT=( python3_{10..13} )
-inherit cmake desktop flag-o-matic python-single-r1 xdg
+PYTHON_COMPAT=( python3_{11..13} )
+inherit cmake desktop python-single-r1 xdg
 
 DESCRIPTION="Automatic 3d tetrahedral mesh generator"
 HOMEPAGE="https://ngsolve.org/ https://github.com/NGSolve/netgen";
@@ -12,7 +12,7 @@ 
SRC_URI="https://github.com/NGSolve/netgen/archive/refs/tags/v${PV}.tar.gz -> ${
 
 LICENSE="LGPL-2.1"
 SLOT="0"
-KEYWORDS="amd64 ~x86"
+KEYWORDS="~amd64 ~x86"
 
 IUSE="ffmpeg gui jpeg mpi +opencascade python test"
 RESTRICT="!test? ( test )"
@@ -70,10 +70,9 @@ PATCHES=(
        "${FILESDIR}/${PN}-6.2.2204-find-Tk-include-directories.patch"
        "${FILESDIR}/${PN}-6.2.2406-link-against-ffmpeg.patch"
        "${FILESDIR}/${PN}-6.2.2204-use-system-catch.patch"
-       "${FILESDIR}/${PN}-6.2.2406-find-libjpeg-turbo-library.patch"
+       # "${FILESDIR}/${PN}-6.2.2406-find-libjpeg-turbo-library.patch"
        "${FILESDIR}/${PN}-6.2.2301-fix-nullptr-deref-in-archive.patch"
        "${FILESDIR}/${PN}-6.2.2406-encoding_h.patch"
-       "${FILESDIR}/${PN}-6.2.2406-link-against-jpeg.patch"
 )
 
 pkg_setup() {
@@ -90,20 +89,25 @@ pkg_setup() {
 }
 
 src_prepare() {
-       # # NOTE: need to manually check and update this string on version 
bumps!
-       # # git describe --tags --match "v[0-9]*" --long --dirty
+       # NOTE: need to manually check and update this string on version bumps!
+       # git ls-remote --tags https://github.com/NGSolve/netgen.git 
refs/tags/v${PV} | cut -c-8
+       # git describe --tags --match "v[0-9]*" --long --dirty
        # cat <<- EOF > "${S}/version.txt" || die
-       #       v${PV}-0-08eec44
+       #       v${PV}-0-gd1a9f7ee
        # EOF
 
-       rm external_dependencies -r || die
+       if use python; then
+               sed \
+                       -e "s/Python3_EXECUTABLE/PYTHON_EXECUTABLE/" \
+                       -i cmake/NetgenConfig.cmake.in || die
+       fi
+
+       rm -r external_dependencies || die
 
        cmake_src_prepare
 }
 
 src_configure() {
-       filter-lto
-
        local mycmakeargs=(
                # currently not working in a sandbox, expects netgen to be 
installed
                # see https://github.com/NGSolve/netgen/issues/132
@@ -115,7 +119,7 @@ src_configure() {
                -DNG_INSTALL_DIR_LIB="$(get_libdir)"
                -DUSE_CCACHE=OFF
                # doesn't build with this version
-               -DUSE_CGNS=OFF
+               -DUSE_CGNS=no
                -DUSE_GUI=$(usex gui)
                -DUSE_INTERNAL_TCL=OFF
                -DUSE_JPEG=$(usex jpeg)
@@ -126,24 +130,31 @@ src_configure() {
                -DUSE_OCC=$(usex opencascade)
                -DUSE_PYTHON="$(usex python)"
                -DUSE_SUPERBUILD=OFF
-               -DNETGEN_VERSION_GIT="v${PV}"
+
+               -DNETGEN_VERSION_GIT="v${PV}-0-gd1a9f7ee"
        )
+
        # no need to set this, if we only build the library
        if use gui; then
-               mycmakeargs+=( 
-DTK_INCLUDE_PATH="/usr/$(get_libdir)/tk8.6/include" )
+               mycmakeargs+=(
+                       
-DTK_INCLUDE_PATH="${ESYSROOT}/usr/$(get_libdir)/tk8.6/include"
+               )
        fi
+
        if use python; then
                mycmakeargs+=(
                        -DPREFER_SYSTEM_PYBIND11=ON
-                       # # needed, so the value gets passed to 
NetgenConfig.cmake instead of ${T}/pythonX.Y
-                       # -DPYTHON_EXECUTABLE="${PYTHON}"
+                       # needed, so the value gets passed to 
NetgenConfig.cmake instead of ${T}/pythonX.Y
+                       -DPYTHON_EXECUTABLE="${PYTHON}"
                )
        fi
+
        if use mpi && use python; then
                mycmakeargs+=( -DUSE_MPI4PY=ON )
        else
                mycmakeargs+=( -DUSE_MPI4PY=OFF )
        fi
+
        cmake_src_configure
 }
 
@@ -151,18 +162,24 @@ src_test() {
        DESTDIR="${T}" cmake_build install
 
        if use python; then
-               export 
PYTHONPATH="${T}/$(python_get_sitedir):${T}/usr/$(get_libdir):${BUILD_DIR}/libsrc/core"
+               local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+               local -x NETGENDIR="${T}/usr/bin"
+               local -x 
PYTHONPATH="${T}$(python_get_sitedir):${T}/usr/$(get_libdir):${BUILD_DIR}/libsrc/core"
        fi
 
        CMAKE_SKIP_TESTS=(
                '^unit_symboltable$'
-               '^pytest$' # SEGFAULT
+               '^pytest$' # floating point errors
+               '^pytest-mpi$' # needs pytest-mpi
        )
        cmake_src_test
+
+       rm -r "${T}/usr" || die
 }
 
 src_install() {
        cmake_src_install
+
        use python && python_optimize
 
        local NETGENDIR="/usr/share/${PN}"
@@ -173,13 +190,13 @@ src_install() {
                mv "${ED}"/usr/bin/{*.tcl,*.ocf} "${ED}${NETGENDIR}" || die
 
                convert -deconstruct "${S}/windows/${PN}.ico" netgen.png || die
-               newicon -s 32 "${S}"/${PN}-2.png ${PN}.png
-               newicon -s 16 "${S}"/${PN}-3.png ${PN}.png
-               make_desktop_entry ${PN} "Netgen" netgen Graphics
+               newicon -s 32 "${S}/${PN}-2.png" "${PN}.png"
+               newicon -s 16 "${S}/${PN}-3.png" "${PN}.png"
+               make_desktop_entry "${PN}" "Netgen" netgen Graphics
        fi
 
-       mv "${ED}"/usr/share/${PN}/doc/ng4.pdf "${ED}"/usr/share/doc/${PF} || 
die
-       dosym -r /usr/share/doc/${PF}/ng4.pdf /usr/share/${PN}/doc/ng4.pdf
+       mv "${ED}/usr/share/${PN}/doc/ng4.pdf" "${ED}/usr/share/doc/${PF}" || 
die
+       dosym -r "/usr/share/doc/${PF}/ng4.pdf" "/usr/share/${PN}/doc/ng4.pdf"
 
-       use python || rm -r "${ED}${NETGENDIR}"/py_tutorials || die
+       use python || rm -r "${ED}${NETGENDIR}/py_tutorials" || die
 }

Reply via email to