diff --git a/media-gfx/prusaslicer/Manifest b/media-gfx/prusaslicer/Manifest index fcfdd86ebd775..bd83fe0151225 100644 --- a/media-gfx/prusaslicer/Manifest +++ b/media-gfx/prusaslicer/Manifest @@ -1,2 +1,3 @@ DIST prusaslicer-2.9.2.tar.gz 76992191 BLAKE2B ac88d2549baeb896137f85531eabe8e3c87b2998766e9f21d5e10be62fd421d821d2e66a818462c26fd20105fa3589e5396300f8795f0f97cbf26d11d25dd1bf SHA512 f43d6c2e639f029f91e722bcbac7db993ff4df69a850421e9acac4165bafeeb7f765a9ecab88d5bd5221524b3fbce78ae84f62d290a406406fd75644811440c1 DIST prusaslicer-2.9.3.tar.gz 77547931 BLAKE2B 0c84eaa7a94991bd0d691adc70d96291146c2776ec6030449bd9f3dd9d0fe645f7298d55a7e66aeb55f4476a331750cd95216910f3135b18a90fb23cf627a050 SHA512 d4463d1057bc14c62584f7c66cffd29189d12417d4badab992e73d8e5fd63f3f5e573f7a1904c9271777aedc28802e7938d69e4d9d96aa6b02b8f91208f4b3f3 +DIST prusaslicer-2.9.4.tar.gz 79411287 BLAKE2B 599999496c5a31fc8d7aeca804409a400edd4ff69efcabbf92662a40f04729d63c0937c25aaf1dc02304a16dfb9637b469c61d0f6ec250c9d58f9fc8a52b78fb SHA512 777b1fb3e2a6ce0f233c34749dc351b9ded2a9900a0e4b7ebc0c8c9cb2d7b2a4eec5da49772da16cdb317ecb2fba319166bb3da113e46d9ac5e6c2d5d4ca430e diff --git a/media-gfx/prusaslicer/prusaslicer-2.9.4.ebuild b/media-gfx/prusaslicer/prusaslicer-2.9.4.ebuild new file mode 100644 index 0000000000000..c005e61aa5f36 --- /dev/null +++ b/media-gfx/prusaslicer/prusaslicer-2.9.4.ebuild @@ -0,0 +1,113 @@ +# 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-cpp/nlohmann_json:= + 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 + virtual/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 +}