From ee98a1c31ba2b1f6213547758fa88e3fe1547d14 Mon Sep 17 00:00:00 2001 From: YuSanka Date: Tue, 14 Jan 2025 18:37:04 +0100 Subject: [PATCH] wxWidgest are updated for v.3.2.6 + Fixed compilation issues + Disable libpng compilation on linux --- deps/+PNG/PNG.cmake | 48 ++++++++++++------------ deps/+wxWidgets/webview.patch | 2 +- deps/+wxWidgets/wxWidgets.cmake | 4 +- src/slic3r/GUI/PhysicalPrinterDialog.cpp | 3 +- src/slic3r/GUI/Plater.cpp | 3 +- 5 files changed, 32 insertions(+), 28 deletions(-) diff --git a/deps/+PNG/PNG.cmake b/deps/+PNG/PNG.cmake index f2ef60035f..2c11468f57 100644 --- a/deps/+PNG/PNG.cmake +++ b/deps/+PNG/PNG.cmake @@ -1,27 +1,29 @@ -if (APPLE) - # Only disable NEON extension for Apple ARM builds, leave it enabled for Raspberry PI. - set(_disable_neon_extension "-DPNG_ARM_NEON:STRING=off") -else () - set(_disable_neon_extension "") -endif () +if (MSVC OR APPLE) + if (APPLE) + # Only disable NEON extension for Apple ARM builds, leave it enabled for Raspberry PI. + set(_disable_neon_extension "-DPNG_ARM_NEON:STRING=off") + else () + set(_disable_neon_extension "") + endif () -set(_patch_cmd PATCH_COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt.patched CMakeLists.txt) + set(_patch_cmd PATCH_COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt.patched CMakeLists.txt) -if (APPLE) - set(_patch_cmd ${_patch_cmd} && ${PATCH_CMD} ${CMAKE_CURRENT_LIST_DIR}/PNG.patch) -endif () + if (APPLE) + set(_patch_cmd ${_patch_cmd} && ${PATCH_CMD} ${CMAKE_CURRENT_LIST_DIR}/PNG.patch) + endif () -add_cmake_project(PNG - URL https://github.com/glennrp/libpng/archive/refs/tags/v1.6.35.zip - URL_HASH SHA256=3d22d46c566b1761a0e15ea397589b3a5f36ac09b7c785382e6470156c04247f - PATCH_COMMAND "${_patch_cmd}" - CMAKE_ARGS - -DPNG_SHARED=OFF - -DPNG_STATIC=ON - -DPNG_PREFIX=prusaslicer_ - -DPNG_TESTS=OFF - -DPNG_EXECUTABLES=OFF - ${_disable_neon_extension} -) + add_cmake_project(PNG + URL https://github.com/glennrp/libpng/archive/refs/tags/v1.6.35.zip + URL_HASH SHA256=3d22d46c566b1761a0e15ea397589b3a5f36ac09b7c785382e6470156c04247f + PATCH_COMMAND "${_patch_cmd}" + CMAKE_ARGS + -DPNG_SHARED=OFF + -DPNG_STATIC=ON + -DPNG_PREFIX=prusaslicer_ + -DPNG_TESTS=OFF + -DPNG_EXECUTABLES=OFF + ${_disable_neon_extension} + ) -set(DEP_PNG_DEPENDS ZLIB) + set(DEP_PNG_DEPENDS ZLIB) +endif() diff --git a/deps/+wxWidgets/webview.patch b/deps/+wxWidgets/webview.patch index 1c241c57b6..6b90377e44 100644 --- a/deps/+wxWidgets/webview.patch +++ b/deps/+wxWidgets/webview.patch @@ -11,5 +11,5 @@ diff -ur build.orig/cmake/lib/webview/CMakeLists.txt build/cmake/lib/webview/CMa - set(WEBVIEW2_SHA256 "6a34bb553e18cfac7297b4031f3eac2558e439f8d16a45945c22945ac404105d") + set(WEBVIEW2_SHA256 "805c79e05184fab18c9fe7b8ba820c598399b97adc1fbf5b0ea490efad91d5b8") - set(WEBVIEW2_DEFAULT_PACKAGE_DIR "${CMAKE_BINARY_DIR}/packages/Microsoft.Web.WebView2.${WEBVIEW2_VERSION}") + set(WEBVIEW2_DEFAULT_PACKAGE_DIR "${CMAKE_CURRENT_BINARY_DIR}/packages/Microsoft.Web.WebView2.${WEBVIEW2_VERSION}") diff --git a/deps/+wxWidgets/wxWidgets.cmake b/deps/+wxWidgets/wxWidgets.cmake index e09f3d9874..495f29f5e3 100644 --- a/deps/+wxWidgets/wxWidgets.cmake +++ b/deps/+wxWidgets/wxWidgets.cmake @@ -28,8 +28,8 @@ else () endif () add_cmake_project(wxWidgets - URL https://github.com/prusa3d/wxWidgets/archive/323a465e577e03f330e2e6a4c78e564d125340cb.zip - URL_HASH SHA256=B538E4AD3CC93117932F4DED70C476D6650F9C70A9D4055A08F3693864C47465 + URL https://github.com/prusa3d/wxWidgets/archive/5462e7d7cfac645926188443e842171e107b312c.zip + URL_HASH SHA256=3EBB971DDB45CEEA6D9B965C3D0266F44EDAE71F2A7DAA5D48DB34BD95AA878B PATCH_COMMAND COMMAND ${PATCH_CMD} ${CMAKE_CURRENT_LIST_DIR}/webview.patch CMAKE_ARGS "-DCMAKE_DEBUG_POSTFIX:STRING=" diff --git a/src/slic3r/GUI/PhysicalPrinterDialog.cpp b/src/slic3r/GUI/PhysicalPrinterDialog.cpp index 4ce61b3c9f..bb685f60e2 100644 --- a/src/slic3r/GUI/PhysicalPrinterDialog.cpp +++ b/src/slic3r/GUI/PhysicalPrinterDialog.cpp @@ -608,7 +608,8 @@ void PhysicalPrinterDialog::build_printhost_settings(ConfigOptionsGroup* m_optgr // Always fill in the "printhost_port" combo box from the config and select it. { Choice* choice = dynamic_cast(m_optgroup->get_field("printhost_port")); - choice->set_values({ m_config->opt_string("printhost_port") }); + const std::vector ports = { m_config->opt_string("printhost_port") }; + choice->set_values(ports); choice->set_selection(); } diff --git a/src/slic3r/GUI/Plater.cpp b/src/slic3r/GUI/Plater.cpp index d16005e327..62d0bf3608 100644 --- a/src/slic3r/GUI/Plater.cpp +++ b/src/slic3r/GUI/Plater.cpp @@ -4393,7 +4393,8 @@ 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()) { + const std::vector& input_paths = { into_path(filename) }; + if (! load_files(input_paths).empty()) { // At least one file was loaded. p->set_project_filename(filename); // Save the names of active presets and project specific config into ProjectDirtyStateManager.