Merge pull request #54202 from timokau/sage-8.6

sage: 8.5 -> 8.6
This commit is contained in:
Timo Kaufmann 2019-01-17 21:12:17 +01:00 committed by GitHub
commit 73368f468a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 17 additions and 91 deletions

View File

@ -7,7 +7,7 @@
, graphs
, elliptic_curves
, polytopes_db
, gap-libgap-compatible
, gap
, ecl
, combinatorial_designs
, jmol
@ -35,7 +35,7 @@ writeTextFile rec {
export GRAPHS_DATA_DIR='${graphs}/share/graphs'
export ELLCURVE_DATA_DIR='${elliptic_curves}/share/ellcurves'
export POLYTOPE_DATA_DIR='${polytopes_db}/share/reflexive_polytopes'
export GAP_ROOT_DIR='${gap-libgap-compatible}/share/gap/build-dir'
export GAP_ROOT_DIR='${gap}/share/gap/build-dir'
export ECLDIR='${ecl}/lib/ecl-${ecl.version}/'
export COMBINATORIAL_DESIGN_DATA_DIR="${combinatorial_designs}/share/combinatorial_designs"
export CREMONA_MINI_DATA_DIR="${elliptic_curves}/share/cremona"

View File

@ -1,13 +0,0 @@
diff --git a/src/sage/libs/gap/util.pyx b/src/sage/libs/gap/util.pyx
index 5ff67107c1..1318df86fd 100644
--- a/src/sage/libs/gap/util.pyx
+++ b/src/sage/libs/gap/util.pyx
@@ -165,7 +165,7 @@ def _guess_gap_root():
EXAMPLES::
sage: from sage.libs.gap.util import _guess_gap_root
- sage: _guess_gap_root()
+ sage: _guess_gap_root() # not tested (not necessary on nixos)
The gap-4.5.5.spkg (or later) seems to be not installed!
...
"""

View File

@ -14,8 +14,7 @@
, python3
, pkg-config
, pari
, gap-libgap-compatible
, libgap
, gap
, ecl
, maxima-ecl
, singular
@ -70,8 +69,7 @@ let
binutils.bintools
pkg-config
pari
gap-libgap-compatible
libgap
gap
ecl
maxima-ecl
singular
@ -118,7 +116,7 @@ writeTextFile rec {
# set dependent vars, like JUPYTER_CONFIG_DIR
source "${sagelib.src}/src/bin/sage-env"
export PATH="${runtimepath}:$orig_path" # sage-env messes with PATH
export PATH="$RUNTIMEPATH_PREFIX:${runtimepath}:$orig_path" # sage-env messes with PATH
export SAGE_LOGS="$TMPDIR/sage-logs"
export SAGE_DOC="''${SAGE_DOC_OVERRIDE:-doc-placeholder}"
@ -133,7 +131,7 @@ writeTextFile rec {
export LDFLAGS='${
lib.concatStringsSep " " (map (pkg: "-L${pkg}/lib") [
flint
libgap
gap
glpk
gmp
mpfr
@ -153,7 +151,7 @@ writeTextFile rec {
gmp.dev
glpk
flint
libgap
gap
pynac
mpfr.dev
])

View File

@ -9,14 +9,14 @@
# all get the same sources with the same patches applied.
stdenv.mkDerivation rec {
version = "8.5";
version = "8.6";
name = "sage-src-${version}";
src = fetchFromGitHub {
owner = "sagemath";
repo = "sage";
rev = version;
sha256 = "08mb9626phsls2phdzqxsnp2df5pn5qr72m0mm4nncby26pwn19c";
sha256 = "1vs3pbgbqpg0qnwr018bqsdmm7crgjp310cx8zwh7za3mv1cw5j3";
};
# Patches needed because of particularities of nix or the way this is packaged.
@ -46,8 +46,6 @@ stdenv.mkDerivation rec {
# tests) are also run. That is necessary to test dochtml individually. See
# https://trac.sagemath.org/ticket/26110 for an upstream discussion.
./patches/Only-test-py2-py3-optional-tests-when-all-of-sage-is.patch
./patches/dont-test-guess-gaproot.patch
];
# Patches needed because of package updates. We could just pin the versions of
@ -60,12 +58,13 @@ stdenv.mkDerivation rec {
# Fetch a diff between `base` and `rev` on sage's git server.
# Used to fetch trac tickets by setting the `base` to the last release and the
# `rev` to the last commit of the ticket.
fetchSageDiff = { base, rev, ...}@args: (
fetchSageDiff = { base, rev, name ? "sage-diff-${base}-${rev}.patch", ...}@args: (
fetchpatch ({
url = "https://git.sagemath.org/sage.git/patch?id2=${base}&id=${rev}";
inherit name;
url = "https://git.sagemath.org/sage.git/rawdiff?id2=${base}&id=${rev}";
# We don't care about sage's own build system (which builds all its dependencies).
# Exclude build system changes to avoid conflicts.
excludes = [ "build/*" ];
excludes = [ "/build/*" ];
} // builtins.removeAttrs args [ "rev" "base" ])
);
in [
@ -82,21 +81,6 @@ stdenv.mkDerivation rec {
# https://trac.sagemath.org/ticket/26315
./patches/giac-1.5.0.patch
# https://trac.sagemath.org/ticket/26326
# needs to be split because there is a merge commit in between
(fetchSageDiff {
name = "networkx-2.2-1.patch";
base = "8.4";
rev = "68f5ad068184745b38ba6716bf967c8c956c52c5";
sha256 = "112b5ywdqgyzgvql2jj5ss8la9i8rgnrzs8vigsfzg4shrcgh9p6";
})
(fetchSageDiff {
name = "networkx-2.2-2.patch";
base = "626485bbe5f33bf143d6dfba4de9c242f757f59b~1";
rev = "db10d327ade93711da735a599a67580524e6f7b4";
sha256 = "09v87id25fa5r9snfn4mv79syhc77jxfawj5aizmdpwdmpgxjk1f";
})
# https://trac.sagemath.org/ticket/26442
(fetchSageDiff {
name = "cypari2-2.0.3.patch";

View File

@ -6,8 +6,7 @@
, pkg-config
, three
, singular
, libgap
, gap-libgap-compatible
, gap
, giac
, maxima-ecl
, pari
@ -35,8 +34,7 @@ let
three
pynac
giac
libgap
gap-libgap-compatible
gap
pari
gmp
gfan

View File

@ -20,7 +20,7 @@
, jinja2
, lcalc
, lrcalc
, libgap
, gap
, linbox
, m4ri
, m4rie
@ -88,7 +88,7 @@ buildPythonPackage rec {
glpk
gsl
lcalc
libgap
gap
libmpc
linbox
lrcalc

View File

@ -10822,47 +10822,6 @@ in
libgadu = callPackage ../development/libraries/libgadu { };
# Deprecated since gap itself now ships with a library component. This is
# still necessary for sage 8.5 but will be removed once we switch to sage
# 8.6.
gap-libgap-compatible = let
version = "4r8p6";
pkgVer = "2016_11_12-14_25";
in
(gap.override { packageSet = "minimal"; }).overrideAttrs (oldAttrs: {
name = "libgap-${oldAttrs.pname}-${version}";
inherit version;
src = fetchurl {
url = "https://www.gap-system.org/pub/gap/gap48/tar.bz2/gap${version}_${pkgVer}.tar.bz2";
sha256 = "19n2p1mdg33s2x9rs51iak7rgndc1cwr56jyqnah0g1ydgg1yh6b";
};
# libgap targets not yet available for 4r8p6
installPhase = ''
mkdir -p "$out/bin" "$out/share/gap/"
mkdir -p "$out/share/gap"
echo "Copying files to target directory"
cp -ar . "$out/share/gap/build-dir"
makeWrapper "$out/share/gap/build-dir/bin/gap.sh" "$out/bin/gap" \
--set GAP_DIR $out/share/gap/build-dir
'';
patches = [
# don't install any packages by default (needed for interop with libgap, probably obsolete with 4r10
(fetchpatch {
url = "https://git.sagemath.org/sage.git/plain/build/pkgs/gap/patches/nodefaultpackages.patch?id=07d6c37d18811e2b377a9689790a7c5e24da16ba";
sha256 = "1xwj766m3axrxbkyx13hy3q8s2wkqxy3m6mgpwq3c3n4vk3v416v";
})
# fix infinite loop in writeandcheck() when writing an error message fails.
(fetchpatch {
url = "https://git.sagemath.org/sage.git/plain/build/pkgs/gap/patches/writeandcheck.patch?id=07d6c37d18811e2b377a9689790a7c5e24da16ba";
sha256 = "1r1511x4kc2i2mbdq1b61rb6p3misvkf1v5qy3z6fmn6vqwziaz1";
})
];
});
libgap = callPackage ../development/libraries/libgap { };
libgda = callPackage ../development/libraries/libgda { };
libgdamm = callPackage ../development/libraries/libgdamm { };