[packages/grantlee-qt5] - added x87fix.patch from https://github.com/steveire/grantlee/commit/7e34ffaff40fc085a15bb0ffabb5f2

witekfl witekfl at pld-linux.org
Sun Apr 23 18:06:55 CEST 2023


commit 652225d765aca586e15d251b1f023a1cf63ed52c
Author: Witold Filipczyk <witekfl at poczta.onet.pl>
Date:   Sun Apr 23 18:05:27 2023 +0200

    - added x87fix.patch from https://github.com/steveire/grantlee/commit/7e34ffaff40fc085a15bb0ffabb5f247795581fd

 grantlee-qt5.spec |  2 ++
 x87fix.patch      | 40 ++++++++++++++++++++++++++++++++++++++++
 2 files changed, 42 insertions(+)
---
diff --git a/grantlee-qt5.spec b/grantlee-qt5.spec
index 0ac4d87..791b8f3 100644
--- a/grantlee-qt5.spec
+++ b/grantlee-qt5.spec
@@ -13,6 +13,7 @@ License:	LGPL v2.1+
 Group:		Libraries
 Source0:	https://github.com/steveire/grantlee/releases/download/v%{version}/grantlee-%{version}.tar.gz
 # Source0-md5:	4ef8eae5dd61e3c7603d76208eb4d922
+Patch0:		x87fix.patch
 URL:		http://www.grantlee.org/
 BuildRequires:	Qt5Core-devel >= %{qt_ver}
 BuildRequires:	Qt5Gui-devel >= %{qt_ver}
@@ -59,6 +60,7 @@ Pliki nagłówkowe bibliotek grantlee.
 
 %prep
 %setup -q -n grantlee-%{version}
+%patch0 -p1
 
 %build
 install -d build
diff --git a/x87fix.patch b/x87fix.patch
new file mode 100644
index 0000000..402fe7a
--- /dev/null
+++ b/x87fix.patch
@@ -0,0 +1,40 @@
+From 7e34ffaff40fc085a15bb0ffabb5f247795581fd Mon Sep 17 00:00:00 2001
+From: Fabian Vogt <fabian at ritter-vogt.de>
+Date: Sun, 13 Nov 2022 14:01:21 +0100
+Subject: [PATCH] Fix formatting of some larger file sizes on 32bit x86
+
+With the x87 FPU available, GCC uses long double precision for some variables.
+Due to the function call passing a double, some comparisons break down.
+That resulted in "1.00 YB" being printed as "1000.00 ZB" instead.
+
+Fixes #85
+---
+ templates/lib/util.cpp | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/templates/lib/util.cpp b/templates/lib/util.cpp
+index 504674a7..5924cdf5 100644
+--- a/templates/lib/util.cpp
++++ b/templates/lib/util.cpp
+@@ -23,6 +23,7 @@
+ #include "metaenumvariable_p.h"
+ #include "metatype.h"
+ 
++#include <cfloat>
+ #include <QtCore/QStringList>
+ 
+ QString Grantlee::unescapeStringLiteral(const QString &input)
+@@ -212,7 +213,13 @@ std::pair<qreal, QString> Grantlee::calcFileSize(qreal size, int unitSystem,
+   bool found = false;
+   int count = 0;
+   const qreal baseVal = (_unitSystem == 10) ? 1000.0F : 1024.0F;
++#if FLT_EVAL_METHOD == 2
++  // Avoid that this is treated as long double, as the increased
++  // precision breaks the comparison below.
++  volatile qreal current = 1.0F;
++#else
+   qreal current = 1.0F;
++#endif
+   int units = decimalUnits.size();
+   while (!found && (count < units)) {
+     current *= baseVal;
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/grantlee-qt5.git/commitdiff/652225d765aca586e15d251b1f023a1cf63ed52c



More information about the pld-cvs-commit mailing list