diff --git a/media-gfx/prusaslicer/Manifest b/media-gfx/prusaslicer/Manifest index 53d1843ea4dc2..fcfdd86ebd775 100644 --- a/media-gfx/prusaslicer/Manifest +++ b/media-gfx/prusaslicer/Manifest @@ -1 +1,2 @@ DIST prusaslicer-2.9.2.tar.gz 76992191 BLAKE2B ac88d2549baeb896137f85531eabe8e3c87b2998766e9f21d5e10be62fd421d821d2e66a818462c26fd20105fa3589e5396300f8795f0f97cbf26d11d25dd1bf SHA512 f43d6c2e639f029f91e722bcbac7db993ff4df69a850421e9acac4165bafeeb7f765a9ecab88d5bd5221524b3fbce78ae84f62d290a406406fd75644811440c1 +DIST prusaslicer-2.9.3.tar.gz 77547931 BLAKE2B 0c84eaa7a94991bd0d691adc70d96291146c2776ec6030449bd9f3dd9d0fe645f7298d55a7e66aeb55f4476a331750cd95216910f3135b18a90fb23cf627a050 SHA512 d4463d1057bc14c62584f7c66cffd29189d12417d4badab992e73d8e5fd63f3f5e573f7a1904c9271777aedc28802e7938d69e4d9d96aa6b02b8f91208f4b3f3 diff --git a/media-gfx/prusaslicer/prusaslicer-2.9.3.ebuild b/media-gfx/prusaslicer/prusaslicer-2.9.3.ebuild new file mode 100644 index 0000000000000..d679a8fb8cf14 --- /dev/null +++ b/media-gfx/prusaslicer/prusaslicer-2.9.3.ebuild @@ -0,0 +1,112 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +WX_GTK_VER="3.2-gtk3" +MY_PN="PrusaSlicer" +MY_PV="$(ver_rs 3 -)" + +inherit cmake wxwidgets xdg + +if [[ ${PV} == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/prusa3d/prusaslicer.git" +else + SRC_URI="https://github.com/prusa3d/PrusaSlicer/archive/refs/tags/version_${MY_PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~arm64 ~x86" + S="${WORKDIR}/${MY_PN}-version_${MY_PV}" +fi + +DESCRIPTION="A mesh slicer to generate G-code for fused-filament-fabrication (3D printers)" +HOMEPAGE="https://www.prusa3d.com/prusaslicer/" + +LICENSE="AGPL-3 Boost-1.0 GPL-2 LGPL-3 MIT" +SLOT="0" +IUSE="test" + +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-cpp/eigen:3 + dev-cpp/tbb:= + dev-libs/boost:=[nls] + dev-libs/cereal + dev-libs/expat + dev-libs/glib:2 + dev-libs/gmp:= + dev-libs/mpfr:= + media-gfx/openvdb:= + media-gfx/libbgcode + net-misc/curl[adns] + media-libs/glew:0= + media-libs/libjpeg-turbo:= + media-libs/libpng:0= + media-libs/qhull:= + net-libs/webkit-gtk:4.1 + sci-libs/libigl + sci-libs/nlopt + sci-libs/opencascade:= + sci-mathematics/cgal:= + sci-mathematics/z3:= + sys-apps/dbus + sys-libs/zlib:= + virtual/opengl + x11-libs/gtk+:3 + x11-libs/wxGTK:${WX_GTK_VER}=[X,opengl,webkit] + media-libs/nanosvg:= +" +DEPEND="${RDEPEND} + media-libs/qhull[static-libs] + test? ( =dev-cpp/catch-3.8* ) +" + +PATCHES=( + "${FILESDIR}/${PN}-2.6.0-dont-force-link-to-wayland-and-x11.patch" + "${FILESDIR}/${PN}-2.8.1-cgal-6.0.patch" + "${FILESDIR}/${PN}-2.8.1-fstream.patch" + "${FILESDIR}/${PN}-2.8.1-fix-libsoup-double-linking.patch" + "${FILESDIR}/${PN}-2.8.1-boost-1.87.patch" + "${FILESDIR}/${PN}-2.9.2-boost-1.88.patch" +) + +src_prepare() { + if has_version ">=sci-libs/opencascade-7.8.0"; then + eapply "${FILESDIR}/prusaslicer-2.8.1-opencascade-7.8.0.patch" + fi + + sed -i -e 's/PrusaSlicer-${SLIC3R_VERSION}+UNKNOWN/PrusaSlicer-${SLIC3R_VERSION}+Gentoo/g' version.inc || die + + sed -i -e 's/find_package(OpenCASCADE 7.6.[0-9] REQUIRED)/find_package(OpenCASCADE REQUIRED)/g' \ + src/occt_wrapper/CMakeLists.txt || die + + cmake_src_prepare +} + +src_configure() { + CMAKE_BUILD_TYPE="Release" + + setup-wxwidgets + + local mycmakeargs=( + -DOPENVDB_FIND_MODULE_PATH="/usr/$(get_libdir)/cmake/OpenVDB" + + -DSLIC3R_BUILD_TESTS=$(usex test) + -DSLIC3R_FHS=ON + -DSLIC3R_GTK=3 + -DSLIC3R_GUI=ON + -DSLIC3R_PCH=OFF + -DSLIC3R_STATIC=OFF + -DSLIC3R_WX_STABLE=ON + -Wno-dev + ) + + cmake_src_configure +} + +src_test() { + CMAKE_SKIP_TESTS=( + "^libslic3r_tests$" + ) + cmake_src_test +}