Download raw body.
UPDATE: cad/prusaslicer-2.9.1
Diff updating prusaslicer to version 2.9.1.
Thanks to upstream now using Catch2 v3, a lot of patches aren't needed
anymore :)
Removed patches:
- cad/prusaslicer/patches/patch-bundled_deps_hints_HintsToPot_cpp
- cad/prusaslicer/patches/patch-src_PrusaSlicer_cpp
- cad/prusaslicer/patches/patch-src_libslic3r_MeshBoolean_cpp
- cad/prusaslicer/patches/patch-src_slic3r-arrange_include_arrange_DataStoreTraits_hpp
- cad/prusaslicer/patches/patch-src_slic3r_GUI_PhysicalPrinterDialog_cpp
- cad/prusaslicer/patches/patch-src_slic3r_GUI_Plater_cpp
- cad/prusaslicer/patches/patch-tests_CMakeLists_txt
- cad/prusaslicer/patches/patch-tests_catch2_catch_hpp
- cad/prusaslicer/patches/patch-tests_catch_main_hpp
- cad/prusaslicer/patches/patch-tests_fff_print_test_gcode_cpp
- cad/prusaslicer/patches/patch-tests_fff_print_test_layers_cpp
- cad/prusaslicer/patches/patch-tests_fff_print_test_retraction_cpp
- cad/prusaslicer/patches/patch-tests_libslic3r_test_cut_surface_cpp
- cad/prusaslicer/patches/patch-tests_libslic3r_test_emboss_cpp
- cad/prusaslicer/patches/patch-tests_libslic3r_test_line_cpp
- cad/prusaslicer/patches/patch-tests_libslic3r_test_quadric_edge_collapse_cpp
Added patches:
- cad/prusaslicer/patches/patch-src_CLI_Setup_cpp
diff refs/remotes/upstream/master refs/heads/master
commit - 3126761c55adba51294464e1c05e57d995196a23
commit + 150cd791ea6762a83564ab415bedb0444ac5f620
blob - be5a0ad40accf94d5b6d45ed597d41902a2852fe
blob + 60a67abdc0429dd067309c9d38e40ea0d0e5cb19
--- cad/prusaslicer/Makefile
+++ cad/prusaslicer/Makefile
@@ -2,7 +2,7 @@ COMMENT = g-code generator for 3D printers
ONLY_FOR_ARCHS = ${LP64_ARCHS}
DPB_PROPERTIES = parallel
-V = 2.9.0
+V = 2.9.1
PKGNAME = prusaslicer-${V}
GH_ACCOUNT = prusa3d
@@ -33,7 +33,7 @@ WANTLIB += intl javascriptcoregtk-4.1 jpeg m mpfr nlop
WANTLIB += pango-1.0 pangocairo-1.0 png qhull_r soup-3.0 ssl tbb
WANTLIB += tbbmalloc wayland-client wayland-egl webkit2gtk-4.1
WANTLIB += wx_baseu-3.2 wx_gtk3u_core-3.2 wx_gtk3u_gl-3.2 wx_gtk3u_html-3.2
-WANTLIB += wx_gtk3u_webview-3.2 z
+WANTLIB += wx_gtk3u_webview-3.2 z z3
FIX_CRLF_FILES = src/slic3r/GUI/GLCanvas3D.cpp
@@ -62,6 +62,7 @@ LIB_DEPENDS = cad/opencascade \
graphics/png \
math/nlopt \
math/qhull \
+ math/z3 \
net/curl \
wayland/wayland \
x11/dbus \
blob - bd2c177ed4db0abb81e2d2207822d7b02760af2e
blob + 18e0a3b2a6eaa1ab8b8f26b20cdae4c1fd346e5d
--- cad/prusaslicer/distinfo
+++ cad/prusaslicer/distinfo
@@ -1,2 +1,2 @@
-SHA256 (PrusaSlicer-version_2.9.0.tar.gz) = UVpB3qO80vyttxOyLk7M/Ub7t6fKja2EQOe14p+7wgY=
-SIZE (PrusaSlicer-version_2.9.0.tar.gz) = 70604482
+SHA256 (PrusaSlicer-version_2.9.1.tar.gz) = MWYg8ie8VysrGN0TTz6t4ROkMX2LSq6iwYHPwmjDdRo=
+SIZE (PrusaSlicer-version_2.9.1.tar.gz) = 76767199
blob - ca0bfb912c061810f60df7bcdc48dfe90e9b0114
blob + 0c331a6becc4bf7e5cf567625da9912ef6167f7a
--- cad/prusaslicer/patches/patch-CMakeLists_txt
+++ cad/prusaslicer/patches/patch-CMakeLists_txt
@@ -10,11 +10,11 @@ Index: CMakeLists.txt
find_package(PkgConfig REQUIRED)
if (CMAKE_VERSION VERSION_LESS "3.1")
-@@ -645,7 +645,6 @@ elseif (SLIC3R_FHS)
+@@ -644,7 +644,6 @@ elseif (SLIC3R_FHS)
DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/${SIZE}x${SIZE}/apps RENAME PrusaSlicer-gcodeviewer.png
)
endforeach()
- install(DIRECTORY ${SLIC3R_RESOURCES_DIR}/udev/ DESTINATION lib/udev/rules.d)
+ target_compile_definitions(PrusaSlicer PUBLIC SLIC3R_FHS SLIC3R_FHS_RESOURCES="${SLIC3R_FHS_RESOURCES}")
else ()
install(FILES src/platform/unix/PrusaSlicer.desktop DESTINATION ${CMAKE_INSTALL_PREFIX}/resources/applications)
- install(FILES src/platform/unix/PrusaGcodeviewer.desktop DESTINATION ${CMAKE_INSTALL_PREFIX}/resources/applications)
blob - eb489e6f7f43021d563608a88da52b344d761321
blob + d664de49d12e7039102fefad099fed689e9a6ea7
--- cad/prusaslicer/patches/patch-bundled_deps_CMakeLists_txt
+++ cad/prusaslicer/patches/patch-bundled_deps_CMakeLists_txt
@@ -1,7 +1,7 @@
Index: bundled_deps/CMakeLists.txt
--- bundled_deps/CMakeLists.txt.orig
+++ bundled_deps/CMakeLists.txt
-@@ -45,5 +45,4 @@ target_include_directories(tcbspan INTERFACE tcbspan)
+@@ -48,5 +48,4 @@ target_include_directories(tcbspan INTERFACE tcbspan)
if (SLIC3R_GUI)
add_subdirectory(imgui)
blob - 2f5a5fe2fec08f25b23dca1723d5c07863e6b87e (mode 644)
blob + /dev/null
--- cad/prusaslicer/patches/patch-bundled_deps_hints_HintsToPot_cpp
+++ /dev/null
@@ -1,11 +0,0 @@
-Index: bundled_deps/hints/HintsToPot.cpp
---- bundled_deps/hints/HintsToPot.cpp.orig
-+++ bundled_deps/hints/HintsToPot.cpp
-@@ -2,6 +2,7 @@
- #include <vector>
- #include <string>
- #include <boost/filesystem.hpp>
-+#include <boost/filesystem/fstream.hpp>
- #include <boost/dll.hpp>
- #include <boost/property_tree/ini_parser.hpp>
- #include <boost/nowide/fstream.hpp>
blob - /dev/null
blob + b0f794321fc292546cdcb7c612e73c4b42309e7d (mode 644)
--- /dev/null
+++ cad/prusaslicer/patches/patch-src_CLI_Setup_cpp
@@ -0,0 +1,32 @@
+Index: src/CLI/Setup.cpp
+--- src/CLI/Setup.cpp.orig
++++ src/CLI/Setup.cpp
+@@ -204,7 +204,7 @@ static bool read(Data& data, int argc, const char* con
+ return true;
+ }
+
+-static bool setup_common()
++static bool setup_common(char *program_name)
+ {
+ // Mark the main thread for the debugger and for runtime checks.
+ set_current_thread_name("slic3r_main");
+@@ -273,8 +273,8 @@ static bool setup_common()
+ #endif
+
+ // See Invoking prusa-slicer from $PATH environment variable crashes #5542
+- // boost::filesystem::path path_to_binary = boost::filesystem::system_complete(argv[0]);
+- boost::filesystem::path path_to_binary = boost::dll::program_location();
++ boost::filesystem::path path_to_binary = boost::filesystem::system_complete(program_name);
++ // boost::filesystem::path path_to_binary = boost::dll::program_location();
+
+ // Path from the Slic3r binary to its resources.
+ #ifdef __APPLE__
+@@ -308,7 +308,7 @@ static bool setup_common()
+
+ bool setup(Data& cli, int argc, char** argv)
+ {
+- if (!setup_common())
++ if (!setup_common(argv[0]))
+ return false;
+
+ if (!read(cli, argc, argv)) {
blob - d611faa18589028e57e2b899ff58c7979653233e
blob + 831793be3df335cad9dd32466f4b02be69c487e3
--- cad/prusaslicer/patches/patch-src_CMakeLists_txt
+++ cad/prusaslicer/patches/patch-src_CMakeLists_txt
@@ -1,12 +1,12 @@
Index: src/CMakeLists.txt
--- src/CMakeLists.txt.orig
+++ src/CMakeLists.txt
-@@ -138,6 +138,8 @@ target_link_libraries(PrusaSlicer libslic3r_gui)
- target_link_libraries(PrusaSlicer ws2_32 uxtheme setupapi)
+@@ -167,6 +167,8 @@ if (SLIC3R_GUI)
+ target_link_libraries(PrusaSlicer PRIVATE ws2_32 uxtheme setupapi)
elseif (APPLE)
- target_link_libraries(PrusaSlicer "-framework OpenGL")
+ target_link_libraries(PrusaSlicer PRIVATE "-framework OpenGL")
+ elseif (CMAKE_SYSTEM_NAME STREQUAL "OpenBSD")
+ # no-op
else ()
- target_link_libraries(PrusaSlicer -ldl)
+ target_link_libraries(PrusaSlicer PRIVATE -ldl)
endif ()
blob - d25381b9a008ac5dbf50dcedd42501142b268249 (mode 644)
blob + /dev/null
--- cad/prusaslicer/patches/patch-src_PrusaSlicer_cpp
+++ /dev/null
@@ -1,14 +0,0 @@
-Index: src/PrusaSlicer.cpp
---- src/PrusaSlicer.cpp.orig
-+++ src/PrusaSlicer.cpp
-@@ -879,8 +879,8 @@ bool CLI::setup(int argc, char **argv)
- #endif
-
- // See Invoking prusa-slicer from $PATH environment variable crashes #5542
-- // boost::filesystem::path path_to_binary = boost::filesystem::system_complete(argv[0]);
-- boost::filesystem::path path_to_binary = boost::dll::program_location();
-+ boost::filesystem::path path_to_binary = boost::filesystem::system_complete(argv[0]);
-+ // boost::filesystem::path path_to_binary = boost::dll::program_location();
-
- // Path from the Slic3r binary to its resources.
- #ifdef __APPLE__
blob - 918d8f2d6e717f5874eb77b58b4415513fc74eb0 (mode 644)
blob + /dev/null
--- cad/prusaslicer/patches/patch-src_libslic3r_MeshBoolean_cpp
+++ /dev/null
@@ -1,12 +0,0 @@
-Index: src/libslic3r/MeshBoolean.cpp
---- src/libslic3r/MeshBoolean.cpp.orig
-+++ src/libslic3r/MeshBoolean.cpp
-@@ -10,6 +10,8 @@
-
- #undef PI
-
-+#include <boost/next_prior.hpp>
-+
- // Include igl first. It defines "L" macro which then clashes with our localization
- #include <igl/copyleft/cgal/mesh_boolean.h> // IWYU pragma: keep
- #include <igl/MeshBooleanType.h>
blob - bd38079558995f853cc0b2e719a4f46a40077b7f (mode 644)
blob + /dev/null
--- cad/prusaslicer/patches/patch-src_slic3r-arrange_include_arrange_DataStoreTraits_hpp
+++ /dev/null
@@ -1,15 +0,0 @@
-Fix build with llvm-19
-https://github.com/freebsd/freebsd-ports/commit/778f3f32a33da38f6b526acdddfd6d805a9d0535
-
-Index: src/slic3r-arrange/include/arrange/DataStoreTraits.hpp
---- src/slic3r-arrange/include/arrange/DataStoreTraits.hpp.orig
-+++ src/slic3r-arrange/include/arrange/DataStoreTraits.hpp
-@@ -71,7 +71,7 @@ template<class T, class TT = T> using WritableDataStor
- template<class T, class ArrItem>
- void set_data(ArrItem &itm, const std::string &key, T &&data)
- {
-- WritableDataStoreTraits<ArrItem>::template set(itm, key, std::forward<T>(data));
-+ WritableDataStoreTraits<ArrItem>::template set<T>(itm, key, std::forward<T>(data));
- }
-
- template<class T> constexpr bool IsReadWritableDataStore = IsDataStore<T> && IsWritableDataStore<T>;
blob - 41b535fe82f8e989c55e5e47b2891a29c6c385c1
blob + 8bd804981749642041091322fcaf96509e411a1a
--- cad/prusaslicer/patches/patch-src_slic3r_CMakeLists_txt
+++ cad/prusaslicer/patches/patch-src_slic3r_CMakeLists_txt
@@ -1,7 +1,7 @@
Index: src/slic3r/CMakeLists.txt
--- src/slic3r/CMakeLists.txt.orig
+++ src/slic3r/CMakeLists.txt
-@@ -393,7 +393,7 @@ set(SLIC3R_GUI_SOURCES
+@@ -395,7 +395,7 @@ set(SLIC3R_GUI_SOURCES
)
find_package(NanoSVG REQUIRED)
@@ -10,7 +10,7 @@ Index: src/slic3r/CMakeLists.txt
find_package(OpenSSL REQUIRED)
endif()
-@@ -434,6 +434,9 @@ endforeach()
+@@ -436,6 +436,9 @@ endforeach()
encoding_check(libslic3r_gui)
@@ -20,7 +20,7 @@ Index: src/slic3r/CMakeLists.txt
target_link_libraries(
libslic3r_gui
PUBLIC
-@@ -457,7 +460,7 @@ target_link_libraries(
+@@ -459,7 +462,7 @@ target_link_libraries(
if (MSVC)
target_link_libraries(libslic3r_gui PUBLIC Setupapi.lib)
@@ -29,7 +29,7 @@ Index: src/slic3r/CMakeLists.txt
target_link_libraries(libslic3r_gui PUBLIC
${DBus1_LIBRARIES}
OpenSSL::SSL
-@@ -484,7 +487,7 @@ if (UNIX AND NOT APPLE)
+@@ -486,7 +489,7 @@ if (UNIX AND NOT APPLE)
find_package(GTK${SLIC3R_GTK} REQUIRED)
find_package(PkgConfig REQUIRED)
blob - a4e0c8bb12d4a8f4f67292b3c935cc8207822911
blob + f12913a4fc7c42ac660dfa24cfec8fbf8c172de7
--- cad/prusaslicer/patches/patch-src_slic3r_GUI_GLCanvas3D_cpp
+++ cad/prusaslicer/patches/patch-src_slic3r_GUI_GLCanvas3D_cpp
@@ -1,7 +1,7 @@
Index: src/slic3r/GUI/GLCanvas3D.cpp
--- src/slic3r/GUI/GLCanvas3D.cpp.orig
+++ src/slic3r/GUI/GLCanvas3D.cpp
-@@ -161,7 +161,7 @@ float RetinaHelper::get_scale_factor() { return float(
+@@ -232,7 +232,7 @@ float RetinaHelper::get_scale_factor() { return float(
#endif // __WXGTK3__
// Fixed the collision between BuildVolume::Type::Convex and macro Convex defined inside /usr/include/X11/X.h that is included by WxWidgets 3.0.
blob - 9227818dd3b3eecd7030b1ac0fe3a676355c073c
blob + c58f1797e27b6c018c07dcd3bf334ae7e39981cd
--- cad/prusaslicer/patches/patch-src_slic3r_GUI_GUI_Factories_cpp
+++ cad/prusaslicer/patches/patch-src_slic3r_GUI_GUI_Factories_cpp
@@ -1,7 +1,7 @@
Index: src/slic3r/GUI/GUI_Factories.cpp
--- src/slic3r/GUI/GUI_Factories.cpp.orig
+++ src/slic3r/GUI/GUI_Factories.cpp
-@@ -1499,7 +1499,7 @@ void MenuFactory::sys_color_changed(wxMenuBar* menubar
+@@ -1500,7 +1500,7 @@ void MenuFactory::sys_color_changed(wxMenuBar* menubar
for (size_t id = 0; id < menubar->GetMenuCount(); id++) {
wxMenu* menu = menubar->GetMenu(id);
sys_color_changed_menu(menu);
blob - 7bd8737fd0b5a2c54085087db4de1e3ed1f3df94
blob + 25e4096e822c918a8f003f41a02406183b424986
--- cad/prusaslicer/patches/patch-src_slic3r_GUI_InstanceCheck_cpp
+++ cad/prusaslicer/patches/patch-src_slic3r_GUI_InstanceCheck_cpp
@@ -1,7 +1,7 @@
Index: src/slic3r/GUI/InstanceCheck.cpp
--- src/slic3r/GUI/InstanceCheck.cpp.orig
+++ src/slic3r/GUI/InstanceCheck.cpp
-@@ -27,7 +27,7 @@
+@@ -31,7 +31,7 @@
#include <strsafe.h>
#endif //WIN32
@@ -10,12 +10,12 @@ Index: src/slic3r/GUI/InstanceCheck.cpp
#include <dbus/dbus.h> /* Pull in all of D-Bus headers. */
#endif //__linux__
-@@ -240,7 +240,7 @@ namespace instance_check_internal
+@@ -316,7 +316,7 @@ namespace instance_check_internal
return false;
}
-#elif defined(__linux__)
+#elif defined(__linux__) || defined(__OpenBSD__)
- static bool send_message(const std::string &message_text, const std::string &version)
+ static void list_matching_objects(const std::string& pattern, std::vector<std::string>& result)
{
blob - 6f85a062190f808cd4c4962f99d5e7b2e557433f (mode 644)
blob + /dev/null
--- cad/prusaslicer/patches/patch-src_slic3r_GUI_PhysicalPrinterDialog_cpp
+++ /dev/null
@@ -1,12 +0,0 @@
-Index: src/slic3r/GUI/PhysicalPrinterDialog.cpp
---- src/slic3r/GUI/PhysicalPrinterDialog.cpp.orig
-+++ src/slic3r/GUI/PhysicalPrinterDialog.cpp
-@@ -607,7 +607,7 @@ void PhysicalPrinterDialog::build_printhost_settings(C
- // Always fill in the "printhost_port" combo box from the config and select it.
- {
- Choice* choice = dynamic_cast<Choice*>(m_optgroup->get_field("printhost_port"));
-- choice->set_values({ m_config->opt_string("printhost_port") });
-+ choice->set_values((const std::vector<std::string>){ m_config->opt_string("printhost_port") });
- choice->set_selection();
- }
-
blob - 73313d254066fe74df8731190e6f0d9d3934cf7a (mode 644)
blob + /dev/null
--- cad/prusaslicer/patches/patch-src_slic3r_GUI_Plater_cpp
+++ /dev/null
@@ -1,12 +0,0 @@
-Index: src/slic3r/GUI/Plater.cpp
---- src/slic3r/GUI/Plater.cpp.orig
-+++ src/slic3r/GUI/Plater.cpp
-@@ -4420,7 +4420,7 @@ void Plater::load_project(const wxString& filename)
- s_multiple_beds.set_loading_project_flag(true);
- ScopeGuard guard([](){ s_multiple_beds.set_loading_project_flag(false);});
-
-- if (! load_files({ into_path(filename) }).empty()) {
-+ if (! load_files((const std::vector<boost::filesystem::path>){ into_path(filename) }).empty()) {
- // At least one file was loaded.
- p->set_project_filename(filename);
- // Save the names of active presets and project specific config into ProjectDirtyStateManager.
blob - 0f961e47c0bc2fee9974f62f40bd0646d0e158b1
blob + ef19da67670aa3d8bfd361c1a38f8ddf762cf790
--- cad/prusaslicer/patches/patch-src_slic3r_GUI_UserAccountCommunication_cpp
+++ cad/prusaslicer/patches/patch-src_slic3r_GUI_UserAccountCommunication_cpp
@@ -1,15 +1,7 @@
Index: src/slic3r/GUI/UserAccountCommunication.cpp
--- src/slic3r/GUI/UserAccountCommunication.cpp.orig
+++ src/slic3r/GUI/UserAccountCommunication.cpp
-@@ -11,6 +11,7 @@
- #include <boost/beast/core/detail/base64.hpp>
- #include <boost/algorithm/string.hpp>
- #include <boost/filesystem.hpp>
-+#include <boost/nowide/convert.hpp>
- #include <boost/nowide/cstdio.hpp>
- #include <boost/nowide/fstream.hpp>
- #include <curl/curl.h>
-@@ -37,7 +38,7 @@
+@@ -38,7 +38,7 @@
#include <CommonCrypto/CommonDigest.h>
#endif
@@ -18,30 +10,30 @@ Index: src/slic3r/GUI/UserAccountCommunication.cpp
#include <openssl/evp.h>
#include <openssl/bio.h>
#include <openssl/buffer.h>
-@@ -137,7 +138,7 @@ bool load_secret(const std::string& opt, std::string&
+@@ -140,7 +140,7 @@ bool load_secret(const std::string& opt, std::string&
#endif // wxUSE_SECRETSTORE
}
-#ifdef __linux__
+#if defined(__linux__) || defined(__OpenBSD__)
- void load_refresh_token_linux(std::string& refresh_token)
+ void load_tokens_linux(UserAccountCommunication::StoreData& result)
{
// Load refresh token from UserAccount.dat
-@@ -201,7 +202,7 @@ UserAccountCommunication::UserAccountCommunication(wxE
- shared_session_key = key0;
-
- } else {
+@@ -317,7 +317,7 @@ void UserAccountCommunication::set_username(const std:
+ BOOST_LOG_TRIVIAL(error) << "Failed to write tokens to the secret store.";
+ }
+ } else {
-#ifdef __linux__
+#if defined(__linux__) || defined(__OpenBSD__)
- load_refresh_token_linux(refresh_token);
- #endif
- }
-@@ -252,7 +253,7 @@ void UserAccountCommunication::set_username(const std:
- save_secret("tokens", m_session->get_shared_session_key(), tokens);
- }
- else {
--#ifdef __linux__
-+#if defined(__linux__) || defined(__OpenBSD__)
// If we can't store the tokens in secret store, store them in file with chmod 600
boost::filesystem::path target(boost::filesystem::path(Slic3r::data_dir()) / "UserAccount.dat") ;
- std::string data = m_session->get_refresh_token();
+ std::string data = "||||";
+@@ -640,7 +640,7 @@ void UserAccountCommunication::read_stored_data(UserAc
+ }
+ result.shared_session_key = key0;
+ } else {
+-#ifdef __linux__
++#if defined(__linux__) || defined(__OpenBSD__)
+ load_tokens_linux(result);
+ #endif
+ }
blob - 0ef93b823c7b92483f74fece8634254e14d7ec66
blob + f9e6b2c982b9e5e864f0dfbcd9f4026afac57188
--- cad/prusaslicer/patches/patch-src_slic3r_Utils_WifiScanner_cpp
+++ cad/prusaslicer/patches/patch-src_slic3r_Utils_WifiScanner_cpp
@@ -1,7 +1,7 @@
Index: src/slic3r/Utils/WifiScanner.cpp
--- src/slic3r/Utils/WifiScanner.cpp.orig
+++ src/slic3r/Utils/WifiScanner.cpp
-@@ -16,7 +16,7 @@
+@@ -18,7 +18,7 @@
#include "WifiScannerMac.h"
#endif
blob - 18483c13066451b843b2d1de8ae1ecb064cb04af (mode 644)
blob + /dev/null
--- cad/prusaslicer/patches/patch-tests_CMakeLists_txt
+++ /dev/null
@@ -1,21 +0,0 @@
-Index: tests/CMakeLists.txt
---- tests/CMakeLists.txt.orig
-+++ tests/CMakeLists.txt
-@@ -1,7 +1,7 @@
- # TODO Add individual tests as executables in separate directories
- # add_subirectory(<testcase>)
-
--find_package(Catch2 2.9 REQUIRED)
-+find_package(Catch2 REQUIRED)
-
- include(Catch)
-
-@@ -13,7 +13,7 @@ set(CATCH_EXTRA_ARGS "" CACHE STRING "Extra arguments
- add_library(test_common INTERFACE)
- target_include_directories(test_common INTERFACE ${CMAKE_CURRENT_LIST_DIR})
- target_compile_definitions(test_common INTERFACE TEST_DATA_DIR=R"\(${TEST_DATA_DIR}\)" CATCH_CONFIG_FAST_COMPILE)
--target_link_libraries(test_common INTERFACE Catch2::Catch2)
-+target_link_libraries(test_common INTERFACE Catch2::Catch2WithMain)
-
- if (APPLE)
- target_link_libraries(test_common INTERFACE "-liconv -framework IOKit" "-framework CoreFoundation" -lc++)
blob - 89226aa571bf539bbf105564a56828e9cf8dbba9 (mode 644)
blob + /dev/null
--- cad/prusaslicer/patches/patch-tests_catch2_catch_hpp
+++ /dev/null
@@ -1,18 +0,0 @@
-Index: tests/catch2/catch.hpp
---- tests/catch2/catch.hpp.orig
-+++ tests/catch2/catch.hpp
-@@ -0,0 +1,14 @@
-+#ifndef __OPENBSD_PORT_COMPAT_CATCH2__
-+#define __OPENBSD_PORT_COMPAT_CATCH2__
-+
-+#include <catch2/catch_all.hpp>
-+#include <random>
-+
-+using Catch::Approx;
-+
-+namespace Catch {
-+ using Catch::Matchers::Equals;
-+ using Catch::Matchers::MatcherBase;
-+};
-+
-+#endif // __OPENBSD_PORT_COMPAT_CATCH2__
blob - 83fa1f4308510f222d62c09983eea3fa7e876200 (mode 644)
blob + /dev/null
--- cad/prusaslicer/patches/patch-tests_catch_main_hpp
+++ /dev/null
@@ -1,56 +0,0 @@
-Index: tests/catch_main.hpp
---- tests/catch_main.hpp.orig
-+++ tests/catch_main.hpp
-@@ -4,51 +4,6 @@
- #define CATCH_CONFIG_EXTERNAL_INTERFACES
- #define CATCH_CONFIG_MAIN
- // #define CATCH_CONFIG_DEFAULT_REPORTER "verboseconsole"
--#include <catch2/catch.hpp>
--
--namespace Catch {
--struct VerboseConsoleReporter : public ConsoleReporter {
-- double duration = 0.;
-- using ConsoleReporter::ConsoleReporter;
--
-- void testCaseStarting(TestCaseInfo const& _testInfo) override
-- {
-- Colour::use(Colour::Cyan);
-- stream << "Testing ";
-- Colour::use(Colour::None);
-- stream << _testInfo.name << std::endl;
-- ConsoleReporter::testCaseStarting(_testInfo);
-- }
--
-- void sectionStarting(const SectionInfo &_sectionInfo) override
-- {
-- if (_sectionInfo.name != currentTestCaseInfo->name)
-- stream << _sectionInfo.name << std::endl;
--
-- ConsoleReporter::sectionStarting(_sectionInfo);
-- }
--
-- void sectionEnded(const SectionStats &_sectionStats) override {
-- duration += _sectionStats.durationInSeconds;
-- ConsoleReporter::sectionEnded(_sectionStats);
-- }
--
-- void testCaseEnded(TestCaseStats const& stats) override
-- {
-- if (stats.totals.assertions.allOk()) {
-- Colour::use(Colour::BrightGreen);
-- stream << "Passed";
-- Colour::use(Colour::None);
-- stream << " in " << duration << " [seconds]\n" << std::endl;
-- }
--
-- duration = 0.;
-- ConsoleReporter::testCaseEnded(stats);
-- }
--};
--
--CATCH_REGISTER_REPORTER( "verboseconsole", VerboseConsoleReporter )
--
--} // namespace Catch
-+#include <catch2/catch_all.hpp>
-
- #endif // CATCH_MAIN
blob - bd39d1ddc2e3c964e0c54b052776bccd09bcdcb7 (mode 644)
blob + /dev/null
--- cad/prusaslicer/patches/patch-tests_fff_print_test_gcode_cpp
+++ /dev/null
@@ -1,12 +0,0 @@
-Index: tests/fff_print/test_gcode.cpp
---- tests/fff_print/test_gcode.cpp.orig
-+++ tests/fff_print/test_gcode.cpp
-@@ -65,7 +65,7 @@ TEST_CASE("Wiping speeds", "[GCode]") {
- INFO("Wipe moves don\'t retract faster than configured speed");
- CHECK(retract_speed < expected_retract_speed);
- }
-- INFO("No wiping after layer change")
-+ INFO("No wiping after layer change");
- CHECK(!wiping_on_new_layer);
- }
-
blob - 25328aedc17bcd738486aa363b47e69c2b28eb68 (mode 644)
blob + /dev/null
--- cad/prusaslicer/patches/patch-tests_fff_print_test_layers_cpp
+++ /dev/null
@@ -1,16 +0,0 @@
-Index: tests/fff_print/test_layers.cpp
---- tests/fff_print/test_layers.cpp.orig
-+++ tests/fff_print/test_layers.cpp
-@@ -27,10 +27,10 @@ void check_layers(const DynamicPrintConfig& config) {
- const double layer_height = config.opt_float("layer_height");
- INFO("Correct first layer height.");
- CHECK(z.at(0) == Approx(first_layer_height + z_offset));
-- INFO("Correct second layer height")
-+ INFO("Correct second layer height");
- CHECK(z.at(1) == Approx(first_layer_height + layer_height + z_offset));
-
-- INFO("Correct layer height")
-+ INFO("Correct layer height");
- for (const double increment : tcb::span{increments}.subspan(1)) {
- CHECK(increment == Approx(layer_height));
- }
blob - e06aaad7159fed8d10182000c39d06d9d5398000 (mode 644)
blob + /dev/null
--- cad/prusaslicer/patches/patch-tests_fff_print_test_retraction_cpp
+++ /dev/null
@@ -1,12 +0,0 @@
-Index: tests/fff_print/test_retraction.cpp
---- tests/fff_print/test_retraction.cpp.orig
-+++ tests/fff_print/test_retraction.cpp
-@@ -77,7 +77,7 @@ void check_gcode(std::initializer_list<TestMesh> meshe
- lift_dist = line.dist_Z(self);
- }
- if (line.dist_Z(self) < 0) {
-- INFO("Must be lifted before going down.")
-+ INFO("Must be lifted before going down.");
- CHECK(lifted);
- INFO("Going down by the same amount of the lift or by the amount needed to get to next layer");
- CHECK((
blob - e248602036fb2481e796dea73802f61e602fe405 (mode 644)
blob + /dev/null
--- cad/prusaslicer/patches/patch-tests_libslic3r_test_cut_surface_cpp
+++ /dev/null
@@ -1,12 +0,0 @@
-Index: tests/libslic3r/test_cut_surface.cpp
---- tests/libslic3r/test_cut_surface.cpp.orig
-+++ tests/libslic3r/test_cut_surface.cpp
-@@ -4,7 +4,7 @@
- #include <libslic3r/TriangleMesh.hpp> // its_make_cube + its_merge
-
- using namespace Slic3r;
--TEST_CASE("Cut character from surface", "[]")
-+TEST_CASE("Cut character from surface")
- {
- std::string font_path = std::string(TEST_DATA_DIR) +
- "/../../resources/fonts/NotoSans-Regular.ttf";
blob - 8d9ad23bd8e576dfe594667ba31665e0d4bd073e (mode 644)
blob + /dev/null
--- cad/prusaslicer/patches/patch-tests_libslic3r_test_emboss_cpp
+++ /dev/null
@@ -1,21 +0,0 @@
-Index: tests/libslic3r/test_emboss.cpp
---- tests/libslic3r/test_emboss.cpp.orig
-+++ tests/libslic3r/test_emboss.cpp
-@@ -414,7 +414,7 @@ TEST_CASE("ray segment intersection", "[MeshBoolean]")
- CHECK(abs(*t1 - *t2) < std::numeric_limits<double>::epsilon());
- }
-
--TEST_CASE("triangle intersection", "[]")
-+TEST_CASE("triangle intersection")
- {
- Vec2d point(1, 1);
- Vec2d dir(-1, 0);
-@@ -483,7 +483,7 @@ TEST_CASE("Italic check", "[Emboss]")
- #endif // FONT_DIR_PATH
-
- #include "libslic3r/CutSurface.hpp"
--TEST_CASE("Cut surface", "[]")
-+TEST_CASE("Cut surface")
- {
- std::string font_path = get_font_filepath();
- char letter = '%';
blob - 692b2aa606e4d37f41c1392b10f9e6c1fb888a42 (mode 644)
blob + /dev/null
--- cad/prusaslicer/patches/patch-tests_libslic3r_test_line_cpp
+++ /dev/null
@@ -1,12 +0,0 @@
-Index: tests/libslic3r/test_line.cpp
---- tests/libslic3r/test_line.cpp.orig
-+++ tests/libslic3r/test_line.cpp
-@@ -37,7 +37,7 @@ TEST_CASE("Parallel lines under angles", "[Line]") {
- CHECK(line.parallel_to(line.direction()));
- INFO("Line is parallel to its direction + PI");
- line.parallel_to(line.direction() + M_PI);
-- INFO("line is parallel to its direction - PI")
-+ INFO("line is parallel to its direction - PI");
- line.parallel_to(line.direction() - M_PI);
-
- SECTION("Line is parallel within epsilon") {
blob - 6b1ad1826f605dc330b8167822b102756a1269f3 (mode 644)
blob + /dev/null
--- cad/prusaslicer/patches/patch-tests_libslic3r_test_quadric_edge_collapse_cpp
+++ /dev/null
@@ -1,12 +0,0 @@
-Index: tests/libslic3r/test_quadric_edge_collapse.cpp
---- tests/libslic3r/test_quadric_edge_collapse.cpp.orig
-+++ tests/libslic3r/test_quadric_edge_collapse.cpp
-@@ -240,7 +240,7 @@ TEST_CASE("Simplify frog_legs.obj to 5% by Quadric edg
- Private::is_better_similarity(mesh.its, its, Private::frog_leg_5);
- }
-
--TEST_CASE("Simplify frog_legs.obj to 5% by IGL/qslim", "[]")
-+TEST_CASE("Simplify frog_legs.obj to 5% by IGL/qslim")
- {
- std::string obj_filename = "frog_legs.obj";
- TriangleMesh mesh = load_model(obj_filename);
blob - 7fa1c5b7fa289e2657e241c3b89ed6a38ae72ab8
blob + 2ac0df2a3fe70b8a0d0851df3e45e25b8bec361d
--- cad/prusaslicer/pkg/PLIST
+++ cad/prusaslicer/pkg/PLIST
@@ -5,6 +5,16 @@ share/PrusaSlicer/
share/PrusaSlicer/data/
share/PrusaSlicer/data/embossed_text.obj
share/PrusaSlicer/data/hints.ini
+share/PrusaSlicer/data/printer_gantries/
+share/PrusaSlicer/data/printer_gantries/geometries.json
+share/PrusaSlicer/data/printer_gantries/prusa3d_coreone_gantry.stl
+share/PrusaSlicer/data/printer_gantries/prusa3d_ht90_actuator.stl
+share/PrusaSlicer/data/printer_gantries/prusa3d_mini_gantry.stl
+share/PrusaSlicer/data/printer_gantries/prusa3d_mk3s_gantry.stl
+share/PrusaSlicer/data/printer_gantries/prusa3d_mk4_gantry.stl
+share/PrusaSlicer/data/printer_gantries/prusa3d_mk4s_gantry.stl
+share/PrusaSlicer/data/printer_gantries/prusa3d_xl_gantry.stl
+share/PrusaSlicer/data/sla_support.svg
share/PrusaSlicer/fonts/
share/PrusaSlicer/fonts/NotoSans-Regular.ttf
share/PrusaSlicer/fonts/NotoSansCJK-Regular.ttc
@@ -278,6 +288,11 @@ share/PrusaSlicer/icons/sla_view_original.svg
share/PrusaSlicer/icons/sla_view_processed.svg
share/PrusaSlicer/icons/slice_all.svg
share/PrusaSlicer/icons/snap.svg
+share/PrusaSlicer/icons/sphere_blueish.svg
+share/PrusaSlicer/icons/sphere_cyan.svg
+share/PrusaSlicer/icons/sphere_lightgray.svg
+share/PrusaSlicer/icons/sphere_orange.svg
+share/PrusaSlicer/icons/sphere_redish.svg
share/PrusaSlicer/icons/spin_dec.svg
share/PrusaSlicer/icons/spin_dec_act.svg
share/PrusaSlicer/icons/spin_inc.svg
@@ -293,6 +308,8 @@ share/PrusaSlicer/icons/stl.icns
share/PrusaSlicer/icons/support.svg
share/PrusaSlicer/icons/support_blocker.svg
share/PrusaSlicer/icons/support_enforcer.svg
+share/PrusaSlicer/icons/support_structure.svg
+share/PrusaSlicer/icons/support_structure_invisible.svg
share/PrusaSlicer/icons/svg_modifier.svg
share/PrusaSlicer/icons/svg_negative.svg
share/PrusaSlicer/icons/svg_part.svg
@@ -614,6 +631,8 @@ share/PrusaSlicer/profiles/Creality/sermoond1.svg
share/PrusaSlicer/profiles/Creality/sermoond1_bed.stl
share/PrusaSlicer/profiles/Creality/sermoonv1.svg
share/PrusaSlicer/profiles/Creality/sermoonv1_bed.stl
+share/PrusaSlicer/profiles/E2D.idx
+share/PrusaSlicer/profiles/E2D.ini
share/PrusaSlicer/profiles/Elegoo/
share/PrusaSlicer/profiles/Elegoo.idx
share/PrusaSlicer/profiles/Elegoo.ini
@@ -767,6 +786,7 @@ share/PrusaSlicer/profiles/Print4Taste/MC2.0_thumbnail
share/PrusaSlicer/profiles/PrusaResearch/
share/PrusaSlicer/profiles/PrusaResearch.idx
share/PrusaSlicer/profiles/PrusaResearch.ini
+share/PrusaSlicer/profiles/PrusaResearch/COREONE_thumbnail.png
share/PrusaSlicer/profiles/PrusaResearch/MINIIS_ALPHA_thumbnail.png
share/PrusaSlicer/profiles/PrusaResearch/MINIIS_BETA_thumbnail.png
share/PrusaSlicer/profiles/PrusaResearch/MINIIS_thumbnail.png
@@ -806,6 +826,8 @@ share/PrusaSlicer/profiles/PrusaResearch/XLIS_alpha_th
share/PrusaSlicer/profiles/PrusaResearch/XLIS_beta_thumbnail.png
share/PrusaSlicer/profiles/PrusaResearch/XLIS_thumbnail.png
share/PrusaSlicer/profiles/PrusaResearch/XL_thumbnail.png
+share/PrusaSlicer/profiles/PrusaResearch/coreone.svg
+share/PrusaSlicer/profiles/PrusaResearch/coreone_bed.stl
share/PrusaSlicer/profiles/PrusaResearch/mini.svg
share/PrusaSlicer/profiles/PrusaResearch/miniIS.svg
share/PrusaSlicer/profiles/PrusaResearch/miniISbeta.svg
@@ -834,6 +856,8 @@ share/PrusaSlicer/profiles/PrusaResearchSLA/sl1.svg
share/PrusaSlicer/profiles/PrusaResearchSLA/sl1_bed.stl
share/PrusaSlicer/profiles/PrusaResearchSLA/sl1s.svg
share/PrusaSlicer/profiles/PrusaResearchSLA/sl1s_bed.stl
+share/PrusaSlicer/profiles/QIDITechnology.idx
+share/PrusaSlicer/profiles/QIDITechnology.ini
share/PrusaSlicer/profiles/RatRig/
share/PrusaSlicer/profiles/RatRig.idx
share/PrusaSlicer/profiles/RatRig.ini
@@ -1036,6 +1060,8 @@ share/PrusaSlicer/shaders/110/mm_gouraud.fs
share/PrusaSlicer/shaders/110/mm_gouraud.vs
share/PrusaSlicer/shaders/110/printbed.fs
share/PrusaSlicer/shaders/110/printbed.vs
+share/PrusaSlicer/shaders/110/tool_marker.fs
+share/PrusaSlicer/shaders/110/tool_marker.vs
share/PrusaSlicer/shaders/110/toolpaths_cog.fs
share/PrusaSlicer/shaders/110/toolpaths_cog.vs
share/PrusaSlicer/shaders/110/variable_layer_height.fs
@@ -1068,6 +1094,8 @@ share/PrusaSlicer/shaders/140/mm_gouraud.fs
share/PrusaSlicer/shaders/140/mm_gouraud.vs
share/PrusaSlicer/shaders/140/printbed.fs
share/PrusaSlicer/shaders/140/printbed.vs
+share/PrusaSlicer/shaders/140/tool_marker.fs
+share/PrusaSlicer/shaders/140/tool_marker.vs
share/PrusaSlicer/shaders/140/toolpaths_cog.fs
share/PrusaSlicer/shaders/140/toolpaths_cog.vs
share/PrusaSlicer/shaders/140/variable_layer_height.fs
@@ -1099,6 +1127,8 @@ share/PrusaSlicer/shaders/ES/mm_gouraud.fs
share/PrusaSlicer/shaders/ES/mm_gouraud.vs
share/PrusaSlicer/shaders/ES/printbed.fs
share/PrusaSlicer/shaders/ES/printbed.vs
+share/PrusaSlicer/shaders/ES/tool_marker.fs
+share/PrusaSlicer/shaders/ES/tool_marker.vs
share/PrusaSlicer/shaders/ES/toolpaths_cog.fs
share/PrusaSlicer/shaders/ES/toolpaths_cog.vs
share/PrusaSlicer/shaders/ES/variable_layer_height.fs
UPDATE: cad/prusaslicer-2.9.1