1
0
Adrian Schröter 2019-06-14 07:58:58 +00:00 committed by Git OBS Bridge
parent 2743f79141
commit 4a2d4af9e2
4 changed files with 53 additions and 34 deletions

31
CuraEngine-gcc9.patch Normal file
View File

@ -0,0 +1,31 @@
--- src/layerPart.cpp.orig 2019-06-14 09:36:05.313574796 +0200
+++ src/layerPart.cpp 2019-06-14 09:38:09.608954136 +0200
@@ -49,7 +49,7 @@
{
const auto total_layers = slicer->layers.size();
assert(mesh.layers.size() == total_layers);
-#pragma omp parallel for default(none) shared(mesh, slicer) schedule(dynamic)
+#pragma omp parallel for default(none) shared(mesh, slicer, total_layers) schedule(dynamic)
for (unsigned int layer_nr = 0; layer_nr < total_layers; layer_nr++)
{
SliceLayer& layer_storage = mesh.layers[layer_nr];
--- src/support.cpp.orig 2019-06-14 09:36:05.317574905 +0200
+++ src/support.cpp 2019-06-14 09:45:31.129002024 +0200
@@ -854,7 +854,7 @@
const double tan_angle = tan(angle) - 0.01; // the XY-component of the supportAngle
xy_disallowed_per_layer[0] = storage.getLayerOutlines(0, false).offset(xy_distance);
// for all other layers (of non support meshes) compute the overhang area and possibly use that when calculating the support disallowed area
- #pragma omp parallel for default(none) shared(xy_disallowed_per_layer, storage, mesh) schedule(dynamic)
+ #pragma omp parallel for default(none) shared(xy_disallowed_per_layer, storage, mesh, layer_count, xy_distance_overhang, xy_distance, tan_angle, is_support_mesh_place_holder, use_xy_distance_overhang, z_distance_top) schedule(dynamic)
for (unsigned int layer_idx = 1; layer_idx < layer_count; layer_idx++)
{
Polygons outlines = storage.getLayerOutlines(layer_idx, false);
@@ -1054,7 +1054,7 @@
const int max_checking_layer_idx = std::min(static_cast<int>(storage.support.supportLayers.size())
, static_cast<int>(layer_count - (layer_z_distance_top - 1)));
const size_t max_checking_idx_size_t = std::max(0, max_checking_layer_idx);
-#pragma omp parallel for default(none) shared(support_areas, storage) schedule(dynamic)
+#pragma omp parallel for default(none) shared(support_areas, storage, layer_z_distance_top, max_checking_layer_idx, max_checking_idx_size_t) schedule(dynamic)
for (size_t layer_idx = 0; layer_idx < max_checking_idx_size_t; layer_idx++)
{
support_areas[layer_idx] = support_areas[layer_idx].difference(storage.getLayerOutlines(layer_idx + layer_z_distance_top - 1, false));

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Fri Jun 14 07:57:43 UTC 2019 - Adrian Schröter <adrian@suse.de>
- fix build with current libArcus
- fix build with gcc9
-------------------------------------------------------------------
Mon May 27 14:54:24 UTC 2019 - Adrian Schröter <adrian@suse.de>

View File

@ -26,7 +26,10 @@ Conflicts: cura-engine
Url: https://code.alephobjects.com/diffusion/CTE/cura-engine.git
Source0: CuraEngine-%{version}.tar.xz
Source1: CuraEngine.1
# X-OPENSUSE-PATCH fix-build.patch for new libArcus
Patch1: fix-build.patch
# PATCH-FIX-OPENSUSE CuraEngine-gcc9.patch loose based on a patch from fedora
Patch2: CuraEngine-gcc9.patch
%if 0%{?suse_version} < 1500
BuildRequires: gcc6-c++
#!BuildIgnore: libgcc_s1
@ -48,6 +51,7 @@ This is the LulzBot variation of the engine.
%prep
%setup -q -n CuraEngine-%version
%patch1 -p1
%patch2 -p0
%build
%if 0%{?suse_version} < 1500

View File

@ -1,40 +1,18 @@
diff --git a/tests/arcus/MockSocket.cpp b/tests/arcus/MockSocket.cpp
index 73cbb867..a72780e1 100644
--- a/tests/arcus/MockSocket.cpp
+++ b/tests/arcus/MockSocket.cpp
@@ -20,7 +20,7 @@ void MockSocket::sendMessage(Arcus::MessagePtr message)
sent_messages.push_back(message);
}
--- ./src/communication/ArcusCommunication.cpp.orig 2019-06-14 09:55:36.709514543 +0200
+++ ./src/communication/ArcusCommunication.cpp 2019-06-14 09:55:42.877682665 +0200
@@ -481,7 +481,7 @@
-Arcus::MessagePtr MockSocket::takeNextMessage()
+Arcus::MessagePtr MockSocket::takeNextMessage(bool)
void ArcusCommunication::sliceNext()
{
Arcus::MessagePtr result = received_messages.front();
received_messages.pop_front();
@@ -39,4 +39,4 @@ Arcus::MessagePtr MockSocket::popMessageFromSendQueue()
return result;
}
- const Arcus::MessagePtr message = private_data->socket->takeNextMessage(true);
+ const Arcus::MessagePtr message = private_data->socket->takeNextMessage();
-} //namespace cura
\ No newline at end of file
+} //namespace cura
diff --git a/tests/arcus/MockSocket.h b/tests/arcus/MockSocket.h
index 80370f49..f9e8050a 100644
--- a/tests/arcus/MockSocket.h
+++ b/tests/arcus/MockSocket.h
@@ -27,7 +27,7 @@ public:
//Catch these functions so that we can see whether they are called.
void sendMessage(Arcus::MessagePtr message) override;
- Arcus::MessagePtr takeNextMessage() override;
+ Arcus::MessagePtr takeNextMessage(bool) override;
//Helpers to store the sent and received messages.
void pushMessageToReceivedQueue(Arcus::MessagePtr message);
@@ -38,4 +38,4 @@ public:
//Handle the main Slice message.
const cura::proto::Slice* slice_message = dynamic_cast<cura::proto::Slice*>(message.get()); //See if the message is of the message type Slice. Returns nullptr otherwise.
@@ -535,4 +535,4 @@
} //namespace cura
-#endif //MOCKSOCKET_H
\ No newline at end of file
+#endif //MOCKSOCKET_H
-#endif //ARCUS
\ Kein Zeilenumbruch am Dateiende.
+#endif //ARCUS