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 public/32…
Browse files Browse the repository at this point in the history
…441-reb
  • Loading branch information
Jonathan Kliem committed Sep 3, 2021
2 parents b4477da + a3bd572 commit 6ae2006
Show file tree
Hide file tree
Showing 227 changed files with 9,428 additions and 2,547 deletions.
8 changes: 4 additions & 4 deletions .zenodo.json
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
{
"description": "Mirror of the Sage https://sagemath.org/ source tree",
"license": "other-open",
"title": "sagemath/sage: 9.4",
"version": "9.4",
"title": "sagemath/sage: 9.5.beta0",
"version": "9.5.beta0",
"upload_type": "software",
"publication_date": "2021-08-22",
"publication_date": "2021-08-31",
"creators": [
{
"affiliation": "SageMath.org",
Expand All @@ -15,7 +15,7 @@
"related_identifiers": [
{
"scheme": "url",
"identifier": "https://github.com/sagemath/sage/tree/9.4",
"identifier": "https://github.com/sagemath/sage/tree/9.5.beta0",
"relation": "isSupplementTo"
},
{
Expand Down
30 changes: 11 additions & 19 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -237,24 +237,16 @@ Guide](https://doc.sagemath.org/html/en/installation).
(also for Red Hat, CentOS), and
[slackware.txt](build/pkgs/_prereq/distros/slackware.txt).

7. Optional, but highly recommended: Make sure your system has an SSL
library and its development files installed.

Like Python, on which it is based, Sage uses the OpenSSL library
for added performance if made available by the operating system. It
has been shown that Sage can be successfully built against other
SSL libraries, with some of its features disabled.

8. Optional: It is recommended that you have both LaTeX and the
7. Optional: It is recommended that you have both LaTeX and the
ImageMagick tools (e.g. the "convert" command) installed since some
plotting functionality benefits from it.

9. Optionally, review the configuration options, which includes
8. Optionally, review the configuration options, which includes
many optional packages:

$ ./configure --help

10. Optional, but highly recommended: Set some environment variables to
9. Optional, but highly recommended: Set some environment variables to
customize the build.

For example, the `MAKE` environment variable controls whether to
Expand All @@ -271,7 +263,7 @@ Guide](https://doc.sagemath.org/html/en/installation).
building Sage, see [the installation
guide](https://doc.sagemath.org/html/en/installation/source.html#environment-variables).

11. Type `./configure`, followed by any options that you wish to use.
10. Type `./configure`, followed by any options that you wish to use.
For example, to build Sage with `gf2x` package supplied by Sage,
use `./configure --with-system-gf2x=no`.

Expand All @@ -291,37 +283,37 @@ Guide](https://doc.sagemath.org/html/en/installation).
available; only the most recent releases of your distribution will
have all of these recommended packages.

12. Optional: If you choose to install the additional system packages,
11. Optional: If you choose to install the additional system packages,
a re-run of `./configure` will test whether the versions installed
are usable for Sage; if they are, this will reduce the compilation
time and disk space needed by Sage. The usage of packages may be
adjusted by `./configure` parameters (check again the output of
`./configure --help`).

13. Type `make`. That's it! Everything is automatic and
12. Type `make`. That's it! Everything is automatic and
non-interactive; but it will take a few hours (on a recent
computer).

The build should work fine on all fully supported platforms. If it
does not, we want to know!

14. Type `./sage` to try it out.
13. Type `./sage` to try it out.

15. Optional: Type `make ptestlong` to test all examples in the documentation
14. Optional: Type `make ptestlong` to test all examples in the documentation
(over 200,000 lines of input!) -- this takes from 10 minutes to
several hours. Don't get too disturbed if there are 2 to 3 failures,
but always feel free to email the section of `logs/ptestlong.log` that
contains errors to the [sage-support mailing list](https://groups.google.com/group/sage-support).
If there are numerous failures, there was a serious problem with your build.

16. The HTML version of the [documentation](https://doc.sagemath.org/html/en/index.html)
15. The HTML version of the [documentation](https://doc.sagemath.org/html/en/index.html)
is built during the compilation process of Sage and resides in the directory
`local/share/doc/sage/html/`.

17. Optional: If you want to build the PDF version of the documentation,
16. Optional: If you want to build the PDF version of the documentation,
run `make doc-pdf` (this requires LaTeX to be installed).

18. Optional: You might install optional packages of interest to you: type
17. Optional: You might install optional packages of interest to you: type
`./sage --optional` to get a list.

Troubleshooting
Expand Down
2 changes: 1 addition & 1 deletion VERSION.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
SageMath version 9.4, Release Date: 2021-08-22
SageMath version 9.5.beta0, Release Date: 2021-08-31
18 changes: 17 additions & 1 deletion build/bin/sage-dist-helpers
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,11 @@
#
# Runs `pip uninstall` with the given arguments. If unsuccessful, it displays a warning.
#
# - eval sdh_prefix_args PREFIX [...]
#
# Helper function for transforming build options so that they can be passed
# through "pip".
#
# - sdh_cmake [...]
#
# Runs `cmake` in the current directory with the given arguments, as well as
Expand Down Expand Up @@ -212,6 +217,7 @@ sdh_make_install() {
}

sdh_setup_bdist_wheel() {
# Trac #32046: Most uses of this function can be replaced by sdh_pip_install
mkdir -p dist
rm -f dist/*.whl
BDIST_DIR="$(mktemp -d)"
Expand All @@ -220,11 +226,21 @@ sdh_setup_bdist_wheel() {
"$@" || sdh_die "Error building a wheel for $PKG_NAME"
}

sdh_prefix_args () {
prefix="$1"
shift
while [ $# -gt 0 ]; do
# Quoted quotes because the result is to be run through eval
echo "$prefix" \"$1\"
shift
done
}

sdh_pip_install() {
echo "Installing $PKG_NAME"
mkdir -p dist
rm -f dist/*.whl
python3 -m pip wheel --wheel-dir=dist --no-binary :all: --verbose --no-deps --no-index --isolated --no-build-isolation "$@" || \
python3 -m pip wheel --use-feature=in-tree-build --wheel-dir=dist --no-binary :all: --verbose --no-deps --no-index --isolated --no-build-isolation "$@" || \
sdh_die "Error building a wheel for $PKG_NAME"

sdh_store_and_pip_install_wheel .
Expand Down
2 changes: 1 addition & 1 deletion build/pkgs/_prereq/distros/freebsd.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,4 @@ gmake
automake
bash
dash
python # python metaport for bootstrapping the build
python # python metaport for bootstrapping the build
3 changes: 3 additions & 0 deletions build/pkgs/_prereq/distros/opensuse.txt
Original file line number Diff line number Diff line change
Expand Up @@ -23,3 +23,6 @@ gcc-c++
ca-certificates
# gunzip needed for ppl spkg
gzip
# Trac #32368
findutils
diffutils
2 changes: 1 addition & 1 deletion build/pkgs/arb/spkg-configure.m4
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ SAGE_SPKG_CONFIGURE([arb], [
AC_CHECK_HEADER(arb.h, [
dnl below function added in version 2.16 of arb
AC_CHECK_LIB([arb], [acb_mat_eig_simple], [],
[dnl in Debian the name of dylib is different.
[dnl in Debian the name of dylib is different.
AC_CHECK_LIB([flint-arb], [acb_mat_eig_simple],
[SAGE_ARB_LIBRARY="flint-arb"], [sage_spkg_install_arb=yes])])
], [sage_spkg_install_arb=yes])
Expand Down
80 changes: 41 additions & 39 deletions build/pkgs/brial/spkg-configure.m4
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ SAGE_SPKG_CONFIGURE([brial], [
USING_NAMESPACE_PBORI
USING_NAMESPACE_PBORIGB
class MyConstant : public BooleConstant{
class MyConstant : public BooleConstant{
public: void negate() { this->m_value = !this->m_value; }
};
],[
Expand All @@ -35,56 +35,58 @@ SAGE_SPKG_CONFIGURE([brial], [
dnl for which the version is verifiable by the following code.
AC_MSG_CHECKING([version not equal to 1.2.5])
AC_RUN_IFELSE([
AC_LANG_PROGRAM(
AC_LANG_PROGRAM(
[[#include <polybori.h>
#include <polybori/config.h>
]], [[
if (VERSION=="1.2.5") return 0;
else return 1;
]])
], [
AC_MSG_RESULT([found a possibly buggy 1.2.5. Rejecting])
sage_spkg_install_brial=yes
], [
AC_MSG_RESULT([yes])
sage_spkg_install_brial=no
], [AC_MSG_RESULT([cross compiling. Assume yes])
sage_spkg_install_brial=no])
]])
], [
AC_MSG_RESULT([found a possibly buggy 1.2.5. Rejecting])
sage_spkg_install_brial=yes
], [
AC_MSG_RESULT([yes])
sage_spkg_install_brial=no
], [
AC_MSG_RESULT([cross compiling. Assume yes])
sage_spkg_install_brial=no
])
],
[
AC_MSG_RESULT([no])
sage_spkg_install_brial=yes
],
[
AC_MSG_CHECKING([if we can link against brial libraries])
AC_LINK_IFELSE([
AC_LANG_PROGRAM([
#include <polybori.h>
#include <polybori/groebner/groebner_alg.h>
USING_NAMESPACE_PBORI
USING_NAMESPACE_PBORIGB
AC_MSG_CHECKING([if we can link against brial libraries])
AC_LINK_IFELSE([
AC_LANG_PROGRAM([
#include <polybori.h>
#include <polybori/groebner/groebner_alg.h>
USING_NAMESPACE_PBORI
USING_NAMESPACE_PBORIGB
class MyConstant : public BooleConstant{
public: void negate() { this->m_value = !this->m_value; }
};
],[
BoolePolyRing r = BoolePolyRing(2, COrderEnums::dlex);
ReductionStrategy rs = ReductionStrategy(r);
rs.llReduceAll(); // uses groebner lib
if (2 != r.nVariables()) { return 1; }
if (r.constant(true) == r.constant(false)) { return 2; }
MyConstant f = MyConstant();
f.negate(); // ensures v1.1.0+ if m_value isn't const
if (!f.isOne()) { return 3; }
return 0;
])
],[
AC_MSG_RESULT([yes])
sage_spkg_install_brial=yes
],[
AC_MSG_RESULT([no])
sage_spkg_install_brial=no
])
class MyConstant : public BooleConstant{
public: void negate() { this->m_value = !this->m_value; }
};
],[
BoolePolyRing r = BoolePolyRing(2, COrderEnums::dlex);
ReductionStrategy rs = ReductionStrategy(r);
rs.llReduceAll(); // uses groebner lib
if (2 != r.nVariables()) { return 1; }
if (r.constant(true) == r.constant(false)) { return 2; }
MyConstant f = MyConstant();
f.negate(); // ensures v1.1.0+ if m_value isn't const
if (!f.isOne()) { return 3; }
return 0;
])
],[
AC_MSG_RESULT([yes])
sage_spkg_install_brial=yes
],[
AC_MSG_RESULT([no])
sage_spkg_install_brial=no
])
])
LIBS=$SAVED_LIBS
AC_LANG_POP
Expand Down
2 changes: 1 addition & 1 deletion build/pkgs/bzip2/spkg-configure.m4
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ SAGE_SPKG_CONFIGURE([bzip2], [
AC_CHECK_HEADER(bzlib.h, [
AC_SEARCH_LIBS([BZ2_bzCompress], [bz2], [
AC_PATH_PROG([bzip2_prog], [bzip2])
AS_IF([test x$bzip2_prog = x], [sage_spkg_install_bzip2=yes])
AS_IF([test x$bzip2_prog = x], [sage_spkg_install_bzip2=yes])
], [sage_spkg_install_bzip2=yes])
], [sage_spkg_install_bzip2=yes])
])
2 changes: 1 addition & 1 deletion build/pkgs/cmake/spkg-configure.m4
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
SAGE_SPKG_CONFIGURE(
[cmake], [
AC_CACHE_CHECK([for cmake >= 3.4], [ac_cv_path_CMAKE], [
AC_CACHE_CHECK([for cmake >= 3.4], [ac_cv_path_CMAKE], [
AC_PATH_PROGS_FEATURE_CHECK([CMAKE], [cmake], [
cmake_version=`$ac_path_CMAKE --version 2>&1 \
| $SED -n -e 's/cmake version *\([[0-9]]*\.[[0-9]]*\.[[0-9]]*\)/\1/p'`
Expand Down
6 changes: 3 additions & 3 deletions build/pkgs/configure/checksums.ini
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
tarball=configure-VERSION.tar.gz
sha1=d8c58a2ffaec92099d4a7295f5beeb12aefa3385
md5=0009324af93933b11cb35e739a2582c8
cksum=2050549271
sha1=2d40d7b88d0e3b7b559c40e4b0bc593982fb7b55
md5=9839944672f62c22accb4d06ac370444
cksum=2416630844
2 changes: 1 addition & 1 deletion build/pkgs/configure/package-version.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
7282b2b6c6a282a887fa05b0b5250b77035bf3bf
18383a70c541a8c8a7ee764b564d68b413d21e41
6 changes: 3 additions & 3 deletions build/pkgs/cython/checksums.ini
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
tarball=Cython-VERSION.tar.gz
sha1=3aafce4489a7bc7a48c843cdfb8dac4677fdac50
md5=12c5e45af71dcc6dff28cdcbcbef6f39
cksum=3658613797
sha1=21187175b7da94020e662c04f805d580f1071880
md5=81aff945f5bfdfb86e7a5d24f5467668
cksum=2423037501
upstream_url=https://pypi.io/packages/source/C/Cython/Cython-VERSION.tar.gz
2 changes: 1 addition & 1 deletion build/pkgs/cython/package-version.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.29.21
0.29.24
4 changes: 2 additions & 2 deletions build/pkgs/flint/spkg-configure.m4
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@ SAGE_SPKG_CONFIGURE([flint], [
[return 0;]
[#endif]])],
[AC_MSG_RESULT([GC not enabled. Good.])],
[AC_MSG_RESULT([GC enabled. Incompatible with Sage.])
sage_spkg_install_flint=yes],
[AC_MSG_RESULT([GC enabled. Incompatible with Sage.])
sage_spkg_install_flint=yes],
[AC_MSG_RESULT(["cross compiling. assuming GC is not enabled"])])
], [sage_spkg_install_flint=yes])
], [sage_spkg_install_flint=yes])
Expand Down
10 changes: 5 additions & 5 deletions build/pkgs/gcc/spkg-configure.m4
Original file line number Diff line number Diff line change
Expand Up @@ -53,11 +53,11 @@ AC_DEFUN([SAGE_CHECK_BROKEN_GCC], [


SAGE_SPKG_CONFIGURE_BASE([gcc], [
AC_REQUIRE([AC_PROG_CC])
AC_REQUIRE([AC_PROG_CPP])
AC_REQUIRE([AC_PROG_CXX])
AC_REQUIRE([AC_PROG_OBJC])
AC_REQUIRE([AC_PROG_OBJCXX])
AC_REQUIRE([AC_PROG_CC])
AC_REQUIRE([AC_PROG_CPP])
AC_REQUIRE([AC_PROG_CXX])
AC_REQUIRE([AC_PROG_OBJC])
AC_REQUIRE([AC_PROG_OBJCXX])
if test -f "$SAGE_LOCAL/bin/gcc"; then
# Special value for SAGE_INSTALL_GCC if GCC is already installed
Expand Down
2 changes: 1 addition & 1 deletion build/pkgs/gfortran/spkg-configure.m4
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ SAGE_SPKG_CONFIGURE([gfortran], [
# compiler.
AC_REQUIRE([SAGE_SAVE_FCFLAGS])
AC_FC_FREEFORM([SAGE_HAVE_FC_FREEFORM=yes], [
AC_MSG_NOTICE([Your Fortran compiler does not accept free-format source code])
AC_MSG_NOTICE([Your Fortran compiler does not accept free-format source code])
AC_MSG_NOTICE([which means the compiler is either seriously broken, or])
AC_MSG_NOTICE([is too old to build Sage.])
SAGE_HAVE_FC_FREEFORM=no])
Expand Down
8 changes: 4 additions & 4 deletions build/pkgs/git/spkg-configure.m4
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
SAGE_SPKG_CONFIGURE([git], [
# Check whether git works by executing "git --version"
AC_CACHE_CHECK([for git], [ac_cv_path_GIT], [
AC_PATH_PROGS_FEATURE_CHECK([GIT], [git],
[${ac_path_GIT} --version >/dev/null 2>/dev/null &&
AC_CACHE_CHECK([for git], [ac_cv_path_GIT], [
AC_PATH_PROGS_FEATURE_CHECK([GIT], [git],
[${ac_path_GIT} --version >/dev/null 2>/dev/null &&
ac_cv_path_GIT=${ac_path_GIT} &&
ac_path_GIT_found=:
],
[sage_spkg_install_git=yes; ac_cv_path_GIT=no])])
[sage_spkg_install_git=yes; ac_cv_path_GIT=no])])
])
2 changes: 1 addition & 1 deletion build/pkgs/gmp/spkg-configure.m4
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@ SAGE_SPKG_CONFIGURE([gmp], [
if test x"$with_mp" = xgmp -o x"$_sage_spkg_install_gmp" = xyes; then
if test x"$SAGE_MP_LIBRARY" = xgmp; then
sage_spkg_install_gmp=yes
fi
fi
fi
])
Loading

0 comments on commit 6ae2006

Please sign in to comment.