Skip to content

Commit 7a9ce37

Browse files
committed
allowing external ECM to be called gmp-ecm, not ecm
This is how it is called in Fedora
1 parent e417e22 commit 7a9ce37

File tree

4 files changed

+9
-2
lines changed

4 files changed

+9
-2
lines changed

build/pkgs/ecm/spkg-configure.m4

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
SAGE_SPKG_CONFIGURE([ecm], [
22
m4_pushdef([SAGE_ECM_MINVER],[7.0.4])
3+
SAGE_ECM_BIN=ecm
34
SAGE_SPKG_DEPCHECK([gmp], [
45
AC_CHECK_HEADER(ecm.h, [
56
AX_ABSOLUTE_HEADER([ecm.h])
@@ -18,8 +19,9 @@ SAGE_SPKG_CONFIGURE([ecm], [
1819
AC_SEARCH_LIBS([ecm_factor], [ecm], [], [sage_spkg_install_ecm=yes])
1920
])
2021
])
21-
AC_PATH_PROG([ECMBIN], [ecm])
22+
AC_PATH_PROGS([ECMBIN], [ecm gmp-ecm])
2223
if test x$ECMBIN != x; then
24+
SAGE_ECM_BIN=`basename $ECMBIN`
2325
ecmbin_version=`echo 121 | $ECMBIN 4 | grep ^GMP |
2426
$SED -n -e 's/GMP\-ECM \([[0-9]]*\.[[0-9]]*\.[[0-9]]*\).*/\1/p'`
2527
fi
@@ -34,4 +36,5 @@ SAGE_SPKG_CONFIGURE([ecm], [
3436
], [sage_spkg_install_ecm=yes])
3537
])
3638
m4_popdef([SAGE_ECM_MINVER])
39+
AC_SUBST(SAGE_ECMBIN, $SAGE_ECM_BIN)
3740
])

pkgs/sage-conf/_sage_conf/_conf.py.in

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,8 @@ ECL_CONFIG = "@SAGE_ECL_CONFIG@".replace('${prefix}', SAGE_LOCAL)
3232

3333
SAGE_NAUTY_BINS_PREFIX = "@SAGE_NAUTY_BINS_PREFIX@"
3434

35+
SAGE_ECMBIN = "@SAGE_ECMBIN@"
36+
3537
# Names or paths of the 4ti2 executables
3638
FOURTITWO_HILBERT = "@FOURTITWO_HILBERT@"
3739
FOURTITWO_MARKOV = "@FOURTITWO_MARKOV@"

src/sage/env.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -220,6 +220,7 @@ def var(key: str, *fallbacks: Optional[str], force: bool = False) -> Optional[st
220220
MAXIMA_FAS = var("MAXIMA_FAS")
221221
KENZO_FAS = var("KENZO_FAS")
222222
SAGE_NAUTY_BINS_PREFIX = var("SAGE_NAUTY_BINS_PREFIX", "")
223+
SAGE_ECMBIN = var("SAGE_ECMBIN")
223224
RUBIKS_BINS_PREFIX = var("RUBIKS_BINS_PREFIX", "")
224225
FOURTITWO_HILBERT = var("FOURTITWO_HILBERT")
225226
FOURTITWO_MARKOV = var("FOURTITWO_MARKOV")

src/sage/interfaces/ecm.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@
5555
from sage.structure.sage_object import SageObject
5656
from sage.rings.integer_ring import ZZ
5757

58+
from sage.env import SAGE_ECMBIN
5859

5960
class ECM(SageObject):
6061

@@ -182,7 +183,7 @@ def __init__(self, B1=10, B2=None, **kwds):
182183
self._cmd = self._make_cmd(B1, B2, kwds)
183184

184185
def _make_cmd(self, B1, B2, kwds):
185-
ecm = ['ecm']
186+
ecm = [SAGE_ECMBIN]
186187
options = []
187188
for x, v in kwds.items():
188189
if v is False:

0 commit comments

Comments
 (0)