blob: fbf13e9d7d66404bb774162258bdb3f006e19c75 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
|
# Copyright 1999-2024 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:=
sci-libs/libigl
sci-libs/nlopt
sci-libs/opencascade:=
sci-mathematics/cgal:=
sys-apps/dbus
sys-libs/zlib:=
virtual/opengl
x11-libs/gtk+:3
>=x11-libs/wxGTK-3.2.2.1-r3:${WX_GTK_VER}[X,opengl,webkit]
media-libs/nanosvg:=
"
DEPEND="${RDEPEND}
media-libs/qhull[static-libs]
test? ( =dev-cpp/catch-2* )
"
PATCHES=(
"${FILESDIR}/${PN}-2.6.0-dont-force-link-to-wayland-and-x11.patch"
"${FILESDIR}/${PN}-2.8.0-missing-includes.patch"
"${FILESDIR}/${PN}-2.8.0-wxwidgets-3.2.4.patch"
"${FILESDIR}/${PN}-2.8.1-fixed-linking.patch"
"${FILESDIR}/${PN}-2.8.1-cgal-6.0.patch"
"${FILESDIR}/${PN}-2.8.1-fstream.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
find . -type f \( -name '*.cpp' -o -name '*.h' -o -name '*.hpp' \) -exec \
sed -i 's|#include <Eigen/|#include <eigen3/Eigen/|g; s|#include <unsupported/Eigen/|#include <eigen3/unsupported/Eigen/|g' {} + || 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
}
|