From 07f7b199d0e15db20fcd6c2797c7eac0eee8d7306b1d7f4f5d4bbace79f64630 Mon Sep 17 00:00:00 2001 From: Benjamin Greiner Date: Thu, 6 Jul 2023 18:35:53 +0000 Subject: [PATCH] Accepting request 1097058 from home:frispete:3dprinting - disable slic3r_jobs_tests.cpp, as it fails sometimes - PrusaSlicer-2.6.0-wxWidgets-CheckResizerFlags-assert-fix.patch applied - Update to version 2.6.0 * too many changes to list here, you may want to check: https://github.com/prusa3d/PrusaSlicer/commits/version_2.6.0 * PrusaSlicer-boost1.79.patch was applied upstream: removed * PrusaSlicer-cereal.patch was applied upstream: removed * gentoo-887055-boost-fix.patch was applied upstream: removed * new dependencies: nanosvg (new package), glu and glew * more sed fiddling required for system expat and qhull support * PrusaSlicer-2.6.0-octoprint-name-fix.patch added to work around compile error: cast lambda expressionn to same type * wxWidgets 3.0 is not supported anymore (even project states otherwise). Let's hope, it will work with 3.2 better now. upstream is using a patched 3.1 version. OBS-URL: https://build.opensuse.org/request/show/1097058 OBS-URL: https://build.opensuse.org/package/show/science/PrusaSlicer?expand=0&rev=59 --- PrusaSlicer-2.5.2.tar.gz | 3 - PrusaSlicer-2.6.0-octoprint-name-fix.patch | 13 ++ ...Widgets-CheckResizerFlags-assert-fix.patch | 76 ++++++++++++ PrusaSlicer-boost1.79.patch | 112 ------------------ PrusaSlicer-cereal.patch | 69 ----------- PrusaSlicer-version_2.6.0.tar.gz | 3 + PrusaSlicer.changes | 24 ++++ PrusaSlicer.spec | 45 ++++--- gentoo-887055-boost-fix.patch | 49 -------- 9 files changed, 144 insertions(+), 250 deletions(-) delete mode 100644 PrusaSlicer-2.5.2.tar.gz create mode 100644 PrusaSlicer-2.6.0-octoprint-name-fix.patch create mode 100644 PrusaSlicer-2.6.0-wxWidgets-CheckResizerFlags-assert-fix.patch delete mode 100644 PrusaSlicer-boost1.79.patch delete mode 100644 PrusaSlicer-cereal.patch create mode 100644 PrusaSlicer-version_2.6.0.tar.gz delete mode 100644 gentoo-887055-boost-fix.patch diff --git a/PrusaSlicer-2.5.2.tar.gz b/PrusaSlicer-2.5.2.tar.gz deleted file mode 100644 index da0b809..0000000 --- a/PrusaSlicer-2.5.2.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:e58278067b9d49a42dc9bb02b74307b3cb365bb737f28e246ca8c6f466095d6b -size 49039089 diff --git a/PrusaSlicer-2.6.0-octoprint-name-fix.patch b/PrusaSlicer-2.6.0-octoprint-name-fix.patch new file mode 100644 index 0000000..5256ff1 --- /dev/null +++ b/PrusaSlicer-2.6.0-octoprint-name-fix.patch @@ -0,0 +1,13 @@ +Index: b/src/slic3r/Utils/OctoPrint.cpp +=================================================================== +--- a/src/slic3r/Utils/OctoPrint.cpp ++++ b/src/slic3r/Utils/OctoPrint.cpp +@@ -746,7 +746,7 @@ bool PrusaLink::get_storage(wxArrayStrin + if (path && (!available || *available)) { + StorageInfo si; + si.path = boost::nowide::widen(*path); +- si.name = name ? boost::nowide::widen(*name) : wxString(); ++ si.name = name ? wxString(boost::nowide::widen(*name)) : wxString(); + // If read_only is missing, assume it is NOT read only. + // si.read_only = read_only ? *read_only : false; // version without "ro" + si.read_only = (read_only ? *read_only : (ro ? *ro : false)); diff --git a/PrusaSlicer-2.6.0-wxWidgets-CheckResizerFlags-assert-fix.patch b/PrusaSlicer-2.6.0-wxWidgets-CheckResizerFlags-assert-fix.patch new file mode 100644 index 0000000..b940c34 --- /dev/null +++ b/PrusaSlicer-2.6.0-wxWidgets-CheckResizerFlags-assert-fix.patch @@ -0,0 +1,76 @@ +From 24a5ebd65c9d25a0fd69a3716d079fd1b00eb15c Mon Sep 17 00:00:00 2001 +From: Pascal de Bruijn +Date: Wed, 14 Jun 2023 19:56:35 +0200 +Subject: [PATCH] wxWidgets: CheckResizerFlags assert fix + +./src/common/sizer.cpp(2258): assert "CheckSizerFlags(!((flags) & (wxALIGN_CENTRE_VERTICAL)))" +failed in DoInsert(): wxALIGN_CENTRE_VERTICAL will be ignored in this sizer: +wxEXPAND overrides alignment flags in box sizers +--- + src/slic3r/GUI/Field.cpp | 2 +- + src/slic3r/GUI/FirmwareDialog.cpp | 2 +- + src/slic3r/GUI/Tab.cpp | 4 ++-- + src/slic3r/GUI/WipeTowerDialog.cpp | 2 +- + 4 files changed, 5 insertions(+), 5 deletions(-) + +diff --git a/src/slic3r/GUI/Field.cpp b/src/slic3r/GUI/Field.cpp +index 74ad028d363..6789ce24cb5 100644 +--- a/src/slic3r/GUI/Field.cpp ++++ b/src/slic3r/GUI/Field.cpp +@@ -1660,7 +1660,7 @@ void SliderCtrl::BUILD() + m_textctrl->SetFont(Slic3r::GUI::wxGetApp().normal_font()); + m_textctrl->SetBackgroundStyle(wxBG_STYLE_PAINT); + +- temp->Add(m_slider, 1, wxEXPAND | wxALIGN_CENTER_VERTICAL, 0); ++ temp->Add(m_slider, 1, wxEXPAND, 0); + temp->Add(m_textctrl, 0, wxALIGN_CENTER_VERTICAL, 0); + + m_slider->Bind(wxEVT_SLIDER, ([this](wxCommandEvent e) { +diff --git a/src/slic3r/GUI/FirmwareDialog.cpp b/src/slic3r/GUI/FirmwareDialog.cpp +index 47402644f4b..46d2fdb60d1 100644 +--- a/src/slic3r/GUI/FirmwareDialog.cpp ++++ b/src/slic3r/GUI/FirmwareDialog.cpp +@@ -841,7 +841,7 @@ FirmwareDialog::FirmwareDialog(wxWindow *parent) : + grid->Add(port_sizer, 0, wxEXPAND); + + grid->Add(label_progress, 0, wxALIGN_CENTER_VERTICAL); +- grid->Add(p->progressbar, 1, wxEXPAND | wxALIGN_CENTER_VERTICAL); ++ grid->Add(p->progressbar, 1, wxEXPAND); + + grid->Add(label_status, 0, wxALIGN_CENTER_VERTICAL); + grid->Add(p->txt_status, 0, wxEXPAND); +diff --git a/src/slic3r/GUI/Tab.cpp b/src/slic3r/GUI/Tab.cpp +index 184b8af707f..c95fcd44219 100644 +--- a/src/slic3r/GUI/Tab.cpp ++++ b/src/slic3r/GUI/Tab.cpp +@@ -217,7 +217,7 @@ void Tab::create_preset_tab() + + const float scale_factor = em_unit(this)*0.1;// GetContentScaleFactor(); + m_top_hsizer = new wxBoxSizer(wxHORIZONTAL); +- sizer->Add(m_top_hsizer, 0, wxEXPAND | wxBOTTOM | wxALIGN_CENTER_VERTICAL, 3); ++ sizer->Add(m_top_hsizer, 0, wxEXPAND | wxBOTTOM, 3); + m_top_hsizer->Add(m_presets_choice, 0, wxLEFT | wxRIGHT | wxTOP | wxALIGN_CENTER_VERTICAL, 3); + m_top_hsizer->AddSpacer(int(4*scale_factor)); + +@@ -243,7 +243,7 @@ void Tab::create_preset_tab() + m_h_buttons_sizer->AddSpacer(int(8*scale_factor)); + m_h_buttons_sizer->Add(m_btn_compare_preset, 0, wxALIGN_CENTER_VERTICAL); + +- m_top_hsizer->Add(m_h_buttons_sizer, 1, wxEXPAND | wxALIGN_CENTRE_VERTICAL); ++ m_top_hsizer->Add(m_h_buttons_sizer, 1, wxEXPAND); + m_top_hsizer->AddSpacer(int(16*scale_factor)); + // StretchSpacer has a strange behavior under OSX, so + // There is used just additional sizer for m_mode_sizer with right alignment +diff --git a/src/slic3r/GUI/WipeTowerDialog.cpp b/src/slic3r/GUI/WipeTowerDialog.cpp +index 4d117ff8d62..6d48daa6292 100644 +--- a/src/slic3r/GUI/WipeTowerDialog.cpp ++++ b/src/slic3r/GUI/WipeTowerDialog.cpp +@@ -353,7 +353,7 @@ WipingPanel::WipingPanel(wxWindow* parent, const std::vector& matrix, con + hsizer->AddSpacer(10); + hsizer->Add(new wxStaticText(m_page_simple, wxID_ANY, wxString(_(L("Tool #"))) << i + 1 << ": "), 0, wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL); + +- gridsizer_simple->Add(hsizer, 1, wxEXPAND | wxALIGN_CENTER_VERTICAL); ++ gridsizer_simple->Add(hsizer, 1, wxEXPAND); + gridsizer_simple->Add(m_old.back(),0); + gridsizer_simple->Add(m_new.back(),0); + } diff --git a/PrusaSlicer-boost1.79.patch b/PrusaSlicer-boost1.79.patch deleted file mode 100644 index f32d1cd..0000000 --- a/PrusaSlicer-boost1.79.patch +++ /dev/null @@ -1,112 +0,0 @@ -From 408e56f0390f20aaf793e0aa0c70c4d9544401d4 Mon Sep 17 00:00:00 2001 -From: Vojtech Bubnik -Date: Mon, 25 Apr 2022 08:33:48 +0200 -Subject: [PATCH] Fix of Boost 1.79 deprecated boost::filesystem::ofstream - #8238 Replacing boost::filesystem::fstream with boost::nowide::fstream - variants with the unfortunate cost of string path conversion on Windows from - 16 bits to UTF8 and back to 16 bits. - -Unfortunately we cannot use std::filesystem yet as it is missing -on older MACs and because the interface is crooked minefield on Windows -see https://github.com/microsoft/STL/issues/909 ---- - src/hints/HintsToPot.cpp | 2 +- - src/libslic3r/Preset.cpp | 2 +- - src/slic3r/GUI/HintNotification.cpp | 8 +++++--- - 3 files changed, 7 insertions(+), 5 deletions(-) - -diff --git a/src/hints/HintsToPot.cpp b/src/hints/HintsToPot.cpp -index 7c8029cdeb..4791f0612f 100644 ---- a/src/hints/HintsToPot.cpp -+++ b/src/hints/HintsToPot.cpp -@@ -9,7 +9,7 @@ - - bool write_to_pot(boost::filesystem::path path, const std::vector>& data) - { -- boost::filesystem::ofstream file(std::move(path), std::ios_base::app); -+ boost::nowide::ofstream file(path.string(), std::ios_base::app); - for (const auto& element : data) - { - //Example of .pot element -diff --git a/src/libslic3r/Preset.cpp b/src/libslic3r/Preset.cpp -index f3a1c15b3e..f171cb14dd 100644 ---- a/src/libslic3r/Preset.cpp -+++ b/src/libslic3r/Preset.cpp -@@ -84,7 +84,7 @@ ConfigFileType guess_config_file_type(const ptree &tree) - VendorProfile VendorProfile::from_ini(const boost::filesystem::path &path, bool load_all) - { - ptree tree; -- boost::filesystem::ifstream ifs(path); -+ boost::nowide::ifstream ifs(path.string()); - boost::property_tree::read_ini(ifs, tree); - return VendorProfile::from_ini(tree, path, load_all); - } -diff --git a/src/slic3r/GUI/HintNotification.cpp b/src/slic3r/GUI/HintNotification.cpp -index 93e0fb3259..820b74eedb 100644 ---- a/src/slic3r/GUI/HintNotification.cpp -+++ b/src/slic3r/GUI/HintNotification.cpp -@@ -14,12 +14,14 @@ - #include "libslic3r/Config.hpp" - #include "libslic3r/PrintConfig.hpp" - -+#include -+ - #include - #include - #include - #include - #include --#include -+ - #include - #include - #include -@@ -65,7 +67,7 @@ inline void push_style_color(ImGuiCol idx, const ImVec4& col, bool fading_out, f - - void write_used_binary(const std::vector& ids) - { -- boost::filesystem::ofstream file((boost::filesystem::path(data_dir()) / "cache" / "hints.cereal"), std::ios::binary); -+ boost::nowide::ofstream file((boost::filesystem::path(data_dir()) / "cache" / "hints.cereal").string(), std::ios::binary); - cereal::BinaryOutputArchive archive(file); - HintsCerealData cd { ids }; - try -@@ -84,7 +86,7 @@ void read_used_binary(std::vector& ids) - BOOST_LOG_TRIVIAL(warning) << "Failed to load to hints.cereal. File does not exists. " << path.string(); - return; - } -- boost::filesystem::ifstream file(path); -+ boost::nowide::ifstream file(path.string()); - cereal::BinaryInputArchive archive(file); - HintsCerealData cd; - try -From 926ae0471800abd1e5335e251a5934570eb8f6ff Mon Sep 17 00:00:00 2001 -From: Vojtech Bubnik -Date: Mon, 25 Apr 2022 11:32:03 +0200 -Subject: [PATCH] Follow-up to 408e56f0390f20aaf793e0aa0c70c4d9544401d4 Fixing - compilation of tests on latest GCC/boost - ---- - tests/fff_print/test_data.cpp | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/tests/fff_print/test_data.cpp b/tests/fff_print/test_data.cpp -index 32e31c264c..f7077007db 100644 ---- a/tests/fff_print/test_data.cpp -+++ b/tests/fff_print/test_data.cpp -@@ -11,6 +11,7 @@ - #include - - #include -+#include - #include - #include - -@@ -286,7 +287,7 @@ std::string gcode(Print & print) - print.set_status_silent(); - print.process(); - print.export_gcode(temp.string(), nullptr, nullptr); -- std::ifstream t(temp.string()); -+ boost::nowide::ifstream t(temp.string()); - std::string str((std::istreambuf_iterator(t)), std::istreambuf_iterator()); - boost::nowide::remove(temp.string().c_str()); - return str; diff --git a/PrusaSlicer-cereal.patch b/PrusaSlicer-cereal.patch deleted file mode 100644 index 9b92ba1..0000000 --- a/PrusaSlicer-cereal.patch +++ /dev/null @@ -1,69 +0,0 @@ -From 0ffcfd8393457fd035576436752267c9a1e6bbcc Mon Sep 17 00:00:00 2001 -From: Yuri D'Elia -Date: Mon, 24 Jan 2022 20:21:24 +0100 -Subject: [PATCH] Use namespaces to link against libcereal >= 1.3.1 - -Create an alias for previous versions. ---- - CMakeLists.txt | 3 +++ - src/CMakeLists.txt | 2 +- - src/libslic3r/CMakeLists.txt | 2 +- - src/slic3r/CMakeLists.txt | 2 +- - 4 files changed, 6 insertions(+), 3 deletions(-) - -Index: PrusaSlicer-version_2.4.2/CMakeLists.txt -=================================================================== ---- PrusaSlicer-version_2.4.2.orig/CMakeLists.txt -+++ PrusaSlicer-version_2.4.2/CMakeLists.txt -@@ -474,6 +474,12 @@ endif () - - # Find the Cereal serialization library - find_package(cereal REQUIRED) -+add_library(libcereal INTERFACE) -+if (NOT TARGET cereal::cereal) -+ target_link_libraries(libcereal INTERFACE cereal) -+else() -+ target_link_libraries(libcereal INTERFACE cereal::cereal) -+endif() - - # l10n - set(L10N_DIR "${SLIC3R_RESOURCES_DIR}/localization") -Index: PrusaSlicer-version_2.4.2/src/CMakeLists.txt -=================================================================== ---- PrusaSlicer-version_2.4.2.orig/src/CMakeLists.txt -+++ PrusaSlicer-version_2.4.2/src/CMakeLists.txt -@@ -125,7 +125,7 @@ if (NOT WIN32 AND NOT APPLE) - set_target_properties(PrusaSlicer PROPERTIES OUTPUT_NAME "prusa-slicer") - endif () - --target_link_libraries(PrusaSlicer libslic3r cereal) -+target_link_libraries(PrusaSlicer libslic3r libcereal) - - if (APPLE) - # add_compile_options(-stdlib=libc++) -Index: PrusaSlicer-version_2.4.2/src/libslic3r/CMakeLists.txt -=================================================================== ---- PrusaSlicer-version_2.4.2.orig/src/libslic3r/CMakeLists.txt -+++ PrusaSlicer-version_2.4.2/src/libslic3r/CMakeLists.txt -@@ -337,7 +337,7 @@ target_include_directories(libslic3r PUB - target_link_libraries(libslic3r - libnest2d - admesh -- cereal -+ libcereal - libigl - miniz - boost_libs -Index: PrusaSlicer-version_2.4.2/src/slic3r/CMakeLists.txt -=================================================================== ---- PrusaSlicer-version_2.4.2.orig/src/slic3r/CMakeLists.txt -+++ PrusaSlicer-version_2.4.2/src/slic3r/CMakeLists.txt -@@ -260,7 +260,7 @@ add_library(libslic3r_gui STATIC ${SLIC3 - - encoding_check(libslic3r_gui) - --target_link_libraries(libslic3r_gui libslic3r avrdude cereal imgui GLEW::GLEW OpenGL::GL hidapi libcurl ${wxWidgets_LIBRARIES}) -+target_link_libraries(libslic3r_gui libslic3r avrdude libcereal imgui GLEW::GLEW OpenGL::GL hidapi libcurl ${wxWidgets_LIBRARIES}) - - if (MSVC) - target_link_libraries(libslic3r_gui Setupapi.lib) diff --git a/PrusaSlicer-version_2.6.0.tar.gz b/PrusaSlicer-version_2.6.0.tar.gz new file mode 100644 index 0000000..750572e --- /dev/null +++ b/PrusaSlicer-version_2.6.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a15f68e3b18a047c8c9a18a9d91629d2c777be1932087684cf6d2332d0888e77 +size 56430180 diff --git a/PrusaSlicer.changes b/PrusaSlicer.changes index 5dfb19d..140fede 100644 --- a/PrusaSlicer.changes +++ b/PrusaSlicer.changes @@ -1,3 +1,27 @@ +------------------------------------------------------------------- +Wed Jul 5 14:13:11 UTC 2023 - Hans-Peter Jansen + +- disable slic3r_jobs_tests.cpp, as it fails sometimes +- PrusaSlicer-2.6.0-wxWidgets-CheckResizerFlags-assert-fix.patch + applied + +------------------------------------------------------------------- +Tue Jul 4 17:16:14 UTC 2023 - Hans-Peter Jansen + +- Update to version 2.6.0 + * too many changes to list here, you may want to check: + https://github.com/prusa3d/PrusaSlicer/commits/version_2.6.0 + * PrusaSlicer-boost1.79.patch was applied upstream: removed + * PrusaSlicer-cereal.patch was applied upstream: removed + * gentoo-887055-boost-fix.patch was applied upstream: removed + * new dependencies: nanosvg (new package), glu and glew + * more sed fiddling required for system expat and qhull support + * PrusaSlicer-2.6.0-octoprint-name-fix.patch added to work around + compile error: cast lambda expressionn to same type + * wxWidgets 3.0 is not supported anymore (even project states + otherwise). Let's hope, it will work with 3.2 better now. + upstream is using a patched 3.1 version. + ------------------------------------------------------------------- Fri Apr 21 15:04:55 UTC 2023 - Klaus Kämpf diff --git a/PrusaSlicer.spec b/PrusaSlicer.spec index c43c1f0..28fbbf0 100644 --- a/PrusaSlicer.spec +++ b/PrusaSlicer.spec @@ -17,21 +17,19 @@ Name: PrusaSlicer -Version: 2.5.2 +Version: 2.6.0 Release: 0 Summary: G-code generator for 3D printers (RepRap, Makerbot, Ultimaker etc.) License: AGPL-3.0-only Group: Hardware/Printing URL: https://www.prusa3d.com/prusaslicer/ -Source0: https://github.com/prusa3d/PrusaSlicer/archive/version_%{version}.tar.gz#/%{name}-%{version}.tar.gz -# PATCH-FIX-UPSTREAM PrusaSlicer-boost1.79.patch -- gh#prusa3d/PrusaSlicer#8238 -Patch0: PrusaSlicer-boost1.79.patch -# PATCH-FIX-UPSTREAM PrusaSlicer-cereal.patch -- gh#prusa3d/PrusaSlicer#7809 -Patch1: PrusaSlicer-cereal.patch -# PATCH-FIX-UPSTREAM gentoo-887055-boost-fix.patch -- gh#prusa3d/PrusaSlicer#9294 -Patch2: gentoo-887055-boost-fix.patch +Source0: https://github.com/prusa3d/PrusaSlicer/archive/version_%{version}.tar.gz#/%{name}-version_%{version}.tar.gz # PATCH-FIX-OPENSUSE up-occt-version.patch mike.chikov@gmail.com -- install wrapper so into libdir, not bindir -Patch3: up-occt-version.patch +Patch0: up-occt-version.patch +# PATCH-FIX-OPENSUSE PrusaSlicer-2.6.0-octoprint-name-fix.patch -- cast lambda expression to same type +Patch1: PrusaSlicer-2.6.0-octoprint-name-fix.patch +# PATCH-FIX-UPSTREAM PrusaSlicer-2.6.0-wxWidgets-CheckResizerFlags-assert-fix.patch -- https://github.com/prusa3d/PrusaSlicer/commit/24a5ebd65c9d25a0fd69a3716d079fd1b00eb15c.patch +Patch2: PrusaSlicer-2.6.0-wxWidgets-CheckResizerFlags-assert-fix.patch BuildRequires: blosc-devel BuildRequires: cereal-devel BuildRequires: cgal-devel >= 4.13.2 @@ -46,9 +44,6 @@ BuildRequires: fdupes %define gcc_ver 10 %endif BuildRequires: gcc%gcc_ver-c++ -# For now, use bundled GLEW because of gh#prusa3d/PrusaSlicer#6396 -#!BuildIgnore: glew-devel -#!BuildIgnore: libglfw3-wayland BuildRequires: gtest >= 1.7 BuildRequires: libboost_atomic-devel BuildRequires: libboost_filesystem-devel @@ -65,7 +60,6 @@ BuildRequires: memory-constraints BuildRequires: nlopt-devel BuildRequires: occt-devel BuildRequires: openexr-devel -# See https://github.com/prusa3d/PrusaSlicer/pull/9103 BuildRequires: openvdb-devel >= 7.1 BuildRequires: openvdb-tools BuildRequires: pkgconfig @@ -73,9 +67,19 @@ BuildRequires: tbb-devel BuildRequires: update-desktop-files # 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 +# update: this seems to be changed which 2.6.x, which requires wxBitmapComboBox, +# that's not available with earlier versions. Try to build with wx 3.2 now. +BuildRequires: wxWidgets-devel +BuildRequires: cmake(NanoSVG) BuildRequires: pkgconfig(dbus-1) +BuildRequires: pkgconfig(gl) +BuildRequires: pkgconfig(glew) +BuildRequires: pkgconfig(glu) BuildRequires: pkgconfig(libudev) +BuildRequires: pkgconfig(qhull_r) +BuildRequires: pkgconfig(qhullcpp) +BuildRequires: pkgconfig(wayland-client) +BuildRequires: pkgconfig(wayland-egl) Requires: noto-sans-fonts %description @@ -92,6 +96,14 @@ sed -i 's/UNKNOWN/%{release}-%{?is_opensuse:open}SUSE-%{suse_version}/' version. %endif # this is not prusaslicer specific, space mouse users install it themselves rm resources/udev/90-3dconnexion.rules +# we want to use the system provided expat lib +sed -i "/add_library(libexpat INTERFACE)/d" CMakeLists.txt +# adjust the qhull version requirement +sed -i "s|find_package(Qhull 7.2 REQUIRED)|find_package(Qhull 8.0.2 REQUIRED)|" src/CMakeLists.txt +# fix qhull link with static lib issue +sed -i 's#INTERFACE Qhull::qhullcpp#INTERFACE -lqhullcpp#' src/CMakeLists.txt +# Disable slic3r_jobs_tests.cpp as the test fails sometimes +sed -i 's|slic3r_jobs_tests.cpp||' tests/slic3rutils/CMakeLists.txt %build # The build process really acquires that much memory per job. We are @@ -108,12 +120,11 @@ rm resources/udev/90-3dconnexion.rules %endif export CC=gcc-%gcc_ver CXX=g++-%gcc_ver # rh#2059646 -sed -i tests/libslic3r/CMakeLists.txt -e '\@test_voronoi.cpp@d' +#sed -i tests/libslic3r/CMakeLists.txt -e '\@test_voronoi.cpp@d' %cmake \ + -DCMAKE_CXX_STANDARD=17 \ -DSLIC3R_FHS=1 \ - -DSLIC3R_GTK=2 \ - -DSLIC3R_WX_STABLE=1 \ -DOPENVDB_FIND_MODULE_PATH=%{_libdir}/cmake/OpenVDB %cmake_build diff --git a/gentoo-887055-boost-fix.patch b/gentoo-887055-boost-fix.patch deleted file mode 100644 index 83ce0cc..0000000 --- a/gentoo-887055-boost-fix.patch +++ /dev/null @@ -1,49 +0,0 @@ -From 6a714bb602a25290d2aedf74eb1232fb9efd5979 Mon Sep 17 00:00:00 2001 -From: Piotr Karbowski -Date: Tue, 27 Dec 2022 21:11:19 +0100 -Subject: media-gfx/prusaslicer: fix building with boost-1.81. - -Patch contributed by Bradley Jarvis. - -Closes: https://bugs.gentoo.org/887055 -Signed-off-by: Piotr Karbowski ---- a/src/slic3r/GUI/PrintHostDialogs.cpp 2022-12-21 10:21:43.583075853 +1100 -+++ b/src/slic3r/GUI/PrintHostDialogs.cpp 2022-12-21 10:23:03.902694287 +1100 -@@ -79,8 +79,8 @@ PrintHostSendDialog::PrintHostSendDialog - if (size_t extension_start = recent_path.find_last_of('.'); extension_start != std::string::npos) - m_valid_suffix = recent_path.substr(extension_start); - // .gcode suffix control -- auto validate_path = [this](const wxString &path) -> bool { -- if (! path.Lower().EndsWith(m_valid_suffix.Lower())) { -+ auto validate_path = [this](const std::wstring &path) -> bool { -+ if (! wxString(path).Lower().EndsWith(m_valid_suffix.Lower())) { - MessageDialog msg_wingow(this, wxString::Format(_L("Upload filename doesn't end with \"%s\". Do you wish to continue?"), m_valid_suffix), wxString(SLIC3R_APP_NAME), wxYES | wxNO); - if (msg_wingow.ShowModal() == wxID_NO) - return false; -@@ -90,7 +90,7 @@ PrintHostSendDialog::PrintHostSendDialog - - auto* btn_ok = add_button(wxID_OK, true, _L("Upload")); - btn_ok->Bind(wxEVT_BUTTON, [this, validate_path](wxCommandEvent&) { -- if (validate_path(txt_filename->GetValue())) { -+ if (validate_path(txt_filename->GetValue().ToStdWstring())) { - post_upload_action = PrintHostPostUploadAction::None; - EndDialog(wxID_OK); - } -@@ -100,7 +100,7 @@ PrintHostSendDialog::PrintHostSendDialog - if (post_actions.has(PrintHostPostUploadAction::StartPrint)) { - auto* btn_print = add_button(wxID_YES, false, _L("Upload and Print")); - btn_print->Bind(wxEVT_BUTTON, [this, validate_path](wxCommandEvent&) { -- if (validate_path(txt_filename->GetValue())) { -+ if (validate_path(txt_filename->GetValue().ToStdWstring())) { - post_upload_action = PrintHostPostUploadAction::StartPrint; - EndDialog(wxID_OK); - } -@@ -111,7 +111,7 @@ PrintHostSendDialog::PrintHostSendDialog - // Using wxID_MORE as a button identifier to be different from the other buttons, wxID_MORE has no other meaning here. - auto* btn_simulate = add_button(wxID_MORE, false, _L("Upload and Simulate")); - btn_simulate->Bind(wxEVT_BUTTON, [this, validate_path](wxCommandEvent&) { -- if (validate_path(txt_filename->GetValue())) { -+ if (validate_path(txt_filename->GetValue().ToStdWstring())) { - post_upload_action = PrintHostPostUploadAction::StartSimulation; - EndDialog(wxID_OK); - }