Merge pull request #117123 from collares/cypari-update

cypari2, cysignals: updates
This commit is contained in:
Timo Kaufmann 2021-03-24 21:38:04 +00:00 committed by GitHub
commit 82e1bfa53d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 48 additions and 16 deletions

View File

@ -101,6 +101,9 @@ stdenv.mkDerivation rec {
excludes = ["tst/testinstall/stringobj.tst"]; excludes = ["tst/testinstall/stringobj.tst"];
sha256 = "1mz5b4mbw2jdd1ypp5s0dy6pp0jsvwsxr2dm4kbkls20r1r192sc"; sha256 = "1mz5b4mbw2jdd1ypp5s0dy6pp0jsvwsxr2dm4kbkls20r1r192sc";
}) })
# fixes aarch64 gc crashes: https://github.com/gap-system/gap/pull/3965
./mark-genstackfuncbags-as-noinline.patch
]; ];
postPatch = '' postPatch = ''

View File

@ -0,0 +1,13 @@
diff --git a/src/gasman.c b/src/gasman.c
index 417811401..314a74190 100644
--- a/src/gasman.c
+++ b/src/gasman.c
@@ -1861,7 +1861,7 @@ void SparcStackFuncBags( void )
#endif
-void GenStackFuncBags ( void )
+NOINLINE void GenStackFuncBags ( void )
{
Bag * top; /* top of stack */
Bag * p; /* loop variable */

View File

@ -87,6 +87,14 @@ stdenv.mkDerivation rec {
rev = "2959ac792ebd6107fe87c9af1541083de5ba02d6"; rev = "2959ac792ebd6107fe87c9af1541083de5ba02d6";
sha256 = "sha256-bWIpEGir9Kawak5CJegBMNcHm/CqhWmdru+emeSsvO0="; sha256 = "sha256-bWIpEGir9Kawak5CJegBMNcHm/CqhWmdru+emeSsvO0=";
}) })
# fix intermittent errors in doctest/test.py: https://trac.sagemath.org/ticket/26912
(fetchSageDiff {
base = "9.3.beta8";
name = "set-cysignals-crash-ndebug.patch";
rev = "ca5257a5d0f32efc9f8f07e126020856270b1a18";
sha256 = "sha256-KViw63xE3O0eUiOYzoxNrr4NL+csql9GPJLDJCf/EZs=";
})
]; ];
# Patches needed because of package updates. We could just pin the versions of # Patches needed because of package updates. We could just pin the versions of
@ -153,6 +161,14 @@ stdenv.mkDerivation rec {
rev = "75c1516f0abb9e6f8c335e38e4031f6ef674ed30"; rev = "75c1516f0abb9e6f8c335e38e4031f6ef674ed30";
sha256 = "sha256-RukkieIZcXNrju904H2oyGKdtpdE+9vNzvyjN2IBNg0="; sha256 = "sha256-RukkieIZcXNrju904H2oyGKdtpdE+9vNzvyjN2IBNg0=";
}) })
# cypari 2.1.2 update (https://trac.sagemath.org/ticket/31029)
(fetchSageDiff {
base = "9.3.beta3";
name = "cypari-2.1.2-update.patch";
rev = "b9aadfd08e81d74ca7c229bb80eb853b592887d0";
sha256 = "sha256-eKaMy7kpu+YKdL8bPStgocxBCTfc2Z/10RrGy2LENFw=";
})
]; ];
patches = nixPatches ++ bugfixPatches ++ packageUpgradePatches; patches = nixPatches ++ bugfixPatches ++ packageUpgradePatches;

View File

@ -1,6 +1,7 @@
{ lib { lib
, buildPythonPackage , buildPythonPackage
, python , python
, fetchpatch
, fetchPypi , fetchPypi
, pari , pari
, gmp , gmp
@ -11,13 +12,23 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "cypari2"; pname = "cypari2";
# upgrade may break sage, please test the sage build or ping @timokau on upgrade # upgrade may break sage, please test the sage build or ping @timokau on upgrade
version = "2.1.1"; version = "2.1.2";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "df1ef62e771ec36e5a456f5fc8b51bc6745b70f0efdd0c7a30c3f0b5f1fb93db"; sha256 = "03cd45edab8716ebbfdb754e65fea72e873c73dc91aec098fe4a01e35324ac7a";
}; };
patches = [
# patch to avoid some segfaults in sage's totallyreal.pyx test.
# (https://trac.sagemath.org/ticket/27267). depends on Cython patch.
(fetchpatch {
name = "use-trashcan-for-gen.patch";
url = "https://git.sagemath.org/sage.git/plain/build/pkgs/cypari/patches/trashcan.patch?id=b6ea17ef8e4d652de0a85047bac8d41e90b25555";
sha256 = "sha256-w4kktWb9/aR9z4CjrUvAMOxEwRN2WkubaKzQttN8rU8=";
})
];
# This differs slightly from the default python installPhase in that it pip-installs # This differs slightly from the default python installPhase in that it pip-installs
# "." instead of "*.whl". # "." instead of "*.whl".
# That is because while the default install phase succeeds to build the package, # That is because while the default install phase succeeds to build the package,
@ -48,7 +59,7 @@ buildPythonPackage rec {
meta = with lib; { meta = with lib; {
description = "Cython bindings for PARI"; description = "Cython bindings for PARI";
license = licenses.gpl2; license = licenses.gpl2Plus;
maintainers = teams.sage.members; maintainers = teams.sage.members;
homepage = "https://github.com/defeo/cypari2"; homepage = "https://github.com/defeo/cypari2";
}; };

View File

@ -1,5 +1,4 @@
{ lib { lib
, fetchpatch
, fetchPypi , fetchPypi
, buildPythonPackage , buildPythonPackage
, cython , cython
@ -10,23 +9,13 @@ assert pariSupport -> pari != null;
buildPythonPackage rec { buildPythonPackage rec {
pname = "cysignals"; pname = "cysignals";
version = "1.10.2"; version = "1.10.3";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "1ckxzch3wk5cg80mppky5jib5z4fzslny3001r5zg4ar1ixbc1w1"; sha256 = "sha256-XEYGxDV3UCgxb3Jf23y4lOPK4Lb9L4YqDSlxdIRptDo=";
}; };
patches = [
# fixes intermittent crashes in Sage tests (including in interfaces/singular.py)
# will be included in cysignals 1.10.3: https://github.com/sagemath/cysignals/pull/127
(fetchpatch {
name = "fix-verify_exc_value.patch";
url = "https://github.com/sagemath/cysignals/commit/49a7eee4bba3ab8f340cf56c371fa4f5ed702dcc.patch";
sha256 = "sha256-Pfc5tL9VDSP6ftDoHoIb+MDi5rjYqr0PRfIajFuuYVs=";
})
];
# explicit check: # explicit check:
# build/src/cysignals/implementation.c:27:2: error: #error "cysignals must be compiled without _FORTIFY_SOURCE" # build/src/cysignals/implementation.c:27:2: error: #error "cysignals must be compiled without _FORTIFY_SOURCE"
hardeningDisable = [ hardeningDisable = [