Verified Commit 2436c537 authored by Clayton Craft's avatar Clayton Craft 🕺🏽
Browse files

testing/prusa-slicer: new aport

parent 025cacab
Pipeline #122157 failed with stages
in 7 minutes and 44 seconds
From 6ab517187fa5f3a8e2b87a59b6a50f26b3a49da6 Mon Sep 17 00:00:00 2001
From: Filip Sykala <filip.sykala@prusa3d.cz>
Date: Fri, 6 May 2022 13:37:35 +0200
Subject: [PATCH] Fix mismatch of data types. Separate checks.
---
tests/libslic3r/test_mutable_priority_queue.cpp | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/tests/libslic3r/test_mutable_priority_queue.cpp b/tests/libslic3r/test_mutable_priority_queue.cpp
index 40ed5a1586..3e99eef08a 100644
--- a/tests/libslic3r/test_mutable_priority_queue.cpp
+++ b/tests/libslic3r/test_mutable_priority_queue.cpp
@@ -343,7 +343,7 @@ TEST_CASE("Mutable priority queue - reshedule first", "[MutableSkipHeapPriorityQ
TEST_CASE("Mutable priority queue - first pop", "[MutableSkipHeapPriorityQueue]")
{
struct MyValue{
- int id;
+ size_t id;
float val;
};
size_t count = 50000;
@@ -356,15 +356,15 @@ TEST_CASE("Mutable priority queue - first pop", "[MutableSkipHeapPriorityQueue]"
[](MyValue &l, MyValue &r) { return l.val < r.val; });
q.reserve(count);
for (size_t id = 0; id < count; id++) {
- MyValue mv;
- mv.id = id;
- mv.val = rand();
+ MyValue mv{ id, rand()};
q.push(mv);
}
MyValue it = q.top(); // copy
q.pop();
- bool valid = (it.id != 0) && (idxs[0] < 3 * count);
- CHECK(valid);
+ // is valid id (no initial value default value)
+ CHECK(it.id != 0);
+ // is first item in queue valid value
+ CHECK(idxs[0] != std::numeric_limits<size_t>::max());
}
TEST_CASE("Mutable priority queue complex", "[MutableSkipHeapPriorityQueue]")
# Contributor: Clayton Craft <clayton@craftyguy.net>
# Maintainer: Clayton Craft <clayton@craftyguy.net>
pkgname=prusa-slicer
pkgver=2.4.2
pkgrel=0
pkgdesc="g-code generator for 3D printers"
url="https://github.com/prusa3d/PrusaSlicer"
arch="all !armhf !armv7 !ppc64le !s390x !x86 " # no openvdb
license="AGPL-3.0"
makedepends="
boost-dev
cereal
cgal-dev
cmake
curl-dev
dbus-dev
expat-dev
glew-dev
gmp-dev
ilmbase-dev
libpng-dev
libtbb-dev
mesa-dev
mpfr-dev
nlopt-dev
openvdb-dev
openvdb-tools
samurai
wxgtk3-dev
"
subpackages="$pkgname-doc"
source="
https://github.com/prusa3d/PrusaSlicer/archive/refs/tags/version_$pkgver.tar.gz
unistd.patch
use-namespaces-to-link-against-libcereal.patch
fix-buildbwith-boost-1.77.patch
6ab517187fa5f3a8e2b87a59b6a50f26b3a49da6.patch
"
builddir="$srcdir/PrusaSlicer-version_$pkgver"
build() {
if [ "$CBUILD" != "$CHOST" ]; then
CMAKE_CROSSOPTS="-DCMAKE_SYSTEM_NAME=Linux -DCMAKE_HOST_SYSTEM_NAME=Linux"
fi
cmake -B build -G Ninja \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib \
-DBUILD_SHARED_LIBS=True \
-DCMAKE_BUILD_TYPE=None \
-DSLIC3R_FHS=1 \
-DSLIC3R_GTK=3 \
-DSLIC3R_STATIC=0 \
-DSLIC3R_WX_STABLE=1 \
-DSLIC3R_PCH=0 \
-DwxWidgets_CONFIG_EXECUTABLE=$(which wx-config-gtk3) \
$CMAKE_CROSSOPTS .
cmake --build build
}
check() {
cd build
CTEST_OUTPUT_ON_FAILURE=TRUE ctest
}
package() {
DESTDIR="$pkgdir" ninja -C build install
}
sha512sums="
d480c608eadb58b53ee220317a749c0363db580759322ed7a9aebe2ea5c1acc30dbd3bdf9ed9849c23ba5c125ee6f923de6ac01987bf85abf7aeb3f91c2ae23f version_2.4.2.tar.gz
462d821f11d6dca97574fe1da7e22a924755a2fc1dc9df7bd295af3e9cf748b8649952baee5072cc97165f1a5f3d6c3089be08526bd296da95763715ceb42ecb unistd.patch
b9d44476278520d46687cadfaf14c3664f6f914a1620124ab49c0cdf4762dcd7941a6c5052e4798345e721d0490960f14ecd79c811f486601c54038a57eb6d93 use-namespaces-to-link-against-libcereal.patch
ccfc641cc5d458ebf7eca8aaa99c99fb866be27cd80bb82d413aea92749d0760b564702403623a6ee70aeeab7b87942d36356ddcf6edfba33ee71e9c13a6c862 fix-buildbwith-boost-1.77.patch
ec4bdd15b6b33a261e76345aa98cb4e88d8644f33c27e633bf3599b63c8863720ea8baa10c0eca2b3557ca405c5130f5414da79e1e844c11db4286ce3f537fe5 6ab517187fa5f3a8e2b87a59b6a50f26b3a49da6.patch
"
From 47284ec0228925ef0a6f7edc6a9ef588677ed146 Mon Sep 17 00:00:00 2001
From: Sam James <sam@gentoo.org>
Date: Sat, 28 Aug 2021 21:00:30 +0100
Subject: [PATCH] Fix build with Boost 1.77 (missing include)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
We're relying on boost::geometry so we need to include the "main"
header for it.
Fixes errors like:
error: ‘boost::geometry::strategy::disjoint’ has not been declared
Bug: https://bugs.gentoo.org/808771
---
src/libslic3r/SLA/Clustering.cpp | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/libslic3r/SLA/Clustering.cpp b/src/libslic3r/SLA/Clustering.cpp
index 41ff1d4f09..6d909951eb 100644
--- a/src/libslic3r/SLA/Clustering.cpp
+++ b/src/libslic3r/SLA/Clustering.cpp
@@ -1,4 +1,5 @@
#include "Clustering.hpp"
+#include "boost/geometry.hpp"
#include "boost/geometry/index/rtree.hpp"
#include <libslic3r/SLA/SpatIndex.hpp>
diff --git a/src/slic3r/Utils/Serial.cpp b/src/slic3r/Utils/Serial.cpp
index 4db1acc..8181065 100644
--- a/src/slic3r/Utils/Serial.cpp
+++ b/src/slic3r/Utils/Serial.cpp
@@ -45,7 +45,7 @@
#ifndef _WIN32
#include <sys/ioctl.h>
#include <sys/time.h>
- #include <sys/unistd.h>
+ #include <unistd.h>
#include <sys/select.h>
#endif
From ac486108bdc7ca0548b5d8bb696fa382d68d1801 Mon Sep 17 00:00:00 2001
From: Yuri D'Elia <wavexx@thregr.org>
Date: Mon, 24 Jan 2022 20:21:24 +0100
Subject: [PATCH] Use namespaces to link against libcereal >= 1.3.1
Create an alias for previous versions.
---
CMakeLists.txt | 3 +++
src/CMakeLists.txt | 2 +-
src/libslic3r/CMakeLists.txt | 2 +-
src/slic3r/CMakeLists.txt | 2 +-
4 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index a37e7a1b92..42d0693bc7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -474,6 +474,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 9e89e82f67..9adeb94eea 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -125,7 +125,7 @@ if (NOT WIN32 AND NOT APPLE)
set_target_properties(PrusaSlicer PROPERTIES OUTPUT_NAME "prusa-slicer")
endif ()
-target_link_libraries(PrusaSlicer libslic3r cereal)
+target_link_libraries(PrusaSlicer 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 99d010d9c7..2abb3ae5b4 100644
--- a/src/libslic3r/CMakeLists.txt
+++ b/src/libslic3r/CMakeLists.txt
@@ -337,7 +337,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 34cc980513..50c5fcabc4 100644
--- a/src/slic3r/CMakeLists.txt
+++ b/src/slic3r/CMakeLists.txt
@@ -260,7 +260,7 @@ add_library(libslic3r_gui STATIC ${SLIC3R_GUI_SOURCES})
encoding_check(libslic3r_gui)
-target_link_libraries(libslic3r_gui libslic3r avrdude cereal imgui GLEW::GLEW OpenGL::GL hidapi libcurl ${wxWidgets_LIBRARIES})
+target_link_libraries(libslic3r_gui libslic3r avrdude cereal::cereal imgui GLEW::GLEW OpenGL::GL hidapi libcurl ${wxWidgets_LIBRARIES})
if (MSVC)
target_link_libraries(libslic3r_gui Setupapi.lib)
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment