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

Commit

Permalink
Trac #17222: Merge branch #17220 due to merge conflict with #18145
Browse files Browse the repository at this point in the history
  • Loading branch information
cheuberg committed Apr 17, 2015
2 parents 5f574b4 + 1a8e8dc commit 9db5332
Show file tree
Hide file tree
Showing 1,411 changed files with 95,652 additions and 36,126 deletions.
12 changes: 11 additions & 1 deletion .gitignore
Expand Up @@ -4,6 +4,7 @@
/local
/logs
/upstream
/src/mac-app/build

#############################
# Autotools generated files #
Expand All @@ -29,7 +30,9 @@
.\#*

# Vim
*.s[a-w][a-z]
*.swp
*.swo
*.swn
*.un~
.netrwhist

Expand Down Expand Up @@ -68,3 +71,10 @@ $RECYCLE.BIN/

# SublimeText
*.sublime-workspace

#################
# SageMathCloud #
#################
*.sage-chat
*.sage-history
*.syncdoc*
6 changes: 6 additions & 0 deletions COPYING.txt
Expand Up @@ -30,10 +30,12 @@ SOFTWARE LICENSE
-----------------------------------------------------------------------
atlas Modified BSD
boehm_gc MIT-like license (see below)
backports_ssl_match_hostname Python License
boost_cropped Boost Software License (see below)
bzip2 BSD-ish (see below)
cddlib GPLv2+
cephes "may be used freely" (see below)
certifi ISC
cliquer GPLv2+
conway_polynomials None (database)
cvxopt GPLv2+
Expand Down Expand Up @@ -65,6 +67,7 @@ iml COPYING is GPLv2, source files state modified BSD
ipython Modified BSD
jinja2 Modified BSD
jmol LGPLv2.1+
jsonschema MIT License
lcalc GPLv2+
libfplll LGPLv2.1+
libgap GPLv3+
Expand All @@ -73,8 +76,11 @@ linbox LGPLv2.1+
lrcalc GPLv2+
m4ri GPLv2+
m4rie GPLv2+
markupsafe Simplified BSD
mathjax Apache License 2.0
matplotlib Matplotlib License (BSD compatible, see below)
maxima See below
mistune Modified BSD
mpc LGPLv3+
mpfi COPYING is GPLv2, source files state LGPLv2.1+
mpfr LGPLv3+
Expand Down
9 changes: 8 additions & 1 deletion Makefile
Expand Up @@ -20,7 +20,7 @@ build: logs configure
"../$(PIPE)" \
"env SAGE_PARALLEL_SPKG_BUILD='$(SAGE_PARALLEL_SPKG_BUILD)' ./install all 2>&1" \
"tee -a ../logs/install.log"
./sage -b
+./sage -b

# Preemptively download all standard upstream source tarballs.
download:
Expand Down Expand Up @@ -59,6 +59,13 @@ doc: doc-html
doc-html: build
$(PIPE) "./sage --docbuild --no-pdf-links all html $(SAGE_DOCBUILD_OPTS) 2>&1" "tee -a logs/dochtml.log"

# 'doc-html-no-plot': build docs without building the graphics coming
# from the '.. plot' directive, in case you want to save a few
# megabytes of disk space. 'doc-clean' is a prerequisite because the
# presence of graphics is cached in src/doc/output.
doc-html-no-plot: build doc-clean
$(PIPE) "./sage --docbuild --no-pdf-links --no-plot all html $(SAGE_DOCBUILD_OPTS) 2>&1" "tee -a logs/dochtml.log"

doc-html-mathjax: build
$(PIPE) "./sage --docbuild --no-pdf-links all html -j $(SAGE_DOCBUILD_OPTS) 2>&1" "tee -a logs/dochtml.log"

Expand Down
2 changes: 1 addition & 1 deletion VERSION.txt
@@ -1 +1 @@
Sage version 6.5.beta6, released 2015-01-24
Sage version 6.7.beta1, released 2015-04-15
40 changes: 33 additions & 7 deletions build/deps
Expand Up @@ -23,10 +23,12 @@ all:
# All targets except for the base packages
all-sage: \
$(INST)/$(ATLAS) \
$(INST)/$(BACKPORTS_SSL_MATCH_HOSTNAME) \
$(INST)/$(BOEHM_GC) \
$(INST)/$(BOOST_CROPPED) \
$(INST)/$(CDDLIB) \
$(INST)/$(CEPHES) \
$(INST)/$(CERTIFI) \
$(INST)/$(CLIQUER) \
$(INST)/$(COMBINATORIAL_DESIGNS) \
$(INST)/$(CONWAY) \
Expand Down Expand Up @@ -58,15 +60,19 @@ all-sage: \
$(INST)/$(IPYTHON) \
$(INST)/$(JINJA2) \
$(INST)/$(JMOL) \
$(INST)/$(JSONSCHEMA) \
$(INST)/$(LCALC) \
$(INST)/$(LRCALC) \
$(INST)/$(LIBGAP) \
$(INST)/$(LIBPNG) \
$(INST)/$(LINBOX) \
$(INST)/$(M4RI) \
$(INST)/$(M4RIE) \
$(INST)/$(MARKUPSAFE) \
$(INST)/$(MATHJAX) \
$(INST)/$(MATPLOTLIB) \
$(INST)/$(MAXIMA) \
$(INST)/$(MISTUNE) \
$(INST)/$(MPC) \
$(INST)/$(MPFI) \
$(INST)/$(MPFR) \
Expand Down Expand Up @@ -308,6 +314,12 @@ $(INST)/$(GAP): $(INST)/$(NCURSES) $(INST)/$(READLINE) $(INST)/$(SAGE_MP_LIBRARY
$(INST)/$(LIBGAP): $(INST)/$(GAP)
+$(PIPE) "$(SAGE_SPKG) $(LIBGAP) 2>&1" "tee -a $(SAGE_LOGS)/$(LIBGAP).log"

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

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

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

Expand Down Expand Up @@ -367,7 +379,7 @@ $(INST)/$(FREETYPE): $(INST)/$(LIBPNG)
$(INST)/$(LIBPNG): $(INST)/$(ZLIB)
+$(PIPE) "$(SAGE_SPKG) $(LIBPNG) 2>&1" "tee -a $(SAGE_LOGS)/$(LIBPNG).log"

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

$(INST)/$(DATEUTIL): $(INST)/$(PYTHON) $(INST)/$(SIX) $(INST)/$(SETUPTOOLS)
Expand All @@ -379,9 +391,19 @@ $(INST)/$(PYPARSING): $(INST)/$(PYTHON)
$(INST)/$(PYZMQ): $(INST)/$(PYTHON) $(INST)/$(ZEROMQ) $(INST)/$(SETUPTOOLS)
+$(PIPE) "$(SAGE_SPKG) $(PYZMQ) 2>&1" "tee -a $(SAGE_LOGS)/$(PYZMQ).log"

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

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

$(INST)/$(TORNADO): $(INST)/$(PYTHON) $(INST)/$(SETUPTOOLS) \
$(INST)/$(BACKPORTS_SSL_MATCH_HOSTNAME) $(INST)/$(CERTIFI)
+$(PIPE) "$(SAGE_SPKG) $(TORNADO) 2>&1" "tee -a $(SAGE_LOGS)/$(TORNADO).log"

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

$(INST)/$(MATPLOTLIB): $(INST)/$(PYTHON) $(INST)/$(NUMPY) \
$(INST)/$(FREETYPE) $(INST)/$(LIBPNG) \
$(INST)/$(GDMODULE) $(INST)/$(DATEUTIL) \
Expand Down Expand Up @@ -450,7 +472,10 @@ $(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)/$(MARKUPSAFE): $(INST)/$(PYTHON) $(INST)/$(SETUPTOOLS)
+$(PIPE) "$(SAGE_SPKG) $(MARKUPSAFE) 2>&1" "tee -a $(SAGE_LOGS)/$(MARKUPSAFE).log"

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

$(INST)/$(PYGMENTS): $(INST)/$(PYTHON) $(INST)/$(SETUPTOOLS)
Expand Down Expand Up @@ -502,18 +527,19 @@ $(INST)/sage: \
$(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' && \
$(PIPE) 'time $(MAKE) sage 2>&1' 'tee -a $(SAGE_LOGS)/sage-$(SAGE_VERSION).log' && \
touch $@; \
fi

$(INST)/csage: $(INST)/$(SCONS) \
$(INST)/$(SAGE_MP_LIBRARY) \
$(INST)/$(NTL) \
$(INST)/$(PARI) \
$(INST)/$(PYTHON)
$(INST)/$(PYTHON) \
$(CSAGE_SOURCES)
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' && \
cd $(SAGE_SRC) && source bin/sage-env && \
$(PIPE) 'time $(MAKE) csage 2>&1' 'tee -a $(SAGE_LOGS)/csage-$(SAGE_VERSION).log' && \
touch $@; \
fi

Expand Down
11 changes: 11 additions & 0 deletions build/install
Expand Up @@ -296,11 +296,13 @@ newest_version() {
cat >&5 <<EOF
# Standard packages
ATLAS=`newest_version atlas`
BACKPORTS_SSL_MATCH_HOSTNAME=`newest_version backports_ssl_match_hostname`
BOEHM_GC=`newest_version boehm_gc`
BOOST_CROPPED=`newest_version boost_cropped`
BZIP2=`newest_version bzip2`
CDDLIB=`newest_version cddlib`
CEPHES=`newest_version cephes`
CERTIFI=`newest_version certifi`
CLIQUER=`newest_version cliquer`
COMBINATORIAL_DESIGNS=`newest_version combinatorial_designs`
CONWAY=`newest_version conway_polynomials`
Expand Down Expand Up @@ -333,15 +335,19 @@ IML=`newest_version iml`
IPYTHON=`newest_version ipython`
JINJA2=`newest_version jinja2`
JMOL=`newest_version jmol`
JSONSCHEMA=`newest_version jsonschema`
LCALC=`newest_version lcalc`
LRCALC=`newest_version lrcalc`
LIBGAP=`newest_version libgap`
LIBPNG=`newest_version libpng`
LINBOX=`newest_version linbox`
M4RI=`newest_version m4ri`
M4RIE=`newest_version m4rie`
MARKUPSAFE=`newest_version markupsafe`
MATHJAX=`newest_version mathjax`
MATPLOTLIB=`newest_version matplotlib`
MAXIMA=`newest_version maxima`
MISTUNE=`newest_version mistune`
MPC=`newest_version mpc`
MPFI=`newest_version mpfi`
MPFR=`newest_version mpfr`
Expand Down Expand Up @@ -418,6 +424,11 @@ if [ "$need_to_install_gcc" = yes ]; then
fi
echo >&5

echo >&5 'CSAGE_SOURCES = \'
for file in "$SAGE_SRC/c_lib/src/"*.c "$SAGE_SRC/c_lib/src/"*.cpp "$SAGE_SRC/c_lib/include"/*.h; do
echo >&5 " \$(SAGE_SRC)${file#$SAGE_SRC} \\"
done
echo >&5
echo >&5 'SCRIPT_SOURCES = \'
for file in "$SAGE_SRC/bin/"*; do
echo >&5 " \$(SAGE_SRC)${file#$SAGE_SRC} \\"
Expand Down
28 changes: 28 additions & 0 deletions build/pkgs/arb/patches/dedekind_sum.patch
@@ -0,0 +1,28 @@
Patch tests of arb-2.5 to be compatible with flint-2.4.4

Arb's testsuite, src/acb_modular/test/t-epsilon_arg.c, calls
fmpq_dedekind_sum. However, this function does not exist in
flint-2.4.4.

fmpq_dedekind_sum was introduced in
https://github.com/wbhart/flint2/commit/64f656fb8db591ea11db606c7905de9f47b05e84
and arith_dedekind_sum is now an alias to fmpq_dedekind_sum.

So I patch src/acb_modular/test/t-epsilon_arg.c to call
arith_dedekind_sum instead of fmpq_dedekind_sum.

See also http://trac.sagemath.org/ticket/17688#comment:8 .

diff -r -u src/acb_modular/test/t-epsilon_arg.c new/acb_modular/test/t-epsilon_arg.c
--- src/acb_modular/test/t-epsilon_arg.c 2015-01-28 19:20:07.000000000 +0200
+++ new/acb_modular/test/t-epsilon_arg.c 2015-02-11 14:07:30.947675579 +0200
@@ -49,7 +49,7 @@
fmpz_mul_ui(fmpq_denref(arg), c, 12);
fmpq_canonicalise(arg);

- fmpq_dedekind_sum(t, d, c);
+ arith_dedekind_sum(t, d, c);
fmpq_sub(arg, arg, t);

fmpq_clear(t);
Only in new/acb_modular/test: t-epsilon_arg.c~
9 changes: 9 additions & 0 deletions build/pkgs/arb/spkg-install
Expand Up @@ -2,6 +2,15 @@

cd src

for patch in ../patches/*.patch; do
[ -r "$patch" ] || continue # Skip non-existing or non-readable patches
patch -p1 <"$patch"
if [ $? -ne 0 ]; then
echo >&2 "Error applying '$patch'"
exit 1
fi
done

./configure --prefix="$SAGE_LOCAL" --with-flint="$SAGE_LOCAL" \
--with-gmp="$SAGE_LOCAL" --with-mpfr="$SAGE_LOCAL"
if [ $? -ne 0 ]; then
Expand Down
6 changes: 6 additions & 0 deletions build/pkgs/atlas/spkg-install
Expand Up @@ -367,6 +367,9 @@ def configure_fast():
elif conf['IA64?']:
print('Fast configuration on Itanium.')
arch = 'IA64Itan2'
elif conf['ARM?']:
print('Fast configuration on ARM.')
arch='ARMv7'
else:
raise NotImplementedError('I don\'t know a "fast" configuration for your cpu.')
return (arch, isa_ext, thread_limit)
Expand All @@ -392,6 +395,9 @@ def configure_base():
elif conf['IA64?']:
print('Base configuration on Itanium.')
arch = 'IA64Itan'
elif conf['ARM?']:
print('Base configuration on ARM.')
arch = 'ARMv6'
else:
raise NotImplementedError('I don\'t know a "base" configuration for your cpu.')
return (arch, isa_ext, thread_limit)
Expand Down
24 changes: 24 additions & 0 deletions build/pkgs/backports_ssl_match_hostname/SPKG.txt
@@ -0,0 +1,24 @@
= backports.ssl_match_hostname =

== Description ==

This backport brings match_hostname() to users of
Python 2.x

== License ==

Python Software Foundation License

== Upstream Contact ==

Home page: https://pypi.python.org/pypi/backports.ssl_match_hostname

== Dependencies ==

Python, Setuptools

== Special Update/Build Instructions ==

* Unpack the tarball
* rename backports.ssl_match_hostname -> backports_ssl_match_hostname
* Tar as backports_ssl_match_hostname.VERSION.tar.gz
4 changes: 4 additions & 0 deletions build/pkgs/backports_ssl_match_hostname/checksums.ini
@@ -0,0 +1,4 @@
tarball=backports_ssl_match_hostname-VERSION.tar.gz
sha1=194503d8b47066c2ce8d23cab707d19d6ada2eb9
md5=5def436c23fa2bc09aedf221d61b7017
cksum=132706006
@@ -0,0 +1 @@
3.4.0.2
15 changes: 15 additions & 0 deletions build/pkgs/backports_ssl_match_hostname/spkg-install
@@ -0,0 +1,15 @@
#!/usr/bin/env bash

if [ -z "$SAGE_LOCAL" ]; then
echo >&2 "SAGE_LOCAL undefined ... exiting"
echo >&2 "Maybe run 'sage --sh'?"
exit 1
fi

cd src

python setup.py install
if [ $? -ne 0 ]; then
echo "Error installing backports.ssl_match_hostname ... exiting"
exit 1
fi
28 changes: 28 additions & 0 deletions build/pkgs/cbc/SPKG.txt
@@ -0,0 +1,28 @@
= COIN-OR / CBC =

== Description ==

The Computational Infrastructure for Operations Research (COIN-OR**,
or simply COIN) project is an initiative to spur the development of
open-source software for the operations research community.

The COIN Branch and Cut solver (CBC) is an open-source
mixed-integer program (MIP) solver written in C++. CBC is intended to
be used primarily as a callable library to create customized
branch-and-cut solvers. A basic, stand-alone executable version is
also available. CBC is an active open-source project led by John
Forrest at www.coin-or.org.

== License ==

Eclipse Public License, Version 1.0 (EPL-1.0)
(http://opensource.org/licenses/eclipse-1.0)

== Upstream Contact ==

* John Forrest <jjforre@us.ibm.com>
* Robin Lougee-Heimer

== Project Home Page ==

* https://projects.coin-or.org/Cbc
4 changes: 4 additions & 0 deletions build/pkgs/cbc/checksums.ini
@@ -0,0 +1,4 @@
tarball=cbc-VERSION.tar.gz
sha1=d937d6af1ee8838d44659ebd4cf7bbb1b20372ce
md5=2134576233cc95cdfedc63991a4944ec
cksum=1215468781
1 change: 1 addition & 0 deletions build/pkgs/cbc/package-version.txt
@@ -0,0 +1 @@
2.9.4

0 comments on commit 9db5332

Please sign in to comment.