Rebuild for ntl 8.1.0.

Also:
- Future-proof the gap package names.
This commit is contained in:
Jerry James 2015-01-15 13:56:26 -07:00
parent 9cdd8dd20a
commit 0433dc3f83
2 changed files with 80 additions and 7 deletions

65
sagemath-ntl.patch Normal file
View file

@ -0,0 +1,65 @@
NTL 8.x introduces a new class, NTL::WrappedPtr<T>. Unfortunately, Cython
does not add a namespace identifier to the name of the existing WrappedPtr
class, generated from the patched files below, resulting in ambiguous
references to that name. This patch simply changes the name of the existing
class to avoid the name collision.
diff -up src/sage/libs/polybori/decl.pxd.orig src/sage/libs/polybori/decl.pxd
--- src/sage/libs/polybori/decl.pxd.orig 2014-11-23 07:58:14.000000000 -0700
+++ src/sage/libs/polybori/decl.pxd 2015-01-13 20:00:00.000000000 -0700
@@ -291,10 +291,10 @@ cdef extern from "pb_wrap.h":
int (* size)()
PBPolyEntry (* get "operator[]")(int)
- ctypedef struct PBFglmStrategy "WrappedPtr<FGLMStrategy>":
+ ctypedef struct PBFglmStrategy "WrappedPointer<FGLMStrategy>":
PBPolyVector (* main "operator->()->main")()
- PBFglmStrategy PBFglmStrategy_Constructor "WrappedPtr<FGLMStrategy>" \
+ PBFglmStrategy PBFglmStrategy_Constructor "WrappedPointer<FGLMStrategy>" \
(PBRing from_ring, PBRing to_ring, PBPolyVector vec)
cdef cppclass PBGBStrategy "GroebnerStrategy":
@@ -349,7 +349,7 @@ cdef extern from "pb_wrap.h":
PBPolyVector (* faugereStepDense)(PBPolyVector v)
bint (* generators_leadingTerms_owns "generators.leadingTerms.owns")(PBMonom term)
- PBGBStrategy PBGBStrategy_Constructor "WrappedPtr<GroebnerStrategy>" \
+ PBGBStrategy PBGBStrategy_Constructor "WrappedPointer<GroebnerStrategy>" \
(PBRing r)
diff -up src/sage/libs/polybori/pb_wrap.h.orig src/sage/libs/polybori/pb_wrap.h
--- src/sage/libs/polybori/pb_wrap.h.orig 2014-11-23 07:58:14.000000000 -0700
+++ src/sage/libs/polybori/pb_wrap.h 2015-01-13 20:00:00.000000000 -0700
@@ -177,23 +177,23 @@ PyObject* preallocated_to_PyString(const
template <class Type>
-class WrappedPtr:
+class WrappedPointer:
public boost::shared_ptr<Type> {
- typedef WrappedPtr self;
+ typedef WrappedPointer self;
typedef boost::shared_ptr<Type> base;
public:
- WrappedPtr(): base() {}
- WrappedPtr(const self& rhs): base(rhs) {}
+ WrappedPointer(): base() {}
+ WrappedPointer(const self& rhs): base(rhs) {}
template <class T1>
- WrappedPtr(const T1& arg): base(new Type(arg)) {}
+ WrappedPointer(const T1& arg): base(new Type(arg)) {}
template <class T1, class T2>
- WrappedPtr(const T1& arg1, const T2& arg2): base(new Type(arg1, arg2)) {}
+ WrappedPointer(const T1& arg1, const T2& arg2): base(new Type(arg1, arg2)) {}
template <class T1, class T2, class T3>
- WrappedPtr(const T1& arg1, const T2& arg2, const T3& arg3):
+ WrappedPointer(const T1& arg1, const T2& arg2, const T3& arg3):
base(new Type(arg1, arg2, arg3)) {}
operator Type&() { return base::operator*();}

View file

@ -39,7 +39,7 @@ Name: sagemath
Group: Applications/Engineering Group: Applications/Engineering
Summary: A free open-source mathematics software system Summary: A free open-source mathematics software system
Version: 6.4.1 Version: 6.4.1
Release: 1%{?dist} Release: 2%{?dist}
# The file ${SAGE_ROOT}/COPYING.txt is the upstream license breakdown file # The file ${SAGE_ROOT}/COPYING.txt is the upstream license breakdown file
# Additionally, every $files section has a comment with the license name # Additionally, every $files section has a comment with the license name
# before files with that license # before files with that license
@ -139,6 +139,9 @@ Patch21: %{name}-cryptominisat.patch
# https://bugzilla.redhat.com/show_bug.cgi?id=974769 # https://bugzilla.redhat.com/show_bug.cgi?id=974769
Patch22: %{name}-sympy.patch Patch22: %{name}-sympy.patch
# Fix a name clash with NTL
Patch23: %{name}-ntl.patch
BuildRequires: 4ti2 BuildRequires: 4ti2
BuildRequires: atlas-devel BuildRequires: atlas-devel
BuildRequires: cddlib-tools BuildRequires: cddlib-tools
@ -159,10 +162,10 @@ BuildRequires: flint-devel >= 2.3
BuildRequires: gmp-ecm-devel BuildRequires: gmp-ecm-devel
BuildRequires: gap BuildRequires: gap
BuildRequires: GAPDoc BuildRequires: GAPDoc
BuildRequires: gap-character-tables
BuildRequires: gap-libs BuildRequires: gap-libs
BuildRequires: gap-sonata BuildRequires: gap-pkg-ctbllib
BuildRequires: gap-table-of-marks BuildRequires: gap-pkg-sonata
BuildRequires: gap-pkg-tomlib
BuildRequires: gc-devel BuildRequires: gc-devel
BuildRequires: gd-devel BuildRequires: gd-devel
BuildRequires: gfan BuildRequires: gfan
@ -227,10 +230,10 @@ Requires: ecl
Requires: firefox Requires: firefox
Requires: gap Requires: gap
Requires: GAPDoc Requires: GAPDoc
Requires: gap-character-tables
Requires: gap-libs Requires: gap-libs
Requires: gap-sonata Requires: gap-pkg-ctbllib
Requires: gap-table-of-marks Requires: gap-pkg-sonata
Requires: gap-pkg-tomlib
Requires: genus2reduction Requires: genus2reduction
Requires: gfan Requires: gfan
Requires: gmp-ecm Requires: gmp-ecm
@ -601,6 +604,7 @@ popd
%patch21 %patch21
%patch22 %patch22
%patch23
sed -e 's|@@SAGE_ROOT@@|%{SAGE_ROOT}|' \ sed -e 's|@@SAGE_ROOT@@|%{SAGE_ROOT}|' \
-e 's|@@SAGE_DOC@@|%{SAGE_DOC}|' \ -e 's|@@SAGE_DOC@@|%{SAGE_DOC}|' \
@ -1305,6 +1309,10 @@ exit 0
######################################################################## ########################################################################
%changelog %changelog
* Thu Jan 15 2015 Jerry James <loganjerry@gmail.com> - 6.4.1-2
- Rebuild for ntl 8.1.0
- Future-proof the gap package names
* Wed Nov 26 2014 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 6.4.1-1 * Wed Nov 26 2014 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 6.4.1-1
- Update to sagemath 6.4.1 (#1095282) - Update to sagemath 6.4.1 (#1095282)