2019-08-12 10:58:02 +02:00
|
|
|
#
|
|
|
|
# spec file for package PrusaSlicer
|
|
|
|
#
|
2023-01-01 18:37:00 +01:00
|
|
|
# Copyright (c) 2023 SUSE LLC
|
2019-08-12 10:58:02 +02:00
|
|
|
#
|
|
|
|
# All modifications and additions to the file contributed by third parties
|
|
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
|
|
# upon. The license for this file, and modifications and additions to the
|
|
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
|
|
# license for the pristine package is not an Open Source License, in which
|
|
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
|
|
# published by the Open Source Initiative.
|
|
|
|
|
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
|
|
|
#
|
|
|
|
|
|
|
|
|
|
|
|
Name: PrusaSlicer
|
2023-04-21 19:35:28 +02:00
|
|
|
Version: 2.5.2
|
2019-08-12 10:58:02 +02:00
|
|
|
Release: 0
|
2019-10-06 13:55:34 +02:00
|
|
|
Summary: G-code generator for 3D printers (RepRap, Makerbot, Ultimaker etc.)
|
2019-08-12 10:58:02 +02:00
|
|
|
License: AGPL-3.0-only
|
|
|
|
Group: Hardware/Printing
|
|
|
|
URL: https://www.prusa3d.com/prusaslicer/
|
Accepting request 787172 from home:bnavigator:branches:science
- update to version 2.2.0
introducing SLA hollowing and hole drilling, support for 3rd party
printer vendors, 3Dconnexion support, automatic variable layer height,
macOS dark mode support, greatly improved ColorPrint feature and much,
much more.
See https://github.com/prusa3d/PrusaSlicer/releases/tag/version_2.2.0
and the changelogs for the release candidates, betas and alphas since
2.1.1 for a complete list of changes.
- reactivate parallel builds, but need strong enough workers and reserve
4G of memory per thread (memory-constraints, %limit_build)
- new build dependencies: cgal, ilmbase, more of boost, libudev, openvdb
OBS-URL: https://build.opensuse.org/request/show/787172
OBS-URL: https://build.opensuse.org/package/show/science/PrusaSlicer?expand=0&rev=4
2020-03-25 17:54:58 +01:00
|
|
|
Source0: https://github.com/prusa3d/PrusaSlicer/archive/version_%{version}.tar.gz#/%{name}-%{version}.tar.gz
|
2022-04-24 11:54:18 +02:00
|
|
|
# PATCH-FIX-UPSTREAM PrusaSlicer-boost1.79.patch -- gh#prusa3d/PrusaSlicer#8238
|
|
|
|
Patch0: PrusaSlicer-boost1.79.patch
|
2022-08-01 18:08:46 +02:00
|
|
|
# PATCH-FIX-UPSTREAM PrusaSlicer-cereal.patch -- gh#prusa3d/PrusaSlicer#7809
|
|
|
|
Patch1: PrusaSlicer-cereal.patch
|
2023-01-31 20:18:49 +01:00
|
|
|
# PATCH-FIX-UPSTREAM gentoo-887055-boost-fix.patch -- gh#prusa3d/PrusaSlicer#9294
|
|
|
|
Patch2: gentoo-887055-boost-fix.patch
|
2022-10-29 14:48:04 +02:00
|
|
|
# PATCH-FIX-OPENSUSE up-occt-version.patch mike.chikov@gmail.com -- install wrapper so into libdir, not bindir
|
2023-01-31 20:18:49 +01:00
|
|
|
Patch3: up-occt-version.patch
|
2021-08-30 13:46:03 +02:00
|
|
|
BuildRequires: blosc-devel
|
2019-10-06 13:55:34 +02:00
|
|
|
BuildRequires: cereal-devel
|
Accepting request 787172 from home:bnavigator:branches:science
- update to version 2.2.0
introducing SLA hollowing and hole drilling, support for 3rd party
printer vendors, 3Dconnexion support, automatic variable layer height,
macOS dark mode support, greatly improved ColorPrint feature and much,
much more.
See https://github.com/prusa3d/PrusaSlicer/releases/tag/version_2.2.0
and the changelogs for the release candidates, betas and alphas since
2.1.1 for a complete list of changes.
- reactivate parallel builds, but need strong enough workers and reserve
4G of memory per thread (memory-constraints, %limit_build)
- new build dependencies: cgal, ilmbase, more of boost, libudev, openvdb
OBS-URL: https://build.opensuse.org/request/show/787172
OBS-URL: https://build.opensuse.org/package/show/science/PrusaSlicer?expand=0&rev=4
2020-03-25 17:54:58 +01:00
|
|
|
BuildRequires: cgal-devel >= 4.13.2
|
2019-08-12 10:58:02 +02:00
|
|
|
BuildRequires: cmake
|
|
|
|
BuildRequires: eigen3-devel >= 3
|
|
|
|
BuildRequires: expat
|
|
|
|
BuildRequires: fdupes
|
2022-04-12 11:32:32 +02:00
|
|
|
# gcc v8 is required as least for charconv header. version 10 exists on 15.4 and tumbleweed
|
2022-04-12 16:17:35 +02:00
|
|
|
%if 0%{?suse_version} >= 1550
|
|
|
|
%define gcc_ver %{gcc_version}
|
|
|
|
%else
|
2022-04-12 11:32:32 +02:00
|
|
|
%define gcc_ver 10
|
2022-04-12 16:17:35 +02:00
|
|
|
%endif
|
2022-04-12 11:32:32 +02:00
|
|
|
BuildRequires: gcc%gcc_ver-c++
|
2021-07-09 20:00:25 +02:00
|
|
|
# For now, use bundled GLEW because of gh#prusa3d/PrusaSlicer#6396
|
|
|
|
#!BuildIgnore: glew-devel
|
2022-04-12 11:32:32 +02:00
|
|
|
#!BuildIgnore: libglfw3-wayland
|
2019-08-12 10:58:02 +02:00
|
|
|
BuildRequires: gtest >= 1.7
|
2019-10-06 13:55:34 +02:00
|
|
|
BuildRequires: libboost_atomic-devel
|
2019-08-12 10:58:02 +02:00
|
|
|
BuildRequires: libboost_filesystem-devel
|
Accepting request 787172 from home:bnavigator:branches:science
- update to version 2.2.0
introducing SLA hollowing and hole drilling, support for 3rd party
printer vendors, 3Dconnexion support, automatic variable layer height,
macOS dark mode support, greatly improved ColorPrint feature and much,
much more.
See https://github.com/prusa3d/PrusaSlicer/releases/tag/version_2.2.0
and the changelogs for the release candidates, betas and alphas since
2.1.1 for a complete list of changes.
- reactivate parallel builds, but need strong enough workers and reserve
4G of memory per thread (memory-constraints, %limit_build)
- new build dependencies: cgal, ilmbase, more of boost, libudev, openvdb
OBS-URL: https://build.opensuse.org/request/show/787172
OBS-URL: https://build.opensuse.org/package/show/science/PrusaSlicer?expand=0&rev=4
2020-03-25 17:54:58 +01:00
|
|
|
BuildRequires: libboost_iostreams-devel
|
2019-08-12 10:58:02 +02:00
|
|
|
BuildRequires: libboost_locale-devel
|
|
|
|
BuildRequires: libboost_log-devel
|
|
|
|
BuildRequires: libboost_regex-devel
|
|
|
|
BuildRequires: libboost_system-devel
|
|
|
|
BuildRequires: libboost_thread-devel
|
|
|
|
BuildRequires: libcurl-devel
|
|
|
|
BuildRequires: libexpat-devel
|
2022-10-29 14:48:04 +02:00
|
|
|
BuildRequires: libjpeg-devel
|
2020-08-20 21:00:03 +02:00
|
|
|
BuildRequires: memory-constraints
|
2019-08-12 10:58:02 +02:00
|
|
|
BuildRequires: nlopt-devel
|
2022-10-29 14:48:04 +02:00
|
|
|
BuildRequires: occt-devel
|
2021-08-30 13:46:03 +02:00
|
|
|
BuildRequires: openexr-devel
|
2022-10-29 14:48:04 +02:00
|
|
|
# See https://github.com/prusa3d/PrusaSlicer/pull/9103
|
|
|
|
BuildRequires: openvdb-devel >= 7.1
|
2020-06-16 14:22:23 +02:00
|
|
|
BuildRequires: openvdb-tools
|
2021-12-24 19:19:51 +01:00
|
|
|
BuildRequires: pkgconfig
|
2019-08-12 10:58:02 +02:00
|
|
|
BuildRequires: tbb-devel
|
|
|
|
BuildRequires: update-desktop-files
|
2022-09-05 23:51:15 +02:00
|
|
|
# Quoting Lucas Matena (see gh#prusa3d/PrusaSlicer#8299, issue 2):
|
|
|
|
# if you link PrusaSlicer 2.5.x with wxWidgets 3.2, you will most likely break it.
|
|
|
|
BuildRequires: wxWidgets-3_0-devel
|
|
|
|
BuildRequires: pkgconfig(dbus-1)
|
2020-05-01 14:02:51 +02:00
|
|
|
BuildRequires: pkgconfig(libudev)
|
2019-10-06 13:55:34 +02:00
|
|
|
Requires: noto-sans-fonts
|
2019-08-12 10:58:02 +02:00
|
|
|
|
|
|
|
%description
|
2019-10-06 13:55:34 +02:00
|
|
|
PrusaSlicer takes 3D models (STL, OBJ, AMF) and converts them into G-code
|
|
|
|
instructions for FFF printers or PNG layers for mSLA 3D printers. It's
|
|
|
|
compatible with any modern printer based on the RepRap toolchain, including
|
|
|
|
all those based on the Marlin, Prusa, Sprinter and Repetier firmware.
|
|
|
|
It also works with Mach3, LinuxCNC and Machinekit controllers.
|
2019-08-12 10:58:02 +02:00
|
|
|
|
|
|
|
%prep
|
Accepting request 862424 from home:bnavigator:branches:science
- Update to v2.3.0
* Introducing paint-on supports, ironing, monotonic
infill, seam painting, adaptive and support cubic
infill, print time per feature analysis, standalone
G-code viewer application, better auto-arrange with a
customizable gap and rotation, search function for the
settings, reworked "Avoid crossing perimeters" function,
physical printers (network settings), many new 3rd party
printer profiles and much, much more.
- Full Changelog entries for betas and release candidates:
https://github.com/prusa3d/PrusaSlicer/releases
- Drop PrusaSlicer-pr4340-boost-1-73.patch merged upstream
- Remove extra PrusaSlicer.desktop. Use upstream's desktop files.
Graphics;3DGraphics seems to be the consensus now.
- Remove wrapper gh#prusa3d/PrusaSlicer#4691
OBS-URL: https://build.opensuse.org/request/show/862424
OBS-URL: https://build.opensuse.org/package/show/science/PrusaSlicer?expand=0&rev=23
2021-01-11 23:31:23 +01:00
|
|
|
%autosetup -p1 -n %{name}-version_%{version}
|
|
|
|
%if 0%{?suse_version}
|
2020-09-01 15:19:26 +02:00
|
|
|
sed -i 's/UNKNOWN/%{release}-%{?is_opensuse:open}SUSE-%{suse_version}/' version.inc
|
Accepting request 862424 from home:bnavigator:branches:science
- Update to v2.3.0
* Introducing paint-on supports, ironing, monotonic
infill, seam painting, adaptive and support cubic
infill, print time per feature analysis, standalone
G-code viewer application, better auto-arrange with a
customizable gap and rotation, search function for the
settings, reworked "Avoid crossing perimeters" function,
physical printers (network settings), many new 3rd party
printer profiles and much, much more.
- Full Changelog entries for betas and release candidates:
https://github.com/prusa3d/PrusaSlicer/releases
- Drop PrusaSlicer-pr4340-boost-1-73.patch merged upstream
- Remove extra PrusaSlicer.desktop. Use upstream's desktop files.
Graphics;3DGraphics seems to be the consensus now.
- Remove wrapper gh#prusa3d/PrusaSlicer#4691
OBS-URL: https://build.opensuse.org/request/show/862424
OBS-URL: https://build.opensuse.org/package/show/science/PrusaSlicer?expand=0&rev=23
2021-01-11 23:31:23 +01:00
|
|
|
%endif
|
2021-12-24 19:19:51 +01:00
|
|
|
# this is not prusaslicer specific, space mouse users install it themselves
|
|
|
|
rm resources/udev/90-3dconnexion.rules
|
2019-08-12 10:58:02 +02:00
|
|
|
|
|
|
|
%build
|
2020-08-20 21:00:03 +02:00
|
|
|
# The build process really acquires that much memory per job. We are
|
|
|
|
# limited by memory not by CPU cores. Using memoryperjob in _constraints cannot
|
|
|
|
# provide any workers on some architectures. This is still better than not using
|
|
|
|
# parallel building at all.
|
|
|
|
# https://openbuildservice.org/help/manuals/obs-user-guide/cha.obs.build_job_constraints.html
|
|
|
|
# https://en.opensuse.org/openSUSE:Specfile_guidelines#Parallel_make
|
|
|
|
%limit_build -m 3072
|
Accepting request 862424 from home:bnavigator:branches:science
- Update to v2.3.0
* Introducing paint-on supports, ironing, monotonic
infill, seam painting, adaptive and support cubic
infill, print time per feature analysis, standalone
G-code viewer application, better auto-arrange with a
customizable gap and rotation, search function for the
settings, reworked "Avoid crossing perimeters" function,
physical printers (network settings), many new 3rd party
printer profiles and much, much more.
- Full Changelog entries for betas and release candidates:
https://github.com/prusa3d/PrusaSlicer/releases
- Drop PrusaSlicer-pr4340-boost-1-73.patch merged upstream
- Remove extra PrusaSlicer.desktop. Use upstream's desktop files.
Graphics;3DGraphics seems to be the consensus now.
- Remove wrapper gh#prusa3d/PrusaSlicer#4691
OBS-URL: https://build.opensuse.org/request/show/862424
OBS-URL: https://build.opensuse.org/package/show/science/PrusaSlicer?expand=0&rev=23
2021-01-11 23:31:23 +01:00
|
|
|
# sse2 flags for 32-bit: see gh#prusa3d/PrusaSlicer#3781
|
2020-06-16 14:22:23 +02:00
|
|
|
%ifarch %ix86
|
|
|
|
export CFLAGS="%optflags -mfpmath=sse -msse2"
|
|
|
|
export CXXFLAGS="$CFLAGS"
|
Accepting request 787172 from home:bnavigator:branches:science
- update to version 2.2.0
introducing SLA hollowing and hole drilling, support for 3rd party
printer vendors, 3Dconnexion support, automatic variable layer height,
macOS dark mode support, greatly improved ColorPrint feature and much,
much more.
See https://github.com/prusa3d/PrusaSlicer/releases/tag/version_2.2.0
and the changelogs for the release candidates, betas and alphas since
2.1.1 for a complete list of changes.
- reactivate parallel builds, but need strong enough workers and reserve
4G of memory per thread (memory-constraints, %limit_build)
- new build dependencies: cgal, ilmbase, more of boost, libudev, openvdb
OBS-URL: https://build.opensuse.org/request/show/787172
OBS-URL: https://build.opensuse.org/package/show/science/PrusaSlicer?expand=0&rev=4
2020-03-25 17:54:58 +01:00
|
|
|
%endif
|
2022-04-12 11:32:32 +02:00
|
|
|
export CC=gcc-%gcc_ver CXX=g++-%gcc_ver
|
2022-05-31 21:35:44 +02:00
|
|
|
# rh#2059646
|
|
|
|
sed -i tests/libslic3r/CMakeLists.txt -e '\@test_voronoi.cpp@d'
|
|
|
|
|
2021-08-30 13:46:03 +02:00
|
|
|
%cmake \
|
|
|
|
-DSLIC3R_FHS=1 \
|
2022-09-05 23:51:15 +02:00
|
|
|
-DSLIC3R_GTK=2 \
|
|
|
|
-DSLIC3R_WX_STABLE=1 \
|
2021-08-30 13:46:03 +02:00
|
|
|
-DOPENVDB_FIND_MODULE_PATH=%{_libdir}/cmake/OpenVDB
|
Accepting request 787172 from home:bnavigator:branches:science
- update to version 2.2.0
introducing SLA hollowing and hole drilling, support for 3rd party
printer vendors, 3Dconnexion support, automatic variable layer height,
macOS dark mode support, greatly improved ColorPrint feature and much,
much more.
See https://github.com/prusa3d/PrusaSlicer/releases/tag/version_2.2.0
and the changelogs for the release candidates, betas and alphas since
2.1.1 for a complete list of changes.
- reactivate parallel builds, but need strong enough workers and reserve
4G of memory per thread (memory-constraints, %limit_build)
- new build dependencies: cgal, ilmbase, more of boost, libudev, openvdb
OBS-URL: https://build.opensuse.org/request/show/787172
OBS-URL: https://build.opensuse.org/package/show/science/PrusaSlicer?expand=0&rev=4
2020-03-25 17:54:58 +01:00
|
|
|
%cmake_build
|
2019-08-12 10:58:02 +02:00
|
|
|
|
|
|
|
%install
|
|
|
|
%cmake_install
|
2020-09-01 14:00:03 +02:00
|
|
|
|
2022-10-29 14:48:04 +02:00
|
|
|
%suse_update_desktop_file -r PrusaSlicer Graphics 3DGraphics
|
Accepting request 862424 from home:bnavigator:branches:science
- Update to v2.3.0
* Introducing paint-on supports, ironing, monotonic
infill, seam painting, adaptive and support cubic
infill, print time per feature analysis, standalone
G-code viewer application, better auto-arrange with a
customizable gap and rotation, search function for the
settings, reworked "Avoid crossing perimeters" function,
physical printers (network settings), many new 3rd party
printer profiles and much, much more.
- Full Changelog entries for betas and release candidates:
https://github.com/prusa3d/PrusaSlicer/releases
- Drop PrusaSlicer-pr4340-boost-1-73.patch merged upstream
- Remove extra PrusaSlicer.desktop. Use upstream's desktop files.
Graphics;3DGraphics seems to be the consensus now.
- Remove wrapper gh#prusa3d/PrusaSlicer#4691
OBS-URL: https://build.opensuse.org/request/show/862424
OBS-URL: https://build.opensuse.org/package/show/science/PrusaSlicer?expand=0&rev=23
2021-01-11 23:31:23 +01:00
|
|
|
%suse_update_desktop_file -r PrusaGcodeviewer Graphics 3DGraphics
|
2019-10-06 13:55:34 +02:00
|
|
|
|
|
|
|
#remove stray font file
|
|
|
|
rm -rf %{buildroot}%{_datadir}/%{name}/fonts
|
|
|
|
|
|
|
|
# Copied and adapted from Fedora package:
|
|
|
|
# https://src.fedoraproject.org/rpms/prusa-slicer
|
|
|
|
# Upstream installs the translation source files when they probably shouldn't
|
|
|
|
rm %{buildroot}%{_datadir}/%{name}/localization/{PrusaSlicer.pot,list.txt}
|
|
|
|
find %{buildroot}%{_datadir}/%{name}/localization/ -name \*.po -delete
|
|
|
|
|
|
|
|
# Copied and adapted from Fedora package:
|
|
|
|
# https://src.fedoraproject.org/rpms/prusa-slicer
|
|
|
|
# Handle locale files. The find_lang macro doesn't work because it doesn't
|
|
|
|
# understand the directory structure. This copies part of the funtionality of
|
|
|
|
# find-lang.sh by:
|
|
|
|
# * Getting a listing of all files
|
|
|
|
# * removing the buildroot prefix
|
|
|
|
# * inserting the proper 'lang' tag
|
|
|
|
# * removing everything that doesn't have a lang tag
|
|
|
|
# * A list of lang-specific directories is also added
|
|
|
|
# The resulting file is included in the files list, where we must be careful to
|
|
|
|
# exclude that directory.
|
|
|
|
find %{buildroot}%{_datadir}/%{name}/localization -type f -o -type l | sed '
|
|
|
|
s:'"%{buildroot}"'::
|
|
|
|
s:\(.*/%{name}/localization/\)\([^/_]\+\)\(.*\.mo$\):%%lang(\2) \1\2\3:
|
|
|
|
s:^\([^%].*\)::
|
|
|
|
s:%lang(C) ::
|
|
|
|
/^$/d
|
|
|
|
' > lang-files
|
|
|
|
find %{buildroot}%{_datadir}/%{name}/localization -type d | sed '
|
|
|
|
s:'"%{buildroot}"'::
|
|
|
|
s:\(.*\):%dir \1:
|
|
|
|
' >> lang-files
|
|
|
|
|
2019-08-12 10:58:02 +02:00
|
|
|
%fdupes %{buildroot}%{_datadir}
|
|
|
|
|
|
|
|
%check
|
2022-10-29 14:48:04 +02:00
|
|
|
%ctest
|
2019-08-12 10:58:02 +02:00
|
|
|
|
2019-10-06 13:55:34 +02:00
|
|
|
%files -f lang-files
|
2019-08-12 10:58:02 +02:00
|
|
|
%{_bindir}/prusa-slicer
|
Accepting request 862424 from home:bnavigator:branches:science
- Update to v2.3.0
* Introducing paint-on supports, ironing, monotonic
infill, seam painting, adaptive and support cubic
infill, print time per feature analysis, standalone
G-code viewer application, better auto-arrange with a
customizable gap and rotation, search function for the
settings, reworked "Avoid crossing perimeters" function,
physical printers (network settings), many new 3rd party
printer profiles and much, much more.
- Full Changelog entries for betas and release candidates:
https://github.com/prusa3d/PrusaSlicer/releases
- Drop PrusaSlicer-pr4340-boost-1-73.patch merged upstream
- Remove extra PrusaSlicer.desktop. Use upstream's desktop files.
Graphics;3DGraphics seems to be the consensus now.
- Remove wrapper gh#prusa3d/PrusaSlicer#4691
OBS-URL: https://build.opensuse.org/request/show/862424
OBS-URL: https://build.opensuse.org/package/show/science/PrusaSlicer?expand=0&rev=23
2021-01-11 23:31:23 +01:00
|
|
|
%{_bindir}/prusa-gcodeviewer
|
2022-10-29 14:48:04 +02:00
|
|
|
%{_libdir}/OCCTWrapper.so
|
2019-10-06 13:55:34 +02:00
|
|
|
%dir %{_datadir}/%{name}/
|
2021-12-24 19:19:51 +01:00
|
|
|
%{_datadir}/%{name}/{icons,models,profiles,shaders,udev,data,shapes}/
|
2022-10-29 14:48:04 +02:00
|
|
|
%{_datadir}/icons/hicolor/*/apps/%{name}*.png
|
Accepting request 862424 from home:bnavigator:branches:science
- Update to v2.3.0
* Introducing paint-on supports, ironing, monotonic
infill, seam painting, adaptive and support cubic
infill, print time per feature analysis, standalone
G-code viewer application, better auto-arrange with a
customizable gap and rotation, search function for the
settings, reworked "Avoid crossing perimeters" function,
physical printers (network settings), many new 3rd party
printer profiles and much, much more.
- Full Changelog entries for betas and release candidates:
https://github.com/prusa3d/PrusaSlicer/releases
- Drop PrusaSlicer-pr4340-boost-1-73.patch merged upstream
- Remove extra PrusaSlicer.desktop. Use upstream's desktop files.
Graphics;3DGraphics seems to be the consensus now.
- Remove wrapper gh#prusa3d/PrusaSlicer#4691
OBS-URL: https://build.opensuse.org/request/show/862424
OBS-URL: https://build.opensuse.org/package/show/science/PrusaSlicer?expand=0&rev=23
2021-01-11 23:31:23 +01:00
|
|
|
%{_datadir}/applications/PrusaSlicer.desktop
|
|
|
|
%{_datadir}/applications/PrusaGcodeviewer.desktop
|
2019-08-12 10:58:02 +02:00
|
|
|
%license LICENSE
|
|
|
|
%doc README.md doc/
|
|
|
|
|
|
|
|
%changelog
|