Various updates and fixes
This commit is contained in:
@@ -1,2 +1,15 @@
|
||||
AUX 50openscad-gentoo.el 167 BLAKE2B 36292439057e2b9a5993c73cf5d46e5b6b0b56695f46307114fcfffa79990be0b0622ec3a6918726d4a5f7e4343525b9e67f785996ec4eb7abb938b6df1cb2f7 SHA512 ce669eba45ab90e9dbcd770a7470ca9ed7088b1acabbc876fe4d31dc7a6edd36076063e4bd417d348c3e073113e3ad2bc2dd0ac89e02d3d8aeca7627ad7d2a1e
|
||||
AUX openscad-2021.01-0001-Gentoo-specific-Disable-ccache-building.patch 790 BLAKE2B b08a024f81a29d7fb4e0860977b814d2ec6ce6dcbf8ab87655f5d36f51ea3bbce6559369363c33ca7593cbc3284de920f71be3c38e3ab7b5efa83d3466132b79 SHA512 2af887d7b085c49203e72ad41cb5c0e32b772a8abd35843485434cb11b263ba8a727a0ebc34c7138bff1e6852245f2bdaf7d91711184a5f16ed22603578a0892
|
||||
AUX openscad-2021.01-0002-fix-to-find-lib3mf-2.patch 1396 BLAKE2B a43872dd83427f28a48528fbac534924796db769bd0213ba1b6fca41a65c766aa3355aa9ee3f7d68dcbbf3d578cee984f2ad61f599fdf9551ef55724f460f4db SHA512 ffbf402976054c1e7294a0d661e0648bdb359cf57e676d818cf1140644b7a0d0943f5adf1d2f511ad17ca45a35e31785aae584dc7607f13bfc9d94795fc3812b
|
||||
AUX openscad-2021.01-CGAL-build-fix-v5.4-renames-projection-traits-header.patch 1380 BLAKE2B b359211ef34bd0e1306f37fcf84f65fc8b3a03036608abb36ece8e134bee419646754fedb52134947f1a3943c02fc07d778127f544d873346d62e5cd36c3ce9a SHA512 4c0dea73a578db8e6ff499a4fc9b337292d66dc1d652559d73616e85ee57d4a5c06d93e96a4e543a9b7087d3f4939e98bd7e22f9a9305c612a487527454e4d38
|
||||
AUX openscad-2021.01-CVE-2022-0496-Out-of-bounds-memory-access-in-DXF-loa.patch 3690 BLAKE2B c320ddd5077e8f4c92f21e9ea18e741b6844f409d1be1ca90fcf8ed8fe0b394694d2a4198b068858b92d8b004e603070bd51a0de1ccafdd3afc1925377f00082 SHA512 1a08d7207a6c98493022a6019d44db468ad8b1b0a7623296302895ffcda789fd9ad90f3d361026b6309fbbd23051a5f686e1a21c01bd90a668dd5ce08fd6ba9f
|
||||
AUX openscad-2021.01-CVE-2022-0497-Out-of-bounds-memory-access-in-comment.patch 752 BLAKE2B a54676bdf69a78cbc0ff1d11676de4b5913030093f06a2029bb44bb301dee681a7a971f3cd31b033061f5f4e03ac243c83b51d21576b0bbe21cdc8457632d885 SHA512 49f43408021397d8ca8a628de102dde9f55ccc4fa219f84f7a0e08db6b63232d5d31562814669728273379db521e98d819fe939521ba7a346232a05aa9dcdc89
|
||||
AUX openscad-2021.01-Fix-build-failure-with-generic_print_polyhedron-on-C.patch 1390 BLAKE2B 2c5e96675b15f9dc7020f21d5d2b5a9f7edcde154533dcda14762aef5cbe8bec78ac0fb9cc8b0426817027543313a6862c07dd5d17eb46fa101633ed55ed75d6 SHA512 58cfa61093edb3e18022b73cca93d4741ba2fddd259c37864d604ee66bc8f9f1f170677f2151b539ebdf70e3043c6d1650fa7578037c70c277d3eec4ca030a4e
|
||||
AUX openscad-2021.01-Fix-build-issue-with-overloaded-join.patch 3336 BLAKE2B c92caab0f33551ee7e66c6527dfa61d5ae70c3820d51188b6b4fc042a66cd58d207d4dbcdc87641b79733784d1c088af34a85078899fa4468522b4653fed7ab7 SHA512 f8860ec827efcdf1e0037c22ec0c1f8364b5f9554d264d2bac5be57c1b86e79f6ab284b65f1763c1548e8e3479c0ca510954937907f18f0db745826338a4f2f8
|
||||
AUX openscad-2021.01-Remove-double-quoting-of-the-output-file-parameter-f.patch 775 BLAKE2B eed37277c3e7ea84635c0b8cd02cc4ffde7abea78400ee39e67bcc782800197c57dae07a82084df47705951ced8968be78243a1d0e14a551783b8adcb669d43f SHA512 94306e68e53b01e799a5feb6f16a8f44c965a4b653b60227833013712f23648d20ac8272a7bfe38bde201af42946f91fe17231f120adfbe5b16e42b07d9f8d10
|
||||
AUX openscad-2021.01-boost-1.85.patch 621 BLAKE2B f86fa92c1f3c4a059550017e7a16ee808bdd4ff4a4196c19dacf8b86fd97458f72ebbf0ef763b88115d56eb0cb6ec565b63dd789c4558d8011aaf252b9ceea00 SHA512 786bf3739f8296b83047ac6c36432d331f392a1d1cf67fc2135a98f227840ff1b099437f5157bf8472ea47206a7ff2ef0de09e2b8780830e235c94bfe6ccad5b
|
||||
AUX openscad-2021.01-fix-cstd.patch 459 BLAKE2B 883e7c080d625093dfab151abe116d77651c8d6a40cec0f30c537153051aa102f81e94fa7c516410ff4b9d14fafd36486504a93804df18985d3aca86b1a3a341 SHA512 bc66c0300b7f23256f1b66aa55e1219e25fbcc7490f55e0163448e90450d4d3023b19a1a2862652fa3f9dc9befa27d14db24c74580e5ddd92364d58971246613
|
||||
DIST openscad-2021.01.tar.gz 15817555 BLAKE2B 417857d704fa3c14312641ebda983eb85a1e3bc0d517a235fa3bd2523fce6f93c1ea526c330179bc35f03e6c73d3cd7c4c57cd71480088c21bfc99bb020ab7cd SHA512 8deaa26bf4c295c12da38f323d2b2e6f827851337f5bc1cc9c79afc083c9f913c19a263086e6e853bf2c8434c1ccc705ea22ddb02dc99d39bb1e5e03fc58d128
|
||||
EBUILD openscad-2021.01-r5.ebuild 2937 BLAKE2B e3dd68f56119438f43d14fdc38a79b7d9d7f379b1f767622cbfe531195353d8d7a83a4e2e5dfecd8be88f112be6c2f03cfbb6193ab3de6ba6c0cef4bb16af00d SHA512 f5d288bfedf36ff8f956250bec83f58ba798e20a558db9de0d7a9fb6a93eddef5a7c651b043705e8e60958ec77bf5a75d3f8318c9c9ac17fc56b95c71cfc8eb6
|
||||
EBUILD openscad-9999.ebuild 2489 BLAKE2B e073d8eecb56895c3886177abd346cf19d6215462dd0a6a15a5b9b1adddee17853fa2b808c6e8f03908647bf518e3bd7a77a5f69cd640cb8c701c894594e0764 SHA512 751617f4f6b1164cc1cb42f61665a6f10c47f18e8693b6451e9ea87cf45ee25d26892ac2c72321c234a943befe0e707f5cc7d08535461e478c3c392d28ce9e77
|
||||
MISC metadata.xml 1348 BLAKE2B b15a74a20ef94a6a47de57826c5279a4e8c388a52bf9d1058a1ba0b347fcd77e0c8b79a42515f5411d0991fb8fb71c604f792dd2a2addaaca78bc85dbfc7a611 SHA512 fea109a00324f0bdcaae855e18fba456a449bb8192e633cfd5806fa1040fe3bba24f75493e0012d54afe8828073fc4d02ae01533b45648e05c575777b23572d1
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
(add-to-list 'load-path "@SITELISP@")
|
||||
(autoload 'scad-mode "scad-mode" "Major mode for editing SCAD code." t)
|
||||
(add-to-list 'auto-mode-alist '("\\.scad$" . scad-mode))
|
||||
+32
@@ -0,0 +1,32 @@
|
||||
From c138881767262b9f5c64a465a0e1e46ffcfc5899 Mon Sep 17 00:00:00 2001
|
||||
From: Bernd Waibel <waebbl-gentoo@posteo.net>
|
||||
Date: Sun, 28 Feb 2021 16:51:30 +0100
|
||||
Subject: [PATCH] [Gentoo specific] Disable ccache building
|
||||
|
||||
On Gentoo, we use a USE flag to determine whether ccache
|
||||
should be used for building.
|
||||
|
||||
Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
|
||||
---
|
||||
openscad.pro | 5 -----
|
||||
1 file changed, 5 deletions(-)
|
||||
|
||||
diff --git a/openscad.pro b/openscad.pro
|
||||
index b76ca76..678e08d 100755
|
||||
--- a/openscad.pro
|
||||
+++ b/openscad.pro
|
||||
@@ -211,11 +211,6 @@ mdi {
|
||||
DEFINES += ENABLE_MDI
|
||||
}
|
||||
|
||||
-system("ccache -V >/dev/null 2>/dev/null") {
|
||||
- CONFIG += ccache
|
||||
- message("Using ccache")
|
||||
-}
|
||||
-
|
||||
include(common.pri)
|
||||
|
||||
# mingw has to come after other items so OBJECT_DIRS will work properly
|
||||
--
|
||||
2.30.1
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
From 16847a70cf05484a668d8f79aba4ccec7e16c025 Mon Sep 17 00:00:00 2001
|
||||
From: Bernd Waibel <waebbl-gentoo@posteo.net>
|
||||
Date: Sat, 6 Mar 2021 22:59:17 +0100
|
||||
Subject: [PATCH] fix to find lib3mf-2
|
||||
|
||||
The pkgconfig file for lib3mf has been renamed in case
|
||||
for lib3mf-2 versions.
|
||||
This patch uses the news names.
|
||||
|
||||
Signed-off-by: Bernd Waibel <waebbl-gentoo@posteo.net>
|
||||
---
|
||||
features/lib3mf.prf | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/features/lib3mf.prf b/features/lib3mf.prf
|
||||
index 2c512da..47be364 100644
|
||||
--- a/features/lib3mf.prf
|
||||
+++ b/features/lib3mf.prf
|
||||
@@ -15,8 +15,8 @@ isEmpty(LIB3MF_LIBPATH) {
|
||||
}
|
||||
|
||||
isEmpty(LIB3MF_INCLUDEPATH) {
|
||||
- LIB3MF_CFLAGS = $$system("$$PKG_CONFIG --cflags lib3MF")
|
||||
- LIB3MF_INCLUDEPATH = $$system("$$PKG_CONFIG --variable=includedir lib3MF")
|
||||
+ LIB3MF_CFLAGS = $$system("$$PKG_CONFIG --cflags lib3mf")
|
||||
+ LIB3MF_INCLUDEPATH = $$system("$$PKG_CONFIG --variable=includedir lib3mf")
|
||||
!isEmpty(LIB3MF_CFLAGS) {
|
||||
ENABLE_LIB3MF=yes
|
||||
}
|
||||
@@ -25,8 +25,8 @@ isEmpty(LIB3MF_INCLUDEPATH) {
|
||||
}
|
||||
|
||||
isEmpty(LIB3MF_LIBPATH) {
|
||||
- LIB3MF_LIBS = $$system("$$PKG_CONFIG --libs lib3MF")
|
||||
- LIB3MF_LIBPATH = $$system("$$PKG_CONFIG --variable=libdir lib3MF")
|
||||
+ LIB3MF_LIBS = $$system("$$PKG_CONFIG --libs lib3mf")
|
||||
+ LIB3MF_LIBPATH = $$system("$$PKG_CONFIG --variable=libdir lib3mf")
|
||||
!isEmpty(LIB3MF_LIBS) {
|
||||
ENABLE_LIB3MF=yes
|
||||
}
|
||||
--
|
||||
2.30.1
|
||||
|
||||
+36
@@ -0,0 +1,36 @@
|
||||
https://bugs.gentoo.org/851189
|
||||
From https://github.com/openscad/openscad/commit/abfebc651343909b534ef337aacc7604c99cf0ea Mon Sep 17 00:00:00 2001
|
||||
From: Torsten Paul <Torsten.Paul@gmx.de>
|
||||
Date: Wed, 2 Feb 2022 02:30:59 +0100
|
||||
Subject: [PATCH 09/11] CGAL build fix, v5.4 renames projection traits header
|
||||
files and classes.
|
||||
|
||||
--- a/src/cgalutils-tess.cc
|
||||
+++ b/src/cgalutils-tess.cc
|
||||
@@ -6,10 +6,12 @@
|
||||
#pragma push_macro("NDEBUG")
|
||||
#undef NDEBUG
|
||||
#include <CGAL/Constrained_Delaunay_triangulation_2.h>
|
||||
-#if CGAL_VERSION_NR >= CGAL_VERSION_NUMBER(4,11,0)
|
||||
- #include <CGAL/Triangulation_2_projection_traits_3.h>
|
||||
+#if CGAL_VERSION_NR < 1050401000
|
||||
+#include <CGAL/Triangulation_2_projection_traits_3.h>
|
||||
+typedef CGAL::Triangulation_2_filtered_projection_traits_3<K> Projection;
|
||||
#else
|
||||
- #include <CGAL/Triangulation_2_filtered_projection_traits_3.h>
|
||||
+#include <CGAL/Projection_traits_3.h>
|
||||
+typedef CGAL::Filtered_projection_traits_3<K> Projection;
|
||||
#endif
|
||||
#include <CGAL/Triangulation_face_base_with_info_2.h>
|
||||
#pragma pop_macro("NDEBUG")
|
||||
@@ -19,7 +21,6 @@ struct FaceInfo {
|
||||
bool in_domain() { return nesting_level%2 == 1; }
|
||||
};
|
||||
|
||||
-typedef CGAL::Triangulation_2_filtered_projection_traits_3<K> Projection;
|
||||
typedef CGAL::Triangulation_face_base_with_info_2<FaceInfo, K> Fbb;
|
||||
typedef CGAL::Triangulation_data_structure_2<
|
||||
CGAL::Triangulation_vertex_base_2<Projection>,
|
||||
--
|
||||
2.35.1
|
||||
|
||||
+74
@@ -0,0 +1,74 @@
|
||||
From https://github.com/openscad/openscad/commit/00a4692989c4e2f191525f73f24ad8727bacdf41 Mon Sep 17 00:00:00 2001
|
||||
From: Torsten Paul <Torsten.Paul@gmx.de>
|
||||
Date: Sat, 5 Feb 2022 18:38:31 +0100
|
||||
Subject: [PATCH 01/11] CVE-2022-0496 Out-of-bounds memory access in DXF
|
||||
loader.
|
||||
|
||||
Public issue:
|
||||
https://github.com/openscad/openscad/issues/4037
|
||||
|
||||
Fix in master branch:
|
||||
https://github.com/openscad/openscad/pull/4090
|
||||
--- a/src/dxfdata.cc
|
||||
+++ b/src/dxfdata.cc
|
||||
@@ -441,6 +441,11 @@ DxfData::DxfData(double fn, double fs, double fa,
|
||||
auto lv = grid.data(this->points[lines[idx].idx[j]][0], this->points[lines[idx].idx[j]][1]);
|
||||
for (size_t ki = 0; ki < lv.size(); ++ki) {
|
||||
int k = lv.at(ki);
|
||||
+ if (k < 0 || k >= lines.size()) {
|
||||
+ LOG(message_group::Warning,Location::NONE,"",
|
||||
+ "Bad DXF line index in %1$s.",QuotedString(boostfs_uncomplete(filename, fs::current_path()).generic_string()));
|
||||
+ continue;
|
||||
+ }
|
||||
if (k == idx || lines[k].disabled) continue;
|
||||
goto next_open_path_j;
|
||||
}
|
||||
@@ -466,13 +471,20 @@ DxfData::DxfData(double fn, double fs, double fa,
|
||||
auto lv = grid.data(ref_point[0], ref_point[1]);
|
||||
for (size_t ki = 0; ki < lv.size(); ++ki) {
|
||||
int k = lv.at(ki);
|
||||
+ if (k < 0 || k >= lines.size()) {
|
||||
+ LOG(message_group::Warning,Location::NONE,"",
|
||||
+ "Bad DXF line index in %1$s.",QuotedString(boostfs_uncomplete(filename, fs::current_path()).generic_string()));
|
||||
+ continue;
|
||||
+ }
|
||||
if (lines[k].disabled) continue;
|
||||
- if (grid.eq(ref_point[0], ref_point[1], this->points[lines[k].idx[0]][0], this->points[lines[k].idx[0]][1])) {
|
||||
+ auto idk0 = lines[k].idx[0]; // make it easier to read and debug
|
||||
+ auto idk1 = lines[k].idx[1];
|
||||
+ if (grid.eq(ref_point[0], ref_point[1], this->points[idk0][0], this->points[idk0][1])) {
|
||||
current_line = k;
|
||||
current_point = 0;
|
||||
goto found_next_line_in_open_path;
|
||||
}
|
||||
- if (grid.eq(ref_point[0], ref_point[1], this->points[lines[k].idx[1]][0], this->points[lines[k].idx[1]][1])) {
|
||||
+ if (grid.eq(ref_point[0], ref_point[1], this->points[idk1][0], this->points[idk1][1])) {
|
||||
current_line = k;
|
||||
current_point = 1;
|
||||
goto found_next_line_in_open_path;
|
||||
@@ -501,13 +513,20 @@ DxfData::DxfData(double fn, double fs, double fa,
|
||||
auto lv = grid.data(ref_point[0], ref_point[1]);
|
||||
for (size_t ki = 0; ki < lv.size(); ++ki) {
|
||||
int k = lv.at(ki);
|
||||
+ if (k < 0 || k >= lines.size()) {
|
||||
+ LOG(message_group::Warning,Location::NONE,"",
|
||||
+ "Bad DXF line index in %1$s.",QuotedString(boostfs_uncomplete(filename, fs::current_path()).generic_string()));
|
||||
+ continue;
|
||||
+ }
|
||||
if (lines[k].disabled) continue;
|
||||
- if (grid.eq(ref_point[0], ref_point[1], this->points[lines[k].idx[0]][0], this->points[lines[k].idx[0]][1])) {
|
||||
+ auto idk0 = lines[k].idx[0]; // make it easier to read and debug
|
||||
+ auto idk1 = lines[k].idx[1];
|
||||
+ if (grid.eq(ref_point[0], ref_point[1], this->points[idk0][0], this->points[idk0][1])) {
|
||||
current_line = k;
|
||||
current_point = 0;
|
||||
goto found_next_line_in_closed_path;
|
||||
}
|
||||
- if (grid.eq(ref_point[0], ref_point[1], this->points[lines[k].idx[1]][0], this->points[lines[k].idx[1]][1])) {
|
||||
+ if (grid.eq(ref_point[0], ref_point[1], this->points[idk1][0], this->points[idk1][1])) {
|
||||
current_line = k;
|
||||
current_point = 1;
|
||||
goto found_next_line_in_closed_path;
|
||||
--
|
||||
2.35.1
|
||||
|
||||
+25
@@ -0,0 +1,25 @@
|
||||
From https://github.com/openscad/openscad/commit/84addf3c1efbd51d8ff424b7da276400bbfa1a4b Mon Sep 17 00:00:00 2001
|
||||
From: Torsten Paul <Torsten.Paul@gmx.de>
|
||||
Date: Sat, 5 Feb 2022 18:45:29 +0100
|
||||
Subject: [PATCH 02/11] CVE-2022-0497 Out-of-bounds memory access in comment
|
||||
parser.
|
||||
|
||||
Public issue:
|
||||
https://github.com/openscad/openscad/issues/4043
|
||||
|
||||
Fix in master branch:
|
||||
https://github.com/openscad/openscad/pull/4044
|
||||
--- a/src/comment.cpp
|
||||
+++ b/src/comment.cpp
|
||||
@@ -92,7 +92,7 @@ static std::string getComment(const std::string &fulltext, int line)
|
||||
}
|
||||
|
||||
int end = start + 1;
|
||||
- while (fulltext[end] != '\n') end++;
|
||||
+ while (end < fulltext.size() && fulltext[end] != '\n') end++;
|
||||
|
||||
std::string comment = fulltext.substr(start, end - start);
|
||||
|
||||
--
|
||||
2.35.1
|
||||
|
||||
+42
@@ -0,0 +1,42 @@
|
||||
https://bugs.gentoo.org/851189
|
||||
From https://github.com/openscad/openscad/commit/9aa0d7e9f2914fe5f547bdde69202161d1c6064d Mon Sep 17 00:00:00 2001
|
||||
From: Jordan Brown <github@jordan.maileater.net>
|
||||
Date: Sun, 18 Jul 2021 21:01:46 -0700
|
||||
Subject: [PATCH 05/11] Fix build failure with "generic_print_polyhedron" on
|
||||
CGAL-5.3.
|
||||
|
||||
--- a/src/cgalutils-polyhedron.cc
|
||||
+++ b/src/cgalutils-polyhedron.cc
|
||||
@@ -337,19 +337,6 @@ namespace CGALUtils {
|
||||
}
|
||||
};
|
||||
|
||||
- template <typename Polyhedron>
|
||||
- std::string printPolyhedron(const Polyhedron &p) {
|
||||
- std::ostringstream sstream;
|
||||
- sstream.precision(20);
|
||||
-
|
||||
- Polyhedron_writer writer;
|
||||
- generic_print_polyhedron(sstream, p, writer);
|
||||
-
|
||||
- return sstream.str();
|
||||
- }
|
||||
-
|
||||
- template std::string printPolyhedron(const CGAL_Polyhedron &p);
|
||||
-
|
||||
}; // namespace CGALUtils
|
||||
|
||||
#endif /* ENABLE_CGAL */
|
||||
--- a/src/cgalutils.h
|
||||
+++ b/src/cgalutils.h
|
||||
@@ -45,7 +45,6 @@ namespace CGALUtils {
|
||||
bool is_approximately_convex(const PolySet &ps);
|
||||
Geometry const* applyMinkowski(const Geometry::Geometries &children);
|
||||
|
||||
- template <typename Polyhedron> std::string printPolyhedron(const Polyhedron &p);
|
||||
template <typename Polyhedron> bool createPolySetFromPolyhedron(const Polyhedron &p, PolySet &ps);
|
||||
template <typename Polyhedron> bool createPolyhedronFromPolySet(const PolySet &ps, Polyhedron &p);
|
||||
template <class Polyhedron_A, class Polyhedron_B>
|
||||
--
|
||||
2.35.1
|
||||
|
||||
@@ -0,0 +1,60 @@
|
||||
https://bugs.gentoo.org/851189
|
||||
From https://github.com/openscad/openscad/commit/08bf69b4115c989fc5671254e0d05735d01bcca5 Mon Sep 17 00:00:00 2001
|
||||
From: Torsten Paul <Torsten.Paul@gmx.de>
|
||||
Date: Wed, 2 Feb 2022 00:50:43 +0100
|
||||
Subject: [PATCH 10/11] Fix build issue with overloaded join().
|
||||
|
||||
--- a/src/openscad.cc
|
||||
+++ b/src/openscad.cc
|
||||
@@ -65,7 +65,6 @@
|
||||
#include <chrono>
|
||||
#include <boost/algorithm/string.hpp>
|
||||
#include <boost/algorithm/string/split.hpp>
|
||||
-#include <boost/algorithm/string/join.hpp>
|
||||
#include <boost/range/adaptor/transformed.hpp>
|
||||
#include <boost/program_options.hpp>
|
||||
#include <boost/filesystem.hpp>
|
||||
@@ -307,7 +306,7 @@ void set_render_color_scheme(const std::string color_scheme, const bool exit_if_
|
||||
}
|
||||
|
||||
if (exit_if_not_found) {
|
||||
- LOG(message_group::None,Location::NONE,"",(boost::join(ColorMap::inst()->colorSchemeNames(), "\n")));
|
||||
+ LOG(message_group::None,Location::NONE,"",(boost::algorithm::join(ColorMap::inst()->colorSchemeNames(), "\n")));
|
||||
|
||||
exit(1);
|
||||
} else {
|
||||
@@ -885,7 +884,7 @@ struct CommaSeparatedVector
|
||||
};
|
||||
|
||||
template <class Seq, typename ToString>
|
||||
-std::string join(const Seq &seq, const std::string &sep, const ToString &toString)
|
||||
+std::string str_join(const Seq &seq, const std::string &sep, const ToString &toString)
|
||||
{
|
||||
return boost::algorithm::join(boost::adaptors::transform(seq, toString), sep);
|
||||
}
|
||||
@@ -947,7 +946,7 @@ int main(int argc, char **argv)
|
||||
("P,P", po::value<string>(), "customizer parameter set")
|
||||
#ifdef ENABLE_EXPERIMENTAL
|
||||
("enable", po::value<vector<string>>(), ("enable experimental features: " +
|
||||
- join(boost::make_iterator_range(Feature::begin(), Feature::end()), " | ",
|
||||
+ str_join(boost::make_iterator_range(Feature::begin(), Feature::end()), " | ",
|
||||
[](const Feature *feature) {
|
||||
return feature->get_name();
|
||||
}) +
|
||||
@@ -964,11 +963,11 @@ int main(int argc, char **argv)
|
||||
("render", po::value<string>()->implicit_value(""), "for full geometry evaluation when exporting png")
|
||||
("preview", po::value<string>()->implicit_value(""), "[=throwntogether] -for ThrownTogether preview png")
|
||||
("animate", po::value<unsigned>(), "export N animated frames")
|
||||
- ("view", po::value<CommaSeparatedVector>(), ("=view options: " + boost::join(viewOptions.names(), " | ")).c_str())
|
||||
+ ("view", po::value<CommaSeparatedVector>(), ("=view options: " + boost::algorithm::join(viewOptions.names(), " | ")).c_str())
|
||||
("projection", po::value<string>(), "=(o)rtho or (p)erspective when exporting png")
|
||||
("csglimit", po::value<unsigned int>(), "=n -stop rendering at n CSG elements when exporting png")
|
||||
("colorscheme", po::value<string>(), ("=colorscheme: " +
|
||||
- join(ColorMap::inst()->colorSchemeNames(), " | ",
|
||||
+ str_join(ColorMap::inst()->colorSchemeNames(), " | ",
|
||||
[](const std::string& colorScheme) {
|
||||
return (colorScheme == ColorMap::inst()->defaultColorSchemeName() ? "*" : "") + colorScheme;
|
||||
}) +
|
||||
--
|
||||
2.35.1
|
||||
|
||||
+20
@@ -0,0 +1,20 @@
|
||||
From https://github.com/openscad/openscad/commit/45a5e3bdd6c8071cb50b9c3f2b14a62554aafc4a Mon Sep 17 00:00:00 2001
|
||||
From: Torsten Paul <Torsten.Paul@gmx.de>
|
||||
Date: Thu, 14 Apr 2022 16:07:04 +0200
|
||||
Subject: [PATCH 11/11] Remove double quoting of the output file parameter for
|
||||
ghostscript.
|
||||
|
||||
--- a/tests/export_pngtest.py
|
||||
+++ b/tests/export_pngtest.py
|
||||
@@ -82,7 +82,7 @@ result = subprocess.call(export_cmd, env = fontenv)
|
||||
if result != 0:
|
||||
failquit('OpenSCAD failed with return code ' + str(result))
|
||||
|
||||
-convert_cmd = gs_cmd + ["-sOutputFile=\"" + pngfile + "\"", exportfile]
|
||||
+convert_cmd = gs_cmd + ["-sOutputFile=" + pngfile, exportfile]
|
||||
print('Running Converter:', ' '.join(convert_cmd), file=sys.stderr)
|
||||
result = subprocess.call(convert_cmd)
|
||||
if result != 0:
|
||||
--
|
||||
2.35.1
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
diff '--color=auto' -ur openscad-2021.01-orig/src/FileModule.cc openscad-2021.01/src/FileModule.cc
|
||||
--- openscad-2021.01-orig/src/FileModule.cc 2021-01-31 21:17:41.000000000 +0100
|
||||
+++ openscad-2021.01/src/FileModule.cc 2024-05-20 07:50:31.746487490 +0200
|
||||
@@ -65,7 +65,7 @@
|
||||
auto ext = fs::path(path).extension().generic_string();
|
||||
|
||||
if (boost::iequals(ext, ".otf") || boost::iequals(ext, ".ttf")) {
|
||||
- if (fs::is_regular(path)) {
|
||||
+ if (fs::is_regular_file(path)) {
|
||||
FontCache::instance()->register_font_file(path);
|
||||
} else {
|
||||
LOG(message_group::Error,Location::NONE,"","Can't read font with path '%1$s'",path);
|
||||
@@ -0,0 +1,14 @@
|
||||
diff '--color=auto' -ur openscad-2021.01.orig/c++std.pri openscad-2021.01/c++std.pri
|
||||
--- openscad-2021.01.orig/c++std.pri 2021-01-31 21:17:41.000000000 +0100
|
||||
+++ openscad-2021.01/c++std.pri 2024-11-05 11:27:55.002178949 +0100
|
||||
@@ -26,8 +26,8 @@
|
||||
}
|
||||
|
||||
c++std {
|
||||
- CONFIG += c++14 strict_c++
|
||||
- message("Using C++14")
|
||||
+ CONFIG += c++17 strict_c++
|
||||
+ message("Using C++17")
|
||||
|
||||
*clang*: {
|
||||
# 3rd party libraries will probably violate this for a long time
|
||||
@@ -0,0 +1,119 @@
|
||||
# Copyright 1999-2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit elisp-common flag-o-matic qmake-utils xdg
|
||||
|
||||
SITEFILE="50${PN}-gentoo.el"
|
||||
|
||||
DESCRIPTION="The Programmers Solid 3D CAD Modeller"
|
||||
HOMEPAGE="https://openscad.org/"
|
||||
SRC_URI="https://github.com/${PN}/${PN}/releases/download/${P}/${P}.src.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~arm64 ~ppc64 ~x86"
|
||||
IUSE="emacs"
|
||||
# tests are not fully working and need cmake which isn't yet
|
||||
# officially supported.
|
||||
RESTRICT="test"
|
||||
|
||||
RDEPEND="
|
||||
dev-cpp/eigen:3
|
||||
dev-libs/boost:=
|
||||
dev-libs/double-conversion:=
|
||||
dev-libs/glib:2
|
||||
dev-libs/gmp:0=
|
||||
dev-libs/hidapi
|
||||
dev-libs/libspnav
|
||||
dev-libs/libxml2
|
||||
dev-libs/libzip:=
|
||||
dev-libs/mpfr:0=
|
||||
dev-qt/qtconcurrent:5
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtdbus:5
|
||||
dev-qt/qtgui:5[-gles2-only]
|
||||
dev-qt/qtmultimedia:5
|
||||
dev-qt/qtnetwork:5
|
||||
dev-qt/qtopengl:5
|
||||
dev-qt/qtwidgets:5
|
||||
media-gfx/opencsg:=
|
||||
media-libs/fontconfig
|
||||
media-libs/freetype
|
||||
>=media-libs/glew-2.0.0:0=
|
||||
media-libs/harfbuzz:=
|
||||
media-libs/lib3mf
|
||||
sci-mathematics/cgal:=
|
||||
x11-libs/cairo
|
||||
>=x11-libs/qscintilla-2.10.3:=[qt5(+)]
|
||||
emacs? ( >=app-editors/emacs-23.1:* )
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
BDEPEND="
|
||||
dev-util/itstool
|
||||
app-alternatives/yacc
|
||||
app-alternatives/lex
|
||||
sys-devel/gettext
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${P}-0001-Gentoo-specific-Disable-ccache-building.patch
|
||||
"${FILESDIR}"/${P}-0002-fix-to-find-lib3mf-2.patch
|
||||
"${FILESDIR}"/${P}-CVE-2022-0496-Out-of-bounds-memory-access-in-DXF-loa.patch
|
||||
"${FILESDIR}"/${P}-CVE-2022-0497-Out-of-bounds-memory-access-in-comment.patch
|
||||
"${FILESDIR}"/${P}-Fix-build-failure-with-generic_print_polyhedron-on-C.patch
|
||||
"${FILESDIR}"/${P}-CGAL-build-fix-v5.4-renames-projection-traits-header.patch
|
||||
"${FILESDIR}"/${P}-Fix-build-issue-with-overloaded-join.patch
|
||||
"${FILESDIR}"/${P}-Remove-double-quoting-of-the-output-file-parameter-f.patch
|
||||
"${FILESDIR}"/${P}-boost-1.85.patch
|
||||
"${FILESDIR}"/${P}-fix-cstd.patch
|
||||
)
|
||||
|
||||
src_configure() {
|
||||
# -Werror=odr
|
||||
# https://github.com/openscad/openscad/issues/5239
|
||||
filter-lto
|
||||
|
||||
if has ccache ${FEATURES}; then
|
||||
eqmake5 "PREFIX = ${ESYSROOT}/usr" "CONFIG += ccache" "${PN}.pro"
|
||||
else
|
||||
eqmake5 "PREFIX = ${ESYSROOT}/usr" "${PN}.pro"
|
||||
fi
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# We have random parallel build issues, bug #856430
|
||||
emake -j1
|
||||
|
||||
if use emacs ; then
|
||||
elisp-compile contrib/*.el
|
||||
fi
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake install INSTALL_ROOT="${D}"
|
||||
|
||||
if use emacs; then
|
||||
elisp-site-file-install "${FILESDIR}/${SITEFILE}"
|
||||
elisp-install ${PN} contrib/*.el contrib/*.elc
|
||||
fi
|
||||
|
||||
mv -i "${ED}"/usr/share/openscad/locale "${ED}"/usr/share || die "failed to move locales"
|
||||
ln -sf ../locale "${ED}"/usr/share/openscad/locale || die
|
||||
|
||||
einstalldocs
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
use emacs && elisp-site-regen
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
use emacs && elisp-site-regen
|
||||
xdg_desktop_database_update
|
||||
xdg_mimeinfo_database_update
|
||||
}
|
||||
Reference in New Issue
Block a user