mpfr: Update to 4.2.0.p12
This commit is contained in:
@@ -5,7 +5,7 @@ _realname=mpfr
|
||||
pkgbase=mingw-w64-${_realname}
|
||||
pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}")
|
||||
_pkgver=4.2.0
|
||||
pkgver=${_pkgver}.p9
|
||||
pkgver=${_pkgver}.p12
|
||||
pkgrel=1
|
||||
pkgdesc="Multiple-precision floating-point library (mingw-w64)"
|
||||
arch=('any')
|
||||
@@ -19,7 +19,7 @@ source=(https://ftp.gnu.org/gnu/mpfr/${_realname}-${_pkgver}.tar.xz{,.sig}
|
||||
patches.diff) # wget https://www.mpfr.org/mpfr-4.2.0/allpatches -O patches.diff
|
||||
sha256sums=('06a378df13501248c1b2db5aa977a2c8126ae849a9d9b7be2546fb4a9c26d993'
|
||||
'SKIP'
|
||||
'06da0b2a56e365f7e74ac241926f61d2574a0754548ff8116e9ddee0dabacda0')
|
||||
'a9099cee74188d5f522b7b3fca0097196c6dd38126f8f042d233010cbf92e8d0')
|
||||
validpgpkeys=('A534BE3F83E241D918280AEB5831D11A0D4DB02A')
|
||||
|
||||
prepare() {
|
||||
|
||||
@@ -2044,3 +2044,151 @@ diff -Naurd mpfr-4.2.0-a/tests/tsprintf.c mpfr-4.2.0-b/tests/tsprintf.c
|
||||
test_locale ();
|
||||
|
||||
if (getenv ("MPFR_CHECK_LIBC_PRINTF"))
|
||||
diff -Naurd mpfr-4.2.0-a/PATCHES mpfr-4.2.0-b/PATCHES
|
||||
--- mpfr-4.2.0-a/PATCHES 2023-07-17 13:54:11.126789510 +0000
|
||||
+++ mpfr-4.2.0-b/PATCHES 2023-07-17 13:54:11.170788387 +0000
|
||||
@@ -0,0 +1 @@
|
||||
+gcc-pr106155-workaround
|
||||
diff -Naurd mpfr-4.2.0-a/VERSION mpfr-4.2.0-b/VERSION
|
||||
--- mpfr-4.2.0-a/VERSION 2023-05-17 17:19:35.596201603 +0000
|
||||
+++ mpfr-4.2.0-b/VERSION 2023-07-17 13:54:11.170788387 +0000
|
||||
@@ -1 +1 @@
|
||||
-4.2.0-p9
|
||||
+4.2.0-p10
|
||||
diff -Naurd mpfr-4.2.0-a/src/mpfr.h mpfr-4.2.0-b/src/mpfr.h
|
||||
--- mpfr-4.2.0-a/src/mpfr.h 2023-05-17 17:19:35.592201606 +0000
|
||||
+++ mpfr-4.2.0-b/src/mpfr.h 2023-07-17 13:54:11.170788387 +0000
|
||||
@@ -27,7 +27,7 @@
|
||||
#define MPFR_VERSION_MAJOR 4
|
||||
#define MPFR_VERSION_MINOR 2
|
||||
#define MPFR_VERSION_PATCHLEVEL 0
|
||||
-#define MPFR_VERSION_STRING "4.2.0-p9"
|
||||
+#define MPFR_VERSION_STRING "4.2.0-p10"
|
||||
|
||||
/* User macros:
|
||||
MPFR_USE_FILE: Define it to make MPFR define functions dealing
|
||||
diff -Naurd mpfr-4.2.0-a/src/version.c mpfr-4.2.0-b/src/version.c
|
||||
--- mpfr-4.2.0-a/src/version.c 2023-05-17 17:19:35.592201606 +0000
|
||||
+++ mpfr-4.2.0-b/src/version.c 2023-07-17 13:54:11.170788387 +0000
|
||||
@@ -25,5 +25,5 @@
|
||||
const char *
|
||||
mpfr_get_version (void)
|
||||
{
|
||||
- return "4.2.0-p9";
|
||||
+ return "4.2.0-p10";
|
||||
}
|
||||
diff -Naurd mpfr-4.2.0-a/tests/tfpif.c mpfr-4.2.0-b/tests/tfpif.c
|
||||
--- mpfr-4.2.0-a/tests/tfpif.c 2023-01-05 17:09:48.000000000 +0000
|
||||
+++ mpfr-4.2.0-b/tests/tfpif.c 2023-07-17 13:54:11.162788591 +0000
|
||||
@@ -277,7 +277,10 @@
|
||||
|
||||
for (i = 0; i < BAD; i++)
|
||||
{
|
||||
- mpfr_exp_t emax;
|
||||
+ mpfr_exp_t INITIALIZED(emax);
|
||||
+ /* The INITIALIZED() is a workaround for GCC bug 106155:
|
||||
+ https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106155 */
|
||||
+
|
||||
/* For i == 6, mpfr_prec_t needs at least a 65-bit precision
|
||||
(64 value bits + 1 sign bit) to avoid a failure. */
|
||||
if (i == 6 && MPFR_PREC_BITS > 64)
|
||||
diff -Naurd mpfr-4.2.0-a/PATCHES mpfr-4.2.0-b/PATCHES
|
||||
--- mpfr-4.2.0-a/PATCHES 2023-07-17 13:56:17.375566485 +0000
|
||||
+++ mpfr-4.2.0-b/PATCHES 2023-07-17 13:56:17.415565464 +0000
|
||||
@@ -0,0 +1 @@
|
||||
+inp_str-nullchar
|
||||
diff -Naurd mpfr-4.2.0-a/VERSION mpfr-4.2.0-b/VERSION
|
||||
--- mpfr-4.2.0-a/VERSION 2023-07-17 13:54:11.170788387 +0000
|
||||
+++ mpfr-4.2.0-b/VERSION 2023-07-17 13:56:17.415565464 +0000
|
||||
@@ -1 +1 @@
|
||||
-4.2.0-p10
|
||||
+4.2.0-p11
|
||||
diff -Naurd mpfr-4.2.0-a/src/inp_str.c mpfr-4.2.0-b/src/inp_str.c
|
||||
--- mpfr-4.2.0-a/src/inp_str.c 2023-01-05 17:09:48.000000000 +0000
|
||||
+++ mpfr-4.2.0-b/src/inp_str.c 2023-07-17 13:56:17.407565669 +0000
|
||||
@@ -69,6 +69,15 @@
|
||||
if (c == EOF || isspace (c))
|
||||
break;
|
||||
str[str_size++] = (unsigned char) c;
|
||||
+ /* If c is '\0' (while not being a whitespace character), the word will
|
||||
+ not have a valid format. But in the context of a string in memory,
|
||||
+ '\0' is a terminating null character. So, to avoid ending with a
|
||||
+ valid string format (like "1" with ignored characters after the
|
||||
+ terminating null character), we need to make sure that the string
|
||||
+ does not have a valid format; so let's start it with '*'. Note
|
||||
+ that we should read the full word, so we cannot break. */
|
||||
+ if (MPFR_UNLIKELY (c == '\0'))
|
||||
+ str[0] = '*';
|
||||
if (str_size == (size_t) -1)
|
||||
break;
|
||||
c = getc (stream);
|
||||
diff -Naurd mpfr-4.2.0-a/src/mpfr.h mpfr-4.2.0-b/src/mpfr.h
|
||||
--- mpfr-4.2.0-a/src/mpfr.h 2023-07-17 13:54:11.170788387 +0000
|
||||
+++ mpfr-4.2.0-b/src/mpfr.h 2023-07-17 13:56:17.411565566 +0000
|
||||
@@ -27,7 +27,7 @@
|
||||
#define MPFR_VERSION_MAJOR 4
|
||||
#define MPFR_VERSION_MINOR 2
|
||||
#define MPFR_VERSION_PATCHLEVEL 0
|
||||
-#define MPFR_VERSION_STRING "4.2.0-p10"
|
||||
+#define MPFR_VERSION_STRING "4.2.0-p11"
|
||||
|
||||
/* User macros:
|
||||
MPFR_USE_FILE: Define it to make MPFR define functions dealing
|
||||
diff -Naurd mpfr-4.2.0-a/src/version.c mpfr-4.2.0-b/src/version.c
|
||||
--- mpfr-4.2.0-a/src/version.c 2023-07-17 13:54:11.170788387 +0000
|
||||
+++ mpfr-4.2.0-b/src/version.c 2023-07-17 13:56:17.415565464 +0000
|
||||
@@ -25,5 +25,5 @@
|
||||
const char *
|
||||
mpfr_get_version (void)
|
||||
{
|
||||
- return "4.2.0-p10";
|
||||
+ return "4.2.0-p11";
|
||||
}
|
||||
diff -Naurd mpfr-4.2.0-a/PATCHES mpfr-4.2.0-b/PATCHES
|
||||
--- mpfr-4.2.0-a/PATCHES 2023-07-17 13:57:28.913739912 +0000
|
||||
+++ mpfr-4.2.0-b/PATCHES 2023-07-17 13:57:28.961738687 +0000
|
||||
@@ -0,0 +1 @@
|
||||
+strtofr-nullchar
|
||||
diff -Naurd mpfr-4.2.0-a/VERSION mpfr-4.2.0-b/VERSION
|
||||
--- mpfr-4.2.0-a/VERSION 2023-07-17 13:56:17.415565464 +0000
|
||||
+++ mpfr-4.2.0-b/VERSION 2023-07-17 13:57:28.961738687 +0000
|
||||
@@ -1 +1 @@
|
||||
-4.2.0-p11
|
||||
+4.2.0-p12
|
||||
diff -Naurd mpfr-4.2.0-a/src/mpfr.h mpfr-4.2.0-b/src/mpfr.h
|
||||
--- mpfr-4.2.0-a/src/mpfr.h 2023-07-17 13:56:17.411565566 +0000
|
||||
+++ mpfr-4.2.0-b/src/mpfr.h 2023-07-17 13:57:28.957738789 +0000
|
||||
@@ -27,7 +27,7 @@
|
||||
#define MPFR_VERSION_MAJOR 4
|
||||
#define MPFR_VERSION_MINOR 2
|
||||
#define MPFR_VERSION_PATCHLEVEL 0
|
||||
-#define MPFR_VERSION_STRING "4.2.0-p11"
|
||||
+#define MPFR_VERSION_STRING "4.2.0-p12"
|
||||
|
||||
/* User macros:
|
||||
MPFR_USE_FILE: Define it to make MPFR define functions dealing
|
||||
diff -Naurd mpfr-4.2.0-a/src/strtofr.c mpfr-4.2.0-b/src/strtofr.c
|
||||
--- mpfr-4.2.0-a/src/strtofr.c 2023-01-05 17:09:48.000000000 +0000
|
||||
+++ mpfr-4.2.0-b/src/strtofr.c 2023-07-17 13:57:28.949738993 +0000
|
||||
@@ -242,7 +242,10 @@
|
||||
pstr->mantissa = NULL;
|
||||
|
||||
/* Optional leading whitespace */
|
||||
- while (isspace((unsigned char) *str)) str++;
|
||||
+ /* For non-"C" locales, the ISO C standard allows isspace(0) to
|
||||
+ return true. So we need to stop explicitly on '\0'. */
|
||||
+ while (*str != '\0' && isspace ((unsigned char) *str))
|
||||
+ str++;
|
||||
|
||||
/* An optional sign `+' or `-' */
|
||||
pstr->negative = (*str == '-');
|
||||
diff -Naurd mpfr-4.2.0-a/src/version.c mpfr-4.2.0-b/src/version.c
|
||||
--- mpfr-4.2.0-a/src/version.c 2023-07-17 13:56:17.415565464 +0000
|
||||
+++ mpfr-4.2.0-b/src/version.c 2023-07-17 13:57:28.961738687 +0000
|
||||
@@ -25,5 +25,5 @@
|
||||
const char *
|
||||
mpfr_get_version (void)
|
||||
{
|
||||
- return "4.2.0-p11";
|
||||
+ return "4.2.0-p12";
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user