public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: media-gfx/superslicer/files/, media-gfx/superslicer/
@ 2022-07-14 20:45 Piotr Karbowski
  0 siblings, 0 replies; 6+ messages in thread
From: Piotr Karbowski @ 2022-07-14 20:45 UTC (permalink / raw
  To: gentoo-commits

commit:     81e3ca3b7c131e8345aede89e3bbcd700e1ad567
Author:     Piotr Karbowski <slashbeast <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 14 20:44:58 2022 +0000
Commit:     Piotr Karbowski <slashbeast <AT> gentoo <DOT> org>
CommitDate: Thu Jul 14 20:45:26 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=81e3ca3b

media-gfx/superslicer: new package.

Signed-off-by: Piotr Karbowski <slashbeast <AT> gentoo.org>

 media-gfx/superslicer/Manifest                     |   1 +
 ...perslicer-2.4.58.3-AppConfig-include-I18N.patch |  12 +
 ....3-CreateMMUTiledCanvas-include-wx-rawbmp.patch |  12 +
 .../superslicer-2.4.58.3-boost-1.79-port-v2.patch  | 244 +++++++++++++++++++++
 .../files/superslicer-2.4.58.3-cereal.patch        |  70 ++++++
 .../files/superslicer-2.4.58.3-openexr3.patch      |  77 +++++++
 .../superslicer-2.4.58.3-wxgtk3-wayland.patch      |  21 ++
 media-gfx/superslicer/metadata.xml                 |  12 +
 media-gfx/superslicer/superslicer-2.4.58.3.ebuild  |  88 ++++++++
 9 files changed, 537 insertions(+)

diff --git a/media-gfx/superslicer/Manifest b/media-gfx/superslicer/Manifest
new file mode 100644
index 000000000000..fabb29b27e6a
--- /dev/null
+++ b/media-gfx/superslicer/Manifest
@@ -0,0 +1 @@
+DIST superslicer-2.4.58.3.tar.gz 45203382 BLAKE2B 822af2a1cb8978b21f8efdc0eb4841ec1d86517fd07782a8dfa6be2a58514dc3e772221dca40ff62808cb798fc4f51484b24e847328a7a6f154708431f0c4d3b SHA512 00302fba9ada1cc5df3c58f42fdb7f98322f94de7b78876c6a54a2229ae289e785082ea7a69f67bee54321fc4d97811675eeb70932e5774ab78ca8859343dd4d

diff --git a/media-gfx/superslicer/files/superslicer-2.4.58.3-AppConfig-include-I18N.patch b/media-gfx/superslicer/files/superslicer-2.4.58.3-AppConfig-include-I18N.patch
new file mode 100644
index 000000000000..c5e7398e5bdd
--- /dev/null
+++ b/media-gfx/superslicer/files/superslicer-2.4.58.3-AppConfig-include-I18N.patch
@@ -0,0 +1,12 @@
+diff --git a/src/libslic3r/AppConfig.cpp b/src/libslic3r/AppConfig.cpp
+index 59910e6..c35986c 100644
+--- a/src/libslic3r/AppConfig.cpp
++++ b/src/libslic3r/AppConfig.cpp
+@@ -1,6 +1,7 @@
+ #include <boost/filesystem.hpp>
+ #include "libslic3r/libslic3r.h"
+ #include "libslic3r/Utils.hpp"
++#include "libslic3r/I18N.hpp"
+ #include "AppConfig.hpp"
+ #include "Exception.hpp"
+ #include "LocalesUtils.hpp"

diff --git a/media-gfx/superslicer/files/superslicer-2.4.58.3-CreateMMUTiledCanvas-include-wx-rawbmp.patch b/media-gfx/superslicer/files/superslicer-2.4.58.3-CreateMMUTiledCanvas-include-wx-rawbmp.patch
new file mode 100644
index 000000000000..c2e3a3ef8f39
--- /dev/null
+++ b/media-gfx/superslicer/files/superslicer-2.4.58.3-CreateMMUTiledCanvas-include-wx-rawbmp.patch
@@ -0,0 +1,12 @@
+diff --git a/src/slic3r/GUI/CreateMMUTiledCanvas.cpp b/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
+index be157ea..d63eb11 100644
+--- a/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
++++ b/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
+@@ -40,6 +40,7 @@
+ #include <wx/odcombo.h>
+ #include <wx/textctrl.h>
+ #include <wx/wrapsizer.h>
++#include <wx/rawbmp.h>
+ #include "wxExtensions.hpp"
+ 
+ #include <boost/filesystem/path.hpp>

diff --git a/media-gfx/superslicer/files/superslicer-2.4.58.3-boost-1.79-port-v2.patch b/media-gfx/superslicer/files/superslicer-2.4.58.3-boost-1.79-port-v2.patch
new file mode 100644
index 000000000000..0c1f31a95b72
--- /dev/null
+++ b/media-gfx/superslicer/files/superslicer-2.4.58.3-boost-1.79-port-v2.patch
@@ -0,0 +1,244 @@
+diff --git a/src/hints/HintsToPot.cpp b/src/hints/HintsToPot.cpp
+index 7c8029c..4791f06 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/AppConfig.cpp b/src/libslic3r/AppConfig.cpp
+index 39b590e..b2a8dce 100644
+--- a/src/libslic3r/AppConfig.cpp
++++ b/src/libslic3r/AppConfig.cpp
+@@ -1,3 +1,4 @@
++#include <boost/filesystem.hpp>
+ #include "libslic3r/libslic3r.h"
+ #include "libslic3r/Utils.hpp"
+ #include "AppConfig.hpp"
+diff --git a/src/libslic3r/AppConfig.hpp b/src/libslic3r/AppConfig.hpp
+index d811ddc..1a70230 100644
+--- a/src/libslic3r/AppConfig.hpp
++++ b/src/libslic3r/AppConfig.hpp
+@@ -5,6 +5,7 @@
+ #include <map>
+ #include <string>
+ 
++#include <boost/filesystem/path.hpp>
+ #include <boost/algorithm/string/trim_all.hpp>
+ 
+ #include "libslic3r/Config.hpp"
+diff --git a/src/libslic3r/LocalesUtils.cpp b/src/libslic3r/LocalesUtils.cpp
+index 5bf5205..7b87052 100644
+--- a/src/libslic3r/LocalesUtils.cpp
++++ b/src/libslic3r/LocalesUtils.cpp
+@@ -1,3 +1,4 @@
++#include <boost/lexical_cast.hpp>
+ #include "LocalesUtils.hpp"
+ 
+ #ifdef _WIN32
+diff --git a/src/libslic3r/Preset.cpp b/src/libslic3r/Preset.cpp
+index aa33fb6..277a4b4 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/CreateMMUTiledCanvas.cpp b/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
+index 89212f2..be157ea 100644
+--- a/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
++++ b/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
+@@ -18,6 +18,11 @@
+ #include <wx/notebook.h>
+ #include "Notebook.hpp"
+ 
++#include <boost/filesystem.hpp>
++#include <boost/property_tree/ptree.hpp>
++#include <boost/property_tree/ini_parser.hpp>
++#include <boost/log/trivial.hpp>
++
+ #include "MainFrame.hpp"
+ #include "wxExtensions.hpp"
+ 
+diff --git a/src/slic3r/GUI/DesktopIntegrationDialog.cpp b/src/slic3r/GUI/DesktopIntegrationDialog.cpp
+index fcb7472..866ebae 100644
+--- a/src/slic3r/GUI/DesktopIntegrationDialog.cpp
++++ b/src/slic3r/GUI/DesktopIntegrationDialog.cpp
+@@ -14,6 +14,7 @@
+ #include <boost/log/trivial.hpp>
+ #include <boost/dll/runtime_symbol_info.hpp>
+ #include <boost/algorithm/string/replace.hpp>
++#include <boost/nowide/fstream.hpp>
+ 
+ #include <wx/filename.h>
+ #include <wx/stattext.h>
+@@ -503,4 +504,4 @@ DesktopIntegrationDialog::~DesktopIntegrationDialog()
+ 
+ } // namespace GUI
+ } // namespace Slic3r
+-#endif // __linux__
+\ No newline at end of file
++#endif // __linux__
+diff --git a/src/slic3r/GUI/FreeCADDialog.cpp b/src/slic3r/GUI/FreeCADDialog.cpp
+index ea7142c..1d75ba7 100644
+--- a/src/slic3r/GUI/FreeCADDialog.cpp
++++ b/src/slic3r/GUI/FreeCADDialog.cpp
+@@ -38,6 +38,7 @@
+ #include <boost/log/trivial.hpp>
+ #include <boost/property_tree/ptree.hpp>
+ #include <boost/property_tree/json_parser.hpp>
++#include <boost/nowide/fstream.hpp>
+ 
+ // hack for process.hpp : it uses pid_t to set it as alias of int, but vc_x64_lib (wx thingy) as a '#define pid_t int'
+ // and so boost/process has a line 'typedef int int'instead of 'typedef int pid_t' that makes it crash
+@@ -321,7 +322,7 @@ bool FreeCADDialog::load_text_from_file(const boost::filesystem::path &path) {
+         try {
+             std::locale loc = boost::locale::generator()("en_US.UTF-8");
+             // Open the stream to 'lock' the file.
+-            boost::filesystem::ifstream in;
++            boost::nowide::ifstream in;
+             in.imbue(loc);
+             in.open(path);
+             // Obtain the size of the file.
+@@ -368,7 +369,7 @@ bool FreeCADDialog::write_text_in_file(const wxString &towrite, const boost::fil
+         boost::filesystem::create_directories(file.parent_path());
+         std::locale loc = boost::locale::generator()("en_US.UTF-8");
+         // Open the stream to 'lock' the file.
+-        boost::filesystem::ofstream out;
++        boost::nowide::ofstream out;
+         out.imbue(loc);
+         out.open(file);
+         out << towrite;
+diff --git a/src/slic3r/GUI/GUI_App.cpp b/src/slic3r/GUI/GUI_App.cpp
+index 7851030..4cdd242 100644
+--- a/src/slic3r/GUI/GUI_App.cpp
++++ b/src/slic3r/GUI/GUI_App.cpp
+@@ -19,6 +19,7 @@
+ #include <boost/lexical_cast.hpp>
+ #include <boost/log/trivial.hpp>
+ #include <boost/nowide/convert.hpp>
++#include <boost/nowide/fstream.hpp>
+ 
+ #include <wx/stdpaths.h>
+ #include <wx/imagpng.h>
+diff --git a/src/slic3r/GUI/HintNotification.cpp b/src/slic3r/GUI/HintNotification.cpp
+index 3291630..3a984bf 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
+diff --git a/src/slic3r/GUI/Preferences.cpp b/src/slic3r/GUI/Preferences.cpp
+index 523e52c..bd07f02 100644
+--- a/src/slic3r/GUI/Preferences.cpp
++++ b/src/slic3r/GUI/Preferences.cpp
+@@ -12,6 +12,7 @@
+ #include "OG_CustomCtrl.hpp"
+ #include "wxExtensions.hpp"
+ 
++#include <boost/algorithm/string/split.hpp>
+ #include <boost/filesystem.hpp>
+ #include <boost/filesystem/path.hpp>
+ 
+diff --git a/src/slic3r/GUI/ScriptExecutor.cpp b/src/slic3r/GUI/ScriptExecutor.cpp
+index 5a4a1e2..672bdfa 100644
+--- a/src/slic3r/GUI/ScriptExecutor.cpp
++++ b/src/slic3r/GUI/ScriptExecutor.cpp
+@@ -4,6 +4,13 @@
+ #include "Tab.hpp"
+ #include "libslic3r/PresetBundle.hpp"
+ #include "libslic3r/Print.hpp"
++#include <boost/log/trivial.hpp>
++#include <boost/lexical_cast.hpp>
++#include <boost/algorithm/string/trim_all.hpp>
++#include <boost/algorithm/string/erase.hpp>
++#include <boost/algorithm/string/split.hpp>
++#include <boost/filesystem.hpp>
++#include <boost/filesystem/string_file.hpp>
+ 
+ #include <string>
+ 
+diff --git a/src/slic3r/GUI/Tab.cpp b/src/slic3r/GUI/Tab.cpp
+index 13a4ac0..eb63f2a 100644
+--- a/src/slic3r/GUI/Tab.cpp
++++ b/src/slic3r/GUI/Tab.cpp
+@@ -36,6 +36,8 @@
+ #include <boost/filesystem.hpp>
+ #include <boost/filesystem/path.hpp>
+ #include <boost/lexical_cast.hpp>
++#include <boost/nowide/fstream.hpp>
++#include <boost/log/trivial.hpp>
+ 
+ #include "wxExtensions.hpp"
+ #include "PresetComboBoxes.hpp"
+@@ -1692,7 +1694,7 @@ std::vector<Slic3r::GUI::PageShp> Tab::create_pages(std::string setting_type_nam
+ 
+     //read file
+     //std::ifstream filestream(ui_layout_file.c_str());
+-    boost::filesystem::ifstream filestream(ui_layout_file);
++    boost::nowide::ifstream filestream(ui_layout_file);
+     std::string full_line;
+     while (std::getline(filestream, full_line)) {
+         //remove spaces
+diff --git a/src/slic3r/Utils/Http.cpp b/src/slic3r/Utils/Http.cpp
+index 5fbe94e..b760559 100644
+--- a/src/slic3r/Utils/Http.cpp
++++ b/src/slic3r/Utils/Http.cpp
+@@ -11,6 +11,7 @@
+ #include <boost/filesystem.hpp>
+ #include <boost/format.hpp>
+ #include <boost/log/trivial.hpp>
++#include <boost/nowide/fstream.hpp>
+ 
+ #include <curl/curl.h>
+ 
+@@ -52,7 +53,7 @@ namespace Slic3r {
+ 						% error;
+ 			})
+ 			.on_complete([&](std::string body, unsigned /* http_status */) {
+-				boost::filesystem::fstream file(tmp_path, std::ios::out | std::ios::binary | std::ios::trunc);
++				boost::nowide::fstream file(tmp_path, std::ios::out | std::ios::binary | std::ios::trunc);
+ 				file.write(body.c_str(), body.size());
+ 				file.close();
+ 				boost::filesystem::rename(tmp_path, target_path);

diff --git a/media-gfx/superslicer/files/superslicer-2.4.58.3-cereal.patch b/media-gfx/superslicer/files/superslicer-2.4.58.3-cereal.patch
new file mode 100644
index 000000000000..7b3e179a05f5
--- /dev/null
+++ b/media-gfx/superslicer/files/superslicer-2.4.58.3-cereal.patch
@@ -0,0 +1,70 @@
+diff --git a/cmake/modules/Findcereal.cmake b/cmake/modules/Findcereal.cmake
+deleted file mode 100644
+index b482975..0000000
+--- a/cmake/modules/Findcereal.cmake
++++ /dev/null
+@@ -1,26 +0,0 @@
+-set(_q "")
+-if(${CMAKE_FIND_PACKAGE_NAME}_FIND_QUIETLY)
+-    set(_q QUIET)
+-    set(_quietly TRUE)
+-endif()
+-find_package(${CMAKE_FIND_PACKAGE_NAME} ${${CMAKE_FIND_PACKAGE_NAME}_FIND_VERSION} CONFIG ${_q})
+-
+-if (NOT ${CMAKE_FIND_PACKAGE_NAME}_FOUND)
+-    # Fall-back solution to find the Cereal serialization library header file
+-    include(CheckIncludeFileCXX)
+-    add_library(cereal INTERFACE)
+-    target_include_directories(cereal INTERFACE include)
+-
+-    if (_quietly)
+-        set(CMAKE_REQUIRED_QUIET ON)
+-    endif()
+-    CHECK_INCLUDE_FILE_CXX("cereal/cereal.hpp" HAVE_CEREAL_H)
+-
+-    if (NOT HAVE_CEREAL_H)
+-        if (${CMAKE_FIND_PACKAGE_NAME}_FIND_REQUIRED)
+-            message(FATAL_ERROR "Cereal library not found. Please install the dependency.")
+-        elseif(NOT _quietly)
+-            message(WARNING "Cereal library not found.")
+-        endif()
+-    endif ()
+-endif()
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index ec44417..aab1348 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -141,7 +141,7 @@ if (NOT WIN32)
+     set_target_properties(Slic3r PROPERTIES OUTPUT_NAME "${SLIC3R_APP_CMD}")
+ endif ()
+ 
+-target_link_libraries(Slic3r libslic3r cereal)
++target_link_libraries(Slic3r libslic3r)
+ if (APPLE)
+ #    add_compile_options(-stdlib=libc++)
+ #    add_definitions(-DBOOST_THREAD_DONT_USE_CHRONO -DBOOST_NO_CXX11_RVALUE_REFERENCES -DBOOST_THREAD_USES_MOVE)
+diff --git a/src/libslic3r/CMakeLists.txt b/src/libslic3r/CMakeLists.txt
+index 21aab3b..8c6b705 100644
+--- a/src/libslic3r/CMakeLists.txt
++++ b/src/libslic3r/CMakeLists.txt
+@@ -358,7 +358,6 @@ target_include_directories(libslic3r PUBLIC ${EXPAT_INCLUDE_DIRS})
+ target_link_libraries(libslic3r
+     libnest2d
+     admesh
+-    cereal
+     libigl
+     miniz
+     boost_libs
+diff --git a/src/slic3r/CMakeLists.txt b/src/slic3r/CMakeLists.txt
+index 3f231ef..ffd9a3f 100644
+--- a/src/slic3r/CMakeLists.txt
++++ b/src/slic3r/CMakeLists.txt
+@@ -293,7 +293,7 @@ target_compile_definitions(libslic3r_gui PRIVATE $<$<BOOL:${SLIC3R_ALPHA}>:SLIC3
+ 
+ encoding_check(libslic3r_gui)
+ 
+-target_link_libraries(libslic3r_gui libslic3r avrdude cereal imgui GLEW::GLEW OpenGL::GL hidapi exif angelscript libcurl ${wxWidgets_LIBRARIES})
++target_link_libraries(libslic3r_gui libslic3r avrdude imgui GLEW::GLEW OpenGL::GL hidapi exif angelscript libcurl ${wxWidgets_LIBRARIES})
+ 
+ if (MSVC)
+     target_link_libraries(libslic3r_gui Setupapi.lib)

diff --git a/media-gfx/superslicer/files/superslicer-2.4.58.3-openexr3.patch b/media-gfx/superslicer/files/superslicer-2.4.58.3-openexr3.patch
new file mode 100644
index 000000000000..7bd04e6fad10
--- /dev/null
+++ b/media-gfx/superslicer/files/superslicer-2.4.58.3-openexr3.patch
@@ -0,0 +1,77 @@
+diff --git a/cmake/modules/FindOpenVDB.cmake b/cmake/modules/FindOpenVDB.cmake
+index 4fde5fa..566e73a 100644
+--- a/cmake/modules/FindOpenVDB.cmake
++++ b/cmake/modules/FindOpenVDB.cmake
+@@ -347,28 +347,10 @@ macro(just_fail msg)
+   return()
+ endmacro()
+ 
+-find_package(IlmBase QUIET)
+-if(NOT IlmBase_FOUND)
+-  pkg_check_modules(IlmBase QUIET IlmBase)
+-endif()
+-if (IlmBase_FOUND AND NOT TARGET IlmBase::Half)
+-  message(STATUS "Falling back to IlmBase found by pkg-config...")
+-
+-  find_library(IlmHalf_LIBRARY NAMES Half)
+-  if(IlmHalf_LIBRARY-NOTFOUND OR NOT IlmBase_INCLUDE_DIRS)
+-    just_fail("IlmBase::Half can not be found!")
+-  endif()
+-  
+-  add_library(IlmBase::Half UNKNOWN IMPORTED)
+-  set_target_properties(IlmBase::Half PROPERTIES
+-    IMPORTED_LOCATION "${IlmHalf_LIBRARY}"
+-    INTERFACE_INCLUDE_DIRECTORIES "${IlmBase_INCLUDE_DIRS}")
+-elseif(NOT IlmBase_FOUND)
+-  just_fail("IlmBase::Half can not be found!")
+-endif()
+ find_package(TBB ${_quiet} ${_required} COMPONENTS tbb)
+ find_package(ZLIB ${_quiet} ${_required})
+ find_package(Boost ${_quiet} ${_required} COMPONENTS iostreams system )
++find_package(Imath CONFIG)
+ 
+ # Use GetPrerequisites to see which libraries this OpenVDB lib has linked to
+ # which we can query for optional deps. This basically runs ldd/otoll/objdump
+@@ -419,7 +401,7 @@ foreach(PREREQUISITE ${_OPENVDB_PREREQUISITE_LIST})
+     set(OpenVDB_USES_LOG4CPLUS ON)
+   endif()
+ 
+-  string(FIND ${PREREQUISITE} "IlmImf" _HAS_DEP)
++  string(FIND ${PREREQUISITE} "OpenEXR" _HAS_DEP)
+   if(NOT ${_HAS_DEP} EQUAL -1)
+     set(OpenVDB_USES_ILM ON)
+   endif()
+@@ -450,11 +432,7 @@ if(OpenVDB_USES_LOG4CPLUS)
+   find_package(Log4cplus ${_quiet} ${_required})
+ endif()
+ 
+-if(OpenVDB_USES_ILM)
+-  find_package(IlmBase ${_quiet} ${_required})
+-endif()
+-
+-if(OpenVDB_USES_EXR)
++if(OpenVDB_USES_ILM OR OpenVDB_USES_EXR)
+   find_package(OpenEXR ${_quiet} ${_required})
+ endif()
+ 
+@@ -471,7 +449,7 @@ endif()
+ set(_OPENVDB_VISIBLE_DEPENDENCIES
+   Boost::iostreams
+   Boost::system
+-  IlmBase::Half
++  Imath::Imath
+ )
+ 
+ set(_OPENVDB_DEFINITIONS)
+@@ -481,10 +459,7 @@ endif()
+ 
+ if(OpenVDB_USES_EXR)
+   list(APPEND _OPENVDB_VISIBLE_DEPENDENCIES
+-    IlmBase::IlmThread
+-    IlmBase::Iex
+-    IlmBase::Imath
+-    OpenEXR::IlmImf
++    OpenEXR::OpenEXR
+   )
+   list(APPEND _OPENVDB_DEFINITIONS "-DOPENVDB_TOOLS_RAYTRACER_USE_EXR")
+ endif()

diff --git a/media-gfx/superslicer/files/superslicer-2.4.58.3-wxgtk3-wayland.patch b/media-gfx/superslicer/files/superslicer-2.4.58.3-wxgtk3-wayland.patch
new file mode 100644
index 000000000000..5f6eb58740ae
--- /dev/null
+++ b/media-gfx/superslicer/files/superslicer-2.4.58.3-wxgtk3-wayland.patch
@@ -0,0 +1,21 @@
+diff --git a/src/slic3r/GUI/GUI.cpp b/src/slic3r/GUI/GUI.cpp
+index 330869f..70c472c 100644
+--- a/src/slic3r/GUI/GUI.cpp
++++ b/src/slic3r/GUI/GUI.cpp
+@@ -33,6 +33,16 @@ class AppConfig;
+ 
+ namespace GUI {
+ 
++// wxgtk3 is broken on wayland: https://trac.wxwidgets.org/ticket/17702
++#ifdef __WXGTK3__
++struct ForceX11 {
++    ForceX11() {
++        setenv("GDK_BACKEND", "x11", 1);
++    }
++};
++static struct ForceX11 forcex11;
++#endif
++
+ #if __APPLE__
+ IOPMAssertionID assertionID;
+ #endif

diff --git a/media-gfx/superslicer/metadata.xml b/media-gfx/superslicer/metadata.xml
new file mode 100644
index 000000000000..7093e633ab17
--- /dev/null
+++ b/media-gfx/superslicer/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+	<maintainer type="project">
+		<email>3dprint@gentoo.org</email>
+		<name>Gentoo 3D Printer Project</name>
+	</maintainer>
+	<upstream>
+		<bugs-to>https://github.com/supermerill/SuperSlicer</bugs-to>
+		<remote-id type="github">supermerill/SuperSlicer</remote-id>
+	</upstream>
+</pkgmetadata>

diff --git a/media-gfx/superslicer/superslicer-2.4.58.3.ebuild b/media-gfx/superslicer/superslicer-2.4.58.3.ebuild
new file mode 100644
index 000000000000..d12285792499
--- /dev/null
+++ b/media-gfx/superslicer/superslicer-2.4.58.3.ebuild
@@ -0,0 +1,88 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+WX_GTK_VER="3.0-gtk3"
+MY_PN="SuperSlicer"
+
+inherit cmake wxwidgets xdg
+
+DESCRIPTION="A mesh slicer to generate G-code for fused-filament-fabrication (3D printers)"
+HOMEPAGE="https://github.com/supermerill/SuperSlicer/"
+SRC_URI="https://github.com/supermerill/SuperSlicer/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="AGPL-3 Boost-1.0 GPL-2 LGPL-3 MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+
+RESTRICT="test"
+
+# No dep on sci-libs/libigl, in-tree version cannot build 
+# static library currently. Using bundled one.
+RDEPEND="
+	dev-cpp/eigen:3
+	dev-cpp/tbb:=
+	>=dev-libs/boost-1.73.0:=[nls,threads(+)]
+	dev-libs/cereal
+	dev-libs/expat
+	dev-libs/glib:2
+	dev-libs/gmp:=
+	dev-libs/mpfr:=
+	dev-libs/imath:=
+	>=media-gfx/openvdb-8.2:=
+	net-misc/curl[adns]
+	media-libs/glew:0=
+	media-libs/libpng:0=
+	media-libs/qhull:=
+	sci-libs/nlopt
+	>=sci-mathematics/cgal-5.0:=
+	sys-apps/dbus
+	sys-libs/zlib:=
+	virtual/glu
+	virtual/opengl
+	x11-libs/gtk+:3
+	x11-libs/wxGTK:${WX_GTK_VER}[X,opengl]
+"
+DEPEND="${RDEPEND}
+	media-libs/qhull[static-libs]
+"
+
+PATCHES=(
+	"${FILESDIR}/${P}-boost-1.79-port-v2.patch"
+	"${FILESDIR}/${P}-CreateMMUTiledCanvas-include-wx-rawbmp.patch"
+	"${FILESDIR}/${P}-AppConfig-include-I18N.patch"
+	"${FILESDIR}/${P}-cereal.patch"
+	"${FILESDIR}/${P}-openexr3.patch"
+	"${FILESDIR}/${P}-wxgtk3-wayland.patch"
+)
+
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+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_install() {
+	cmake_src_install
+
+	rm "${ED}/usr/lib/udev/rules.d/90-3dconnexion.rules" || die
+}


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/superslicer/files/, media-gfx/superslicer/
@ 2022-12-27 20:12 Piotr Karbowski
  0 siblings, 0 replies; 6+ messages in thread
From: Piotr Karbowski @ 2022-12-27 20:12 UTC (permalink / raw
  To: gentoo-commits

commit:     0311dfd01ada250ca1b8b3a710122fc8d62ccc98
Author:     Piotr Karbowski <slashbeast <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 27 19:58:44 2022 +0000
Commit:     Piotr Karbowski <slashbeast <AT> gentoo <DOT> org>
CommitDate: Tue Dec 27 20:12:28 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0311dfd0

media-gfx/superslicer: fix building with boost-1.81.

Patch contributed by Bradley Jarvis.

Bug: https://bugs.gentoo.org/887055
Signed-off-by: Piotr Karbowski <slashbeast <AT> gentoo.org>

 ....0-boost-1.81-std-wxString-to-std-wstring.patch | 40 +++++++++
 .../superslicer/superslicer-2.5.59.0-r2.ebuild     | 99 ++++++++++++++++++++++
 2 files changed, 139 insertions(+)

diff --git a/media-gfx/superslicer/files/superslicer-2.5.59.0-boost-1.81-std-wxString-to-std-wstring.patch b/media-gfx/superslicer/files/superslicer-2.5.59.0-boost-1.81-std-wxString-to-std-wstring.patch
new file mode 100644
index 000000000000..1cb0d9f1afff
--- /dev/null
+++ b/media-gfx/superslicer/files/superslicer-2.5.59.0-boost-1.81-std-wxString-to-std-wstring.patch
@@ -0,0 +1,40 @@
+--- 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);
+             }        

diff --git a/media-gfx/superslicer/superslicer-2.5.59.0-r2.ebuild b/media-gfx/superslicer/superslicer-2.5.59.0-r2.ebuild
new file mode 100644
index 000000000000..08c74ac46f52
--- /dev/null
+++ b/media-gfx/superslicer/superslicer-2.5.59.0-r2.ebuild
@@ -0,0 +1,99 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+WX_GTK_VER="3.0-gtk3"
+MY_PN="SuperSlicer"
+
+inherit cmake wxwidgets xdg
+
+DESCRIPTION="A mesh slicer to generate G-code for fused-filament-fabrication (3D printers)"
+HOMEPAGE="https://github.com/supermerill/SuperSlicer/"
+SRC_URI="
+	https://github.com/supermerill/SuperSlicer/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
+	https://github.com/slic3r/slic3r-profiles/archive/748fbdfd2ac077e4e415868e7bc963740b92aa8e.tar.gz -> ${P}-profiles.tar.gz
+"
+
+LICENSE="AGPL-3 Boost-1.0 GPL-2 LGPL-3 MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+
+RESTRICT="test"
+
+# No dep on sci-libs/libigl, in-tree version cannot build
+# static library currently. Using bundled one.
+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:=
+	dev-libs/imath:=
+	>=media-gfx/openvdb-8.2:=
+	net-misc/curl[adns]
+	media-libs/glew:0=
+	media-libs/libpng:0=
+	media-libs/qhull:=
+	sci-libs/nlopt
+	>=sci-mathematics/cgal-5.0:=
+	sys-apps/dbus
+	sys-libs/zlib:=
+	virtual/glu
+	virtual/opengl
+	x11-libs/gtk+:3
+	x11-libs/wxGTK:${WX_GTK_VER}[X,opengl]
+"
+DEPEND="${RDEPEND}
+	media-libs/qhull[static-libs]
+"
+
+PATCHES=(
+	"${FILESDIR}/${P}-openexr3.patch"
+	"${FILESDIR}/${P}-wxgtk3-wayland.patch"
+	"${FILESDIR}/${P}-cereal.patch"
+	"${FILESDIR}/${P}-boost.patch"
+	"${FILESDIR}/${P}-boost-1.81-std-wxString-to-std-wstring.patch"
+	"${FILESDIR}/${P}-missing-includes.patch"
+	"${FILESDIR}/${P}-dont-install-bundled-angelscript.patch"
+	"${FILESDIR}/${P}-fix-gcodeviewer-symlink.patch"
+)
+
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+src_unpack() {
+	default
+
+	mv slic3r-profiles-*/* "${S}"/resources/profiles/ || die
+}
+
+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_install() {
+	cmake_src_install
+
+	rm "${ED}/usr/lib/udev/rules.d/90-3dconnexion.rules" || die
+}


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/superslicer/files/, media-gfx/superslicer/
@ 2022-12-28 18:13 Piotr Karbowski
  0 siblings, 0 replies; 6+ messages in thread
From: Piotr Karbowski @ 2022-12-28 18:13 UTC (permalink / raw
  To: gentoo-commits

commit:     3fbbb57dc6fa7246c5ce60c71c7fb9289bc3e15f
Author:     Piotr Karbowski <slashbeast <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 28 18:12:45 2022 +0000
Commit:     Piotr Karbowski <slashbeast <AT> gentoo <DOT> org>
CommitDate: Wed Dec 28 18:13:16 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3fbbb57d

media-gfx/superslicer: drop old.

Signed-off-by: Piotr Karbowski <slashbeast <AT> gentoo.org>

 media-gfx/superslicer/Manifest                     |   2 -
 ...perslicer-2.4.58.3-AppConfig-include-I18N.patch |  12 -
 ....3-CreateMMUTiledCanvas-include-wx-rawbmp.patch |  12 -
 .../superslicer-2.4.58.3-boost-1.79-port-v2.patch  | 244 ---------------------
 .../files/superslicer-2.4.58.3-cereal.patch        |  70 ------
 .../files/superslicer-2.4.58.3-openexr3.patch      |  77 -------
 .../superslicer-2.4.58.3-wxgtk3-wayland.patch      |  21 --
 .../superslicer/superslicer-2.4.58.3-r1.ebuild     |  97 --------
 .../superslicer/superslicer-2.5.59.0-r1.ebuild     |  98 ---------
 9 files changed, 633 deletions(-)

diff --git a/media-gfx/superslicer/Manifest b/media-gfx/superslicer/Manifest
index ef2d980d92d4..80d31364ef86 100644
--- a/media-gfx/superslicer/Manifest
+++ b/media-gfx/superslicer/Manifest
@@ -1,4 +1,2 @@
-DIST superslicer-2.4.58.3-profiles.tar.gz 15322406 BLAKE2B cfa89697e832e0601746cb21250e258617bcc0966dd111c82ae43a9720b3ffb760f57827a1f35c8ad57a23a7ffb4c78e48ec76d6e40b364f321d0f83c4d10939 SHA512 bbdc6bfa8e21a4bdbca903a367f033f9cb5a1966bd0688bcc81314ba9ee45fee37cb892c82be35e865137c4df7c1fabceb8e6de46316338df2af4a590de91c76
-DIST superslicer-2.4.58.3.tar.gz 45203382 BLAKE2B 822af2a1cb8978b21f8efdc0eb4841ec1d86517fd07782a8dfa6be2a58514dc3e772221dca40ff62808cb798fc4f51484b24e847328a7a6f154708431f0c4d3b SHA512 00302fba9ada1cc5df3c58f42fdb7f98322f94de7b78876c6a54a2229ae289e785082ea7a69f67bee54321fc4d97811675eeb70932e5774ab78ca8859343dd4d
 DIST superslicer-2.5.59.0-profiles.tar.gz 15322406 BLAKE2B cfa89697e832e0601746cb21250e258617bcc0966dd111c82ae43a9720b3ffb760f57827a1f35c8ad57a23a7ffb4c78e48ec76d6e40b364f321d0f83c4d10939 SHA512 bbdc6bfa8e21a4bdbca903a367f033f9cb5a1966bd0688bcc81314ba9ee45fee37cb892c82be35e865137c4df7c1fabceb8e6de46316338df2af4a590de91c76
 DIST superslicer-2.5.59.0.tar.gz 45360646 BLAKE2B da65610270ed4c7d55b5bc495d9970812af94f424345088782b3a45b97fcf0f4b58bdc0417b89ed49e21d8c250535baa7cb74344f43438fbde8daf1b3acfacdd SHA512 1d2c0316c91bf0d65fb366806e9ea868bc93fae33deb580a324ce065fd3789ff1b600e9ace400db4988b371b1c36ef0c3ea2b52cde0d48984f312dd8d7ef3a1c

diff --git a/media-gfx/superslicer/files/superslicer-2.4.58.3-AppConfig-include-I18N.patch b/media-gfx/superslicer/files/superslicer-2.4.58.3-AppConfig-include-I18N.patch
deleted file mode 100644
index c5e7398e5bdd..000000000000
--- a/media-gfx/superslicer/files/superslicer-2.4.58.3-AppConfig-include-I18N.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/src/libslic3r/AppConfig.cpp b/src/libslic3r/AppConfig.cpp
-index 59910e6..c35986c 100644
---- a/src/libslic3r/AppConfig.cpp
-+++ b/src/libslic3r/AppConfig.cpp
-@@ -1,6 +1,7 @@
- #include <boost/filesystem.hpp>
- #include "libslic3r/libslic3r.h"
- #include "libslic3r/Utils.hpp"
-+#include "libslic3r/I18N.hpp"
- #include "AppConfig.hpp"
- #include "Exception.hpp"
- #include "LocalesUtils.hpp"

diff --git a/media-gfx/superslicer/files/superslicer-2.4.58.3-CreateMMUTiledCanvas-include-wx-rawbmp.patch b/media-gfx/superslicer/files/superslicer-2.4.58.3-CreateMMUTiledCanvas-include-wx-rawbmp.patch
deleted file mode 100644
index c2e3a3ef8f39..000000000000
--- a/media-gfx/superslicer/files/superslicer-2.4.58.3-CreateMMUTiledCanvas-include-wx-rawbmp.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/src/slic3r/GUI/CreateMMUTiledCanvas.cpp b/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
-index be157ea..d63eb11 100644
---- a/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
-+++ b/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
-@@ -40,6 +40,7 @@
- #include <wx/odcombo.h>
- #include <wx/textctrl.h>
- #include <wx/wrapsizer.h>
-+#include <wx/rawbmp.h>
- #include "wxExtensions.hpp"
- 
- #include <boost/filesystem/path.hpp>

diff --git a/media-gfx/superslicer/files/superslicer-2.4.58.3-boost-1.79-port-v2.patch b/media-gfx/superslicer/files/superslicer-2.4.58.3-boost-1.79-port-v2.patch
deleted file mode 100644
index 0c1f31a95b72..000000000000
--- a/media-gfx/superslicer/files/superslicer-2.4.58.3-boost-1.79-port-v2.patch
+++ /dev/null
@@ -1,244 +0,0 @@
-diff --git a/src/hints/HintsToPot.cpp b/src/hints/HintsToPot.cpp
-index 7c8029c..4791f06 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/AppConfig.cpp b/src/libslic3r/AppConfig.cpp
-index 39b590e..b2a8dce 100644
---- a/src/libslic3r/AppConfig.cpp
-+++ b/src/libslic3r/AppConfig.cpp
-@@ -1,3 +1,4 @@
-+#include <boost/filesystem.hpp>
- #include "libslic3r/libslic3r.h"
- #include "libslic3r/Utils.hpp"
- #include "AppConfig.hpp"
-diff --git a/src/libslic3r/AppConfig.hpp b/src/libslic3r/AppConfig.hpp
-index d811ddc..1a70230 100644
---- a/src/libslic3r/AppConfig.hpp
-+++ b/src/libslic3r/AppConfig.hpp
-@@ -5,6 +5,7 @@
- #include <map>
- #include <string>
- 
-+#include <boost/filesystem/path.hpp>
- #include <boost/algorithm/string/trim_all.hpp>
- 
- #include "libslic3r/Config.hpp"
-diff --git a/src/libslic3r/LocalesUtils.cpp b/src/libslic3r/LocalesUtils.cpp
-index 5bf5205..7b87052 100644
---- a/src/libslic3r/LocalesUtils.cpp
-+++ b/src/libslic3r/LocalesUtils.cpp
-@@ -1,3 +1,4 @@
-+#include <boost/lexical_cast.hpp>
- #include "LocalesUtils.hpp"
- 
- #ifdef _WIN32
-diff --git a/src/libslic3r/Preset.cpp b/src/libslic3r/Preset.cpp
-index aa33fb6..277a4b4 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/CreateMMUTiledCanvas.cpp b/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
-index 89212f2..be157ea 100644
---- a/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
-+++ b/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
-@@ -18,6 +18,11 @@
- #include <wx/notebook.h>
- #include "Notebook.hpp"
- 
-+#include <boost/filesystem.hpp>
-+#include <boost/property_tree/ptree.hpp>
-+#include <boost/property_tree/ini_parser.hpp>
-+#include <boost/log/trivial.hpp>
-+
- #include "MainFrame.hpp"
- #include "wxExtensions.hpp"
- 
-diff --git a/src/slic3r/GUI/DesktopIntegrationDialog.cpp b/src/slic3r/GUI/DesktopIntegrationDialog.cpp
-index fcb7472..866ebae 100644
---- a/src/slic3r/GUI/DesktopIntegrationDialog.cpp
-+++ b/src/slic3r/GUI/DesktopIntegrationDialog.cpp
-@@ -14,6 +14,7 @@
- #include <boost/log/trivial.hpp>
- #include <boost/dll/runtime_symbol_info.hpp>
- #include <boost/algorithm/string/replace.hpp>
-+#include <boost/nowide/fstream.hpp>
- 
- #include <wx/filename.h>
- #include <wx/stattext.h>
-@@ -503,4 +504,4 @@ DesktopIntegrationDialog::~DesktopIntegrationDialog()
- 
- } // namespace GUI
- } // namespace Slic3r
--#endif // __linux__
-\ No newline at end of file
-+#endif // __linux__
-diff --git a/src/slic3r/GUI/FreeCADDialog.cpp b/src/slic3r/GUI/FreeCADDialog.cpp
-index ea7142c..1d75ba7 100644
---- a/src/slic3r/GUI/FreeCADDialog.cpp
-+++ b/src/slic3r/GUI/FreeCADDialog.cpp
-@@ -38,6 +38,7 @@
- #include <boost/log/trivial.hpp>
- #include <boost/property_tree/ptree.hpp>
- #include <boost/property_tree/json_parser.hpp>
-+#include <boost/nowide/fstream.hpp>
- 
- // hack for process.hpp : it uses pid_t to set it as alias of int, but vc_x64_lib (wx thingy) as a '#define pid_t int'
- // and so boost/process has a line 'typedef int int'instead of 'typedef int pid_t' that makes it crash
-@@ -321,7 +322,7 @@ bool FreeCADDialog::load_text_from_file(const boost::filesystem::path &path) {
-         try {
-             std::locale loc = boost::locale::generator()("en_US.UTF-8");
-             // Open the stream to 'lock' the file.
--            boost::filesystem::ifstream in;
-+            boost::nowide::ifstream in;
-             in.imbue(loc);
-             in.open(path);
-             // Obtain the size of the file.
-@@ -368,7 +369,7 @@ bool FreeCADDialog::write_text_in_file(const wxString &towrite, const boost::fil
-         boost::filesystem::create_directories(file.parent_path());
-         std::locale loc = boost::locale::generator()("en_US.UTF-8");
-         // Open the stream to 'lock' the file.
--        boost::filesystem::ofstream out;
-+        boost::nowide::ofstream out;
-         out.imbue(loc);
-         out.open(file);
-         out << towrite;
-diff --git a/src/slic3r/GUI/GUI_App.cpp b/src/slic3r/GUI/GUI_App.cpp
-index 7851030..4cdd242 100644
---- a/src/slic3r/GUI/GUI_App.cpp
-+++ b/src/slic3r/GUI/GUI_App.cpp
-@@ -19,6 +19,7 @@
- #include <boost/lexical_cast.hpp>
- #include <boost/log/trivial.hpp>
- #include <boost/nowide/convert.hpp>
-+#include <boost/nowide/fstream.hpp>
- 
- #include <wx/stdpaths.h>
- #include <wx/imagpng.h>
-diff --git a/src/slic3r/GUI/HintNotification.cpp b/src/slic3r/GUI/HintNotification.cpp
-index 3291630..3a984bf 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
-diff --git a/src/slic3r/GUI/Preferences.cpp b/src/slic3r/GUI/Preferences.cpp
-index 523e52c..bd07f02 100644
---- a/src/slic3r/GUI/Preferences.cpp
-+++ b/src/slic3r/GUI/Preferences.cpp
-@@ -12,6 +12,7 @@
- #include "OG_CustomCtrl.hpp"
- #include "wxExtensions.hpp"
- 
-+#include <boost/algorithm/string/split.hpp>
- #include <boost/filesystem.hpp>
- #include <boost/filesystem/path.hpp>
- 
-diff --git a/src/slic3r/GUI/ScriptExecutor.cpp b/src/slic3r/GUI/ScriptExecutor.cpp
-index 5a4a1e2..672bdfa 100644
---- a/src/slic3r/GUI/ScriptExecutor.cpp
-+++ b/src/slic3r/GUI/ScriptExecutor.cpp
-@@ -4,6 +4,13 @@
- #include "Tab.hpp"
- #include "libslic3r/PresetBundle.hpp"
- #include "libslic3r/Print.hpp"
-+#include <boost/log/trivial.hpp>
-+#include <boost/lexical_cast.hpp>
-+#include <boost/algorithm/string/trim_all.hpp>
-+#include <boost/algorithm/string/erase.hpp>
-+#include <boost/algorithm/string/split.hpp>
-+#include <boost/filesystem.hpp>
-+#include <boost/filesystem/string_file.hpp>
- 
- #include <string>
- 
-diff --git a/src/slic3r/GUI/Tab.cpp b/src/slic3r/GUI/Tab.cpp
-index 13a4ac0..eb63f2a 100644
---- a/src/slic3r/GUI/Tab.cpp
-+++ b/src/slic3r/GUI/Tab.cpp
-@@ -36,6 +36,8 @@
- #include <boost/filesystem.hpp>
- #include <boost/filesystem/path.hpp>
- #include <boost/lexical_cast.hpp>
-+#include <boost/nowide/fstream.hpp>
-+#include <boost/log/trivial.hpp>
- 
- #include "wxExtensions.hpp"
- #include "PresetComboBoxes.hpp"
-@@ -1692,7 +1694,7 @@ std::vector<Slic3r::GUI::PageShp> Tab::create_pages(std::string setting_type_nam
- 
-     //read file
-     //std::ifstream filestream(ui_layout_file.c_str());
--    boost::filesystem::ifstream filestream(ui_layout_file);
-+    boost::nowide::ifstream filestream(ui_layout_file);
-     std::string full_line;
-     while (std::getline(filestream, full_line)) {
-         //remove spaces
-diff --git a/src/slic3r/Utils/Http.cpp b/src/slic3r/Utils/Http.cpp
-index 5fbe94e..b760559 100644
---- a/src/slic3r/Utils/Http.cpp
-+++ b/src/slic3r/Utils/Http.cpp
-@@ -11,6 +11,7 @@
- #include <boost/filesystem.hpp>
- #include <boost/format.hpp>
- #include <boost/log/trivial.hpp>
-+#include <boost/nowide/fstream.hpp>
- 
- #include <curl/curl.h>
- 
-@@ -52,7 +53,7 @@ namespace Slic3r {
- 						% error;
- 			})
- 			.on_complete([&](std::string body, unsigned /* http_status */) {
--				boost::filesystem::fstream file(tmp_path, std::ios::out | std::ios::binary | std::ios::trunc);
-+				boost::nowide::fstream file(tmp_path, std::ios::out | std::ios::binary | std::ios::trunc);
- 				file.write(body.c_str(), body.size());
- 				file.close();
- 				boost::filesystem::rename(tmp_path, target_path);

diff --git a/media-gfx/superslicer/files/superslicer-2.4.58.3-cereal.patch b/media-gfx/superslicer/files/superslicer-2.4.58.3-cereal.patch
deleted file mode 100644
index 7b3e179a05f5..000000000000
--- a/media-gfx/superslicer/files/superslicer-2.4.58.3-cereal.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-diff --git a/cmake/modules/Findcereal.cmake b/cmake/modules/Findcereal.cmake
-deleted file mode 100644
-index b482975..0000000
---- a/cmake/modules/Findcereal.cmake
-+++ /dev/null
-@@ -1,26 +0,0 @@
--set(_q "")
--if(${CMAKE_FIND_PACKAGE_NAME}_FIND_QUIETLY)
--    set(_q QUIET)
--    set(_quietly TRUE)
--endif()
--find_package(${CMAKE_FIND_PACKAGE_NAME} ${${CMAKE_FIND_PACKAGE_NAME}_FIND_VERSION} CONFIG ${_q})
--
--if (NOT ${CMAKE_FIND_PACKAGE_NAME}_FOUND)
--    # Fall-back solution to find the Cereal serialization library header file
--    include(CheckIncludeFileCXX)
--    add_library(cereal INTERFACE)
--    target_include_directories(cereal INTERFACE include)
--
--    if (_quietly)
--        set(CMAKE_REQUIRED_QUIET ON)
--    endif()
--    CHECK_INCLUDE_FILE_CXX("cereal/cereal.hpp" HAVE_CEREAL_H)
--
--    if (NOT HAVE_CEREAL_H)
--        if (${CMAKE_FIND_PACKAGE_NAME}_FIND_REQUIRED)
--            message(FATAL_ERROR "Cereal library not found. Please install the dependency.")
--        elseif(NOT _quietly)
--            message(WARNING "Cereal library not found.")
--        endif()
--    endif ()
--endif()
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index ec44417..aab1348 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -141,7 +141,7 @@ if (NOT WIN32)
-     set_target_properties(Slic3r PROPERTIES OUTPUT_NAME "${SLIC3R_APP_CMD}")
- endif ()
- 
--target_link_libraries(Slic3r libslic3r cereal)
-+target_link_libraries(Slic3r libslic3r)
- if (APPLE)
- #    add_compile_options(-stdlib=libc++)
- #    add_definitions(-DBOOST_THREAD_DONT_USE_CHRONO -DBOOST_NO_CXX11_RVALUE_REFERENCES -DBOOST_THREAD_USES_MOVE)
-diff --git a/src/libslic3r/CMakeLists.txt b/src/libslic3r/CMakeLists.txt
-index 21aab3b..8c6b705 100644
---- a/src/libslic3r/CMakeLists.txt
-+++ b/src/libslic3r/CMakeLists.txt
-@@ -358,7 +358,6 @@ target_include_directories(libslic3r PUBLIC ${EXPAT_INCLUDE_DIRS})
- target_link_libraries(libslic3r
-     libnest2d
-     admesh
--    cereal
-     libigl
-     miniz
-     boost_libs
-diff --git a/src/slic3r/CMakeLists.txt b/src/slic3r/CMakeLists.txt
-index 3f231ef..ffd9a3f 100644
---- a/src/slic3r/CMakeLists.txt
-+++ b/src/slic3r/CMakeLists.txt
-@@ -293,7 +293,7 @@ target_compile_definitions(libslic3r_gui PRIVATE $<$<BOOL:${SLIC3R_ALPHA}>:SLIC3
- 
- encoding_check(libslic3r_gui)
- 
--target_link_libraries(libslic3r_gui libslic3r avrdude cereal imgui GLEW::GLEW OpenGL::GL hidapi exif angelscript libcurl ${wxWidgets_LIBRARIES})
-+target_link_libraries(libslic3r_gui libslic3r avrdude imgui GLEW::GLEW OpenGL::GL hidapi exif angelscript libcurl ${wxWidgets_LIBRARIES})
- 
- if (MSVC)
-     target_link_libraries(libslic3r_gui Setupapi.lib)

diff --git a/media-gfx/superslicer/files/superslicer-2.4.58.3-openexr3.patch b/media-gfx/superslicer/files/superslicer-2.4.58.3-openexr3.patch
deleted file mode 100644
index 7bd04e6fad10..000000000000
--- a/media-gfx/superslicer/files/superslicer-2.4.58.3-openexr3.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-diff --git a/cmake/modules/FindOpenVDB.cmake b/cmake/modules/FindOpenVDB.cmake
-index 4fde5fa..566e73a 100644
---- a/cmake/modules/FindOpenVDB.cmake
-+++ b/cmake/modules/FindOpenVDB.cmake
-@@ -347,28 +347,10 @@ macro(just_fail msg)
-   return()
- endmacro()
- 
--find_package(IlmBase QUIET)
--if(NOT IlmBase_FOUND)
--  pkg_check_modules(IlmBase QUIET IlmBase)
--endif()
--if (IlmBase_FOUND AND NOT TARGET IlmBase::Half)
--  message(STATUS "Falling back to IlmBase found by pkg-config...")
--
--  find_library(IlmHalf_LIBRARY NAMES Half)
--  if(IlmHalf_LIBRARY-NOTFOUND OR NOT IlmBase_INCLUDE_DIRS)
--    just_fail("IlmBase::Half can not be found!")
--  endif()
--  
--  add_library(IlmBase::Half UNKNOWN IMPORTED)
--  set_target_properties(IlmBase::Half PROPERTIES
--    IMPORTED_LOCATION "${IlmHalf_LIBRARY}"
--    INTERFACE_INCLUDE_DIRECTORIES "${IlmBase_INCLUDE_DIRS}")
--elseif(NOT IlmBase_FOUND)
--  just_fail("IlmBase::Half can not be found!")
--endif()
- find_package(TBB ${_quiet} ${_required} COMPONENTS tbb)
- find_package(ZLIB ${_quiet} ${_required})
- find_package(Boost ${_quiet} ${_required} COMPONENTS iostreams system )
-+find_package(Imath CONFIG)
- 
- # Use GetPrerequisites to see which libraries this OpenVDB lib has linked to
- # which we can query for optional deps. This basically runs ldd/otoll/objdump
-@@ -419,7 +401,7 @@ foreach(PREREQUISITE ${_OPENVDB_PREREQUISITE_LIST})
-     set(OpenVDB_USES_LOG4CPLUS ON)
-   endif()
- 
--  string(FIND ${PREREQUISITE} "IlmImf" _HAS_DEP)
-+  string(FIND ${PREREQUISITE} "OpenEXR" _HAS_DEP)
-   if(NOT ${_HAS_DEP} EQUAL -1)
-     set(OpenVDB_USES_ILM ON)
-   endif()
-@@ -450,11 +432,7 @@ if(OpenVDB_USES_LOG4CPLUS)
-   find_package(Log4cplus ${_quiet} ${_required})
- endif()
- 
--if(OpenVDB_USES_ILM)
--  find_package(IlmBase ${_quiet} ${_required})
--endif()
--
--if(OpenVDB_USES_EXR)
-+if(OpenVDB_USES_ILM OR OpenVDB_USES_EXR)
-   find_package(OpenEXR ${_quiet} ${_required})
- endif()
- 
-@@ -471,7 +449,7 @@ endif()
- set(_OPENVDB_VISIBLE_DEPENDENCIES
-   Boost::iostreams
-   Boost::system
--  IlmBase::Half
-+  Imath::Imath
- )
- 
- set(_OPENVDB_DEFINITIONS)
-@@ -481,10 +459,7 @@ endif()
- 
- if(OpenVDB_USES_EXR)
-   list(APPEND _OPENVDB_VISIBLE_DEPENDENCIES
--    IlmBase::IlmThread
--    IlmBase::Iex
--    IlmBase::Imath
--    OpenEXR::IlmImf
-+    OpenEXR::OpenEXR
-   )
-   list(APPEND _OPENVDB_DEFINITIONS "-DOPENVDB_TOOLS_RAYTRACER_USE_EXR")
- endif()

diff --git a/media-gfx/superslicer/files/superslicer-2.4.58.3-wxgtk3-wayland.patch b/media-gfx/superslicer/files/superslicer-2.4.58.3-wxgtk3-wayland.patch
deleted file mode 100644
index 5f6eb58740ae..000000000000
--- a/media-gfx/superslicer/files/superslicer-2.4.58.3-wxgtk3-wayland.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff --git a/src/slic3r/GUI/GUI.cpp b/src/slic3r/GUI/GUI.cpp
-index 330869f..70c472c 100644
---- a/src/slic3r/GUI/GUI.cpp
-+++ b/src/slic3r/GUI/GUI.cpp
-@@ -33,6 +33,16 @@ class AppConfig;
- 
- namespace GUI {
- 
-+// wxgtk3 is broken on wayland: https://trac.wxwidgets.org/ticket/17702
-+#ifdef __WXGTK3__
-+struct ForceX11 {
-+    ForceX11() {
-+        setenv("GDK_BACKEND", "x11", 1);
-+    }
-+};
-+static struct ForceX11 forcex11;
-+#endif
-+
- #if __APPLE__
- IOPMAssertionID assertionID;
- #endif

diff --git a/media-gfx/superslicer/superslicer-2.4.58.3-r1.ebuild b/media-gfx/superslicer/superslicer-2.4.58.3-r1.ebuild
deleted file mode 100644
index c8ab9ba7f60f..000000000000
--- a/media-gfx/superslicer/superslicer-2.4.58.3-r1.ebuild
+++ /dev/null
@@ -1,97 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-WX_GTK_VER="3.0-gtk3"
-MY_PN="SuperSlicer"
-
-inherit cmake wxwidgets xdg
-
-DESCRIPTION="A mesh slicer to generate G-code for fused-filament-fabrication (3D printers)"
-HOMEPAGE="https://github.com/supermerill/SuperSlicer/"
-SRC_URI="
-	https://github.com/supermerill/SuperSlicer/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
-	https://github.com/slic3r/slic3r-profiles/archive/748fbdfd2ac077e4e415868e7bc963740b92aa8e.tar.gz -> ${P}-profiles.tar.gz
-"
-
-LICENSE="AGPL-3 Boost-1.0 GPL-2 LGPL-3 MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-
-RESTRICT="test"
-
-# No dep on sci-libs/libigl, in-tree version cannot build
-# static library currently. Using bundled one.
-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:=
-	dev-libs/imath:=
-	>=media-gfx/openvdb-8.2:=
-	net-misc/curl[adns]
-	media-libs/glew:0=
-	media-libs/libpng:0=
-	media-libs/qhull:=
-	sci-libs/nlopt
-	>=sci-mathematics/cgal-5.0:=
-	sys-apps/dbus
-	sys-libs/zlib:=
-	virtual/glu
-	virtual/opengl
-	x11-libs/gtk+:3
-	x11-libs/wxGTK:${WX_GTK_VER}[X,opengl]
-"
-DEPEND="${RDEPEND}
-	media-libs/qhull[static-libs]
-"
-
-PATCHES=(
-	"${FILESDIR}/${P}-boost-1.79-port-v2.patch"
-	"${FILESDIR}/${P}-CreateMMUTiledCanvas-include-wx-rawbmp.patch"
-	"${FILESDIR}/${P}-AppConfig-include-I18N.patch"
-	"${FILESDIR}/${P}-cereal.patch"
-	"${FILESDIR}/${P}-openexr3.patch"
-	"${FILESDIR}/${P}-wxgtk3-wayland.patch"
-)
-
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-src_unpack() {
-	default
-
-	mv slic3r-profiles-*/* "${S}"/resources/profiles/ || die
-}
-
-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_install() {
-	cmake_src_install
-
-	rm "${ED}/usr/lib/udev/rules.d/90-3dconnexion.rules" || die
-}

diff --git a/media-gfx/superslicer/superslicer-2.5.59.0-r1.ebuild b/media-gfx/superslicer/superslicer-2.5.59.0-r1.ebuild
deleted file mode 100644
index ca0ff2b51c74..000000000000
--- a/media-gfx/superslicer/superslicer-2.5.59.0-r1.ebuild
+++ /dev/null
@@ -1,98 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-WX_GTK_VER="3.0-gtk3"
-MY_PN="SuperSlicer"
-
-inherit cmake wxwidgets xdg
-
-DESCRIPTION="A mesh slicer to generate G-code for fused-filament-fabrication (3D printers)"
-HOMEPAGE="https://github.com/supermerill/SuperSlicer/"
-SRC_URI="
-	https://github.com/supermerill/SuperSlicer/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
-	https://github.com/slic3r/slic3r-profiles/archive/748fbdfd2ac077e4e415868e7bc963740b92aa8e.tar.gz -> ${P}-profiles.tar.gz
-"
-
-LICENSE="AGPL-3 Boost-1.0 GPL-2 LGPL-3 MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-
-RESTRICT="test"
-
-# No dep on sci-libs/libigl, in-tree version cannot build
-# static library currently. Using bundled one.
-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:=
-	dev-libs/imath:=
-	>=media-gfx/openvdb-8.2:=
-	net-misc/curl[adns]
-	media-libs/glew:0=
-	media-libs/libpng:0=
-	media-libs/qhull:=
-	sci-libs/nlopt
-	>=sci-mathematics/cgal-5.0:=
-	sys-apps/dbus
-	sys-libs/zlib:=
-	virtual/glu
-	virtual/opengl
-	x11-libs/gtk+:3
-	x11-libs/wxGTK:${WX_GTK_VER}[X,opengl]
-"
-DEPEND="${RDEPEND}
-	media-libs/qhull[static-libs]
-"
-
-PATCHES=(
-	"${FILESDIR}/${P}-openexr3.patch"
-	"${FILESDIR}/${P}-wxgtk3-wayland.patch"
-	"${FILESDIR}/${P}-cereal.patch"
-	"${FILESDIR}/${P}-boost.patch"
-	"${FILESDIR}/${P}-missing-includes.patch"
-	"${FILESDIR}/${P}-dont-install-bundled-angelscript.patch"
-	"${FILESDIR}/${P}-fix-gcodeviewer-symlink.patch"
-)
-
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-src_unpack() {
-	default
-
-	mv slic3r-profiles-*/* "${S}"/resources/profiles/ || die
-}
-
-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_install() {
-	cmake_src_install
-
-	rm "${ED}/usr/lib/udev/rules.d/90-3dconnexion.rules" || die
-}


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/superslicer/files/, media-gfx/superslicer/
@ 2023-06-04 13:02 Piotr Karbowski
  0 siblings, 0 replies; 6+ messages in thread
From: Piotr Karbowski @ 2023-06-04 13:02 UTC (permalink / raw
  To: gentoo-commits

commit:     c5b3c63342db2a72ff0d667d20d6dc49be572902
Author:     Piotr Karbowski <slashbeast <AT> gentoo <DOT> org>
AuthorDate: Sun Jun  4 13:01:33 2023 +0000
Commit:     Piotr Karbowski <slashbeast <AT> gentoo <DOT> org>
CommitDate: Sun Jun  4 13:02:30 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c5b3c633

media-gfx/superslicer: 2.5.59.2-r2 revbump with updated includes patch.

Signed-off-by: Piotr Karbowski <slashbeast <AT> gentoo.org>

 ...superslicer-2.5.59.2-missing-includes-fix.patch | 36 ++++++++++++++++++++++
 ....2-r1.ebuild => superslicer-2.5.59.2-r2.ebuild} |  0
 2 files changed, 36 insertions(+)

diff --git a/media-gfx/superslicer/files/superslicer-2.5.59.2-missing-includes-fix.patch b/media-gfx/superslicer/files/superslicer-2.5.59.2-missing-includes-fix.patch
index 289198863367..432f4f16870e 100644
--- a/media-gfx/superslicer/files/superslicer-2.5.59.2-missing-includes-fix.patch
+++ b/media-gfx/superslicer/files/superslicer-2.5.59.2-missing-includes-fix.patch
@@ -10,6 +10,18 @@ index a626986..5f2d963 100644
  #include "AppConfig.hpp"
  #include "Exception.hpp"
  #include "LocalesUtils.hpp"
+diff --git a/src/libslic3r/CustomGCode.hpp b/src/libslic3r/CustomGCode.hpp
+index 633edc8..fcd26ff 100644
+--- a/src/libslic3r/CustomGCode.hpp
++++ b/src/libslic3r/CustomGCode.hpp
+@@ -3,6 +3,7 @@
+ 
+ #include <string>
+ #include <vector>
++#include <cstdint>
+ 
+ namespace Slic3r {
+ 
 diff --git a/src/libslic3r/ExtrusionEntity.hpp b/src/libslic3r/ExtrusionEntity.hpp
 index 1c54588..c74df3a 100644
 --- a/src/libslic3r/ExtrusionEntity.hpp
@@ -35,6 +47,18 @@ index 34ef2ae..20fe8b7 100644
  
  namespace Slic3r { namespace Geometry {
  
+diff --git a/src/libslic3r/PNGReadWrite.hpp b/src/libslic3r/PNGReadWrite.hpp
+index 01e1f47..1dce27a 100644
+--- a/src/libslic3r/PNGReadWrite.hpp
++++ b/src/libslic3r/PNGReadWrite.hpp
+@@ -2,6 +2,7 @@
+ #define PNGREAD_HPP
+ 
+ #include <vector>
++#include <cstdint>
+ #include <string>
+ #include <istream>
+ 
 diff --git a/src/libslic3r/PerimeterGenerator.hpp b/src/libslic3r/PerimeterGenerator.hpp
 index 34ec4e6..ed83b3e 100644
 --- a/src/libslic3r/PerimeterGenerator.hpp
@@ -60,6 +84,18 @@ index f69d68f..1dd55f2 100644
  #include <float.h>
  
  #include <algorithm>
+diff --git a/src/slic3r/GUI/BitmapCache.hpp b/src/slic3r/GUI/BitmapCache.hpp
+index 34821c4..a74a850 100644
+--- a/src/slic3r/GUI/BitmapCache.hpp
++++ b/src/slic3r/GUI/BitmapCache.hpp
+@@ -3,6 +3,7 @@
+ 
+ #include <map>
+ #include <vector>
++#include <cstdint>
+ 
+ #include <wx/wxprec.h>
+ #ifndef WX_PRECOMP
 diff --git a/src/slic3r/GUI/CreateMMUTiledCanvas.cpp b/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
 index 553a183..686630c 100644
 --- a/src/slic3r/GUI/CreateMMUTiledCanvas.cpp

diff --git a/media-gfx/superslicer/superslicer-2.5.59.2-r1.ebuild b/media-gfx/superslicer/superslicer-2.5.59.2-r2.ebuild
similarity index 100%
rename from media-gfx/superslicer/superslicer-2.5.59.2-r1.ebuild
rename to media-gfx/superslicer/superslicer-2.5.59.2-r2.ebuild


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/superslicer/files/, media-gfx/superslicer/
@ 2024-07-05 17:49 Pacho Ramos
  0 siblings, 0 replies; 6+ messages in thread
From: Pacho Ramos @ 2024-07-05 17:49 UTC (permalink / raw
  To: gentoo-commits

commit:     a4f373863adad74ac3cba7cdf02ac1634fcee0ab
Author:     Pacho Ramos <pacho <AT> gentoo <DOT> org>
AuthorDate: Fri Jul  5 17:26:36 2024 +0000
Commit:     Pacho Ramos <pacho <AT> gentoo <DOT> org>
CommitDate: Fri Jul  5 17:48:54 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a4f37386

media-gfx/superslicer: drop 2.5.59.0-r3

Signed-off-by: Pacho Ramos <pacho <AT> gentoo.org>

 media-gfx/superslicer/Manifest                     |   2 -
 ....0-boost-1.81-std-wxString-to-std-wstring.patch |  40 ----
 .../files/superslicer-2.5.59.0-boost.patch         | 256 ---------------------
 .../files/superslicer-2.5.59.0-cereal.patch        |  53 -----
 ...2.5.59.0-dont-install-bundled-angelscript.patch |  53 -----
 ...erslicer-2.5.59.0-fix-gcodeviewer-symlink.patch |  11 -
 .../superslicer-2.5.59.0-missing-includes.patch    |  36 ---
 .../files/superslicer-2.5.59.0-openexr3.patch      |  77 -------
 .../superslicer-2.5.59.0-wxgtk3-wayland.patch      |  21 --
 .../superslicer/superslicer-2.5.59.0-r3.ebuild     | 102 --------
 10 files changed, 651 deletions(-)

diff --git a/media-gfx/superslicer/Manifest b/media-gfx/superslicer/Manifest
index 006a776d5fba..c076101e258a 100644
--- a/media-gfx/superslicer/Manifest
+++ b/media-gfx/superslicer/Manifest
@@ -1,4 +1,2 @@
-DIST superslicer-2.5.59.0-profiles.tar.gz 15322406 BLAKE2B cfa89697e832e0601746cb21250e258617bcc0966dd111c82ae43a9720b3ffb760f57827a1f35c8ad57a23a7ffb4c78e48ec76d6e40b364f321d0f83c4d10939 SHA512 bbdc6bfa8e21a4bdbca903a367f033f9cb5a1966bd0688bcc81314ba9ee45fee37cb892c82be35e865137c4df7c1fabceb8e6de46316338df2af4a590de91c76
-DIST superslicer-2.5.59.0.tar.gz 45360646 BLAKE2B da65610270ed4c7d55b5bc495d9970812af94f424345088782b3a45b97fcf0f4b58bdc0417b89ed49e21d8c250535baa7cb74344f43438fbde8daf1b3acfacdd SHA512 1d2c0316c91bf0d65fb366806e9ea868bc93fae33deb580a324ce065fd3789ff1b600e9ace400db4988b371b1c36ef0c3ea2b52cde0d48984f312dd8d7ef3a1c
 DIST superslicer-2.5.59.2-profiles.tar.gz 16253775 BLAKE2B 20c99b14ba8ee26ea2a210962e78ea21928a5f32b1e799cbdbe60a3ef587ae1368efce885f5d253468ee9974af6a4419890e56d7df33761732bcefe8dbbc019e SHA512 c20ec66a95d5ec3e1e4fd8b1936bf1a4fc32fbad2c3d78774d5c2480be8a9dcacba5e561c57774a2c761d5189466083e7b6bd9b021a4ca7676e6a5e9676439d7
 DIST superslicer-2.5.59.2.tar.gz 45622782 BLAKE2B ff2fecf233d2710d706b64eb2191bfac39df3f631634de5f9eb1bca6ca712e94b0283beb7c6e9f3b293dc308b50240871ef8651a5355a4d7c5ea6092ac1a836b SHA512 af8878bd8e0c3e0dd5247ce01bdbd2b42b6766d81efbde11b71c6642787a12dfeaea91e653ac928066b9610cd911ea1f4dc77cf4823639030b3c104d955b8cbd

diff --git a/media-gfx/superslicer/files/superslicer-2.5.59.0-boost-1.81-std-wxString-to-std-wstring.patch b/media-gfx/superslicer/files/superslicer-2.5.59.0-boost-1.81-std-wxString-to-std-wstring.patch
deleted file mode 100644
index 1cb0d9f1afff..000000000000
--- a/media-gfx/superslicer/files/superslicer-2.5.59.0-boost-1.81-std-wxString-to-std-wstring.patch
+++ /dev/null
@@ -1,40 +0,0 @@
---- 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);
-             }        

diff --git a/media-gfx/superslicer/files/superslicer-2.5.59.0-boost.patch b/media-gfx/superslicer/files/superslicer-2.5.59.0-boost.patch
deleted file mode 100644
index 4f847aaacb92..000000000000
--- a/media-gfx/superslicer/files/superslicer-2.5.59.0-boost.patch
+++ /dev/null
@@ -1,256 +0,0 @@
-diff --git a/src/hints/HintsToPot.cpp b/src/hints/HintsToPot.cpp
-index 7c8029cde..4791f0612 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/AppConfig.cpp b/src/libslic3r/AppConfig.cpp
-index f029b3d72..18dc7396e 100644
---- a/src/libslic3r/AppConfig.cpp
-+++ b/src/libslic3r/AppConfig.cpp
-@@ -1,3 +1,4 @@
-+#include <boost/filesystem.hpp>
- #include "libslic3r/libslic3r.h"
- #include "libslic3r/Utils.hpp"
- #include "AppConfig.hpp"
-diff --git a/src/libslic3r/AppConfig.hpp b/src/libslic3r/AppConfig.hpp
-index d811ddcc2..1a7023061 100644
---- a/src/libslic3r/AppConfig.hpp
-+++ b/src/libslic3r/AppConfig.hpp
-@@ -5,6 +5,7 @@
- #include <map>
- #include <string>
- 
-+#include <boost/filesystem/path.hpp>
- #include <boost/algorithm/string/trim_all.hpp>
- 
- #include "libslic3r/Config.hpp"
-diff --git a/src/libslic3r/LocalesUtils.cpp b/src/libslic3r/LocalesUtils.cpp
-index 5bf520568..7b870520b 100644
---- a/src/libslic3r/LocalesUtils.cpp
-+++ b/src/libslic3r/LocalesUtils.cpp
-@@ -1,3 +1,4 @@
-+#include <boost/lexical_cast.hpp>
- #include "LocalesUtils.hpp"
- 
- #ifdef _WIN32
-diff --git a/src/libslic3r/Preset.cpp b/src/libslic3r/Preset.cpp
-index 9e9fcda4f..d889e2abf 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/libslic3r/Utils.hpp b/src/libslic3r/Utils.hpp
-index f525c9837..839f0f5e9 100644
---- a/src/libslic3r/Utils.hpp
-+++ b/src/libslic3r/Utils.hpp
-@@ -7,6 +7,7 @@
- #include <type_traits>
- #include <system_error>
- 
-+#include <boost/filesystem.hpp>
- #include <boost/system/error_code.hpp>
- 
- #include "libslic3r.h"
-diff --git a/src/slic3r/GUI/CreateMMUTiledCanvas.cpp b/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
-index 89212f27f..be157eafa 100644
---- a/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
-+++ b/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
-@@ -18,6 +18,11 @@
- #include <wx/notebook.h>
- #include "Notebook.hpp"
- 
-+#include <boost/filesystem.hpp>
-+#include <boost/property_tree/ptree.hpp>
-+#include <boost/property_tree/ini_parser.hpp>
-+#include <boost/log/trivial.hpp>
-+
- #include "MainFrame.hpp"
- #include "wxExtensions.hpp"
- 
-diff --git a/src/slic3r/GUI/DesktopIntegrationDialog.cpp b/src/slic3r/GUI/DesktopIntegrationDialog.cpp
-index fcb7472e6..866ebaef5 100644
---- a/src/slic3r/GUI/DesktopIntegrationDialog.cpp
-+++ b/src/slic3r/GUI/DesktopIntegrationDialog.cpp
-@@ -14,6 +14,7 @@
- #include <boost/log/trivial.hpp>
- #include <boost/dll/runtime_symbol_info.hpp>
- #include <boost/algorithm/string/replace.hpp>
-+#include <boost/nowide/fstream.hpp>
- 
- #include <wx/filename.h>
- #include <wx/stattext.h>
-@@ -503,4 +504,4 @@ DesktopIntegrationDialog::~DesktopIntegrationDialog()
- 
- } // namespace GUI
- } // namespace Slic3r
--#endif // __linux__
-\ No newline at end of file
-+#endif // __linux__
-diff --git a/src/slic3r/GUI/FreeCADDialog.cpp b/src/slic3r/GUI/FreeCADDialog.cpp
-index 271e3ef2d..6bbdf3907 100644
---- a/src/slic3r/GUI/FreeCADDialog.cpp
-+++ b/src/slic3r/GUI/FreeCADDialog.cpp
-@@ -38,6 +38,7 @@
- #include <boost/log/trivial.hpp>
- #include <boost/property_tree/ptree.hpp>
- #include <boost/property_tree/json_parser.hpp>
-+#include <boost/nowide/fstream.hpp>
- 
- // hack for process.hpp : it uses pid_t to set it as alias of int, but vc_x64_lib (wx thingy) as a '#define pid_t int'
- // and so boost/process has a line 'typedef int int'instead of 'typedef int pid_t' that makes it crash
-@@ -322,7 +323,7 @@ bool FreeCADDialog::load_text_from_file(const boost::filesystem::path &path) {
-         try {
-             std::locale loc = boost::locale::generator()("en_US.UTF-8");
-             // Open the stream to 'lock' the file.
--            boost::filesystem::ifstream in;
-+            boost::nowide::ifstream in;
-             in.imbue(loc);
-             in.open(path);
-             // Obtain the size of the file.
-@@ -369,7 +370,7 @@ bool FreeCADDialog::write_text_in_file(const wxString &towrite, const boost::fil
-         boost::filesystem::create_directories(file.parent_path());
-         std::locale loc = boost::locale::generator()("en_US.UTF-8");
-         // Open the stream to 'lock' the file.
--        boost::filesystem::ofstream out;
-+        boost::nowide::ofstream out;
-         out.imbue(loc);
-         out.open(file);
-         out << towrite;
-diff --git a/src/slic3r/GUI/GUI_App.cpp b/src/slic3r/GUI/GUI_App.cpp
-index 4cf21a36c..75b2a8e94 100644
---- a/src/slic3r/GUI/GUI_App.cpp
-+++ b/src/slic3r/GUI/GUI_App.cpp
-@@ -19,6 +19,7 @@
- #include <boost/lexical_cast.hpp>
- #include <boost/log/trivial.hpp>
- #include <boost/nowide/convert.hpp>
-+#include <boost/nowide/fstream.hpp>
- 
- #include <wx/stdpaths.h>
- #include <wx/imagpng.h>
-diff --git a/src/slic3r/GUI/HintNotification.cpp b/src/slic3r/GUI/HintNotification.cpp
-index 32916303f..3a984bf38 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
-diff --git a/src/slic3r/GUI/Preferences.cpp b/src/slic3r/GUI/Preferences.cpp
-index ffc600b0e..c8080d112 100644
---- a/src/slic3r/GUI/Preferences.cpp
-+++ b/src/slic3r/GUI/Preferences.cpp
-@@ -12,6 +12,7 @@
- #include "OG_CustomCtrl.hpp"
- #include "wxExtensions.hpp"
- 
-+#include <boost/algorithm/string/split.hpp>
- #include <boost/filesystem.hpp>
- #include <boost/filesystem/path.hpp>
- 
-diff --git a/src/slic3r/GUI/ScriptExecutor.cpp b/src/slic3r/GUI/ScriptExecutor.cpp
-index 4565d1aec..6738cada9 100644
---- a/src/slic3r/GUI/ScriptExecutor.cpp
-+++ b/src/slic3r/GUI/ScriptExecutor.cpp
-@@ -4,6 +4,13 @@
- #include "Tab.hpp"
- #include "libslic3r/PresetBundle.hpp"
- #include "libslic3r/Print.hpp"
-+#include <boost/log/trivial.hpp>
-+#include <boost/lexical_cast.hpp>
-+#include <boost/algorithm/string/trim_all.hpp>
-+#include <boost/algorithm/string/erase.hpp>
-+#include <boost/algorithm/string/split.hpp>
-+#include <boost/filesystem.hpp>
-+#include <boost/filesystem/string_file.hpp>
- 
- #include <string>
- 
-diff --git a/src/slic3r/GUI/Tab.cpp b/src/slic3r/GUI/Tab.cpp
-index 173f0f762..a3eb553c8 100644
---- a/src/slic3r/GUI/Tab.cpp
-+++ b/src/slic3r/GUI/Tab.cpp
-@@ -36,6 +36,8 @@
- #include <boost/filesystem.hpp>
- #include <boost/filesystem/path.hpp>
- #include <boost/lexical_cast.hpp>
-+#include <boost/nowide/fstream.hpp>
-+#include <boost/log/trivial.hpp>
- 
- #include "wxExtensions.hpp"
- #include "PresetComboBoxes.hpp"
-@@ -1692,7 +1694,7 @@ std::vector<Slic3r::GUI::PageShp> Tab::create_pages(std::string setting_type_nam
- 
-     //read file
-     //std::ifstream filestream(ui_layout_file.c_str());
--    boost::filesystem::ifstream filestream(ui_layout_file);
-+    boost::nowide::ifstream filestream(ui_layout_file);
-     std::string full_line;
-     while (std::getline(filestream, full_line)) {
-         //remove spaces
-diff --git a/src/slic3r/Utils/Http.cpp b/src/slic3r/Utils/Http.cpp
-index 9bab91860..47568721a 100644
---- a/src/slic3r/Utils/Http.cpp
-+++ b/src/slic3r/Utils/Http.cpp
-@@ -11,6 +11,7 @@
- #include <boost/filesystem.hpp>
- #include <boost/format.hpp>
- #include <boost/log/trivial.hpp>
-+#include <boost/nowide/fstream.hpp>
- 
- #include <curl/curl.h>
- 
-@@ -52,7 +53,7 @@ namespace Slic3r {
- 						% error;
- 			})
- 			.on_complete([&](std::string body, unsigned /* http_status */) {
--				boost::filesystem::fstream file(tmp_path, std::ios::out | std::ios::binary | std::ios::trunc);
-+				boost::nowide::fstream file(tmp_path, std::ios::out | std::ios::binary | std::ios::trunc);
- 				file.write(body.c_str(), body.size());
- 				file.close();
- 				boost::filesystem::rename(tmp_path, target_path);

diff --git a/media-gfx/superslicer/files/superslicer-2.5.59.0-cereal.patch b/media-gfx/superslicer/files/superslicer-2.5.59.0-cereal.patch
deleted file mode 100644
index 6557d6653640..000000000000
--- a/media-gfx/superslicer/files/superslicer-2.5.59.0-cereal.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 549d06f0d..bffb63d9b 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -496,6 +496,9 @@ endif ()
- 
- # Find the Cereal serialization library
- find_package(cereal REQUIRED)
-+if (NOT TARGET cereal::cereal)
-+    add_library(cereal::cereal ALIAS cereal)
-+endif ()
- 
- # l10n
- set(L10N_DIR "${SLIC3R_RESOURCES_DIR}/localization")
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index ec44417fa..9aae6dc11 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -141,7 +141,7 @@ if (NOT WIN32)
-     set_target_properties(Slic3r PROPERTIES OUTPUT_NAME "${SLIC3R_APP_CMD}")
- endif ()
- 
--target_link_libraries(Slic3r libslic3r cereal)
-+target_link_libraries(Slic3r libslic3r cereal::cereal)
- if (APPLE)
- #    add_compile_options(-stdlib=libc++)
- #    add_definitions(-DBOOST_THREAD_DONT_USE_CHRONO -DBOOST_NO_CXX11_RVALUE_REFERENCES -DBOOST_THREAD_USES_MOVE)
-diff --git a/src/libslic3r/CMakeLists.txt b/src/libslic3r/CMakeLists.txt
-index c8f22a482..832149338 100644
---- a/src/libslic3r/CMakeLists.txt
-+++ b/src/libslic3r/CMakeLists.txt
-@@ -399,7 +399,7 @@ target_include_directories(libslic3r PUBLIC ${EXPAT_INCLUDE_DIRS})
- target_link_libraries(libslic3r
-     libnest2d
-     admesh
--    cereal
-+    cereal::cereal
-     libigl
-     miniz
-     boost_libs
-diff --git a/src/slic3r/CMakeLists.txt b/src/slic3r/CMakeLists.txt
-index f71b809b3..c64a2c5a9 100644
---- a/src/slic3r/CMakeLists.txt
-+++ b/src/slic3r/CMakeLists.txt
-@@ -302,7 +302,7 @@ target_compile_definitions(libslic3r_gui PRIVATE $<$<BOOL:${SLIC3R_ALPHA}>:SLIC3
- 
- encoding_check(libslic3r_gui)
- 
--target_link_libraries(libslic3r_gui libslic3r avrdude cereal imgui GLEW::GLEW OpenGL::GL hidapi exif angelscript libcurl ${wxWidgets_LIBRARIES})
-+target_link_libraries(libslic3r_gui libslic3r avrdude cereal::cereal imgui GLEW::GLEW OpenGL::GL hidapi exif angelscript libcurl ${wxWidgets_LIBRARIES})
- 
- if (MSVC)
-     target_link_libraries(libslic3r_gui Setupapi.lib)

diff --git a/media-gfx/superslicer/files/superslicer-2.5.59.0-dont-install-bundled-angelscript.patch b/media-gfx/superslicer/files/superslicer-2.5.59.0-dont-install-bundled-angelscript.patch
deleted file mode 100644
index 603a96ac67a5..000000000000
--- a/media-gfx/superslicer/files/superslicer-2.5.59.0-dont-install-bundled-angelscript.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-diff --git a/src/angelscript/CMakeLists.txt b/src/angelscript/CMakeLists.txt
-index fed80a0ad..a65d9f8d5 100644
---- a/src/angelscript/CMakeLists.txt
-+++ b/src/angelscript/CMakeLists.txt
-@@ -202,48 +202,3 @@ endif()
- 
- # Don't override the default runtime output path to avoid conflicts when building for multiple target platforms
- #set(RUNTIME_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/bin)
--
--#See https://cmake.org/cmake/help/latest/manual/cmake-packages.7.html#creating-packages for a detailed explanation about this part
--install(TARGETS ${ANGELSCRIPT_LIBRARY_NAME} EXPORT AngelscriptTargets
--	RUNTIME DESTINATION bin
--	LIBRARY DESTINATION lib
--	ARCHIVE DESTINATION lib
--	INCLUDES DESTINATION include
--)
--
--install(FILES
--	${CMAKE_CURRENT_SOURCE_DIR}/include/angelscript.h
--	DESTINATION include
--	COMPONENT Devel
--)
--
--include(CMakePackageConfigHelpers)
--write_basic_package_version_file(
--	"${CMAKE_CURRENT_BINARY_DIR}/Angelscript/AngelscriptConfigVersion.cmake"
--	VERSION ${PROJECT_VERSION}
--	COMPATIBILITY AnyNewerVersion
--)
--
--export(EXPORT AngelscriptTargets
--	FILE "${CMAKE_CURRENT_BINARY_DIR}/Angelscript/AngelscriptTargets.cmake"
--	NAMESPACE Angelscript::
--)
--configure_file(cmake/AngelscriptConfig.cmake
--	"${CMAKE_CURRENT_BINARY_DIR}/Angelscript/AngelscriptConfig.cmake"
--	COPYONLY
--)
--
--set(ConfigPackageLocation lib/cmake/Angelscript)
--install(EXPORT AngelscriptTargets
--	FILE AngelscriptTargets.cmake
--	NAMESPACE Angelscript::
--	DESTINATION ${ConfigPackageLocation}
--)
--install(
--	FILES
--		cmake/AngelscriptConfig.cmake
--		"${CMAKE_CURRENT_BINARY_DIR}/Angelscript/AngelscriptConfigVersion.cmake"
--	DESTINATION ${ConfigPackageLocation}
--	COMPONENT Devel
--)
--

diff --git a/media-gfx/superslicer/files/superslicer-2.5.59.0-fix-gcodeviewer-symlink.patch b/media-gfx/superslicer/files/superslicer-2.5.59.0-fix-gcodeviewer-symlink.patch
deleted file mode 100644
index 5a5c9960cc00..000000000000
--- a/media-gfx/superslicer/files/superslicer-2.5.59.0-fix-gcodeviewer-symlink.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 9aae6dc11..75835903e 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -299,5 +299,5 @@ else ()
-     install(TARGETS Slic3r RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
- 
-     # Install the symlink for gcodeviewer
--    install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink slic3r ${GCODEVIEWER_APP_CMD} WORKING_DIRECTORY \$ENV{DESTDIR}/${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR})")
-+    install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink ${SLIC3R_APP_CMD} ${GCODEVIEWER_APP_CMD} WORKING_DIRECTORY \$ENV{DESTDIR}/${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR})")
- endif ()

diff --git a/media-gfx/superslicer/files/superslicer-2.5.59.0-missing-includes.patch b/media-gfx/superslicer/files/superslicer-2.5.59.0-missing-includes.patch
deleted file mode 100644
index 27f29fa9f6f1..000000000000
--- a/media-gfx/superslicer/files/superslicer-2.5.59.0-missing-includes.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-diff --git a/src/libslic3r/AppConfig.cpp b/src/libslic3r/AppConfig.cpp
-index 18dc7396e..95483e844 100644
---- a/src/libslic3r/AppConfig.cpp
-+++ b/src/libslic3r/AppConfig.cpp
-@@ -1,6 +1,7 @@
- #include <boost/filesystem.hpp>
- #include "libslic3r/libslic3r.h"
- #include "libslic3r/Utils.hpp"
-+#include "libslic3r/I18N.hpp"
- #include "AppConfig.hpp"
- #include "Exception.hpp"
- #include "LocalesUtils.hpp"
-diff --git a/src/libslic3r/PerimeterGenerator.hpp b/src/libslic3r/PerimeterGenerator.hpp
-index d7401f3fb..a95b7749d 100644
---- a/src/libslic3r/PerimeterGenerator.hpp
-+++ b/src/libslic3r/PerimeterGenerator.hpp
-@@ -1,6 +1,7 @@
- #ifndef slic3r_PerimeterGenerator_hpp_
- #define slic3r_PerimeterGenerator_hpp_
- 
-+#include "ClipperUtils.hpp"
- #include "libslic3r.h"
- #include <vector>
- #include "ExPolygonCollection.hpp"
-diff --git a/src/slic3r/GUI/CreateMMUTiledCanvas.cpp b/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
-index be157eafa..d63eb110e 100644
---- a/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
-+++ b/src/slic3r/GUI/CreateMMUTiledCanvas.cpp
-@@ -40,6 +40,7 @@
- #include <wx/odcombo.h>
- #include <wx/textctrl.h>
- #include <wx/wrapsizer.h>
-+#include <wx/rawbmp.h>
- #include "wxExtensions.hpp"
- 
- #include <boost/filesystem/path.hpp>

diff --git a/media-gfx/superslicer/files/superslicer-2.5.59.0-openexr3.patch b/media-gfx/superslicer/files/superslicer-2.5.59.0-openexr3.patch
deleted file mode 100644
index 8ae71c13f4d3..000000000000
--- a/media-gfx/superslicer/files/superslicer-2.5.59.0-openexr3.patch
+++ /dev/null
@@ -1,77 +0,0 @@
-diff --git a/cmake/modules/FindOpenVDB.cmake b/cmake/modules/FindOpenVDB.cmake
-index 4fde5fa4a..566e73a5e 100644
---- a/cmake/modules/FindOpenVDB.cmake
-+++ b/cmake/modules/FindOpenVDB.cmake
-@@ -347,28 +347,10 @@ macro(just_fail msg)
-   return()
- endmacro()
- 
--find_package(IlmBase QUIET)
--if(NOT IlmBase_FOUND)
--  pkg_check_modules(IlmBase QUIET IlmBase)
--endif()
--if (IlmBase_FOUND AND NOT TARGET IlmBase::Half)
--  message(STATUS "Falling back to IlmBase found by pkg-config...")
--
--  find_library(IlmHalf_LIBRARY NAMES Half)
--  if(IlmHalf_LIBRARY-NOTFOUND OR NOT IlmBase_INCLUDE_DIRS)
--    just_fail("IlmBase::Half can not be found!")
--  endif()
--  
--  add_library(IlmBase::Half UNKNOWN IMPORTED)
--  set_target_properties(IlmBase::Half PROPERTIES
--    IMPORTED_LOCATION "${IlmHalf_LIBRARY}"
--    INTERFACE_INCLUDE_DIRECTORIES "${IlmBase_INCLUDE_DIRS}")
--elseif(NOT IlmBase_FOUND)
--  just_fail("IlmBase::Half can not be found!")
--endif()
- find_package(TBB ${_quiet} ${_required} COMPONENTS tbb)
- find_package(ZLIB ${_quiet} ${_required})
- find_package(Boost ${_quiet} ${_required} COMPONENTS iostreams system )
-+find_package(Imath CONFIG)
- 
- # Use GetPrerequisites to see which libraries this OpenVDB lib has linked to
- # which we can query for optional deps. This basically runs ldd/otoll/objdump
-@@ -419,7 +401,7 @@ foreach(PREREQUISITE ${_OPENVDB_PREREQUISITE_LIST})
-     set(OpenVDB_USES_LOG4CPLUS ON)
-   endif()
- 
--  string(FIND ${PREREQUISITE} "IlmImf" _HAS_DEP)
-+  string(FIND ${PREREQUISITE} "OpenEXR" _HAS_DEP)
-   if(NOT ${_HAS_DEP} EQUAL -1)
-     set(OpenVDB_USES_ILM ON)
-   endif()
-@@ -450,11 +432,7 @@ if(OpenVDB_USES_LOG4CPLUS)
-   find_package(Log4cplus ${_quiet} ${_required})
- endif()
- 
--if(OpenVDB_USES_ILM)
--  find_package(IlmBase ${_quiet} ${_required})
--endif()
--
--if(OpenVDB_USES_EXR)
-+if(OpenVDB_USES_ILM OR OpenVDB_USES_EXR)
-   find_package(OpenEXR ${_quiet} ${_required})
- endif()
- 
-@@ -471,7 +449,7 @@ endif()
- set(_OPENVDB_VISIBLE_DEPENDENCIES
-   Boost::iostreams
-   Boost::system
--  IlmBase::Half
-+  Imath::Imath
- )
- 
- set(_OPENVDB_DEFINITIONS)
-@@ -481,10 +459,7 @@ endif()
- 
- if(OpenVDB_USES_EXR)
-   list(APPEND _OPENVDB_VISIBLE_DEPENDENCIES
--    IlmBase::IlmThread
--    IlmBase::Iex
--    IlmBase::Imath
--    OpenEXR::IlmImf
-+    OpenEXR::OpenEXR
-   )
-   list(APPEND _OPENVDB_DEFINITIONS "-DOPENVDB_TOOLS_RAYTRACER_USE_EXR")
- endif()

diff --git a/media-gfx/superslicer/files/superslicer-2.5.59.0-wxgtk3-wayland.patch b/media-gfx/superslicer/files/superslicer-2.5.59.0-wxgtk3-wayland.patch
deleted file mode 100644
index abe4d7bf60cc..000000000000
--- a/media-gfx/superslicer/files/superslicer-2.5.59.0-wxgtk3-wayland.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff --git a/src/slic3r/GUI/GUI.cpp b/src/slic3r/GUI/GUI.cpp
-index ccd3cc083..be8bbe5cd 100644
---- a/src/slic3r/GUI/GUI.cpp
-+++ b/src/slic3r/GUI/GUI.cpp
-@@ -33,6 +33,16 @@ class AppConfig;
- 
- namespace GUI {
- 
-+// wxgtk3 is broken on wayland: https://trac.wxwidgets.org/ticket/17702
-+#ifdef __WXGTK3__
-+struct ForceX11 {
-+    ForceX11() {
-+        setenv("GDK_BACKEND", "x11", 1);
-+    }
-+};
-+static struct ForceX11 forcex11;
-+#endif
-+
- #if __APPLE__
- IOPMAssertionID assertionID;
- #endif

diff --git a/media-gfx/superslicer/superslicer-2.5.59.0-r3.ebuild b/media-gfx/superslicer/superslicer-2.5.59.0-r3.ebuild
deleted file mode 100644
index 7cdeaa9cc284..000000000000
--- a/media-gfx/superslicer/superslicer-2.5.59.0-r3.ebuild
+++ /dev/null
@@ -1,102 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-WX_GTK_VER="3.0-gtk3"
-MY_PN="SuperSlicer"
-SLICER_PROFILES_COMMIT="748fbdfd2ac077e4e415868e7bc963740b92aa8e"
-
-inherit cmake wxwidgets xdg flag-o-matic
-
-DESCRIPTION="A mesh slicer to generate G-code for fused-filament-fabrication (3D printers)"
-HOMEPAGE="https://github.com/supermerill/SuperSlicer/"
-SRC_URI="
-	https://github.com/supermerill/SuperSlicer/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
-	https://github.com/slic3r/slic3r-profiles/archive/${SLICER_PROFILES_COMMIT}.tar.gz -> ${P}-profiles.tar.gz
-"
-
-LICENSE="AGPL-3 Boost-1.0 GPL-2 LGPL-3 MIT"
-SLOT="0"
-KEYWORDS="amd64 ~x86"
-IUSE="test"
-
-RESTRICT="test"
-
-# No dep on sci-libs/libigl, in-tree version cannot build
-# static library currently. Using bundled one.
-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:=
-	dev-libs/imath:=
-	>=media-gfx/openvdb-8.2:=
-	net-misc/curl[adns]
-	media-libs/glew:0=
-	media-libs/libpng:0=
-	media-libs/qhull:=
-	sci-libs/nlopt
-	>=sci-mathematics/cgal-5.0:=
-	sys-apps/dbus
-	sys-libs/zlib:=
-	virtual/glu
-	virtual/opengl
-	x11-libs/gtk+:3
-	x11-libs/wxGTK:${WX_GTK_VER}[X,opengl]
-"
-DEPEND="${RDEPEND}
-	media-libs/qhull[static-libs]
-"
-
-PATCHES=(
-	"${FILESDIR}/${P}-openexr3.patch"
-	"${FILESDIR}/${P}-wxgtk3-wayland.patch"
-	"${FILESDIR}/${P}-cereal.patch"
-	"${FILESDIR}/${P}-boost.patch"
-	"${FILESDIR}/${P}-boost-1.81-std-wxString-to-std-wstring.patch"
-	"${FILESDIR}/${P}-missing-includes.patch"
-	"${FILESDIR}/${P}-dont-install-bundled-angelscript.patch"
-	"${FILESDIR}/${P}-fix-gcodeviewer-symlink.patch"
-)
-
-S="${WORKDIR}/${MY_PN}-${PV}"
-
-src_unpack() {
-	default
-
-	mv slic3r-profiles-*/* "${S}"/resources/profiles/ || die
-}
-
-src_configure() {
-	CMAKE_BUILD_TYPE="Release"
-
-	append-flags -fno-strict-aliasing
-
-	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_install() {
-	cmake_src_install
-
-	rm "${ED}/usr/lib/udev/rules.d/90-3dconnexion.rules" || die
-}


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-gfx/superslicer/files/, media-gfx/superslicer/
@ 2024-07-16  7:24 Sam James
  0 siblings, 0 replies; 6+ messages in thread
From: Sam James @ 2024-07-16  7:24 UTC (permalink / raw
  To: gentoo-commits

commit:     1d274045638c2ef671a60b5c324ea264c3f85e5b
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 16 07:18:51 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Jul 16 07:18:51 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1d274045

media-gfx/superslicer: add 2.5.59.8

Closes: https://bugs.gentoo.org/918510
Thanks-to: Egor <egorr.berd <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-gfx/superslicer/Manifest                     |   2 +
 ...rslicer-2.5.59.8-additional-imports-fixes.patch | 111 +++++++++++++++++++++
 ...r-2.5.59.8-boost-replace-load-string-file.patch |  43 ++++++++
 ...icer-2.5.59.8-fix-compilation-error-gnu17.patch |  20 ++++
 .../superslicer-2.5.59.8-libnest2d-link-xcb.patch  |  12 +++
 media-gfx/superslicer/superslicer-2.5.59.8.ebuild  | 109 ++++++++++++++++++++
 6 files changed, 297 insertions(+)

diff --git a/media-gfx/superslicer/Manifest b/media-gfx/superslicer/Manifest
index c076101e258a..ea74f49bd757 100644
--- a/media-gfx/superslicer/Manifest
+++ b/media-gfx/superslicer/Manifest
@@ -1,2 +1,4 @@
 DIST superslicer-2.5.59.2-profiles.tar.gz 16253775 BLAKE2B 20c99b14ba8ee26ea2a210962e78ea21928a5f32b1e799cbdbe60a3ef587ae1368efce885f5d253468ee9974af6a4419890e56d7df33761732bcefe8dbbc019e SHA512 c20ec66a95d5ec3e1e4fd8b1936bf1a4fc32fbad2c3d78774d5c2480be8a9dcacba5e561c57774a2c761d5189466083e7b6bd9b021a4ca7676e6a5e9676439d7
 DIST superslicer-2.5.59.2.tar.gz 45622782 BLAKE2B ff2fecf233d2710d706b64eb2191bfac39df3f631634de5f9eb1bca6ca712e94b0283beb7c6e9f3b293dc308b50240871ef8651a5355a4d7c5ea6092ac1a836b SHA512 af8878bd8e0c3e0dd5247ce01bdbd2b42b6766d81efbde11b71c6642787a12dfeaea91e653ac928066b9610cd911ea1f4dc77cf4823639030b3c104d955b8cbd
+DIST superslicer-2.5.59.8-profiles.tar.gz 17931886 BLAKE2B 953a777dd12971c355a5f48148d4c3831b9435cf08f1baecb32ff0ef6245678f81c53bf5078cc4d6d04642e9ee18e1023d5d1578ebdf1384c7c1ce44a1153c50 SHA512 2e4561de7c57308a91c8964c8a957bc10c5e4cedc47c5fc37633bbcf78e3576ed1eaa6d7126485e94eb0aa593940c73a460f3d5ad65f33001d32953caa2fb4e1
+DIST superslicer-2.5.59.8.tar.gz 46021260 BLAKE2B 04abffd1a9cdf417d544539d5cde9b3559f2da7c1cb24cfa0e4a5d11359bca53cb25a90a3a14b26ee10e33e283ba4774d404265e6740b5457f82110be2a44af9 SHA512 57ef6c129c24378d6f4f78d34a60ed15668a8c5c266fa706937edebbd7b52d145657aae1e46a7b1d19dabaf403465bc5af50a94fa70205456bfc87a1458bac6e

diff --git a/media-gfx/superslicer/files/superslicer-2.5.59.8-additional-imports-fixes.patch b/media-gfx/superslicer/files/superslicer-2.5.59.8-additional-imports-fixes.patch
new file mode 100644
index 000000000000..1ccef804d0b4
--- /dev/null
+++ b/media-gfx/superslicer/files/superslicer-2.5.59.8-additional-imports-fixes.patch
@@ -0,0 +1,111 @@
+diff --git a/src/libslic3r/Extruder.hpp b/src/libslic3r/Extruder.hpp
+index e4e16d263..629fd6e0b 100644
+--- a/src/libslic3r/Extruder.hpp
++++ b/src/libslic3r/Extruder.hpp
+@@ -3,6 +3,7 @@
+ 
+ #include "libslic3r.h"
+ #include "Point.hpp"
++#include <optional>
+ 
+ namespace Slic3r {
+ 
+diff --git a/src/slic3r/GUI/Field.cpp b/src/slic3r/GUI/Field.cpp
+index 10cae794d..c82969e20 100644
+--- a/src/slic3r/GUI/Field.cpp
++++ b/src/slic3r/GUI/Field.cpp
+@@ -20,6 +20,7 @@
+ #include <wx/tglbtn.h>
+ #endif
+ #include <wx/tokenzr.h>
++#include <boost/algorithm/string.hpp>
+ #include <boost/algorithm/string/predicate.hpp>
+ #include <boost/log/trivial.hpp>
+ #include "OG_CustomCtrl.hpp"
+diff --git a/src/slic3r/GUI/Preferences.cpp b/src/slic3r/GUI/Preferences.cpp
+index ab6039ff0..be01e890a 100644
+--- a/src/slic3r/GUI/Preferences.cpp
++++ b/src/slic3r/GUI/Preferences.cpp
+@@ -8,6 +8,7 @@
+ 
+ #include <wx/notebook.h>
+ #include <wx/scrolwin.h>
++#include <wx/display.h>
+ #include "Notebook.hpp"
+ #include "ButtonsDescription.hpp"
+ #include "OG_CustomCtrl.hpp"
+diff --git a/src/slic3r/GUI/Tab.cpp b/src/slic3r/GUI/Tab.cpp
+index a6c7b580e..1e1566f37 100644
+--- a/src/slic3r/GUI/Tab.cpp
++++ b/src/slic3r/GUI/Tab.cpp
+@@ -29,6 +29,7 @@
+ #include <wx/settings.h>
+ #include <wx/filedlg.h>
+ 
++#include <boost/algorithm/string.hpp>
+ #include <boost/algorithm/string/split.hpp>
+ #include <boost/algorithm/string/predicate.hpp>
+ #include <boost/algorithm/string/replace.hpp>
+diff --git a/src/libslic3r/ObjectID.hpp b/src/libslic3r/ObjectID.hpp
+index 782c58741..08dfba661 100644
+--- a/src/libslic3r/ObjectID.hpp
++++ b/src/libslic3r/ObjectID.hpp
+@@ -2,6 +2,7 @@
+ #define slic3r_ObjectID_hpp_
+ 
+ #include <cereal/access.hpp>
++#include <cereal/types/base_class.hpp>
+ 
+ namespace Slic3r {
+
+diff --git a/src/libslic3r/Format/BBConfig.hpp b/src/libslic3r/Format/BBConfig.hpp
+index a4b27675c..8d821bed5 100644
+--- a/src/libslic3r/Format/BBConfig.hpp
++++ b/src/libslic3r/Format/BBConfig.hpp
+@@ -2,6 +2,13 @@
+ #define slic3r_Format_BBconfig_hpp_
+ 
+ #include "miniz_extension.hpp"
++#include <fstream>
++#include <map>
++#include "libslic3r/Config.hpp"
++#include <boost/algorithm/string/replace.hpp>
++#include <boost/log/trivial.hpp>
++#include <boost/property_tree/ptree.hpp>
++#include <boost/property_tree/ini_parser.hpp>
+ 
+ #ifdef __APPLE__
+     #include <boost/filesystem.hpp>
+diff --git a/src/libslic3r/GCode/FanMover.cpp b/src/libslic3r/GCode/FanMover.cpp
+index 8a39d92c5..68e8c9254 100644
+--- a/src/libslic3r/GCode/FanMover.cpp
++++ b/src/libslic3r/GCode/FanMover.cpp
+@@ -13,9 +13,8 @@
+ #include "../PrintConfig.hpp"
+ #include "../Utils.hpp"
+ #include "Print.hpp"
+-
+-#include <boost/log/trivial.hpp>
+ */
++#include <boost/log/trivial.hpp>
+ 
+ 
+ namespace Slic3r {
+diff --git a/src/libslic3r/Format/bbs_3mf.cpp b/src/libslic3r/Format/bbs_3mf.cpp
+index f1570b7a4..777f1d722 100644
+--- a/src/libslic3r/Format/bbs_3mf.cpp
++++ b/src/libslic3r/Format/bbs_3mf.cpp
+@@ -43,11 +43,13 @@
+ #include <boost/property_tree/ptree.hpp>
+ #include <boost/property_tree/xml_parser.hpp>
+ #include <boost/foreach.hpp>
++#include <boost/thread/mutex.hpp>
+ //#include <openssl/md5.h>
+ 
+ namespace pt = boost::property_tree;
+ 
+ #include <tbb/parallel_reduce.h>
++#include <tbb/parallel_for.h>
+ 
+ #include <expat.h>
+ #include <Eigen/Dense>

diff --git a/media-gfx/superslicer/files/superslicer-2.5.59.8-boost-replace-load-string-file.patch b/media-gfx/superslicer/files/superslicer-2.5.59.8-boost-replace-load-string-file.patch
new file mode 100644
index 000000000000..9b948ed9c0c4
--- /dev/null
+++ b/media-gfx/superslicer/files/superslicer-2.5.59.8-boost-replace-load-string-file.patch
@@ -0,0 +1,43 @@
+diff --git a/src/slic3r/GUI/ScriptExecutor.cpp b/src/slic3r/GUI/ScriptExecutor.cpp
+index f32e44204..272af5ec3 100644
+--- a/src/slic3r/GUI/ScriptExecutor.cpp
++++ b/src/slic3r/GUI/ScriptExecutor.cpp
+@@ -5,8 +5,11 @@
+ #include "libslic3r/PresetBundle.hpp"
+ #include "libslic3r/Print.hpp"
+ 
++#include <fstream>
+ #include <string>
+ 
++#include <boost/filesystem.hpp>
++
+ #include <angelscript/source/as_config.h>
+ #include <angelscript/add_on/autowrapper/aswrappedcall.h>
+ #include <angelscript/add_on/scriptarray/scriptarray.h>
+@@ -616,6 +619,17 @@ bool as_is_enabled(std::string &key)
+     return f->is_enabled();
+ }
+ 
++inline
++void load_string_file(const boost::filesystem::path& p, std::string& str)
++{
++       std::ifstream file;
++       file.exceptions(std::ifstream::failbit | std::ifstream::badbit);
++       file.open(p, std::ios_base::binary);
++       std::size_t sz = static_cast<std::size_t>(boost::filesystem::file_size(p));
++       str.resize(sz, '\0');
++       file.read(&str[0], sz);
++}
++
+ //function to reset a field
+ void as_back_initial_value(std::string& key) {
+     current_script->add_to_reset(key);
+@@ -745,7 +759,7 @@ void ScriptContainer::init(const std::string& tab_key, Tab* tab)
+         //res = builder.AddSectionFromFile(ui_script_file.string().c_str()); //seems to be problematic on cyrillic locale
+         {
+             std::string all_file;
+-            boost::filesystem::load_string_file(ui_script_file, all_file);
++            load_string_file(ui_script_file, all_file);
+             res = builder.AddSectionFromMemory(ui_script_file.string().c_str(), all_file.c_str(), (unsigned int)(all_file.length()), 0);
+         }
+         if (res < 0) throw CompileErrorException("Error, can't build the script for tab " + tab_key);

diff --git a/media-gfx/superslicer/files/superslicer-2.5.59.8-fix-compilation-error-gnu17.patch b/media-gfx/superslicer/files/superslicer-2.5.59.8-fix-compilation-error-gnu17.patch
new file mode 100644
index 000000000000..5574340bce63
--- /dev/null
+++ b/media-gfx/superslicer/files/superslicer-2.5.59.8-fix-compilation-error-gnu17.patch
@@ -0,0 +1,20 @@
+# https://github.com/prusa3d/PrusaSlicer/commit/4aa7366fafb7a3f91cc68d4a808f5195a4aa3dcf
+diff --git a/src/libslic3r/MeshBoolean.cpp b/src/libslic3r/MeshBoolean.cpp
+index d76bf468c7f..22232573953 100644
+--- a/src/libslic3r/MeshBoolean.cpp
++++ b/src/libslic3r/MeshBoolean.cpp
+@@ -152,12 +152,12 @@ indexed_triangle_set cgal_to_indexed_triangle_set(const _Mesh &cgalmesh)
+     const auto &vertices = cgalmesh.vertices();
+     int vsize = int(vertices.size());
+ 
+-    for (auto &vi : vertices) {
++    for (const auto &vi : vertices) {
+         auto &v = cgalmesh.point(vi); // Don't ask...
+         its.vertices.emplace_back(to_vec3f(v));
+     }
+ 
+-    for (auto &face : faces) {
++    for (const auto &face : faces) {
+         auto vtc = cgalmesh.vertices_around_face(cgalmesh.halfedge(face));
+ 
+         int i = 0;

diff --git a/media-gfx/superslicer/files/superslicer-2.5.59.8-libnest2d-link-xcb.patch b/media-gfx/superslicer/files/superslicer-2.5.59.8-libnest2d-link-xcb.patch
new file mode 100644
index 000000000000..441f647b037e
--- /dev/null
+++ b/media-gfx/superslicer/files/superslicer-2.5.59.8-libnest2d-link-xcb.patch
@@ -0,0 +1,12 @@
+diff --git a/src/libnest2d/CMakeLists.txt b/src/libnest2d/CMakeLists.txt
+index c18dc31cb..852d26d5e 100644
+--- a/src/libnest2d/CMakeLists.txt
++++ b/src/libnest2d/CMakeLists.txt
+@@ -24,5 +24,6 @@ set(LIBNEST2D_SRCFILES
+ add_library(libnest2d STATIC ${LIBNEST2D_SRCFILES})
+ 
+ target_include_directories(libnest2d PUBLIC ${CMAKE_CURRENT_LIST_DIR}/include)
+-target_link_libraries(libnest2d PUBLIC NLopt::nlopt TBB::tbb Boost::boost libslic3r)
++target_link_libraries(libnest2d PUBLIC NLopt::nlopt TBB::tbb Boost::boost
++    libslic3r xcb)
+ target_compile_definitions(libnest2d PUBLIC LIBNEST2D_THREADING_tbb LIBNEST2D_STATIC LIBNEST2D_OPTIMIZER_nlopt LIBNEST2D_GEOMETRIES_libslic3r)

diff --git a/media-gfx/superslicer/superslicer-2.5.59.8.ebuild b/media-gfx/superslicer/superslicer-2.5.59.8.ebuild
new file mode 100644
index 000000000000..b43862a3db67
--- /dev/null
+++ b/media-gfx/superslicer/superslicer-2.5.59.8.ebuild
@@ -0,0 +1,109 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+WX_GTK_VER="3.0-gtk3"
+MY_PN="SuperSlicer"
+SLICER_PROFILES_COMMIT="8f3bb94a9c60be9a3b40d88a36ff05ba5cf2d6a8"
+
+inherit cmake wxwidgets xdg flag-o-matic
+
+DESCRIPTION="A mesh slicer to generate G-code for fused-filament-fabrication (3D printers)"
+HOMEPAGE="https://github.com/supermerill/SuperSlicer/"
+SRC_URI="
+	https://github.com/supermerill/SuperSlicer/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
+	https://github.com/slic3r/slic3r-profiles/archive/${SLICER_PROFILES_COMMIT}.tar.gz -> ${P}-profiles.tar.gz
+"
+
+LICENSE="AGPL-3 Boost-1.0 GPL-2 LGPL-3 MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="test"
+
+RESTRICT="test"
+
+# No dep on sci-libs/libigl, in-tree version cannot build
+# static library currently. Using bundled one.
+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:=
+	dev-libs/imath:=
+	>=media-gfx/openvdb-8.2:=
+	net-misc/curl[adns]
+	media-libs/glew:0=
+	media-libs/libpng:0=
+	media-libs/qhull:=
+	sci-libs/nlopt
+	sci-libs/opencascade:=
+	>=sci-mathematics/cgal-5.0:=
+	sys-apps/dbus
+	sys-libs/zlib:=
+	virtual/glu
+	virtual/opengl
+	x11-libs/gtk+:3
+	x11-libs/wxGTK:${WX_GTK_VER}[X,opengl]
+"
+DEPEND="${RDEPEND}
+	media-libs/qhull[static-libs]
+"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-2.5.59.2-boost.patch"
+	"${FILESDIR}/${PN}-2.5.59.2-cereal.patch"
+	"${FILESDIR}/${PN}-2.5.59.2-dont-install-angelscript.patch"
+	"${FILESDIR}/${PN}-2.5.59.2-gcodeviewer-symlink-fix.patch"
+	"${FILESDIR}/${PN}-2.5.59.2-missing-includes-fix.patch"
+	"${FILESDIR}/${PN}-2.5.59.2-openexr3.patch"
+	"${FILESDIR}/${PN}-2.5.59.2-wxgtk3-wayland-fix.patch"
+	"${FILESDIR}/${PN}-2.5.59.2-relax-OpenCASCADE-dep.patch"
+	"${FILESDIR}/${PN}-2.5.59.2-link-occtwrapper-statically.patch"
+	"${FILESDIR}/${PN}-2.5.59.2-fix-dereferencing-in-std-unique_ptr-to-nullptr.patch"
+	"${FILESDIR}/${P}-additional-imports-fixes.patch"
+	"${FILESDIR}/${P}-fix-compilation-error-gnu17.patch"
+	"${FILESDIR}/${P}-libnest2d-link-xcb.patch"
+	"${FILESDIR}/${P}-boost-replace-load-string-file.patch"
+)
+
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+src_unpack() {
+	default
+
+	mv slic3r-profiles-*/* "${S}"/resources/profiles/ || die
+}
+
+src_configure() {
+	CMAKE_BUILD_TYPE="Release"
+
+	append-flags -fno-strict-aliasing
+
+	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_install() {
+	cmake_src_install
+
+	rm "${ED}/usr/lib/udev/rules.d/90-3dconnexion.rules" || die
+}


^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-07-16  7:24 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-07-14 20:45 [gentoo-commits] repo/gentoo:master commit in: media-gfx/superslicer/files/, media-gfx/superslicer/ Piotr Karbowski
  -- strict thread matches above, loose matches on Subject: below --
2022-12-27 20:12 Piotr Karbowski
2022-12-28 18:13 Piotr Karbowski
2023-06-04 13:02 Piotr Karbowski
2024-07-05 17:49 Pacho Ramos
2024-07-16  7:24 Sam James

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox