diff options
author | Bernd Waibel <waebbl-gentoo@posteo.net> | 2021-10-17 21:55:29 +0200 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2021-11-02 10:04:37 +0000 |
commit | 6499c130f97644defd3b71d86c4af3b3b5c96c2a (patch) | |
tree | 5bb08b310b33c7e0b9586cfbfe6822dbb6177ac4 /media-gfx | |
parent | media-libs/freeimage: restrict dependency on openexr (diff) | |
download | gentoo-6499c130f97644defd3b71d86c4af3b3b5c96c2a.tar.gz gentoo-6499c130f97644defd3b71d86c4af3b3b5c96c2a.tar.bz2 gentoo-6499c130f97644defd3b71d86c4af3b3b5c96c2a.zip |
media-gfx/freecad: install freecad-thumbnailer
Can be used by file-managers to show previews for FreeCAD's .fcstd
files.
Additional changes:
- bump to EAPI 8
- cleanup inherit statement
- patch to build with boost-1.77.0
- soften sci-libs/pcl dependency. pcl-1.12 supports vtk-9, so there's
no longer any need to use live ebuild
- clean optfeature statments from packages which are installed anyway
or controlled by USE flags
- use C++17
Suggested-by: Michael Perlov <perlovka@gmail.com>
Bug: https://github.com/waebbl/waebbl-gentoo/issues/341
Closes: https://bugs.gentoo.org/821160
Package-Manager: Portage-3.0.28, Repoman-3.0.3
Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'media-gfx')
-rw-r--r-- | media-gfx/freecad/files/freecad-9999-Add-memory-header-for-std-shared_ptr.patch | 31 | ||||
-rw-r--r-- | media-gfx/freecad/freecad-9999.ebuild | 24 |
2 files changed, 43 insertions, 12 deletions
diff --git a/media-gfx/freecad/files/freecad-9999-Add-memory-header-for-std-shared_ptr.patch b/media-gfx/freecad/files/freecad-9999-Add-memory-header-for-std-shared_ptr.patch new file mode 100644 index 000000000000..81a8f22d8937 --- /dev/null +++ b/media-gfx/freecad/files/freecad-9999-Add-memory-header-for-std-shared_ptr.patch @@ -0,0 +1,31 @@ +From: Bernd Waibel <waebbl-gentoo@posteo.net> +Date: Sat, 16 Oct 2021 17:02:19 +0200 +Subject: [PATCH] Add memory header for std::shared_ptr + +Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net> +--- + src/App/Metadata.h | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/App/Metadata.h b/src/App/Metadata.h +index de8be3ea8e..2c5fd8f417 100644 +--- a/src/App/Metadata.h ++++ b/src/App/Metadata.h +@@ -30,6 +30,7 @@ + #include <string> + #include <vector> + #include <map> ++#include <memory> + + #include <xercesc/dom/DOM.hpp> + #include <xercesc/parsers/XercesDOMParser.hpp> +@@ -296,4 +297,4 @@ namespace App { + + } + +-#endif +\ No newline at end of file ++#endif +-- +2.33.1 + diff --git a/media-gfx/freecad/freecad-9999.ebuild b/media-gfx/freecad/freecad-9999.ebuild index 8c0caca6adc6..cef63f28477e 100644 --- a/media-gfx/freecad/freecad-9999.ebuild +++ b/media-gfx/freecad/freecad-9999.ebuild @@ -1,11 +1,11 @@ # Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=7 +EAPI=8 PYTHON_COMPAT=( python3_{8,9} ) -inherit check-reqs cmake desktop eapi8-dosym optfeature python-single-r1 xdg +inherit check-reqs cmake optfeature python-single-r1 xdg DESCRIPTION="QT based Computer Aided Design application" HOMEPAGE="https://www.freecadweb.org/ https://github.com/FreeCAD/FreeCAD" @@ -81,7 +81,7 @@ RDEPEND=" ) fem? ( sci-libs/vtk:=[boost,python,qt5,rendering,${PYTHON_SINGLE_USEDEP}] ) openscad? ( media-gfx/openscad ) - pcl? ( ~sci-libs/pcl-${PV}:=[opengl,openni2(+),qt5(+),vtk(+)] ) + pcl? ( sci-libs/pcl:=[opengl,openni2(+),qt5(+),vtk(+)] ) $(python_gen_cond_dep ' dev-libs/boost:=[python,threads(+),${PYTHON_USEDEP}] dev-python/matplotlib[${PYTHON_USEDEP}] @@ -120,6 +120,7 @@ REQUIRED_USE=" PATCHES=( "${FILESDIR}"/${PN}-0.19_pre20201231-0003-Gentoo-specific-don-t-check-vcs.patch "${FILESDIR}"/${PN}-0.19.1-0001-Gentoo-specific-Remove-ccache-usage.patch + "${FILESDIR}"/${P}-Add-memory-header-for-std-shared_ptr.patch ) DOCS=( CODE_OF_CONDUCT.md ChangeLog.txt README.md ) @@ -168,7 +169,7 @@ src_configure() { -DBUILD_COMPLETE=OFF # deprecated -DBUILD_DRAFT=ON -DBUILD_DRAWING=ON - -DBUILD_ENABLE_CXX_STD:STRING="C++14" # needed for >=boost-1.75.0 + -DBUILD_ENABLE_CXX_STD:STRING="C++17" # needed for current git master -DBUILD_FEM=$(usex fem) -DBUILD_FEM_NETGEN=OFF -DBUILD_FLAT_MESH=ON @@ -224,14 +225,14 @@ src_configure() { -DFREECAD_USE_QT_FILEDIALOG=ON -DFREECAD_USE_QTWEBMODULE:STRING="Qt WebEngine" - # Use the version of shiboken2 that matches the selected python version - -DPYTHON_CONFIG_SUFFIX="-${EPYTHON}" - # install python modules to site-packages' dir. True only for the main package, # sub-packages will still be installed inside /usr/lib64/freecad -DINSTALL_TO_SITEPACKAGES=ON + # Use the version of shiboken2 that matches the selected python version + -DPYTHON_CONFIG_SUFFIX="-${EPYTHON}" -DPython3_EXECUTABLE=${PYTHON} + -DOCCT_CMAKE_FALLBACK=ON # don't use occt-config which isn't included in opencascade for Gentoo ) @@ -289,11 +290,13 @@ src_test() { src_install() { cmake_src_install + dobin src/Tools/freecad-thumbnailer + if ! use headless; then - dosym8 -r /usr/$(get_libdir)/${PN}/bin/FreeCAD /usr/bin/freecad + dosym -r /usr/$(get_libdir)/${PN}/bin/FreeCAD /usr/bin/freecad mv "${ED}"/usr/$(get_libdir)/freecad/share/* "${ED}"/usr/share || die "failed to move shared ressources" fi - dosym8 -r /usr/$(get_libdir)/${PN}/bin/FreeCADCmd /usr/bin/freecadcmd + dosym -r /usr/$(get_libdir)/${PN}/bin/FreeCADCmd /usr/bin/freecadcmd 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 @@ -326,14 +329,11 @@ pkg_postinst() { einfo "support. Some of them are available in Gentoo. Take a look at" einfo "https://wiki.freecadweb.org/Installing#External_software_supported_by_FreeCAD" optfeature_header "Computational utilities" - optfeature "numerical computations with Python" dev-python/numpy optfeature "BLAS library" sci-libs/openblas optfeature "statistical computation with Python" dev-python/pandas - optfeature "usage of Point Clouds" sci-libs/pcl optfeature "scientific computation with Python" dev-python/scipy optfeature "symbolic math with Python" dev-python/sympy optfeature_header "Imaging, Plotting and Rendering utilities" - optfeature "function plotting with Python" dev-python/matplotlib optfeature "dependency graphs" media-gfx/graphviz optfeature "PBR Rendering" media-gfx/povray optfeature_header "Import / Export" |