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' into ticket/15278
Browse files Browse the repository at this point in the history
* develop: (370 commits)
  Updated Sage version to 6.1.beta2
  fix latex
  fix documentation
  minor typography
  Trac 13101: mark doctest as "long time"
  trac 13101 better doctest
  Trac 13101: Fix bug in enumerate_totallyreal_fields_all
  #9706: review patch.
  trac 9706: Propose new class structure
  Symbolic Chebyshev polynomials: reviewer patch
  trac 9706: Collective patch. Bugfixes, extensions, optimizations, documentation, doctests for chebyshev_T, chebyshev_U and base class for ortho polys
  Updated Sage version to 6.1.beta1
  Fixing Whitespace errors
  Use bash as SHELL for build/Makefile
  allow numpy arrays in list_plot, line, points
  Run Jmol from current directory
  Trac #12322: Add a doctest for the correct behavior introduced in trac #12737.
  Trac #14186 coerce_binop errors with keyword arguments
  trac #15553: Broken links in the doc of graph/ and numerical/
  bug fix : importing BooleanPolynomialRing at the top-level prevents sage from starting
  ...
  • Loading branch information
simon-king-jena committed Dec 29, 2013
2 parents 51d6328 + 036984d commit 8fc9c94
Show file tree
Hide file tree
Showing 568 changed files with 43,834 additions and 16,943 deletions.
2 changes: 1 addition & 1 deletion VERSION.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
Sage version 5.13.beta4, released 2013-11-24
Sage version 6.1.beta2, released 2013-12-23
53 changes: 24 additions & 29 deletions build/deps
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
# Let e.g. SAGE_ROOT/build/install pass options to sage-spkg, i.e. currently
# "-f", to force rebuilding dependent packages during an upgrade (#9896).

# Do not put an explicit path for sage-spkg here, it will be found in $PATH.
SAGE_SPKG = sage-spkg $${SAGE_SPKG_OPTS}
PIPE = $(SAGE_ROOT)/build/pipestatus

Expand Down Expand Up @@ -108,10 +109,10 @@ all-sage: \
$(INST)/$(NCURSES) \
$(INST)/$(ZLIB) \
$(INST)/$(ZNPOLY) \
scripts \
sage \
csage \
extcode
$(INST)/sage \
$(INST)/csage \
$(EXTCODE) \
$(SCRIPTS)

# TOOLCHAIN consists of dependencies determined by build/install,
# including for example the GCC package.
Expand All @@ -132,7 +133,7 @@ toolchain-deps:

# Everything needed to start up Sage using "./sage". Of course, not
# every part of Sage will work. It does not include Maxima for example.
SAGERUNTIME = scripts sage $(INST)/$(SAGENB) $(INST)/$(IPYTHON) $(INST)/$(GAP)
SAGERUNTIME = $(SCRIPTS) $(INST)/sage $(INST)/$(SAGENB) $(INST)/$(IPYTHON)

###############################################################################
# Building the base system
Expand All @@ -147,12 +148,8 @@ base: $(INST)/$(PREREQ) $(INST)/$(BZIP2) $(INST)/$(PATCH)
$(INST)/$(PREREQ):
$(PIPE) "base/$(PREREQ)-install 2>&1" "tee -a $(SAGE_LOGS)/$(PREREQ).log"

# If we are upgrading from a version 4.x of Sage, don't build bzip2.
# This is because the old sage-spkg script cannot install the new bzip2
# spkg (which is gzip compressed). We continue using the old bzip2
# installation (which is version 1.0.5 since sage-3.3), which is fine.
$(INST)/$(BZIP2): $(INST)/$(PREREQ)
$(PIPE) "$(SAGE_SPKG) $(BZIP2) 2>&1" "tee -a $(SAGE_LOGS)/$(BZIP2).log"; \
+$(PIPE) "$(SAGE_SPKG) $(BZIP2) 2>&1" "tee -a $(SAGE_LOGS)/$(BZIP2).log"

$(INST)/$(PATCH): $(INST)/$(BZIP2)
+$(PIPE) "$(SAGE_SPKG) $(PATCH) 2>&1" "tee -a $(SAGE_LOGS)/$(PATCH).log"
Expand Down Expand Up @@ -199,12 +196,7 @@ $(INST)/$(GRAPHS):
$(INST)/$(GLPK): $(INST)/$(MPIR) $(INST)/$(ZLIB)
+$(PIPE) "$(SAGE_SPKG) $(GLPK) 2>&1" "tee -a $(SAGE_LOGS)/$(GLPK).log"

# Python links against -lbz2. Technically speaking, we should add
# BZIP2 as dependency here. But we don't do that to avoid needless
# recompiles of Python when upgrading. Since bzip2 is part of the
# "base" target, we are guaranteed anyway that some version of bzip2
# is present.
$(INST)/$(PYTHON): $(INST)/$(ZLIB) \
$(INST)/$(PYTHON): $(INST)/$(ZLIB) $(INST)/$(BZIP2) \
$(INST)/$(READLINE) $(INST)/$(SQLITE) $(INST)/$(LIBPNG)
+$(PIPE) "$(SAGE_SPKG) $(PYTHON) 2>&1" "tee -a $(SAGE_LOGS)/$(PYTHON).log"

Expand Down Expand Up @@ -316,7 +308,7 @@ $(INST)/$(SQLITE): $(INST)/$(READLINE)
+$(PIPE) "$(SAGE_SPKG) $(SQLITE) 2>&1" "tee -a $(SAGE_LOGS)/$(SQLITE).log"

# To build SageTeX, you just need Python, but to test (SAGE_CHECK=yes)
# SageTeX, you actually need to run sage, produce plots,...
# SageTeX, you actually need to run Sage, produce plots,...
$(INST)/$(SAGETEX): $(INST)/$(PYTHON) \
$(SAGERUNTIME) $(INST)/$(MAXIMA) $(INST)/$(SCIPY) \
$(INST)/$(MATPLOTLIB) $(INST)/$(PIL) $(INST)/$(TACHYON)
Expand Down Expand Up @@ -416,8 +408,7 @@ $(INST)/$(SPHINX): $(INST)/$(PYTHON) $(INST)/$(SETUPTOOLS) $(INST)/$(DOCUTILS) \
$(INST)/$(JINJA2) $(INST)/$(PYGMENTS)
+$(PIPE) "$(SAGE_SPKG) $(SPHINX) 2>&1" "tee -a $(SAGE_LOGS)/$(SPHINX).log"

$(INST)/$(JINJA2): $(INST)/$(PYTHON) $(INST)/$(SETUPTOOLS) $(INST)/$(DOCUTILS) \

$(INST)/$(JINJA2): $(INST)/$(PYTHON) $(INST)/$(SETUPTOOLS) $(INST)/$(DOCUTILS)
+$(PIPE) "$(SAGE_SPKG) $(JINJA2) 2>&1" "tee -a $(SAGE_LOGS)/$(JINJA2).log"

$(INST)/$(PYGMENTS): $(INST)/$(PYTHON) $(INST)/$(SETUPTOOLS)
Expand All @@ -427,7 +418,7 @@ $(INST)/$(PYGMENTS): $(INST)/$(PYTHON) $(INST)/$(SETUPTOOLS)
# on the one hand, programs needed for the build/install process of the
# Sage library (e.g. JINJA2), and on the
# other hand all dependencies for Cython files (e.g. PARI, NTL, MPIR).
sage: \
$(INST)/sage: \
$(INST)/$(ATLAS) \
$(INST)/$(CEPHES) \
$(INST)/$(CLIQUER) \
Expand Down Expand Up @@ -465,21 +456,25 @@ sage: \
$(INST)/$(SINGULAR) \
$(INST)/$(SYMMETRICA) \
$(INST)/$(ZNPOLY) \
csage
+$(PIPE) "{ if [ -z $(SAGE_INSTALL_FETCH_ONLY) ]; then cd $(SAGE_SRC) && . ./bin/sage-env && time python setup.py install; fi; } 2>&1" "tee -a $(SAGE_LOGS)/sage-$(SAGE_VERSION).log"

scripts: $(SCRIPT_TARGETS)

extcode: $(EXTCODE_TARGETS)

csage: $(INST)/$(SCONS) \
$(INST)/csage
if [ -z "$$SAGE_INSTALL_FETCH_ONLY" ]; then \
cd $(SAGE_SRC) && source bin/sage-env && \
$(PIPE) 'time python setup.py install 2>&1' 'tee -a $(SAGE_LOGS)/sage-$(SAGE_VERSION).log' && \
touch $@; \
fi

$(INST)/csage: $(INST)/$(SCONS) \
$(INST)/$(MPIR) \
$(INST)/$(NTL) \
$(INST)/$(PARI) \
$(INST)/$(POLYBORI) \
$(INST)/$(PYNAC) \
$(INST)/$(PYTHON)
+$(PIPE) "{ if [ -z $(SAGE_INSTALL_FETCH_ONLY) ]; then cd $(SAGE_SRC)/c_lib && . ../bin/sage-env && time scons -Q install; fi; } 2>&1" "tee -a $(SAGE_LOGS)/csage-$(SAGE_VERSION).log"
if [ -z "$$SAGE_INSTALL_FETCH_ONLY" ]; then \
cd $(SAGE_SRC) && source bin/sage-env && cd c_lib && \
$(PIPE) 'time scons -Q install 2>&1' 'tee -a $(SAGE_LOGS)/csage-$(SAGE_VERSION).log' && \
touch $@; \
fi

$(INST)/ccache: $(BASE) $(INST)/$(ZLIB)
+$(PIPE) "$(SAGE_SPKG) ccache 2>&1" "tee -a $(SAGE_LOGS)/ccache.log"
Expand Down
80 changes: 26 additions & 54 deletions build/install
Original file line number Diff line number Diff line change
Expand Up @@ -23,21 +23,22 @@ export SAGE_ROOT SAGE_SRC SAGE_LOCAL SAGE_EXTCODE SAGE_LOGS SAGE_SPKG_INST SAGE_
echo `date -u "+%s"` > "$SAGE_ROOT/.BUILDSTART"

########################################################################
# Fixes for upgraded Sage versions
# Support for upgrading
########################################################################
# The script 'pipestatus' used to be autogenerated by this file. It
# should be present in any version of Sage starting with 4.5. In
# #11073, the autogeneration was removed, so we just check to see if
# the file is missing.
if [ ! -f pipestatus ]; then
cat >&2 <<EOF
Error: the script 'pipestatus' is missing. If you are trying to
upgrade, your original version of Sage is too old, so upgrading to a
5.x version of Sage won't work. Your options are:
- Upgrading first to sage-4.8 and then upgrading again to sage-5.x.
- Downloading a new binary version of Sage.
- Building a new source version from scratch.
# Check that we aren't accidentally upgrading from old (< 6.0)
# versions of Sage. See #14715.
# The file $SAGE_ROOT/spkg/install no longer exists in Sage 6.0,
# but it did exist in all earlier versions.
if [ -f "$SAGE_ROOT/spkg/install" ]; then
cat >&2 <<EOF
************************************************************************
Error: it is impossible to upgrade your version of Sage to version 6.0
or later. It is recommended to install the latest version of Sage from
scratch. If you currently have Sage 4.5 or later and really insist on
upgrading, it should still be possible to upgrade to Sage 5.13 with the
following command:
./sage -upgrade http://boxen.math.washington.edu/home/release/sage-5.13/sage-5.13
************************************************************************
EOF
exit 2
fi
Expand All @@ -46,40 +47,6 @@ if [ "$SAGE_UPGRADING" = yes ]; then
# We're doing an upgrade. Let build/Makefile call sage-spkg with
# "-f" to force rebuilding dependent packages, too:
export SAGE_SPKG_OPTS="-f"

# Avoid RM being set to "rm" (older versions of Sage did this):
# http://trac.sagemath.org/sage_trac/ticket/3537
if [ "$RM" = rm ]; then
export RM="rm -f"
fi

# Unset AS and LD if they are set to their default values,
# otherwise the AS and LD test from #14296 below will fail.
if [ "$AS" = as ]; then
unset AS
fi
if [ "$LD" = ld ]; then
unset LD
fi

# If we have an old version of sage-location,
# then manually fix the .la (libtool) files.
if grep 'lib64' "$SAGE_LOCAL/bin/sage-location" &>/dev/null; then
# sage-location does check lib64, so everything is fine.
true
else
echo "Found an old version of sage-location, manually fixing some Libtool files."
for d in "$SAGE_LOCAL/lib32" "$SAGE_LOCAL/lib64"; do
for la_file in "$d"/*.la; do
[ -w "$la_file" ] || continue
sed -i "s ^libdir=.* libdir='$d' " "$la_file"
done
done
fi

# The old sage-make_relative script is troublesome (#13407 and #14027).
# We simply delete it, its role is taken over by sage-location.
rm -f "$SAGE_LOCAL/bin/sage-make_relative"
fi

###############################################################################
Expand Down Expand Up @@ -364,6 +331,11 @@ cat >&3 <<EOF
EOF

# Use bash as shell for the Makefile (bash obviously exists, since
# this build/install script runs under bash).
echo >&3 "SHELL = `command -v bash`"
echo >&3

# If the user (or the Makefile) has set SAGE_PARALLEL_SPKG_BUILD=no,
# then turn off parallel building: disable just building multiple
# packages at the same time. Individual packages can still be built
Expand Down Expand Up @@ -523,7 +495,7 @@ for file in "$SAGE_SRC/bin/"*; do
echo >&3 " \$(SAGE_SRC)${file#$SAGE_SRC} \\"
done
echo >&3
echo >&3 'SCRIPT_TARGETS = \'
echo >&3 'SCRIPTS = \'
for file in "$SAGE_SRC/bin/"*; do
echo >&3 " \$(SAGE_LOCAL)${file#$SAGE_SRC} \\"
done
Expand All @@ -533,7 +505,7 @@ for file in `find "$SAGE_SRC"/ext -type f`; do
echo >&3 " \$(SAGE_SRC)${file#$SAGE_SRC} \\"
done
echo >&3
echo >&3 'EXTCODE_TARGETS = \'
echo >&3 'EXTCODE = \'
for file in `find "$SAGE_SRC"/ext -type f`; do
echo >&3 " \$(SAGE_EXTCODE)${file#$SAGE_SRC/ext} \\"
done
Expand Down Expand Up @@ -573,12 +545,12 @@ exec 3>&-

# Set MAKE to "make" if unset
if [ -z "$MAKE" ]; then
MAKE=make
export MAKE=make
fi

# * If "make" doesn't understand the -q option (although we require
# GNU make, which supports it), it should exit with a non-zero status
# which is not a problem.
# If "make" doesn't understand the -q option (although we require
# GNU make, which supports it), it should exit with a non-zero status
# which is not a problem.
if $MAKE -q "$@" >/dev/null 2>/dev/null; then
echo "Nothing to (re)build / all up-to-date."
exit 0
Expand Down
7 changes: 7 additions & 0 deletions build/pkgs/atlas/SPKG.txt
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,13 @@ The package can be configured via three environment variables:

== ChangeLog ==

=== atlas-3.10.1.p7, lapack-3.4.2 (Jean-Pierre Flori, 25 November 2013) ===
* Trac #14410: Let ATLAS build and install shared libraries on Cygwin.
* Bunch of modifications to the autotools project generating shared libraries
so that it does not invoke libtool on Cygwin.
* Fix a bug in spkg-install.
* Cleanup spkg-check.

=== atlas-3.10.1.p6, lapack-3.4.2 (Volker Braun, 11 October 2013) ===
* Trac #15270: Do not give up if the upstream shared library build
fails
Expand Down
1 change: 1 addition & 0 deletions build/pkgs/atlas/checksums.ini
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
tarball=atlas-VERSION.tar.bz2
sha1=9084d7bb0580c54dd233f0b164f07f60117e029c
md5=cae064f152ab5faf0cc61bf2801463ad
cksum=4284029515
2 changes: 1 addition & 1 deletion build/pkgs/atlas/package-version.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.10.1.p6
3.10.1.p7
Loading

0 comments on commit 8fc9c94

Please sign in to comment.