mpfr: Update to version 4.2.0

Message ID 20230108214053.3637413-3-adolf.belka@ipfire.org
State Accepted
Commit 3d0cdaea875a4c3f76d2aa0ad38fa998e86b3e12
Headers
Series mpfr: Update to version 4.2.0 |

Commit Message

Adolf Belka Jan. 8, 2023, 9:40 p.m. UTC
  - Update from version 4.1.1 to 4.2.0
- Update of rootfile
- Changelog
    Changes from versions 4.1.1 to version 4.2.0
	    Binary compatible with MPFR 4.0.* and 4.1.*, though some minor changes in
             the behavior of the formatted output functions may be visible, regarded as
             underspecified behavior or bug fixes (see below).
	    New functions mpfr_cosu, mpfr_sinu, mpfr_tanu, mpfr_acosu, mpfr_asinu,
             mpfr_atanu and mpfr_atan2u.
	    New functions mpfr_cospi, mpfr_sinpi, mpfr_tanpi, mpfr_acospi, mpfr_asinpi,
             mpfr_atanpi and mpfr_atan2pi.
	    New functions mpfr_log2p1, mpfr_log10p1, mpfr_exp2m1, mpfr_exp10m1 and
             mpfr_compound_si.
	    New functions mpfr_fmod_ui, mpfr_powr, mpfr_pown, mpfr_pow_uj, mpfr_pow_sj
             and mpfr_rootn_si (mpfr_pown is actually a macro defined as an alias for
             mpfr_pow_sj).
	    Bug fixes.
	        In particular, for the formatted output functions (mpfr_printf, etc.),
                 the case where the precision consists only of a period has been fixed
                 to be like .0 as specified in the ISO C standard, and the manual has
                 been corrected and clarified.
	        The macros of the custom interface have also been fixed: they now behave
                 like functions (except a minor limitation for mpfr_custom_init_set).

Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
---
 config/rootfiles/common/mpfr                  |  2 +-
 lfs/mpfr                                      |  9 +-
 ...mpfr-4.1.1-cumulative-patches-1-to-1.patch | 83 -------------------
 3 files changed, 6 insertions(+), 88 deletions(-)
 delete mode 100644 src/patches/mpfr-4.1.1-cumulative-patches-1-to-1.patch
  

Comments

Peter Müller Jan. 9, 2023, 6:42 p.m. UTC | #1
Reviewed-by: Peter Müller <peter.mueller@ipfire.org>

> - Update from version 4.1.1 to 4.2.0
> - Update of rootfile
> - Changelog
>     Changes from versions 4.1.1 to version 4.2.0
> 	    Binary compatible with MPFR 4.0.* and 4.1.*, though some minor changes in
>              the behavior of the formatted output functions may be visible, regarded as
>              underspecified behavior or bug fixes (see below).
> 	    New functions mpfr_cosu, mpfr_sinu, mpfr_tanu, mpfr_acosu, mpfr_asinu,
>              mpfr_atanu and mpfr_atan2u.
> 	    New functions mpfr_cospi, mpfr_sinpi, mpfr_tanpi, mpfr_acospi, mpfr_asinpi,
>              mpfr_atanpi and mpfr_atan2pi.
> 	    New functions mpfr_log2p1, mpfr_log10p1, mpfr_exp2m1, mpfr_exp10m1 and
>              mpfr_compound_si.
> 	    New functions mpfr_fmod_ui, mpfr_powr, mpfr_pown, mpfr_pow_uj, mpfr_pow_sj
>              and mpfr_rootn_si (mpfr_pown is actually a macro defined as an alias for
>              mpfr_pow_sj).
> 	    Bug fixes.
> 	        In particular, for the formatted output functions (mpfr_printf, etc.),
>                  the case where the precision consists only of a period has been fixed
>                  to be like .0 as specified in the ISO C standard, and the manual has
>                  been corrected and clarified.
> 	        The macros of the custom interface have also been fixed: they now behave
>                  like functions (except a minor limitation for mpfr_custom_init_set).
> 
> Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
> ---
>  config/rootfiles/common/mpfr                  |  2 +-
>  lfs/mpfr                                      |  9 +-
>  ...mpfr-4.1.1-cumulative-patches-1-to-1.patch | 83 -------------------
>  3 files changed, 6 insertions(+), 88 deletions(-)
>  delete mode 100644 src/patches/mpfr-4.1.1-cumulative-patches-1-to-1.patch
> 
> diff --git a/config/rootfiles/common/mpfr b/config/rootfiles/common/mpfr
> index 2b2a04257..84711be39 100644
> --- a/config/rootfiles/common/mpfr
> +++ b/config/rootfiles/common/mpfr
> @@ -4,7 +4,7 @@
>  #usr/lib/libmpfr.la
>  #usr/lib/libmpfr.so
>  usr/lib/libmpfr.so.6
> -usr/lib/libmpfr.so.6.1.1
> +usr/lib/libmpfr.so.6.2.0
>  #usr/lib/pkgconfig/mpfr.pc
>  #usr/share/doc/mpfr
>  #usr/share/doc/mpfr/AUTHORS
> diff --git a/lfs/mpfr b/lfs/mpfr
> index f0c0109b2..818566390 100644
> --- a/lfs/mpfr
> +++ b/lfs/mpfr
> @@ -1,7 +1,7 @@
>  ###############################################################################
>  #                                                                             #
>  # IPFire.org - A linux based firewall                                         #
> -# Copyright (C) 2007-2022  IPFire Team  <info@ipfire.org>                     #
> +# Copyright (C) 2007-2023  IPFire Team  <info@ipfire.org>                     #
>  #                                                                             #
>  # This program is free software: you can redistribute it and/or modify        #
>  # it under the terms of the GNU General Public License as published by        #
> @@ -24,7 +24,7 @@
>  
>  include Config
>  
> -VER        = 4.1.1
> +VER        = 4.2.0
>  
>  THISAPP    = mpfr-$(VER)
>  DL_FILE    = $(THISAPP).tar.xz
> @@ -40,7 +40,7 @@ objects = $(DL_FILE)
>  
>  $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
>  
> -$(DL_FILE)_BLAKE2 = ce20baee2f060acb28b877ffe6fc40c5619cf6af231bd54ca6cfb3e42ef2d74a4ffbab96cf0b5dd6a162e558099a54701d42f34f5bf2256f256fe6f5ae2505d0
> +$(DL_FILE)_BLAKE2 = dd88ae3a6a910ad8faeb791b49c3b1085de5d0d4c49c637c124bf4d9bc79fb621d0d1d69e07d0642b9b678f6d355a5830d083dfd189e1e91d0e04c970c10bd64
>  
>  install : $(TARGET)
>  
> @@ -70,7 +70,8 @@ $(subst %,%_BLAKE2,$(objects)) :
>  $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
>  	@$(PREBUILD)
>  	@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
> -	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/mpfr-4.1.1-cumulative-patches-1-to-1.patch
> +# No patches yet for version 4.2.0
> +#	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/mpfr-4.1.1-cumulative-patches-1-to-1.patch
>  	cd $(DIR_APP) && $(CONFIGURE_ARGS) ./configure --prefix=/usr \
>  		--enable-thread-safe
>  	cd $(DIR_APP) && make $(MAKETUNING)
> diff --git a/src/patches/mpfr-4.1.1-cumulative-patches-1-to-1.patch b/src/patches/mpfr-4.1.1-cumulative-patches-1-to-1.patch
> deleted file mode 100644
> index 0566c80b3..000000000
> --- a/src/patches/mpfr-4.1.1-cumulative-patches-1-to-1.patch
> +++ /dev/null
> @@ -1,83 +0,0 @@
> -diff -Naurd mpfr-4.1.1-a/PATCHES mpfr-4.1.1-b/PATCHES
> ---- mpfr-4.1.1-a/PATCHES	2022-11-23 11:45:26.800476079 +0000
> -+++ mpfr-4.1.1-b/PATCHES	2022-11-23 11:45:26.844475966 +0000
> -@@ -0,0 +1 @@
> -+mpfr_custom_get_kind
> -diff -Naurd mpfr-4.1.1-a/VERSION mpfr-4.1.1-b/VERSION
> ---- mpfr-4.1.1-a/VERSION	2022-11-17 13:28:44.000000000 +0000
> -+++ mpfr-4.1.1-b/VERSION	2022-11-23 11:45:26.844475966 +0000
> -@@ -1 +1 @@
> --4.1.1
> -+4.1.1-p1
> -diff -Naurd mpfr-4.1.1-a/src/mpfr.h mpfr-4.1.1-b/src/mpfr.h
> ---- mpfr-4.1.1-a/src/mpfr.h	2022-11-17 13:28:44.000000000 +0000
> -+++ mpfr-4.1.1-b/src/mpfr.h	2022-11-23 11:45:26.840475978 +0000
> -@@ -27,7 +27,7 @@
> - #define MPFR_VERSION_MAJOR 4
> - #define MPFR_VERSION_MINOR 1
> - #define MPFR_VERSION_PATCHLEVEL 1
> --#define MPFR_VERSION_STRING "4.1.1"
> -+#define MPFR_VERSION_STRING "4.1.1-p1"
> - 
> - /* User macros:
> -    MPFR_USE_FILE:        Define it to make MPFR define functions dealing
> -@@ -1027,7 +1027,7 @@
> - #if __GNUC__ > 2 || __GNUC_MINOR__ >= 95
> - #define mpfr_custom_get_kind(x)                                         \
> -   __extension__ ({                                                      \
> --    mpfr_ptr _x = (x);                                                  \
> -+    mpfr_srcptr _x = (x);                                               \
> -     _x->_mpfr_exp >  __MPFR_EXP_INF ?                                   \
> -       (mpfr_int) MPFR_REGULAR_KIND * MPFR_SIGN (_x)                     \
> -       : _x->_mpfr_exp == __MPFR_EXP_INF ?                               \
> -diff -Naurd mpfr-4.1.1-a/src/version.c mpfr-4.1.1-b/src/version.c
> ---- mpfr-4.1.1-a/src/version.c	2022-11-17 13:28:44.000000000 +0000
> -+++ mpfr-4.1.1-b/src/version.c	2022-11-23 11:45:26.844475966 +0000
> -@@ -25,5 +25,5 @@
> - const char *
> - mpfr_get_version (void)
> - {
> --  return "4.1.1";
> -+  return "4.1.1-p1";
> - }
> -diff -Naurd mpfr-4.1.1-a/tests/tstckintc.c mpfr-4.1.1-b/tests/tstckintc.c
> ---- mpfr-4.1.1-a/tests/tstckintc.c	2022-05-06 13:47:17.000000000 +0000
> -+++ mpfr-4.1.1-b/tests/tstckintc.c	2022-11-23 11:45:26.836475987 +0000
> -@@ -295,14 +295,16 @@
> - test_nan_inf_zero (void)
> - {
> -   mpfr_ptr val;
> -+  mpfr_srcptr sval;  /* for compilation error checking */
> -   int sign;
> -   int kind;
> - 
> -   reset_stack ();
> - 
> -   val = new_mpfr (MPFR_PREC_MIN);
> -+  sval = val;
> -   mpfr_set_nan (val);
> --  kind = (mpfr_custom_get_kind) (val);
> -+  kind = (mpfr_custom_get_kind) (sval);
> -   if (kind != MPFR_NAN_KIND)
> -     {
> -       printf ("mpfr_custom_get_kind error: ");
> -@@ -380,7 +382,8 @@
> - dummy_set_si (long si)
> - {
> -   mpfr_t x;
> --  long * r = dummy_new ();
> -+  mpfr_srcptr px;  /* for compilation error checking */
> -+  long *r = dummy_new ();
> -   int i1, i2, i3, i4, i5;
> - 
> -   /* Check that the type "void *" can be used, like with the function.
> -@@ -405,7 +408,8 @@
> -   MPFR_ASSERTN (i5 == 1);
> - 
> -   mpfr_set_si (x, si, MPFR_RNDN);
> --  r[0] = mpfr_custom_get_kind (x);
> -+  px = x;
> -+  r[0] = mpfr_custom_get_kind (px);
> - 
> -   /* Check that the type "void *" can be used in C, like with the function
> -      (forbidden in C++). Also check side effects. */
  

Patch

diff --git a/config/rootfiles/common/mpfr b/config/rootfiles/common/mpfr
index 2b2a04257..84711be39 100644
--- a/config/rootfiles/common/mpfr
+++ b/config/rootfiles/common/mpfr
@@ -4,7 +4,7 @@ 
 #usr/lib/libmpfr.la
 #usr/lib/libmpfr.so
 usr/lib/libmpfr.so.6
-usr/lib/libmpfr.so.6.1.1
+usr/lib/libmpfr.so.6.2.0
 #usr/lib/pkgconfig/mpfr.pc
 #usr/share/doc/mpfr
 #usr/share/doc/mpfr/AUTHORS
diff --git a/lfs/mpfr b/lfs/mpfr
index f0c0109b2..818566390 100644
--- a/lfs/mpfr
+++ b/lfs/mpfr
@@ -1,7 +1,7 @@ 
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2022  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2007-2023  IPFire Team  <info@ipfire.org>                     #
 #                                                                             #
 # This program is free software: you can redistribute it and/or modify        #
 # it under the terms of the GNU General Public License as published by        #
@@ -24,7 +24,7 @@ 
 
 include Config
 
-VER        = 4.1.1
+VER        = 4.2.0
 
 THISAPP    = mpfr-$(VER)
 DL_FILE    = $(THISAPP).tar.xz
@@ -40,7 +40,7 @@  objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_BLAKE2 = ce20baee2f060acb28b877ffe6fc40c5619cf6af231bd54ca6cfb3e42ef2d74a4ffbab96cf0b5dd6a162e558099a54701d42f34f5bf2256f256fe6f5ae2505d0
+$(DL_FILE)_BLAKE2 = dd88ae3a6a910ad8faeb791b49c3b1085de5d0d4c49c637c124bf4d9bc79fb621d0d1d69e07d0642b9b678f6d355a5830d083dfd189e1e91d0e04c970c10bd64
 
 install : $(TARGET)
 
@@ -70,7 +70,8 @@  $(subst %,%_BLAKE2,$(objects)) :
 $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
 	@$(PREBUILD)
 	@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
-	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/mpfr-4.1.1-cumulative-patches-1-to-1.patch
+# No patches yet for version 4.2.0
+#	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/mpfr-4.1.1-cumulative-patches-1-to-1.patch
 	cd $(DIR_APP) && $(CONFIGURE_ARGS) ./configure --prefix=/usr \
 		--enable-thread-safe
 	cd $(DIR_APP) && make $(MAKETUNING)
diff --git a/src/patches/mpfr-4.1.1-cumulative-patches-1-to-1.patch b/src/patches/mpfr-4.1.1-cumulative-patches-1-to-1.patch
deleted file mode 100644
index 0566c80b3..000000000
--- a/src/patches/mpfr-4.1.1-cumulative-patches-1-to-1.patch
+++ /dev/null
@@ -1,83 +0,0 @@ 
-diff -Naurd mpfr-4.1.1-a/PATCHES mpfr-4.1.1-b/PATCHES
---- mpfr-4.1.1-a/PATCHES	2022-11-23 11:45:26.800476079 +0000
-+++ mpfr-4.1.1-b/PATCHES	2022-11-23 11:45:26.844475966 +0000
-@@ -0,0 +1 @@
-+mpfr_custom_get_kind
-diff -Naurd mpfr-4.1.1-a/VERSION mpfr-4.1.1-b/VERSION
---- mpfr-4.1.1-a/VERSION	2022-11-17 13:28:44.000000000 +0000
-+++ mpfr-4.1.1-b/VERSION	2022-11-23 11:45:26.844475966 +0000
-@@ -1 +1 @@
--4.1.1
-+4.1.1-p1
-diff -Naurd mpfr-4.1.1-a/src/mpfr.h mpfr-4.1.1-b/src/mpfr.h
---- mpfr-4.1.1-a/src/mpfr.h	2022-11-17 13:28:44.000000000 +0000
-+++ mpfr-4.1.1-b/src/mpfr.h	2022-11-23 11:45:26.840475978 +0000
-@@ -27,7 +27,7 @@
- #define MPFR_VERSION_MAJOR 4
- #define MPFR_VERSION_MINOR 1
- #define MPFR_VERSION_PATCHLEVEL 1
--#define MPFR_VERSION_STRING "4.1.1"
-+#define MPFR_VERSION_STRING "4.1.1-p1"
- 
- /* User macros:
-    MPFR_USE_FILE:        Define it to make MPFR define functions dealing
-@@ -1027,7 +1027,7 @@
- #if __GNUC__ > 2 || __GNUC_MINOR__ >= 95
- #define mpfr_custom_get_kind(x)                                         \
-   __extension__ ({                                                      \
--    mpfr_ptr _x = (x);                                                  \
-+    mpfr_srcptr _x = (x);                                               \
-     _x->_mpfr_exp >  __MPFR_EXP_INF ?                                   \
-       (mpfr_int) MPFR_REGULAR_KIND * MPFR_SIGN (_x)                     \
-       : _x->_mpfr_exp == __MPFR_EXP_INF ?                               \
-diff -Naurd mpfr-4.1.1-a/src/version.c mpfr-4.1.1-b/src/version.c
---- mpfr-4.1.1-a/src/version.c	2022-11-17 13:28:44.000000000 +0000
-+++ mpfr-4.1.1-b/src/version.c	2022-11-23 11:45:26.844475966 +0000
-@@ -25,5 +25,5 @@
- const char *
- mpfr_get_version (void)
- {
--  return "4.1.1";
-+  return "4.1.1-p1";
- }
-diff -Naurd mpfr-4.1.1-a/tests/tstckintc.c mpfr-4.1.1-b/tests/tstckintc.c
---- mpfr-4.1.1-a/tests/tstckintc.c	2022-05-06 13:47:17.000000000 +0000
-+++ mpfr-4.1.1-b/tests/tstckintc.c	2022-11-23 11:45:26.836475987 +0000
-@@ -295,14 +295,16 @@
- test_nan_inf_zero (void)
- {
-   mpfr_ptr val;
-+  mpfr_srcptr sval;  /* for compilation error checking */
-   int sign;
-   int kind;
- 
-   reset_stack ();
- 
-   val = new_mpfr (MPFR_PREC_MIN);
-+  sval = val;
-   mpfr_set_nan (val);
--  kind = (mpfr_custom_get_kind) (val);
-+  kind = (mpfr_custom_get_kind) (sval);
-   if (kind != MPFR_NAN_KIND)
-     {
-       printf ("mpfr_custom_get_kind error: ");
-@@ -380,7 +382,8 @@
- dummy_set_si (long si)
- {
-   mpfr_t x;
--  long * r = dummy_new ();
-+  mpfr_srcptr px;  /* for compilation error checking */
-+  long *r = dummy_new ();
-   int i1, i2, i3, i4, i5;
- 
-   /* Check that the type "void *" can be used, like with the function.
-@@ -405,7 +408,8 @@
-   MPFR_ASSERTN (i5 == 1);
- 
-   mpfr_set_si (x, si, MPFR_RNDN);
--  r[0] = mpfr_custom_get_kind (x);
-+  px = x;
-+  r[0] = mpfr_custom_get_kind (px);
- 
-   /* Check that the type "void *" can be used in C, like with the function
-      (forbidden in C++). Also check side effects. */