SHA256
1
0
forked from pool/cm

- Update to release 0.4.3

OBS-URL: https://build.opensuse.org/package/show/science/cm?expand=0&rev=13
This commit is contained in:
Jan Engelhardt 2024-04-11 18:01:45 +00:00 committed by Git OBS Bridge
parent 4702a9175c
commit d64f59a997
7 changed files with 24 additions and 71 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:7c61a3a03759c875f4e0882603b7a6f3b7915b0688194c812b3a0f1e3900d5b0
size 749482

View File

@ -1,7 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iHUEABEIAB0WIQStF6Ie+K7Y8cwC29n31cm/dlxh4wUCZGUPugAKCRD31cm/dlxh
4+F5AQCbb+17Hd8yXR6sZCwS/Y5riuo6nevu3XtUKS3CtRwnqgD/SoRTu8gV1Wpb
V6SmQAR/nd2AD2rWoXT8nJ3U8+C5P+c=
=DFYv
-----END PGP SIGNATURE-----

3
cm-0.4.3.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b23035bd94bea07d9ab912116522edb3db449f25f3361fe5bd4a35402150b005
size 762008

7
cm-0.4.3.tar.gz.asc Normal file
View File

@ -0,0 +1,7 @@
-----BEGIN PGP SIGNATURE-----
iHUEABEIAB0WIQStF6Ie+K7Y8cwC29n31cm/dlxh4wUCZdxqygAKCRD31cm/dlxh
4zItAQCDcd1rUmSJOQR0kiwoYTZKyH0fF2jEa2ziHWD3WkwjTAD9H0wZnzGzLh0M
SkkWu7NW1HNf7V7aCNjv1RygaV8YUjM=
=vsNm
-----END PGP SIGNATURE-----

View File

@ -1,3 +1,14 @@
-------------------------------------------------------------------
Thu Apr 11 17:59:40 UTC 2024 - Jan Engelhardt <jengelh@inai.de>
- Update to release 0.4.3
* FLINT3 support
* Add an upper bound on the permitted class number in ECPP, to
avoid choosing discriminants for which class polynomials
cannot be computed in reasonable time and with reasonable
memory.
- Delete flint3.diff (obsolete)
-------------------------------------------------------------------
Sun Oct 22 04:06:43 UTC 2023 - Jan Engelhardt <jengelh@inai.de>

View File

@ -1,7 +1,7 @@
#
# spec file for package cm
#
# Copyright (c) 2023 SUSE LLC
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -17,7 +17,7 @@
Name: cm
Version: 0.4.2
Version: 0.4.3
Release: 0
Summary: Class polynomial computation via floating point approximations
License: GPL-3.0-or-later
@ -27,7 +27,6 @@ URL: https://www.multiprecision.org/cm/
Source: http://www.multiprecision.org/downloads/%name-%version.tar.gz
Source2: http://www.multiprecision.org/downloads/%name-%version.tar.gz.asc
Source3: %name.keyring
Patch1: flint3.diff
BuildRequires: flint-devel >= 3
BuildRequires: gmp-devel >= 4.3.2
BuildRequires: libtool
@ -99,7 +98,7 @@ fi
%files
%_bindir/classpol
%_bindir/cm
%_bindir/ecpp
%_bindir/ecpp*
%_datadir/cm/
%_infodir/cm.info*

View File

@ -1,57 +0,0 @@
From: Jan Engelhardt <jengelh@inai.de>
Date: 2023-10-22 06:05:56.005185292 +0200
Copy functions from FLINT 2.9 [13042307357192c09630d276f0e7bf2abb9ffd39]
which have been removed in FLINT 3.0.
---
lib/flint.c | 23 +++++++++++++++++++++--
1 file changed, 21 insertions(+), 2 deletions(-)
Index: cm-0.4.2/lib/flint.c
===================================================================
--- cm-0.4.2.orig/lib/flint.c
+++ cm-0.4.2/lib/flint.c
@@ -30,6 +30,25 @@ Foundation, Inc., 59 Temple Place - Suit
/* */
/*****************************************************************************/
+static void fmpz_mod_poly_get_coeff_mpz1(mpz_t x,
+ const fmpz_mod_poly_t poly, slong n, const fmpz_mod_ctx_t ctx)
+{
+ fmpz_t t;
+ fmpz_init(t);
+ fmpz_mod_poly_get_coeff_fmpz(t, poly, n, ctx);
+ fmpz_get_mpz(x, t);
+ fmpz_clear(t);
+}
+
+static void fmpz_mod_poly_set_coeff_mpz1(fmpz_mod_poly_t poly,
+ slong n, const mpz_t x, const fmpz_mod_ctx_t ctx)
+{
+ fmpz_t t;
+ fmpz_init_set_readonly(t, x);
+ fmpz_mod_poly_set_coeff_fmpz(poly, n, t, ctx);
+ fmpz_clear_readonly(t);
+}
+
void mpzx_set_fmpz_mod_poly (mpzx_ptr f, fmpz_mod_poly_t ff,
const fmpz_mod_ctx_t ctx)
{
@@ -38,7 +57,7 @@ void mpzx_set_fmpz_mod_poly (mpzx_ptr f,
deg = fmpz_mod_poly_degree (ff, ctx);
mpzx_set_deg (f, deg);
for (i = 0; i <= deg; i++)
- fmpz_mod_poly_get_coeff_mpz (f->coeff [i], ff, i, ctx);
+ fmpz_mod_poly_get_coeff_mpz1(f->coeff [i], ff, i, ctx);
}
/*****************************************************************************/
@@ -51,7 +70,7 @@ void fmpz_mod_poly_set_mpzx (fmpz_mod_po
deg = f->deg;
fmpz_mod_poly_realloc (ff, deg + 1, ctx);
for (i = 0; i <= deg; i++)
- fmpz_mod_poly_set_coeff_mpz (ff, i, f->coeff [i], ctx);
+ fmpz_mod_poly_set_coeff_mpz1(ff, i, f->coeff [i], ctx);
}
#endif