Skip to content

Commit

Permalink
sagemathgh-36351: gmp 6.3.0, mpc 1.3.1, mpfr 4.2.1, mpfrcx 0.…
Browse files Browse the repository at this point in the history
…6.3, `gmpy2` 2.2.0a1

    
<!-- ^^^^^
Please provide a concise, informative and self-explanatory title.
Don't put issue numbers in there, do this in the PR body below.
For example, instead of "Fixes sagemath#1234" use "Introduce new method to
calculate 1+1"
-->
<!-- Describe your changes here in detail -->

<!-- Why is this change required? What problem does it solve? -->
The unreleased 2.2.x series has work on support for Python 3.12

https://github.com/aleaxit/gmpy

The new version makes it necessary to tighten the requirements for MPC
and MPFR.
We do the version check without pkg-config as before; changing it to
pkg-config is sagemath#31348.

(The upgrade of the packages was previously done in sagemath#36775, but has now
been merged here.)

<!-- If this PR resolves an open issue, please link to it here. For
example "Fixes sagemath#12345". -->
<!-- If your change requires a documentation PR, please link it
appropriately. -->

### 📝 Checklist

<!-- Put an `x` in all the boxes that apply. -->
<!-- If your change requires a documentation PR, please link it
appropriately -->
<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
<!-- Feel free to remove irrelevant items. -->

- [x] The title is concise, informative, and self-explanatory.
- [ ] The description explains in detail what this PR is about.
- [ ] I have linked a relevant issue or discussion.
- [ ] I have created tests covering the changes.
- [ ] I have updated the documentation accordingly.

### ⌛ Dependencies

<!-- List all open PRs that this PR logically depends on
- sagemath#12345: short description why this is a dependency
- sagemath#34567: ...
-->

<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
    
URL: sagemath#36351
Reported by: Matthias Köppe
Reviewer(s):
  • Loading branch information
Release Manager committed Jan 5, 2024
2 parents 995cf54 + 4bdb76d commit 38885a6
Show file tree
Hide file tree
Showing 20 changed files with 78 additions and 27 deletions.
6 changes: 3 additions & 3 deletions build/pkgs/gmp/checksums.ini
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
tarball=gmp-VERSION.tar.xz
sha1=0578d48607ec0e272177d175fd1807c30b00fdf2
md5=0b82665c4a92fd2ade7440c13fcaa42b
cksum=1546558141
sha1=b4043dd2964ab1a858109da85c44de224384f352
md5=956dc04e864001a9c22429f761f2c283
cksum=1735788654
upstream_url=https://gmplib.org/download/gmp/gmp-VERSION.tar.xz
2 changes: 1 addition & 1 deletion build/pkgs/gmp/package-version.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
6.2.1
6.3.0
12 changes: 11 additions & 1 deletion build/pkgs/gmpy2/SPKG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,20 @@ gmpy2: Python interface to GMP/MPIR, MPFR, and MPC
Description
-----------

GMP/MPIR, MPFR, and MPC interface to Python 2.6+ and 3.x
GMP/MPIR, MPFR, and MPC interface to Python

gmpy2 is a C-coded Python extension module that supports
multiple-precision arithmetic. In addition to supporting GMP or MPIR for
multiple-precision integer and rational arithmetic, gmpy2 adds support
for the MPFR (correctly rounded real floating-point arithmetic) and MPC
(correctly rounded complex floating-point arithmetic) libraries.

License
-------

LGPL-3.0+

Upstream Contact
----------------

https://pypi.org/project/gmpy2/
6 changes: 3 additions & 3 deletions build/pkgs/gmpy2/checksums.ini
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
tarball=gmpy2-VERSION.tar.gz
sha1=8280f6c68c57dd4a2fce149162c080c1dac86eb0
md5=bb21846e99800e04d5b330b76c23ba10
cksum=3835762323
sha1=700ef438964acd286d52e973a833cd57ae9a7ad7
md5=72b93048015b28efcf92ed702014a61c
cksum=3542820546
upstream_url=https://pypi.io/packages/source/g/gmpy2/gmpy2-VERSION.tar.gz
1 change: 1 addition & 0 deletions build/pkgs/gmpy2/dependencies_check
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
pytest hypothesis cython mpmath setuptools
2 changes: 1 addition & 1 deletion build/pkgs/gmpy2/install-requires.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
gmpy2 >=2.1.0
gmpy2 ~=2.1.b999
2 changes: 1 addition & 1 deletion build/pkgs/gmpy2/package-version.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2.1.2
2.2.0a1
18 changes: 18 additions & 0 deletions build/pkgs/hypothesis/SPKG.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
hypothesis: A library for property-based testing
================================================

Description
-----------

A library for property-based testing

License
-------

MPL-2.0

Upstream Contact
----------------

https://pypi.org/project/hypothesis/

4 changes: 4 additions & 0 deletions build/pkgs/hypothesis/dependencies
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
attrs | $(PYTHON_TOOLCHAIN) $(PYTHON)

----------
All lines of this file are ignored except the first.
1 change: 1 addition & 0 deletions build/pkgs/hypothesis/requirements.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
hypothesis
1 change: 1 addition & 0 deletions build/pkgs/hypothesis/type
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
optional
7 changes: 4 additions & 3 deletions build/pkgs/mpc/checksums.ini
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
tarball=mpc-VERSION.tar.gz
sha1=b019d9e1d27ec5fb99497159d43a3164995de2d0
md5=4125404e41e482ec68282a2e687f6c73
cksum=3987925640
sha1=bac1c1fa79f5602df1e29e4684e103ad55714e02
md5=5c9bc658c9fd0f940e8e3e0f09530c62
cksum=3202795598
upstream_url=https://ftp.gnu.org/gnu/mpc/mpc-VERSION.tar.gz
1 change: 1 addition & 0 deletions build/pkgs/mpc/distros/repology.txt
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
gnumpc
libmpc
2 changes: 1 addition & 1 deletion build/pkgs/mpc/package-version.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.1.0
1.3.1
17 changes: 14 additions & 3 deletions build/pkgs/mpc/spkg-configure.m4
Original file line number Diff line number Diff line change
@@ -1,8 +1,19 @@
SAGE_SPKG_CONFIGURE([mpc], [
SAGE_SPKG_DEPCHECK([mpfr], [
AC_CHECK_HEADER(mpc.h, [], [sage_spkg_install_mpc=yes])
dnl mpc_cmp_abs appeared in MPC 1.1.0
AC_SEARCH_LIBS([mpc_cmp_abs], [mpc], [], [sage_spkg_install_mpc=yes])
dnl gmpy2 2.2 needs MPC >= 1.2.1 according https://github.com/aleaxit/gmpy/blob/master/src/gmpy2.h#L86
AC_MSG_CHECKING([for MPC >= 1.2.1])
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <mpc.h>]], [[
#if (!defined(MPC_VERSION) || (MPC_VERSION < MPC_VERSION_NUM(1,2,1)))
# error "Sage requires MPC 1.2.1 or later (for gmpy2 2.2)."
#endif
]])], [
AC_MSG_RESULT([yes])
dnl mpc_sum was added in MPC 1.2.0 according to https://www.multiprecision.org/mpc/olds.html
AC_SEARCH_LIBS([mpc_sum], [mpc], [], [sage_spkg_install_mpc=yes])
], [
AC_MSG_RESULT([no])
sage_spkg_install_mpc=yes
])
])
], [], [], [
if test x$sage_spkg_install_mpc = xyes; then
Expand Down
7 changes: 4 additions & 3 deletions build/pkgs/mpfr/checksums.ini
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
tarball=mpfr-VERSION.tar.bz2
sha1=fcbbafb37c683898e585b926608d540ed037609e
md5=8c21d8ac7460493b2b9f3ef3cc610454
cksum=3260550035
sha1=f9dbe49b092e4c8e0a039e6d46c059696cc2f51c
md5=7765afa036e4ce7fb0e02bce0fef894b
cksum=1526077734
upstream_url=https://www.mpfr.org/mpfr-current/mpfr-VERSION.tar.bz2
2 changes: 1 addition & 1 deletion build/pkgs/mpfr/package-version.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
4.0.1.p0
4.2.1
5 changes: 3 additions & 2 deletions build/pkgs/mpfr/spkg-configure.m4
Original file line number Diff line number Diff line change
@@ -1,8 +1,9 @@
SAGE_SPKG_CONFIGURE([mpfr], [
SAGE_SPKG_DEPCHECK([gmp], [
AC_CHECK_HEADER(mpfr.h, [], [sage_spkg_install_mpfr=yes])
dnl mpfr_free_pool appeared in r11922 (Dec 2017) on MPFR svn
AC_SEARCH_LIBS([mpfr_free_pool], [mpfr], [], [sage_spkg_install_mpfr=yes])
dnl gmpy2 2.2 needs MPFR >= 4.1.0 according https://github.com/aleaxit/gmpy/blob/master/src/gmpy2.h#L86
dnl mpfr_cmpabs_ui was added in 4.1.0 according to https://github.com/BrianGladman/mpfr/blob/master/NEWS#L26
AC_SEARCH_LIBS([mpfr_cmpabs_ui], [mpfr], [], [sage_spkg_install_mpfr=yes])
])
], [], [], [
if test x$sage_spkg_install_mpfr = xyes; then
Expand Down
7 changes: 4 additions & 3 deletions build/pkgs/mpfrcx/checksums.ini
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
tarball=mpfrcx-VERSION.tar.gz
sha1=33fbf3fdbe69fe163fe4f2ebcc79630b11c329e6
md5=44287784a8ad9a5367c68e9ae636864f
cksum=1348973008
sha1=460bc7cb48fae4f8070b73912080fdf0c08c93b6
md5=45077ba92dccc25488086962d160de6c
cksum=1142118879
upstream_url=https://www.multiprecision.org/downloads/mpfrcx-VERSION.tar.gz
2 changes: 1 addition & 1 deletion build/pkgs/mpfrcx/package-version.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.5
0.6.3

0 comments on commit 38885a6

Please sign in to comment.