Skip to content
This repository has been archived by the owner on Jan 30, 2023. It is now read-only.

Commit

Permalink
Merge branch 'develop' of git://trac.sagemath.org/sage into t/24577/i…
Browse files Browse the repository at this point in the history
…s_genus_for_torsion_quadratic_modules

Conflicts:
	src/sage/modules/torsion_quadratic_module.py
  • Loading branch information
Simon Brandhorst committed Feb 19, 2018
2 parents a82b4b3 + 93020a4 commit 1ccb5cd
Show file tree
Hide file tree
Showing 390 changed files with 28,870 additions and 6,007 deletions.
6 changes: 5 additions & 1 deletion Makefile
Expand Up @@ -11,10 +11,14 @@ default: all

build: all-build

# The --stop flag below is just a random flag to induce graceful
# breakage with non-GNU versions of make.
# See https://trac.sagemath.org/ticket/24617

# Defer unknown targets to build/make/Makefile
%::
@if [ -x relocate-once.py ]; then ./relocate-once.py; fi
$(MAKE) build/make/Makefile
$(MAKE) build/make/Makefile --stop
+build/bin/sage-logger \
"cd build/make && ./install '$@'" logs/install.log

Expand Down
2 changes: 1 addition & 1 deletion VERSION.txt
@@ -1 +1 @@
SageMath version 8.2.beta4, Release Date: 2018-01-27
SageMath version 8.2.beta6, Release Date: 2018-02-18
6 changes: 3 additions & 3 deletions build/pkgs/arb/checksums.ini
@@ -1,4 +1,4 @@
tarball=arb-VERSION.tar.gz
sha1=2f06bfb433cdaecde0e824c5e638094fd666a0d1
md5=d63cdd1147104790826c93bc8651104f
cksum=2745482665
sha1=27476d0529e48a07d92da90bd0fb80dd18f443e3
md5=733285d9705d10b8024e551ffa81952f
cksum=2391183744
2 changes: 1 addition & 1 deletion build/pkgs/arb/package-version.txt
@@ -1 +1 @@
2.11.1.p0
2.12.0.p0
2 changes: 1 addition & 1 deletion build/pkgs/atlas/dependencies
@@ -1,4 +1,4 @@
| $(PYTHON)
gfortran | $(PYTHON)

----------
All lines of this file are ignored except the first.
Expand Down
5 changes: 5 additions & 0 deletions build/pkgs/backports_functools_lru_cache/SPKG.txt
@@ -0,0 +1,5 @@
= backports.functools_lru_cache =

== Description ==

A backport of functools.lru_cache from Python 3.3 as published at ActiveState.
4 changes: 4 additions & 0 deletions build/pkgs/backports_functools_lru_cache/checksums.ini
@@ -0,0 +1,4 @@
tarball=backports.functools_lru_cache-VERSION.tar.gz
sha1=8a546e7887e961c2873c9b053f4e2cd2a96bd71d
md5=b954e7d5e2ca0f0f66ad2ed12ba800e5
cksum=2013684405
5 changes: 5 additions & 0 deletions build/pkgs/backports_functools_lru_cache/dependencies
@@ -0,0 +1,5 @@
$(PYTHON) | setuptools_scm pip

----------
All lines of this file are ignored except the first.
It is copied by SAGE_ROOT/build/make/install into SAGE_ROOT/build/make/Makefile.
@@ -0,0 +1 @@
1.4
3 changes: 3 additions & 0 deletions build/pkgs/backports_functools_lru_cache/spkg-install
@@ -0,0 +1,3 @@
cd src

sdh_pip_install .
1 change: 1 addition & 0 deletions build/pkgs/backports_functools_lru_cache/type
@@ -0,0 +1 @@
standard
6 changes: 3 additions & 3 deletions build/pkgs/configure/checksums.ini
@@ -1,4 +1,4 @@
tarball=configure-VERSION.tar.gz
sha1=499badf9321c53c458652ca71580585463e574a3
md5=e483eb587a1be5886b718e24f54a84a5
cksum=3889320352
sha1=5c564595c8dab9d93e86dcc43141b956086d9e16
md5=9125aedb54d788ec1acb8f3112c5a04e
cksum=251192083
2 changes: 1 addition & 1 deletion build/pkgs/configure/package-version.txt
@@ -1 +1 @@
252
254
2 changes: 1 addition & 1 deletion build/pkgs/coxeter3/SPKG.txt
Expand Up @@ -44,6 +44,6 @@ by spkg-install:
its data and messages from the Sage installation tree
- makefile.patch: handle compilation flags for Darwin and Cygwin
- warning.patch: remove deprecation warnings
- sage.cpp: add a function for Bruhat invervals which is simpler to
- sage.cpp: add a function for Bruhat intervals which is simpler to
code in C++ than Cython

6 changes: 3 additions & 3 deletions build/pkgs/cypari/checksums.ini
@@ -1,4 +1,4 @@
tarball=cypari2-VERSION.tar.gz
sha1=9e1848b5dc566133edad79437fd39e298e336642
md5=f268f870d255bb98bd4e917f0d74a463
cksum=3159551499
sha1=d27b8a80470514471a59e38f3e7248c677c58abb
md5=38149046fbdbecc390ce45e28fc10f8a
cksum=296167081
2 changes: 1 addition & 1 deletion build/pkgs/cypari/package-version.txt
@@ -1 +1 @@
1.1.3
1.1.4
2 changes: 1 addition & 1 deletion build/pkgs/flint/package-version.txt
@@ -1 +1 @@
2.5.2.p1
2.5.2.p2
42 changes: 42 additions & 0 deletions build/pkgs/flint/patches/linking_SunOS_FreeBSD.patch
@@ -0,0 +1,42 @@
diff --git a/Makefile.in b/Makefile.in
index 2d0475d..a8b2b44 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -118,6 +118,7 @@ $(FLINT_LIB): $(LOBJS) $(LIB_SOURCES) $(EXT_SOURCES) $(HEADERS) $(EXT_HEADERS) |
$(LDCONFIG) -n "$(CURDIR)"; \
fi
ln -sf "$(FLINT_LIB)" "$(FLINT_LIBNAME)"; \
+ ln -sf "$(FLINT_LIB)" "$(FLINT_LIBNAME).$(FLINT_MAJOR)"; \

libflint.a: $(OBJS) $(LIB_SOURCES) $(EXT_SOURCES) $(HEADERS) $(EXT_HEADERS) | build build/interfaces
$(AT)$(foreach ext, $(EXTENSIONS), $(foreach dir, $(filter-out %templates, $(patsubst $(ext)/%.h, %, $(wildcard $(ext)/*.h))), mkdir -p build/$(dir); BUILD_DIR=$(CURDIR)/build/$(dir); export BUILD_DIR; MOD_DIR=$(dir); export MOD_DIR; $(MAKE) -f $(CURDIR)/Makefile.subdirs -C $(ext)/$(dir) static || exit $$?;))
diff --git a/configure b/configure
index 424ab0a..959a650 100755
--- a/configure
+++ b/configure
@@ -450,7 +450,7 @@ fi

# sometimes LDCONFIG is not to be found in the path. Look at some common places.
case "$OS" in
- MINGW*|CYGWIN*|Darwin)
+ MINGW*|CYGWIN*|Darwin|FreeBSD)
LDCONFIG="true";;
*)
if [ -z "$LDCONFIG" ]; then
@@ -551,6 +551,8 @@ if [ -z "$CFLAGS" ]; then
CFLAGS="-O2 -funroll-loops -g -D _WIN64 $POPCNT_FLAG $ABI_FLAG"
elif [ "$MACHINE" = "mips64" ]; then
CFLAGS="-O2 -funroll-loops -g $POPCNT_FLAG $ABI_FLAG"
+ elif [ "$KERNEL" = FreeBSD ]; then
+ CFLAGS="-std=c99 -pedantic -Wall -O2 -funroll-loops -g $POPCNT_FLAG $ABI_FLAG $OPENMP_FLAG"
else
CFLAGS="-ansi -pedantic -Wall -O2 -funroll-loops -g $POPCNT_FLAG $ABI_FLAG"
fi
@@ -715,6 +717,7 @@ echo "FLINT_SHARED=$SHARED" >> Makefile
echo "FLINT_LIB=$FLINT_LIB" >> Makefile
echo "FLINT_LIBNAME=$FLINT_LIBNAME" >> Makefile
echo "FLINT_SOLIB=$FLINT_SOLIB" >> Makefile
+echo "FLINT_MAJOR=$FLINT_MAJOR" >> Makefile
echo "EXEEXT=$EXEEXT" >> Makefile
echo "PREFIX=$PREFIX" >> Makefile
echo "" >> Makefile
2 changes: 1 addition & 1 deletion build/pkgs/fplll/package-version.txt
@@ -1 +1 @@
5.2.0.p0
5.2.0.p1
74 changes: 74 additions & 0 deletions build/pkgs/fplll/patches/GCC-PR10200.patch
@@ -0,0 +1,74 @@
commit f9ea48c350feb9054c7176c2adec9c8e4a06f503
Author: Jeroen Demeyer <jdemeyer@cage.ugent.be>
Date: Mon Feb 5 11:24:14 2018 +0100

Work around https://gcc.gnu.org/bugzilla/show_bug.cgi?id=10200

This shows up in particular on Solaris systems with GCC-5.4.0

diff --git a/fplll/sieve/sieve_gauss_2sieve.cpp b/fplll/sieve/sieve_gauss_2sieve.cpp
index 83eb817..625c6f0 100644
--- a/fplll/sieve/sieve_gauss_2sieve.cpp
+++ b/fplll/sieve/sieve_gauss_2sieve.cpp
@@ -33,7 +33,7 @@ template <class ZT, class F> Z_NR<ZT> GaussSieve<ZT, F>::update_p_2reduce(ListPo
for (lp_it = List.begin(); lp_it != List.end(); ++lp_it)
{
v = *lp_it;
- if (p->norm < v->norm)
+ if ((p->norm) < v->norm)
break;

/* if there is one reduction the vector should re-pass the list */
diff --git a/fplll/sieve/sieve_gauss_3sieve.cpp b/fplll/sieve/sieve_gauss_3sieve.cpp
index 3c3716c..3fdbca6 100644
--- a/fplll/sieve/sieve_gauss_3sieve.cpp
+++ b/fplll/sieve/sieve_gauss_3sieve.cpp
@@ -27,7 +27,7 @@ GaussSieve<ZT, F>::update_p_3reduce_2reduce(ListPoint<ZT> *p,
for (lp_it = List.begin(); lp_it != List.end(); ++lp_it)
{
v = *lp_it;
- if (p->norm < v->norm)
+ if ((p->norm) < v->norm)
break;
if (half_2reduce(p, v))
{
@@ -166,7 +166,7 @@ template <class ZT, class F> Z_NR<ZT> GaussSieve<ZT, F>::update_p_3reduce(ListPo
continue;
}
++lp_it2;
- if (v1->norm < p->norm)
+ if ((v1->norm) < p->norm)
{
vnew2 = new_listpoint<ZT>(nc);
if (check_3reduce(v1, p, v2, vnew2) != 1)
diff --git a/fplll/sieve/sieve_gauss_4sieve.cpp b/fplll/sieve/sieve_gauss_4sieve.cpp
index 9eb586e..f2758a4 100644
--- a/fplll/sieve/sieve_gauss_4sieve.cpp
+++ b/fplll/sieve/sieve_gauss_4sieve.cpp
@@ -15,7 +15,7 @@ void GaussSieve<ZT, F>::update_p_4reduce_aux(ListPoint<ZT> *p,
for (lp_it = List.begin(); lp_it != List.end(); ++lp_it)
{
v = *lp_it;
- if (p->norm < v->norm)
+ if ((p->norm) < v->norm)
break;
}
lp_it_k = lp_it;
@@ -119,7 +119,7 @@ template <class ZT, class F> Z_NR<ZT> GaussSieve<ZT, F>::update_p_4reduce_3reduc
continue;
}
++lp_it2;
- if (v1->norm < p->norm)
+ if ((v1->norm) < p->norm)
{
/*cout << "# --- here 1 " << endl;
cout << v1->norm << endl;
@@ -274,7 +274,7 @@ template <class ZT, class F> Z_NR<ZT> GaussSieve<ZT, F>::update_p_4reduce(ListPo
}
++lp_it3;
/* (v1, p, v2, v3) or (v1, v2, p, v3) */
- if (v1->norm < p->norm)
+ if ((v1->norm) < p->norm)
{
/* (v1, p, v2, v3) */
if (v2->norm > p->norm)
27 changes: 27 additions & 0 deletions build/pkgs/fplll/patches/pow.patch
@@ -0,0 +1,27 @@
commit 848a55ec1eaa425d6843303fcc0fac9eda397a83
Author: Jeroen Demeyer <jdemeyer@cage.ugent.be>
Date: Mon Feb 5 11:22:54 2018 +0100

Fix pow() calls on Solaris

diff --git a/fplll/nr/dpe.h b/fplll/nr/dpe.h
index 1ad6562..c132378 100644
--- a/fplll/nr/dpe.h
+++ b/fplll/nr/dpe.h
@@ -708,14 +708,14 @@ DPE_INLINE void dpe_ugly_log(dpe_t x, const dpe_t y)
DPE_INLINE void dpe_ugly_exp(dpe_t x, const dpe_t y)
{
// printf ("## exp is %ld\n", DPE_EXP(y));
- dpe_set_d(x, exp(((double)DPE_MANT(y)) * pow(2, ((double)DPE_EXP(y)))));
+ dpe_set_d(x, exp(((double)DPE_MANT(y)) * pow(2.0, ((double)DPE_EXP(y)))));
}

/* More hacks */
/* x = y^k */
DPE_INLINE void dpe_pow_si(dpe_t x, const dpe_t y, const unsigned int k)
{
- DPE_MANT(x) = pow(DPE_MANT(y), k);
+ DPE_MANT(x) = pow(DPE_MANT(y), (double)k);
DPE_EXP(x) = DPE_EXP(y) * k;
dpe_normalize(x);
}
2 changes: 1 addition & 1 deletion build/pkgs/gcc/dependencies
@@ -1,4 +1,4 @@
| $(MP_LIBRARY) mpfr mpc zlib xz
$(MP_LIBRARY) mpfr mpc zlib | xz

----------
All lines of this file are ignored except the first.
Expand Down
25 changes: 25 additions & 0 deletions build/pkgs/gfortran/SPKG.txt
@@ -0,0 +1,25 @@
= gfortran =

== Description ==

The GNU Compiler Collection, including the C, C++ and Fortran compiler.
This particular package is meant to only make gfortran available.

== License ==

GPL version 2 or version 3

== Upstream Contact ==

http://gcc.gnu.org/

== Dependencies ==

* zlib
* MPIR
* MPFR
* MPC

== Special Update/Build Instructions ==

None.
1 change: 1 addition & 0 deletions build/pkgs/gfortran/checksums.ini
1 change: 1 addition & 0 deletions build/pkgs/gfortran/dependencies
1 change: 1 addition & 0 deletions build/pkgs/gfortran/package-version.txt
77 changes: 77 additions & 0 deletions build/pkgs/gfortran/spkg-install
@@ -0,0 +1,77 @@
if [ -z "$SAGE_LOCAL" ]; then
echo >&2 "SAGE_LOCAL undefined ... exiting"
echo >&2 "Maybe run 'sage --sh'?"
exit 1
fi

# This spkg shouldn't be installed if gcc is already installed
if [ -a "$SAGE_LOCAL"/bin/gcc ]; then
echo >&2 "Error: gcc is already installed"
exit 1
fi

# Exit on error
set -e

# Build in a separate directory, not in src/ (a.k.a. a VPATH build).
# This is the recommended way to build GCC.
mkdir gcc-build
cd gcc-build


# On OSX:
if [ "$UNAME" = "Darwin" ]; then
# isl/cloog libraries are almost certainly from Homebrew and won't work
GCC_CONFIGURE="--without-isl --without-cloog $GCC_CONFIGURE"

# Use 'bootstrap-debug' build configuration to force stripping of object
# files prior to comparison during bootstrap (broken by Xcode 6.3).
# See #18156
GCC_CONFIGURE="--with-build-config=bootstrap-debug $GCC_CONFIGURE"
fi

# Let Gfortran build on Raspberry Pi using hard floats.
if [ `uname -m` = "armv6l" ]; then
GCC_CONFIGURE="--with-arch=armv6 --with-fpu=vfp --with-float=hard $GCC_CONFIGURE"
fi

# Let Gfortran build on more recent ARM boards using hard floats.
if [ `uname -m` = "armv7l" ]; then
GCC_CONFIGURE="--with-arch=armv7-a --with-fpu=vfpv3-d16 --with-float=hard $GCC_CONFIGURE"
fi

if [ "$SAGE_CHECK" = yes ]; then
# Enable internal checks in GCC. These checks do not affect the
# binaries produced by GCC, but they do increase the compile time
# of everything compiled with GCC.
GCC_CONFIGURE="$GCC_CONFIGURE --enable-checking=yes"
fi

# Use the assembler/linker specified by $AS/$LD if they differ from the
# default.
if [ -n "$AS" -a "$AS" != "as" ]; then
CONFIGURE_AS="--with-as=$AS"
fi
if [ -n "$LD" -a "$LD" != "ld" ]; then
CONFIGURE_LD="--with-ld=$LD"
fi

../src/configure \
--prefix="$SAGE_LOCAL" \
--with-local-prefix="$SAGE_LOCAL" \
--with-gmp="$SAGE_LOCAL" --with-mpfr="$SAGE_LOCAL" --with-mpc="$SAGE_LOCAL" \
--with-system-zlib \
--disable-multilib \
--disable-nls \
--enable-languages=fortran \
--disable-bootstrap \
--disable-libitm \
$GCC_CONFIGURE "$CONFIGURE_AS" "$CONFIGURE_LD"

$MAKE BOOT_LDFLAGS="-Wl,-rpath,$SAGE_LOCAL/lib"

$MAKE install

# The spkg still installs a minimal C compiler that needs to be removed
# so it doesn't conflict with the configured C compiler.
rm -f "$SAGE_LOCAL"/bin/gcc "$SAGE_LOCAL"/bin/cpp
1 change: 1 addition & 0 deletions build/pkgs/gfortran/type
@@ -0,0 +1 @@
standard
15 changes: 7 additions & 8 deletions build/pkgs/giac/SPKG.txt
Expand Up @@ -16,8 +16,11 @@

== Licence ==

GPLv3+ except the french html documentation which is freely redistributable
for non commercial only purposes. This doc has been removed in the spkg)
GPLv3+

Note: except the french html documentation which is freely
redistributable for non commercial only purposes. This doc has been
removed in the Sage package, see spkg-src

== Upstream Contact ==

Expand All @@ -30,12 +33,8 @@ GPLv3+ except the french html documentation which is freely redistributable
* gettext, readline
* giac will benefit of ntl, pari, mpfr, gsl, lapack but they should be already installed by sage.
* giac can also benefit of mpfi for arithmetic on intervals.
* The Documentation is pre-built, hevea or latex or ... are not needed to install the package.
* The Documentation is pre-built, hevea or latex or ... are not needed to install the package.

== Special Update/Build Instructions ==

* The script_subdirectory of the pexpect giac interface is create in spkg-install.
* Some gcc 4.7.2 gives a seg fault when compiling giac, but earlier or later version
should be fine.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54986
* pari support has been enabled in spkg-install. To allow this, giac have been patched to not always init pari. (See the comments in patches/README.txt for details)
* Use spkg-src to update this package
2 changes: 1 addition & 1 deletion build/pkgs/giac/package-version.txt
@@ -1 +1 @@
1.4.9.45
1.4.9.45.p2

0 comments on commit 1ccb5cd

Please sign in to comment.