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

media-gfx/openscad: 2025.05.01_pre

Closes: https://bugs.gentoo.org/947817
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/openscad/Manifest                        |  1 +
 media-gfx/openscad/metadata.xml                    |  5 ++-
 ...-9999.ebuild => openscad-2025.05.01_pre.ebuild} | 39 ++++++++++++------
 media-gfx/openscad/openscad-9999.ebuild            | 46 +++++++++++++++-------
 4 files changed, 64 insertions(+), 27 deletions(-)

diff --git a/media-gfx/openscad/Manifest b/media-gfx/openscad/Manifest
index 1f822d2c1cc8..68d7adcadab6 100644
--- a/media-gfx/openscad/Manifest
+++ b/media-gfx/openscad/Manifest
@@ -1,5 +1,6 @@
 DIST openscad-2024.12.30_pre.tar.gz 25338952 BLAKE2B 
41baa7f5df30e46611a2ef59dc0aa05ccb85644dddfb979224b5b026f1b9338285eecd50e2078543163621c89fbc81e97b7593b641a223b48ca02029962f8076
 SHA512 
e63ac792c16852c1bbdf06a3cb044b453e05c20a95158adddbc09239bcf228fd113a6e33f83d5580e615ecab3cdab8436da9e21d2ab3c3f8846f66219218713b
 DIST openscad-20241114.tar.gz 25288312 BLAKE2B 
0c1a9b4b15c12f4b3b600e81cdb5eeddb34887c83e2ae67735d7221b6660730dc5e7f97f80b84d187772adfa20d15e20f0cded1b4937e26305434847bbf2af27
 SHA512 
6c66c09e4b72ec5ef200d077b58fcb7a5a9acd359551a5daebdc3e24cb2cb7ed7d607b04e5563ea6f14d9d929310c3a9194ac889f2530c2c933235271040981a
+DIST openscad-2025.05.01_pre.tar.gz 24447451 BLAKE2B 
fb7575d254e8c80028c639493515c008cfaa23c6d98cd4857c6d71161451a90d8fcbc43c56202902eab3e6eea5a5e8c7df77a9d25d37247315b3aba8b4e3658a
 SHA512 
6eaf7c9b0998d2cc02573aa148a36aa2fe8a7082a5b16f29f4848e95944db63e5948fbcc3aec91833517ff20740fa24e3b104e77a1052c7771630c57b4696b1f
 DIST openscad-MCAD-bd0a7ba3f042bfbced5ca1894b236cea08904e26.tar.gz 58895 
BLAKE2B 
e154a38e1c36873a34f7c80b8fa484e4bbcb1b0c217e15b977e6cedc9a83fd2e1518791f9a58a4f0e893c2a55947d7eaddb660d8b725eca048c30f0ea41cf14a
 SHA512 
c6208a90f6a58ebdc0477d3e1b6be2f52e4ce976ac619a87818437cb9696b7e83285564fde757d32efaf50033d5217b55f67b6ce342250de838dd09fef334f36
 DIST sanitizers-cmake-0573e2ea8651b9bb3083f193c41eb086497cc80a.tar.gz 7495 
BLAKE2B 
57efaac8861755fd7fe3a9c9db2a68f775169ef82b91fbcf44da375540dce7673f319908c0d1a8ac324584bc217f9e2a1e27d6f935fe84f1f640049324ea3b24
 SHA512 
80d1c471492a771b12291e36cc7523e65c8f9add5b14643c9554156bbcc3e1753772054998306c3f89d33b7f5c9969e89670e16428a72040033b41329c9cb71b
 DIST sanitizers-cmake-3f0542e4e034aab417c51b2b22c94f83355dee15.tar.gz 7451 
BLAKE2B 
2ca72e3ecda02d4f0eed05be0954af02706425e94626d5a4b9d897968e35c341413171e2388ece7e83dad9eb7b5e2c2f73811ea8db8fa33b0bce6d5dd53550b7
 SHA512 
10cd4eeb3bbb7bf5c6f5cf8b5bc6a531b1ec8bdc147583d8de028a3e4b8b9d0e258aad81f02135267ce8f7d87b30999dedd25b44c0754b5c31e00d8481cd412f

diff --git a/media-gfx/openscad/metadata.xml b/media-gfx/openscad/metadata.xml
index 65b56ea5a6ce..4b42831c5774 100644
--- a/media-gfx/openscad/metadata.xml
+++ b/media-gfx/openscad/metadata.xml
@@ -21,6 +21,9 @@
        Mac OS X.
 </longdescription>
 <use>
+       <flag name="cgal">
+               Enable cgal render backend via <pkg>sci-mathematics/cgal</pkg> 
(old/slow)
+       </flag>
        <flag name="egl">
                Build using EGL instead of GLX
        </flag>
@@ -37,7 +40,7 @@
                Build in support for HID-Class devices using 
<pkg>dev-libs/hidapi</pkg>
        </flag>
        <flag name="manifold">
-               Enable Manifold render backend via 
<pkg>sci-mathematics/manifold</pkg>
+               Enable Manifold render backend via 
<pkg>sci-mathematics/manifold</pkg> (new/fast)
        </flag>
        <flag name="mimalloc">
                Build using <pkg>dev-libs/mimalloc</pkg> as memory allocator

diff --git a/media-gfx/openscad/openscad-9999.ebuild 
b/media-gfx/openscad/openscad-2025.05.01_pre.ebuild
similarity index 90%
copy from media-gfx/openscad/openscad-9999.ebuild
copy to media-gfx/openscad/openscad-2025.05.01_pre.ebuild
index 0361bac9f047..9e8513abd734 100644
--- a/media-gfx/openscad/openscad-9999.ebuild
+++ b/media-gfx/openscad/openscad-2025.05.01_pre.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=8
 
-PYTHON_COMPAT=( python3_{10..13} )
+PYTHON_COMPAT=( python3_{11..13} )
 inherit cmake flag-o-matic optfeature python-any-r1 virtualx xdg
 
 DESCRIPTION="The Programmers Solid 3D CAD Modeller"
@@ -20,7 +20,7 @@ if [[ ${PV} = *9999* ]] ; then
        )
 else
        if [[ ${PV} = *pre* ]] ; then
-               COMMIT="756e080c7e49072d9926cf9ce766def180a0dcae"
+               COMMIT="f3cac59bf973502ad4b278fd3f20298f9bc2fc84"
                
SANITIZERS_CMAKE_COMMIT="0573e2ea8651b9bb3083f193c41eb086497cc80a"
                MCAD_COMMIT="bd0a7ba3f042bfbced5ca1894b236cea08904e26"
 
@@ -39,7 +39,7 @@ else
        else
                
SRC_URI="https://github.com/${PN}/${PN}/releases/download/${P}/${P}.src.tar.gz 
-> ${P}.tar.gz"
        fi
-       KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+       KEYWORDS="~amd64"
 fi
 
 # Code is GPL-3+, MCAD library is LGPL-2.1
@@ -60,15 +60,19 @@ RDEPEND="
        dev-libs/boost:=
        dev-libs/double-conversion:=
        dev-libs/glib:2
-       dev-libs/libxml2
+       dev-libs/libxml2:=
        dev-libs/libzip:=
-       media-gfx/opencsg:=
+       >=media-gfx/opencsg-1.7.0:=
        media-libs/fontconfig
        media-libs/freetype
        media-libs/harfbuzz:=
        media-libs/lib3mf:=
+       media-libs/libglvnd
+       >=sci-mathematics/clipper2-1.5.2
        sci-mathematics/cgal:=
-       media-libs/libglvnd[X]
+       glx? (
+               media-libs/libglvnd[X]
+       )
        gui? (
                dev-qt/qt5compat:6
                
dev-qt/qtbase:6[concurrent,dbus?,-gles2-only,network,opengl,widgets]
@@ -78,8 +82,8 @@ RDEPEND="
        )
        hidapi? ( dev-libs/hidapi )
        manifold? (
-               dev-cpp/tbb
-               >=sci-mathematics/manifold-3.0.1
+               dev-cpp/tbb:=
+               >=sci-mathematics/manifold-3.0.2_pre20250330
        )
        mimalloc? ( dev-libs/mimalloc:= )
        pdf? ( x11-libs/cairo )
@@ -107,7 +111,6 @@ BDEPEND="
 DOCS=(
        README.md
        RELEASE_NOTES.md
-       doc/TODO.txt
        doc/contributor_copyright.txt
        doc/hacking.md
        doc/testing.txt
@@ -162,7 +165,6 @@ src_configure() {
                -DUSE_CCACHE="no"
                -DUSE_GLAD="yes"
                -DUSE_GLEW="no"
-               -DUSE_LEGACY_RENDERERS="no"
                -DUSE_MIMALLOC="$(usex mimalloc)"
                -DUSE_QT6="$(usex gui)"
                -DOFFLINE_DOCS="no" # TODO
@@ -201,7 +203,8 @@ src_configure() {
 src_test() {
        local i WRITE=()
 
-       if [[ -d "/dev/udmabuf" ]]; then
+       # mesa will make use of udmabuf if it exists
+       if [[ -c "/dev/udmabuf" ]]; then
                WRITE+=(
                        "/dev/udmabuf"
                )
@@ -245,6 +248,8 @@ src_test() {
                fi
        done
 
+       addpredict "/dev/char/"
+
        sed \
                -e "s/OPENSCAD_BINARY/OPENSCADPATH/g" \
                -i tests/test_cmdline_tool.py || die
@@ -256,7 +261,17 @@ src_test() {
        ln -s "${CMAKE_USE_DIR}/locale" . || die
        ln -s "${CMAKE_USE_DIR}/shaders" . || die
 
-       virtx cmake_src_test -j1
+       local -x CMAKE_SKIP_TESTS=()
+
+       if ! has_version app-text/ghostscript-gpl ; then
+               CMAKE_SKIP_TESTS+=(
+                       # needs GS
+                       "^export-pdf_centered$"
+                       "^export-pdf_simple-pdf$"
+               )
+       fi
+
+       virtx cmake_src_test
 }
 
 src_install() {

diff --git a/media-gfx/openscad/openscad-9999.ebuild 
b/media-gfx/openscad/openscad-9999.ebuild
index 0361bac9f047..62eeeda92a4d 100644
--- a/media-gfx/openscad/openscad-9999.ebuild
+++ b/media-gfx/openscad/openscad-9999.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=8
 
-PYTHON_COMPAT=( python3_{10..13} )
+PYTHON_COMPAT=( python3_{11..13} )
 inherit cmake flag-o-matic optfeature python-any-r1 virtualx xdg
 
 DESCRIPTION="The Programmers Solid 3D CAD Modeller"
@@ -20,7 +20,7 @@ if [[ ${PV} = *9999* ]] ; then
        )
 else
        if [[ ${PV} = *pre* ]] ; then
-               COMMIT="756e080c7e49072d9926cf9ce766def180a0dcae"
+               COMMIT="f3cac59bf973502ad4b278fd3f20298f9bc2fc84"
                
SANITIZERS_CMAKE_COMMIT="0573e2ea8651b9bb3083f193c41eb086497cc80a"
                MCAD_COMMIT="bd0a7ba3f042bfbced5ca1894b236cea08904e26"
 
@@ -46,10 +46,11 @@ fi
 LICENSE="GPL-3+ LGPL-2.1"
 SLOT="0"
 
-IUSE="dbus +egl experimental glx +gui hidapi +manifold mimalloc pdf spacenav 
test"
+IUSE="cgal dbus +egl experimental glx +gui hidapi +manifold mimalloc pdf 
spacenav test"
 RESTRICT="!test? ( test )"
 
 REQUIRED_USE="
+       || ( cgal manifold )
        dbus? ( gui )
        hidapi? ( gui )
        spacenav? ( gui )
@@ -60,15 +61,21 @@ RDEPEND="
        dev-libs/boost:=
        dev-libs/double-conversion:=
        dev-libs/glib:2
-       dev-libs/libxml2
+       dev-libs/libxml2:=
        dev-libs/libzip:=
-       media-gfx/opencsg:=
+       >=media-gfx/opencsg-1.7.0:=
        media-libs/fontconfig
        media-libs/freetype
        media-libs/harfbuzz:=
        media-libs/lib3mf:=
-       sci-mathematics/cgal:=
-       media-libs/libglvnd[X]
+       media-libs/libglvnd
+       >=sci-mathematics/clipper2-1.5.2
+       cgal? (
+               sci-mathematics/cgal:=
+       )
+       glx? (
+               media-libs/libglvnd[X]
+       )
        gui? (
                dev-qt/qt5compat:6
                
dev-qt/qtbase:6[concurrent,dbus?,-gles2-only,network,opengl,widgets]
@@ -78,8 +85,8 @@ RDEPEND="
        )
        hidapi? ( dev-libs/hidapi )
        manifold? (
-               dev-cpp/tbb
-               >=sci-mathematics/manifold-3.0.1
+               dev-cpp/tbb:=
+               >=sci-mathematics/manifold-3.0.2_pre20250330
        )
        mimalloc? ( dev-libs/mimalloc:= )
        pdf? ( x11-libs/cairo )
@@ -107,7 +114,6 @@ BDEPEND="
 DOCS=(
        README.md
        RELEASE_NOTES.md
-       doc/TODO.txt
        doc/contributor_copyright.txt
        doc/hacking.md
        doc/testing.txt
@@ -147,7 +153,7 @@ src_configure() {
        local mycmakeargs=(
                -DCLANG_TIDY="no"
                -DENABLE_CAIRO="$(usex pdf)"
-               -DENABLE_CGAL="yes"
+               -DENABLE_CGAL="$(usex cgal)"
                -DENABLE_EGL="$(usex egl)"
                -DENABLE_GLX="$(usex glx)"
                -DENABLE_MANIFOLD="$(usex manifold)"
@@ -162,7 +168,6 @@ src_configure() {
                -DUSE_CCACHE="no"
                -DUSE_GLAD="yes"
                -DUSE_GLEW="no"
-               -DUSE_LEGACY_RENDERERS="no"
                -DUSE_MIMALLOC="$(usex mimalloc)"
                -DUSE_QT6="$(usex gui)"
                -DOFFLINE_DOCS="no" # TODO
@@ -201,7 +206,8 @@ src_configure() {
 src_test() {
        local i WRITE=()
 
-       if [[ -d "/dev/udmabuf" ]]; then
+       # mesa will make use of udmabuf if it exists
+       if [[ -c "/dev/udmabuf" ]]; then
                WRITE+=(
                        "/dev/udmabuf"
                )
@@ -245,6 +251,8 @@ src_test() {
                fi
        done
 
+       addpredict "/dev/char/"
+
        sed \
                -e "s/OPENSCAD_BINARY/OPENSCADPATH/g" \
                -i tests/test_cmdline_tool.py || die
@@ -256,7 +264,17 @@ src_test() {
        ln -s "${CMAKE_USE_DIR}/locale" . || die
        ln -s "${CMAKE_USE_DIR}/shaders" . || die
 
-       virtx cmake_src_test -j1
+       local -x CMAKE_SKIP_TESTS=()
+
+       if ! has_version app-text/ghostscript-gpl ; then
+               CMAKE_SKIP_TESTS+=(
+                       # needs GS
+                       "^export-pdf_centered$"
+                       "^export-pdf_simple-pdf$"
+               )
+       fi
+
+       virtx cmake_src_test
 }
 
 src_install() {

Reply via email to