[singular] 42/45: update debian/patches directory

felix salfelder felix-guest at alioth.debian.org
Sat Sep 14 13:57:08 UTC 2013


This is an automated email from the git hooks/post-receive script.

felix-guest pushed a commit to branch master-3-1-5
in repository singular.

commit 1708e9364c01e213bc7cfa7225e8c80f8b073ec0
Author: Felix Salfelder <felix at salfelder.org>
Date:   Tue Sep 3 22:24:59 2013 +0200

    update debian/patches directory
---
 debian/.git-dpm                                    |    2 +-
 debian/patches/0012-singular_15435.patch.patch     |  173 +++++++
 ...ng-over-a-finite-field-returns-reducible-.patch |   63 +++
 ...ng-over-a-finite-field-sometimes-returns-.patch |   24 +
 ...nfigure-should-check-for-nanosleep-in-lrt.patch |  261 +++++++++++
 ...singular_part_of_changeset_baadc0f7.patch.patch |   22 +
 ...-tag-some-documents-so-they-are-not-built.patch |  493 ++++++++++++++++++++
 ...0018-439-factorize-returns-wrong-constant.patch |   45 ++
 debian/patches/series                              |    7 +
 9 files changed, 1089 insertions(+), 1 deletion(-)

diff --git a/debian/.git-dpm b/debian/.git-dpm
index 3a29080..13efe66 100644
--- a/debian/.git-dpm
+++ b/debian/.git-dpm
@@ -1,5 +1,5 @@
 # see git-dpm(1) from git-dpm package
-77dc62e5ef186d11b5d376af96bc0b71471387f0
+622961fcdb1c5f17be2260b8be5c36d85825660b
 622961fcdb1c5f17be2260b8be5c36d85825660b
 c2d0b997183a0cc911fdef0861638995bafededc
 c2d0b997183a0cc911fdef0861638995bafededc
diff --git a/debian/patches/0012-singular_15435.patch.patch b/debian/patches/0012-singular_15435.patch.patch
new file mode 100644
index 0000000..8cd4d25
--- /dev/null
+++ b/debian/patches/0012-singular_15435.patch.patch
@@ -0,0 +1,173 @@
+From 543679eef52dd2782f42da04dd9088f1fe835ebf Mon Sep 17 00:00:00 2001
+From: Felix Salfelder <felix at salfelder.org>
+Date: Tue, 3 Sep 2013 19:45:23 +0200
+Subject: singular_15435.patch
+
+---
+ kernel/gring.cc | 14 +++-----------
+ kernel/ring.cc  | 25 +++++++++++++++++++------
+ kernel/ring.h   | 10 +++++-----
+ 3 files changed, 27 insertions(+), 22 deletions(-)
+
+diff --git a/kernel/gring.cc b/kernel/gring.cc
+index c811cca..d0abac9 100644
+--- a/kernel/gring.cc
++++ b/kernel/gring.cc
+@@ -35,9 +35,6 @@
+ #include <kernel/p_Mult_q.h>
+ #include <kernel/pInline1.h>
+ 
+-// dirty tricks:
+-#include <kernel/p_MemAdd.h>
+-
+ #include <kernel/gring.h>
+ #include <kernel/sca.h>
+ #include <summator.h>
+@@ -458,8 +455,6 @@ poly gnc_mm_Mult_pp(const poly m, const poly p, const ring r)
+   return( gnc_p_Mult_mm_Common(p_Copy(p,r), m, 0, r) );
+ }
+ 
+-
+-
+ poly gnc_mm_Mult_nn(int *F0, int *G0, const ring r)
+ /* destroys nothing, no coeffs and exps */
+ {
+@@ -467,7 +462,6 @@ poly gnc_mm_Mult_nn(int *F0, int *G0, const ring r)
+   int i,j;
+   int iF,jG,iG;
+   int rN=r->N;
+-  int ExpSize=(((rN+1)*sizeof(int)+sizeof(long)-1)/sizeof(long))*sizeof(long);
+ 
+   int *F=(int *)omAlloc0((rN+1)*sizeof(int));
+   int *G=(int *)omAlloc0((rN+1)*sizeof(int));
+@@ -476,7 +470,7 @@ poly gnc_mm_Mult_nn(int *F0, int *G0, const ring r)
+   // pExpVectorCopy(F,F0);
+   memcpy(G, G0,(rN+1)*sizeof(int));
+   //  pExpVectorCopy(G,G0);
+-  F[0]=0; /* important for p_MemAdd */
++  F[0]=0;
+   G[0]=0;
+ 
+   iF=rN;
+@@ -500,10 +494,9 @@ poly gnc_mm_Mult_nn(int *F0, int *G0, const ring r)
+   if (iF<=jG)
+     /* i.e. no mixed exp_num , MERGE case */
+   {
+-    p_MemAdd_LengthGeneral(F, G, ExpSize/sizeof(long));
++    { for(int ii=rN;ii>0;ii--) F[ii]+=G[ii]; }
+     p_SetExpV(out,F,r);
+     p_Setm(out,r);
+-    //    omFreeSize((ADDRESS)F,ExpSize);
+     freeT(F,rN);
+     freeT(G,rN);
+     return(out);
+@@ -562,11 +555,10 @@ poly gnc_mm_Mult_nn(int *F0, int *G0, const ring r)
+       }
+       cff=totcff;
+     }
+-    p_MemAdd_LengthGeneral(F, G, ExpSize/sizeof(long));
++    { for(int ii=rN;ii>0;ii--) F[ii]+=G[ii]; }
+     p_SetExpV(out,F,r);
+     p_Setm(out,r);
+     p_SetCoeff(out,cff,r);
+-    //    p_MemAdd_NegWeightAdjust(p, r); ??? do we need this?
+     freeT(F,rN);
+     freeT(G,rN);
+     return(out);
+diff --git a/kernel/ring.cc b/kernel/ring.cc
+index 6b30f7f..e9819c9 100644
+--- a/kernel/ring.cc
++++ b/kernel/ring.cc
+@@ -1898,7 +1898,7 @@ BOOLEAN rSamePolyRep(ring r1, ring r2)
+   return TRUE;
+ }
+ 
+-rOrderType_t rGetOrderType(ring r)
++rOrderType_t rGetOrderType(const ring r)
+ {
+   // check for simple ordering
+   if (rHasSimpleOrder(r))
+@@ -2016,7 +2016,7 @@ BOOLEAN rOrder_is_WeightedOrdering(rRingOrder_t order)
+   }
+ }
+ 
+-BOOLEAN rHasSimpleOrderAA(ring r)
++BOOLEAN rHasSimpleOrderAA(const ring r)
+ {
+   if (r->order[0] == ringorder_unspec) return TRUE;
+   int blocks = rBlocks(r) - 1;
+@@ -2047,7 +2047,7 @@ BOOLEAN rHasSimpleOrderAA(ring r)
+ }
+ 
+ // return TRUE if p_SetComp requires p_Setm
+-BOOLEAN rOrd_SetCompRequiresSetm(ring r)
++BOOLEAN rOrd_SetCompRequiresSetm(const ring r)
+ {
+   if (r->typ != NULL)
+   {
+@@ -2061,15 +2061,28 @@ BOOLEAN rOrd_SetCompRequiresSetm(ring r)
+   return FALSE;
+ }
+ 
++BOOLEAN rHasModuleOrder(const ring r)
++{
++  int i=0;
++  loop
++  {
++    if ((r->order[i]==ringorder_c)
++    || (r->order[i]==ringorder_C))
++      return TRUE;
++    if (r->order[i]==0) return FALSE;
++    i++;
++  }
++  return FALSE; /*never reached */
++}
+ // return TRUE if p->exp[r->pOrdIndex] holds total degree of p */
+-BOOLEAN rOrd_is_Totaldegree_Ordering(ring r)
++BOOLEAN rOrd_is_Totaldegree_Ordering(const ring r)
+ {
+   // Hmm.... what about Syz orderings?
+   return (rVar(r) > 1 &&
+           ((rHasSimpleOrder(r) &&
+            (rOrder_is_DegOrdering((rRingOrder_t)r->order[0]) ||
+             rOrder_is_DegOrdering(( rRingOrder_t)r->order[1]))) ||
+-           (rHasSimpleOrderAA(r) &&
++           (rHasSimpleOrderAA(r) && rHasModuleOrder(r) &&
+             (rOrder_is_DegOrdering((rRingOrder_t)r->order[1]) ||
+              rOrder_is_DegOrdering((rRingOrder_t)r->order[2])))));
+ }
+@@ -2084,7 +2097,7 @@ BOOLEAN rOrd_is_WeightedDegree_Ordering(ring r =currRing)
+            rOrder_is_WeightedOrdering(( rRingOrder_t)r->order[1])));
+ }
+ 
+-BOOLEAN rIsPolyVar(int v, ring r)
++BOOLEAN rIsPolyVar(int v, const ring r)
+ {
+   int  i=0;
+   while(r->order[i]!=0)
+diff --git a/kernel/ring.h b/kernel/ring.h
+index 58f8e8b..6b12af8 100644
+--- a/kernel/ring.h
++++ b/kernel/ring.h
+@@ -408,16 +408,16 @@ BOOLEAN rHasSimpleLexOrder(const ring r);
+ //{ return (r->OrdSgn==-1); }
+ #define rHasLocalOrMixedOrdering(R) ((R)->OrdSgn==-1)
+ #define rHasLocalOrMixedOrdering_currRing() (pOrdSgn==-1)
+-BOOLEAN rOrd_is_Totaldegree_Ordering(ring r =currRing);
++BOOLEAN rOrd_is_Totaldegree_Ordering(const ring r =currRing);
+ 
+ /// return TRUE if p_SetComp requires p_Setm
+-BOOLEAN rOrd_SetCompRequiresSetm(ring r);
+-rOrderType_t    rGetOrderType(ring r);
++BOOLEAN rOrd_SetCompRequiresSetm(const ring r);
++rOrderType_t    rGetOrderType(const ring r);
+ 
+ /// returns TRUE if var(i) belongs to p-block
+-BOOLEAN rIsPolyVar(int i, ring r = currRing);
++BOOLEAN rIsPolyVar(int i, const ring r = currRing);
+ 
+-static inline BOOLEAN rOrd_is_Comp_dp(ring r)
++static inline BOOLEAN rOrd_is_Comp_dp(const ring r)
+ {
+   return ((r->order[0] == ringorder_c || r->order[0] == ringorder_C) &&
+           r->order[1] == ringorder_dp &&
diff --git a/debian/patches/0013-440-Factoring-over-a-finite-field-returns-reducible-.patch b/debian/patches/0013-440-Factoring-over-a-finite-field-returns-reducible-.patch
new file mode 100644
index 0000000..570553f
--- /dev/null
+++ b/debian/patches/0013-440-Factoring-over-a-finite-field-returns-reducible-.patch
@@ -0,0 +1,63 @@
+From 77890570ffe3fc8d287f654e4c6427c568b6c6fb Mon Sep 17 00:00:00 2001
+From: Felix Salfelder <felix at salfelder.org>
+Date: Tue, 3 Sep 2013 20:05:34 +0200
+Subject: 440: Factoring over a finite field returns reducible factor
+
+---
+ factory/cf_util.cc    | 16 ++++++++++++++++
+ factory/cf_util.h     |  1 +
+ factory/facFqBivar.cc |  2 +-
+ 3 files changed, 18 insertions(+), 1 deletion(-)
+
+diff --git a/factory/cf_util.cc b/factory/cf_util.cc
+index 02ecb42..91c3303 100644
+--- a/factory/cf_util.cc
++++ b/factory/cf_util.cc
+@@ -46,6 +46,22 @@ int ilog2 (int a)
+   return n;
+ }
+ 
++int igcd( int a, int b )
++{
++    if ( a < 0 ) a = -a;
++    if ( b < 0 ) b = -b;
++
++    int c;
++
++    while ( b != 0 )
++    {
++        c = a % b;
++        a = b;
++        b = c;
++    }
++    return a;
++}
++
+ #include<stdio.h>
+ #include<stdlib.h>
+ 
+diff --git a/factory/cf_util.h b/factory/cf_util.h
+index 17baf35..e7309b0 100644
+--- a/factory/cf_util.h
++++ b/factory/cf_util.h
+@@ -13,6 +13,7 @@
+ 
+ int ipower ( int b, int n );
+ int ilog2 (int a);
++int igcd (int a, int b);
+ 
+ /*BEGINPUBLIC*/
+ void factoryError_intern(const char *s);
+diff --git a/factory/facFqBivar.cc b/factory/facFqBivar.cc
+index 79b968b..f526883 100644
+--- a/factory/facFqBivar.cc
++++ b/factory/facFqBivar.cc
+@@ -5928,7 +5928,7 @@ biFactorize (const CanonicalForm& F, const ExtensionInfo& info)
+   
+   //check trivial case
+   if (degree (A) == 1 || degree (A, 1) == 1 || 
+-      (size (A) == 2 && gcd (degree (A), degree (A,1)).isOne()))
++      (size (A) == 2 && igcd (degree (A), degree (A,1))==1))
+   {
+     factors.append (A);
+ 
diff --git a/debian/patches/0014-441-Factoring-over-a-finite-field-sometimes-returns-.patch b/debian/patches/0014-441-Factoring-over-a-finite-field-sometimes-returns-.patch
new file mode 100644
index 0000000..e7b845b
--- /dev/null
+++ b/debian/patches/0014-441-Factoring-over-a-finite-field-sometimes-returns-.patch
@@ -0,0 +1,24 @@
+From 433381fba228255090df6120538779253ff6eb79 Mon Sep 17 00:00:00 2001
+From: Felix Salfelder <felix at salfelder.org>
+Date: Tue, 3 Sep 2013 20:05:52 +0200
+Subject: 441: Factoring over a finite field sometimes returns wrong result
+
+---
+ factory/facFqBivar.cc | 4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+diff --git a/factory/facFqBivar.cc b/factory/facFqBivar.cc
+index f526883..6fad188 100644
+--- a/factory/facFqBivar.cc
++++ b/factory/facFqBivar.cc
+@@ -6102,9 +6102,7 @@ biFactorize (const CanonicalForm& F, const ExtensionInfo& info)
+       if (extension)
+       {
+         CFList source, dest;
+-        ExtensionInfo info2= ExtensionInfo (beta, alpha, delta, gamma, k,
+-                             info.getGFName(), info.isInExtension());
+-        appendMapDown (factors, A, info2, source, dest);
++        appendMapDown (factors, A, info, source, dest);
+       }
+       else
+         factors.append (A);
diff --git a/debian/patches/0015-443-configure-should-check-for-nanosleep-in-lrt.patch b/debian/patches/0015-443-configure-should-check-for-nanosleep-in-lrt.patch
new file mode 100644
index 0000000..4484d0c
--- /dev/null
+++ b/debian/patches/0015-443-configure-should-check-for-nanosleep-in-lrt.patch
@@ -0,0 +1,261 @@
+From 77bd1f4d689d2b928dfa44ebb241e68e2da38afb Mon Sep 17 00:00:00 2001
+From: Felix Salfelder <felix at salfelder.org>
+Date: Tue, 3 Sep 2013 20:07:59 +0200
+Subject: 443: configure should check for nanosleep in -lrt
+
+---
+ Singular/configure    | 139 ++++++++++++++++++++++++--------------------------
+ Singular/configure.in |  11 ++--
+ 2 files changed, 70 insertions(+), 80 deletions(-)
+
+diff --git a/Singular/configure b/Singular/configure
+index 3a3b6a5..6fd69b0 100755
+--- a/Singular/configure
++++ b/Singular/configure
+@@ -742,12 +742,8 @@ LDFLAGS
+ LIBS
+ CPPFLAGS
+ CPP
+-CPPFLAGS
+ CXX
+ CXXFLAGS
+-LDFLAGS
+-LIBS
+-CPPFLAGS
+ CCC
+ CXXCPP'
+ 
+@@ -5413,9 +5409,9 @@ _ACEOF
+ fi
+ 
+ fi
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for  in -lnsl" >&5
+-$as_echo_n "checking for  in -lnsl... " >&6; }
+-if ${ac_cv_lib_nsl_+:} false; then :
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lnsl" >&5
++$as_echo_n "checking for gethostbyname in -lnsl... " >&6; }
++if ${ac_cv_lib_nsl_gethostbyname+:} false; then :
+   $as_echo_n "(cached) " >&6
+ else
+   ac_check_lib_save_LIBS=$LIBS
+@@ -5429,27 +5425,27 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ #ifdef __cplusplus
+ extern "C"
+ #endif
+-char  ();
++char gethostbyname ();
+ int
+ main ()
+ {
+-return  ();
++return gethostbyname ();
+   ;
+   return 0;
+ }
+ _ACEOF
+ if ac_fn_c_try_link "$LINENO"; then :
+-  ac_cv_lib_nsl_=yes
++  ac_cv_lib_nsl_gethostbyname=yes
+ else
+-  ac_cv_lib_nsl_=no
++  ac_cv_lib_nsl_gethostbyname=no
+ fi
+ rm -f core conftest.err conftest.$ac_objext \
+     conftest$ac_exeext conftest.$ac_ext
+ LIBS=$ac_check_lib_save_LIBS
+ fi
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nsl_" >&5
+-$as_echo "$ac_cv_lib_nsl_" >&6; }
+-if test "x$ac_cv_lib_nsl_" = xyes; then :
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nsl_gethostbyname" >&5
++$as_echo "$ac_cv_lib_nsl_gethostbyname" >&6; }
++if test "x$ac_cv_lib_nsl_gethostbyname" = xyes; then :
+   cat >>confdefs.h <<_ACEOF
+ #define HAVE_LIBNSL 1
+ _ACEOF
+@@ -5458,9 +5454,9 @@ _ACEOF
+ 
+ fi
+ 
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for  in -lsocket" >&5
+-$as_echo_n "checking for  in -lsocket... " >&6; }
+-if ${ac_cv_lib_socket_+:} false; then :
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for accept in -lsocket" >&5
++$as_echo_n "checking for accept in -lsocket... " >&6; }
++if ${ac_cv_lib_socket_accept+:} false; then :
+   $as_echo_n "(cached) " >&6
+ else
+   ac_check_lib_save_LIBS=$LIBS
+@@ -5474,27 +5470,27 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ #ifdef __cplusplus
+ extern "C"
+ #endif
+-char  ();
++char accept ();
+ int
+ main ()
+ {
+-return  ();
++return accept ();
+   ;
+   return 0;
+ }
+ _ACEOF
+ if ac_fn_c_try_link "$LINENO"; then :
+-  ac_cv_lib_socket_=yes
++  ac_cv_lib_socket_accept=yes
+ else
+-  ac_cv_lib_socket_=no
++  ac_cv_lib_socket_accept=no
+ fi
+ rm -f core conftest.err conftest.$ac_objext \
+     conftest$ac_exeext conftest.$ac_ext
+ LIBS=$ac_check_lib_save_LIBS
+ fi
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_" >&5
+-$as_echo "$ac_cv_lib_socket_" >&6; }
+-if test "x$ac_cv_lib_socket_" = xyes; then :
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_accept" >&5
++$as_echo "$ac_cv_lib_socket_accept" >&6; }
++if test "x$ac_cv_lib_socket_accept" = xyes; then :
+   cat >>confdefs.h <<_ACEOF
+ #define HAVE_LIBSOCKET 1
+ _ACEOF
+@@ -5503,6 +5499,52 @@ _ACEOF
+ 
+ fi
+ 
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sem_open in -lrt" >&5
++$as_echo_n "checking for sem_open in -lrt... " >&6; }
++if ${ac_cv_lib_rt_sem_open+:} false; then :
++  $as_echo_n "(cached) " >&6
++else
++  ac_check_lib_save_LIBS=$LIBS
++LIBS="-lrt  $LIBS"
++cat confdefs.h - <<_ACEOF >conftest.$ac_ext
++/* end confdefs.h.  */
++
++/* Override any GCC internal prototype to avoid an error.
++   Use char because int might match the return type of a GCC
++   builtin and then its argument prototype would still apply.  */
++#ifdef __cplusplus
++extern "C"
++#endif
++char sem_open ();
++int
++main ()
++{
++return sem_open ();
++  ;
++  return 0;
++}
++_ACEOF
++if ac_fn_c_try_link "$LINENO"; then :
++  ac_cv_lib_rt_sem_open=yes
++else
++  ac_cv_lib_rt_sem_open=no
++fi
++rm -f core conftest.err conftest.$ac_objext \
++    conftest$ac_exeext conftest.$ac_ext
++LIBS=$ac_check_lib_save_LIBS
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rt_sem_open" >&5
++$as_echo "$ac_cv_lib_rt_sem_open" >&6; }
++if test "x$ac_cv_lib_rt_sem_open" = xyes; then :
++  cat >>confdefs.h <<_ACEOF
++#define HAVE_LIBRT 1
++_ACEOF
++
++  LIBS="-lrt $LIBS"
++
++fi
++
++
+ SAVE_LIBS=${LIBS}
+ LIBS=
+ 
+@@ -8978,55 +9020,6 @@ else
+ $as_echo "no" >&6; }
+ fi
+ 
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for  in -lrt" >&5
+-$as_echo_n "checking for  in -lrt... " >&6; }
+-if ${ac_cv_lib_rt_+:} false; then :
+-  $as_echo_n "(cached) " >&6
+-else
+-  ac_check_lib_save_LIBS=$LIBS
+-LIBS="-lrt  $LIBS"
+-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+-/* end confdefs.h.  */
+-
+-/* Override any GCC internal prototype to avoid an error.
+-   Use char because int might match the return type of a GCC
+-   builtin and then its argument prototype would still apply.  */
+-#ifdef __cplusplus
+-extern "C"
+-#endif
+-char  ();
+-int
+-main ()
+-{
+-return  ();
+-  ;
+-  return 0;
+-}
+-_ACEOF
+-if ac_fn_c_try_link "$LINENO"; then :
+-  ac_cv_lib_rt_=yes
+-else
+-  ac_cv_lib_rt_=no
+-fi
+-rm -f core conftest.err conftest.$ac_objext \
+-    conftest$ac_exeext conftest.$ac_ext
+-LIBS=$ac_check_lib_save_LIBS
+-fi
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rt_" >&5
+-$as_echo "$ac_cv_lib_rt_" >&6; }
+-if test "x$ac_cv_lib_rt_" = xyes; then :
+-  cat >>confdefs.h <<_ACEOF
+-#define HAVE_LIBRT 1
+-_ACEOF
+-
+-  LIBS="-lrt $LIBS"
+-
+-fi
+-
+-if test "$ac_cv_lib_rt" = yes; then
+-  NEED_LIBS="${NEED_LIBS} -lrt"
+-fi
+-
+ NEED_LIBSG="${NEED_LIBS} -lpthread"
+ 
+ if test "$ac_cv_sizeof_voidp" != 4; then
+diff --git a/Singular/configure.in b/Singular/configure.in
+index c190733..85ec3db 100644
+--- a/Singular/configure.in
++++ b/Singular/configure.in
+@@ -799,8 +799,10 @@ dnl
+ if test "$ac_cv_singuname" != ix86-Win; then
+ AC_CHECK_LIB(m, atof)
+ fi
+-AC_CHECK_LIB(nsl)
+-AC_CHECK_LIB(socket)
++AC_CHECK_LIB(nsl,gethostbyname)
++AC_CHECK_LIB(socket,accept)
++AC_CHECK_LIB(rt,sem_open)
++
+ SAVE_LIBS=${LIBS}
+ LIBS=
+ 
+@@ -1438,11 +1440,6 @@ else
+   AC_MSG_RESULT(no)
+ fi
+ 
+-AC_CHECK_LIB(rt)
+-if test "$ac_cv_lib_rt" = yes; then
+-  NEED_LIBS="${NEED_LIBS} -lrt"
+-fi
+-
+ NEED_LIBSG="${NEED_LIBS} -lpthread"
+ 
+ if test "$ac_cv_sizeof_voidp" != 4; then
diff --git a/debian/patches/0016-singular_part_of_changeset_baadc0f7.patch.patch b/debian/patches/0016-singular_part_of_changeset_baadc0f7.patch.patch
new file mode 100644
index 0000000..64c16ea
--- /dev/null
+++ b/debian/patches/0016-singular_part_of_changeset_baadc0f7.patch.patch
@@ -0,0 +1,22 @@
+From f2d681e9f5eb5401f154f3d847fef1eb6ef78c90 Mon Sep 17 00:00:00 2001
+From: Felix Salfelder <felix at salfelder.org>
+Date: Tue, 3 Sep 2013 20:21:42 +0200
+Subject: singular_part_of_changeset_baadc0f7.patch
+
+---
+ factory/facFactorize.cc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/factory/facFactorize.cc b/factory/facFactorize.cc
+index f5bc353..303b17a 100644
+--- a/factory/facFactorize.cc
++++ b/factory/facFactorize.cc
+@@ -705,7 +705,7 @@ multiFactorize (const CanonicalForm& F, const Variable& v)
+ 
+     evaluationWRTDifferentSecondVars (bufAeval2, bufEvaluation, A);
+ 
+-    for (int j= 0; j < A.level() - 1; j++)
++    for (int j= 0; j < A.level() - 2; j++)
+     {
+       if (!bufAeval2[j].isEmpty())
+         counter++;
diff --git a/debian/patches/0017-tag-some-documents-so-they-are-not-built.patch b/debian/patches/0017-tag-some-documents-so-they-are-not-built.patch
new file mode 100644
index 0000000..10c22bc
--- /dev/null
+++ b/debian/patches/0017-tag-some-documents-so-they-are-not-built.patch
@@ -0,0 +1,493 @@
+From 85b4abc78f0cf42959d9cbc7b17abae48a7148a3 Mon Sep 17 00:00:00 2001
+From: Felix Salfelder <felix at salfelder.org>
+Date: Tue, 3 Sep 2013 21:17:48 +0200
+Subject: tag some documents, so they are not built
+
+---
+ doc/cones.doc | 106 +++++++++++++++++++++++++++++-----------------------------
+ doc/types.doc |   2 +-
+ 2 files changed, 54 insertions(+), 54 deletions(-)
+
+diff --git a/doc/cones.doc b/doc/cones.doc
+index 75c287e..ed07190 100644
+--- a/doc/cones.doc
++++ b/doc/cones.doc
+@@ -91,7 +91,7 @@ intmat L[1][3]=
+ 1,0,0;
+ cone c=coneViaPoints(HL,L,3);
+ c;
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------------------------------------------------
+@@ -152,7 +152,7 @@ intmat E[1][3]=
+ 1,0,0;
+ cone c=coneViaInequalities(IE,E,3);
+ c;
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------------------------------------------------
+@@ -227,7 +227,7 @@ intmat M[11][3]=
+ cone c=coneViaInequalities(M);
+ c;
+ canonicalizeCone(c);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -258,7 +258,7 @@ intvec w=1,1,1;
+ cone cd=coneLink(c,w);
+ cd;
+ print(rays(cd));
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -275,7 +275,7 @@ int
+ 1 iff c1 contains c2 as a face; 0 otherwise
+ @item @strong{Example:}
+ @smallexample
+- at c example
++ at c example tag:gfan
+ intmat M[2][2]=
+ 1,0,
+ 0,1;
+@@ -288,7 +288,7 @@ intmat N2[1][2]=
+ 0,1;
+ cone d2=coneViaPoints(N2);
+ containsAsFace(c,d2);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -326,7 +326,7 @@ intvec v1=0,1;
+ containsInSupport(c,v1);
+ intvec v2=1,-1;
+ containsInSupport(c,v2);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -354,7 +354,7 @@ intmat M2[2][2]=
+ -1,0;
+ cone c2=coneViaPoints(M2);
+ containsPositiveVector(c2);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -380,7 +380,7 @@ intvec p1=1,1;
+ containsRelatively(c,p1);
+ intvec p2=0,1;
+ containsRelatively(c,p2);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -410,7 +410,7 @@ intmat M2[2][3]=
+ 0,1,0;
+ cone c2=coneViaPoints(M2);
+ ambientDimension(c2);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -438,7 +438,7 @@ intmat M2[1][2]=
+ 0,0;
+ cone c2=coneViaPoints(M2);
+ codimension(c2);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -466,7 +466,7 @@ intmat M2[1][2]=
+ 0,0;
+ cone c2=coneViaPoints(M2);
+ dimension(c2);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -498,7 +498,7 @@ cone c2=coneViaPoints(M2);
+ cone d2=dualCone(c2);
+ d2;
+ print(rays(d2));
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -528,7 +528,7 @@ intmat M2[1][2]=
+ cone c2=coneViaPoints(M2);
+ bigintmat E2=equations(c2);
+ print(E2);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -559,7 +559,7 @@ intmat M2[2][2]=
+ cone c2=coneViaPoints(M2);
+ bigintmat F2=facets(c2);
+ print(F2);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -586,7 +586,7 @@ intmat M[5][3]=
+ cone c=coneViaPoints(M);
+ bigintmat L=linspace(c);
+ print(L);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -611,7 +611,7 @@ intmat M[3][5]=
+ cone c=coneViaPoints(M);
+ bigintmat S=generatorsOfSpan(c);
+ print(S);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -629,7 +629,7 @@ int
+ getMultiplicity of the cone (can be set by setMultiplicity); returns 1 if not set
+ @item @strong{Example:}
+ @smallexample
+- at c example
++ at c example tag:gfan
+ intmat M[2][3]=
+ -1,0,0,
+ 0,-1,0;
+@@ -637,7 +637,7 @@ cone c=coneViaPoints(M);
+ getMultiplicity(c);
+ setMultiplicity(c,3);
+ getMultiplicity(c);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -662,7 +662,7 @@ intmat M[3][5]=
+ cone c=coneViaPoints(M);
+ bigintmat I=span(c);
+ print(I);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -691,7 +691,7 @@ intmat M2[1][2]=
+ cone c2=coneViaPoints(M2);
+ bigintmat I2=inequalities(c2);
+ print(I2);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -723,7 +723,7 @@ intmat M2[4][3]=
+ -1,0,0;
+ cone c2=coneViaPoints(M2);
+ linealityDimension(c2);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -756,7 +756,7 @@ intmat M2[4][3]=
+ cone c2=coneViaPoints(M2);
+ cone l2=linealitySpace(c2);
+ l2;
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -783,7 +783,7 @@ linearForms(c);
+ intvec v=1,1,1;
+ setLinearForms(c,v);
+ linearForms(c);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -808,7 +808,7 @@ cone c=coneViaPoints(M);
+ cone cn=negatedCone(c);
+ cn;
+ print(rays(cn));
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -833,7 +833,7 @@ intmat M[3][2]=
+ cone c=coneViaPoints(M);
+ bigintmat Q=quotientLatticeBasis(c);
+ print(Q);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -864,7 +864,7 @@ intmat M2[3][2]=
+ cone c2=coneViaPoints(M2);
+ bigintmat R2=rays(c2);
+ print(R2);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -892,7 +892,7 @@ intmat M2[2][2]=
+ 1,1;
+ cone c2=coneViaPoints(M2);
+ relativeInteriorPoint(c2);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -916,7 +916,7 @@ intmat M[3][2]=
+ -1,0;
+ cone c=coneViaPoints(M);
+ semigroupGenerator(c);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -944,7 +944,7 @@ intmat M2[2][2]=
+ 1,1;
+ cone c2=coneViaPoints(M2);
+ uniquePoint(c2);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -986,7 +986,7 @@ print(rays(c23));
+ cone c13=convexHull(c1,c3);
+ c13;
+ print(rays(c13));
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -1028,7 +1028,7 @@ print(rays(c23));
+ cone c13=convexIntersection(c1,c3);
+ c13;
+ print(rays(c13));
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -1060,7 +1060,7 @@ intmat M3[4][2]=
+ 0,-1;
+ cone c3=coneViaPoints(M3);
+ isFullSpace(c3);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -1092,7 +1092,7 @@ intmat M3[4][2]=
+ 0,-1;
+ cone c3=coneViaPoints(M3);
+ isOrigin(c3);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -1142,7 +1142,7 @@ intmat N2[4][3]=
+ cone d2=coneViaPoints(N2);
+ insertCone(f,d2);
+ isSimplicial(f);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -1168,7 +1168,7 @@ linearForms(c);
+ intvec v=1,1,1;
+ setLinearForms(c,v);
+ linearForms(c);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------
+@@ -1193,7 +1193,7 @@ cone c=coneViaPoints(M);
+ getMultiplicity(c);
+ setMultiplicity(c,3);
+ getMultiplicity(c);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c ---------------------------------------
+@@ -1355,10 +1355,10 @@ fan
+ empty fan in ambient dimension d
+ @item @strong{Example:}
+ @smallexample
+- at c example
++ at c example tag:gfan
+ fan f=emptyFan(2);
+ f;
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------------------------------------
+@@ -1375,10 +1375,10 @@ fan
+ full fan in ambient dimension d
+ @item @strong{Example:}
+ @smallexample
+- at c example
++ at c example tag:gfan
+ fan f=fullFan(2);
+ f;
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------------------------------------
+@@ -1395,14 +1395,14 @@ intvec
+ F-Vector of the fan
+ @item @strong{Example:}
+ @smallexample
+- at c example
++ at c example tag:gfan
+ fan f=emptyFan(2);
+ fVector(f);
+ intmat M[2][2]=1,0,0,1;
+ cone c=coneViaPoints(M);
+ insertCone(f,c);
+ fVector(f);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------------------------------------
+@@ -1430,7 +1430,7 @@ insertCone(f,c);
+ getCone(f,2,1,0,0);
+ getCone(f,2,2,0,0);
+ getCone(f,2,3,0,0);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------------------------------------
+@@ -1458,7 +1458,7 @@ intmat M[3][3]=
+ cone c=coneViaPoints(M);
+ insertCone(f,c);
+ f;
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------------------------------------
+@@ -1497,7 +1497,7 @@ intmat M3[3][3]=
+ 0,0,-1;
+ cone c3=coneViaPoints(M3);
+ isCompatible(f,c3);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------------------------------------
+@@ -1536,7 +1536,7 @@ isCompatible(f,c3);
+ @c cone c3=coneViaPoints(M3);
+ @c insertCone(g,c3);
+ @c isComplete(g,c3);
+- at c @c example
++ at c @c example tag:gfan
+ @c @end smallexample
+ @c @end table
+ @c --------------------------------------------------------------------
+@@ -1569,7 +1569,7 @@ intmat M2[1][2]=
+ cone c2=coneViaPoints(M2);
+ insertCone(g,c2);
+ isPure(g,c2);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------------------------------------
+@@ -1602,7 +1602,7 @@ intmat M2[2][3]=
+ cone c2=coneViaPoints(M2);
+ insertCone(f,c2);
+ nmaxcones(f);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------------------------------------
+@@ -1635,7 +1635,7 @@ intmat M2[2][3]=
+ cone c2=coneViaPoints(M2);
+ insertCone(f,c2);
+ ncones(f);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------------------------------------
+@@ -1669,7 +1669,7 @@ numberOfConesOfDimension(f,2,0,0);
+ numberOfConesOfDimension(f,2,0,1);
+ numberOfConesOfDimension(f,3,0,0);
+ numberOfConesOfDimension(f,3,0,1);
+- at c example
++ at c example tag:gfan
+ @end smallexample
+ @end table
+ @c --------------------------------------------------------------------
+@@ -1829,7 +1829,7 @@ polytope
+ Newton polytope of f 
+ @item @strong{Example:}
+ @smallexample
+- at c example
++ at c example tag:cone
+ intmat M[4][2]=
+ 0,0,
+ 1,0,
+@@ -1854,7 +1854,7 @@ polytope
+ Newton polytope of f 
+ @item @strong{Example:}
+ @smallexample
+- at c example
++ at c example tag:cone
+ ring r;
+ poly f=x+y+z;
+ polytope p=newtonPolytope(f);
+diff --git a/doc/types.doc b/doc/types.doc
+index 6063858..2f16831 100755
+--- a/doc/types.doc
++++ b/doc/types.doc
+@@ -4556,7 +4556,7 @@ substitute a ring variable (see @ref{subst})
+ @end table
+ 
+ @c @*@strong{Example:}
+- at c @example
++ at c @example tag:gfan
+ @c @end example
+ @c ---------------------------------------
+ @node User defined types, cone, vector, Data types
diff --git a/debian/patches/0018-439-factorize-returns-wrong-constant.patch b/debian/patches/0018-439-factorize-returns-wrong-constant.patch
new file mode 100644
index 0000000..a4e9a81
--- /dev/null
+++ b/debian/patches/0018-439-factorize-returns-wrong-constant.patch
@@ -0,0 +1,45 @@
+From 622961fcdb1c5f17be2260b8be5c36d85825660b Mon Sep 17 00:00:00 2001
+From: Felix Salfelder <felix at salfelder.org>
+Date: Tue, 3 Sep 2013 21:56:53 +0200
+Subject: 439: factorize() returns wrong constant
+
+---
+ factory/facBivar.h     | 4 ++--
+ factory/facFactorize.h | 2 +-
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/factory/facBivar.h b/factory/facBivar.h
+index cabdff8..2d8531e 100644
+--- a/factory/facBivar.h
++++ b/factory/facBivar.h
+@@ -183,7 +183,7 @@ ratBiFactorize (const CanonicalForm & G,         ///< [in] a bivariate poly
+       {
+         for (CFFListIterator i= result; i.hasItem(); i++)
+         {
+-          LcF /= bCommonDen (i.getItem().factor());
++          LcF /= power (bCommonDen (i.getItem().factor()), i.getItem().exp());
+           i.getItem()= CFFactor (i.getItem().factor()*
+                        bCommonDen(i.getItem().factor()), i.getItem().exp());
+         }
+@@ -215,7 +215,7 @@ ratBiFactorize (const CanonicalForm & G,         ///< [in] a bivariate poly
+     {
+       for (CFFListIterator i= result; i.hasItem(); i++)
+       {
+-        LcF /= bCommonDen (i.getItem().factor());
++        LcF /= power (bCommonDen (i.getItem().factor()), i.getItem().exp());
+         i.getItem()= CFFactor (i.getItem().factor()*
+                      bCommonDen(i.getItem().factor()), i.getItem().exp());
+       }
+diff --git a/factory/facFactorize.h b/factory/facFactorize.h
+index 5ccfe16..95bfa66 100644
+--- a/factory/facFactorize.h
++++ b/factory/facFactorize.h
+@@ -136,7 +136,7 @@ ratFactorize (const CanonicalForm& G,          ///<[in] a multivariate poly
+     {
+       for (CFFListIterator i= result; i.hasItem(); i++)
+       {
+-        LcF /= bCommonDen (i.getItem().factor());
++        LcF /= power (bCommonDen (i.getItem().factor()), i.getItem().exp());
+         i.getItem()= CFFactor (i.getItem().factor()*
+                      bCommonDen(i.getItem().factor()), i.getItem().exp());
+       }
diff --git a/debian/patches/series b/debian/patches/series
index 960f446..a9fd885 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -9,3 +9,10 @@
 0009-fix-NTL-negate-namespace-issue.patch
 0010-install-factory.h-where-libfac-expects-it.patch
 0011-sanitize-cf_gmp.h-generation.patch
+0012-singular_15435.patch.patch
+0013-440-Factoring-over-a-finite-field-returns-reducible-.patch
+0014-441-Factoring-over-a-finite-field-sometimes-returns-.patch
+0015-443-configure-should-check-for-nanosleep-in-lrt.patch
+0016-singular_part_of_changeset_baadc0f7.patch.patch
+0017-tag-some-documents-so-they-are-not-built.patch
+0018-439-factorize-returns-wrong-constant.patch

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/singular.git



More information about the debian-science-commits mailing list