Skip to content

Commit

Permalink
Trac #32257: Cygwin patch for Singular
Browse files Browse the repository at this point in the history
As noted in https://trac.sagemath.org/ticket/32001#comment:1, pynac
fails on `cygwin-standard`. We add a patch to `singular` to fix this

Singular/Singular#1109 (merged)

URL: https://trac.sagemath.org/32257
Reported by: mkoeppe
Ticket author(s): Matthias Koeppe
Reviewer(s): Dima Pasechnik, Samuel Lelièvre
  • Loading branch information
Release Manager committed Jul 23, 2021
2 parents ec795bf + d4156f7 commit 0e26ac3
Showing 1 changed file with 97 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
From 5830ce6deabefaeaec492f1054cc619af4e4e2d2 Mon Sep 17 00:00:00 2001
From: Matthias Koeppe <mkoeppe@math.ucdavis.edu>
Date: Tue, 20 Jul 2021 19:19:32 -0700
Subject: [PATCH] factory/canonicalform.h: Add more FACTORY_PUBLIC

---
factory/canonicalform.h | 42 ++++++++++++++++++++---------------------
1 file changed, 21 insertions(+), 21 deletions(-)

diff --git a/factory/canonicalform.h b/factory/canonicalform.h
index 82dfa57e1..8fd158385 100644
--- a/factory/canonicalform.h
+++ b/factory/canonicalform.h
@@ -172,27 +172,27 @@ public:
int ilog2() const;

// comparison operators
- friend bool operator == ( const CanonicalForm&, const CanonicalForm& );
- friend bool operator != ( const CanonicalForm&, const CanonicalForm& );
- friend bool operator > ( const CanonicalForm&, const CanonicalForm& );
- friend bool operator < ( const CanonicalForm&, const CanonicalForm& );
+ friend FACTORY_PUBLIC bool operator == ( const CanonicalForm&, const CanonicalForm& );
+ friend FACTORY_PUBLIC bool operator != ( const CanonicalForm&, const CanonicalForm& );
+ friend FACTORY_PUBLIC bool operator > ( const CanonicalForm&, const CanonicalForm& );
+ friend FACTORY_PUBLIC bool operator < ( const CanonicalForm&, const CanonicalForm& );

// arithmetic operators
- friend CF_NO_INLINE CanonicalForm operator - ( const CanonicalForm& );
+ friend CF_NO_INLINE FACTORY_PUBLIC CanonicalForm operator - ( const CanonicalForm& );

- friend void FACTORY_PUBLIC divrem ( const CanonicalForm&, const CanonicalForm&, CanonicalForm&, CanonicalForm& );
- friend bool divremt ( const CanonicalForm&, const CanonicalForm&, CanonicalForm&, CanonicalForm& );
- friend bool tryDivremt ( const CanonicalForm&, const CanonicalForm&, CanonicalForm&, CanonicalForm&, const CanonicalForm&, bool& );
+ friend FACTORY_PUBLIC void divrem ( const CanonicalForm&, const CanonicalForm&, CanonicalForm&, CanonicalForm& );
+ friend FACTORY_PUBLIC bool divremt ( const CanonicalForm&, const CanonicalForm&, CanonicalForm&, CanonicalForm& );
+ friend FACTORY_PUBLIC bool tryDivremt ( const CanonicalForm&, const CanonicalForm&, CanonicalForm&, CanonicalForm&, const CanonicalForm&, bool& );

- friend CanonicalForm bgcd ( const CanonicalForm &, const CanonicalForm & );
- friend CanonicalForm bextgcd ( const CanonicalForm &, const CanonicalForm &, CanonicalForm &, CanonicalForm & );
+ friend FACTORY_PUBLIC CanonicalForm bgcd ( const CanonicalForm &, const CanonicalForm & );
+ friend FACTORY_PUBLIC CanonicalForm bextgcd ( const CanonicalForm &, const CanonicalForm &, CanonicalForm &, CanonicalForm & );

// input/output
#ifndef NOSTREAMIO
void print( OSTREAM&, char * ) const;
void print( OSTREAM& ) const;
- friend OSTREAM& operator << ( OSTREAM&, const CanonicalForm& );
- friend ISTREAM& operator >> ( ISTREAM&, CanonicalForm& );
+ friend FACTORY_PUBLIC OSTREAM& operator << ( OSTREAM&, const CanonicalForm& );
+ friend FACTORY_PUBLIC ISTREAM& operator >> ( ISTREAM&, CanonicalForm& );
#endif /* NOSTREAMIO */

// obsolete methods
@@ -234,7 +234,7 @@ mod ( const CanonicalForm&, const CanonicalForm& );
/*BEGINPUBLIC*/

//{{{ function declarations from canonicalform.cc
-CanonicalForm blcm ( const CanonicalForm & f, const CanonicalForm & g );
+CanonicalForm FACTORY_PUBLIC blcm ( const CanonicalForm & f, const CanonicalForm & g );

CanonicalForm FACTORY_PUBLIC power ( const CanonicalForm & f, int n );

@@ -244,23 +244,23 @@ CanonicalForm FACTORY_PUBLIC power ( const Variable & v, int n );
//{{{ function declarations from cf_gcd.cc
CanonicalForm FACTORY_PUBLIC gcd ( const CanonicalForm&, const CanonicalForm& );

-CanonicalForm gcd_poly ( const CanonicalForm & f, const CanonicalForm & g );
+CanonicalForm FACTORY_PUBLIC gcd_poly ( const CanonicalForm & f, const CanonicalForm & g );

-CanonicalForm lcm ( const CanonicalForm&, const CanonicalForm& );
+CanonicalForm FACTORY_PUBLIC lcm ( const CanonicalForm&, const CanonicalForm& );

-CanonicalForm pp ( const CanonicalForm& );
+CanonicalForm FACTORY_PUBLIC pp ( const CanonicalForm& );

-CanonicalForm content ( const CanonicalForm& );
+CanonicalForm FACTORY_PUBLIC content ( const CanonicalForm& );

-CanonicalForm content ( const CanonicalForm&, const Variable& );
+CanonicalForm FACTORY_PUBLIC content ( const CanonicalForm&, const Variable& );

-CanonicalForm icontent ( const CanonicalForm & f );
+CanonicalForm FACTORY_PUBLIC icontent ( const CanonicalForm & f );

-CanonicalForm vcontent ( const CanonicalForm & f, const Variable & x );
+CanonicalForm FACTORY_PUBLIC vcontent ( const CanonicalForm & f, const Variable & x );
//}}}

//{{{ function declarations from cf_ops.cc
-CanonicalForm swapvar ( const CanonicalForm &, const Variable &, const Variable & );
+CanonicalForm FACTORY_PUBLIC swapvar ( const CanonicalForm &, const Variable &, const Variable & );

CanonicalForm FACTORY_PUBLIC replacevar ( const CanonicalForm &, const Variable &, const Variable & );

--
2.31.1

0 comments on commit 0e26ac3

Please sign in to comment.