Files
macports-ports/www/tenfourfox/files/patch-ots-stdlog-fix.diff

54 lines
2.5 KiB
Diff

the math headers on 10.5 don't define all the c++11
features, so gcc versions < 7 don't import any of them.
This is fixed in gcc7+. In older versions, one fix is to
just use the Apple standard functions, in this case log2
---
gfx/ots/src/silf.cc | 6 +++---
gfx/ots/src/sill.cc | 2 +-
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/gfx/ots/src/silf.cc b/gfx/ots/src/silf.cc
index 56970427b..4e696bf7c 100644
--- a/gfx/ots/src/silf.cc
+++ b/gfx/ots/src/silf.cc
@@ -298,7 +298,7 @@ bool OpenTypeSILF::SILSub::ParsePart(Buffer& table) {
this->searchPseudo = this->pseudoSelector = this->pseudoShift = 0;
}
} else {
- unsigned floorLog2 = std::floor(std::log2(this->numPseudo));
+ unsigned floorLog2 = std::floor(log2(this->numPseudo));
if (this->searchPseudo != 6 * (unsigned)std::pow(2, floorLog2) ||
this->pseudoSelector != floorLog2 ||
this->pseudoShift != 6 * this->numPseudo - this->searchPseudo) {
@@ -565,7 +565,7 @@ LookupClass::ParsePart(Buffer& table) {
this->searchRange = this->entrySelector = this->rangeShift = 0;
}
} else {
- unsigned floorLog2 = std::floor(std::log2(this->numIDs));
+ unsigned floorLog2 = std::floor(log2(this->numIDs));
if (this->searchRange != (unsigned)std::pow(2, floorLog2) ||
this->entrySelector != floorLog2 ||
this->rangeShift != this->numIDs - this->searchRange) {
@@ -694,7 +694,7 @@ SILPass::ParsePart(Buffer& table, const size_t SILSub_init_offset,
this->searchRange = this->entrySelector = this->rangeShift = 0;
}
} else {
- unsigned floorLog2 = std::floor(std::log2(this->numRange));
+ unsigned floorLog2 = std::floor(log2(this->numRange));
if (this->searchRange != 6 * (unsigned)std::pow(2, floorLog2) ||
this->entrySelector != floorLog2 ||
this->rangeShift != 6 * this->numRange - this->searchRange) {
diff --git a/gfx/ots/src/sill.cc b/gfx/ots/src/sill.cc
index c7b20a980..cd5cf6803 100644
--- a/gfx/ots/src/sill.cc
+++ b/gfx/ots/src/sill.cc
@@ -35,7 +35,7 @@ bool OpenTypeSILL::Parse(const uint8_t* data, size_t length) {
this->searchRange = this->entrySelector = this->rangeShift = 0;
}
} else {
- unsigned floorLog2 = std::floor(std::log2(this->numLangs));
+ unsigned floorLog2 = std::floor(log2(this->numLangs));
if (this->searchRange != (unsigned)std::pow(2, floorLog2) ||
this->entrySelector != floorLog2 ||
this->rangeShift != this->numLangs - this->searchRange) {