Accepting request 1099891 from science
- Require wxWidgets >= 3.1.6 * Add PrusaSlicer-drop-wx3.0.patch * gh#prusa3d/PrusaSlicer#11026, gh#prusa3d/PrusaSlicer#11027 (forwarded request 1099890 from bnavigator) OBS-URL: https://build.opensuse.org/request/show/1099891 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/PrusaSlicer?expand=0&rev=28
This commit is contained in:
commit
3a1bd3d4c8
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:e58278067b9d49a42dc9bb02b74307b3cb365bb737f28e246ca8c6f466095d6b
|
||||
size 49039089
|
13
PrusaSlicer-2.6.0-octoprint-name-fix.patch
Normal file
13
PrusaSlicer-2.6.0-octoprint-name-fix.patch
Normal file
@ -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));
|
@ -0,0 +1,76 @@
|
||||
From 24a5ebd65c9d25a0fd69a3716d079fd1b00eb15c Mon Sep 17 00:00:00 2001
|
||||
From: Pascal de Bruijn <pmjdebruijn@pcode.nl>
|
||||
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<float>& 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);
|
||||
}
|
@ -1,112 +0,0 @@
|
||||
From 408e56f0390f20aaf793e0aa0c70c4d9544401d4 Mon Sep 17 00:00:00 2001
|
||||
From: Vojtech Bubnik <bubnikv@gmail.com>
|
||||
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<std::pair<std::string, std::string>>& 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 <map>
|
||||
+
|
||||
#include <boost/algorithm/string/replace.hpp>
|
||||
#include <boost/filesystem.hpp>
|
||||
#include <boost/nowide/fstream.hpp>
|
||||
#include <boost/log/trivial.hpp>
|
||||
#include <boost/property_tree/ini_parser.hpp>
|
||||
-#include <map>
|
||||
+
|
||||
#include <cereal/archives/binary.hpp>
|
||||
#include <cereal/types/string.hpp>
|
||||
#include <cereal/types/vector.hpp>
|
||||
@@ -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<std::string>& 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<std::string>& 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 <bubnikv@gmail.com>
|
||||
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 <string>
|
||||
|
||||
#include <boost/nowide/cstdio.hpp>
|
||||
+#include <boost/nowide/fstream.hpp>
|
||||
#include <boost/filesystem.hpp>
|
||||
#include <libslic3r/ModelArrange.hpp>
|
||||
|
||||
@@ -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<char>(t)), std::istreambuf_iterator<char>());
|
||||
boost::nowide::remove(temp.string().c_str());
|
||||
return str;
|
@ -1,69 +0,0 @@
|
||||
From 0ffcfd8393457fd035576436752267c9a1e6bbcc Mon Sep 17 00:00:00 2001
|
||||
From: Yuri D'Elia <wavexx@thregr.org>
|
||||
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)
|
85
PrusaSlicer-drop-wx3.0.patch
Normal file
85
PrusaSlicer-drop-wx3.0.patch
Normal file
@ -0,0 +1,85 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 49fe3437f..aa297b03b 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -26,7 +26,6 @@ endif()
|
||||
option(SLIC3R_STATIC "Compile PrusaSlicer with static libraries (Boost, TBB, glew)" ${SLIC3R_STATIC_INITIAL})
|
||||
option(SLIC3R_GUI "Compile PrusaSlicer with GUI components (OpenGL, wxWidgets)" 1)
|
||||
option(SLIC3R_FHS "Assume PrusaSlicer is to be installed in a FHS directory structure" 0)
|
||||
-option(SLIC3R_WX_STABLE "Build against wxWidgets stable (3.0) as oppsed to dev (3.1) on Linux" 0)
|
||||
option(SLIC3R_PCH "Use precompiled headers" 1)
|
||||
option(SLIC3R_MSVC_COMPILE_PARALLEL "Compile on Visual Studio in parallel" 1)
|
||||
option(SLIC3R_MSVC_PDB "Generate PDB files on MSVC in Release mode" 1)
|
||||
diff --git a/doc/Dependencies.md b/doc/Dependencies.md
|
||||
index d8ced6318..5645e7169 100644
|
||||
--- a/doc/Dependencies.md
|
||||
+++ b/doc/Dependencies.md
|
||||
@@ -1,7 +1,7 @@
|
||||
# Dependency report for PrusaSlicer
|
||||
## Possible dynamic linking on Linux
|
||||
* zlib: Strict dependency required from the system, linked dynamically. Many other libs depend on zlib.
|
||||
-* wxWidgets: searches for wx-3.1 by default, but with cmake option `SLIC3R_WX_STABLE=ON` it will use wx-3.0 bundled with most distros.
|
||||
+* wxWidgets >= 3.1.6
|
||||
* libcurl
|
||||
* tbb
|
||||
* boost
|
||||
diff --git a/doc/How to build - Linux et al.md b/doc/How to build - Linux et al.md
|
||||
index 81e6310c4..de6e365fb 100644
|
||||
--- a/doc/How to build - Linux et al.md
|
||||
+++ b/doc/How to build - Linux et al.md
|
||||
@@ -87,7 +87,6 @@ And that's it. It is now possible to run the freshly built PrusaSlicer binary:
|
||||
- `-DSLIC3R_ASAN=ON` enables gcc/clang address sanitizer (defaults to `OFF`, requires gcc>4.8 or clang>3.1)
|
||||
- `-DSLIC3R_GTK=3` to use GTK3 (defaults to `2`). Note that wxWidgets must be built against the same GTK version.
|
||||
- `-DSLIC3R_STATIC=ON` for static build (defaults to `OFF`)
|
||||
-- `-DSLIC3R_WX_STABLE=ON` to look for wxWidgets 3.0 (defaults to `OFF`)
|
||||
- `-DCMAKE_BUILD_TYPE=Debug` to build in debug mode (defaults to `Release`)
|
||||
- `-DSLIC3R_GUI=no` to build the console variant of PrusaSlicer
|
||||
|
||||
@@ -101,14 +100,6 @@ As already mentioned above, dynamic linking of dependencies is possible, but Pru
|
||||
|
||||
The list of dependencies can be easily obtained by inspecting the CMake scripts in the `deps/` directory. Some of the dependencies don't have to be as recent as the versions listed - generally versions available on conservative Linux distros such as Debian stable, Ubuntu LTS releases or Fedora are likely sufficient. If you decide to build this way, it is your responsibility to make sure that CMake finds all required dependencies. It is possible to look at your distribution PrusaSlicer package to see how the package maintainers solved the dependency issues.
|
||||
|
||||
-#### wxWidgets
|
||||
-By default, PrusaSlicer looks for wxWidgets 3.1. Our build script in fact downloads specific patched version of wxWidgets. If you want to link against wxWidgets 3.0 (which are still provided by most distributions because wxWidgets 3.1 have not yet been declared stable), you must set `-DSLIC3R_WX_STABLE=ON` when running CMake. Note that while PrusaSlicer can be linked against wWidgets 3.0, the combination is not well tested and there might be bugs in the resulting application.
|
||||
-
|
||||
-When building on ubuntu 20.04 focal fossa, the package libwxgtk3.0-gtk3-dev needs to be installed instead of libwxgtk3.0-dev and you should use:
|
||||
-```
|
||||
--DSLIC3R_WX_STABLE=1 -DSLIC3R_GTK=3
|
||||
-```
|
||||
-
|
||||
## Miscellaneous
|
||||
|
||||
### Installation
|
||||
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||
index 50eccfc84..1a335f2cd 100644
|
||||
--- a/src/CMakeLists.txt
|
||||
+++ b/src/CMakeLists.txt
|
||||
@@ -49,23 +49,17 @@ if (SLIC3R_GUI)
|
||||
|
||||
if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||
set (wxWidgets_CONFIG_OPTIONS "--toolkit=gtk${SLIC3R_GTK}")
|
||||
- if (SLIC3R_WX_STABLE)
|
||||
- find_package(wxWidgets 3.0 REQUIRED COMPONENTS base core adv html gl)
|
||||
- else ()
|
||||
- find_package(wxWidgets 3.1 QUIET COMPONENTS base core adv html gl)
|
||||
-
|
||||
- if (NOT wxWidgets_FOUND)
|
||||
- message(FATAL_ERROR "\nCould not find wxWidgets 3.1.\n"
|
||||
- "Hint: On Linux you can set -DSLIC3R_WX_STABLE=1 to use wxWidgets 3.0\n")
|
||||
- endif ()
|
||||
+ find_package(wxWidgets 3.1.6 QUIET COMPONENTS base core adv html gl)
|
||||
+ if (NOT wxWidgets_FOUND)
|
||||
+ message(FATAL_ERROR "Could not find wxWidgets >= 3.1.6")
|
||||
endif ()
|
||||
|
||||
include(${wxWidgets_USE_FILE})
|
||||
else ()
|
||||
- find_package(wxWidgets 3.1 COMPONENTS html adv gl core base)
|
||||
+ find_package(wxWidgets 3.1.6 COMPONENTS html adv gl core base)
|
||||
if (NOT wxWidgets_FOUND)
|
||||
message(STATUS "Trying to find wxWidgets in CONFIG mode...")
|
||||
- find_package(wxWidgets 3.2 CONFIG REQUIRED COMPONENTS html adv gl core base)
|
||||
+ find_package(wxWidgets 3.1.6 CONFIG REQUIRED COMPONENTS html adv gl core base)
|
||||
slic3r_remap_configs(wx::wxhtml wx::wxadv wx::wxgl wx::wxcore wx::wxbase RelWithDebInfo Release)
|
||||
else ()
|
||||
include(${wxWidgets_USE_FILE})
|
3
PrusaSlicer-version_2.6.0.tar.gz
Normal file
3
PrusaSlicer-version_2.6.0.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:a15f68e3b18a047c8c9a18a9d91629d2c777be1932087684cf6d2332d0888e77
|
||||
size 56430180
|
@ -1,3 +1,40 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Jul 21 10:32:11 UTC 2023 - Ben Greiner <code@bnavigator.de>
|
||||
|
||||
- Require wxWidgets >= 3.1.6
|
||||
* Add PrusaSlicer-drop-wx3.0.patch
|
||||
* gh#prusa3d/PrusaSlicer#11026, gh#prusa3d/PrusaSlicer#11027
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Jul 9 14:30:54 UTC 2023 - Ben Greiner <code@bnavigator.de>
|
||||
|
||||
- BuildRequire nanosvg-devel >= 2022.12.22
|
||||
* only the fltk fork has nsvgRasterizeXY()
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jul 5 14:13:11 UTC 2023 - Hans-Peter Jansen <hpj@urpla.net>
|
||||
|
||||
- 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 <hpj@urpla.net>
|
||||
|
||||
- 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 <kkaempf@suse.com>
|
||||
|
||||
|
@ -17,21 +17,21 @@
|
||||
|
||||
|
||||
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
|
||||
# PATCH-FIX-UPSTREAM PrusaSlicer-drop-wx3.0.patch gh#prusa3d/PrusaSlicer#11027 - wxWidgets >= 3.1.6 is required
|
||||
Patch3: PrusaSlicer-drop-wx3.0.patch
|
||||
BuildRequires: blosc-devel
|
||||
BuildRequires: cereal-devel
|
||||
BuildRequires: cgal-devel >= 4.13.2
|
||||
@ -46,9 +46,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,17 +62,23 @@ 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
|
||||
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
|
||||
BuildRequires: wxWidgets-devel >= 3.1.6
|
||||
# need the fltk fork, see deps/NanoSVG/NanoSVG.cmake
|
||||
BuildRequires: nanosvg-devel >= 2022.12.22
|
||||
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 +95,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 +119,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
|
||||
|
||||
|
@ -1,49 +0,0 @@
|
||||
From 6a714bb602a25290d2aedf74eb1232fb9efd5979 Mon Sep 17 00:00:00 2001
|
||||
From: Piotr Karbowski <slashbeast@gentoo.org>
|
||||
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 <slashbeast@gentoo.org>
|
||||
--- 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);
|
||||
}
|
Loading…
Reference in New Issue
Block a user