From d44631114fa609f08243d35e49ef3e7700f65e9b Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Wed, 3 Feb 2016 15:23:08 +0000 Subject: [PATCH 01/91] - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 54d2a0d..9818ded 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,6 +1,6 @@ Name: CuraEngine Version: 15.04 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3 URL: https://github.com/Ultimaker/%{name} @@ -44,6 +44,9 @@ make test %{_bindir}/%{name} %changelog +* Wed Feb 03 2016 Fedora Release Engineering - 15.04-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + * Mon Jul 06 2015 Miro Hrončok - 15.04-2 - Set the VERSION variable From ee86800e1df2dbf7b03797d5c8d8b06dd0e2926e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Sun, 18 Sep 2016 12:39:39 +0200 Subject: [PATCH 02/91] Rebuilt for new polyclipping (#1159525) --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 9818ded..03fa636 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,6 +1,6 @@ Name: CuraEngine Version: 15.04 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3 URL: https://github.com/Ultimaker/%{name} @@ -44,6 +44,9 @@ make test %{_bindir}/%{name} %changelog +* Sun Sep 18 2016 Miro Hrončok - 15.04-4 +- Rebuilt for new polyclipping (#1159525) + * Wed Feb 03 2016 Fedora Release Engineering - 15.04-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild From 605b1831eeead456377eb53ad5053ec9454b20bb Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 10 Feb 2017 05:03:00 +0000 Subject: [PATCH 03/91] - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 03fa636..5c4e24f 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,6 +1,6 @@ Name: CuraEngine Version: 15.04 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3 URL: https://github.com/Ultimaker/%{name} @@ -44,6 +44,9 @@ make test %{_bindir}/%{name} %changelog +* Fri Feb 10 2017 Fedora Release Engineering - 15.04-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + * Sun Sep 18 2016 Miro Hrončok - 15.04-4 - Rebuilt for new polyclipping (#1159525) From 99053fc8abd2fa4ec52c0fc54379c34261227ecc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Wed, 3 May 2017 14:20:03 +0200 Subject: [PATCH 04/91] Major update to CuraEngine 2.x --- .gitignore | 1 + CuraEngine-rpath.patch | 25 ++++++++++++++ CuraEngine-static-libstdcpp.patch | 27 +++++++++++++++ CuraEngine-system-libs.patch | 36 ++++++++++++++++++++ CuraEngine.spec | 55 +++++++++++++++++++------------ sources | 2 +- 6 files changed, 124 insertions(+), 22 deletions(-) create mode 100644 CuraEngine-rpath.patch create mode 100644 CuraEngine-static-libstdcpp.patch create mode 100644 CuraEngine-system-libs.patch diff --git a/.gitignore b/.gitignore index f8756c7..215a64a 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ /14.03.tar.gz /14.12.1.tar.gz /15.04.tar.gz +/CuraEngine-2.5.0.tar.gz diff --git a/CuraEngine-rpath.patch b/CuraEngine-rpath.patch new file mode 100644 index 0000000..0b58acb --- /dev/null +++ b/CuraEngine-rpath.patch @@ -0,0 +1,25 @@ +From c9ee5ceb2fb3e25c7c58e2f988f66f91e6fdad37 Mon Sep 17 00:00:00 2001 +From: rpm-build +Date: Wed, 3 May 2017 14:00:36 +0200 +Subject: [PATCH 1/3] Do not RPATH + +--- + CMakeLists.txt | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index c2316d6..1ec537d 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -21,8 +21,6 @@ if(APPLE AND CMAKE_CXX_COMPILER_ID MATCHES "Clang") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -stdlib=libc++") + endif() + +-set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib") +- + set(CURA_ENGINE_VERSION "master" CACHE STRING "Version name of Cura") + + option(BUILD_TESTS OFF) +-- +2.11.0 + diff --git a/CuraEngine-static-libstdcpp.patch b/CuraEngine-static-libstdcpp.patch new file mode 100644 index 0000000..273016f --- /dev/null +++ b/CuraEngine-static-libstdcpp.patch @@ -0,0 +1,27 @@ +From d79be0eb0e0e27e70b709b043b4085cda007beed Mon Sep 17 00:00:00 2001 +From: rpm-build +Date: Wed, 3 May 2017 14:02:04 +0200 +Subject: [PATCH 2/3] Don't use -static-libstdc++ + +--- + CMakeLists.txt | 4 ---- + 1 file changed, 4 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 1ec537d..bc5cf85 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -36,10 +36,6 @@ endif() + # Add warnings + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall") + +-if(NOT APPLE AND NOT WIN32) +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -static-libstdc++") +-endif() +- + option (ENABLE_OPENMP + "Use OpenMP for parallel code" ON) + +-- +2.11.0 + diff --git a/CuraEngine-system-libs.patch b/CuraEngine-system-libs.patch new file mode 100644 index 0000000..eb2d986 --- /dev/null +++ b/CuraEngine-system-libs.patch @@ -0,0 +1,36 @@ +From 62ce7cbc96a52723e11adfda848211e03f6733ba Mon Sep 17 00:00:00 2001 +From: rpm-build +Date: Wed, 3 May 2017 14:04:17 +0200 +Subject: [PATCH 3/3] System libs + +--- + CMakeLists.txt | 6 ++---- + 1 file changed, 2 insertions(+), 4 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index bc5cf85..07e4c41 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -46,9 +46,7 @@ if (ENABLE_OPENMP) + endif() + endif() + +-include_directories(${CMAKE_CURRENT_BINARY_DIR} libs) +- +-add_library(clipper STATIC libs/clipper/clipper.cpp) ++include_directories(${CMAKE_CURRENT_BINARY_DIR}) + + set(engine_SRCS # Except main.cpp. + src/bridge.cpp +@@ -136,7 +134,7 @@ endif () + + # Compiling CuraEngine itself. + add_library(_CuraEngine ${engine_SRCS} ${engine_PB_SRCS}) #First compile all of CuraEngine as library, allowing this to be re-used for tests. +-target_link_libraries(_CuraEngine clipper) ++target_link_libraries(_CuraEngine polyclipping) + if (ENABLE_ARCUS) + target_link_libraries(_CuraEngine Arcus) + endif () +-- +2.11.0 + diff --git a/CuraEngine.spec b/CuraEngine.spec index 5c4e24f..e8f1407 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,13 +1,21 @@ Name: CuraEngine -Version: 15.04 -Release: 5%{?dist} +Version: 2.5.0 +Epoch: 1 +Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers -License: AGPLv3 +License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} -Source0: %{url}/archive/%{version}.tar.gz +Source0: %{url}/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz +BuildRequires: libarcus-devel == %{version} BuildRequires: polyclipping-devel >= 6.1.2 -# For tests: -BuildRequires: python +BuildRequires: protobuf-devel +BuildRequires: rapidjson-devel +BuildRequires: cmake +BuildRequires: git + +Patch0: %{name}-rpath.patch +Patch1: %{name}-static-libstdcpp.patch +Patch2: %{name}-system-libs.patch %description %{name} is a C++ console application for 3D printing G-code generation. It @@ -17,35 +25,40 @@ This is just a console application for G-code generation. For a full graphical application look at cura with is the graphical frontend for %{name}. %prep -%setup -q +%autosetup -p1 -S git -# bundled clipper -rm -rf clipper -sed -i 's|#include |#include |' src/utils/*.h -sed -i 's|-lclipper|-lpolyclipping|g' Makefile -sed -i 's| $(BUILD_DIR)/libclipper.a||g' Makefile - -# allow redefinition of CFLAGS and do not build it static -sed -i 's|CFLAGS +=|CFLAGS?=|' Makefile -sed -i 's|--static||g' Makefile +# bundled libraries +rm -rf libs +sed -i 's|#include |#include |' src/utils/*.h src/*.cpp +# The -DCURA_ENGINE_VERSION does not work, so we sed-change the default value +sed -i 's/"DEV"/"%{version}"/' src/settings/settings.h %build -CFLAGS='-I. -Ilibs -c %{optflags} -std=c++11 -fomit-frame-pointer -DVERSION=\"%{version}\"' make %{?_smp_mflags} +%{cmake} -DBUILD_SHARED_LIBS:BOOL=OFF -DCURA_ENGINE_VERSION:STRING=%{version} . # The lib is only intermediate +make %{?_smp_mflags} + %install -install -Dpm0755 build/%{name} %{buildroot}/%{_bindir}/%{name} +make install DESTDIR=%{buildroot} + %check -make test +# Smoke test +%{buildroot}%{_bindir}/%{name} help %files %doc LICENSE README.md %{_bindir}/%{name} %changelog -* Fri Feb 10 2017 Fedora Release Engineering - 15.04-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild +* Wed May 03 2017 Miro Hrončok - 1:2.5.0-1 +- Updated to 2.5.0 + +* Sun Dec 04 2016 Miro Hrončok - 1:2.3.1-1 +- New version scheme -> Introduce Epoch +- Updated +- SPEC rewritten * Sun Sep 18 2016 Miro Hrončok - 15.04-4 - Rebuilt for new polyclipping (#1159525) diff --git a/sources b/sources index 526318d..e21ad6a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -75d34492ca18358aa554a56afb2de440 15.04.tar.gz +SHA512 (CuraEngine-2.5.0.tar.gz) = 8ba62d3ae3c0744b26f7472259ab6eafeff6448e2f4efa24a31721e0814513654489e74566395d4f2a8be2c673c8a9db8427f9cbe3717597fe7c55f2c02860cb From b0e37f3b2e93a17307ccc07ebaf7d21b0a4e0c99 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Wed, 14 Jun 2017 11:51:37 +0200 Subject: [PATCH 05/91] Rebuilt for new protobuf 3.3.1 --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index e8f1407..d525be2 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Version: 2.5.0 Epoch: 1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -52,6 +52,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Wed Jun 14 2017 Miro Hrončok - 1:2.5.0-2 +- Rebuilt for new protobuf 3.3.1 + * Wed May 03 2017 Miro Hrončok - 1:2.5.0-1 - Updated to 2.5.0 From bcc0d9bbcb118ccdbbd003242074c3f942c03a81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Tue, 27 Jun 2017 16:24:19 +0200 Subject: [PATCH 06/91] Updated to 2.6.0 --- .gitignore | 1 + CuraEngine.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 215a64a..f8a3f05 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ /14.12.1.tar.gz /15.04.tar.gz /CuraEngine-2.5.0.tar.gz +/CuraEngine-2.6.0.tar.gz diff --git a/CuraEngine.spec b/CuraEngine.spec index d525be2..415e5af 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine -Version: 2.5.0 Epoch: 1 -Release: 2%{?dist} +Version: 2.6.0 +Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -52,6 +52,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Tue Jun 27 2017 Miro Hrončok - 1:2.6.0-1 +- Updated to 2.6.0 + * Wed Jun 14 2017 Miro Hrončok - 1:2.5.0-2 - Rebuilt for new protobuf 3.3.1 diff --git a/sources b/sources index e21ad6a..a0b409f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (CuraEngine-2.5.0.tar.gz) = 8ba62d3ae3c0744b26f7472259ab6eafeff6448e2f4efa24a31721e0814513654489e74566395d4f2a8be2c673c8a9db8427f9cbe3717597fe7c55f2c02860cb +SHA512 (CuraEngine-2.6.0.tar.gz) = 3991127ba3005b93f02ab72fd6c9208b153d5419145edb84f187e1fa32d03220001d8be958847360f7eaa75336ed44f3f7158cedea82d33450992145dfd0a0d9 From 9baa2795e01643435d1a7aa2ff3a89456104aa9b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Wed, 28 Jun 2017 16:03:41 +0200 Subject: [PATCH 07/91] Updated to 2.6.1 --- .gitignore | 1 + CuraEngine.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index f8a3f05..d7829c6 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,4 @@ /15.04.tar.gz /CuraEngine-2.5.0.tar.gz /CuraEngine-2.6.0.tar.gz +/CuraEngine-2.6.1.tar.gz diff --git a/CuraEngine.spec b/CuraEngine.spec index 415e5af..d1f20ba 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,6 +1,6 @@ Name: CuraEngine Epoch: 1 -Version: 2.6.0 +Version: 2.6.1 Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ @@ -52,6 +52,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Wed Jun 28 2017 Miro Hrončok - 1:2.6.1-1 +- Updated to 2.6.1 + * Tue Jun 27 2017 Miro Hrončok - 1:2.6.0-1 - Updated to 2.6.0 diff --git a/sources b/sources index a0b409f..81719b3 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (CuraEngine-2.6.0.tar.gz) = 3991127ba3005b93f02ab72fd6c9208b153d5419145edb84f187e1fa32d03220001d8be958847360f7eaa75336ed44f3f7158cedea82d33450992145dfd0a0d9 +SHA512 (CuraEngine-2.6.1.tar.gz) = b89815903e011daab23537794387dda8ef5cf7faff11d801e3c73a7c54411ac33bdcfa9942f478a1466abdbd84c4d936114c0e81635a4c5a9f83b68f3628788a From 935be27d641cd7c8d425b30f7cb2da7f7194b632 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 26 Jul 2017 01:43:27 +0000 Subject: [PATCH 08/91] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index d1f20ba..78bc55f 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 2.6.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -52,6 +52,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Wed Jul 26 2017 Fedora Release Engineering - 1:2.6.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + * Wed Jun 28 2017 Miro Hrončok - 1:2.6.1-1 - Updated to 2.6.1 From 9820e7d0de142823b9859ff60b13f2051bb8ff15 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 2 Aug 2017 16:51:11 +0000 Subject: [PATCH 09/91] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 78bc55f..e9f9a01 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 2.6.1 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -52,6 +52,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Wed Aug 02 2017 Fedora Release Engineering - 1:2.6.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + * Wed Jul 26 2017 Fedora Release Engineering - 1:2.6.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild From f947512b0461b5240f052c26c2174d2d6cc2b5ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Wed, 30 Aug 2017 17:00:41 +0200 Subject: [PATCH 10/91] Update to 2.7.0 --- .gitignore | 1 + CuraEngine.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index d7829c6..e9bbd2e 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ /CuraEngine-2.5.0.tar.gz /CuraEngine-2.6.0.tar.gz /CuraEngine-2.6.1.tar.gz +/CuraEngine-2.7.0.tar.gz diff --git a/CuraEngine.spec b/CuraEngine.spec index e9f9a01..8d72f21 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 -Version: 2.6.1 -Release: 3%{?dist} +Version: 2.7.0 +Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -52,6 +52,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Wed Aug 30 2017 Miro Hrončok - 1:2.7.0-1 +- Update to 2.7.0 + * Wed Aug 02 2017 Fedora Release Engineering - 1:2.6.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild diff --git a/sources b/sources index 81719b3..ced5df4 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (CuraEngine-2.6.1.tar.gz) = b89815903e011daab23537794387dda8ef5cf7faff11d801e3c73a7c54411ac33bdcfa9942f478a1466abdbd84c4d936114c0e81635a4c5a9f83b68f3628788a +SHA512 (CuraEngine-2.7.0.tar.gz) = f33e1a265fe62a43f9f9ef82d526f02d15175f984886d984bfc1ab20d5625b025dd0262ddf8bc2d8cad96760062a5cfe9bfdabf90201cc5e0361febfb74eae1c From f46646d22e51d245f2d934428a34d38eeee83495 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Mon, 23 Oct 2017 13:48:25 +0200 Subject: [PATCH 11/91] Updated to 3.0.3 --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 8d72f21..4f6e372 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,6 +1,6 @@ Name: CuraEngine Epoch: 1 -Version: 2.7.0 +Version: 3.0.3 Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ @@ -52,6 +52,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Mon Oct 23 2017 Miro Hrončok - 1:3.0.3-1 +- Updated to 3.0.3 + * Wed Aug 30 2017 Miro Hrončok - 1:2.7.0-1 - Update to 2.7.0 From 07c4b6a69b68bb76a99e0f844910d8e970ad8b1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Mon, 23 Oct 2017 13:51:43 +0200 Subject: [PATCH 12/91] Sources for 3.0.3 --- .gitignore | 1 + sources | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index e9bbd2e..aa67ae6 100644 --- a/.gitignore +++ b/.gitignore @@ -8,3 +8,4 @@ /CuraEngine-2.6.0.tar.gz /CuraEngine-2.6.1.tar.gz /CuraEngine-2.7.0.tar.gz +/CuraEngine-3.0.3.tar.gz diff --git a/sources b/sources index ced5df4..b50b2c6 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (CuraEngine-2.7.0.tar.gz) = f33e1a265fe62a43f9f9ef82d526f02d15175f984886d984bfc1ab20d5625b025dd0262ddf8bc2d8cad96760062a5cfe9bfdabf90201cc5e0361febfb74eae1c +SHA512 (CuraEngine-3.0.3.tar.gz) = dc10e96919957a75bd7c694f2e5e8d085378b1d3b2da2224af9e931f5953d2def0caa4301a0255f8b34576293e5e733cd3aaedd538d0eec15cc2444819878836 From 957a13b36904675cead387b657ff502b62e3dddc Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Mon, 13 Nov 2017 23:27:41 +0100 Subject: [PATCH 13/91] Rebuild for protobuf 3.4 Signed-off-by: Igor Gnatenko --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 4f6e372..0ad54e8 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 3.0.3 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -52,6 +52,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Mon Nov 13 2017 Igor Gnatenko - 1:3.0.3-2 +- Rebuild for protobuf 3.4 + * Mon Oct 23 2017 Miro Hrončok - 1:3.0.3-1 - Updated to 3.0.3 From bb26ed56764fba51b2b168d058746930466aa352 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Wed, 29 Nov 2017 12:08:23 +0100 Subject: [PATCH 14/91] Rebuild for protobuf 3.5 Signed-off-by: Igor Gnatenko --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 0ad54e8..af6de12 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 3.0.3 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -52,6 +52,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Wed Nov 29 2017 Igor Gnatenko - 1:3.0.3-3 +- Rebuild for protobuf 3.5 + * Mon Nov 13 2017 Igor Gnatenko - 1:3.0.3-2 - Rebuild for protobuf 3.4 From 6035995f9c1b9987c8ed5f1309b8f5cfadffdb2a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Sun, 10 Dec 2017 13:03:31 +0100 Subject: [PATCH 15/91] Updated to 3.1.0 --- .gitignore | 1 + CuraEngine-rpath.patch | 23 +++++++++++------------ CuraEngine.spec | 7 +++++-- sources | 2 +- 4 files changed, 18 insertions(+), 15 deletions(-) diff --git a/.gitignore b/.gitignore index aa67ae6..cb80cab 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ /CuraEngine-2.6.1.tar.gz /CuraEngine-2.7.0.tar.gz /CuraEngine-3.0.3.tar.gz +/CuraEngine-3.1.0.tar.gz diff --git a/CuraEngine-rpath.patch b/CuraEngine-rpath.patch index 0b58acb..380477e 100644 --- a/CuraEngine-rpath.patch +++ b/CuraEngine-rpath.patch @@ -1,25 +1,24 @@ -From c9ee5ceb2fb3e25c7c58e2f988f66f91e6fdad37 Mon Sep 17 00:00:00 2001 +From ca21643c4a077f5d7dbc9f71c615a4cda8fd2226 Mon Sep 17 00:00:00 2001 From: rpm-build -Date: Wed, 3 May 2017 14:00:36 +0200 -Subject: [PATCH 1/3] Do not RPATH +Date: Sun, 10 Dec 2017 12:51:57 +0100 +Subject: [PATCH 1/3] CuraEngine-rpath.patch --- - CMakeLists.txt | 2 -- - 1 file changed, 2 deletions(-) + CMakeLists.txt | 1 - + 1 file changed, 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt -index c2316d6..1ec537d 100644 +index 5b7100c..3a74350 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -21,8 +21,6 @@ if(APPLE AND CMAKE_CXX_COMPILER_ID MATCHES "Clang") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -stdlib=libc++") +@@ -24,7 +24,6 @@ endif() + if(NOT DEFINED LIB_SUFFIX) + set(LIB_SUFFIX "") endif() +-set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}") --set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib") -- set(CURA_ENGINE_VERSION "master" CACHE STRING "Version name of Cura") - option(BUILD_TESTS OFF) -- -2.11.0 +2.14.3 diff --git a/CuraEngine.spec b/CuraEngine.spec index af6de12..92cf2df 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 -Version: 3.0.3 -Release: 3%{?dist} +Version: 3.1.0 +Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -52,6 +52,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Sun Dec 10 2017 Miro Hrončok - 1:3.1.0-1 +- Updated to 3.1.0 + * Wed Nov 29 2017 Igor Gnatenko - 1:3.0.3-3 - Rebuild for protobuf 3.5 diff --git a/sources b/sources index b50b2c6..2846908 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (CuraEngine-3.0.3.tar.gz) = dc10e96919957a75bd7c694f2e5e8d085378b1d3b2da2224af9e931f5953d2def0caa4301a0255f8b34576293e5e733cd3aaedd538d0eec15cc2444819878836 +SHA512 (CuraEngine-3.1.0.tar.gz) = 2bb99293bf1a501a2d8d693ab66138b16b01c8e2fdcf3d423e2088022b389f81c83c41c7f47191ac7b53ffaa7fde74f09aa51c7d1929fa8cab5e3e1d947417c9 From ca15e80a54981bf0f4d6edd41abdd1a25ddc3a55 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 7 Feb 2018 00:31:13 +0000 Subject: [PATCH 16/91] - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 92cf2df..4179711 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 3.1.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -52,6 +52,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Wed Feb 07 2018 Fedora Release Engineering - 1:3.1.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + * Sun Dec 10 2017 Miro Hrončok - 1:3.1.0-1 - Updated to 3.1.0 From 3f635172a6baf9c19499f0aa962eee734232a454 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Tue, 20 Mar 2018 00:49:17 +0100 Subject: [PATCH 17/91] Updated to 3.2.1 --- .gitignore | 1 + CuraEngine-static-libstdcpp.patch | 11 ++++------- CuraEngine.spec | 7 +++++-- sources | 2 +- 4 files changed, 11 insertions(+), 10 deletions(-) diff --git a/.gitignore b/.gitignore index cb80cab..8c78ca2 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,4 @@ /CuraEngine-2.7.0.tar.gz /CuraEngine-3.0.3.tar.gz /CuraEngine-3.1.0.tar.gz +/CuraEngine-3.2.1.tar.gz diff --git a/CuraEngine-static-libstdcpp.patch b/CuraEngine-static-libstdcpp.patch index 273016f..219f11e 100644 --- a/CuraEngine-static-libstdcpp.patch +++ b/CuraEngine-static-libstdcpp.patch @@ -8,12 +8,12 @@ Subject: [PATCH 2/3] Don't use -static-libstdc++ 1 file changed, 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt -index 1ec537d..bc5cf85 100644 +index f2907bd..4b45997 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -36,10 +36,6 @@ endif() - # Add warnings - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall") +@@ -47,10 +47,6 @@ if (ENABLE_MORE_COMPILER_OPTIMIZATION_FLAGS) + set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS} -Ofast -funroll-loops") + endif () -if(NOT APPLE AND NOT WIN32) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -static-libstdc++") @@ -22,6 +22,3 @@ index 1ec537d..bc5cf85 100644 option (ENABLE_OPENMP "Use OpenMP for parallel code" ON) --- -2.11.0 - diff --git a/CuraEngine.spec b/CuraEngine.spec index 4179711..310624c 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 -Version: 3.1.0 -Release: 2%{?dist} +Version: 3.2.1 +Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -52,6 +52,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Mon Mar 19 2018 Miro Hrončok - 1:3.2.1-1 +- Updated to 3.2.1 + * Wed Feb 07 2018 Fedora Release Engineering - 1:3.1.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild diff --git a/sources b/sources index 2846908..d83a80a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (CuraEngine-3.1.0.tar.gz) = 2bb99293bf1a501a2d8d693ab66138b16b01c8e2fdcf3d423e2088022b389f81c83c41c7f47191ac7b53ffaa7fde74f09aa51c7d1929fa8cab5e3e1d947417c9 +SHA512 (CuraEngine-3.2.1.tar.gz) = bb956fe7f143be75e1b6df8375e3fc7c3dcc29a2d557d7ac017d3d25f269da5bf200676c2c296f4dfa12b6888a142350f72ec252ae7ae33aea990abcb31868b9 From 8eef9f9e6855f6e7f09825482a7ab5520bc8cf45 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Wed, 2 May 2018 15:42:38 +0200 Subject: [PATCH 18/91] Updated to 3.3.0, use CXXFLAGS --- .gitignore | 1 + CuraEngine-system-libs.patch | 36 ------------------------------------ CuraEngine.spec | 11 +++++++---- sources | 2 +- 4 files changed, 9 insertions(+), 41 deletions(-) delete mode 100644 CuraEngine-system-libs.patch diff --git a/.gitignore b/.gitignore index 8c78ca2..e816ddb 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,4 @@ /CuraEngine-3.0.3.tar.gz /CuraEngine-3.1.0.tar.gz /CuraEngine-3.2.1.tar.gz +/CuraEngine-3.3.0.tar.gz diff --git a/CuraEngine-system-libs.patch b/CuraEngine-system-libs.patch deleted file mode 100644 index eb2d986..0000000 --- a/CuraEngine-system-libs.patch +++ /dev/null @@ -1,36 +0,0 @@ -From 62ce7cbc96a52723e11adfda848211e03f6733ba Mon Sep 17 00:00:00 2001 -From: rpm-build -Date: Wed, 3 May 2017 14:04:17 +0200 -Subject: [PATCH 3/3] System libs - ---- - CMakeLists.txt | 6 ++---- - 1 file changed, 2 insertions(+), 4 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index bc5cf85..07e4c41 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -46,9 +46,7 @@ if (ENABLE_OPENMP) - endif() - endif() - --include_directories(${CMAKE_CURRENT_BINARY_DIR} libs) -- --add_library(clipper STATIC libs/clipper/clipper.cpp) -+include_directories(${CMAKE_CURRENT_BINARY_DIR}) - - set(engine_SRCS # Except main.cpp. - src/bridge.cpp -@@ -136,7 +134,7 @@ endif () - - # Compiling CuraEngine itself. - add_library(_CuraEngine ${engine_SRCS} ${engine_PB_SRCS}) #First compile all of CuraEngine as library, allowing this to be re-used for tests. --target_link_libraries(_CuraEngine clipper) -+target_link_libraries(_CuraEngine polyclipping) - if (ENABLE_ARCUS) - target_link_libraries(_CuraEngine Arcus) - endif () --- -2.11.0 - diff --git a/CuraEngine.spec b/CuraEngine.spec index 310624c..c835e2b 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,6 +1,6 @@ Name: CuraEngine Epoch: 1 -Version: 3.2.1 +Version: 3.3.0 Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ @@ -15,7 +15,6 @@ BuildRequires: git Patch0: %{name}-rpath.patch Patch1: %{name}-static-libstdcpp.patch -Patch2: %{name}-system-libs.patch %description %{name} is a C++ console application for 3D printing G-code generation. It @@ -29,13 +28,12 @@ application look at cura with is the graphical frontend for %{name}. # bundled libraries rm -rf libs -sed -i 's|#include |#include |' src/utils/*.h src/*.cpp # The -DCURA_ENGINE_VERSION does not work, so we sed-change the default value sed -i 's/"DEV"/"%{version}"/' src/settings/settings.h %build -%{cmake} -DBUILD_SHARED_LIBS:BOOL=OFF -DCURA_ENGINE_VERSION:STRING=%{version} . # The lib is only intermediate +%{cmake} -DBUILD_SHARED_LIBS:BOOL=OFF -DCURA_ENGINE_VERSION:STRING=%{version} -DUSE_SYSTEM_LIBS:BOOL=ON -DCMAKE_CXX_FLAGS_RELEASE_INIT:STRING="%{optflags} -fPIC" . make %{?_smp_mflags} @@ -52,6 +50,11 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Wed May 02 2018 Miro Hrončok - 1:3.3.0-1 +- Updated to 3.3.0 +- Make sure Fedora CXXFLAGS are used, also -fPIC +- Use new USE_SYSTEM_LIBS option instead of patch+sed + * Mon Mar 19 2018 Miro Hrončok - 1:3.2.1-1 - Updated to 3.2.1 diff --git a/sources b/sources index d83a80a..bdc87dc 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (CuraEngine-3.2.1.tar.gz) = bb956fe7f143be75e1b6df8375e3fc7c3dcc29a2d557d7ac017d3d25f269da5bf200676c2c296f4dfa12b6888a142350f72ec252ae7ae33aea990abcb31868b9 +SHA512 (CuraEngine-3.3.0.tar.gz) = 14b1961c90ec8ecad6fadfb992b72a4e05f3fa6c9a7b580812f90410c655db9d5798d46aa17311c216631daae1c21f6255c6fc4a0d903a91091e0a7a63642f70 From 2b1fe418f44180f514f01232cc5bf0dfb68eb241 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Mon, 9 Jul 2018 19:06:43 +0200 Subject: [PATCH 19/91] add BuildRequires: gcc-c++,gcc Reference: https://fedoraproject.org/wiki/Changes/Remove_GCC_from_BuildRoot --- CuraEngine.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CuraEngine.spec b/CuraEngine.spec index c835e2b..a38b996 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -6,6 +6,8 @@ Summary: Engine for processing 3D models into G-code instructions for 3D License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} Source0: %{url}/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz +BuildRequires: gcc +BuildRequires: gcc-c++ BuildRequires: libarcus-devel == %{version} BuildRequires: polyclipping-devel >= 6.1.2 BuildRequires: protobuf-devel From ba1a791356983e7fe48bf9e0df989272926ad4c3 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 12 Jul 2018 18:58:31 +0000 Subject: [PATCH 20/91] - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index a38b996..99349e5 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 3.3.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -52,6 +52,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Thu Jul 12 2018 Fedora Release Engineering - 1:3.3.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + * Wed May 02 2018 Miro Hrončok - 1:3.3.0-1 - Updated to 3.3.0 - Make sure Fedora CXXFLAGS are used, also -fPIC From c63a010cb30b73babd577307d60f73f6b1f855d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Tue, 28 Aug 2018 16:46:21 +0200 Subject: [PATCH 21/91] Update to 3.4.1 --- .gitignore | 2 ++ CuraEngine-3.4.1-no-resource-dir.patch | 16 ++++++++++++++++ CuraEngine.spec | 20 +++++++++++++++++--- sources | 3 ++- 4 files changed, 37 insertions(+), 4 deletions(-) create mode 100644 CuraEngine-3.4.1-no-resource-dir.patch diff --git a/.gitignore b/.gitignore index e816ddb..7e8ee2f 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,5 @@ /CuraEngine-3.1.0.tar.gz /CuraEngine-3.2.1.tar.gz /CuraEngine-3.3.0.tar.gz +/CuraEngine-3.4.1.tar.gz +/e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz diff --git a/CuraEngine-3.4.1-no-resource-dir.patch b/CuraEngine-3.4.1-no-resource-dir.patch new file mode 100644 index 0000000..8e5cad3 --- /dev/null +++ b/CuraEngine-3.4.1-no-resource-dir.patch @@ -0,0 +1,16 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index dc36e30..ba82f32 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -246,11 +246,6 @@ if (BUILD_TESTS) + endforeach() + endif() + +- +-add_custom_command(TARGET CuraEngine POST_BUILD +- COMMAND ${CMAKE_COMMAND} -E copy_directory +- ${CMAKE_SOURCE_DIR}/resources $) +- + # Installing CuraEngine. + include(GNUInstallDirs) + install(TARGETS CuraEngine DESTINATION ${CMAKE_INSTALL_BINDIR}) diff --git a/CuraEngine.spec b/CuraEngine.spec index 99349e5..f25d443 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,11 +1,18 @@ Name: CuraEngine Epoch: 1 -Version: 3.3.0 -Release: 2%{?dist} +Version: 3.4.1 +Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} Source0: %{url}/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz + +# The cmake stuff would attempt to git clone this: +# TODO package on it's own +%global stb_commit e6afb9cbae4064da8c3e69af3ff5c4629579c1d2 +Source1: https://github.com/nothings/stb/archive/%{stb_commit}.tar.gz +Provides: bundled(stb) = %stb_commit + BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: libarcus-devel == %{version} @@ -18,6 +25,9 @@ BuildRequires: git Patch0: %{name}-rpath.patch Patch1: %{name}-static-libstdcpp.patch +# A weird part of cmake stuff that does not work at all, not present in upstream master +Patch2: %{name}-3.4.1-no-resource-dir.patch + %description %{name} is a C++ console application for 3D printing G-code generation. It has been made as a better and faster alternative to the old Skeinforge engine. @@ -27,6 +37,7 @@ application look at cura with is the graphical frontend for %{name}. %prep %autosetup -p1 -S git +tar -xf %{SOURCE1} # bundled libraries rm -rf libs @@ -35,7 +46,7 @@ rm -rf libs sed -i 's/"DEV"/"%{version}"/' src/settings/settings.h %build -%{cmake} -DBUILD_SHARED_LIBS:BOOL=OFF -DCURA_ENGINE_VERSION:STRING=%{version} -DUSE_SYSTEM_LIBS:BOOL=ON -DCMAKE_CXX_FLAGS_RELEASE_INIT:STRING="%{optflags} -fPIC" . +%{cmake} -DBUILD_SHARED_LIBS:BOOL=OFF -DCURA_ENGINE_VERSION:STRING=%{version} -DUSE_SYSTEM_LIBS:BOOL=ON -DCMAKE_CXX_FLAGS_RELEASE_INIT:STRING="%{optflags} -fPIC" -DStb_INCLUDE_DIRS:PATH=./stb-%{stb_commit} . make %{?_smp_mflags} @@ -52,6 +63,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Tue Aug 28 2018 Miro Hrončok - 1:3.4.1-1 +- Update to 3.4.1 + * Thu Jul 12 2018 Fedora Release Engineering - 1:3.3.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild diff --git a/sources b/sources index bdc87dc..6e08fd9 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ -SHA512 (CuraEngine-3.3.0.tar.gz) = 14b1961c90ec8ecad6fadfb992b72a4e05f3fa6c9a7b580812f90410c655db9d5798d46aa17311c216631daae1c21f6255c6fc4a0d903a91091e0a7a63642f70 +SHA512 (CuraEngine-3.4.1.tar.gz) = 51c75e299ef7728101a4c61aa033c9b07112b0955d2ec72ba6173684513ed3c503a744fab487efe2c19da01eb97bd1297b5b8724b4f767639c8e82eefcdd01be +SHA512 (e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz) = 232ef301d4d6c82c7c5f0e4234b9160cc815f3b6bcc35d341cdf8738646f2f0887ee9838680699f4c9f4274b1390036b2c4fb3ebc2d663af8ff888114dc9f04b From e95476edb9d463545bf823b81490d615438404c3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Tue, 28 Aug 2018 23:02:28 +0200 Subject: [PATCH 22/91] Switch to upstream commit for the no-resource-dir patch --- CuraEngine-3.4.1-no-resource-dir.patch | 14 ++++++++++++-- CuraEngine.spec | 1 + 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/CuraEngine-3.4.1-no-resource-dir.patch b/CuraEngine-3.4.1-no-resource-dir.patch index 8e5cad3..5710f17 100644 --- a/CuraEngine-3.4.1-no-resource-dir.patch +++ b/CuraEngine-3.4.1-no-resource-dir.patch @@ -1,8 +1,18 @@ +From 5aad55bf67e52ce5bdb27a3925af8a4cab441b38 Mon Sep 17 00:00:00 2001 +From: Ghostkeeper +Date: Mon, 18 Jun 2018 15:39:01 +0200 +Subject: [PATCH] Remove outdated copy of command_line_settings.json + +This entire directory doesn't exist. +--- + CMakeLists.txt | 5 ----- + 1 file changed, 5 deletions(-) + diff --git a/CMakeLists.txt b/CMakeLists.txt -index dc36e30..ba82f32 100644 +index 5c579388f..4c55e6f39 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -246,11 +246,6 @@ if (BUILD_TESTS) +@@ -251,11 +251,6 @@ if (BUILD_TESTS) endforeach() endif() diff --git a/CuraEngine.spec b/CuraEngine.spec index f25d443..6ddfe02 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -26,6 +26,7 @@ Patch0: %{name}-rpath.patch Patch1: %{name}-static-libstdcpp.patch # A weird part of cmake stuff that does not work at all, not present in upstream master +# https://github.com/Ultimaker/CuraEngine/commit/5aad55bf67e52ce5bdb27a3925af8a4cab441b38 Patch2: %{name}-3.4.1-no-resource-dir.patch %description From 4a82728831d4e701aa7dd111d858a3d7828a198d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Mon, 12 Nov 2018 11:21:07 +0100 Subject: [PATCH 23/91] Update to 3.5.1 (#1644323) --- .gitignore | 1 + CuraEngine-3.4.1-no-resource-dir.patch | 26 -------------------------- CuraEngine.spec | 16 ++++++++-------- sources | 2 +- 4 files changed, 10 insertions(+), 35 deletions(-) delete mode 100644 CuraEngine-3.4.1-no-resource-dir.patch diff --git a/.gitignore b/.gitignore index 7e8ee2f..efbeea0 100644 --- a/.gitignore +++ b/.gitignore @@ -14,3 +14,4 @@ /CuraEngine-3.3.0.tar.gz /CuraEngine-3.4.1.tar.gz /e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz +/CuraEngine-3.5.1.tar.gz diff --git a/CuraEngine-3.4.1-no-resource-dir.patch b/CuraEngine-3.4.1-no-resource-dir.patch deleted file mode 100644 index 5710f17..0000000 --- a/CuraEngine-3.4.1-no-resource-dir.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 5aad55bf67e52ce5bdb27a3925af8a4cab441b38 Mon Sep 17 00:00:00 2001 -From: Ghostkeeper -Date: Mon, 18 Jun 2018 15:39:01 +0200 -Subject: [PATCH] Remove outdated copy of command_line_settings.json - -This entire directory doesn't exist. ---- - CMakeLists.txt | 5 ----- - 1 file changed, 5 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 5c579388f..4c55e6f39 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -251,11 +251,6 @@ if (BUILD_TESTS) - endforeach() - endif() - -- --add_custom_command(TARGET CuraEngine POST_BUILD -- COMMAND ${CMAKE_COMMAND} -E copy_directory -- ${CMAKE_SOURCE_DIR}/resources $) -- - # Installing CuraEngine. - include(GNUInstallDirs) - install(TARGETS CuraEngine DESTINATION ${CMAKE_INSTALL_BINDIR}) diff --git a/CuraEngine.spec b/CuraEngine.spec index 6ddfe02..9d785a4 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine -Epoch: 1 -Version: 3.4.1 -Release: 1%{?dist} +Epoch: 0 +Version: 3.5.1 +Release: 2%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -20,15 +20,11 @@ BuildRequires: polyclipping-devel >= 6.1.2 BuildRequires: protobuf-devel BuildRequires: rapidjson-devel BuildRequires: cmake -BuildRequires: git +BuildRequires: git-core Patch0: %{name}-rpath.patch Patch1: %{name}-static-libstdcpp.patch -# A weird part of cmake stuff that does not work at all, not present in upstream master -# https://github.com/Ultimaker/CuraEngine/commit/5aad55bf67e52ce5bdb27a3925af8a4cab441b38 -Patch2: %{name}-3.4.1-no-resource-dir.patch - %description %{name} is a C++ console application for 3D printing G-code generation. It has been made as a better and faster alternative to the old Skeinforge engine. @@ -39,6 +35,7 @@ application look at cura with is the graphical frontend for %{name}. %prep %autosetup -p1 -S git tar -xf %{SOURCE1} +mv stb-%{stb_commit} stb # bundled libraries rm -rf libs @@ -64,6 +61,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Mon Nov 12 2018 Miro Hrončok - 0:3.5.1-2 +- Update to 3.5.1 (#1644323) + * Tue Aug 28 2018 Miro Hrončok - 1:3.4.1-1 - Update to 3.4.1 diff --git a/sources b/sources index 6e08fd9..328f98b 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (CuraEngine-3.4.1.tar.gz) = 51c75e299ef7728101a4c61aa033c9b07112b0955d2ec72ba6173684513ed3c503a744fab487efe2c19da01eb97bd1297b5b8724b4f767639c8e82eefcdd01be +SHA512 (CuraEngine-3.5.1.tar.gz) = 99182c5f43b7b3e5f8276a839406d00930bf01db1a640f23d8d9663f67d17085ccaf6de156c552815da9ec07a9b462300919c07a04bc4d0f08e0f3c9e70c6c4b SHA512 (e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz) = 232ef301d4d6c82c7c5f0e4234b9160cc815f3b6bcc35d341cdf8738646f2f0887ee9838680699f4c9f4274b1390036b2c4fb3ebc2d663af8ff888114dc9f04b From 9f571446eda79c58d28b82217e463e9c3db2efd7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Mon, 12 Nov 2018 14:17:34 +0100 Subject: [PATCH 24/91] Fix the error in epoch/release --- CuraEngine.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 9d785a4..2542a5d 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine -Epoch: 0 +Epoch: 1 Version: 3.5.1 -Release: 2%{?dist} +Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -61,6 +61,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Mon Nov 12 2018 Miro Hrončok - 1:3.5.1-1 +- Fix the error in epoch/release + * Mon Nov 12 2018 Miro Hrončok - 0:3.5.1-2 - Update to 3.5.1 (#1644323) From 6015abd4e13d8c2455dd494f74675194f07d1759 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Wed, 21 Nov 2018 17:16:16 +0100 Subject: [PATCH 25/91] Rebuild for protobuf 3.6 Signed-off-by: Igor Gnatenko --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 2542a5d..f8cd714 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 3.5.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -61,6 +61,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Wed Nov 21 2018 Igor Gnatenko - 1:3.5.1-2 +- Rebuild for protobuf 3.6 + * Mon Nov 12 2018 Miro Hrončok - 1:3.5.1-1 - Fix the error in epoch/release From a712a35b459953ff53d8eb02efc127769b7dd12c Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Thu, 22 Nov 2018 09:04:30 +0100 Subject: [PATCH 26/91] Rebuild for protobuf 3.6 Signed-off-by: Igor Gnatenko --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index f8cd714..dbc39bf 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 3.5.1 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -61,6 +61,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Thu Nov 22 2018 Igor Gnatenko - 1:3.5.1-3 +- Rebuild for protobuf 3.6 + * Wed Nov 21 2018 Igor Gnatenko - 1:3.5.1-2 - Rebuild for protobuf 3.6 From 6edbadd4647983282d6ecc5b2da1b4686da70db4 Mon Sep 17 00:00:00 2001 From: Gabriel Feron Date: Sat, 26 Jan 2019 13:04:07 +0100 Subject: [PATCH 27/91] Update to 3.6.0 Signed-off-by: Gabriel Feron --- .gitignore | 1 + CuraEngine.spec | 7 +++++-- sources | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index efbeea0..9f6cec7 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,4 @@ /CuraEngine-3.4.1.tar.gz /e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz /CuraEngine-3.5.1.tar.gz +/CuraEngine-3.6.0.tar.gz diff --git a/CuraEngine.spec b/CuraEngine.spec index dbc39bf..8ea83d8 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,6 +1,6 @@ Name: CuraEngine Epoch: 1 -Version: 3.5.1 +Version: 3.6.0 Release: 3%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ @@ -41,7 +41,7 @@ mv stb-%{stb_commit} stb rm -rf libs # The -DCURA_ENGINE_VERSION does not work, so we sed-change the default value -sed -i 's/"DEV"/"%{version}"/' src/settings/settings.h +sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %build %{cmake} -DBUILD_SHARED_LIBS:BOOL=OFF -DCURA_ENGINE_VERSION:STRING=%{version} -DUSE_SYSTEM_LIBS:BOOL=ON -DCMAKE_CXX_FLAGS_RELEASE_INIT:STRING="%{optflags} -fPIC" -DStb_INCLUDE_DIRS:PATH=./stb-%{stb_commit} . @@ -61,6 +61,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Sat Jan 26 2019 Gabriel Féron - 1:3.6.0-1 +- Update to 3.6.0 + * Thu Nov 22 2018 Igor Gnatenko - 1:3.5.1-3 - Rebuild for protobuf 3.6 diff --git a/sources b/sources index 328f98b..3470a0f 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (CuraEngine-3.5.1.tar.gz) = 99182c5f43b7b3e5f8276a839406d00930bf01db1a640f23d8d9663f67d17085ccaf6de156c552815da9ec07a9b462300919c07a04bc4d0f08e0f3c9e70c6c4b +SHA512 (CuraEngine-3.6.0.tar.gz) = 340dad4c697fb0d7b633091715a904ae7df8973626e217ae2528d0121723c07a6cf0bbc740b9ad9980f3b288fa690c9c3ee43d90914264855dace007bbb334c8 SHA512 (e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz) = 232ef301d4d6c82c7c5f0e4234b9160cc815f3b6bcc35d341cdf8738646f2f0887ee9838680699f4c9f4274b1390036b2c4fb3ebc2d663af8ff888114dc9f04b From 72d26b6257029d1e47e1bdae26b9f798d028e4f0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Wed, 30 Jan 2019 12:00:18 +0100 Subject: [PATCH 28/91] Make it build with GCC9 and hope for the best --- CuraEngine-gcc9.patch | 35 +++++++++++++++++++++++++++++++++++ CuraEngine.spec | 3 +++ 2 files changed, 38 insertions(+) create mode 100644 CuraEngine-gcc9.patch diff --git a/CuraEngine-gcc9.patch b/CuraEngine-gcc9.patch new file mode 100644 index 0000000..27dc232 --- /dev/null +++ b/CuraEngine-gcc9.patch @@ -0,0 +1,35 @@ +diff --git a/src/layerPart.cpp b/src/layerPart.cpp +index 80370fe..07d40f2 100644 +--- a/src/layerPart.cpp ++++ b/src/layerPart.cpp +@@ -49,7 +49,7 @@ void createLayerParts(SliceMeshStorage& mesh, Slicer* slicer) + { + 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) firstprivate(total_layers) schedule(dynamic) + for (unsigned int layer_nr = 0; layer_nr < total_layers; layer_nr++) + { + SliceLayer& layer_storage = mesh.layers[layer_nr]; +diff --git a/src/support.cpp b/src/support.cpp +index a1081ad..1638c95 100644 +--- a/src/support.cpp ++++ b/src/support.cpp +@@ -854,7 +854,7 @@ void AreaSupport::generateSupportAreasForMesh(SliceDataStorage& storage, const S + 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) firstprivate(layer_count, is_support_mesh_place_holder, use_xy_distance_overhang, z_distance_top, tan_angle, xy_distance, xy_distance_overhang) shared(xy_disallowed_per_layer, storage, mesh) 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 @@ void AreaSupport::generateSupportAreasForMesh(SliceDataStorage& storage, const S + const int max_checking_layer_idx = std::min(static_cast(storage.support.supportLayers.size()) + , static_cast(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) firstprivate(max_checking_idx_size_t, layer_z_distance_top) shared(support_areas, storage) 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)); diff --git a/CuraEngine.spec b/CuraEngine.spec index 8ea83d8..51b1b9b 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -25,6 +25,9 @@ BuildRequires: git-core Patch0: %{name}-rpath.patch Patch1: %{name}-static-libstdcpp.patch +# https://github.com/Ultimaker/CuraEngine/issues/984 +Patch2: %{name}-gcc9.patch + %description %{name} is a C++ console application for 3D printing G-code generation. It has been made as a better and faster alternative to the old Skeinforge engine. From abcc1a592b1b3e26f3ca0b07463dda7ddc4874a5 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 31 Jan 2019 11:28:32 +0000 Subject: [PATCH 29/91] - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 51b1b9b..f26e140 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 3.6.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -64,6 +64,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Thu Jan 31 2019 Fedora Release Engineering - 1:3.6.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + * Sat Jan 26 2019 Gabriel Féron - 1:3.6.0-1 - Update to 3.6.0 From 28ffb3aa69908599576848d42e287f39583e3d68 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Fri, 1 Feb 2019 13:56:17 +0100 Subject: [PATCH 30/91] Update the gcc9 patch after discussion with upstream --- CuraEngine-gcc9.patch | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/CuraEngine-gcc9.patch b/CuraEngine-gcc9.patch index 27dc232..1c83271 100644 --- a/CuraEngine-gcc9.patch +++ b/CuraEngine-gcc9.patch @@ -7,7 +7,7 @@ index 80370fe..07d40f2 100644 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) firstprivate(total_layers) 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]; @@ -20,7 +20,7 @@ index a1081ad..1638c95 100644 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) firstprivate(layer_count, is_support_mesh_place_holder, use_xy_distance_overhang, z_distance_top, tan_angle, xy_distance, xy_distance_overhang) shared(xy_disallowed_per_layer, storage, mesh) schedule(dynamic) ++ #pragma omp parallel for default(none) shared(xy_disallowed_per_layer, storage, mesh, layer_count, is_support_mesh_place_holder, use_xy_distance_overhang, z_distance_top, tan_angle, xy_distance, xy_distance_overhang) schedule(dynamic) for (unsigned int layer_idx = 1; layer_idx < layer_count; layer_idx++) { Polygons outlines = storage.getLayerOutlines(layer_idx, false); @@ -29,7 +29,7 @@ index a1081ad..1638c95 100644 , static_cast(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) firstprivate(max_checking_idx_size_t, layer_z_distance_top) shared(support_areas, storage) schedule(dynamic) ++#pragma omp parallel for default(none) shared(support_areas, storage, max_checking_idx_size_t, layer_z_distance_top) 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)); From bfa13d71f4eedaac15679fd2fc1f5809bd58bdab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20F=C3=A9ron?= Date: Wed, 3 Apr 2019 23:33:22 +0200 Subject: [PATCH 31/91] Update to 4.0.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Gabriel Féron --- .gitignore | 1 + CuraEngine-gcc9.patch | 19 ++++++++++--------- CuraEngine.spec | 7 +++++-- sources | 2 +- 4 files changed, 17 insertions(+), 12 deletions(-) diff --git a/.gitignore b/.gitignore index 9f6cec7..5e870a9 100644 --- a/.gitignore +++ b/.gitignore @@ -16,3 +16,4 @@ /e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz /CuraEngine-3.5.1.tar.gz /CuraEngine-3.6.0.tar.gz +/CuraEngine-4.0.0.tar.gz diff --git a/CuraEngine-gcc9.patch b/CuraEngine-gcc9.patch index 1c83271..67f704f 100644 --- a/CuraEngine-gcc9.patch +++ b/CuraEngine-gcc9.patch @@ -1,5 +1,5 @@ diff --git a/src/layerPart.cpp b/src/layerPart.cpp -index 80370fe..07d40f2 100644 +index 80370fed..616c831d 100644 --- a/src/layerPart.cpp +++ b/src/layerPart.cpp @@ -49,7 +49,7 @@ void createLayerParts(SliceMeshStorage& mesh, Slicer* slicer) @@ -12,19 +12,19 @@ index 80370fe..07d40f2 100644 { SliceLayer& layer_storage = mesh.layers[layer_nr]; diff --git a/src/support.cpp b/src/support.cpp -index a1081ad..1638c95 100644 +index dc39a8fe..13c69862 100644 --- a/src/support.cpp +++ b/src/support.cpp -@@ -854,7 +854,7 @@ void AreaSupport::generateSupportAreasForMesh(SliceDataStorage& storage, const S - 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); +@@ -860,7 +860,7 @@ void AreaSupport::generateSupportAreasForMesh(SliceDataStorage& storage, const S + constexpr bool no_prime_tower = false; + xy_disallowed_per_layer[0] = storage.getLayerOutlines(0, no_support, no_prime_tower).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, is_support_mesh_place_holder, use_xy_distance_overhang, z_distance_top, tan_angle, xy_distance, xy_distance_overhang) schedule(dynamic) - for (unsigned int layer_idx = 1; layer_idx < layer_count; layer_idx++) + for (size_t layer_idx = 1; layer_idx < layer_count; layer_idx++) { - Polygons outlines = storage.getLayerOutlines(layer_idx, false); -@@ -1054,7 +1054,7 @@ void AreaSupport::generateSupportAreasForMesh(SliceDataStorage& storage, const S + Polygons outlines = storage.getLayerOutlines(layer_idx, no_support, no_prime_tower); +@@ -1056,7 +1056,7 @@ void AreaSupport::generateSupportAreasForMesh(SliceDataStorage& storage, const S const int max_checking_layer_idx = std::min(static_cast(storage.support.supportLayers.size()) , static_cast(layer_count - (layer_z_distance_top - 1))); const size_t max_checking_idx_size_t = std::max(0, max_checking_layer_idx); @@ -32,4 +32,5 @@ index a1081ad..1638c95 100644 +#pragma omp parallel for default(none) shared(support_areas, storage, max_checking_idx_size_t, layer_z_distance_top) 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)); + constexpr bool no_support = false; + diff --git a/CuraEngine.spec b/CuraEngine.spec index f26e140..c766746 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 -Version: 3.6.0 -Release: 4%{?dist} +Version: 4.0.0 +Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -64,6 +64,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Wed Apr 03 2019 Gabriel Féron - 4.0.0-1 +- Update to 4.0.0 + * Thu Jan 31 2019 Fedora Release Engineering - 1:3.6.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild diff --git a/sources b/sources index 3470a0f..0b79428 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (CuraEngine-3.6.0.tar.gz) = 340dad4c697fb0d7b633091715a904ae7df8973626e217ae2528d0121723c07a6cf0bbc740b9ad9980f3b288fa690c9c3ee43d90914264855dace007bbb334c8 +SHA512 (CuraEngine-4.0.0.tar.gz) = 478dc2554abea24baeec18e2b2d65a790dd6d31a3b11c87d839a9e928679f40bab9703e86e473bba36f72355485d66bf63515692ac75bceae5881e6537f48c46 SHA512 (e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz) = 232ef301d4d6c82c7c5f0e4234b9160cc815f3b6bcc35d341cdf8738646f2f0887ee9838680699f4c9f4274b1390036b2c4fb3ebc2d663af8ff888114dc9f04b From 82046e02df66d4a130ea1b955c04bf1d04dd3150 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20F=C3=A9ron?= Date: Mon, 8 Jul 2019 13:27:10 +0200 Subject: [PATCH 32/91] Update to 4.1.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Gabriel Féron --- .gitignore | 19 +------------- CuraEngine-gcc9.patch | 42 ++++++++++++++++++++----------- CuraEngine-static-libstdcpp.patch | 23 +++++++++-------- CuraEngine.spec | 5 +++- sources | 2 +- 5 files changed, 46 insertions(+), 45 deletions(-) diff --git a/.gitignore b/.gitignore index 5e870a9..3c3d653 100644 --- a/.gitignore +++ b/.gitignore @@ -1,19 +1,2 @@ -/13.06.3.tar.gz -/13.11.2.tar.gz -/14.01.tar.gz -/14.03.tar.gz -/14.12.1.tar.gz -/15.04.tar.gz -/CuraEngine-2.5.0.tar.gz -/CuraEngine-2.6.0.tar.gz -/CuraEngine-2.6.1.tar.gz -/CuraEngine-2.7.0.tar.gz -/CuraEngine-3.0.3.tar.gz -/CuraEngine-3.1.0.tar.gz -/CuraEngine-3.2.1.tar.gz -/CuraEngine-3.3.0.tar.gz -/CuraEngine-3.4.1.tar.gz +/CuraEngine-*.tar.gz /e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz -/CuraEngine-3.5.1.tar.gz -/CuraEngine-3.6.0.tar.gz -/CuraEngine-4.0.0.tar.gz diff --git a/CuraEngine-gcc9.patch b/CuraEngine-gcc9.patch index 67f704f..9a7fb63 100644 --- a/CuraEngine-gcc9.patch +++ b/CuraEngine-gcc9.patch @@ -1,36 +1,48 @@ +From 9fd93712220aa2754e077bf89f165c7a9b795abd Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Gabriel=20F=C3=A9ron?= +Date: Tue, 18 Jun 2019 22:58:47 +0200 +Subject: [PATCH] [PATCH 3/3] GCC 9 patches + +--- + src/layerPart.cpp | 2 +- + src/support.cpp | 4 ++-- + 2 files changed, 3 insertions(+), 3 deletions(-) + diff --git a/src/layerPart.cpp b/src/layerPart.cpp -index 80370fed..616c831d 100644 +index ba3e7157..6cf0919a 100644 --- a/src/layerPart.cpp +++ b/src/layerPart.cpp -@@ -49,7 +49,7 @@ void createLayerParts(SliceMeshStorage& mesh, Slicer* slicer) +@@ -52,7 +52,7 @@ void createLayerParts(SliceMeshStorage& mesh, Slicer* slicer) { 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++) + // Use a signed type for the loop counter so MSVC compiles (because it uses OpenMP 2.0, an old version). + for (int layer_nr = 0; layer_nr < static_cast(total_layers); layer_nr++) { - SliceLayer& layer_storage = mesh.layers[layer_nr]; diff --git a/src/support.cpp b/src/support.cpp -index dc39a8fe..13c69862 100644 +index 9bd531a6..bb7a741d 100644 --- a/src/support.cpp +++ b/src/support.cpp -@@ -860,7 +860,7 @@ void AreaSupport::generateSupportAreasForMesh(SliceDataStorage& storage, const S +@@ -875,7 +875,7 @@ void AreaSupport::generateSupportAreasForMesh(SliceDataStorage& storage, const S constexpr bool no_prime_tower = false; xy_disallowed_per_layer[0] = storage.getLayerOutlines(0, no_support, no_prime_tower).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, is_support_mesh_place_holder, use_xy_distance_overhang, z_distance_top, tan_angle, xy_distance, xy_distance_overhang) schedule(dynamic) - for (size_t layer_idx = 1; layer_idx < layer_count; layer_idx++) + // Use a signed type for the loop counter so MSVC compiles (because it uses OpenMP 2.0, an old version). + for (int layer_idx = 1; layer_idx < static_cast(layer_count); layer_idx++) { - Polygons outlines = storage.getLayerOutlines(layer_idx, no_support, no_prime_tower); -@@ -1056,7 +1056,7 @@ void AreaSupport::generateSupportAreasForMesh(SliceDataStorage& storage, const S - const int max_checking_layer_idx = std::min(static_cast(storage.support.supportLayers.size()) - , static_cast(layer_count - (layer_z_distance_top - 1))); - const size_t max_checking_idx_size_t = std::max(0, max_checking_layer_idx); +@@ -1070,7 +1070,7 @@ void AreaSupport::generateSupportAreasForMesh(SliceDataStorage& storage, const S + const int max_checking_layer_idx = std::max(0, + std::min(static_cast(storage.support.supportLayers.size()), + static_cast(layer_count - (layer_z_distance_top - 1)))); -#pragma omp parallel for default(none) shared(support_areas, storage) schedule(dynamic) -+#pragma omp parallel for default(none) shared(support_areas, storage, max_checking_idx_size_t, layer_z_distance_top) schedule(dynamic) - for (size_t layer_idx = 0; layer_idx < max_checking_idx_size_t; layer_idx++) ++#pragma omp parallel for default(none) shared(support_areas, storage, max_checking_layer_idx, layer_z_distance_top) schedule(dynamic) + // Use a signed type for the loop counter so MSVC compiles (because it uses OpenMP 2.0, an old version). + for (int layer_idx = 0; layer_idx < max_checking_layer_idx; layer_idx++) { - constexpr bool no_support = false; +-- +2.21.0 diff --git a/CuraEngine-static-libstdcpp.patch b/CuraEngine-static-libstdcpp.patch index 219f11e..664d76f 100644 --- a/CuraEngine-static-libstdcpp.patch +++ b/CuraEngine-static-libstdcpp.patch @@ -1,24 +1,27 @@ -From d79be0eb0e0e27e70b709b043b4085cda007beed Mon Sep 17 00:00:00 2001 -From: rpm-build -Date: Wed, 3 May 2017 14:02:04 +0200 -Subject: [PATCH 2/3] Don't use -static-libstdc++ +From 4b9f0fed275eca87525142ed2911c7072f6a5f80 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Gabriel=20F=C3=A9ron?= +Date: Tue, 18 Jun 2019 22:54:59 +0200 +Subject: [PATCH] [PATCH 2/3] Don't use -static-libstdc++ --- CMakeLists.txt | 4 ---- 1 file changed, 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt -index f2907bd..4b45997 100644 +index 99d234ec..ae9c3ece 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -47,10 +47,6 @@ if (ENABLE_MORE_COMPILER_OPTIMIZATION_FLAGS) - set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS} -Ofast -funroll-loops") +@@ -101,10 +101,6 @@ if (ENABLE_MORE_COMPILER_OPTIMIZATION_FLAGS AND NOT (CMAKE_BUILD_TYPE_UPPER MATC + endif() endif () -if(NOT APPLE AND NOT WIN32) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -static-libstdc++") -endif() - - option (ENABLE_OPENMP - "Use OpenMP for parallel code" ON) - + if (WIN32) + add_definitions(-DNOMINMAX) + endif() +-- +2.21.0 + diff --git a/CuraEngine.spec b/CuraEngine.spec index c766746..ed98156 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,6 +1,6 @@ Name: CuraEngine Epoch: 1 -Version: 4.0.0 +Version: 4.1.0 Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ @@ -64,6 +64,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Tue Jun 18 2019 Gabriel Féron - 4.1.0-1 +- Update to 4.1.0 + * Wed Apr 03 2019 Gabriel Féron - 4.0.0-1 - Update to 4.0.0 diff --git a/sources b/sources index 0b79428..276c0d8 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (CuraEngine-4.0.0.tar.gz) = 478dc2554abea24baeec18e2b2d65a790dd6d31a3b11c87d839a9e928679f40bab9703e86e473bba36f72355485d66bf63515692ac75bceae5881e6537f48c46 +SHA512 (CuraEngine-4.1.0.tar.gz) = 49a3d3943c0767ceba2b94d061e11f43a428401941032cb1cbc578acf95495ba2db48307a9e28056f5a641be7ba581b53264a3d32abbbeeb00b978c8203ca79f SHA512 (e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz) = 232ef301d4d6c82c7c5f0e4234b9160cc815f3b6bcc35d341cdf8738646f2f0887ee9838680699f4c9f4274b1390036b2c4fb3ebc2d663af8ff888114dc9f04b From a772b81873025938f6b4fcab8f7581c31571ee2b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 24 Jul 2019 15:45:26 +0000 Subject: [PATCH 33/91] - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index ed98156..6a6a327 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 4.1.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -64,6 +64,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Wed Jul 24 2019 Fedora Release Engineering - 1:4.1.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Tue Jun 18 2019 Gabriel Féron - 4.1.0-1 - Update to 4.1.0 From da5b9eaf492bacac353f46fd11737390b7c07a28 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20F=C3=A9ron?= Date: Mon, 4 Nov 2019 20:33:17 +0100 Subject: [PATCH 34/91] Update to 4.4.0 --- CuraEngine-gcc9.patch | 48 ------------------------------------------- CuraEngine.spec | 10 ++++----- sources | 2 +- 3 files changed, 6 insertions(+), 54 deletions(-) delete mode 100644 CuraEngine-gcc9.patch diff --git a/CuraEngine-gcc9.patch b/CuraEngine-gcc9.patch deleted file mode 100644 index 9a7fb63..0000000 --- a/CuraEngine-gcc9.patch +++ /dev/null @@ -1,48 +0,0 @@ -From 9fd93712220aa2754e077bf89f165c7a9b795abd Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Gabriel=20F=C3=A9ron?= -Date: Tue, 18 Jun 2019 22:58:47 +0200 -Subject: [PATCH] [PATCH 3/3] GCC 9 patches - ---- - src/layerPart.cpp | 2 +- - src/support.cpp | 4 ++-- - 2 files changed, 3 insertions(+), 3 deletions(-) - -diff --git a/src/layerPart.cpp b/src/layerPart.cpp -index ba3e7157..6cf0919a 100644 ---- a/src/layerPart.cpp -+++ b/src/layerPart.cpp -@@ -52,7 +52,7 @@ void createLayerParts(SliceMeshStorage& mesh, Slicer* slicer) - { - 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) - // Use a signed type for the loop counter so MSVC compiles (because it uses OpenMP 2.0, an old version). - for (int layer_nr = 0; layer_nr < static_cast(total_layers); layer_nr++) - { -diff --git a/src/support.cpp b/src/support.cpp -index 9bd531a6..bb7a741d 100644 ---- a/src/support.cpp -+++ b/src/support.cpp -@@ -875,7 +875,7 @@ void AreaSupport::generateSupportAreasForMesh(SliceDataStorage& storage, const S - constexpr bool no_prime_tower = false; - xy_disallowed_per_layer[0] = storage.getLayerOutlines(0, no_support, no_prime_tower).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, is_support_mesh_place_holder, use_xy_distance_overhang, z_distance_top, tan_angle, xy_distance, xy_distance_overhang) schedule(dynamic) - // Use a signed type for the loop counter so MSVC compiles (because it uses OpenMP 2.0, an old version). - for (int layer_idx = 1; layer_idx < static_cast(layer_count); layer_idx++) - { -@@ -1070,7 +1070,7 @@ void AreaSupport::generateSupportAreasForMesh(SliceDataStorage& storage, const S - const int max_checking_layer_idx = std::max(0, - std::min(static_cast(storage.support.supportLayers.size()), - static_cast(layer_count - (layer_z_distance_top - 1)))); --#pragma omp parallel for default(none) shared(support_areas, storage) schedule(dynamic) -+#pragma omp parallel for default(none) shared(support_areas, storage, max_checking_layer_idx, layer_z_distance_top) schedule(dynamic) - // Use a signed type for the loop counter so MSVC compiles (because it uses OpenMP 2.0, an old version). - for (int layer_idx = 0; layer_idx < max_checking_layer_idx; layer_idx++) - { --- -2.21.0 - diff --git a/CuraEngine.spec b/CuraEngine.spec index 6a6a327..5841871 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 -Version: 4.1.0 -Release: 2%{?dist} +Version: 4.4.0 +Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -25,9 +25,6 @@ BuildRequires: git-core Patch0: %{name}-rpath.patch Patch1: %{name}-static-libstdcpp.patch -# https://github.com/Ultimaker/CuraEngine/issues/984 -Patch2: %{name}-gcc9.patch - %description %{name} is a C++ console application for 3D printing G-code generation. It has been made as a better and faster alternative to the old Skeinforge engine. @@ -64,6 +61,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Thu Nov 21 2019 Gabriel Féron - 4.4.0-1 +- Update to 4.4.0 + * Wed Jul 24 2019 Fedora Release Engineering - 1:4.1.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild diff --git a/sources b/sources index 276c0d8..ebd0eae 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (CuraEngine-4.1.0.tar.gz) = 49a3d3943c0767ceba2b94d061e11f43a428401941032cb1cbc578acf95495ba2db48307a9e28056f5a641be7ba581b53264a3d32abbbeeb00b978c8203ca79f +SHA512 (CuraEngine-4.4.0.tar.gz) = aa2396a6bd2c32ae2ceaad32a9cc986cf2301b188543c333a848df0434d31b5ce22a923e2cd60bc61c313fee8f2c4a4fc30b083ec1f99e2cb6df5c92c6f37451 SHA512 (e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz) = 232ef301d4d6c82c7c5f0e4234b9160cc815f3b6bcc35d341cdf8738646f2f0887ee9838680699f4c9f4274b1390036b2c4fb3ebc2d663af8ff888114dc9f04b From a43ef399455edf9e8f8c5109da45e458696085a3 Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Wed, 18 Dec 2019 20:21:53 -0700 Subject: [PATCH 35/91] Rebuild for protobuf 3.11 --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 5841871..fb60753 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 4.4.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -61,6 +61,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Thu Dec 19 2019 Orion Poplawski - 1:4.4.0-2 +- Rebuild for protobuf 3.11 + * Thu Nov 21 2019 Gabriel Féron - 4.4.0-1 - Update to 4.4.0 From 0c0a52514e66a36419e4aa9ba6f49169754c4e2f Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 28 Jan 2020 09:17:47 +0000 Subject: [PATCH 36/91] - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index fb60753..92b5ecc 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 4.4.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -61,6 +61,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Tue Jan 28 2020 Fedora Release Engineering - 1:4.4.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + * Thu Dec 19 2019 Orion Poplawski - 1:4.4.0-2 - Rebuild for protobuf 3.11 From 2241b8fa91592afc1a713c69ac49b0b17f900138 Mon Sep 17 00:00:00 2001 From: Gabriel Date: Tue, 21 Apr 2020 23:32:12 +0200 Subject: [PATCH 37/91] Update to 4.6.0 --- CuraEngine.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 92b5ecc..0a48380 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 -Version: 4.4.0 -Release: 3%{?dist} +Version: 4.6.0 +Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -61,6 +61,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Tue Apr 21 2020 Gabriel Féron - 4.6.0-1 +- Update to 4.6.0 + * Tue Jan 28 2020 Fedora Release Engineering - 1:4.4.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild diff --git a/sources b/sources index ebd0eae..e5c9ea4 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (CuraEngine-4.4.0.tar.gz) = aa2396a6bd2c32ae2ceaad32a9cc986cf2301b188543c333a848df0434d31b5ce22a923e2cd60bc61c313fee8f2c4a4fc30b083ec1f99e2cb6df5c92c6f37451 +SHA512 (CuraEngine-4.6.0.tar.gz) = 61e37baefce65beb4c10c1ee1379a79f2c44022bcae95b850f1a83aeb421281d280c9537f8676dc1b7b5b9ba9025be88bfe103556004294785b23b7699ef6fa6 SHA512 (e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz) = 232ef301d4d6c82c7c5f0e4234b9160cc815f3b6bcc35d341cdf8738646f2f0887ee9838680699f4c9f4274b1390036b2c4fb3ebc2d663af8ff888114dc9f04b From 79765b4a1bffd74e9f8504bb266c53905f6c32c5 Mon Sep 17 00:00:00 2001 From: Gabriel Date: Tue, 5 May 2020 18:50:33 +0200 Subject: [PATCH 38/91] Update to 4.6.1 --- CuraEngine.spec | 5 ++++- sources | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 0a48380..1095cb7 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,6 +1,6 @@ Name: CuraEngine Epoch: 1 -Version: 4.6.0 +Version: 4.6.1 Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ @@ -61,6 +61,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Tue May 5 2020 Gabriel Féron - 4.6.0-1 +- Update to 4.6.1 + * Tue Apr 21 2020 Gabriel Féron - 4.6.0-1 - Update to 4.6.0 diff --git a/sources b/sources index e5c9ea4..a482611 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (CuraEngine-4.6.0.tar.gz) = 61e37baefce65beb4c10c1ee1379a79f2c44022bcae95b850f1a83aeb421281d280c9537f8676dc1b7b5b9ba9025be88bfe103556004294785b23b7699ef6fa6 +SHA512 (CuraEngine-4.6.1.tar.gz) = 8b3a65fb00bebc37acd24a6d4277c1f09849c0318fca00867479d62c0f64b8628064a898128e1ffc5fb99eed2c1d45a310df2f97fde9c37a9ccc311f5ba4d057 SHA512 (e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz) = 232ef301d4d6c82c7c5f0e4234b9160cc815f3b6bcc35d341cdf8738646f2f0887ee9838680699f4c9f4274b1390036b2c4fb3ebc2d663af8ff888114dc9f04b From d7c15534f04f8afa4dc2888006423dcf507fa4cb Mon Sep 17 00:00:00 2001 From: Adrian Reber Date: Sun, 21 Jun 2020 00:10:39 +0200 Subject: [PATCH 39/91] Rebuilt for protobuf 3.12 --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 1095cb7..8682f65 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 4.6.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -61,6 +61,9 @@ make install DESTDIR=%{buildroot} %{_bindir}/%{name} %changelog +* Sun Jun 14 2020 Adrian Reber - 1:4.6.1-2 +- Rebuilt for protobuf 3.12 + * Tue May 5 2020 Gabriel Féron - 4.6.0-1 - Update to 4.6.1 From 0a3a1dc11631969b1b15a2cc7393d101c0f73b7f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Sun, 26 Jul 2020 15:23:32 +0200 Subject: [PATCH 40/91] https://fedoraproject.org/wiki/Changes/CMake_to_do_out-of-source_builds Fix Stb_INCLUDE_DIRS to actually matter (previously it only worked because it was in $PWD). --- CuraEngine.spec | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 8682f65..889a872 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -25,6 +25,9 @@ BuildRequires: git-core Patch0: %{name}-rpath.patch Patch1: %{name}-static-libstdcpp.patch +# Get Fedora 33++ behavior on anything older +%undefine __cmake_in_source_build + %description %{name} is a C++ console application for 3D printing G-code generation. It has been made as a better and faster alternative to the old Skeinforge engine. @@ -44,12 +47,12 @@ rm -rf libs sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %build -%{cmake} -DBUILD_SHARED_LIBS:BOOL=OFF -DCURA_ENGINE_VERSION:STRING=%{version} -DUSE_SYSTEM_LIBS:BOOL=ON -DCMAKE_CXX_FLAGS_RELEASE_INIT:STRING="%{optflags} -fPIC" -DStb_INCLUDE_DIRS:PATH=./stb-%{stb_commit} . -make %{?_smp_mflags} +%cmake -DBUILD_SHARED_LIBS:BOOL=OFF -DCURA_ENGINE_VERSION:STRING=%{version} -DUSE_SYSTEM_LIBS:BOOL=ON -DCMAKE_CXX_FLAGS_RELEASE_INIT:STRING="%{optflags} -fPIC" -DStb_INCLUDE_DIRS:PATH=${PWD} +%cmake_build %install -make install DESTDIR=%{buildroot} +%cmake_install %check From 95e9f04efccca4fde8d7ecad2aa27fefc7e91a25 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Mon, 27 Jul 2020 10:17:54 +0000 Subject: [PATCH 41/91] - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 889a872..2dde672 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 4.6.1 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -64,6 +64,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Mon Jul 27 2020 Fedora Release Engineering - 1:4.6.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Sun Jun 14 2020 Adrian Reber - 1:4.6.1-2 - Rebuilt for protobuf 3.12 From e7d86d30cc3b19b49db3bdcb4de870977dc94ff1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20F=C3=A9ron?= Date: Mon, 31 Aug 2020 20:59:53 +0200 Subject: [PATCH 42/91] Update to 4.7.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Gabriel Féron --- CuraEngine.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 2dde672..5a7bdd1 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 -Version: 4.6.1 -Release: 3%{?dist} +Version: 4.7.0 +Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -64,6 +64,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Mon Aug 31 2020 Gabriel Féron - 4.7.0-1 +- Update to 4.7.0 + * Mon Jul 27 2020 Fedora Release Engineering - 1:4.6.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild diff --git a/sources b/sources index a482611..856d09b 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (CuraEngine-4.6.1.tar.gz) = 8b3a65fb00bebc37acd24a6d4277c1f09849c0318fca00867479d62c0f64b8628064a898128e1ffc5fb99eed2c1d45a310df2f97fde9c37a9ccc311f5ba4d057 +SHA512 (CuraEngine-4.7.0.tar.gz) = 4c5f2eb70912315595e7f090ba9a34196ecb740eb25b5b2da2decf6485260999e8a87f7c2619c6efab9b46280e9eecf11f7e6bb021359c3b72da9fb900b0c1c3 SHA512 (e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz) = 232ef301d4d6c82c7c5f0e4234b9160cc815f3b6bcc35d341cdf8738646f2f0887ee9838680699f4c9f4274b1390036b2c4fb3ebc2d663af8ff888114dc9f04b From 355ba6dbee076a5b49e9fd7168ea1ce0dc10a5f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Thu, 3 Sep 2020 18:31:08 +0200 Subject: [PATCH 43/91] Update to 4.7.1 --- CuraEngine.spec | 5 ++++- sources | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 5a7bdd1..f607e99 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,6 +1,6 @@ Name: CuraEngine Epoch: 1 -Version: 4.7.0 +Version: 4.7.1 Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ @@ -64,6 +64,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Thu Sep 03 2020 Miro Hrončok - 1:4.7.1-1 +- Update to 4.7.1 + * Mon Aug 31 2020 Gabriel Féron - 4.7.0-1 - Update to 4.7.0 diff --git a/sources b/sources index 856d09b..54933af 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (CuraEngine-4.7.0.tar.gz) = 4c5f2eb70912315595e7f090ba9a34196ecb740eb25b5b2da2decf6485260999e8a87f7c2619c6efab9b46280e9eecf11f7e6bb021359c3b72da9fb900b0c1c3 +SHA512 (CuraEngine-4.7.1.tar.gz) = e5006290f6f0c2a1816e93344094c46b4861f7b953948edd1812a2a06869d77d66d6145d40b1c72b31ada028a102fd8ca463aa112ec9983e13dd13d5ff4ac9b3 SHA512 (e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz) = 232ef301d4d6c82c7c5f0e4234b9160cc815f3b6bcc35d341cdf8738646f2f0887ee9838680699f4c9f4274b1390036b2c4fb3ebc2d663af8ff888114dc9f04b From e2380f88486217c60b8620504bd72e0a43643c40 Mon Sep 17 00:00:00 2001 From: Adrian Reber Date: Wed, 23 Sep 2020 17:05:28 +0200 Subject: [PATCH 44/91] Rebuilt for protobuf 3.13 --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index f607e99..0eb3f60 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 4.7.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -64,6 +64,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Wed Sep 23 2020 Adrian Reber - 1:4.7.1-2 +- Rebuilt for protobuf 3.13 + * Thu Sep 03 2020 Miro Hrončok - 1:4.7.1-1 - Update to 4.7.1 From c7ae19f0a5dd28156166185ccf2ee8a1b25de8a1 Mon Sep 17 00:00:00 2001 From: Jan Pazdziora Date: Wed, 23 Dec 2020 08:42:00 +0100 Subject: [PATCH 45/91] Update to 4.8.0 --- CuraEngine.spec | 7 +++++-- sources | 3 +-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 0eb3f60..d6bb106 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 -Version: 4.7.1 -Release: 2%{?dist} +Version: 4.8.0 +Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -64,6 +64,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Wed Dec 23 2020 Jan Pazdziora - 4.8.0-1 +- Update to 4.8.0 + * Wed Sep 23 2020 Adrian Reber - 1:4.7.1-2 - Rebuilt for protobuf 3.13 diff --git a/sources b/sources index 54933af..bc32961 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -SHA512 (CuraEngine-4.7.1.tar.gz) = e5006290f6f0c2a1816e93344094c46b4861f7b953948edd1812a2a06869d77d66d6145d40b1c72b31ada028a102fd8ca463aa112ec9983e13dd13d5ff4ac9b3 -SHA512 (e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz) = 232ef301d4d6c82c7c5f0e4234b9160cc815f3b6bcc35d341cdf8738646f2f0887ee9838680699f4c9f4274b1390036b2c4fb3ebc2d663af8ff888114dc9f04b +SHA512 (CuraEngine-4.8.0.tar.gz) = be0d12cfe61932bf03dde61df8fb7f31cbd0aef6a44292130a7a67e318891f37db685722ba5d3cf66e88d4ff1de64ac86be5e494b750f8f7ff4b52d7976cb670 From 4ab4c3205b3d27b1d66e4d68f876e8571caf9869 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Mon, 28 Dec 2020 17:51:40 +0100 Subject: [PATCH 46/91] Readd missing source --- sources | 1 + 1 file changed, 1 insertion(+) diff --git a/sources b/sources index bc32961..c6df111 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ SHA512 (CuraEngine-4.8.0.tar.gz) = be0d12cfe61932bf03dde61df8fb7f31cbd0aef6a44292130a7a67e318891f37db685722ba5d3cf66e88d4ff1de64ac86be5e494b750f8f7ff4b52d7976cb670 +SHA512 (e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz) = 232ef301d4d6c82c7c5f0e4234b9160cc815f3b6bcc35d341cdf8738646f2f0887ee9838680699f4c9f4274b1390036b2c4fb3ebc2d663af8ff888114dc9f04b From 7ca1c9d9869b73f3a085998789e0e84769959a8f Mon Sep 17 00:00:00 2001 From: Adrian Reber Date: Wed, 13 Jan 2021 14:30:14 +0100 Subject: [PATCH 47/91] Rebuilt for protobuf 3.14 --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index d6bb106..266721d 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 4.8.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -64,6 +64,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Wed Jan 13 14:30:13 CET 2021 Adrian Reber - 1:4.8.0-2 +- Rebuilt for protobuf 3.14 + * Wed Dec 23 2020 Jan Pazdziora - 4.8.0-1 - Update to 4.8.0 From f6e43fb920824d068845df0e17737d5f2171f748 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Mon, 25 Jan 2021 22:20:42 +0000 Subject: [PATCH 48/91] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 266721d..895acb4 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 4.8.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -64,6 +64,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Mon Jan 25 2021 Fedora Release Engineering - 1:4.8.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Wed Jan 13 14:30:13 CET 2021 Adrian Reber - 1:4.8.0-2 - Rebuilt for protobuf 3.14 From d74a31b15b6582e1de67f0a905153f95a18f8f1b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20F=C3=A9ron?= Date: Tue, 4 May 2021 18:27:07 +0200 Subject: [PATCH 49/91] Update to 4.9.0 --- CuraEngine.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 895acb4..8a8ba45 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 -Version: 4.8.0 -Release: 3%{?dist} +Version: 4.9.0 +Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -64,6 +64,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Mon Apr 26 2021 Gabriel Féron - 4.9.0-1 +- Update to 4.9.0 + * Mon Jan 25 2021 Fedora Release Engineering - 1:4.8.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild diff --git a/sources b/sources index c6df111..48adb7b 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (CuraEngine-4.8.0.tar.gz) = be0d12cfe61932bf03dde61df8fb7f31cbd0aef6a44292130a7a67e318891f37db685722ba5d3cf66e88d4ff1de64ac86be5e494b750f8f7ff4b52d7976cb670 +SHA512 (CuraEngine-4.9.0.tar.gz) = 4c189c953d25e89dd70d6493fab8173b065d87686b2dd32eacbbbd08d14498be4678df1408d7a0dd968d2643230df13ca52a5aae720c85248af35306d22f387b SHA512 (e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz) = 232ef301d4d6c82c7c5f0e4234b9160cc815f3b6bcc35d341cdf8738646f2f0887ee9838680699f4c9f4274b1390036b2c4fb3ebc2d663af8ff888114dc9f04b From 407f3d8daf810db9811ca37e97db7b8735fa3c09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20F=C3=A9ron?= Date: Thu, 10 Jun 2021 15:48:53 +0200 Subject: [PATCH 50/91] Update to 4.9.1 --- CuraEngine.spec | 5 ++++- sources | 3 +-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 8a8ba45..309803a 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,6 +1,6 @@ Name: CuraEngine Epoch: 1 -Version: 4.9.0 +Version: 4.9.1 Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ @@ -64,6 +64,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Thu Jun 10 2021 Gabriel Féron - 4.9.1-1 +- Update to 4.9.1 + * Mon Apr 26 2021 Gabriel Féron - 4.9.0-1 - Update to 4.9.0 diff --git a/sources b/sources index 48adb7b..348a6cc 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -SHA512 (CuraEngine-4.9.0.tar.gz) = 4c189c953d25e89dd70d6493fab8173b065d87686b2dd32eacbbbd08d14498be4678df1408d7a0dd968d2643230df13ca52a5aae720c85248af35306d22f387b -SHA512 (e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz) = 232ef301d4d6c82c7c5f0e4234b9160cc815f3b6bcc35d341cdf8738646f2f0887ee9838680699f4c9f4274b1390036b2c4fb3ebc2d663af8ff888114dc9f04b +SHA512 (CuraEngine-4.9.1.tar.gz) = cfa918c6301c9948713306256d74a2a84a1fefbc0f85c7ac0eb182d8363f1eae97aecdcb91c207a2e7e1ab252f63cf4b513734b50d4229da7aa35e095ef88bee From b189945fd423711d49fb9fa56740c28382b3ac7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20F=C3=A9ron?= Date: Fri, 11 Jun 2021 11:22:05 +0200 Subject: [PATCH 51/91] Restore source entry removed by mistake --- sources | 1 + 1 file changed, 1 insertion(+) diff --git a/sources b/sources index 348a6cc..624157b 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ SHA512 (CuraEngine-4.9.1.tar.gz) = cfa918c6301c9948713306256d74a2a84a1fefbc0f85c7ac0eb182d8363f1eae97aecdcb91c207a2e7e1ab252f63cf4b513734b50d4229da7aa35e095ef88bee +SHA512 (e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz) = 232ef301d4d6c82c7c5f0e4234b9160cc815f3b6bcc35d341cdf8738646f2f0887ee9838680699f4c9f4274b1390036b2c4fb3ebc2d663af8ff888114dc9f04b From 8d3149df1455ab113ec422dee2248c76227714e4 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 21 Jul 2021 10:49:15 +0000 Subject: [PATCH 52/91] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering From 2677edf4e237fb1d579bed98d2fd3388f2ff3db0 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 21 Jul 2021 15:43:43 +0000 Subject: [PATCH 53/91] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 309803a..2217c43 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 4.9.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -64,6 +64,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Wed Jul 21 2021 Fedora Release Engineering - 1:4.9.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Thu Jun 10 2021 Gabriel Féron - 4.9.1-1 - Update to 4.9.1 From df856f8ac4cec50e292ec6fa19a5b63a7dc752a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20F=C3=A9ron?= Date: Mon, 16 Aug 2021 12:07:52 +0200 Subject: [PATCH 54/91] Update to 4.10.0 --- CuraEngine.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 2217c43..7543d11 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 -Version: 4.9.1 -Release: 2%{?dist} +Version: 4.10.0 +Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -64,6 +64,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Mon Aug 16 2021 Gabriel Féron - 4.10.0-1 +- Update to 4.10.0 + * Wed Jul 21 2021 Fedora Release Engineering - 1:4.9.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild diff --git a/sources b/sources index 624157b..0061fd3 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (CuraEngine-4.9.1.tar.gz) = cfa918c6301c9948713306256d74a2a84a1fefbc0f85c7ac0eb182d8363f1eae97aecdcb91c207a2e7e1ab252f63cf4b513734b50d4229da7aa35e095ef88bee +SHA512 (CuraEngine-4.10.0.tar.gz) = 45d32be165da98c945c71b2f803a68e06b60eeacf9ad7fcbdde2659cb05455c8f45d69939662de086348129b0d3a40c484819915aa0c6953937a48d53848b652 SHA512 (e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz) = 232ef301d4d6c82c7c5f0e4234b9160cc815f3b6bcc35d341cdf8738646f2f0887ee9838680699f4c9f4274b1390036b2c4fb3ebc2d663af8ff888114dc9f04b From c2aa95c6db818754a49ea717416e8001182a0d1a Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Mon, 23 Aug 2021 14:08:17 -0400 Subject: [PATCH 55/91] Unbundle stb_image --- CuraEngine.spec | 19 +++++++++---------- sources | 1 - 2 files changed, 9 insertions(+), 11 deletions(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 7543d11..09e748c 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,18 +1,12 @@ Name: CuraEngine Epoch: 1 Version: 4.10.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} Source0: %{url}/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz -# The cmake stuff would attempt to git clone this: -# TODO package on it's own -%global stb_commit e6afb9cbae4064da8c3e69af3ff5c4629579c1d2 -Source1: https://github.com/nothings/stb/archive/%{stb_commit}.tar.gz -Provides: bundled(stb) = %stb_commit - BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: libarcus-devel == %{version} @@ -22,6 +16,10 @@ BuildRequires: rapidjson-devel BuildRequires: cmake BuildRequires: git-core +# Header-only package; -static version is for tracking per guidelines +BuildRequires: stb_image-devel +BuildRequires: stb_image-static + Patch0: %{name}-rpath.patch Patch1: %{name}-static-libstdcpp.patch @@ -37,8 +35,6 @@ application look at cura with is the graphical frontend for %{name}. %prep %autosetup -p1 -S git -tar -xf %{SOURCE1} -mv stb-%{stb_commit} stb # bundled libraries rm -rf libs @@ -47,7 +43,7 @@ rm -rf libs sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %build -%cmake -DBUILD_SHARED_LIBS:BOOL=OFF -DCURA_ENGINE_VERSION:STRING=%{version} -DUSE_SYSTEM_LIBS:BOOL=ON -DCMAKE_CXX_FLAGS_RELEASE_INIT:STRING="%{optflags} -fPIC" -DStb_INCLUDE_DIRS:PATH=${PWD} +%cmake -DBUILD_SHARED_LIBS:BOOL=OFF -DCURA_ENGINE_VERSION:STRING=%{version} -DUSE_SYSTEM_LIBS:BOOL=ON -DCMAKE_CXX_FLAGS_RELEASE_INIT:STRING="%{optflags} -fPIC" -DStb_INCLUDE_DIRS:PATH=%{_includedir} %cmake_build @@ -64,6 +60,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Mon Aug 23 2021 Benjamin A. Beasley - 1:4.10.0-2 +- Unbundle stb_image + * Mon Aug 16 2021 Gabriel Féron - 4.10.0-1 - Update to 4.10.0 diff --git a/sources b/sources index 0061fd3..e3f8a58 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ SHA512 (CuraEngine-4.10.0.tar.gz) = 45d32be165da98c945c71b2f803a68e06b60eeacf9ad7fcbdde2659cb05455c8f45d69939662de086348129b0d3a40c484819915aa0c6953937a48d53848b652 -SHA512 (e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz) = 232ef301d4d6c82c7c5f0e4234b9160cc815f3b6bcc35d341cdf8738646f2f0887ee9838680699f4c9f4274b1390036b2c4fb3ebc2d663af8ff888114dc9f04b From 7a8472d19f9edf8cd1ccec2902a18a68e1091aed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20F=C3=A9ron?= Date: Wed, 15 Sep 2021 23:57:07 +0200 Subject: [PATCH 56/91] Update to 4.11.0 --- CuraEngine.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 09e748c..15348e1 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 -Version: 4.10.0 -Release: 2%{?dist} +Version: 4.11.0 +Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -60,6 +60,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Wed Sep 15 2021 Gabriel Féron - 4.11.0-1 +- Update to 4.11.0 + * Mon Aug 23 2021 Benjamin A. Beasley - 1:4.10.0-2 - Unbundle stb_image diff --git a/sources b/sources index e3f8a58..2bac219 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (CuraEngine-4.10.0.tar.gz) = 45d32be165da98c945c71b2f803a68e06b60eeacf9ad7fcbdde2659cb05455c8f45d69939662de086348129b0d3a40c484819915aa0c6953937a48d53848b652 +SHA512 (CuraEngine-4.11.0.tar.gz) = 3152bd0847d6977e2ee7afd57675cb5000a1824d50bbe442d6e67a0534b8f8b8858f8a71f545a8fabaaf2065b47acbd7de11c35591cf6e891bc6871ea84107c1 From abc57433f39f9c514010e8fd7d154154584d5702 Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Sat, 23 Oct 2021 11:58:24 -0400 Subject: [PATCH 57/91] Rebuild with updated stb_image to patch CVE-2021-28021, CVE-2021-42715, and CVE-2021-42716 --- CuraEngine.spec | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 15348e1..76147de 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 4.11.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -17,7 +17,9 @@ BuildRequires: cmake BuildRequires: git-core # Header-only package; -static version is for tracking per guidelines -BuildRequires: stb_image-devel +# stb_image 2.27-0.7 is the minimum EVR to contain fixes for all of +# CVE-2021-28021, CVE-2021-42715, and CVE-2021-42716. +BuildRequires: stb_image-devel >= 2.27-0.7 BuildRequires: stb_image-static Patch0: %{name}-rpath.patch @@ -60,6 +62,10 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Sat Oct 23 2021 Benjamin A. Beasley - 1:4.11.0-2 +- Rebuild with updated stb_image to patch CVE-2021-28021, CVE-2021-42715, and + CVE-2021-42716 + * Wed Sep 15 2021 Gabriel Féron - 4.11.0-1 - Update to 4.11.0 From 8587676f3f5dd19a8fb3f4adfdbc6559d9b9b499 Mon Sep 17 00:00:00 2001 From: Adrian Reber Date: Mon, 25 Oct 2021 11:57:13 +0200 Subject: [PATCH 58/91] Rebuilt for protobuf 3.18.1 --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 76147de..e35fb2d 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 4.11.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -62,6 +62,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Mon Oct 25 2021 Adrian Reber - 1:4.11.0-3 +- Rebuilt for protobuf 3.18.1 + * Sat Oct 23 2021 Benjamin A. Beasley - 1:4.11.0-2 - Rebuild with updated stb_image to patch CVE-2021-28021, CVE-2021-42715, and CVE-2021-42716 From d2bec10804168d2a581e3a5c896c683a63b357e8 Mon Sep 17 00:00:00 2001 From: Adrian Reber Date: Sat, 6 Nov 2021 10:16:23 +0100 Subject: [PATCH 59/91] Rebuilt for protobuf 3.19.0 --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index e35fb2d..8de042a 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 4.11.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -62,6 +62,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Sat Nov 06 2021 Adrian Reber - 1:4.11.0-4 +- Rebuilt for protobuf 3.19.0 + * Mon Oct 25 2021 Adrian Reber - 1:4.11.0-3 - Rebuilt for protobuf 3.18.1 From 56d11b9c29d799f258fb56759f619c16a6a25fe2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20F=C3=A9ron?= Date: Mon, 13 Dec 2021 09:53:13 +0100 Subject: [PATCH 60/91] Update to 4.12.1 --- CuraEngine.spec | 5 ++++- sources | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 8de042a..a889d42 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,6 +1,6 @@ Name: CuraEngine Epoch: 1 -Version: 4.11.0 +Version: 4.12.1 Release: 4%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ @@ -62,6 +62,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Mon Dec 13 2021 Gabriel Féron - 4.12.1-1 +- Update to 4.12.1 + * Sat Nov 06 2021 Adrian Reber - 1:4.11.0-4 - Rebuilt for protobuf 3.19.0 diff --git a/sources b/sources index 2bac219..f512fb4 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (CuraEngine-4.11.0.tar.gz) = 3152bd0847d6977e2ee7afd57675cb5000a1824d50bbe442d6e67a0534b8f8b8858f8a71f545a8fabaaf2065b47acbd7de11c35591cf6e891bc6871ea84107c1 +SHA512 (CuraEngine-4.12.1.tar.gz) = c0c703ec9c7fb05389806f45174d45dd65bece169e3ad88aa1744091ce3c3c1e1e4f5af32cb55cfa9f1a4a8bffe0a008d5924a6e5d02baed00996c9112fbafef From 15fbe24eb205cda9f3da8f68ffb547c98fd93b1a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Mon, 3 Jan 2022 10:40:35 +0100 Subject: [PATCH 61/91] After accidentally not resetting the release number, adjust the changelog to match reality --- CuraEngine.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index a889d42..5e62ad0 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -62,7 +62,7 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog -* Mon Dec 13 2021 Gabriel Féron - 4.12.1-1 +* Mon Dec 13 2021 Gabriel Féron - 4.12.1-4 - Update to 4.12.1 * Sat Nov 06 2021 Adrian Reber - 1:4.11.0-4 From e451b8d85b7e326854225113e24a90e94eea1ef2 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 19 Jan 2022 19:18:50 +0000 Subject: [PATCH 62/91] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 5e62ad0..7e4277e 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 4.12.1 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -62,6 +62,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Wed Jan 19 2022 Fedora Release Engineering - 1:4.12.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Mon Dec 13 2021 Gabriel Féron - 4.12.1-4 - Update to 4.12.1 From e3625c96786bf2ef8a92076d3070ab98bf587c66 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20F=C3=A9ron?= Date: Tue, 11 Jan 2022 20:17:27 +0100 Subject: [PATCH 63/91] Update to 4.13.0 --- CuraEngine-rpath.patch | 24 ------------------------ CuraEngine.spec | 42 +++++++++++++++++++++++++----------------- sources | 2 +- 3 files changed, 26 insertions(+), 42 deletions(-) delete mode 100644 CuraEngine-rpath.patch diff --git a/CuraEngine-rpath.patch b/CuraEngine-rpath.patch deleted file mode 100644 index 380477e..0000000 --- a/CuraEngine-rpath.patch +++ /dev/null @@ -1,24 +0,0 @@ -From ca21643c4a077f5d7dbc9f71c615a4cda8fd2226 Mon Sep 17 00:00:00 2001 -From: rpm-build -Date: Sun, 10 Dec 2017 12:51:57 +0100 -Subject: [PATCH 1/3] CuraEngine-rpath.patch - ---- - CMakeLists.txt | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 5b7100c..3a74350 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -24,7 +24,6 @@ endif() - if(NOT DEFINED LIB_SUFFIX) - set(LIB_SUFFIX "") - endif() --set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}") - - set(CURA_ENGINE_VERSION "master" CACHE STRING "Version name of Cura") - --- -2.14.3 - diff --git a/CuraEngine.spec b/CuraEngine.spec index 7e4277e..fa571c1 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 -Version: 4.12.1 -Release: 5%{?dist} +Version: 4.13.0 +Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -22,8 +22,7 @@ BuildRequires: git-core BuildRequires: stb_image-devel >= 2.27-0.7 BuildRequires: stb_image-static -Patch0: %{name}-rpath.patch -Patch1: %{name}-static-libstdcpp.patch +Patch0: %{name}-static-libstdcpp.patch # Get Fedora 33++ behavior on anything older %undefine __cmake_in_source_build @@ -45,7 +44,13 @@ rm -rf libs sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %build -%cmake -DBUILD_SHARED_LIBS:BOOL=OFF -DCURA_ENGINE_VERSION:STRING=%{version} -DUSE_SYSTEM_LIBS:BOOL=ON -DCMAKE_CXX_FLAGS_RELEASE_INIT:STRING="%{optflags} -fPIC" -DStb_INCLUDE_DIRS:PATH=%{_includedir} +%cmake \ + -DSET_RPATH:BOOL=OFF \ + -DBUILD_SHARED_LIBS:BOOL=OFF \ + -DCURA_ENGINE_VERSION:STRING=%{version} \ + -DUSE_SYSTEM_LIBS:BOOL=ON \ + -DCMAKE_CXX_FLAGS_RELEASE_INIT:STRING="%{optflags} -fPIC" \ + -DStb_INCLUDE_DIRS:PATH=%{_includedir} %cmake_build @@ -62,10 +67,13 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Wed Jan 19 2022 Gabriel Féron - 1:4.13.0-1 +- Update to 4.13.0 + * Wed Jan 19 2022 Fedora Release Engineering - 1:4.12.1-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild -* Mon Dec 13 2021 Gabriel Féron - 4.12.1-4 +* Mon Dec 13 2021 Gabriel Féron - 1:4.12.1-4 - Update to 4.12.1 * Sat Nov 06 2021 Adrian Reber - 1:4.11.0-4 @@ -78,22 +86,22 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h - Rebuild with updated stb_image to patch CVE-2021-28021, CVE-2021-42715, and CVE-2021-42716 -* Wed Sep 15 2021 Gabriel Féron - 4.11.0-1 +* Wed Sep 15 2021 Gabriel Féron - 1:4.11.0-1 - Update to 4.11.0 * Mon Aug 23 2021 Benjamin A. Beasley - 1:4.10.0-2 - Unbundle stb_image -* Mon Aug 16 2021 Gabriel Féron - 4.10.0-1 +* Mon Aug 16 2021 Gabriel Féron - 1:4.10.0-1 - Update to 4.10.0 * Wed Jul 21 2021 Fedora Release Engineering - 1:4.9.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild -* Thu Jun 10 2021 Gabriel Féron - 4.9.1-1 +* Thu Jun 10 2021 Gabriel Féron - 1:4.9.1-1 - Update to 4.9.1 -* Mon Apr 26 2021 Gabriel Féron - 4.9.0-1 +* Mon Apr 26 2021 Gabriel Féron - 1:4.9.0-1 - Update to 4.9.0 * Mon Jan 25 2021 Fedora Release Engineering - 1:4.8.0-3 @@ -102,7 +110,7 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h * Wed Jan 13 14:30:13 CET 2021 Adrian Reber - 1:4.8.0-2 - Rebuilt for protobuf 3.14 -* Wed Dec 23 2020 Jan Pazdziora - 4.8.0-1 +* Wed Dec 23 2020 Jan Pazdziora - 1:4.8.0-1 - Update to 4.8.0 * Wed Sep 23 2020 Adrian Reber - 1:4.7.1-2 @@ -111,7 +119,7 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h * Thu Sep 03 2020 Miro Hrončok - 1:4.7.1-1 - Update to 4.7.1 -* Mon Aug 31 2020 Gabriel Féron - 4.7.0-1 +* Mon Aug 31 2020 Gabriel Féron - 1:4.7.0-1 - Update to 4.7.0 * Mon Jul 27 2020 Fedora Release Engineering - 1:4.6.1-3 @@ -120,10 +128,10 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h * Sun Jun 14 2020 Adrian Reber - 1:4.6.1-2 - Rebuilt for protobuf 3.12 -* Tue May 5 2020 Gabriel Féron - 4.6.0-1 +* Tue May 5 2020 Gabriel Féron - 1:4.6.0-1 - Update to 4.6.1 -* Tue Apr 21 2020 Gabriel Féron - 4.6.0-1 +* Tue Apr 21 2020 Gabriel Féron - 1:4.6.0-1 - Update to 4.6.0 * Tue Jan 28 2020 Fedora Release Engineering - 1:4.4.0-3 @@ -132,16 +140,16 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h * Thu Dec 19 2019 Orion Poplawski - 1:4.4.0-2 - Rebuild for protobuf 3.11 -* Thu Nov 21 2019 Gabriel Féron - 4.4.0-1 +* Thu Nov 21 2019 Gabriel Féron - 1:4.4.0-1 - Update to 4.4.0 * Wed Jul 24 2019 Fedora Release Engineering - 1:4.1.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild -* Tue Jun 18 2019 Gabriel Féron - 4.1.0-1 +* Tue Jun 18 2019 Gabriel Féron - 1:4.1.0-1 - Update to 4.1.0 -* Wed Apr 03 2019 Gabriel Féron - 4.0.0-1 +* Wed Apr 03 2019 Gabriel Féron - 1:4.0.0-1 - Update to 4.0.0 * Thu Jan 31 2019 Fedora Release Engineering - 1:3.6.0-4 diff --git a/sources b/sources index f512fb4..ceb7368 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (CuraEngine-4.12.1.tar.gz) = c0c703ec9c7fb05389806f45174d45dd65bece169e3ad88aa1744091ce3c3c1e1e4f5af32cb55cfa9f1a4a8bffe0a008d5924a6e5d02baed00996c9112fbafef +SHA512 (CuraEngine-4.13.0.tar.gz) = 3d52c67c0968f6caffd9e0b86743f70916705e6f2896466e69a179ce97b6d35f7af33b056e9375abaa445a00438d25e5f782a7e2a92c0805cec0c0527a25426c From ddbd54e9af89f0e67267e7ed7bd5bd1fedacf5c9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20F=C3=A9ron?= Date: Tue, 1 Feb 2022 11:10:08 +0100 Subject: [PATCH 64/91] Update to 4.13.1 --- CuraEngine.spec | 5 ++++- sources | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index fa571c1..ab1816b 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,6 +1,6 @@ Name: CuraEngine Epoch: 1 -Version: 4.13.0 +Version: 4.13.1 Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ @@ -67,6 +67,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Tue Feb 01 2022 Gabriel Féron - 1:4.13.1-1 +- Update to 4.13.1 + * Wed Jan 19 2022 Gabriel Féron - 1:4.13.0-1 - Update to 4.13.0 diff --git a/sources b/sources index ceb7368..0c17d12 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (CuraEngine-4.13.0.tar.gz) = 3d52c67c0968f6caffd9e0b86743f70916705e6f2896466e69a179ce97b6d35f7af33b056e9375abaa445a00438d25e5f782a7e2a92c0805cec0c0527a25426c +SHA512 (CuraEngine-4.13.1.tar.gz) = 224379a40e26ae0026a3849d582353e49edf99520401e1fef56c9504638c68c62cfe394dab0eb40e4a447bfe0bfa506a880512e84fd6057a839b6384087c46d0 From 684ba5ea588e0d39c88e911ad399920f27dff53e Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Sat, 23 Apr 2022 13:20:51 -0400 Subject: [PATCH 65/91] Security fix for CVE-2022-28041 --- CuraEngine.spec | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index ab1816b..46e0d1f 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 4.13.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -17,9 +17,9 @@ BuildRequires: cmake BuildRequires: git-core # Header-only package; -static version is for tracking per guidelines -# stb_image 2.27-0.7 is the minimum EVR to contain fixes for all of -# CVE-2021-28021, CVE-2021-42715, and CVE-2021-42716. -BuildRequires: stb_image-devel >= 2.27-0.7 +# stb_image 2.27^20210910gitaf1a5bc-0.2 is the minimum EVR to contain fixes for +# all of CVE-2021-28021, CVE-2021-42715, CVE-2021-42716, and CVE-2022-28041. +BuildRequires: stb_image-devel >= 2.27^20210910gitaf1a5bc-0.2 BuildRequires: stb_image-static Patch0: %{name}-static-libstdcpp.patch @@ -67,6 +67,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Sat Apr 23 2022 Benjamin A. Beasley - 1:4.13.1-2 +- Security fix for CVE-2022-28041 + * Tue Feb 01 2022 Gabriel Féron - 1:4.13.1-1 - Update to 4.13.1 From a62fc369f5898b33a968336a2816b2741b82381b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Mon, 18 Jul 2022 14:44:51 +0200 Subject: [PATCH 66/91] https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval --- CuraEngine.spec | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/CuraEngine.spec b/CuraEngine.spec index 46e0d1f..da479e5 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -24,6 +24,11 @@ BuildRequires: stb_image-static Patch0: %{name}-static-libstdcpp.patch +# https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval +%if 0%{?fedora} >= 37 || 0%{?rhel} >= 10 +ExcludeArch: %{ix86} +%endif + # Get Fedora 33++ behavior on anything older %undefine __cmake_in_source_build From ee82eb82bdd7f2db452535bf21090b1ca759ac22 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 20 Jul 2022 18:33:57 +0000 Subject: [PATCH 67/91] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index da479e5..59004c6 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 4.13.1 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -72,6 +72,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Wed Jul 20 2022 Fedora Release Engineering - 1:4.13.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Sat Apr 23 2022 Benjamin A. Beasley - 1:4.13.1-2 - Security fix for CVE-2022-28041 From 6f2b2636f60b2de24107a54b8e04929c2e9a8f85 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 18 Jan 2023 19:43:37 +0000 Subject: [PATCH 68/91] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 59004c6..3a7f5c1 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 4.13.1 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -72,6 +72,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Wed Jan 18 2023 Fedora Release Engineering - 1:4.13.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Wed Jul 20 2022 Fedora Release Engineering - 1:4.13.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild From d28f65841a68e089a38e1c4534654bb691dfdf5c Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Sun, 29 Jan 2023 10:58:22 -0500 Subject: [PATCH 69/91] Add an #include needed for GCC 13 --- 0001-Add-an-include-needed-for-GCC-13.patch | 25 +++++++++++++++++++++ CuraEngine.spec | 10 +++++++-- 2 files changed, 33 insertions(+), 2 deletions(-) create mode 100644 0001-Add-an-include-needed-for-GCC-13.patch diff --git a/0001-Add-an-include-needed-for-GCC-13.patch b/0001-Add-an-include-needed-for-GCC-13.patch new file mode 100644 index 0000000..550b405 --- /dev/null +++ b/0001-Add-an-include-needed-for-GCC-13.patch @@ -0,0 +1,25 @@ +From 85c690a98d716e1709690ab64fe6d8d6e2f3381a Mon Sep 17 00:00:00 2001 +From: "Benjamin A. Beasley" +Date: Sun, 29 Jan 2023 10:23:00 -0500 +Subject: [PATCH] Add an #include needed for GCC 13 + +This is a (very) partial backport of de60e86a6ea11cb7d121471b5dd192e5deac0f3d. +--- + src/utils/math.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/utils/math.h b/src/utils/math.h +index e36788fb..518cad05 100644 +--- a/src/utils/math.h ++++ b/src/utils/math.h +@@ -4,6 +4,7 @@ + #ifndef UTILS_MATH_H + #define UTILS_MATH_H + ++#include + #include + + +-- +2.39.1 + diff --git a/CuraEngine.spec b/CuraEngine.spec index 3a7f5c1..287553b 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 4.13.1 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -22,7 +22,10 @@ BuildRequires: git-core BuildRequires: stb_image-devel >= 2.27^20210910gitaf1a5bc-0.2 BuildRequires: stb_image-static -Patch0: %{name}-static-libstdcpp.patch +Patch: %{name}-static-libstdcpp.patch +# Add an #include needed for GCC 13 +# This is a (very) partial backport of upstream commit de60e86. +Patch: 0001-Add-an-include-needed-for-GCC-13.patch # https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval %if 0%{?fedora} >= 37 || 0%{?rhel} >= 10 @@ -72,6 +75,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Sun Jan 29 2023 Benjamin A. Beasley - 1:4.13.1-5 +- Add an #include needed for GCC 13 + * Wed Jan 18 2023 Fedora Release Engineering - 1:4.13.1-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild From 8c59bcaa10aa4000b6add7220af967b4c68dc39f Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Sat, 25 Feb 2023 13:52:21 -0500 Subject: [PATCH 70/91] Update minimum stb_image to fix a null deref. bug --- CuraEngine.spec | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 287553b..aa9d79c 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 4.13.1 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -17,10 +17,9 @@ BuildRequires: cmake BuildRequires: git-core # Header-only package; -static version is for tracking per guidelines -# stb_image 2.27^20210910gitaf1a5bc-0.2 is the minimum EVR to contain fixes for -# all of CVE-2021-28021, CVE-2021-42715, CVE-2021-42716, and CVE-2022-28041. -BuildRequires: stb_image-devel >= 2.27^20210910gitaf1a5bc-0.2 -BuildRequires: stb_image-static +# stb_image 2.28^20230129git5736b15-0.2 is the minimum EVR that fixes the null +# pointer dereference reported in https://github.com/nothings/stb/issues/1452. +BuildRequires: stb_image-static >= 2.28^20230129git5736b15-0.2 Patch: %{name}-static-libstdcpp.patch # Add an #include needed for GCC 13 @@ -75,6 +74,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Sat Feb 25 2023 Benjamin A. Beasley - 1:4.13.1-6 +- Update minimum stb_image to fix a null deref. bug + * Sun Jan 29 2023 Benjamin A. Beasley - 1:4.13.1-5 - Add an #include needed for GCC 13 From 7ffc88ed6dff3656f31c066f5960b2c90323aaad Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 9 Mar 2023 11:44:08 -0500 Subject: [PATCH 71/91] update to 5.3.0 --- CMakeLists.txt | 418 +++++++++++++++++++++++++++++++++ CPackConfig.cmake | 20 ++ CuraEngine.spec | 35 ++- FindGMock.cmake | 515 +++++++++++++++++++++++++++++++++++++++++ FindPolyclipping.cmake | 67 ++++++ FindStb.cmake | 69 ++++++ sources | 2 +- 7 files changed, 1116 insertions(+), 10 deletions(-) create mode 100644 CMakeLists.txt create mode 100644 CPackConfig.cmake create mode 100644 FindGMock.cmake create mode 100644 FindPolyclipping.cmake create mode 100644 FindStb.cmake diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..5993783 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,418 @@ +#Copyright (c) 2020 Ultimaker B.V. +#CuraEngine is released under the terms of the AGPLv3 or higher. + +cmake_minimum_required(VERSION 3.8.0) + +project(CuraEngine) + +list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake") + +option(ENABLE_ARCUS "Enable support for ARCUS" ON) + +if (MSVC) + option(MSVC_STATIC_RUNTIME "Link the MSVC runtime statically" OFF) +endif() + +if(ENABLE_ARCUS) + message(STATUS "Building with Arcus") + # We want to have access to protobuf_generate_cpp and other FindProtobuf features. + # However, if ProtobufConfig is used instead, there is a CMake option that controls + # this, which defaults to OFF. We need to force this option to ON instead. + set(protobuf_MODULE_COMPATIBLE ON CACHE INTERNAL "" FORCE) + find_package(Protobuf 3.0.0 REQUIRED) + find_package(Arcus REQUIRED) + add_definitions(-DARCUS) + find_program(PROTOC "protoc") + if(${PROTOC} STREQUAL "PROTOC-NOTFOUND") + message(FATAL_ERROR "Protobuf compiler missing") + endif() +endif() + +#For reading image files. +find_package(Stb REQUIRED) +include_directories(${Stb_INCLUDE_DIRS}) + +option(USE_SYSTEM_LIBS "Use the system libraries if available" OFF) +if(USE_SYSTEM_LIBS) + find_package(RapidJSON CONFIG REQUIRED) + find_package(Polyclipping REQUIRED) +endif() + +# convert build type to upper case letters +if(CMAKE_BUILD_TYPE) + string(TOUPPER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_UPPER) +endif() + +if(CMAKE_BUILD_TYPE_UPPER MATCHES "DEBUG") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_DEBUG_INIT}") +else() + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_RELEASE_INIT}") +endif() + +set(CMAKE_CXX_STANDARD 20) + +if(APPLE AND CMAKE_CXX_COMPILER_ID MATCHES "Clang") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++") +endif() + +OPTION(SET_RPATH ON) + +if(SET_RPATH) + if(NOT DEFINED LIB_SUFFIX) + set(LIB_SUFFIX "") + endif() + set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}") +endif() + +set(CURA_ENGINE_VERSION "master" CACHE STRING "Version name of Cura") + +option(BUILD_TESTS OFF) + +# Add a compiler flag to check the output for insane values if we are in debug mode. +if(CMAKE_BUILD_TYPE_UPPER MATCHES "DEBUG" OR CMAKE_BUILD_TYPE_UPPER MATCHES "RELWITHDEBINFO") + message(STATUS "Building debug release of CuraEngine.") + if (NOT MSVC) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wextra -O0 -g -fno-omit-frame-pointer") + endif() + add_definitions(-DASSERT_INSANE_OUTPUT) + add_definitions(-DUSE_CPU_TIME) + add_definitions(-DDEBUG) +endif() + +if (MSVC) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /permissive- /Zc:twoPhase- /EHsc /W3") + if (MSVC_STATIC_RUNTIME) + foreach(flag_var + CMAKE_CXX_FLAGS + CMAKE_CXX_FLAGS_DEBUG + CMAKE_CXX_FLAGS_RELEASE + CMAKE_CXX_FLAGS_MINSIZEREL + CMAKE_CXX_FLAGS_RELWITHDEBINFO + ) + if(${flag_var} MATCHES "/MD") + string(REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}") + endif() + endforeach() + endif() +else() + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall") # Add warnings +endif() + +option (ENABLE_MORE_COMPILER_OPTIMIZATION_FLAGS + "Enable more optimization flags" ON) +if (ENABLE_MORE_COMPILER_OPTIMIZATION_FLAGS AND NOT (CMAKE_BUILD_TYPE_UPPER MATCHES "DEBUG")) + message (STATUS "Compile with more optimization flags") + if (MSVC) + set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS} /fp:fast") + else() + set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS} -Ofast -funroll-loops") + endif() +endif () + +if(NOT APPLE AND NOT WIN32) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -static-libstdc++") +endif() + +if (WIN32) + add_definitions(-DNOMINMAX) +endif() + +add_definitions(-DSPDLOG_FMT_EXTERNAL) + +option (ENABLE_OPENMP + "Use OpenMP for parallel code" ON) + +if (ENABLE_OPENMP) + FIND_PACKAGE( OpenMP ) + if( OPENMP_FOUND ) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}" ) + endif() +endif() + +if(USE_SYSTEM_LIBS) + include_directories(${Polyclipping_INCLUDE_DIRS} "${CMAKE_BINARY_DIR}" ${RAPIDJSON_INCLUDE_DIRS} include) +else() + include_directories("${CMAKE_CURRENT_BINARY_DIR}" libs libs/clipper include) + add_library(clipper STATIC libs/clipper/clipper.cpp) +endif() + +set(engine_SRCS # Except main.cpp. + src/Application.cpp + src/bridge.cpp + src/ConicalOverhang.cpp + src/ExtruderTrain.cpp + src/FffGcodeWriter.cpp + src/FffPolygonGenerator.cpp + src/FffProcessor.cpp + src/gcodeExport.cpp + src/GCodePathConfig.cpp + src/infill.cpp + src/InsetOrderOptimizer.cpp + src/InterlockingGenerator.cpp + src/layerPart.cpp + src/LayerPlan.cpp + src/LayerPlanBuffer.cpp + src/mesh.cpp + src/MeshGroup.cpp + src/Mold.cpp + src/multiVolumes.cpp + src/PathOrderPath.cpp + src/Preheat.cpp + src/PrimeTower.cpp + src/raft.cpp + src/Scene.cpp + src/SkeletalTrapezoidation.cpp + src/SkeletalTrapezoidationGraph.cpp + src/skin.cpp + src/SkirtBrim.cpp + src/SupportInfillPart.cpp + src/Slice.cpp + src/sliceDataStorage.cpp + src/slicer.cpp + src/support.cpp + src/timeEstimate.cpp + src/TopSurface.cpp + src/TreeModelVolumes.cpp + src/TreeSupport.cpp + src/WallToolPaths.cpp + src/WallsComputation.cpp + src/Weaver.cpp + src/Wireframe2gcode.cpp + + src/BeadingStrategy/BeadingStrategy.cpp + src/BeadingStrategy/BeadingStrategyFactory.cpp + src/BeadingStrategy/DistributedBeadingStrategy.cpp + src/BeadingStrategy/LimitedBeadingStrategy.cpp + src/BeadingStrategy/OuterWallInsetBeadingStrategy.cpp + src/BeadingStrategy/RedistributeBeadingStrategy.cpp + src/BeadingStrategy/WideningBeadingStrategy.cpp + + src/communication/ArcusCommunication.cpp + src/communication/ArcusCommunicationPrivate.cpp + src/communication/CommandLine.cpp + src/communication/Listener.cpp + + src/infill/ImageBasedDensityProvider.cpp + src/infill/NoZigZagConnectorProcessor.cpp + src/infill/ZigzagConnectorProcessor.cpp + src/infill/LightningDistanceField.cpp + src/infill/LightningGenerator.cpp + src/infill/LightningLayer.cpp + src/infill/LightningTreeNode.cpp + src/infill/SierpinskiFill.cpp + src/infill/SierpinskiFillProvider.cpp + src/infill/SubDivCube.cpp + src/infill/GyroidInfill.cpp + + src/pathPlanning/Comb.cpp + src/pathPlanning/GCodePath.cpp + src/pathPlanning/LinePolygonsCrossings.cpp + src/pathPlanning/NozzleTempInsert.cpp + src/pathPlanning/TimeMaterialEstimates.cpp + + src/progress/Progress.cpp + src/progress/ProgressStageEstimator.cpp + + src/settings/AdaptiveLayerHeights.cpp + src/settings/FlowTempGraph.cpp + src/settings/PathConfigStorage.cpp + src/settings/Settings.cpp + src/settings/ZSeamConfig.cpp + + src/utils/AABB.cpp + src/utils/AABB3D.cpp + src/utils/Date.cpp + src/utils/ExtrusionJunction.cpp + src/utils/ExtrusionLine.cpp + src/utils/ExtrusionSegment.cpp + src/utils/FMatrix4x3.cpp + src/utils/gettime.cpp + src/utils/LinearAlg2D.cpp + src/utils/ListPolyIt.cpp + src/utils/MinimumSpanningTree.cpp + src/utils/Point3.cpp + src/utils/PolygonConnector.cpp + src/utils/PolygonsPointIndex.cpp + src/utils/PolygonsSegmentIndex.cpp + src/utils/PolylineStitcher.cpp + src/utils/polygonUtils.cpp + src/utils/polygon.cpp + src/utils/ProximityPointLink.cpp + src/utils/Simplify.cpp + src/utils/SVG.cpp + src/utils/socket.cpp + src/utils/SquareGrid.cpp + src/utils/ThreadPool.cpp + src/utils/ToolpathVisualizer.cpp + src/utils/VoronoiUtils.cpp + src/utils/VoxelUtils.cpp +) + +# List of tests. For each test there must be a file tests/${NAME}.cpp. +set(engine_TEST + GCodeExportTest + InfillTest + LayerPlanTest + MergeInfillLinesTest + PathOrderMonotonicTest + TimeEstimateCalculatorTest +) +set(engine_TEST_INTEGRATION + SlicePhaseTest +) +set(engine_TEST_SETTINGS + SettingsTest +) +if (ENABLE_ARCUS) + set(engine_TEST_ARCUS + ArcusCommunicationTest + ArcusCommunicationPrivateTest + ) +endif () +set(engine_TEST_UTILS + AABBTest + AABB3DTest + IntPointTest + LinearAlg2DTest + MinimumSpanningTreeTest + PolygonConnectorTest + PolygonTest + PolygonUtilsTest + SparseGridTest + StringTest + UnionFindTest +) + +# Helper classes for some tests. +set(engine_TEST_ARCUS_HELPERS + tests/arcus/MockSocket.cpp +) +set(engine_TEST_HELPERS + tests/ReadTestPolygons.cpp +) + +# Generating ProtoBuf protocol +if (ENABLE_ARCUS) + protobuf_generate_cpp(engine_PB_SRCS engine_PB_HEADERS Cura.proto) +endif () + +# Compiling CuraEngine itself. +add_library(_CuraEngine STATIC ${engine_SRCS} ${engine_PB_SRCS}) #First compile all of CuraEngine as library, allowing this to be re-used for tests. + +if (CuraEngine_Download_Stb) + add_dependencies(_CuraEngine stb) +endif() +if(USE_SYSTEM_LIBS) + target_link_libraries(_CuraEngine ${Polyclipping_LIBRARIES}) +else() + target_link_libraries(_CuraEngine clipper) +endif() + +if (ENABLE_ARCUS) + target_link_libraries(_CuraEngine Arcus) +endif () + +target_link_libraries(_CuraEngine fmt) + +set_target_properties(_CuraEngine PROPERTIES COMPILE_DEFINITIONS "VERSION=\"${CURA_ENGINE_VERSION}\"") + +if(WIN32) + message(STATUS "Using windres") + set(RES_FILES "CuraEngine.rc") + ENABLE_LANGUAGE(RC) + if(NOT MSVC) + SET(CMAKE_RC_COMPILER_INIT windres) + SET(CMAKE_RC_COMPILE_OBJECT + " -O coff -i -o " + ) + endif() +endif(WIN32) + +if (UNIX) + target_link_libraries(_CuraEngine pthread) +endif() + +if (NOT WIN32) + add_executable(CuraEngine src/main.cpp) # Then compile main.cpp as separate executable, and link the library to it. +else() + add_executable(CuraEngine src/main.cpp ${RES_FILES}) # ..., but don't forget the glitter! +endif(NOT WIN32) + +target_link_libraries(CuraEngine _CuraEngine) +set_target_properties(CuraEngine PROPERTIES COMPILE_DEFINITIONS "VERSION=\"${CURA_ENGINE_VERSION}\"") + +# Compiling the test environment. +if (BUILD_TESTS) + include(CTest) + + message(STATUS "Building tests...") + set(GTEST_USE_STATIC_LIBS true) + set(GMOCK_ROOT "${CMAKE_CURRENT_BINARY_DIR}/gmock") + set(GMOCK_VER "1.8.0") + find_package(GMock REQUIRED) + include_directories(${GTEST_INCLUDE_DIRS}) + include_directories(${GMOCK_INCLUDE_DIRS}) + add_dependencies(_CuraEngine GTest::GTest GTest::Main GMock::GMock GMock::Main) + add_definitions(-DBUILD_TESTS) + + target_compile_definitions(_CuraEngine PUBLIC BUILD_TESTS=1) + + #To make sure that the tests are built before running them, add the building of these tests as an additional test. + add_custom_target(build_all_tests) + add_test(BuildTests "${CMAKE_COMMAND}" --build "${CMAKE_CURRENT_BINARY_DIR}" --target build_all_tests) + + foreach (test ${engine_TEST}) + add_executable(${test} tests/main.cpp ${engine_TEST_HELPERS} tests/${test}.cpp) + target_link_libraries(${test} _CuraEngine ${GTEST_BOTH_LIBRARIES} ${GMOCK_BOTH_LIBRARIES}) + add_test(NAME ${test} COMMAND "${test}" WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tests/") + add_dependencies(build_all_tests ${test}) #Make sure that this gets built as part of the build_all_tests target. + endforeach() + foreach (test ${engine_TEST_INFILL}) + add_executable(${test} tests/main.cpp tests/infill/${test}.cpp) + target_link_libraries(${test} _CuraEngine ${GTEST_BOTH_LIBRARIES} ${GMOCK_BOTH_LIBRARIES}) + add_test(NAME ${test} COMMAND "${test}" WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tests/") + add_dependencies(build_all_tests ${test}) #Make sure that this gets built as part of the build_all_tests target. + endforeach() + foreach (test ${engine_TEST_INTEGRATION}) + add_executable(${test} tests/main.cpp tests/integration/${test}.cpp) + target_link_libraries(${test} _CuraEngine ${GTEST_BOTH_LIBRARIES} ${GMOCK_BOTH_LIBRARIES}) + add_test(NAME ${test} COMMAND "${test}" WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tests/") + add_dependencies(build_all_tests ${test}) #Make sure that this gets built as part of the build_all_tests target. + endforeach() + foreach (test ${engine_TEST_SETTINGS}) + add_executable(${test} tests/main.cpp tests/settings/${test}.cpp) + target_link_libraries(${test} _CuraEngine ${GTEST_BOTH_LIBRARIES} ${GMOCK_BOTH_LIBRARIES}) + add_test(NAME ${test} COMMAND "${test}" WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tests/") + add_dependencies(build_all_tests ${test}) #Make sure that this gets built as part of the build_all_tests target. + endforeach() + if (ENABLE_ARCUS) + foreach (test ${engine_TEST_ARCUS}) + add_executable(${test} tests/main.cpp ${engine_TEST_ARCUS_HELPERS} tests/arcus/${test}.cpp) + target_link_libraries(${test} _CuraEngine ${GTEST_BOTH_LIBRARIES} ${GMOCK_BOTH_LIBRARIES}) + add_test(NAME ${test} COMMAND "${test}" WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tests/") + add_dependencies(build_all_tests ${test}) #Make sure that this gets built as part of the build_all_tests target. + endforeach() + endif () + foreach (test ${engine_TEST_UTILS}) + add_executable(${test} tests/main.cpp tests/utils/${test}.cpp) + target_link_libraries(${test} _CuraEngine ${GTEST_BOTH_LIBRARIES} ${GMOCK_BOTH_LIBRARIES}) + add_test(NAME ${test} COMMAND "${test}" WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/tests/") + add_dependencies(build_all_tests ${test}) #Make sure that this gets built as part of the build_all_tests target. + endforeach() +endif() + +# Installing CuraEngine. +include(GNUInstallDirs) +install(TARGETS CuraEngine DESTINATION "${CMAKE_INSTALL_BINDIR}") +# For MinGW64 cross compiling on Debian, we create a ZIP package instead of a DEB +# Because it's the Windows build system that should install the files. +if (CMAKE_CROSSCOMPILING AND CMAKE_SYSTEM_NAME MATCHES "Windows") + message(STATUS "Include MinGW64 posix DLLs for installation.") + install(FILES + /usr/lib/gcc/x86_64-w64-mingw32/8.3-posix/libgcc_s_seh-1.dll + /usr/lib/gcc/x86_64-w64-mingw32/8.3-posix/libgomp-1.dll + /usr/lib/gcc/x86_64-w64-mingw32/8.3-posix/libstdc++-6.dll + DESTINATION bin + COMPONENT runtime) +endif () +include(CPackConfig.cmake) diff --git a/CPackConfig.cmake b/CPackConfig.cmake new file mode 100644 index 0000000..91c4b71 --- /dev/null +++ b/CPackConfig.cmake @@ -0,0 +1,20 @@ +set(CPACK_PACKAGE_VENDOR "Ultimaker") +set(CPACK_PACKAGE_CONTACT "Arjen Hiemstra ") +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Cura Engine") +set(CPACK_PACKAGE_VERSION "15.05.90") +set(CPACK_GENERATOR "DEB") +if(NOT DEFINED CPACK_DEBIAN_PACKAGE_ARCHITECTURE) + execute_process(COMMAND dpkg --print-architecture OUTPUT_VARIABLE CPACK_DEBIAN_PACKAGE_ARCHITECTURE OUTPUT_STRIP_TRAILING_WHITESPACE) +endif() +set(CPACK_PACKAGE_FILE_NAME "${CMAKE_PROJECT_NAME}-${CPACK_PACKAGE_VERSION}_${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}") + +set(DEB_DEPENDS + "arcus (>= 15.05.90)" + "protobuf (>= 3.0.0)" + "libstdc++6 (>= 4.9.0)" + "libgcc1 (>= 4.9.0)" +) +string(REPLACE ";" ", " DEB_DEPENDS "${DEB_DEPENDS}") +set(CPACK_DEBIAN_PACKAGE_DEPENDS ${DEB_DEPENDS}) + +include(CPack) diff --git a/CuraEngine.spec b/CuraEngine.spec index aa9d79c..5b3ebac 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,30 +1,37 @@ Name: CuraEngine Epoch: 1 -Version: 4.13.1 -Release: 6%{?dist} +Version: 5.3.0 +Release: 1%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} Source0: %{url}/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz +# Cmake bits taken from 4.13.1, before upstream went nuts with conan +Source2: FindGMock.cmake +Source3: FindPolyclipping.cmake +Source4: FindStb.cmake +Source5: CMakeLists.txt +Source6: CPackConfig.cmake + BuildRequires: gcc BuildRequires: gcc-c++ -BuildRequires: libarcus-devel == %{version} +BuildRequires: libarcus-devel >= 5.2.2 BuildRequires: polyclipping-devel >= 6.1.2 BuildRequires: protobuf-devel BuildRequires: rapidjson-devel BuildRequires: cmake BuildRequires: git-core +BuildRequires: range-v3-devel +BuildRequires: fmt-devel +BuildRequires: spdlog-devel # Header-only package; -static version is for tracking per guidelines # stb_image 2.28^20230129git5736b15-0.2 is the minimum EVR that fixes the null # pointer dereference reported in https://github.com/nothings/stb/issues/1452. BuildRequires: stb_image-static >= 2.28^20230129git5736b15-0.2 -Patch: %{name}-static-libstdcpp.patch -# Add an #include needed for GCC 13 -# This is a (very) partial backport of upstream commit de60e86. -Patch: 0001-Add-an-include-needed-for-GCC-13.patch +Patch0: %{name}-static-libstdcpp.patch # https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval %if 0%{?fedora} >= 37 || 0%{?rhel} >= 10 @@ -42,13 +49,20 @@ This is just a console application for G-code generation. For a full graphical application look at cura with is the graphical frontend for %{name}. %prep -%autosetup -p1 -S git +%setup -q + +mkdir cmake +cp -a %{SOURCE2} %{SOURCE3} %{SOURCE4} cmake +rm -rf CMakeLists.txt +cp -a %{SOURCE5} %{SOURCE6} . + +%patch0 -p1 # bundled libraries rm -rf libs # The -DCURA_ENGINE_VERSION does not work, so we sed-change the default value -sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h +# sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %build %cmake \ @@ -74,6 +88,9 @@ sed -i 's/"DEV"/"%{version}"/' src/settings/Settings.h %{_bindir}/%{name} %changelog +* Wed Mar 8 2023 Tom Callaway - 1:5.3.0-1 +- update to 5.3.0 + * Sat Feb 25 2023 Benjamin A. Beasley - 1:4.13.1-6 - Update minimum stb_image to fix a null deref. bug diff --git a/FindGMock.cmake b/FindGMock.cmake new file mode 100644 index 0000000..8d73242 --- /dev/null +++ b/FindGMock.cmake @@ -0,0 +1,515 @@ +# Get the Google C++ Mocking Framework. +# (This file is almost an copy of the original FindGTest.cmake file, +# altered to download and compile GMock and GTest if not found +# in GMOCK_ROOT or GTEST_ROOT respectively, +# feel free to use it as it is or modify it for your own needs.) +# +# Defines the following variables: +# +# GMOCK_FOUND - Found or got the Google Mocking framework +# GTEST_FOUND - Found or got the Google Testing framework +# GMOCK_INCLUDE_DIRS - GMock include directory +# GTEST_INCLUDE_DIRS - GTest include direcotry +# +# Also defines the library variables below as normal variables +# +# GMOCK_BOTH_LIBRARIES - Both libgmock & libgmock_main +# GMOCK_LIBRARIES - libgmock +# GMOCK_MAIN_LIBRARIES - libgmock-main +# +# GTEST_BOTH_LIBRARIES - Both libgtest & libgtest_main +# GTEST_LIBRARIES - libgtest +# GTEST_MAIN_LIBRARIES - libgtest_main +# +# Accepts the following variables as input: +# +# GMOCK_ROOT - The root directory of the gmock install prefix +# GTEST_ROOT - The root directory of the gtest install prefix +# GMOCK_SRC_DIR -The directory of the gmock sources +# GMOCK_VER - The version of the gmock sources to be downloaded +# +#----------------------- +# Example Usage: +# +# set(GMOCK_ROOT "~/gmock") +# find_package(GMock REQUIRED) +# include_directories(${GMOCK_INCLUDE_DIRS}) +# +# add_executable(foo foo.cc) +# target_link_libraries(foo ${GMOCK_BOTH_LIBRARIES}) +# +#============================================================================= +# Copyright (c) 2016 Michel Estermann +# Copyright (c) 2016 Kamil Strzempowicz +# Copyright (c) 2011 Matej Svec +# +# CMake - Cross Platform Makefile Generator +# Copyright 2000-2016 Kitware, Inc. +# Copyright 2000-2011 Insight Software Consortium +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# * Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# * Neither the names of Kitware, Inc., the Insight Software Consortium, +# nor the names of their contributors may be used to endorse or promote +# products derived from this software without specific prior written +# permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# ------------------------------------------------------------------------------ +# +# The above copyright and license notice applies to distributions of +# CMake in source and binary form. Some source files contain additional +# notices of original copyright by their contributors; see each source +# for details. Third-party software packages supplied with CMake under +# compatible licenses provide their own copyright notices documented in +# corresponding subdirectories. +# +# ------------------------------------------------------------------------------ +# +# CMake was initially developed by Kitware with the following sponsorship: +# +# * National Library of Medicine at the National Institutes of Health +# as part of the Insight Segmentation and Registration Toolkit (ITK). +# +# * US National Labs (Los Alamos, Livermore, Sandia) ASC Parallel +# Visualization Initiative. +# +# * National Alliance for Medical Image Computing (NAMIC) is funded by the +# National Institutes of Health through the NIH Roadmap for Medical Research, +# Grant U54 EB005149. +# +# * Kitware, Inc. +#============================================================================= +# Thanks to Daniel Blezek for the GTEST_ADD_TESTS code + +function(gtest_add_tests executable extra_args) + if(NOT ARGN) + message(FATAL_ERROR "Missing ARGN: Read the documentation for GTEST_ADD_TESTS") + endif() + if(ARGN STREQUAL "AUTO") + # obtain sources used for building that executable + get_property(ARGN TARGET ${executable} PROPERTY SOURCES) + endif() + set(gtest_case_name_regex ".*\\( *([A-Za-z_0-9]+) *, *([A-Za-z_0-9]+) *\\).*") + set(gtest_test_type_regex "(TYPED_TEST|TEST_?[FP]?)") + foreach(source ${ARGN}) + file(READ "${source}" contents) + string(REGEX MATCHALL "${gtest_test_type_regex} *\\(([A-Za-z_0-9 ,]+)\\)" found_tests ${contents}) + foreach(hit ${found_tests}) + string(REGEX MATCH "${gtest_test_type_regex}" test_type ${hit}) + + # Parameterized tests have a different signature for the filter + if("x${test_type}" STREQUAL "xTEST_P") + string(REGEX REPLACE ${gtest_case_name_regex} "*/\\1.\\2/*" test_name ${hit}) + elseif("x${test_type}" STREQUAL "xTEST_F" OR "x${test_type}" STREQUAL "xTEST") + string(REGEX REPLACE ${gtest_case_name_regex} "\\1.\\2" test_name ${hit}) + elseif("x${test_type}" STREQUAL "xTYPED_TEST") + string(REGEX REPLACE ${gtest_case_name_regex} "\\1/*.\\2" test_name ${hit}) + else() + message(WARNING "Could not parse GTest ${hit} for adding to CTest.") + continue() + endif() + add_test(NAME ${test_name} COMMAND ${executable} --gtest_filter=${test_name} ${extra_args}) + endforeach() + endforeach() +endfunction() + +function(_append_debugs _endvar _library) + if(${_library} AND ${_library}_DEBUG) + set(_output optimized ${${_library}} debug ${${_library}_DEBUG}) + else() + set(_output ${${_library}}) + endif() + set(${_endvar} ${_output} PARENT_SCOPE) +endfunction() + +function(_gmock_find_library _name) + find_library(${_name} + NAMES ${ARGN} + HINTS + ENV GMOCK_ROOT + ${GMOCK_ROOT} + PATH_SUFFIXES ${_gmock_libpath_suffixes} + ) + mark_as_advanced(${_name}) +endfunction() + +function(_gtest_find_library _name) + find_library(${_name} + NAMES ${ARGN} + HINTS + ENV GTEST_ROOT + ${GTEST_ROOT} + PATH_SUFFIXES ${_gtest_libpath_suffixes} + ) + mark_as_advanced(${_name}) +endfunction() + +if(NOT DEFINED GMOCK_MSVC_SEARCH) + set(GMOCK_MSVC_SEARCH MD) +endif() + +set(_gmock_libpath_suffixes lib) +set(_gtest_libpath_suffixes lib) +if(MSVC) + if(GMOCK_MSVC_SEARCH STREQUAL "MD") + list(APPEND _gmock_libpath_suffixes + msvc/gmock-md/Debug + msvc/gmock-md/Release) + list(APPEND _gtest_libpath_suffixes + msvc/gtest-md/Debug + msvc/gtest-md/Release) + elseif(GMOCK_MSVC_SEARCH STREQUAL "MT") + list(APPEND _gmock_libpath_suffixes + msvc/gmock/Debug + msvc/gmock/Release) + list(APPEND _gtest_libpath_suffixes + msvc/gtest/Debug + msvc/gtest/Release) + endif() +endif() + +find_path(GMOCK_INCLUDE_DIR gmock/gmock.h + HINTS + $ENV{GMOCK_ROOT}/include + ${GMOCK_ROOT}/include + ) +mark_as_advanced(GMOCK_INCLUDE_DIR) + +find_path(GTEST_INCLUDE_DIR gtest/gtest.h + HINTS + $ENV{GTEST_ROOT}/include + ${GTEST_ROOT}/include + ) +mark_as_advanced(GTEST_INCLUDE_DIR) + +if(MSVC AND GMOCK_MSVC_SEARCH STREQUAL "MD") + # The provided /MD project files for Google Mock add -md suffixes to the + # library names. + _gmock_find_library(GMOCK_LIBRARY gmock-md gmock) + _gmock_find_library(GMOCK_LIBRARY_DEBUG gmock-mdd gmockd) + _gmock_find_library(GMOCK_MAIN_LIBRARY gmock_main-md gmock_main) + _gmock_find_library(GMOCK_MAIN_LIBRARY_DEBUG gmock_main-mdd gmock_maind) + + _gtest_find_library(GTEST_LIBRARY gtest-md gtest) + _gtest_find_library(GTEST_LIBRARY_DEBUG gtest-mdd gtestd) + _gtest_find_library(GTEST_MAIN_LIBRARY gtest_main-md gtest_main) + _gtest_find_library(GTEST_MAIN_LIBRARY_DEBUG gtest_main-mdd gtest_maind) +else() + _gmock_find_library(GMOCK_LIBRARY gmock) + _gmock_find_library(GMOCK_LIBRARY_DEBUG gmockd) + _gmock_find_library(GMOCK_MAIN_LIBRARY gmock_main) + _gmock_find_library(GMOCK_MAIN_LIBRARY_DEBUG gmock_maind) + + _gtest_find_library(GTEST_LIBRARY gtest) + _gtest_find_library(GTEST_LIBRARY_DEBUG gtestd) + _gtest_find_library(GTEST_MAIN_LIBRARY gtest_main) + _gtest_find_library(GTEST_MAIN_LIBRARY_DEBUG gtest_maind) +endif() + +if(NOT TARGET GTest::GTest) + add_library(GTest::GTest UNKNOWN IMPORTED) +endif() +if(NOT TARGET GTest::Main) + add_library(GTest::Main UNKNOWN IMPORTED) +endif() + +if(NOT TARGET GMock::GMock) + add_library(GMock::GMock UNKNOWN IMPORTED) +endif() + +if(NOT TARGET GMock::Main) + add_library(GMock::Main UNKNOWN IMPORTED) +endif() + +set(GMOCK_LIBRARY_EXISTS OFF) +set(GTEST_LIBRARY_EXISTS OFF) + +if(EXISTS "${GMOCK_LIBRARY}" OR EXISTS "${GMOCK_LIBRARY_DEBUG}" AND GMOCK_INCLUDE_DIR) + set(GMOCK_LIBRARY_EXISTS ON) +endif() + +if(EXISTS "${GTEST_LIBRARY}" OR EXISTS "${GTEST_LIBRARY_DEBUG}" AND GTEST_INCLUDE_DIR) + set(GTEST_LIBRARY_EXISTS ON) +endif() + +if(NOT (${GMOCK_LIBRARY_EXISTS} AND ${GTEST_LIBRARY_EXISTS})) + + include(ExternalProject) + + if(GTEST_USE_STATIC_LIBS) + set(GTEST_CMAKE_ARGS -Dgtest_force_shared_crt:BOOL=ON -DBUILD_SHARED_LIBS=OFF) + if(BUILD_SHARED_LIBS) + list(APPEND GTEST_CMAKE_ARGS + -DCMAKE_POSITION_INDEPENDENT_CODE=ON + -Dgtest_hide_internal_symbols=ON + -DCMAKE_CXX_VISIBILITY_PRESET=hidden + -DCMAKE_VISIBILITY_INLINES_HIDDEN=ON + -DCMAKE_POLICY_DEFAULT_CMP0063=NEW + ) + endif() + set(GTEST_LIBRARY_PREFIX ${CMAKE_STATIC_LIBRARY_PREFIX}) + else() + set(GTEST_CMAKE_ARGS -DBUILD_SHARED_LIBS=ON) + set(GTEST_LIBRARY_PREFIX ${CMAKE_SHARED_LIBRARY_PREFIX}) + endif() + if(WIN32) + list(APPEND GTEST_CMAKE_ARGS -Dgtest_disable_pthreads=ON) + endif() + + if("${GMOCK_SRC_DIR}" STREQUAL "") + message(STATUS "Downloading GMock / GTest version ${GMOCK_VER} from git") + if("${GMOCK_VER}" STREQUAL "1.6.0" OR "${GMOCK_VER}" STREQUAL "1.7.0") + set(GTEST_BIN_DIR "${GMOCK_ROOT}/src/gtest-build") + set(GTEST_LIBRARY "${GTEST_BIN_DIR}/${CMAKE_CFG_INTDIR}/${GTEST_LIBRARY_PREFIX}gtest${CMAKE_STATIC_LIBRARY_SUFFIX}") + set(GTEST_MAIN_LIBRARY "${GTEST_BIN_DIR}/${CMAKE_CFG_INTDIR}/${GTEST_LIBRARY_PREFIX}gtest_main${CMAKE_STATIC_LIBRARY_SUFFIX}") + mark_as_advanced(GTEST_LIBRARY) + mark_as_advanced(GTEST_MAIN_LIBRARY) + + externalproject_add( + gtest + GIT_REPOSITORY "https://github.com/google/googletest.git" + GIT_TAG "release-${GMOCK_VER}" + PREFIX ${GMOCK_ROOT} + INSTALL_COMMAND "" + LOG_DOWNLOAD ON + LOG_CONFIGURE ON + LOG_BUILD ON + CMAKE_ARGS + ${GTEST_CMAKE_ARGS} + BINARY_DIR ${GTEST_BIN_DIR} + BUILD_BYPRODUCTS + "${GTEST_LIBRARY}" + "${GTEST_MAIN_LIBRARY}" + ) + + set(GMOCK_BIN_DIR "${GMOCK_ROOT}/src/gmock-build") + set(GMOCK_LIBRARY "${GMOCK_BIN_DIR}/${CMAKE_CFG_INTDIR}/${GTEST_LIBRARY_PREFIX}gmock${CMAKE_STATIC_LIBRARY_SUFFIX}") + set(GMOCK_MAIN_LIBRARY "${GMOCK_BIN_DIR}/${CMAKE_CFG_INTDIR}/${GTEST_LIBRARY_PREFIX}gmock_main${CMAKE_STATIC_LIBRARY_SUFFIX}") + mark_as_advanced(GMOCK_LIBRARY) + mark_as_advanced(GMOCK_MAIN_LIBRARY) + + externalproject_add( + gmock + GIT_REPOSITORY "https://github.com/google/googlemock.git" + GIT_TAG "release-${GMOCK_VER}" + PREFIX ${GMOCK_ROOT} + INSTALL_COMMAND "" + LOG_DOWNLOAD ON + LOG_CONFIGURE ON + LOG_BUILD ON + CMAKE_ARGS + ${GTEST_CMAKE_ARGS} + BINARY_DIR ${GMOCK_BIN_DIR} + BUILD_BYPRODUCTS + "${GMOCK_LIBRARY}" + "${GMOCK_MAIN_LIBRARY}" + ) + + add_dependencies(gmock gtest) + + add_dependencies(GTest::GTest gtest) + add_dependencies(GTest::Main gtest) + add_dependencies(GMock::GMock gmock) + add_dependencies(GMock::Main gmock) + + externalproject_get_property(gtest source_dir) + set(GTEST_INCLUDE_DIR "${source_dir}/include") + mark_as_advanced(GTEST_INCLUDE_DIR) + externalproject_get_property(gmock source_dir) + set(GMOCK_INCLUDE_DIR "${source_dir}/include") + mark_as_advanced(GMOCK_INCLUDE_DIR) + else() #1.8.0 + set(GMOCK_BIN_DIR "${GMOCK_ROOT}/src/gmock-build") + set(GTEST_LIBRARY "${GMOCK_BIN_DIR}/googlemock/gtest/${CMAKE_CFG_INTDIR}/${GTEST_LIBRARY_PREFIX}gtest${CMAKE_STATIC_LIBRARY_SUFFIX}") + set(GTEST_MAIN_LIBRARY "${GMOCK_BIN_DIR}/googlemock/gtest/${CMAKE_CFG_INTDIR}/${GTEST_LIBRARY_PREFIX}gtest_main${CMAKE_STATIC_LIBRARY_SUFFIX}") + set(GMOCK_LIBRARY "${GMOCK_BIN_DIR}/googlemock/${CMAKE_CFG_INTDIR}/${GTEST_LIBRARY_PREFIX}gmock${CMAKE_STATIC_LIBRARY_SUFFIX}") + set(GMOCK_MAIN_LIBRARY "${GMOCK_BIN_DIR}/googlemock/${CMAKE_CFG_INTDIR}/${GTEST_LIBRARY_PREFIX}gmock_main${CMAKE_STATIC_LIBRARY_SUFFIX}") + mark_as_advanced(GTEST_LIBRARY) + mark_as_advanced(GTEST_MAIN_LIBRARY) + mark_as_advanced(GMOCK_LIBRARY) + mark_as_advanced(GMOCK_MAIN_LIBRARY) + + externalproject_add( + gmock + GIT_REPOSITORY "https://github.com/google/googletest.git" + GIT_TAG "release-${GMOCK_VER}" + PREFIX ${GMOCK_ROOT} + INSTALL_COMMAND "" + LOG_DOWNLOAD ON + LOG_CONFIGURE ON + LOG_BUILD ON + CMAKE_ARGS + ${GTEST_CMAKE_ARGS} + BINARY_DIR "${GMOCK_BIN_DIR}" + BUILD_BYPRODUCTS + "${GTEST_LIBRARY}" + "${GTEST_MAIN_LIBRARY}" + "${GMOCK_LIBRARY}" + "${GMOCK_MAIN_LIBRARY}" + ) + + add_dependencies(GTest::GTest gmock) + add_dependencies(GTest::Main gmock) + add_dependencies(GMock::GMock gmock) + add_dependencies(GMock::Main gmock) + + externalproject_get_property(gmock source_dir) + set(GTEST_INCLUDE_DIR "${source_dir}/googletest/include") + set(GMOCK_INCLUDE_DIR "${source_dir}/googlemock/include") + mark_as_advanced(GMOCK_INCLUDE_DIR) + mark_as_advanced(GTEST_INCLUDE_DIR) + endif() + + # Prevent CMake from complaining about these directories missing when the libgtest/libgmock targets get used as dependencies + file(MAKE_DIRECTORY ${GTEST_INCLUDE_DIR} ${GMOCK_INCLUDE_DIR}) + else() + message(STATUS "Building Gmock / Gtest from dir ${GMOCK_SRC_DIR}") + + set(GMOCK_BIN_DIR "${GMOCK_ROOT}/src/gmock-build") + set(GTEST_LIBRARY "${GMOCK_BIN_DIR}/gtest/${CMAKE_CFG_INTDIR}/${GTEST_LIBRARY_PREFIX}gtest${CMAKE_STATIC_LIBRARY_SUFFIX}") + set(GTEST_MAIN_LIBRARY "${GMOCK_BIN_DIR}/gtest/${CMAKE_CFG_INTDIR}/${GTEST_LIBRARY_PREFIX}gtest_main${CMAKE_STATIC_LIBRARY_SUFFIX}") + set(GMOCK_LIBRARY "${GMOCK_BIN_DIR}/${CMAKE_CFG_INTDIR}/${GTEST_LIBRARY_PREFIX}gmock${CMAKE_STATIC_LIBRARY_SUFFIX}") + set(GMOCK_MAIN_LIBRARY "${GMOCK_BIN_DIR}/${CMAKE_CFG_INTDIR}/${GTEST_LIBRARY_PREFIX}gmock_main${CMAKE_STATIC_LIBRARY_SUFFIX}") + mark_as_advanced(GTEST_LIBRARY) + mark_as_advanced(GTEST_MAIN_LIBRARY) + mark_as_advanced(GMOCK_LIBRARY) + mark_as_advanced(GMOCK_MAIN_LIBRARY) + + if(EXISTS "${GMOCK_SRC_DIR}/gtest/include/gtest/gtest.h") + set(GTEST_INCLUDE_DIR "${GMOCK_SRC_DIR}/gtest/include") + mark_as_advanced(GTEST_INCLUDE_DIR) + endif() + if(EXISTS "${GMOCK_SRC_DIR}/include/gmock/gmock.h") + set(GMOCK_INCLUDE_DIR "${GMOCK_SRC_DIR}/include") + mark_as_advanced(GMOCK_INCLUDE_DIR) + elseif(EXISTS "${GMOCK_SRC_DIR}/../../include/gmock/gmock.h") + set(GMOCK_INCLUDE_DIR "${GMOCK_SRC_DIR}/../../include") + if(IS_ABSOLUTE "${GMOCK_INCLUDE_DIR}") + get_filename_component(GMOCK_INCLUDE_DIR "${GMOCK_INCLUDE_DIR}" ABSOLUTE) + endif() + mark_as_advanced(GMOCK_INCLUDE_DIR) + endif() + + externalproject_add( + gmock + SOURCE_DIR ${GMOCK_SRC_DIR} + PREFIX ${GMOCK_ROOT} + INSTALL_COMMAND "" + LOG_DOWNLOAD ON + LOG_CONFIGURE ON + LOG_BUILD ON + CMAKE_ARGS + ${GTEST_CMAKE_ARGS} + BINARY_DIR "${GMOCK_BIN_DIR}" + BUILD_BYPRODUCTS + "${GTEST_LIBRARY}" + "${GTEST_MAIN_LIBRARY}" + "${GMOCK_LIBRARY}" + "${GMOCK_MAIN_LIBRARY}" + ) + + add_dependencies(GTest::GTest gmock) + add_dependencies(GTest::Main gmock) + add_dependencies(GMock::GMock gmock) + add_dependencies(GMock::Main gmock) + endif() +endif() + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(GTest DEFAULT_MSG GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY) +find_package_handle_standard_args(GMock DEFAULT_MSG GMOCK_LIBRARY GMOCK_INCLUDE_DIR GMOCK_MAIN_LIBRARY) + +include(CMakeFindDependencyMacro) +find_dependency(Threads) + +set_target_properties(GTest::GTest PROPERTIES + INTERFACE_LINK_LIBRARIES "Threads::Threads" + IMPORTED_LINK_INTERFACE_LANGUAGES "CXX" + IMPORTED_LOCATION "${GTEST_LIBRARY}" + ) + +if(GTEST_INCLUDE_DIR) + set_target_properties(GTest::GTest PROPERTIES + INTERFACE_INCLUDE_DIRECTORIES "${GTEST_INCLUDE_DIR}" + INTERFACE_SYSTEM_INCLUDE_DIRECTORIES "${GTEST_INCLUDE_DIR}" + ) +endif() + +set_target_properties(GTest::Main PROPERTIES + INTERFACE_LINK_LIBRARIES "GTest::GTest" + IMPORTED_LINK_INTERFACE_LANGUAGES "CXX" + IMPORTED_LOCATION "${GTEST_MAIN_LIBRARY}") + +set_target_properties(GMock::GMock PROPERTIES + INTERFACE_LINK_LIBRARIES "Threads::Threads" + IMPORTED_LINK_INTERFACE_LANGUAGES "CXX" + IMPORTED_LOCATION "${GMOCK_LIBRARY}") + +if(GMOCK_INCLUDE_DIR) + set_target_properties(GMock::GMock PROPERTIES + INTERFACE_INCLUDE_DIRECTORIES "${GMOCK_INCLUDE_DIR}" + INTERFACE_SYSTEM_INCLUDE_DIRECTORIES "${GMOCK_INCLUDE_DIR}" + ) + if(GMOCK_VER VERSION_LESS "1.7") + # GMock 1.6 still has GTest as an external link-time dependency, + # so just specify it on the link interface. + set_property(TARGET GMock::GMock APPEND PROPERTY + INTERFACE_LINK_LIBRARIES GTest::GTest) + elseif(GTEST_INCLUDE_DIR) + # GMock 1.7 and beyond doesn't have it as a link-time dependency anymore, + # so merge it's compile-time interface (include dirs) with ours. + set_property(TARGET GMock::GMock APPEND PROPERTY + INTERFACE_INCLUDE_DIRECTORIES "${GTEST_INCLUDE_DIR}") + set_property(TARGET GMock::GMock APPEND PROPERTY + INTERFACE_SYSTEM_INCLUDE_DIRECTORIES "${GTEST_INCLUDE_DIR}") + endif() +endif() + +set_target_properties(GMock::Main PROPERTIES + INTERFACE_LINK_LIBRARIES "GMock::GMock" + IMPORTED_LINK_INTERFACE_LANGUAGES "CXX" + IMPORTED_LOCATION "${GMOCK_MAIN_LIBRARY}") + +if(GTEST_FOUND) + set(GTEST_INCLUDE_DIRS ${GTEST_INCLUDE_DIR}) + set(GTEST_LIBRARIES GTest::GTest) + set(GTEST_MAIN_LIBRARIES GTest::Main) + set(GTEST_BOTH_LIBRARIES ${GTEST_LIBRARIES} ${GTEST_MAIN_LIBRARIES}) + if(VERBOSE) + message(STATUS "GTest includes: ${GTEST_INCLUDE_DIRS}") + message(STATUS "GTest libs: ${GTEST_BOTH_LIBRARIES}") + endif() +endif() + +if(GMOCK_FOUND) + set(GMOCK_INCLUDE_DIRS ${GMOCK_INCLUDE_DIR}) + set(GMOCK_LIBRARIES GMock::GMock) + set(GMOCK_MAIN_LIBRARIES GMock::Main) + set(GMOCK_BOTH_LIBRARIES ${GMOCK_LIBRARIES} ${GMOCK_MAIN_LIBRARIES}) + if(VERBOSE) + message(STATUS "GMock includes: ${GMOCK_INCLUDE_DIRS}") + message(STATUS "GMock libs: ${GMOCK_BOTH_LIBRARIES}") + endif() +endif() diff --git a/FindPolyclipping.cmake b/FindPolyclipping.cmake new file mode 100644 index 0000000..7c88ab6 --- /dev/null +++ b/FindPolyclipping.cmake @@ -0,0 +1,67 @@ +# +# - Try to find the polyclipping library +# this will define +# +# Polyclipping_FOUND - polyclipping was found +# Polyclipping_INCLUDE_DIRS - the polyclipping include directory +# Polyclipping_LIBRARIES - The libraries needed to use polyclipping +# Polyclipping_VERSION - The polyclipping library version + +#============================================================================= +# Copyright (c) 2017 Christophe Giboudeaux +# +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# +# 1. Redistributions of source code must retain the copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# 3. The name of the author may not be used to endorse or promote products +# derived from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +#============================================================================= + + +find_package(PkgConfig QUIET) +pkg_check_modules(PC_Polyclipping QUIET polyclipping) + +find_path(Polyclipping_INCLUDE_DIRS + NAMES clipper.hpp + HINTS ${PC_Polyclipping_INCLUDE_DIRS} +) + +find_library(Polyclipping_LIBRARIES + NAMES polyclipping + HINTS ${PC_Polyclipping_LIBRARY_DIRS} +) + +if(EXISTS ${Polyclipping_INCLUDE_DIRS}/clipper.hpp) + file(READ ${Polyclipping_INCLUDE_DIRS}/clipper.hpp CLIPPER_H_CONTENT) + string(REGEX MATCH "#define CLIPPER_VERSION[ ]+\"[0-9]+.[0-9]+.[0-9]+\"" CLIPPER_H_VERSION_MATCH ${CLIPPER_H_CONTENT}) + string(REGEX REPLACE "^.*CLIPPER_VERSION[ ]+\"([0-9]+.[0-9]+.[0-9]+).*$" "\\1" Polyclipping_VERSION "${CLIPPER_H_VERSION_MATCH}") +endif() + +include(FindPackageHandleStandardArgs) + +find_package_handle_standard_args(Polyclipping + FOUND_VAR Polyclipping_FOUND + REQUIRED_VARS Polyclipping_LIBRARIES Polyclipping_INCLUDE_DIRS + VERSION_VAR Polyclipping_VERSION +) + +mark_as_advanced(Polyclipping_LIBRARIES Polyclipping_INCLUDE_DIRS Polyclipping_VERSION) + diff --git a/FindStb.cmake b/FindStb.cmake new file mode 100644 index 0000000..b510d6b --- /dev/null +++ b/FindStb.cmake @@ -0,0 +1,69 @@ +## Finds the Stb utility library on your computer. +# +# If Stb is not found on your computer, this script also gives the option to +# download the library and build it from source. +# +# This script exports the following parameters for use if you find the Stb +# package: +# - Stb_FOUND: Whether Stb has been found on your computer (or built from +# source). +# - Stb_INCLUDE_DIRS: The directory where the header files of Stb are located. + +#First try to find a PackageConfig for this library. +find_package(PkgConfig QUIET) +pkg_check_modules(PC_Stb QUIET Stb) + +find_path(Stb_INCLUDE_DIRS stb/stb_image_resize.h #Search for something that is a little less prone to false positives than just stb.h. + HINTS ${PC_Stb_INCLUDEDIR} ${PC_Stb_INCLUDE_DIRS} + PATHS "$ENV{PROGRAMFILES}" "$ENV{PROGRAMW6432}" "/usr/include" + PATH_SUFFIXES include/stb stb include +) + +include(FindPackageHandleStandardArgs) +set(_stb_find_required ${Stb_FIND_REQUIRED}) #Temporarily set to optional so that we don't get a message when it's not found but you want to build from source. +set(_stb_find_quietly ${Stb_FIND_QUIETLY}) +set(Stb_FIND_REQUIRED FALSE) +set(Stb_FIND_QUIETLY TRUE) +find_package_handle_standard_args(Stb DEFAULT_MSG Stb_INCLUDE_DIRS) +set(Stb_FIND_REQUIRED ${_stb_find_required}) +set(Stb_FIND_QUIETLY ${_stb_find_quietly}) + +set(CuraEngine_Download_Stb FALSE) +if(Stb_FOUND) #Found an existing installation. + if(NOT Stb_FIND_QUIETLY) + message(STATUS "Found Stb installation at: ${Stb_INCLUDE_DIRS}") + endif() +else() + #Then optionally clone Stb ourselves. + option(BUILD_Stb "Build Stb from source." ON) #This is a lie actually, since Stb is header-only and doesn't need any building. We don't build the docs or tests. + if(BUILD_Stb) + if(NOT Stb_FIND_QUIETLY) + message(STATUS "Building Stb from source.") + endif() + + include(ExternalProject) + # Stb's commits in early February seems to cause the engine to fail compilation on Mac. + ExternalProject_Add(stb + GIT_REPOSITORY "https://github.com/nothings/stb.git" + GIT_TAG d5d052c806eee2ca1f858cb58b2f062d9fa25b90 + UPDATE_DISCONNECTED TRUE + CONFIGURE_COMMAND "" #We don't want to actually go and build/test/generate it. Just need to download the headers. + BUILD_COMMAND "" + INSTALL_COMMAND "" #Assume that the user doesn't want to install all dependencies on his system. We just need to get them for building the application. + ) + set(CuraEngine_Download_Stb TRUE) + set(Stb_INCLUDE_DIRS "${CMAKE_CURRENT_BINARY_DIR}/stb-prefix/src") + set(Stb_FOUND TRUE) + if(NOT Stb_FIND_QUIETLY) + message(STATUS "Created Stb installation at: ${Stb_INCLUDE_DIRS}") + endif() + elseif(NOT Stb_FIND_QUIETLY) #Don't have an installation but don't want us to build it either? Screw you, then. + if(Stb_FIND_REQUIRED) + message(FATAL_ERROR "Could NOT find Stb.") + else() + message(WARNING "Could NOT find Stb.") + endif() + endif() +endif() + +mark_as_advanced(Stb_INCLUDE_DIRS) diff --git a/sources b/sources index 0c17d12..8b55e2c 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (CuraEngine-4.13.1.tar.gz) = 224379a40e26ae0026a3849d582353e49edf99520401e1fef56c9504638c68c62cfe394dab0eb40e4a447bfe0bfa506a880512e84fd6057a839b6384087c46d0 +SHA512 (CuraEngine-5.3.0.tar.gz) = 01c05e616fedf14b2ab36c89f3c0540705e79908a35488282f62b9f335fbe33bda0e151cf4d98580b0c01a40029662193471cb2bb86a0cb2671e6dcf46cbb253 From be63686ab3f1b241282e52db2d4f65db898e616f Mon Sep 17 00:00:00 2001 From: Tom Callaway Date: Thu, 9 Mar 2023 11:52:28 -0500 Subject: [PATCH 72/91] add BR: boost-devel --- CuraEngine.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/CuraEngine.spec b/CuraEngine.spec index 5b3ebac..d84d6eb 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -22,6 +22,7 @@ BuildRequires: protobuf-devel BuildRequires: rapidjson-devel BuildRequires: cmake BuildRequires: git-core +BuildRequires: boost-devel BuildRequires: range-v3-devel BuildRequires: fmt-devel BuildRequires: spdlog-devel From 8c233369593330baea7908892f9ac38caaea544d Mon Sep 17 00:00:00 2001 From: Vitaly Zaitsev Date: Wed, 28 Jun 2023 11:06:38 +0200 Subject: [PATCH 73/91] Rebuilt due to fmt 10 update. --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index d84d6eb..41b1a35 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 5.3.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -89,6 +89,9 @@ rm -rf libs %{_bindir}/%{name} %changelog +* Wed Jun 28 2023 Vitaly Zaitsev - 1:5.3.0-2 +- Rebuilt due to fmt 10 update. + * Wed Mar 8 2023 Tom Callaway - 1:5.3.0-1 - update to 5.3.0 From 8ab358bed4ae7b3acebb190e523cad75be88edb8 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Sun, 2 Jul 2023 00:17:58 +0900 Subject: [PATCH 74/91] Patch for fmtlib 10 --- CuraEngine-5.3.0-fmt10.patch | 33 +++++++++++++++++++++++++++++++++ CuraEngine.spec | 8 +++++++- 2 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 CuraEngine-5.3.0-fmt10.patch diff --git a/CuraEngine-5.3.0-fmt10.patch b/CuraEngine-5.3.0-fmt10.patch new file mode 100644 index 0000000..d8147df --- /dev/null +++ b/CuraEngine-5.3.0-fmt10.patch @@ -0,0 +1,33 @@ +--- CuraEngine-5.3.0/src/FffGcodeWriter.cpp.fmt10 2023-03-07 21:33:22.000000000 +0900 ++++ CuraEngine-5.3.0/src/FffGcodeWriter.cpp 2023-07-02 00:01:20.042447483 +0900 +@@ -996,7 +996,7 @@ void FffGcodeWriter::processRaft(const S + + LayerPlan& FffGcodeWriter::processLayer(const SliceDataStorage& storage, LayerIndex layer_nr, const size_t total_layers) const + { +- spdlog::debug("GcodeWriter processing layer {} of {}", layer_nr, total_layers); ++ spdlog::debug("GcodeWriter processing layer {} of {}", static_cast(layer_nr), total_layers); + + const Settings& mesh_group_settings = Application::getInstance().current_slice->scene.current_mesh_group->settings; + coord_t layer_thickness = mesh_group_settings.get("layer_height"); +--- CuraEngine-5.3.0/src/LayerPlanBuffer.cpp.fmt10 2023-03-07 21:33:22.000000000 +0900 ++++ CuraEngine-5.3.0/src/LayerPlanBuffer.cpp 2023-07-02 00:03:16.060680917 +0900 +@@ -82,7 +82,7 @@ void LayerPlanBuffer::addConnectingTrave + + if (! new_layer_destination_state) + { +- spdlog::warn("Layer {} is empty (or it has empty extruder plans). Temperature control and cross layer travel moves might suffer!", newest_layer->layer_nr); ++ spdlog::warn("Layer {} is empty (or it has empty extruder plans). Temperature control and cross layer travel moves might suffer!", static_cast(newest_layer->layer_nr)); + return; + } + +--- CuraEngine-5.3.0/src/Weaver.cpp.fmt10 2023-03-07 21:33:22.000000000 +0900 ++++ CuraEngine-5.3.0/src/Weaver.cpp 2023-07-02 00:04:08.697786833 +0900 +@@ -55,7 +55,7 @@ void Weaver::weave(MeshGroup* meshgroup) + } + if (starting_layer_idx > 0) + { +- spdlog::warn("First {} layers are empty!", starting_layer_idx); ++ spdlog::warn("First {} layers are empty!", static_cast(starting_layer_idx)); + } + } + diff --git a/CuraEngine.spec b/CuraEngine.spec index 41b1a35..b7854dc 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -33,6 +33,8 @@ BuildRequires: spdlog-devel BuildRequires: stb_image-static >= 2.28^20230129git5736b15-0.2 Patch0: %{name}-static-libstdcpp.patch +# Patch for fmtlib 10 +Patch1: CuraEngine-5.3.0-fmt10.patch # https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval %if 0%{?fedora} >= 37 || 0%{?rhel} >= 10 @@ -57,7 +59,8 @@ cp -a %{SOURCE2} %{SOURCE3} %{SOURCE4} cmake rm -rf CMakeLists.txt cp -a %{SOURCE5} %{SOURCE6} . -%patch0 -p1 +%patch -P0 -p1 +%patch -P1 -p1 # bundled libraries rm -rf libs @@ -89,6 +92,9 @@ rm -rf libs %{_bindir}/%{name} %changelog +* Sat Jul 1 2023 Mamoru TASAKA - 1:5.3.0-3 +- Patch for fmtlib 10 + * Wed Jun 28 2023 Vitaly Zaitsev - 1:5.3.0-2 - Rebuilt due to fmt 10 update. From 3b304a98bd7132fc26a53823aee4eb6859cf4557 Mon Sep 17 00:00:00 2001 From: Vitaly Zaitsev Date: Sat, 8 Jul 2023 20:25:01 +0200 Subject: [PATCH 75/91] Rebuilt due to spdlog 1.12 update. --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index b7854dc..441686d 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 5.3.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -92,6 +92,9 @@ rm -rf libs %{_bindir}/%{name} %changelog +* Sat Jul 08 2023 Vitaly Zaitsev - 1:5.3.0-3 +- Rebuilt due to spdlog 1.12 update. + * Sat Jul 1 2023 Mamoru TASAKA - 1:5.3.0-3 - Patch for fmtlib 10 From 084a4ddba9c099d9bf65d1bd108caa6ff34302a7 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 19 Jul 2023 11:04:13 +0000 Subject: [PATCH 76/91] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- CuraEngine.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 441686d..78624bd 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 5.3.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -92,6 +92,9 @@ rm -rf libs %{_bindir}/%{name} %changelog +* Wed Jul 19 2023 Fedora Release Engineering - 1:5.3.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Sat Jul 08 2023 Vitaly Zaitsev - 1:5.3.0-3 - Rebuilt due to spdlog 1.12 update. From dea253a8e80f369a4c730b0ff2c866a44a41b24b Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Wed, 25 Oct 2023 13:58:55 -0400 Subject: [PATCH 77/91] Ensure stb_image contains the latest CVE patches --- CuraEngine.spec | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 78624bd..19db295 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 5.3.0 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -28,9 +28,19 @@ BuildRequires: fmt-devel BuildRequires: spdlog-devel # Header-only package; -static version is for tracking per guidelines -# stb_image 2.28^20230129git5736b15-0.2 is the minimum EVR that fixes the null -# pointer dereference reported in https://github.com/nothings/stb/issues/1452. -BuildRequires: stb_image-static >= 2.28^20230129git5736b15-0.2 +# Enforce the the minimum EVR to contain fixes for all of: +# CVE-2021-28021 +# CVE-2021-42715 +# CVE-2021-42716 +# CVE-2022-28041 +# CVE-2023-43898 +# CVE-2023-45661 +# CVE-2023-45662 +# CVE-2023-45663 +# CVE-2023-45664 +# CVE-2023-45666 +# CVE-2023-45667 +BuildRequires: stb_image-static >= 2.28^20231011gitbeebb24-12 Patch0: %{name}-static-libstdcpp.patch # Patch for fmtlib 10 @@ -92,6 +102,9 @@ rm -rf libs %{_bindir}/%{name} %changelog +* Wed Oct 25 2023 Benjamin A. Beasley - 1:5.3.0-5 +- Ensure stb_image contains the latest CVE patches + * Wed Jul 19 2023 Fedora Release Engineering - 1:5.3.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From 5196404100e7dcd1d3177b1e491afa68ef19bb32 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Tue, 5 Dec 2023 16:02:49 +0100 Subject: [PATCH 78/91] Convert to %autorelease and %autochangelog [skip changelog] --- CuraEngine.spec | 252 +----------------------------------------------- changelog | 249 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 251 insertions(+), 250 deletions(-) create mode 100644 changelog diff --git a/CuraEngine.spec b/CuraEngine.spec index 19db295..6c95738 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,7 +1,7 @@ Name: CuraEngine Epoch: 1 Version: 5.3.0 -Release: 5%{?dist} +Release: %autorelease Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPLv3+ URL: https://github.com/Ultimaker/%{name} @@ -102,252 +102,4 @@ rm -rf libs %{_bindir}/%{name} %changelog -* Wed Oct 25 2023 Benjamin A. Beasley - 1:5.3.0-5 -- Ensure stb_image contains the latest CVE patches - -* Wed Jul 19 2023 Fedora Release Engineering - 1:5.3.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Sat Jul 08 2023 Vitaly Zaitsev - 1:5.3.0-3 -- Rebuilt due to spdlog 1.12 update. - -* Sat Jul 1 2023 Mamoru TASAKA - 1:5.3.0-3 -- Patch for fmtlib 10 - -* Wed Jun 28 2023 Vitaly Zaitsev - 1:5.3.0-2 -- Rebuilt due to fmt 10 update. - -* Wed Mar 8 2023 Tom Callaway - 1:5.3.0-1 -- update to 5.3.0 - -* Sat Feb 25 2023 Benjamin A. Beasley - 1:4.13.1-6 -- Update minimum stb_image to fix a null deref. bug - -* Sun Jan 29 2023 Benjamin A. Beasley - 1:4.13.1-5 -- Add an #include needed for GCC 13 - -* Wed Jan 18 2023 Fedora Release Engineering - 1:4.13.1-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Wed Jul 20 2022 Fedora Release Engineering - 1:4.13.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Sat Apr 23 2022 Benjamin A. Beasley - 1:4.13.1-2 -- Security fix for CVE-2022-28041 - -* Tue Feb 01 2022 Gabriel Féron - 1:4.13.1-1 -- Update to 4.13.1 - -* Wed Jan 19 2022 Gabriel Féron - 1:4.13.0-1 -- Update to 4.13.0 - -* Wed Jan 19 2022 Fedora Release Engineering - 1:4.12.1-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Mon Dec 13 2021 Gabriel Féron - 1:4.12.1-4 -- Update to 4.12.1 - -* Sat Nov 06 2021 Adrian Reber - 1:4.11.0-4 -- Rebuilt for protobuf 3.19.0 - -* Mon Oct 25 2021 Adrian Reber - 1:4.11.0-3 -- Rebuilt for protobuf 3.18.1 - -* Sat Oct 23 2021 Benjamin A. Beasley - 1:4.11.0-2 -- Rebuild with updated stb_image to patch CVE-2021-28021, CVE-2021-42715, and - CVE-2021-42716 - -* Wed Sep 15 2021 Gabriel Féron - 1:4.11.0-1 -- Update to 4.11.0 - -* Mon Aug 23 2021 Benjamin A. Beasley - 1:4.10.0-2 -- Unbundle stb_image - -* Mon Aug 16 2021 Gabriel Féron - 1:4.10.0-1 -- Update to 4.10.0 - -* Wed Jul 21 2021 Fedora Release Engineering - 1:4.9.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Thu Jun 10 2021 Gabriel Féron - 1:4.9.1-1 -- Update to 4.9.1 - -* Mon Apr 26 2021 Gabriel Féron - 1:4.9.0-1 -- Update to 4.9.0 - -* Mon Jan 25 2021 Fedora Release Engineering - 1:4.8.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Wed Jan 13 14:30:13 CET 2021 Adrian Reber - 1:4.8.0-2 -- Rebuilt for protobuf 3.14 - -* Wed Dec 23 2020 Jan Pazdziora - 1:4.8.0-1 -- Update to 4.8.0 - -* Wed Sep 23 2020 Adrian Reber - 1:4.7.1-2 -- Rebuilt for protobuf 3.13 - -* Thu Sep 03 2020 Miro Hrončok - 1:4.7.1-1 -- Update to 4.7.1 - -* Mon Aug 31 2020 Gabriel Féron - 1:4.7.0-1 -- Update to 4.7.0 - -* Mon Jul 27 2020 Fedora Release Engineering - 1:4.6.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Sun Jun 14 2020 Adrian Reber - 1:4.6.1-2 -- Rebuilt for protobuf 3.12 - -* Tue May 5 2020 Gabriel Féron - 1:4.6.0-1 -- Update to 4.6.1 - -* Tue Apr 21 2020 Gabriel Féron - 1:4.6.0-1 -- Update to 4.6.0 - -* Tue Jan 28 2020 Fedora Release Engineering - 1:4.4.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Thu Dec 19 2019 Orion Poplawski - 1:4.4.0-2 -- Rebuild for protobuf 3.11 - -* Thu Nov 21 2019 Gabriel Féron - 1:4.4.0-1 -- Update to 4.4.0 - -* Wed Jul 24 2019 Fedora Release Engineering - 1:4.1.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Tue Jun 18 2019 Gabriel Féron - 1:4.1.0-1 -- Update to 4.1.0 - -* Wed Apr 03 2019 Gabriel Féron - 1:4.0.0-1 -- Update to 4.0.0 - -* Thu Jan 31 2019 Fedora Release Engineering - 1:3.6.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Sat Jan 26 2019 Gabriel Féron - 1:3.6.0-1 -- Update to 3.6.0 - -* Thu Nov 22 2018 Igor Gnatenko - 1:3.5.1-3 -- Rebuild for protobuf 3.6 - -* Wed Nov 21 2018 Igor Gnatenko - 1:3.5.1-2 -- Rebuild for protobuf 3.6 - -* Mon Nov 12 2018 Miro Hrončok - 1:3.5.1-1 -- Fix the error in epoch/release - -* Mon Nov 12 2018 Miro Hrončok - 0:3.5.1-2 -- Update to 3.5.1 (#1644323) - -* Tue Aug 28 2018 Miro Hrončok - 1:3.4.1-1 -- Update to 3.4.1 - -* Thu Jul 12 2018 Fedora Release Engineering - 1:3.3.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Wed May 02 2018 Miro Hrončok - 1:3.3.0-1 -- Updated to 3.3.0 -- Make sure Fedora CXXFLAGS are used, also -fPIC -- Use new USE_SYSTEM_LIBS option instead of patch+sed - -* Mon Mar 19 2018 Miro Hrončok - 1:3.2.1-1 -- Updated to 3.2.1 - -* Wed Feb 07 2018 Fedora Release Engineering - 1:3.1.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Sun Dec 10 2017 Miro Hrončok - 1:3.1.0-1 -- Updated to 3.1.0 - -* Wed Nov 29 2017 Igor Gnatenko - 1:3.0.3-3 -- Rebuild for protobuf 3.5 - -* Mon Nov 13 2017 Igor Gnatenko - 1:3.0.3-2 -- Rebuild for protobuf 3.4 - -* Mon Oct 23 2017 Miro Hrončok - 1:3.0.3-1 -- Updated to 3.0.3 - -* Wed Aug 30 2017 Miro Hrončok - 1:2.7.0-1 -- Update to 2.7.0 - -* Wed Aug 02 2017 Fedora Release Engineering - 1:2.6.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Wed Jul 26 2017 Fedora Release Engineering - 1:2.6.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Wed Jun 28 2017 Miro Hrončok - 1:2.6.1-1 -- Updated to 2.6.1 - -* Tue Jun 27 2017 Miro Hrončok - 1:2.6.0-1 -- Updated to 2.6.0 - -* Wed Jun 14 2017 Miro Hrončok - 1:2.5.0-2 -- Rebuilt for new protobuf 3.3.1 - -* Wed May 03 2017 Miro Hrončok - 1:2.5.0-1 -- Updated to 2.5.0 - -* Sun Dec 04 2016 Miro Hrončok - 1:2.3.1-1 -- New version scheme -> Introduce Epoch -- Updated -- SPEC rewritten - -* Sun Sep 18 2016 Miro Hrončok - 15.04-4 -- Rebuilt for new polyclipping (#1159525) - -* Wed Feb 03 2016 Fedora Release Engineering - 15.04-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Mon Jul 06 2015 Miro Hrončok - 15.04-2 -- Set the VERSION variable - -* Sun Jul 05 2015 Miro Hrončok - 15.04-1 -- Update to 15.04 - -* Tue Jun 16 2015 Fedora Release Engineering - 14.12.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Sat May 02 2015 Kalev Lember - 14.12.1-2 -- Rebuilt for GCC 5 C++11 ABI change - -* Mon Dec 29 2014 Miro Hrončok - 14.12.1-1 -- Update to 14.12.1 - -* Thu Oct 23 2014 Miro Hrončok - 14.03-3 -- Rebuilt for new polyclipping - -* Fri Aug 15 2014 Fedora Release Engineering - 14.03-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild - -* Mon Jun 23 2014 Miro Hrončok - 14.03-1 -- New version 14.03 - -* Fri Jun 06 2014 Fedora Release Engineering - 14.01-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Sun Mar 09 2014 Miro Hrončok - 14.01-1 -- New version 14.01 -- polyclipping 6.1.x -- Now with make test -- Rebuilt against new polyclipping release - -* Sat Dec 14 2013 Miro Hrončok - 13.11.2-1 -- New version 13.11.2 -- Makefile seding changed to reflect changes -- Clipper usage no longer need patching - -* Fri Aug 02 2013 Fedora Release Engineering - 13.06.3-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Mon Jul 22 2013 Miro Hrončok - 13.06.3-3 -- Rebuilt for new polyclipping - -* Thu Jul 04 2013 Miro Hrončok - 13.06.3-2 -- Added some explaining comments - -* Sun Jun 23 2013 Miro Hrončok - 13.06.3-1 -- New package +%autochangelog diff --git a/changelog b/changelog new file mode 100644 index 0000000..d4d1fad --- /dev/null +++ b/changelog @@ -0,0 +1,249 @@ +* Wed Oct 25 2023 Benjamin A. Beasley - 1:5.3.0-5 +- Ensure stb_image contains the latest CVE patches + +* Wed Jul 19 2023 Fedora Release Engineering - 1:5.3.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Sat Jul 08 2023 Vitaly Zaitsev - 1:5.3.0-3 +- Rebuilt due to spdlog 1.12 update. + +* Sat Jul 1 2023 Mamoru TASAKA - 1:5.3.0-3 +- Patch for fmtlib 10 + +* Wed Jun 28 2023 Vitaly Zaitsev - 1:5.3.0-2 +- Rebuilt due to fmt 10 update. + +* Wed Mar 8 2023 Tom Callaway - 1:5.3.0-1 +- update to 5.3.0 + +* Sat Feb 25 2023 Benjamin A. Beasley - 1:4.13.1-6 +- Update minimum stb_image to fix a null deref. bug + +* Sun Jan 29 2023 Benjamin A. Beasley - 1:4.13.1-5 +- Add an #include needed for GCC 13 + +* Wed Jan 18 2023 Fedora Release Engineering - 1:4.13.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Wed Jul 20 2022 Fedora Release Engineering - 1:4.13.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Sat Apr 23 2022 Benjamin A. Beasley - 1:4.13.1-2 +- Security fix for CVE-2022-28041 + +* Tue Feb 01 2022 Gabriel Féron - 1:4.13.1-1 +- Update to 4.13.1 + +* Wed Jan 19 2022 Gabriel Féron - 1:4.13.0-1 +- Update to 4.13.0 + +* Wed Jan 19 2022 Fedora Release Engineering - 1:4.12.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Mon Dec 13 2021 Gabriel Féron - 1:4.12.1-4 +- Update to 4.12.1 + +* Sat Nov 06 2021 Adrian Reber - 1:4.11.0-4 +- Rebuilt for protobuf 3.19.0 + +* Mon Oct 25 2021 Adrian Reber - 1:4.11.0-3 +- Rebuilt for protobuf 3.18.1 + +* Sat Oct 23 2021 Benjamin A. Beasley - 1:4.11.0-2 +- Rebuild with updated stb_image to patch CVE-2021-28021, CVE-2021-42715, and + CVE-2021-42716 + +* Wed Sep 15 2021 Gabriel Féron - 1:4.11.0-1 +- Update to 4.11.0 + +* Mon Aug 23 2021 Benjamin A. Beasley - 1:4.10.0-2 +- Unbundle stb_image + +* Mon Aug 16 2021 Gabriel Féron - 1:4.10.0-1 +- Update to 4.10.0 + +* Wed Jul 21 2021 Fedora Release Engineering - 1:4.9.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Thu Jun 10 2021 Gabriel Féron - 1:4.9.1-1 +- Update to 4.9.1 + +* Mon Apr 26 2021 Gabriel Féron - 1:4.9.0-1 +- Update to 4.9.0 + +* Mon Jan 25 2021 Fedora Release Engineering - 1:4.8.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Wed Jan 13 14:30:13 CET 2021 Adrian Reber - 1:4.8.0-2 +- Rebuilt for protobuf 3.14 + +* Wed Dec 23 2020 Jan Pazdziora - 1:4.8.0-1 +- Update to 4.8.0 + +* Wed Sep 23 2020 Adrian Reber - 1:4.7.1-2 +- Rebuilt for protobuf 3.13 + +* Thu Sep 03 2020 Miro Hrončok - 1:4.7.1-1 +- Update to 4.7.1 + +* Mon Aug 31 2020 Gabriel Féron - 1:4.7.0-1 +- Update to 4.7.0 + +* Mon Jul 27 2020 Fedora Release Engineering - 1:4.6.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Sun Jun 14 2020 Adrian Reber - 1:4.6.1-2 +- Rebuilt for protobuf 3.12 + +* Tue May 5 2020 Gabriel Féron - 1:4.6.0-1 +- Update to 4.6.1 + +* Tue Apr 21 2020 Gabriel Féron - 1:4.6.0-1 +- Update to 4.6.0 + +* Tue Jan 28 2020 Fedora Release Engineering - 1:4.4.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Thu Dec 19 2019 Orion Poplawski - 1:4.4.0-2 +- Rebuild for protobuf 3.11 + +* Thu Nov 21 2019 Gabriel Féron - 1:4.4.0-1 +- Update to 4.4.0 + +* Wed Jul 24 2019 Fedora Release Engineering - 1:4.1.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Tue Jun 18 2019 Gabriel Féron - 1:4.1.0-1 +- Update to 4.1.0 + +* Wed Apr 03 2019 Gabriel Féron - 1:4.0.0-1 +- Update to 4.0.0 + +* Thu Jan 31 2019 Fedora Release Engineering - 1:3.6.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Sat Jan 26 2019 Gabriel Féron - 1:3.6.0-1 +- Update to 3.6.0 + +* Thu Nov 22 2018 Igor Gnatenko - 1:3.5.1-3 +- Rebuild for protobuf 3.6 + +* Wed Nov 21 2018 Igor Gnatenko - 1:3.5.1-2 +- Rebuild for protobuf 3.6 + +* Mon Nov 12 2018 Miro Hrončok - 1:3.5.1-1 +- Fix the error in epoch/release + +* Mon Nov 12 2018 Miro Hrončok - 0:3.5.1-2 +- Update to 3.5.1 (#1644323) + +* Tue Aug 28 2018 Miro Hrončok - 1:3.4.1-1 +- Update to 3.4.1 + +* Thu Jul 12 2018 Fedora Release Engineering - 1:3.3.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Wed May 02 2018 Miro Hrončok - 1:3.3.0-1 +- Updated to 3.3.0 +- Make sure Fedora CXXFLAGS are used, also -fPIC +- Use new USE_SYSTEM_LIBS option instead of patch+sed + +* Mon Mar 19 2018 Miro Hrončok - 1:3.2.1-1 +- Updated to 3.2.1 + +* Wed Feb 07 2018 Fedora Release Engineering - 1:3.1.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Sun Dec 10 2017 Miro Hrončok - 1:3.1.0-1 +- Updated to 3.1.0 + +* Wed Nov 29 2017 Igor Gnatenko - 1:3.0.3-3 +- Rebuild for protobuf 3.5 + +* Mon Nov 13 2017 Igor Gnatenko - 1:3.0.3-2 +- Rebuild for protobuf 3.4 + +* Mon Oct 23 2017 Miro Hrončok - 1:3.0.3-1 +- Updated to 3.0.3 + +* Wed Aug 30 2017 Miro Hrončok - 1:2.7.0-1 +- Update to 2.7.0 + +* Wed Aug 02 2017 Fedora Release Engineering - 1:2.6.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 1:2.6.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Wed Jun 28 2017 Miro Hrončok - 1:2.6.1-1 +- Updated to 2.6.1 + +* Tue Jun 27 2017 Miro Hrončok - 1:2.6.0-1 +- Updated to 2.6.0 + +* Wed Jun 14 2017 Miro Hrončok - 1:2.5.0-2 +- Rebuilt for new protobuf 3.3.1 + +* Wed May 03 2017 Miro Hrončok - 1:2.5.0-1 +- Updated to 2.5.0 + +* Sun Dec 04 2016 Miro Hrončok - 1:2.3.1-1 +- New version scheme -> Introduce Epoch +- Updated +- SPEC rewritten + +* Sun Sep 18 2016 Miro Hrončok - 15.04-4 +- Rebuilt for new polyclipping (#1159525) + +* Wed Feb 03 2016 Fedora Release Engineering - 15.04-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Mon Jul 06 2015 Miro Hrončok - 15.04-2 +- Set the VERSION variable + +* Sun Jul 05 2015 Miro Hrončok - 15.04-1 +- Update to 15.04 + +* Tue Jun 16 2015 Fedora Release Engineering - 14.12.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Sat May 02 2015 Kalev Lember - 14.12.1-2 +- Rebuilt for GCC 5 C++11 ABI change + +* Mon Dec 29 2014 Miro Hrončok - 14.12.1-1 +- Update to 14.12.1 + +* Thu Oct 23 2014 Miro Hrončok - 14.03-3 +- Rebuilt for new polyclipping + +* Fri Aug 15 2014 Fedora Release Engineering - 14.03-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Mon Jun 23 2014 Miro Hrončok - 14.03-1 +- New version 14.03 + +* Fri Jun 06 2014 Fedora Release Engineering - 14.01-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Sun Mar 09 2014 Miro Hrončok - 14.01-1 +- New version 14.01 +- polyclipping 6.1.x +- Now with make test +- Rebuilt against new polyclipping release + +* Sat Dec 14 2013 Miro Hrončok - 13.11.2-1 +- New version 13.11.2 +- Makefile seding changed to reflect changes +- Clipper usage no longer need patching + +* Fri Aug 02 2013 Fedora Release Engineering - 13.06.3-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Mon Jul 22 2013 Miro Hrončok - 13.06.3-3 +- Rebuilt for new polyclipping + +* Thu Jul 04 2013 Miro Hrončok - 13.06.3-2 +- Added some explaining comments + +* Sun Jun 23 2013 Miro Hrončok - 13.06.3-1 +- New package From d0efb354f1d2a0abc5c9ff99f7074c9255513d93 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Tue, 5 Dec 2023 16:03:36 +0100 Subject: [PATCH 79/91] Remove old cruft --- CuraEngine.spec | 5 ----- 1 file changed, 5 deletions(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 6c95738..b4c3f26 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -47,12 +47,7 @@ Patch0: %{name}-static-libstdcpp.patch Patch1: CuraEngine-5.3.0-fmt10.patch # https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval -%if 0%{?fedora} >= 37 || 0%{?rhel} >= 10 ExcludeArch: %{ix86} -%endif - -# Get Fedora 33++ behavior on anything older -%undefine __cmake_in_source_build %description %{name} is a C++ console application for 3D printing G-code generation. It From 22e8de87b47aa5ed332a1dda88f45adf943f51d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Tue, 5 Dec 2023 16:04:09 +0100 Subject: [PATCH 80/91] Convert the License tag to SPDX --- CuraEngine.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index b4c3f26..3b8312c 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -3,7 +3,7 @@ Epoch: 1 Version: 5.3.0 Release: %autorelease Summary: Engine for processing 3D models into G-code instructions for 3D printers -License: AGPLv3+ +License: AGPL-3.0-or-later URL: https://github.com/Ultimaker/%{name} Source0: %{url}/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz From 9293b0433c12efcd9df4f9af6fc764acf6ee3dfb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Tue, 5 Dec 2023 17:58:56 +0100 Subject: [PATCH 81/91] Update to 5.4.0 --- .gitignore | 2 +- CMakeLists.txt | 3 +-- CuraEngine-5.3.0-fmt10.patch | 33 --------------------------------- CuraEngine-5.4.0-fmt10.patch | 25 +++++++++++++++++++++++++ CuraEngine.spec | 17 ++++++++++++++--- sources | 3 ++- 6 files changed, 43 insertions(+), 40 deletions(-) delete mode 100644 CuraEngine-5.3.0-fmt10.patch create mode 100644 CuraEngine-5.4.0-fmt10.patch diff --git a/.gitignore b/.gitignore index 3c3d653..c242265 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,2 @@ /CuraEngine-*.tar.gz -/e6afb9cbae4064da8c3e69af3ff5c4629579c1d2.tar.gz +/Scripta_public-*.tar.gz diff --git a/CMakeLists.txt b/CMakeLists.txt index 5993783..4777032 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -174,10 +174,9 @@ set(engine_SRCS # Except main.cpp. src/TopSurface.cpp src/TreeModelVolumes.cpp src/TreeSupport.cpp + src/TreeSupportTipGenerator.cpp src/WallToolPaths.cpp src/WallsComputation.cpp - src/Weaver.cpp - src/Wireframe2gcode.cpp src/BeadingStrategy/BeadingStrategy.cpp src/BeadingStrategy/BeadingStrategyFactory.cpp diff --git a/CuraEngine-5.3.0-fmt10.patch b/CuraEngine-5.3.0-fmt10.patch deleted file mode 100644 index d8147df..0000000 --- a/CuraEngine-5.3.0-fmt10.patch +++ /dev/null @@ -1,33 +0,0 @@ ---- CuraEngine-5.3.0/src/FffGcodeWriter.cpp.fmt10 2023-03-07 21:33:22.000000000 +0900 -+++ CuraEngine-5.3.0/src/FffGcodeWriter.cpp 2023-07-02 00:01:20.042447483 +0900 -@@ -996,7 +996,7 @@ void FffGcodeWriter::processRaft(const S - - LayerPlan& FffGcodeWriter::processLayer(const SliceDataStorage& storage, LayerIndex layer_nr, const size_t total_layers) const - { -- spdlog::debug("GcodeWriter processing layer {} of {}", layer_nr, total_layers); -+ spdlog::debug("GcodeWriter processing layer {} of {}", static_cast(layer_nr), total_layers); - - const Settings& mesh_group_settings = Application::getInstance().current_slice->scene.current_mesh_group->settings; - coord_t layer_thickness = mesh_group_settings.get("layer_height"); ---- CuraEngine-5.3.0/src/LayerPlanBuffer.cpp.fmt10 2023-03-07 21:33:22.000000000 +0900 -+++ CuraEngine-5.3.0/src/LayerPlanBuffer.cpp 2023-07-02 00:03:16.060680917 +0900 -@@ -82,7 +82,7 @@ void LayerPlanBuffer::addConnectingTrave - - if (! new_layer_destination_state) - { -- spdlog::warn("Layer {} is empty (or it has empty extruder plans). Temperature control and cross layer travel moves might suffer!", newest_layer->layer_nr); -+ spdlog::warn("Layer {} is empty (or it has empty extruder plans). Temperature control and cross layer travel moves might suffer!", static_cast(newest_layer->layer_nr)); - return; - } - ---- CuraEngine-5.3.0/src/Weaver.cpp.fmt10 2023-03-07 21:33:22.000000000 +0900 -+++ CuraEngine-5.3.0/src/Weaver.cpp 2023-07-02 00:04:08.697786833 +0900 -@@ -55,7 +55,7 @@ void Weaver::weave(MeshGroup* meshgroup) - } - if (starting_layer_idx > 0) - { -- spdlog::warn("First {} layers are empty!", starting_layer_idx); -+ spdlog::warn("First {} layers are empty!", static_cast(starting_layer_idx)); - } - } - diff --git a/CuraEngine-5.4.0-fmt10.patch b/CuraEngine-5.4.0-fmt10.patch new file mode 100644 index 0000000..288a043 --- /dev/null +++ b/CuraEngine-5.4.0-fmt10.patch @@ -0,0 +1,25 @@ +diff --git a/include/settings/types/LayerIndex.h b/include/settings/types/LayerIndex.h +index 1e48bbc..adcffaf 100644 +--- a/include/settings/types/LayerIndex.h ++++ b/include/settings/types/LayerIndex.h +@@ -5,6 +5,7 @@ + #define LAYERINDEX_H + + #include ++#include + + namespace cura + { +@@ -109,6 +110,12 @@ struct LayerIndex + int value = 0; + }; + ++constexpr auto format_as(LayerIndex index) ++{ ++ return index.value; ++} ++ ++ + } + + namespace std diff --git a/CuraEngine.spec b/CuraEngine.spec index 3b8312c..4d566a8 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -1,6 +1,6 @@ Name: CuraEngine Epoch: 1 -Version: 5.3.0 +Version: 5.4.0 Release: %autorelease Summary: Engine for processing 3D models into G-code instructions for 3D printers License: AGPL-3.0-or-later @@ -14,6 +14,14 @@ Source4: FindStb.cmake Source5: CMakeLists.txt Source6: CPackConfig.cmake +# This is some kind of "public" layer of a private logging thing :/ +# It's header-only and not usable as a system library, +# so I (churchyard) decided to bundle it for now. Shame on me. +# It's AGPL-3.0-or-later. +%global scripta_version c378c837eeb505146ab67abe0904bfed2099128f +Source7: https://github.com/Ultimaker/Scripta_public/archive/%{scripta_version}/Scripta_public-%{scripta_version}.tar.gz +Provides: bundled(scripta) = %{scripta_version} + BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: libarcus-devel >= 5.2.2 @@ -43,8 +51,8 @@ BuildRequires: spdlog-devel BuildRequires: stb_image-static >= 2.28^20231011gitbeebb24-12 Patch0: %{name}-static-libstdcpp.patch -# Patch for fmtlib 10 -Patch1: CuraEngine-5.3.0-fmt10.patch +# Patch for fmtlib 10, from https://github.com/Ultimaker/CuraEngine/commit/5a4ca90594f965b6a5e6af626a5c508185277162 +Patch1: CuraEngine-5.4.0-fmt10.patch # https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval ExcludeArch: %{ix86} @@ -64,6 +72,9 @@ cp -a %{SOURCE2} %{SOURCE3} %{SOURCE4} cmake rm -rf CMakeLists.txt cp -a %{SOURCE5} %{SOURCE6} . +tar xf %{SOURCE7} +mv Scripta_public-%{scripta_version}/include/scripta/ include/ + %patch -P0 -p1 %patch -P1 -p1 diff --git a/sources b/sources index 8b55e2c..9692917 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ -SHA512 (CuraEngine-5.3.0.tar.gz) = 01c05e616fedf14b2ab36c89f3c0540705e79908a35488282f62b9f335fbe33bda0e151cf4d98580b0c01a40029662193471cb2bb86a0cb2671e6dcf46cbb253 +SHA512 (CuraEngine-5.4.0.tar.gz) = 2f5c8442a65a1695acc92fd3a8af0d2376e5e589d0cc6dec538756b3697efc1b69875a19bc72c39022d8b7361ac242c0544a284fc8c5c066790f3c4e5e26f468 +SHA512 (Scripta_public-c378c837eeb505146ab67abe0904bfed2099128f.tar.gz) = d0b898f4830947d672e5b8dba9b0ad7a744347b603925ae24d43a7499343d4e80fbd4296277289e15eaf2d5a3165d6c1c50300e42dc268155f7081b178a34f7a From 05877b4bba067b1a3a9892a5545f4b15f7e8a194 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 18 Jan 2024 12:15:09 +0000 Subject: [PATCH 82/91] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From adcd997f0417e9d3a73029ade1c553098a9b7a3e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 19 Jan 2024 09:27:34 +0000 Subject: [PATCH 83/91] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 8ccf8941fc61793788c2798394d2dcb8009deead Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Mon, 22 Jan 2024 20:52:11 +0000 Subject: [PATCH 84/91] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 698104d5f2cd1c16ce86806d4678ae4f48b30e95 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= Date: Tue, 21 May 2024 17:39:54 +0200 Subject: [PATCH 85/91] Rebuilt for spdlog 1.14.1 From ec35be5da8bc16f840717866be152da6c841d6e8 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 17 Jul 2024 14:49:34 +0000 Subject: [PATCH 86/91] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From ab04fc106f3ecd63e3300e7505f3fffc349f8681 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Franti=C5=A1ek=20Zatloukal?= Date: Tue, 26 Nov 2024 10:23:07 +0100 Subject: [PATCH 87/91] Rebuilt for spdlog 1.15.0 From 057fabca2fa46ae0d833fafbcdf745f6aa66716f Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 16 Jan 2025 08:31:13 +0000 Subject: [PATCH 88/91] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From 7060720467f8c667e1f9d2817bfd9b4102224ae2 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 23 Jul 2025 15:44:45 +0000 Subject: [PATCH 89/91] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From 64abe98db0a5fd48268e3eec6ed42d551b19b545 Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Wed, 26 Nov 2025 07:01:20 +0000 Subject: [PATCH 90/91] Rebuilt with latest patched stb_image: memory-safety fixes --- CuraEngine.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CuraEngine.spec b/CuraEngine.spec index 4d566a8..d9a8eb6 100644 --- a/CuraEngine.spec +++ b/CuraEngine.spec @@ -48,7 +48,8 @@ BuildRequires: spdlog-devel # CVE-2023-45664 # CVE-2023-45666 # CVE-2023-45667 -BuildRequires: stb_image-static >= 2.28^20231011gitbeebb24-12 +# Upstream issues #1860, #1861 +BuildRequires: stb_image-static >= 2.30^20251025gitf1c79c0-2 Patch0: %{name}-static-libstdcpp.patch # Patch for fmtlib 10, from https://github.com/Ultimaker/CuraEngine/commit/5a4ca90594f965b6a5e6af626a5c508185277162 From 368de1c7040e6a5262e43a1bcdaba4bb2a587bc3 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 16 Jan 2026 02:30:58 +0000 Subject: [PATCH 91/91] Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild