Download raw body.
UPDATE: cad/prusaslicer-2.7.4
New diff updating cad/prusaslicer straight to 2.7.4.
Removed patches:
- cad/prusaslicer/patches/patch-src_libslic3r_CMakeLists_txt
diff --git a/cad/prusaslicer/Makefile b/cad/prusaslicer/Makefile
index c921e919917..85649394929 100644
--- a/cad/prusaslicer/Makefile
+++ b/cad/prusaslicer/Makefile
@@ -2,7 +2,7 @@ COMMENT = g-code generator for 3D printers
ONLY_FOR_ARCHS = ${LP64_ARCHS}
DPB_PROPERTIES = parallel
-V = 2.7.2
+V = 2.7.4
PKGNAME = prusaslicer-${V}
GH_ACCOUNT = prusa3d
@@ -30,8 +30,8 @@ WANTLIB += curl dbus-1 execinfo expat fontconfig freetype gdk-3
WANTLIB += gdk_pixbuf-2.0 gio-2.0 glib-2.0 gmp gmpxx gobject-2.0
WANTLIB += gtk-3 harfbuzz hidapi-libusb intl jpeg m mpfr nlopt
WANTLIB += openvdb pango-1.0 pangocairo-1.0 png qhull_r tbb tbbmalloc
-WANTLIB += tiff wx_baseu-3.2 wx_gtk3u_core-3.2 wx_gtk3u_gl-3.2
-WANTLIB += wx_gtk3u_html-3.2 z
+WANTLIB += tiff wayland-client wayland-egl wx_baseu-3.2 wx_gtk3u_core-3.2
+WANTLIB += wx_gtk3u_gl-3.2 wx_gtk3u_html-3.2 z
FIX_CRLF_FILES = src/libslic3r/Point.hpp src/slic3r/GUI/GLCanvas3D.cpp
@@ -62,10 +62,12 @@ LIB_DEPENDS = cad/opencascade \
math/nlopt \
math/qhull \
net/curl \
+ wayland/wayland \
x11/dbus \
x11/wxWidgets
-CONFIGURE_ARGS += -DCMAKE_MODULE_PATH=${PREFIX}/lib/cmake/OpenVDB \
+CONFIGURE_ARGS += -DCMAKE_BUILD_TYPE=RelWithDebInfo \
+ -DCMAKE_MODULE_PATH=${PREFIX}/lib/cmake/OpenVDB \
-DSLIC3R_FHS=1 \
-DSLIC3R_GTK=3 \
-DSLIC3R_PCH=OFF
diff --git a/cad/prusaslicer/distinfo b/cad/prusaslicer/distinfo
index d12bc897523..edfc4ca2b60 100644
--- a/cad/prusaslicer/distinfo
+++ b/cad/prusaslicer/distinfo
@@ -1,2 +1,2 @@
-SHA256 (PrusaSlicer-version_2.7.2.tar.gz) = Cvirg60zzevB0T032O07ISXYRTLrS8p2GMQiv3ZI6+4=
-SIZE (PrusaSlicer-version_2.7.2.tar.gz) = 64915607
+SHA256 (PrusaSlicer-version_2.7.4.tar.gz) = Y3CpWTrqxcVlQ+ZtFnq1/QU99VuTdjksLWGE6wv2X8g=
+SIZE (PrusaSlicer-version_2.7.4.tar.gz) = 65396083
diff --git a/cad/prusaslicer/patches/patch-src_CMakeLists_txt b/cad/prusaslicer/patches/patch-src_CMakeLists_txt
index 68b506b807f..10a71007640 100644
--- a/cad/prusaslicer/patches/patch-src_CMakeLists_txt
+++ b/cad/prusaslicer/patches/patch-src_CMakeLists_txt
@@ -1,50 +1,18 @@
Index: src/CMakeLists.txt
--- src/CMakeLists.txt.orig
+++ src/CMakeLists.txt
-@@ -33,8 +33,13 @@ endif ()
+@@ -33,8 +33,8 @@ endif ()
if (SLIC3R_GUI)
add_subdirectory(imgui)
- add_subdirectory(hidapi)
- include_directories(hidapi/include)
-+ if (CMAKE_SYSTEM_NAME STREQUAL "OpenBSD")
-+ pkg_check_modules(HIDAPI REQUIRED hidapi-libusb)
-+ include_directories(${HIDAPI_INCLUDE_DIRS})
-+ else ()
-+ add_subdirectory(hidapi)
-+ include_directories(hidapi/include)
-+ endif ()
++ pkg_check_modules(HIDAPI REQUIRED hidapi-libusb)
++ include_directories(${HIDAPI_INCLUDE_DIRS})
if(WIN32)
message(STATUS "WXWIN environment set to: $ENV{WXWIN}")
-@@ -85,7 +90,7 @@ if (SLIC3R_GUI)
- string(REGEX MATCH "wxexpat" WX_EXPAT_BUILTIN ${wxWidgets_LIBRARIES})
- if (EXPAT_FOUND AND NOT WX_EXPAT_BUILTIN)
- list(FILTER wxWidgets_LIBRARIES EXCLUDE REGEX expat)
-- list(APPEND wxWidgets_LIBRARIES libexpat)
-+ list(APPEND wxWidgets_LIBRARIES ${EXPAT_LIBRARIES})
- endif ()
-
- # This is an issue in the new wxWidgets cmake build, doesn't deal with librt
-@@ -100,7 +105,7 @@ if (SLIC3R_GUI)
- list(FILTER wxWidgets_LIBRARIES EXCLUDE REGEX OpenGL)
-
- if (UNIX AND NOT APPLE)
-- list(APPEND wxWidgets_LIBRARIES X11 wayland-client wayland-egl EGL)
-+ list(APPEND wxWidgets_LIBRARIES X11 EGL)
- endif ()
- # list(REMOVE_ITEM wxWidgets_LIBRARIES oleacc)
- message(STATUS "wx libs: ${wxWidgets_LIBRARIES}")
-@@ -131,7 +136,7 @@ if (NOT WIN32 AND NOT APPLE)
- set_target_properties(PrusaSlicer PROPERTIES OUTPUT_NAME "prusa-slicer")
- endif ()
-
--target_link_libraries(PrusaSlicer libslic3r libcereal)
-+target_link_libraries(PrusaSlicer libslic3r)
-
- if (APPLE)
- # add_compile_options(-stdlib=libc++)
-@@ -158,6 +163,8 @@ target_link_libraries(PrusaSlicer libslic3r_gui)
+@@ -158,6 +158,8 @@ target_link_libraries(PrusaSlicer libslic3r_gui)
target_link_libraries(PrusaSlicer ws2_32 uxtheme setupapi)
elseif (APPLE)
target_link_libraries(PrusaSlicer "-framework OpenGL")
diff --git a/cad/prusaslicer/patches/patch-src_hints_HintsToPot_cpp b/cad/prusaslicer/patches/patch-src_hints_HintsToPot_cpp
index bb9dc7afc43..17d0e4f64d6 100644
--- a/cad/prusaslicer/patches/patch-src_hints_HintsToPot_cpp
+++ b/cad/prusaslicer/patches/patch-src_hints_HintsToPot_cpp
@@ -1,13 +1,11 @@
Index: src/hints/HintsToPot.cpp
--- src/hints/HintsToPot.cpp.orig
+++ src/hints/HintsToPot.cpp
-@@ -2,6 +2,9 @@
+@@ -2,6 +2,7 @@
#include <vector>
#include <string>
#include <boost/filesystem.hpp>
-+#ifdef __OpenBSD__
-+# include <boost/filesystem/fstream.hpp>
-+#endif
++#include <boost/filesystem/fstream.hpp>
#include <boost/dll.hpp>
#include <boost/property_tree/ini_parser.hpp>
#include <boost/nowide/fstream.hpp>
diff --git a/cad/prusaslicer/patches/patch-src_libslic3r_CMakeLists_txt b/cad/prusaslicer/patches/patch-src_libslic3r_CMakeLists_txt
deleted file mode 100644
index 9b3eb2ee030..00000000000
--- a/cad/prusaslicer/patches/patch-src_libslic3r_CMakeLists_txt
+++ /dev/null
@@ -1,18 +0,0 @@
-Index: src/libslic3r/CMakeLists.txt
---- src/libslic3r/CMakeLists.txt.orig
-+++ src/libslic3r/CMakeLists.txt
-@@ -575,13 +575,12 @@ find_package(JPEG REQUIRED)
- target_link_libraries(libslic3r
- libnest2d
- admesh
-- libcereal
- libigl
- miniz
- boost_libs
- clipper
- nowide
-- libexpat
-+ expat
- glu-libtess
- qhull
- semver
diff --git a/cad/prusaslicer/patches/patch-src_libslic3r_GCode_cpp b/cad/prusaslicer/patches/patch-src_libslic3r_GCode_cpp
index f0a597dc320..33b28fb5f5b 100644
--- a/cad/prusaslicer/patches/patch-src_libslic3r_GCode_cpp
+++ b/cad/prusaslicer/patches/patch-src_libslic3r_GCode_cpp
@@ -1,7 +1,7 @@
Index: src/libslic3r/GCode.cpp
--- src/libslic3r/GCode.cpp.orig
+++ src/libslic3r/GCode.cpp
-@@ -1524,13 +1524,13 @@ void GCodeGenerator::process_layers(
+@@ -1565,13 +1565,13 @@ void GCodeGenerator::process_layers(
[&output_stream](std::string s) { output_stream.write(s); }
);
@@ -17,7 +17,7 @@ Index: src/libslic3r/GCode.cpp
if (m_find_replace)
pipeline_to_string = pipeline_to_string & find_replace;
-@@ -1616,13 +1616,13 @@ void GCodeGenerator::process_layers(
+@@ -1658,13 +1658,13 @@ void GCodeGenerator::process_layers(
[&output_stream](std::string s) { output_stream.write(s); }
);
diff --git a/cad/prusaslicer/patches/patch-src_libslic3r_Thread_cpp b/cad/prusaslicer/patches/patch-src_libslic3r_Thread_cpp
index 38396396891..acf805b28f7 100644
--- a/cad/prusaslicer/patches/patch-src_libslic3r_Thread_cpp
+++ b/cad/prusaslicer/patches/patch-src_libslic3r_Thread_cpp
@@ -1,25 +1,14 @@
Index: src/libslic3r/Thread.cpp
--- src/libslic3r/Thread.cpp.orig
+++ src/libslic3r/Thread.cpp
-@@ -13,6 +13,10 @@
- #endif // __APPLE__
- #endif
-
-+#ifdef __OpenBSD__
-+ #include <pthread_np.h>
-+#endif
-+
- #include <atomic>
- #include <condition_variable>
- #include <mutex>
-@@ -162,6 +166,33 @@ std::optional<std::string> get_current_thread_name()
- // char buf[16];
- // return std::string(thread_getname_np(buf, 16) == 0 ? buf : "");
+@@ -164,6 +164,35 @@ std::optional<std::string> get_current_thread_name()
return std::nullopt;
-+}
-+
+ }
+
+#elif __OpenBSD__
+
++#include <pthread_np.h>
++
+bool set_thread_name(std::thread &thread, const char *thread_name)
+{
+ pthread_set_name_np(thread.native_handle(), thread_name);
@@ -43,6 +32,8 @@ Index: src/libslic3r/Thread.cpp
+ char buf[16];
+ pthread_get_name_np(pthread_self(), buf, 16);
+ return std::string(buf);
- }
-
++}
++
#else
+
+ // posix
diff --git a/cad/prusaslicer/patches/patch-src_slic3r_CMakeLists_txt b/cad/prusaslicer/patches/patch-src_slic3r_CMakeLists_txt
index d03e6dd4ec0..4f07ca838c6 100644
--- a/cad/prusaslicer/patches/patch-src_slic3r_CMakeLists_txt
+++ b/cad/prusaslicer/patches/patch-src_slic3r_CMakeLists_txt
@@ -1,12 +1,7 @@
Index: src/slic3r/CMakeLists.txt
--- src/slic3r/CMakeLists.txt.orig
+++ src/slic3r/CMakeLists.txt
-@@ -362,11 +362,11 @@ endforeach()
-
- encoding_check(libslic3r_gui)
-
--target_link_libraries(libslic3r_gui libslic3r avrdude libcereal imgui GLEW::GLEW OpenGL::GL hidapi libcurl ${wxWidgets_LIBRARIES} NanoSVG::nanosvg NanoSVG::nanosvgrast)
-+target_link_libraries(libslic3r_gui libslic3r avrdude imgui GLEW::GLEW OpenGL::GL ${HIDAPI_LIBRARIES} libcurl ${wxWidgets_LIBRARIES} NanoSVG::nanosvg NanoSVG::nanosvgrast)
+@@ -366,7 +366,7 @@ target_link_libraries(libslic3r_gui libslic3r avrdude
if (MSVC)
target_link_libraries(libslic3r_gui Setupapi.lib)
diff --git a/cad/prusaslicer/patches/patch-src_slic3r_GUI_ConfigWizard_cpp b/cad/prusaslicer/patches/patch-src_slic3r_GUI_ConfigWizard_cpp
index 4ceb71db41e..047bafd1f56 100644
--- a/cad/prusaslicer/patches/patch-src_slic3r_GUI_ConfigWizard_cpp
+++ b/cad/prusaslicer/patches/patch-src_slic3r_GUI_ConfigWizard_cpp
@@ -5,8 +5,8 @@ Index: src/slic3r/GUI/ConfigWizard.cpp
if ((check_unsaved_preset_changes = install_bundles.size() > 0))
header = _L_PLURAL("A new vendor was installed and one of its printers will be activated", "New vendors were installed and one of theirs printers will be activated", install_bundles.size());
--#ifdef __linux__
-+#if defined(__linux__) || defined(__OpenBSD__)
+-#if defined(__linux__) && defined(SLIC3R_DESKTOP_INTEGRATION)
++#if (defined(__linux__) || defined(__OpenBSD__)) && defined(SLIC3R_DESKTOP_INTEGRATION)
// Desktop integration on Linux
BOOST_LOG_TRIVIAL(debug) << "ConfigWizard::priv::apply_config integrate_desktop" << page_welcome->integrate_desktop() << " perform_registration_linux " << page_downloader->m_downloader->get_perform_registration_linux();
if (page_welcome->integrate_desktop())
diff --git a/cad/prusaslicer/patches/patch-src_slic3r_GUI_GUI_Init_cpp b/cad/prusaslicer/patches/patch-src_slic3r_GUI_GUI_Init_cpp
index f5ef55ee933..c12c0376a28 100644
--- a/cad/prusaslicer/patches/patch-src_slic3r_GUI_GUI_Init_cpp
+++ b/cad/prusaslicer/patches/patch-src_slic3r_GUI_GUI_Init_cpp
@@ -1,13 +1,11 @@
Index: src/slic3r/GUI/GUI_Init.cpp
--- src/slic3r/GUI/GUI_Init.cpp.orig
+++ src/slic3r/GUI/GUI_Init.cpp
-@@ -45,6 +45,10 @@ int GUI_Run(GUI_InitParams ¶ms)
+@@ -45,6 +45,8 @@ int GUI_Run(GUI_InitParams ¶ms)
signal(SIGCHLD, SIG_DFL);
#endif // __APPLE__
-+#ifdef __OpenBSD__
+ wxSizerFlags::DisableConsistencyChecks();
-+#endif
+
try {
GUI::GUI_App* gui = new GUI::GUI_App(params.start_as_gcodeviewer ? GUI::GUI_App::EAppMode::GCodeViewer : GUI::GUI_App::EAppMode::Editor);
diff --git a/cad/prusaslicer/patches/patch-src_slic3r_GUI_GUI_cpp b/cad/prusaslicer/patches/patch-src_slic3r_GUI_GUI_cpp
index 82744e319a9..33e9e066523 100644
--- a/cad/prusaslicer/patches/patch-src_slic3r_GUI_GUI_cpp
+++ b/cad/prusaslicer/patches/patch-src_slic3r_GUI_GUI_cpp
@@ -1,12 +1,11 @@
Index: src/slic3r/GUI/GUI.cpp
--- src/slic3r/GUI/GUI.cpp.orig
+++ src/slic3r/GUI/GUI.cpp
-@@ -501,7 +501,8 @@ void desktop_open_folder(const boost::filesystem::path
+@@ -501,7 +501,7 @@ void desktop_open_folder(const boost::filesystem::path
#endif
}
-#ifdef __linux__
-+// XXX maybe create separate implementations for openbsd without appimage stuff
+#if defined(__linux__) || defined(__OpenBSD__)
namespace {
wxExecuteEnv get_appimage_exec_env()
diff --git a/cad/prusaslicer/patches/patch-src_slic3r_GUI_Mouse3DController_cpp b/cad/prusaslicer/patches/patch-src_slic3r_GUI_Mouse3DController_cpp
index 7660780197a..3df9b36784c 100644
--- a/cad/prusaslicer/patches/patch-src_slic3r_GUI_Mouse3DController_cpp
+++ b/cad/prusaslicer/patches/patch-src_slic3r_GUI_Mouse3DController_cpp
@@ -1,27 +1,21 @@
Index: src/slic3r/GUI/Mouse3DController.cpp
--- src/slic3r/GUI/Mouse3DController.cpp.orig
+++ src/slic3r/GUI/Mouse3DController.cpp
-@@ -151,7 +151,11 @@ static std::string detect_attached_device()
+@@ -151,7 +151,7 @@ static std::string detect_attached_device()
std::string ret;
// Initialize the hidapi library
-+#ifdef __OpenBSD__
+- int res = hid_init();
+ int res = hidapi_hid_init();
-+#else
- int res = hid_init();
-+#endif
if (res != 0)
BOOST_LOG_TRIVIAL(error) << "Unable to initialize hidapi library";
else {
-@@ -708,7 +712,11 @@ void Mouse3DController::shutdown()
+@@ -708,7 +708,7 @@ void Mouse3DController::shutdown()
void Mouse3DController::run()
{
// Initialize the hidapi library
-+#ifdef __OpenBSD__
+- int res = hid_init();
+ int res = hidapi_hid_init();
-+#else
- int res = hid_init();
-+#endif
if (res != 0) {
// Give up.
#if defined(__unix__) || defined(__unix) || defined(unix)
diff --git a/cad/prusaslicer/patches/patch-src_slic3r_GUI_Plater_cpp b/cad/prusaslicer/patches/patch-src_slic3r_GUI_Plater_cpp
index f5347505071..d000febc038 100644
--- a/cad/prusaslicer/patches/patch-src_slic3r_GUI_Plater_cpp
+++ b/cad/prusaslicer/patches/patch-src_slic3r_GUI_Plater_cpp
@@ -1,7 +1,7 @@
Index: src/slic3r/GUI/Plater.cpp
--- src/slic3r/GUI/Plater.cpp.orig
+++ src/slic3r/GUI/Plater.cpp
-@@ -5425,7 +5425,7 @@ void Plater::load_project(const wxString& filename)
+@@ -5428,7 +5428,7 @@ void Plater::load_project(const wxString& filename)
p->reset();
diff --git a/cad/prusaslicer/pkg/PLIST b/cad/prusaslicer/pkg/PLIST
index dd9e282da3b..312f0f7c392 100644
--- a/cad/prusaslicer/pkg/PLIST
+++ b/cad/prusaslicer/pkg/PLIST
@@ -354,6 +354,9 @@ share/PrusaSlicer/localization/pt_BR/PrusaSlicer_pt_BR.po
share/PrusaSlicer/localization/ru/
share/PrusaSlicer/localization/ru/PrusaSlicer.mo
share/PrusaSlicer/localization/ru/PrusaSlicer_ru.po
+share/PrusaSlicer/localization/sl/
+share/PrusaSlicer/localization/sl/PrusaSlicer.mo
+share/PrusaSlicer/localization/sl/PrusaSlicer.po
share/PrusaSlicer/localization/tr/
share/PrusaSlicer/localization/tr/PrusaSlicer.mo
share/PrusaSlicer/localization/tr/PrusaSlicer_tr.po
@@ -729,14 +732,18 @@ share/PrusaSlicer/profiles/PrusaResearch/MK2.5S_thumbnail.png
share/PrusaSlicer/profiles/PrusaResearch/MK2.5_thumbnail.png
share/PrusaSlicer/profiles/PrusaResearch/MK2SMM_thumbnail.png
share/PrusaSlicer/profiles/PrusaResearch/MK2S_thumbnail.png
+share/PrusaSlicer/profiles/PrusaResearch/MK3.5MMU3_thumbnail.png
+share/PrusaSlicer/profiles/PrusaResearch/MK3.9MMU3_thumbnail.png
share/PrusaSlicer/profiles/PrusaResearch/MK35_thumbnail.png
share/PrusaSlicer/profiles/PrusaResearch/MK39IS_thumbnail.png
+share/PrusaSlicer/profiles/PrusaResearch/MK39IS_thumbnail_v2.png
share/PrusaSlicer/profiles/PrusaResearch/MK39_thumbnail.png
share/PrusaSlicer/profiles/PrusaResearch/MK3MMU2_thumbnail.png
share/PrusaSlicer/profiles/PrusaResearch/MK3SMMU2S_thumbnail.png
share/PrusaSlicer/profiles/PrusaResearch/MK3SMMU3_thumbnail.png
share/PrusaSlicer/profiles/PrusaResearch/MK3S_thumbnail.png
share/PrusaSlicer/profiles/PrusaResearch/MK3_thumbnail.png
+share/PrusaSlicer/profiles/PrusaResearch/MK4ISMMU3_thumbnail.png
share/PrusaSlicer/profiles/PrusaResearch/MK4IS_thumbnail.png
share/PrusaSlicer/profiles/PrusaResearch/MK4IS_thumbnail_v2.png
share/PrusaSlicer/profiles/PrusaResearch/MK4_thumbnail.png
--
Renato Aguiar
UPDATE: cad/prusaslicer-2.7.4