Update for split GAP tree

- Add patch for FTBFS with latest giac (see bz 2160197)
- Fix eclib detection
- Add BR on pcre-devel
- Add BR on texlive-tex-gyre
- Rebuild for libfplll 5.4.4
This commit is contained in:
Jerry James 2023-01-13 10:16:25 -07:00
parent 98d6f9fdd6
commit fed038c815
4 changed files with 129 additions and 15 deletions

95
sagemath-giac.patch Normal file
View file

@ -0,0 +1,95 @@
--- build/pkgs/giac/spkg-configure.m4.orig 2022-05-15 16:11:10.000000000 -0600
+++ build/pkgs/giac/spkg-configure.m4 2023-01-11 11:45:33.450425286 -0700
@@ -2,7 +2,7 @@ SAGE_SPKG_CONFIGURE([giac], [
SAGE_SPKG_DEPCHECK([pari], [
dnl giac does not seem to reveal its patchlevel
m4_pushdef([GIAC_MIN_VERSION], [1.5.0])
- m4_pushdef([GIAC_MAX_VERSION], [1.7.999])
+ m4_pushdef([GIAC_MAX_VERSION], [1.9.999])
AC_CACHE_CHECK([for giac >= ]GIAC_MIN_VERSION[, <= ]GIAC_MAX_VERSION, [ac_cv_path_GIAC], [
AC_PATH_PROGS_FEATURE_CHECK([GIAC], [giac], [
giac_version=$($ac_path_GIAC --version 2> /dev/null | tail -1)
@@ -21,7 +21,7 @@ SAGE_SPKG_CONFIGURE([giac], [
AC_CHECK_HEADER([giac/giac.h], [
AC_SEARCH_LIBS([ConvertUTF16toUTF8], [giac], [
], [sage_spkg_install_giac=yes])
- ], [sage_spkg_install_giac=yes])
+ ], [sage_spkg_install_giac=yes], [typedef unsigned char uchar;])
m4_popdef([GIAC_MIN_VERSION])
])
])
--- configure.orig 2022-05-15 16:12:35.000000000 -0600
+++ configure 2023-01-11 12:07:02.062263416 -0700
@@ -24488,8 +24488,8 @@ $as_echo "no" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for giac >= 1.5.0, <= 1.7.999" >&5
-$as_echo_n "checking for giac >= 1.5.0, <= 1.7.999... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for giac >= 1.5.0, <= 1.9.999" >&5
+$as_echo_n "checking for giac >= 1.5.0, <= 1.9.999... " >&6; }
if ${ac_cv_path_GIAC+:} false; then :
$as_echo_n "(cached) " >&6
else
@@ -24562,7 +24562,7 @@ x$ax_compare_version_B" | sed 's/^ *//'
-e 's/[^0-9]//g'`
- ax_compare_version_B=`echo "1.7.999" | sed -e 's/\([0-9]*\)/Z\1Z/g' \
+ ax_compare_version_B=`echo "1.9.999" | sed -e 's/\([0-9]*\)/Z\1Z/g' \
-e 's/Z\([0-9]\)Z/Z0\1Z/g' \
-e 's/Z\([0-9][0-9]\)Z/Z0\1Z/g' \
-e 's/Z\([0-9][0-9][0-9]\)Z/Z0\1Z/g' \
@@ -24606,7 +24606,8 @@ $as_echo "$ac_cv_path_GIAC" >&6; }
if test -z "$ac_cv_path_GIAC"; then :
sage_spkg_install_giac=yes
fi
- ac_fn_cxx_check_header_mongrel "$LINENO" "giac/giac.h" "ac_cv_header_giac_giac_h" "$ac_includes_default"
+ ac_fn_cxx_check_header_mongrel "$LINENO" "giac/giac.h" "ac_cv_header_giac_giac_h" "typedef unsigned char uchar;
+$ac_includes_default"
if test "x$ac_cv_header_giac_giac_h" = xyes; then :
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ConvertUTF16toUTF8" >&5
--- src/sage/libs/giac/giac.pxd.orig 2022-05-15 16:11:11.000000000 -0600
+++ src/sage/libs/giac/giac.pxd 2023-01-11 13:45:10.696009927 -0700
@@ -12,6 +12,11 @@
from sage.libs.gmp.mpz cimport mpz_t, mpz_set
from libcpp.string cimport string
+cdef extern from *:
+ """
+ typedef unsigned char uchar;
+ """
+
cdef extern from "giac/giac.h" namespace "giac":
cdef cppclass context:
context()
--- src/sage/libs/giac/misc.h.orig 2022-05-15 16:11:11.000000000 -0600
+++ src/sage/libs/giac/misc.h 2023-01-11 11:13:01.163906686 -0700
@@ -1,5 +1,6 @@
#ifndef GIACPYMISC_H
#define GIACPYMISC_H
+typedef unsigned char uchar;
#include <giac/giac.h>
#include <fstream>
--- src/sage/symbolic/ginac/mpoly-giac.cpp.orig 2022-05-15 16:11:11.000000000 -0600
+++ src/sage/symbolic/ginac/mpoly-giac.cpp 2023-01-11 11:13:57.739878881 -0700
@@ -44,6 +44,7 @@
#include "function.h"
#include "utils.h"
+typedef unsigned char uchar;
#include <giac/global.h>
#include <giac/gausspol.h>
--- src/sage/symbolic/ginac/numeric.cpp.orig 2022-05-15 16:11:11.000000000 -0600
+++ src/sage/symbolic/ginac/numeric.cpp 2023-01-11 11:14:43.876040741 -0700
@@ -78,6 +78,7 @@
#undef _POSIX_C_SOURCE
#undef _XOPEN_SOURCE
+typedef unsigned char uchar;
#include <giac/global.h>
#include <giac/gausspol.h>
#include <giac/fraction.h>

View file

@ -111,18 +111,6 @@ diff -up src/sage/combinat/symmetric_group_algebra.py.orig src/sage/combinat/sym
The preferred way to construct the symmetric group algebra is to
go through the usual ``algebra`` method::
diff -up src/sage/env.py.orig src/sage/env.py
--- src/sage/env.py.orig 2022-05-15 16:11:11.000000000 -0600
+++ src/sage/env.py 2022-09-14 15:15:42.303907557 -0600
@@ -197,7 +197,7 @@ CONWAY_POLYNOMIALS_DATA_DIR = var("CONWA
GRAPHS_DATA_DIR = var("GRAPHS_DATA_DIR", join(SAGE_SHARE, "graphs"))
ELLCURVE_DATA_DIR = var("ELLCURVE_DATA_DIR", join(SAGE_SHARE, "ellcurves"))
POLYTOPE_DATA_DIR = var("POLYTOPE_DATA_DIR", join(SAGE_SHARE, "reflexive_polytopes"))
-GAP_ROOT_DIR = var("GAP_ROOT_DIR", join(SAGE_SHARE, "gap"))
+GAP_ROOT_DIR = var("GAP_ROOT_DIR", join('/usr', 'lib', "gap"))
THEBE_DIR = var("THEBE_DIR", join(SAGE_SHARE, "thebe"))
COMBINATORIAL_DESIGN_DATA_DIR = var("COMBINATORIAL_DESIGN_DATA_DIR", join(SAGE_SHARE, "combinatorial_designs"))
CREMONA_MINI_DATA_DIR = var("CREMONA_MINI_DATA_DIR", join(SAGE_SHARE, "cremona"))
diff -up src/sage/groups/abelian_gps/abelian_group_gap.py.orig src/sage/groups/abelian_gps/abelian_group_gap.py
--- src/sage/groups/abelian_gps/abelian_group_gap.py.orig 2022-05-15 16:11:11.000000000 -0600
+++ src/sage/groups/abelian_gps/abelian_group_gap.py 2022-09-14 15:23:05.702338312 -0600

11
sagemath-sphinx.patch Normal file
View file

@ -0,0 +1,11 @@
--- src/sage_docbuild/ext/sage_autodoc.py.orig 2022-05-15 16:11:11.000000000 -0600
+++ src/sage_docbuild/ext/sage_autodoc.py 2023-01-11 14:36:08.471075423 -0700
@@ -35,7 +35,7 @@ from docutils.statemachine import ViewLi
import sphinx
from sphinx.ext.autodoc import mock, ObjectMember
-from sphinx.ext.autodoc.importer import import_object, get_object_members, get_module_members
+from sphinx.ext.autodoc.importer import import_object, get_object_members
from sphinx.locale import _, __
from sphinx.pycode import ModuleAnalyzer
from sphinx.errors import PycodeError

View file

@ -84,7 +84,7 @@
Name: sagemath
Summary: A free open-source mathematics software system
Version: 9.6
Release: 7%{?dist}
Release: 8%{?dist}
# The file ${SAGE_ROOT}/COPYING.txt is the upstream license breakdown file.
# Note that many of the components listed in that file are not built in, but
# are used as external libraries, and therefore do not affect the License tag.
@ -183,6 +183,13 @@ Patch22: %{name}-use-after-free.patch
# Adapt to changes in python 3.11
Patch23: %{name}-python3.11.patch
# Adapt to changes in sphinx
Patch24: %{name}-sphinx.patch
# Temporary workaround for https://bugzilla.redhat.com/show_bug.cgi?id=2160197
# Remove this when that bug is fixed
Patch25: %{name}-giac.patch
BuildRequires: 4ti2
BuildRequires: 4ti2-devel
BuildRequires: appstream
@ -326,6 +333,7 @@ BuildRequires: pkgconfig(isl)
BuildRequires: pkgconfig(libavdevice)
BuildRequires: pkgconfig(libcurl)
BuildRequires: pkgconfig(libgvc)
BuildRequires: pkgconfig(libpcre)
BuildRequires: pkgconfig(libpng)
BuildRequires: pkgconfig(libsemigroups)
BuildRequires: pkgconfig(libzmq)
@ -459,6 +467,7 @@ BuildRequires: tex(anyfontsize.sty)
BuildRequires: tex(fncychap.sty)
BuildRequires: tex(makecmds.sty)
BuildRequires: tex(subfigure.sty)
BuildRequires: tex(tgtermes.sty)
BuildRequires: tex(tikz-qtree.sty)
BuildRequires: tex(tkz-berge.sty)
BuildRequires: tex(xy.sty)
@ -1025,6 +1034,9 @@ chmod a-x src/sage/modules/fp_graded/{,steenrod/}*.py
# GAP does not have enough memory to load the entire workspace
sed -i 's/64m/256m/' src/sage/interfaces/gap.py
# Update the GAP root
sed -i '/GAP_ROOT_DIR/s,SAGE_SHARE,"%{_libdir}",' src/sage/env.py
# Fix detection of Fedora
sed -i 's/yum/rpm/' build/bin/sage-guess-package-system
@ -1034,8 +1046,8 @@ sed -i 's/3\.11\.0/3.12.0/g' configure
# Allow use of libfplll 5.4.2
sed -i 's/5\.4\.1/5.4.2/g' configure
# Allow use of eclib 20220621
sed -i 's/20210625/20220621/g' configure
# Allow use of eclib 20221012
sed -i 's/20210625/20221012/g' configure
# Do not build with -march=native
sed -i 's/CFLAGS_MARCH="-march=native"/CFLAGS_MARCH=""/' configure
@ -2043,6 +2055,14 @@ end
########################################################################
%changelog
* Thu Jan 12 2023 Jerry James <loganjerry@gmail.com> - 9.6-8
- Update for split GAP tree
- Add patch for FTBFS with latest giac (see bz 2160197)
- Fix eclib detection
- Add BR on pcre-devel
- Add BR on texlive-tex-gyre
- Rebuild for libfplll 5.4.4
* Tue Dec 20 2022 Jerry James <loganjerry@gmail.com> - 9.6-7
- Fix failure to install (bz 2154932)
- Fix failure to find nauty binaries (bz 2125737)