commit:     57b1623c4a6e23ad5fa73c44304665d2c0fb8d27
Author:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 15 15:38:15 2024 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> gentoo <DOT> org>
CommitDate: Sun Sep 15 15:42:15 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=57b1623c

media-gfx/freecad: misc bug fixes, qt6 by default

- fix issue where path with spaces is not properly passed on
- add USE=smesh for smesh module, because it requires vtk
- add missing rdep asciidoctor
- add missing dep ms-gsl
- qt6 by default for 1,0_rc1 (this rc fixes several qt6 issues)

Bug: https://bugs.gentoo.org/933439
Closes: https://bugs.gentoo.org/927660
Closes: https://bugs.gentoo.org/939704
Closes: https://bugs.gentoo.org/935303
Closes: https://bugs.gentoo.org/939175
Closes: https://bugs.gentoo.org/933821
Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> gentoo.org>

 ...ad-1.0_rc1.ebuild => freecad-1.0_rc1-r1.ebuild} | 22 +++++++++++--------
 media-gfx/freecad/freecad-9999.ebuild              | 25 ++++++++++++++--------
 media-gfx/freecad/metadata.xml                     |  3 +++
 3 files changed, 32 insertions(+), 18 deletions(-)

diff --git a/media-gfx/freecad/freecad-1.0_rc1.ebuild 
b/media-gfx/freecad/freecad-1.0_rc1-r1.ebuild
similarity index 96%
rename from media-gfx/freecad/freecad-1.0_rc1.ebuild
rename to media-gfx/freecad/freecad-1.0_rc1-r1.ebuild
index cfc5732f206f..0cd5f233f0bb 100644
--- a/media-gfx/freecad/freecad-1.0_rc1.ebuild
+++ b/media-gfx/freecad/freecad-1.0_rc1-r1.ebuild
@@ -27,12 +27,12 @@ fi
 # examples are licensed CC-BY-SA (without note of specific version)
 LICENSE="LGPL-2 CC-BY-SA-4.0"
 SLOT="0"
-IUSE="debug designer +gui qt6 test"
+IUSE="debug designer +gui +qt6 test"
 
 FREECAD_EXPERIMENTAL_MODULES="cloud netgen pcl"
 FREECAD_STABLE_MODULES="addonmgr fem idf image inspection material
-       openscad part-design path points raytracing robot show surface
-       techdraw tux"
+       openscad part-design path points raytracing robot show smesh
+       surface techdraw tux"
 
 for module in ${FREECAD_STABLE_MODULES}; do
        IUSE="${IUSE} +${module}"
@@ -52,6 +52,7 @@ RDEPEND="
        dev-libs/libfmt:=
        dev-libs/libspnav[X]
        dev-libs/xerces-c[icu]
+       dev-ruby/asciidoctor
        !qt6? (
                dev-qt/qtconcurrent:5
                dev-qt/qtcore:5
@@ -118,6 +119,10 @@ RDEPEND="
        netgen? ( media-gfx/netgen[opencascade] )
        openscad? ( media-gfx/openscad )
        pcl? ( sci-libs/pcl:=[opengl,openni2,vtk] )
+       smesh? (
+               !qt6? ( sci-libs/vtk:=[qt5] )
+               qt6? ( sci-libs/vtk:=[-qt5,qt6] )
+       )
        $(python_gen_cond_dep '
                dev-python/numpy[${PYTHON_USEDEP}]
                dev-python/pybind11[${PYTHON_USEDEP}]
@@ -125,9 +130,9 @@ RDEPEND="
                fem? ( dev-python/ply[${PYTHON_USEDEP}] )
        ')
 "
-DEPEND="
-       ${RDEPEND}
+DEPEND="${RDEPEND}
        >=dev-cpp/eigen-3.3.1:3
+       dev-cpp/ms-gsl
        test? (
                $(python_gen_cond_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]')
                !qt6? ( dev-qt/qttest:5 )
@@ -201,7 +206,7 @@ src_configure() {
        local mycmakeargs=(
                -DBUILD_ADDONMGR=$(usex addonmgr)
                -DBUILD_ARCH=ON
-               -DBUILD_ASSEMBLY=OFF                                    # 
deprecated
+               -DBUILD_ASSEMBLY=OFF                    # Requires OndselSolver
                -DBUILD_CLOUD=$(usex cloud)
                -DBUILD_COMPLETE=OFF                                    # 
deprecated
                -DBUILD_DRAFT=ON
@@ -231,7 +236,7 @@ src_configure() {
                -DBUILD_ROBOT=$(usex robot)
                -DBUILD_SHOW=$(usex show)
                -DBUILD_SKETCHER=ON                                             
# needed by draft workspace
-               -DBUILD_SMESH=ON
+               -DBUILD_SMESH=$(usex smesh)
                -DBUILD_SPREADSHEET=ON
                -DBUILD_START=ON
                -DBUILD_SURFACE=$(usex surface)
@@ -337,14 +342,13 @@ src_install() {
                # https://github.com/coin3d/coin/issues/451
                : \${QT_QPA_PLATFORM:=xcb}
                export QT_QPA_PLATFORM
-               exec /usr/$(get_libdir)/${PN}/bin/FreeCAD \${@}
+               exec /usr/$(get_libdir)/${PN}/bin/FreeCAD "\${@}"
                _EOF_
                mv "${ED}"/usr/$(get_libdir)/${PN}/share/* "${ED}"/usr/share || 
die "failed to move shared resources"
        fi
        dosym -r /usr/$(get_libdir)/${PN}/bin/FreeCADCmd /usr/bin/freecadcmd
 
        rm -r "${ED}"/usr/$(get_libdir)/${PN}/include/E57Format || die "failed 
to drop unneeded include directory E57Format"
-       use test && (rm -r "${ED}"/usr/include/${PN}/{gmock,gtest} || die)
 
        python_optimize "${ED}"/usr/share/${PN}/data/Mod/Start/StartPage 
"${ED}"/usr/$(get_libdir)/${PN}{/Ext,/Mod}/
        # compile main package in python site-packages as well

diff --git a/media-gfx/freecad/freecad-9999.ebuild 
b/media-gfx/freecad/freecad-9999.ebuild
index 250c1a1dbbf7..239dd9e8222e 100644
--- a/media-gfx/freecad/freecad-9999.ebuild
+++ b/media-gfx/freecad/freecad-9999.ebuild
@@ -26,12 +26,12 @@ fi
 # examples are licensed CC-BY-SA (without note of specific version)
 LICENSE="LGPL-2 CC-BY-SA-4.0"
 SLOT="0"
-IUSE="debug designer +gui qt6 test"
+IUSE="debug designer +gui +qt6 test"
 
 FREECAD_EXPERIMENTAL_MODULES="cloud netgen pcl"
 FREECAD_STABLE_MODULES="addonmgr fem idf image inspection material
-       openscad part-design path points raytracing robot show surface
-       techdraw tux"
+       openscad part-design path points raytracing robot show smesh
+       surface techdraw tux"
 
 for module in ${FREECAD_STABLE_MODULES}; do
        IUSE="${IUSE} +${module}"
@@ -51,6 +51,7 @@ RDEPEND="
        dev-libs/libfmt:=
        dev-libs/libspnav[X]
        dev-libs/xerces-c[icu]
+       dev-ruby/asciidoctor
        !qt6? (
                dev-qt/qtconcurrent:5
                dev-qt/qtcore:5
@@ -117,6 +118,10 @@ RDEPEND="
        netgen? ( media-gfx/netgen[opencascade] )
        openscad? ( media-gfx/openscad )
        pcl? ( sci-libs/pcl:=[opengl,openni2,vtk] )
+       smesh? (
+               !qt6? ( sci-libs/vtk:=[qt5] )
+               qt6? ( sci-libs/vtk:=[-qt5,qt6] )
+       )
        $(python_gen_cond_dep '
                dev-python/numpy[${PYTHON_USEDEP}]
                dev-python/pybind11[${PYTHON_USEDEP}]
@@ -124,9 +129,9 @@ RDEPEND="
                fem? ( dev-python/ply[${PYTHON_USEDEP}] )
        ')
 "
-DEPEND="
-       ${RDEPEND}
+DEPEND="${RDEPEND}
        >=dev-cpp/eigen-3.3.1:3
+       dev-cpp/ms-gsl
        test? (
                $(python_gen_cond_dep 'dev-python/pyyaml[${PYTHON_USEDEP}]')
                !qt6? ( dev-qt/qttest:5 )
@@ -194,10 +199,13 @@ src_configure() {
        # https://github.com/FreeCAD/FreeCAD/issues/13173
        filter-lto
 
+       # Fix building tests
+       append-ldflags -Wl,--copy-dt-needed-entries
+
        local mycmakeargs=(
                -DBUILD_ADDONMGR=$(usex addonmgr)
                -DBUILD_ARCH=ON
-               -DBUILD_ASSEMBLY=OFF                                    # 
deprecated
+               -DBUILD_ASSEMBLY=OFF                    # Requires OndselSolver
                -DBUILD_CLOUD=$(usex cloud)
                -DBUILD_COMPLETE=OFF                                    # 
deprecated
                -DBUILD_DRAFT=ON
@@ -227,7 +235,7 @@ src_configure() {
                -DBUILD_ROBOT=$(usex robot)
                -DBUILD_SHOW=$(usex show)
                -DBUILD_SKETCHER=ON                                             
# needed by draft workspace
-               -DBUILD_SMESH=ON
+               -DBUILD_SMESH=$(usex smesh)
                -DBUILD_SPREADSHEET=ON
                -DBUILD_START=ON
                -DBUILD_SURFACE=$(usex surface)
@@ -333,14 +341,13 @@ src_install() {
                # https://github.com/coin3d/coin/issues/451
                : \${QT_QPA_PLATFORM:=xcb}
                export QT_QPA_PLATFORM
-               exec /usr/$(get_libdir)/${PN}/bin/FreeCAD \${@}
+               exec /usr/$(get_libdir)/${PN}/bin/FreeCAD "\${@}"
                _EOF_
                mv "${ED}"/usr/$(get_libdir)/${PN}/share/* "${ED}"/usr/share || 
die "failed to move shared resources"
        fi
        dosym -r /usr/$(get_libdir)/${PN}/bin/FreeCADCmd /usr/bin/freecadcmd
 
        rm -r "${ED}"/usr/$(get_libdir)/${PN}/include/E57Format || die "failed 
to drop unneeded include directory E57Format"
-       use test && (rm -r "${ED}"/usr/include/${PN}/{gmock,gtest} || die)
 
        python_optimize "${ED}"/usr/share/${PN}/data/Mod/Start/StartPage 
"${ED}"/usr/$(get_libdir)/${PN}{/Ext,/Mod}/
        # compile main package in python site-packages as well

diff --git a/media-gfx/freecad/metadata.xml b/media-gfx/freecad/metadata.xml
index b934f4a2b2de..0787a07fc30c 100644
--- a/media-gfx/freecad/metadata.xml
+++ b/media-gfx/freecad/metadata.xml
@@ -78,6 +78,9 @@
                <flag name="show">
                        Build the show module, a helper module for visibility 
automation
                </flag>
+               <flag name="smesh">
+                       Build the Salome SMESH module
+               </flag>
                <flag name="surface">
                        Build the surface module and workbench
                </flag>

Reply via email to