Compare commits
3 commits
2b9cd5ceb7
...
7eb25363aa
Author | SHA1 | Date | |
---|---|---|---|
7eb25363aa | |||
980771880d | |||
5355a535ef |
12 changed files with 376 additions and 245 deletions
4
.SRCINFO
4
.SRCINFO
|
@ -1,7 +1,7 @@
|
||||||
pkgbase = superslicer-prerelease
|
pkgbase = superslicer-prerelease
|
||||||
pkgdesc = G-code generator for 3D printers (RepRap, Makerbot, Ultimaker etc.)
|
pkgdesc = G-code generator for 3D printers (RepRap, Makerbot, Ultimaker etc.)
|
||||||
pkgver = 2.5.60.0
|
pkgver = 2.5.60.0
|
||||||
pkgrel = 1
|
pkgrel = 2
|
||||||
epoch = 1
|
epoch = 1
|
||||||
url = https://github.com/supermerill/SuperSlicer
|
url = https://github.com/supermerill/SuperSlicer
|
||||||
arch = x86_64
|
arch = x86_64
|
||||||
|
@ -38,6 +38,7 @@ pkgbase = superslicer-prerelease
|
||||||
source = 0007-boost1.84.patch
|
source = 0007-boost1.84.patch
|
||||||
source = 0008-boost1.85.patch
|
source = 0008-boost1.85.patch
|
||||||
source = 0009-fix-multiple-choice.patch
|
source = 0009-fix-multiple-choice.patch
|
||||||
|
source = 0010-occtwrapper-install-dir.patch
|
||||||
sha512sums = a53f4cc9b5a20f3f60d38553d47bfd19ce8bd739a8a16493bbcf64f75825fa760b8c107d7f927d49d967f7d067fac8c428c8f6e67219e74b0970d9ab7aa5b9e6
|
sha512sums = a53f4cc9b5a20f3f60d38553d47bfd19ce8bd739a8a16493bbcf64f75825fa760b8c107d7f927d49d967f7d067fac8c428c8f6e67219e74b0970d9ab7aa5b9e6
|
||||||
sha512sums = fc18e8edf516f9479c3b0e201d1c74b42289f15ef8a64ff3a88c2bb14613978a9dcf7be50ff8b79faf054c7721a095a70715b0fb0747be48757f9502ba0eb859
|
sha512sums = fc18e8edf516f9479c3b0e201d1c74b42289f15ef8a64ff3a88c2bb14613978a9dcf7be50ff8b79faf054c7721a095a70715b0fb0747be48757f9502ba0eb859
|
||||||
sha512sums = 58467732161eb0abe58cfb1e64e080f64f9f2221032b0d6176739fc81a61fe7838fa6479e9aac7fa0ee9805898f9293081c5e35a146df103830199b46354b97e
|
sha512sums = 58467732161eb0abe58cfb1e64e080f64f9f2221032b0d6176739fc81a61fe7838fa6479e9aac7fa0ee9805898f9293081c5e35a146df103830199b46354b97e
|
||||||
|
@ -48,5 +49,6 @@ pkgbase = superslicer-prerelease
|
||||||
sha512sums = a92af974cb62901aab5a5c8c34672e9a7c90ea7246bbd7423421a9b7ee12a7b17073d90a6f36f994328c7dc9c2d0a6e4fd18c980a71863bc530d873ebaa80433
|
sha512sums = a92af974cb62901aab5a5c8c34672e9a7c90ea7246bbd7423421a9b7ee12a7b17073d90a6f36f994328c7dc9c2d0a6e4fd18c980a71863bc530d873ebaa80433
|
||||||
sha512sums = ca9f407d87d8dd0181077bc2da5a8e2f8995eed88a4787b73ee6c62ef6d2380fd1394fe5412cdc34276d4182bce6f272173e9ccb653d1e28978e16f379114002
|
sha512sums = ca9f407d87d8dd0181077bc2da5a8e2f8995eed88a4787b73ee6c62ef6d2380fd1394fe5412cdc34276d4182bce6f272173e9ccb653d1e28978e16f379114002
|
||||||
sha512sums = 6d7ab93042a75f04e1c3c8f294d19dd39abaf22aa75caf996c6a0cf753f6472134a3d4fa443b73924800b2d3a710416a931745c168911c0df3709fb71ec00570
|
sha512sums = 6d7ab93042a75f04e1c3c8f294d19dd39abaf22aa75caf996c6a0cf753f6472134a3d4fa443b73924800b2d3a710416a931745c168911c0df3709fb71ec00570
|
||||||
|
sha512sums = 92929ba1cb6ee104a10f34a649eba3789ca02f1725104a57412279ff68c46614b1812b13e7dcdf0d235618b9f2a868b4798b1404d9e712d9f1efd46e6c71fcb5
|
||||||
|
|
||||||
pkgname = superslicer-prerelease
|
pkgname = superslicer-prerelease
|
||||||
|
|
|
@ -1,81 +0,0 @@
|
||||||
From 408e56f0390f20aaf793e0aa0c70c4d9544401d4 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Vojtech Bubnik <bubnikv@gmail.com>
|
|
||||||
Date: Mon, 25 Apr 2022 08:33:48 +0200
|
|
||||||
Subject: [PATCH] Fix of Boost 1.79 deprecated boost::filesystem::ofstream
|
|
||||||
#8238 Replacing boost::filesystem::fstream with boost::nowide::fstream
|
|
||||||
variants with the unfortunate cost of string path conversion on Windows from
|
|
||||||
16 bits to UTF8 and back to 16 bits.
|
|
||||||
|
|
||||||
Unfortunately we cannot use std::filesystem yet as it is missing
|
|
||||||
on older MACs and because the interface is crooked minefield on Windows
|
|
||||||
see https://github.com/microsoft/STL/issues/909
|
|
||||||
---
|
|
||||||
src/hints/HintsToPot.cpp | 2 +-
|
|
||||||
src/libslic3r/Preset.cpp | 2 +-
|
|
||||||
src/slic3r/GUI/HintNotification.cpp | 8 +++++---
|
|
||||||
3 files changed, 7 insertions(+), 5 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/src/hints/HintsToPot.cpp b/src/hints/HintsToPot.cpp
|
|
||||||
index 7c8029cdeb..4791f0612f 100644
|
|
||||||
--- a/src/hints/HintsToPot.cpp
|
|
||||||
+++ b/src/hints/HintsToPot.cpp
|
|
||||||
@@ -9,7 +9,7 @@
|
|
||||||
|
|
||||||
bool write_to_pot(boost::filesystem::path path, const std::vector<std::pair<std::string, std::string>>& data)
|
|
||||||
{
|
|
||||||
- boost::filesystem::ofstream file(std::move(path), std::ios_base::app);
|
|
||||||
+ boost::nowide::ofstream file(path.string(), std::ios_base::app);
|
|
||||||
for (const auto& element : data)
|
|
||||||
{
|
|
||||||
//Example of .pot element
|
|
||||||
diff --git a/src/libslic3r/Preset.cpp b/src/libslic3r/Preset.cpp
|
|
||||||
index f3a1c15b3e..f171cb14dd 100644
|
|
||||||
--- a/src/libslic3r/Preset.cpp
|
|
||||||
+++ b/src/libslic3r/Preset.cpp
|
|
||||||
@@ -84,7 +84,7 @@ ConfigFileType guess_config_file_type(const ptree &tree)
|
|
||||||
VendorProfile VendorProfile::from_ini(const boost::filesystem::path &path, bool load_all)
|
|
||||||
{
|
|
||||||
ptree tree;
|
|
||||||
- boost::filesystem::ifstream ifs(path);
|
|
||||||
+ boost::nowide::ifstream ifs(path.string());
|
|
||||||
boost::property_tree::read_ini(ifs, tree);
|
|
||||||
return VendorProfile::from_ini(tree, path, load_all);
|
|
||||||
}
|
|
||||||
diff --git a/src/slic3r/GUI/HintNotification.cpp b/src/slic3r/GUI/HintNotification.cpp
|
|
||||||
index 93e0fb3259..820b74eedb 100644
|
|
||||||
--- a/src/slic3r/GUI/HintNotification.cpp
|
|
||||||
+++ b/src/slic3r/GUI/HintNotification.cpp
|
|
||||||
@@ -14,12 +14,14 @@
|
|
||||||
#include "libslic3r/Config.hpp"
|
|
||||||
#include "libslic3r/PrintConfig.hpp"
|
|
||||||
|
|
||||||
+#include <map>
|
|
||||||
+
|
|
||||||
#include <boost/algorithm/string/replace.hpp>
|
|
||||||
#include <boost/filesystem.hpp>
|
|
||||||
#include <boost/nowide/fstream.hpp>
|
|
||||||
#include <boost/log/trivial.hpp>
|
|
||||||
#include <boost/property_tree/ini_parser.hpp>
|
|
||||||
-#include <map>
|
|
||||||
+
|
|
||||||
#include <cereal/archives/binary.hpp>
|
|
||||||
#include <cereal/types/string.hpp>
|
|
||||||
#include <cereal/types/vector.hpp>
|
|
||||||
@@ -65,7 +67,7 @@ inline void push_style_color(ImGuiCol idx, const ImVec4& col, bool fading_out, f
|
|
||||||
|
|
||||||
void write_used_binary(const std::vector<std::string>& ids)
|
|
||||||
{
|
|
||||||
- boost::filesystem::ofstream file((boost::filesystem::path(data_dir()) / "cache" / "hints.cereal"), std::ios::binary);
|
|
||||||
+ boost::nowide::ofstream file((boost::filesystem::path(data_dir()) / "cache" / "hints.cereal").string(), std::ios::binary);
|
|
||||||
cereal::BinaryOutputArchive archive(file);
|
|
||||||
HintsCerealData cd { ids };
|
|
||||||
try
|
|
||||||
@@ -84,7 +86,7 @@ void read_used_binary(std::vector<std::string>& ids)
|
|
||||||
BOOST_LOG_TRIVIAL(warning) << "Failed to load to hints.cereal. File does not exists. " << path.string();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
- boost::filesystem::ifstream file(path);
|
|
||||||
+ boost::nowide::ifstream file(path.string());
|
|
||||||
cereal::BinaryInputArchive archive(file);
|
|
||||||
HintsCerealData cd;
|
|
||||||
try
|
|
34
0001-findwxwidgets.patch
Normal file
34
0001-findwxwidgets.patch
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
diff --git a/cmake/modules/FindwxWidgets.cmake b/cmake/modules/FindwxWidgets.cmake
|
||||||
|
index e1f93a6a26..88c5f2487d 100644
|
||||||
|
--- a/cmake/modules/FindwxWidgets.cmake
|
||||||
|
+++ b/cmake/modules/FindwxWidgets.cmake
|
||||||
|
@@ -183,12 +183,12 @@ This module defines the following :prop_tgt:`IMPORTED` targets:
|
||||||
|
# Helper macro to control the debugging output globally. There are
|
||||||
|
# two versions for controlling how verbose your output should be.
|
||||||
|
macro(DBG_MSG _MSG)
|
||||||
|
-# message(STATUS
|
||||||
|
-# "${CMAKE_CURRENT_LIST_FILE}(${CMAKE_CURRENT_LIST_LINE}): ${_MSG}")
|
||||||
|
+ message(STATUS
|
||||||
|
+ "${CMAKE_CURRENT_LIST_FILE}(${CMAKE_CURRENT_LIST_LINE}): ${_MSG}")
|
||||||
|
endmacro()
|
||||||
|
macro(DBG_MSG_V _MSG)
|
||||||
|
-# message(STATUS
|
||||||
|
-# "${CMAKE_CURRENT_LIST_FILE}(${CMAKE_CURRENT_LIST_LINE}): ${_MSG}")
|
||||||
|
+ message(STATUS
|
||||||
|
+ "${CMAKE_CURRENT_LIST_FILE}(${CMAKE_CURRENT_LIST_LINE}): ${_MSG}")
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
# Clear return values in case the module is loaded more than once.
|
||||||
|
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||||
|
index aee1aaf100..e6db66b00d 100644
|
||||||
|
--- a/src/CMakeLists.txt
|
||||||
|
+++ b/src/CMakeLists.txt
|
||||||
|
@@ -57,7 +57,7 @@ if (SLIC3R_GUI)
|
||||||
|
if (CMAKE_SYSTEM_NAME STREQUAL "Linux")
|
||||||
|
set (wxWidgets_CONFIG_OPTIONS "--toolkit=gtk${SLIC3R_GTK}")
|
||||||
|
endif ()
|
||||||
|
- find_package(wxWidgets 3.2 MODULE REQUIRED COMPONENTS base core adv html gl stc scintilla)
|
||||||
|
+ find_package(wxWidgets 3.2 MODULE REQUIRED COMPONENTS base core adv html gl stc)
|
||||||
|
|
||||||
|
include(${wxWidgets_USE_FILE})
|
||||||
|
|
13
0002-addlib-expat.patch
Normal file
13
0002-addlib-expat.patch
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||||
|
index 34fe44a2ef..c0792f5476 100644
|
||||||
|
--- a/CMakeLists.txt
|
||||||
|
+++ b/CMakeLists.txt
|
||||||
|
@@ -485,8 +485,6 @@ include_directories(BEFORE SYSTEM ${EIGEN3_INCLUDE_DIR})
|
||||||
|
# no matter what.
|
||||||
|
find_package(EXPAT REQUIRED)
|
||||||
|
|
||||||
|
-add_library(libexpat INTERFACE)
|
||||||
|
-
|
||||||
|
if (TARGET EXPAT::EXPAT )
|
||||||
|
target_link_libraries(libexpat INTERFACE EXPAT::EXPAT)
|
||||||
|
elseif(TARGET expat::expat)
|
|
@ -1,71 +0,0 @@
|
||||||
diff --git a/cmake/modules/Findcereal.cmake b/cmake/modules/Findcereal.cmake
|
|
||||||
deleted file mode 100644
|
|
||||||
index b4829757e..000000000
|
|
||||||
--- 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 01ef37905..98dbafa01 100644
|
|
||||||
--- a/src/CMakeLists.txt
|
|
||||||
+++ b/src/CMakeLists.txt
|
|
||||||
@@ -139,8 +139,8 @@ 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 7048fb60c..95c5ed9e2 100644
|
|
||||||
--- a/src/libslic3r/CMakeLists.txt
|
|
||||||
+++ b/src/libslic3r/CMakeLists.txt
|
|
||||||
@@ -356,7 +356,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 fe3d15425..24be67592 100644
|
|
||||||
--- a/src/slic3r/CMakeLists.txt
|
|
||||||
+++ b/src/slic3r/CMakeLists.txt
|
|
||||||
@@ -291,7 +291,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)
|
|
|
@ -1,7 +1,7 @@
|
||||||
https://github.com/supermerill/SuperSlicer/issues/3912#issuecomment-1675135988
|
https://github.com/supermerill/SuperSlicer/issues/3912#issuecomment-1675135988
|
||||||
|
|
||||||
--- src/occt_wrapper/CMakeLists.txt.bak 2024-11-20 13:23:45.624527309 +0100
|
--- a/src/occt_wrapper/CMakeLists.txt 2024-11-20 13:23:45.624527309 +0100
|
||||||
+++ src/occt_wrapper/CMakeLists.txt 2024-11-20 13:23:56.347478724 +0100
|
+++ b/src/occt_wrapper/CMakeLists.txt 2024-11-20 13:23:56.347478724 +0100
|
||||||
@@ -19,7 +19,12 @@
|
@@ -19,7 +19,12 @@
|
||||||
|
|
||||||
generate_export_header(OCCTWrapper)
|
generate_export_header(OCCTWrapper)
|
||||||
|
|
|
@ -1,19 +0,0 @@
|
||||||
diff --git a/src/libslic3r/MeshBoolean.cpp b/src/libslic3r/MeshBoolean.cpp
|
|
||||||
index 31fdc35de5..6e5e48e0f7 100644
|
|
||||||
--- a/src/libslic3r/MeshBoolean.cpp
|
|
||||||
+++ b/src/libslic3r/MeshBoolean.cpp
|
|
||||||
@@ -147,12 +147,12 @@ template<class _Mesh> TriangleMesh cgal_to_triangle_mesh(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;
|
|
|
@ -1,34 +0,0 @@
|
||||||
diff --git a/src/slic3r/GUI/ScriptExecutor.cpp b/src/slic3r/GUI/ScriptExecutor.cpp
|
|
||||||
index 3e10680e46..3dcbf9643f 100644
|
|
||||||
--- a/src/slic3r/GUI/ScriptExecutor.cpp
|
|
||||||
+++ b/src/slic3r/GUI/ScriptExecutor.cpp
|
|
||||||
@@ -827,6 +827,20 @@ void as_back_custom_initial_value(int preset_type, std::string& key) {
|
|
||||||
|
|
||||||
/////// main script fucntions //////
|
|
||||||
|
|
||||||
+// stolen from https://www.boost.org/doc/libs/1_79_0/boost/filesystem/string_file.hpp
|
|
||||||
+static inline void load_string_file(boost::filesystem::path const& p, std::string& str)
|
|
||||||
+{
|
|
||||||
+ boost::filesystem::ifstream file;
|
|
||||||
+ file.exceptions(std::ios_base::failbit | std::ios_base::badbit);
|
|
||||||
+ file.open(p, std::ios_base::binary);
|
|
||||||
+ const boost::uintmax_t sz = boost::filesystem::file_size(p);
|
|
||||||
+ if (BOOST_UNLIKELY(sz > static_cast< boost::uintmax_t >((std::numeric_limits< std::streamsize >::max)())))
|
|
||||||
+ BOOST_FILESYSTEM_THROW(std::length_error("File size exceeds max read size"));
|
|
||||||
+ str.resize(static_cast< std::size_t >(sz), '\0');
|
|
||||||
+ if (sz > 0u)
|
|
||||||
+ file.read(&str[0], static_cast< std::streamsize >(sz));
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
//TODO: add "unset" function, that revert to last value (befoer a scripted set) if a set has been made since last not-scripted change.
|
|
||||||
void ScriptContainer::init(const std::string& tab_key, Tab* tab)
|
|
||||||
{
|
|
||||||
@@ -960,7 +974,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);
|
|
25
0010-occtwrapper-install-dir.patch
Normal file
25
0010-occtwrapper-install-dir.patch
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
diff --git a/src/libslic3r/Format/STEP.cpp b/src/libslic3r/Format/STEP.cpp
|
||||||
|
index 5165bb7015..9d76c23dca 100644
|
||||||
|
--- a/src/libslic3r/Format/STEP.cpp
|
||||||
|
+++ b/src/libslic3r/Format/STEP.cpp
|
||||||
|
@@ -57,6 +57,9 @@ LoadStepFn get_load_step_fn()
|
||||||
|
#elif __APPLE__
|
||||||
|
load_step_fn = &load_step_internal;
|
||||||
|
#else
|
||||||
|
+ libpath = libpath.parent_path();
|
||||||
|
+ libpath /= "lib";
|
||||||
|
+ libpath /= "superslicer";
|
||||||
|
libpath /= "OCCTWrapper.so";
|
||||||
|
void *plugin_ptr = dlopen(libpath.c_str(), RTLD_NOW | RTLD_GLOBAL);
|
||||||
|
|
||||||
|
diff --git a/src/occt_wrapper/CMakeLists.txt b/src/occt_wrapper/CMakeLists.txt
|
||||||
|
index ed75531a96..6dc45bae9f 100644
|
||||||
|
--- a/src/occt_wrapper/CMakeLists.txt
|
||||||
|
+++ b/src/occt_wrapper/CMakeLists.txt
|
||||||
|
@@ -56,5 +56,5 @@ target_link_libraries(OCCTWrapper ${OCCT_LIBS})
|
||||||
|
|
||||||
|
include(GNUInstallDirs)
|
||||||
|
|
||||||
|
-install(TARGETS OCCTWrapper DESTINATION "${CMAKE_INSTALL_BINDIR}")
|
||||||
|
+install(TARGETS OCCTWrapper DESTINATION "${CMAKE_INSTALL_LIBDIR}/superslicer")
|
||||||
|
|
13
0011-fix-constructible-svgfile.patch
Normal file
13
0011-fix-constructible-svgfile.patch
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
diff --git a/src/libslic3r/EmbossShape.hpp b/src/libslic3r/EmbossShape.hpp
|
||||||
|
index 3e4a950037..22e5d3aee1 100644
|
||||||
|
--- a/src/libslic3r/EmbossShape.hpp
|
||||||
|
+++ b/src/libslic3r/EmbossShape.hpp
|
||||||
|
@@ -101,6 +101,8 @@ struct EmbossShape
|
||||||
|
// Loaded string data from file
|
||||||
|
std::shared_ptr<std::string> file_data = nullptr;
|
||||||
|
|
||||||
|
+ SvgFile() {}
|
||||||
|
+
|
||||||
|
template<class Archive> void save(Archive &ar) const {
|
||||||
|
// Note: image is only cache it is not neccessary to store
|
||||||
|
|
197
0012-boost1.87.patch
Normal file
197
0012-boost1.87.patch
Normal file
|
@ -0,0 +1,197 @@
|
||||||
|
diff --git a/src/libslic3r/GCodeSender.cpp b/src/libslic3r/GCodeSender.cpp
|
||||||
|
index 396060cbaf..a3d28f6426 100644
|
||||||
|
--- a/src/libslic3r/GCodeSender.cpp
|
||||||
|
+++ b/src/libslic3r/GCodeSender.cpp
|
||||||
|
@@ -113,7 +113,7 @@ GCodeSender::connect(std::string devname, unsigned int baud_rate)
|
||||||
|
this->io.post(boost::bind(&GCodeSender::do_read, this));
|
||||||
|
|
||||||
|
// start reading in the background thread
|
||||||
|
- boost::thread t(boost::bind(&boost::asio::io_service::run, &this->io));
|
||||||
|
+ boost::thread t(boost::bind(&boost::asio::io_context::run, &this->io));
|
||||||
|
this->background_thread.swap(t);
|
||||||
|
|
||||||
|
// always send a M105 to check for connection because firmware might be silent on connect
|
||||||
|
diff --git a/src/libslic3r/GCodeSender.hpp b/src/libslic3r/GCodeSender.hpp
|
||||||
|
index 4f266619e4..f47caef0cb 100644
|
||||||
|
--- a/src/libslic3r/GCodeSender.hpp
|
||||||
|
+++ b/src/libslic3r/GCodeSender.hpp
|
||||||
|
@@ -40,7 +40,7 @@ class GCodeSender : private boost::noncopyable {
|
||||||
|
void reset();
|
||||||
|
|
||||||
|
private:
|
||||||
|
- asio::io_service io;
|
||||||
|
+ asio::io_context io;
|
||||||
|
asio::serial_port serial;
|
||||||
|
boost::thread background_thread;
|
||||||
|
boost::asio::streambuf read_buffer, write_buffer;
|
||||||
|
diff --git a/src/slic3r/GUI/FirmwareDialog.cpp b/src/slic3r/GUI/FirmwareDialog.cpp
|
||||||
|
index a75a6e269e..d6d3c9608f 100644
|
||||||
|
--- a/src/slic3r/GUI/FirmwareDialog.cpp
|
||||||
|
+++ b/src/slic3r/GUI/FirmwareDialog.cpp
|
||||||
|
@@ -365,7 +365,7 @@ bool FirmwareDialog::priv::check_model_id()
|
||||||
|
// return true;
|
||||||
|
// }
|
||||||
|
|
||||||
|
- // asio::io_service io;
|
||||||
|
+ // asio::io_context io;
|
||||||
|
// Serial serial(io, port->port, 115200);
|
||||||
|
// serial.printer_setup();
|
||||||
|
|
||||||
|
@@ -429,7 +429,7 @@ void FirmwareDialog::priv::avr109_wait_for_bootloader(Avr109Pid usb_pid, unsigne
|
||||||
|
|
||||||
|
void FirmwareDialog::priv::avr109_reboot(const SerialPortInfo &port)
|
||||||
|
{
|
||||||
|
- asio::io_service io;
|
||||||
|
+ asio::io_context io;
|
||||||
|
Serial serial(io, port.port, 1200);
|
||||||
|
std::this_thread::sleep_for(std::chrono::milliseconds(50));
|
||||||
|
}
|
||||||
|
diff --git a/src/slic3r/GUI/FreeCADDialog.cpp b/src/slic3r/GUI/FreeCADDialog.cpp
|
||||||
|
index 822bc4e2d9..dfbb037ed0 100644
|
||||||
|
--- a/src/slic3r/GUI/FreeCADDialog.cpp
|
||||||
|
+++ b/src/slic3r/GUI/FreeCADDialog.cpp
|
||||||
|
@@ -64,7 +64,7 @@ namespace GUI {
|
||||||
|
class ExecVar {
|
||||||
|
public:
|
||||||
|
boost::process::opstream pyin;
|
||||||
|
- boost::asio::io_service ios;
|
||||||
|
+ boost::asio::io_context ios;
|
||||||
|
std::future<std::string> data_out;
|
||||||
|
std::future<std::string> data_err;
|
||||||
|
std::unique_ptr<boost::process::child> process;
|
||||||
|
diff --git a/src/slic3r/Utils/Bonjour.cpp b/src/slic3r/Utils/Bonjour.cpp
|
||||||
|
index b13d570120..d48fd87da5 100644
|
||||||
|
--- a/src/slic3r/Utils/Bonjour.cpp
|
||||||
|
+++ b/src/slic3r/Utils/Bonjour.cpp
|
||||||
|
@@ -624,7 +624,7 @@ UdpSession::UdpSession(Bonjour::ReplyFn rfn) : replyfn(rfn)
|
||||||
|
buffer.resize(DnsMessage::MAX_SIZE);
|
||||||
|
}
|
||||||
|
|
||||||
|
-UdpSocket::UdpSocket( Bonjour::ReplyFn replyfn, const asio::ip::address& multicast_address, const asio::ip::address& interface_address, std::shared_ptr< boost::asio::io_service > io_service)
|
||||||
|
+UdpSocket::UdpSocket( Bonjour::ReplyFn replyfn, const asio::ip::address& multicast_address, const asio::ip::address& interface_address, std::shared_ptr< boost::asio::io_context > io_service)
|
||||||
|
: replyfn(replyfn)
|
||||||
|
, multicast_address(multicast_address)
|
||||||
|
, socket(*io_service)
|
||||||
|
@@ -658,7 +658,7 @@ UdpSocket::UdpSocket( Bonjour::ReplyFn replyfn, const asio::ip::address& multica
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
-UdpSocket::UdpSocket( Bonjour::ReplyFn replyfn, const asio::ip::address& multicast_address, std::shared_ptr< boost::asio::io_service > io_service)
|
||||||
|
+UdpSocket::UdpSocket( Bonjour::ReplyFn replyfn, const asio::ip::address& multicast_address, std::shared_ptr< boost::asio::io_context > io_service)
|
||||||
|
: replyfn(replyfn)
|
||||||
|
, multicast_address(multicast_address)
|
||||||
|
, socket(*io_service)
|
||||||
|
@@ -871,7 +871,7 @@ void Bonjour::priv::lookup_perform()
|
||||||
|
{
|
||||||
|
service_dn = (boost::format("_%1%._%2%.local") % service % protocol).str();
|
||||||
|
|
||||||
|
- std::shared_ptr< boost::asio::io_service > io_service(new boost::asio::io_service);
|
||||||
|
+ std::shared_ptr< boost::asio::io_context > io_service(new boost::asio::io_context);
|
||||||
|
|
||||||
|
std::vector<LookupSocket*> sockets;
|
||||||
|
|
||||||
|
@@ -966,7 +966,7 @@ void Bonjour::priv::resolve_perform()
|
||||||
|
rpls.push_back(reply);
|
||||||
|
};
|
||||||
|
|
||||||
|
- std::shared_ptr< boost::asio::io_service > io_service(new boost::asio::io_service);
|
||||||
|
+ std::shared_ptr< boost::asio::io_context > io_service(new boost::asio::io_context);
|
||||||
|
std::vector<ResolveSocket*> sockets;
|
||||||
|
|
||||||
|
// resolve interfaces - from PR#6646
|
||||||
|
diff --git a/src/slic3r/Utils/Bonjour.hpp b/src/slic3r/Utils/Bonjour.hpp
|
||||||
|
index 398adde045..436146096b 100644
|
||||||
|
--- a/src/slic3r/Utils/Bonjour.hpp
|
||||||
|
+++ b/src/slic3r/Utils/Bonjour.hpp
|
||||||
|
@@ -155,11 +155,11 @@ public:
|
||||||
|
UdpSocket(Bonjour::ReplyFn replyfn
|
||||||
|
, const boost::asio::ip::address& multicast_address
|
||||||
|
, const boost::asio::ip::address& interface_address
|
||||||
|
- , std::shared_ptr< boost::asio::io_service > io_service);
|
||||||
|
+ , std::shared_ptr< boost::asio::io_context > io_service);
|
||||||
|
|
||||||
|
UdpSocket(Bonjour::ReplyFn replyfn
|
||||||
|
, const boost::asio::ip::address& multicast_address
|
||||||
|
- , std::shared_ptr< boost::asio::io_service > io_service);
|
||||||
|
+ , std::shared_ptr< boost::asio::io_context > io_service);
|
||||||
|
|
||||||
|
void send();
|
||||||
|
void async_receive();
|
||||||
|
@@ -172,7 +172,7 @@ protected:
|
||||||
|
boost::asio::ip::address multicast_address;
|
||||||
|
boost::asio::ip::udp::socket socket;
|
||||||
|
boost::asio::ip::udp::endpoint mcast_endpoint;
|
||||||
|
- std::shared_ptr< boost::asio::io_service > io_service;
|
||||||
|
+ std::shared_ptr< boost::asio::io_context > io_service;
|
||||||
|
std::vector<BonjourRequest> requests;
|
||||||
|
};
|
||||||
|
|
||||||
|
@@ -186,7 +186,7 @@ public:
|
||||||
|
, Bonjour::ReplyFn replyfn
|
||||||
|
, const boost::asio::ip::address& multicast_address
|
||||||
|
, const boost::asio::ip::address& interface_address
|
||||||
|
- , std::shared_ptr< boost::asio::io_service > io_service)
|
||||||
|
+ , std::shared_ptr< boost::asio::io_context > io_service)
|
||||||
|
: UdpSocket(replyfn, multicast_address, interface_address, io_service)
|
||||||
|
, txt_keys(txt_keys)
|
||||||
|
, service(service)
|
||||||
|
@@ -203,7 +203,7 @@ public:
|
||||||
|
, std::string protocol
|
||||||
|
, Bonjour::ReplyFn replyfn
|
||||||
|
, const boost::asio::ip::address& multicast_address
|
||||||
|
- , std::shared_ptr< boost::asio::io_service > io_service)
|
||||||
|
+ , std::shared_ptr< boost::asio::io_context > io_service)
|
||||||
|
: UdpSocket(replyfn, multicast_address, io_service)
|
||||||
|
, txt_keys(txt_keys)
|
||||||
|
, service(service)
|
||||||
|
@@ -242,7 +242,7 @@ public:
|
||||||
|
, Bonjour::ReplyFn replyfn
|
||||||
|
, const boost::asio::ip::address& multicast_address
|
||||||
|
, const boost::asio::ip::address& interface_address
|
||||||
|
- , std::shared_ptr< boost::asio::io_service > io_service)
|
||||||
|
+ , std::shared_ptr< boost::asio::io_context > io_service)
|
||||||
|
: UdpSocket(replyfn, multicast_address, interface_address, io_service)
|
||||||
|
, hostname(hostname)
|
||||||
|
|
||||||
|
@@ -254,7 +254,7 @@ public:
|
||||||
|
ResolveSocket(const std::string& hostname
|
||||||
|
, Bonjour::ReplyFn replyfn
|
||||||
|
, const boost::asio::ip::address& multicast_address
|
||||||
|
- , std::shared_ptr< boost::asio::io_service > io_service)
|
||||||
|
+ , std::shared_ptr< boost::asio::io_context > io_service)
|
||||||
|
: UdpSocket(replyfn, multicast_address, io_service)
|
||||||
|
, hostname(hostname)
|
||||||
|
|
||||||
|
diff --git a/src/slic3r/Utils/Serial.cpp b/src/slic3r/Utils/Serial.cpp
|
||||||
|
index b44a909f8d..b21f91f4c0 100644
|
||||||
|
--- a/src/slic3r/Utils/Serial.cpp
|
||||||
|
+++ b/src/slic3r/Utils/Serial.cpp
|
||||||
|
@@ -283,11 +283,11 @@ std::vector<std::string> scan_serial_ports()
|
||||||
|
namespace asio = boost::asio;
|
||||||
|
using boost::system::error_code;
|
||||||
|
|
||||||
|
-Serial::Serial(asio::io_service& io_service) :
|
||||||
|
+Serial::Serial(asio::io_context& io_service) :
|
||||||
|
asio::serial_port(io_service)
|
||||||
|
{}
|
||||||
|
|
||||||
|
-Serial::Serial(asio::io_service& io_service, const std::string &name, unsigned baud_rate) :
|
||||||
|
+Serial::Serial(asio::io_context& io_service, const std::string &name, unsigned baud_rate) :
|
||||||
|
asio::serial_port(io_service, name)
|
||||||
|
{
|
||||||
|
set_baud_rate(baud_rate);
|
||||||
|
diff --git a/src/slic3r/Utils/Serial.hpp b/src/slic3r/Utils/Serial.hpp
|
||||||
|
index c47759795b..4452b2a914 100644
|
||||||
|
--- a/src/slic3r/Utils/Serial.hpp
|
||||||
|
+++ b/src/slic3r/Utils/Serial.hpp
|
||||||
|
@@ -43,8 +43,8 @@ extern std::vector<SerialPortInfo> scan_serial_ports_extended();
|
||||||
|
class Serial : public boost::asio::serial_port
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
- Serial(boost::asio::io_service &io_service);
|
||||||
|
- Serial(boost::asio::io_service &io_service, const std::string &name, unsigned baud_rate);
|
||||||
|
+ Serial(boost::asio::io_context &io_service);
|
||||||
|
+ Serial(boost::asio::io_context &io_service, const std::string &name, unsigned baud_rate);
|
||||||
|
Serial(const Serial &) = delete;
|
||||||
|
Serial &operator=(const Serial &) = delete;
|
||||||
|
~Serial();
|
126
PKGBUILD
126
PKGBUILD
|
@ -3,8 +3,10 @@
|
||||||
# Maintainer: Lukas1818 aur at lukas1818 dot de
|
# Maintainer: Lukas1818 aur at lukas1818 dot de
|
||||||
|
|
||||||
pkgname=superslicer-prerelease
|
pkgname=superslicer-prerelease
|
||||||
pkgver=2.5.60.0
|
pkgver=2.7.61.0
|
||||||
_pkgtag=$pkgver
|
_pkgtag=$pkgver
|
||||||
|
# https://github.com/supermerill/SuperSlicer/blob/2.7.61.0/deps/%2BLibBGCode/LibBGCode.cmake
|
||||||
|
_libbgcode=6f43cb004ef3d3bda37dde49f6235e24d2717629
|
||||||
pkgrel=1
|
pkgrel=1
|
||||||
epoch=1
|
epoch=1
|
||||||
pkgdesc="G-code generator for 3D printers (RepRap, Makerbot, Ultimaker etc.)"
|
pkgdesc="G-code generator for 3D printers (RepRap, Makerbot, Ultimaker etc.)"
|
||||||
|
@ -12,62 +14,114 @@ arch=("$CARCH")
|
||||||
url="https://github.com/supermerill/SuperSlicer"
|
url="https://github.com/supermerill/SuperSlicer"
|
||||||
license=('AGPL3')
|
license=('AGPL3')
|
||||||
options=(!emptydirs)
|
options=(!emptydirs)
|
||||||
depends=('boost-libs>=1.73.0' 'cgal' 'glew' 'imath' 'libspnav' 'nlopt' 'openvdb' 'qhull>=2020.2-4' 'slicer-udev' 'wxwidgets-gtk3')
|
depends=(
|
||||||
makedepends=('boost>=1.73.0' 'cereal>=1.3.0' 'cmake' 'eigen' 'libigl' 'openvdb' 'samurai')
|
'boost-libs>=1.85.0'
|
||||||
|
'cgal'
|
||||||
|
'glew'
|
||||||
|
'imath'
|
||||||
|
'heatshrink'
|
||||||
|
'libspnav'
|
||||||
|
'nlopt'
|
||||||
|
'openvdb'
|
||||||
|
'qhull>=2020.2-4'
|
||||||
|
'slicer-udev'
|
||||||
|
'wxwidgets-gtk3'
|
||||||
|
)
|
||||||
|
makedepends=(
|
||||||
|
'boost>=1.85.0'
|
||||||
|
'cereal>=1.3.0'
|
||||||
|
'cmake'
|
||||||
|
'eigen'
|
||||||
|
'libigl'
|
||||||
|
'ninja'
|
||||||
|
'openvdb'
|
||||||
|
)
|
||||||
optdepends=('superslicer-profiles: Predefined printer profiles')
|
optdepends=('superslicer-profiles: Predefined printer profiles')
|
||||||
provides=("superslicer=$epoch:$pkgver")
|
provides=("superslicer=$epoch:$pkgver")
|
||||||
conflicts=('superslicer' 'superslicer-git')
|
conflicts=('superslicer' 'superslicer-git')
|
||||||
source=("https://github.com/supermerill/SuperSlicer/archive/$_pkgtag.tar.gz"
|
source=("https://github.com/supermerill/SuperSlicer/archive/$_pkgtag.tar.gz"
|
||||||
"0001-boost1.79.patch"
|
"https://github.com/prusa3d/libbgcode/archive/$_libbgcode.tar.gz"
|
||||||
"0002-fix-cereal.patch"
|
"0001-findwxwidgets.patch"
|
||||||
|
"0002-addlib-expat.patch"
|
||||||
"0003-openexr3.patch"
|
"0003-openexr3.patch"
|
||||||
"0004-fix-opencascade-version-check.patch"
|
"0004-fix-opencascade-version-check.patch"
|
||||||
"0005-fix-opencascade-libs.patch"
|
"0005-fix-opencascade-libs.patch"
|
||||||
"0006-fix-non-const-lvalue.patch"
|
|
||||||
"0007-boost1.84.patch"
|
|
||||||
"0008-boost1.85.patch"
|
"0008-boost1.85.patch"
|
||||||
"0009-fix-multiple-choice.patch")
|
"0009-fix-multiple-choice.patch"
|
||||||
sha512sums=('a53f4cc9b5a20f3f60d38553d47bfd19ce8bd739a8a16493bbcf64f75825fa760b8c107d7f927d49d967f7d067fac8c428c8f6e67219e74b0970d9ab7aa5b9e6'
|
"0010-occtwrapper-install-dir.patch"
|
||||||
'fc18e8edf516f9479c3b0e201d1c74b42289f15ef8a64ff3a88c2bb14613978a9dcf7be50ff8b79faf054c7721a095a70715b0fb0747be48757f9502ba0eb859'
|
"0011-fix-constructible-svgfile.patch"
|
||||||
'58467732161eb0abe58cfb1e64e080f64f9f2221032b0d6176739fc81a61fe7838fa6479e9aac7fa0ee9805898f9293081c5e35a146df103830199b46354b97e'
|
"0012-boost1.87.patch")
|
||||||
|
sha512sums=('0d72bf61adcafe8eef2ed860449dc25ca295ba0732d956bff8c0ae50b381387b803fd88241ab855a9b38daf8f5eaa4c41d17241b8c15c66d63576874179aa1c0'
|
||||||
|
'04cb7cb69d887e1fa5ced5c0219b0ee6cab81f09d1bc1226ebd26563e2ce60b85fb6e5aef11a36dffd3e00779849906fc5c19ad2cdd22d45360226912b6af31b'
|
||||||
|
'd910cf1fc07219b6c776240eae0f203813368e69b6a0215bcdcabba385531744093b6214b21d0dffbafa8992d3549c96bbdb02e939c52a4e81dbce98389397f9'
|
||||||
|
'93a943eb9be52085a811d7cc8379dc5a3942befdc3d19eecf6310f8dfcfdef72bfa15dfcb85ac1f4f9d7731c973b9815a532ae444e3fe275f8f624825fe8e98b'
|
||||||
'840e51b8feb3568ff46d309ece063f7188018fcaa43d19ec50ede408fdf2c237a3b7eaa11ba24409d8c3f7d6f5fb270181508cc56e0b2b0fef68b766130ef1eb'
|
'840e51b8feb3568ff46d309ece063f7188018fcaa43d19ec50ede408fdf2c237a3b7eaa11ba24409d8c3f7d6f5fb270181508cc56e0b2b0fef68b766130ef1eb'
|
||||||
'4efb6dd48c8184f47b838228cf624a74429f35d133fb85316ddcde9d78bd462d64009ec9fe0b3f34232ddf4971f81ea03385ed661c771de9f0fd5bffcbe2a74c'
|
'8512ace14c71b04eb98532e71592447475cf7feccf1c85f376487615c8a95f6afa645e4581f577ee26d91532c57f389eac7534a875d5a24e871f3ef593af33c9'
|
||||||
'a01abf748f82bc423f2c012ac430f78cfd5e56dede1d5999376e780267d0302d9a2a80c3eb15226c2f82102dda4c567c721ff99ab1fdeef504cbf9d9cb63ca53'
|
'a01abf748f82bc423f2c012ac430f78cfd5e56dede1d5999376e780267d0302d9a2a80c3eb15226c2f82102dda4c567c721ff99ab1fdeef504cbf9d9cb63ca53'
|
||||||
'aca3a028eaab63baf83dd80d82615394435c97b9b45c99764ca84995d246096e3e5c2b564ed29e194652c8e221a80cf6abdc165cb3009fd20af586b0432b2bc9'
|
|
||||||
'a92af974cb62901aab5a5c8c34672e9a7c90ea7246bbd7423421a9b7ee12a7b17073d90a6f36f994328c7dc9c2d0a6e4fd18c980a71863bc530d873ebaa80433'
|
|
||||||
'ca9f407d87d8dd0181077bc2da5a8e2f8995eed88a4787b73ee6c62ef6d2380fd1394fe5412cdc34276d4182bce6f272173e9ccb653d1e28978e16f379114002'
|
'ca9f407d87d8dd0181077bc2da5a8e2f8995eed88a4787b73ee6c62ef6d2380fd1394fe5412cdc34276d4182bce6f272173e9ccb653d1e28978e16f379114002'
|
||||||
'6d7ab93042a75f04e1c3c8f294d19dd39abaf22aa75caf996c6a0cf753f6472134a3d4fa443b73924800b2d3a710416a931745c168911c0df3709fb71ec00570')
|
'6d7ab93042a75f04e1c3c8f294d19dd39abaf22aa75caf996c6a0cf753f6472134a3d4fa443b73924800b2d3a710416a931745c168911c0df3709fb71ec00570'
|
||||||
|
'92929ba1cb6ee104a10f34a649eba3789ca02f1725104a57412279ff68c46614b1812b13e7dcdf0d235618b9f2a868b4798b1404d9e712d9f1efd46e6c71fcb5'
|
||||||
|
'03dbbb8e1bc1422104c644c9eb37dc72c6ce50733eac70fe44a76b0345d1882ebd71f11af3358f8392402dda627d520cfe7c2ddf1257d1b891c6b60faf7c8182'
|
||||||
|
'29c8d60ef3b04d8bc950e5bef615543d3fb66b182338106dedbe2656ecdb6d95413044b73748a488548a4fd8202a0799be6b648ff9354de7c2d8bd11029d0a9d')
|
||||||
|
|
||||||
|
_apply_patches() {
|
||||||
|
for patch in "${@}"
|
||||||
|
do
|
||||||
|
msg2 "Applying patch $patch"
|
||||||
|
patch -Np1 -i "$patch"
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
prepare() {
|
||||||
|
cd "$srcdir/libbgcode-$_libbgcode"
|
||||||
|
rm -rf build
|
||||||
|
mkdir -p build
|
||||||
|
|
||||||
prepare()
|
|
||||||
{
|
|
||||||
cd "$srcdir/SuperSlicer-$_pkgtag"
|
cd "$srcdir/SuperSlicer-$_pkgtag"
|
||||||
[ ! -f build/Makefile ] || rm -rf build
|
rm -rf build # build fails everytime if it isn't a clean build?!?
|
||||||
rm -rf build # build does fail everytime if it is not clean build ?
|
|
||||||
mkdir -p build
|
mkdir -p build
|
||||||
|
|
||||||
# disabling tests is not enough, we need to remove them explicitly
|
# disabling tests is not enough, we need to remove them explicitly
|
||||||
sed -i 's,add_subdirectory(test),,g' src/CMakeLists.txt
|
sed -i 's,add_subdirectory(test),,g' src/CMakeLists.txt
|
||||||
|
|
||||||
# apply patches
|
# apply patches for superslicer
|
||||||
patch -Np1 -i "$srcdir/0001-boost1.79.patch"
|
_apply_patches \
|
||||||
patch -Np1 -i "$srcdir/0002-fix-cereal.patch"
|
"$srcdir/0001-findwxwidgets.patch" \
|
||||||
patch -Np1 -i "$srcdir/0003-openexr3.patch"
|
"$srcdir/0002-addlib-expat.patch" \
|
||||||
patch -Np0 -i "$srcdir/0004-fix-opencascade-version-check.patch"
|
"$srcdir/0003-openexr3.patch" \
|
||||||
patch -Np1 -i "$srcdir/0005-fix-opencascade-libs.patch"
|
"$srcdir/0004-fix-opencascade-version-check.patch" \
|
||||||
patch -Np1 -i "$srcdir/0006-fix-non-const-lvalue.patch"
|
"$srcdir/0005-fix-opencascade-libs.patch" \
|
||||||
patch -Np1 -i "$srcdir/0007-boost1.84.patch"
|
"$srcdir/0008-boost1.85.patch" \
|
||||||
patch -Np1 -i "$srcdir/0008-boost1.85.patch"
|
"$srcdir/0009-fix-multiple-choice.patch" \
|
||||||
patch -Np1 -i "$srcdir/0009-fix-multiple-choice.patch"
|
"$srcdir/0010-occtwrapper-install-dir.patch" \
|
||||||
|
"$srcdir/0011-fix-constructible-svgfile.patch" \
|
||||||
|
"$srcdir/0012-boost1.87.patch"
|
||||||
}
|
}
|
||||||
|
|
||||||
build()
|
build() {
|
||||||
{
|
msg2 "Building libbgcode"
|
||||||
cd "$srcdir/SuperSlicer-$_pkgtag"
|
cd "$srcdir/libbgcode-$_libbgcode"
|
||||||
cd build
|
cd build
|
||||||
|
|
||||||
cmake .. \
|
cmake .. \
|
||||||
-G Ninja \
|
-G Ninja \
|
||||||
-DCMAKE_BUILD_TYPE=Release \
|
-DCMAKE_BUILD_TYPE=None \
|
||||||
|
-DCMAKE_INSTALL_PREFIX= \
|
||||||
|
-DLibBGCode_BUILD_CMD_TOOL=OFF \
|
||||||
|
-DLibBGCode_BUILD_TESTS=OFF \
|
||||||
|
-Wno-dev
|
||||||
|
ninja
|
||||||
|
mkdir destdir
|
||||||
|
DESTDIR=destdir ninja install
|
||||||
|
export "CMAKE_PREFIX_PATH=$PWD/destdir:$CMAKE_PREFIX_PATH"
|
||||||
|
|
||||||
|
msg2 "Building SuperSlicer"
|
||||||
|
cd "$srcdir/SuperSlicer-$_pkgtag"
|
||||||
|
cd build
|
||||||
|
|
||||||
|
cmake .. -DCMAKE_MESSAGE_LOG_LEVEL=DEBUG \
|
||||||
|
-G Ninja \
|
||||||
|
-DCMAKE_BUILD_TYPE=None \
|
||||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||||
-DOpenGL_GL_PREFERENCE=GLVND \
|
-DOpenGL_GL_PREFERENCE=GLVND \
|
||||||
-DSLIC3R_FHS=ON \
|
-DSLIC3R_FHS=ON \
|
||||||
|
@ -77,12 +131,10 @@ build()
|
||||||
-DSLIC3R_BUILD_TESTS=OFF \
|
-DSLIC3R_BUILD_TESTS=OFF \
|
||||||
-DSLIC3R_ALPHA=ON \
|
-DSLIC3R_ALPHA=ON \
|
||||||
-Wno-dev
|
-Wno-dev
|
||||||
|
ninja
|
||||||
samu
|
|
||||||
}
|
}
|
||||||
|
|
||||||
package()
|
package() {
|
||||||
{
|
|
||||||
cd "$srcdir/SuperSlicer-$_pkgtag/build"
|
cd "$srcdir/SuperSlicer-$_pkgtag/build"
|
||||||
|
|
||||||
DESTDIR="$pkgdir" samu install
|
DESTDIR="$pkgdir" samu install
|
||||||
|
|
Loading…
Add table
Reference in a new issue