mirror of
git://git.openembedded.org/meta-openembedded
synced 2026-01-01 13:58:06 +00:00
python3-matplotlib: Fix build with c++17
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
parent
1f56bcddaf
commit
175682f0df
|
|
@ -0,0 +1,59 @@
|
|||
From 3eb9987b02cc10b93e09219ddc86aa6be5f10177 Mon Sep 17 00:00:00 2001
|
||||
From: tybeller <ty.c.beller@gmail.com>
|
||||
Date: Fri, 30 Sep 2022 16:13:41 -0400
|
||||
Subject: [PATCH] removed RandomNumberGenerator class, included <random>,
|
||||
replaced random_shuffle with shuffle and used mersenne twister engine to
|
||||
generate uniform random bit generator for the shuffle.
|
||||
|
||||
Upstream-Status: Backport [https://github.com/matplotlib/matplotlib/commit/601d92a8850]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
src/tri/_tri.cpp | 20 ++++----------------
|
||||
1 file changed, 4 insertions(+), 16 deletions(-)
|
||||
|
||||
diff --git a/src/tri/_tri.cpp b/src/tri/_tri.cpp
|
||||
index b7a87783de..6e639eea44 100644
|
||||
--- a/src/tri/_tri.cpp
|
||||
+++ b/src/tri/_tri.cpp
|
||||
@@ -12,6 +12,7 @@
|
||||
|
||||
#include <algorithm>
|
||||
#include <set>
|
||||
+#include <random>
|
||||
|
||||
|
||||
TriEdge::TriEdge()
|
||||
@@ -1465,8 +1466,8 @@ TrapezoidMapTriFinder::initialize()
|
||||
_tree->assert_valid(false);
|
||||
|
||||
// Randomly shuffle all edges other than first 2.
|
||||
- RandomNumberGenerator rng(1234);
|
||||
- std::random_shuffle(_edges.begin()+2, _edges.end(), rng);
|
||||
+ std::mt19937 rng(1234);
|
||||
+ std::shuffle(_edges.begin()+2, _edges.end(), rng);
|
||||
|
||||
// Add edges, one at a time, to tree.
|
||||
size_t nedges = _edges.size();
|
||||
@@ -2055,17 +2056,4 @@ TrapezoidMapTriFinder::Trapezoid::set_upper_right(Trapezoid* upper_right_)
|
||||
upper_right = upper_right_;
|
||||
if (upper_right != 0)
|
||||
upper_right->upper_left = this;
|
||||
-}
|
||||
-
|
||||
-
|
||||
-
|
||||
-RandomNumberGenerator::RandomNumberGenerator(unsigned long seed)
|
||||
- : _m(21870), _a(1291), _c(4621), _seed(seed % _m)
|
||||
-{}
|
||||
-
|
||||
-unsigned long
|
||||
-RandomNumberGenerator::operator()(unsigned long max_value)
|
||||
-{
|
||||
- _seed = (_seed*_a + _c) % _m;
|
||||
- return (_seed*max_value) / _m;
|
||||
-}
|
||||
+}
|
||||
\ No newline at end of file
|
||||
--
|
||||
2.39.0
|
||||
|
||||
|
|
@ -27,7 +27,8 @@ inherit pypi setuptools3 pkgconfig
|
|||
|
||||
# Stop the component from attempting to download when it detects a missing
|
||||
# dependency
|
||||
SRC_URI += "file://matplotlib-disable-download.patch"
|
||||
SRC_URI += "file://matplotlib-disable-download.patch \
|
||||
file://0001-removed-RandomNumberGenerator-class-included-random-.patch"
|
||||
|
||||
# This python module requires a full copy of freetype-2.6.1
|
||||
SRC_URI += "https://downloads.sourceforge.net/project/freetype/freetype2/2.6.1/freetype-2.6.1.tar.gz;name=freetype;subdir=matplotlib-${PV}/build"
|
||||
|
|
@ -40,6 +41,8 @@ SRC_URI[qhull.sha256sum] = "b5c2d7eb833278881b952c8a52d20179eab87766b00b86500046
|
|||
# LTO with clang needs lld
|
||||
LDFLAGS:append:toolchain-clang = " -fuse-ld=lld"
|
||||
LDFLAGS:remove:toolchain-clang:mips = "-fuse-ld=lld"
|
||||
LDFLAGS:remove:toolchain-clang:riscv64 = "-fuse-ld=lld"
|
||||
LDFLAGS:remove:toolchain-clang:riscv32 = "-fuse-ld=lld"
|
||||
RDEPENDS:${PN} = "\
|
||||
freetype \
|
||||
libpng \
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user