Suggested patch for wvstreams-3.75.0 on LFS 5.0

Dale Stephens ds.stephens at lineone.net
Mon May 3 13:27:31 PDT 2004


Hello all,

I had problems trying to compile wvstreams-3.75.0 for a LFS system yesterday 
using the normal configure/make/'make install' technique.  I tried gcc 
2.95.3, 3.3.3 and 3.4.0 (yes, 3 versions!) and kept getting errors in the 
make phase.  Eventually, I decided to hack the code until it did compile 
(though I've very little knowledge of programming or C++).  The patch 
file below shows the alterations.  It compiles OK and passes the 'make test', 
so I have to assume it's OK.  

BTW: other tools I used were autoconf-2.59, automake-1.8.3, linux-2.6.5, 
make-3.80

====================================================
diff -r -c wvstreams-3.75.0-orig/include/uniconftree.h 
wvstreams-3.75.0-new/include/uniconftree.h
*** wvstreams-3.75.0-orig/include/uniconftree.h Sat Mar 13 18:59:36 2004
--- wvstreams-3.75.0-new/include/uniconftree.h  Mon May  3 16:07:11 2004
***************
*** 31,37 ****
   */

  template<class Sub, class Base = UniHashTreeBase>
! class UniConfTree : public Base
  {

  public:
--- 31,42 ----
   */

  template<class Sub, class Base = UniHashTreeBase>
!
! /*
!  *  s/Base/UniHashTreeBase/ because otherwise xparent and xchildren 
!  *  are undefined.  2004/05/03 (DSS)
!  */
! class UniConfTree : public UniHashTreeBase
  {

  public:
diff -r -c wvstreams-3.75.0-orig/include/wvsorter.h 
wvstreams-3.75.0-new/include/wvsorter.h
*** wvstreams-3.75.0-orig/include/wvsorter.h    Sat Mar 13 18:59:36 2004
--- wvstreams-3.75.0-new/include/wvsorter.h     Mon May  3 16:07:42 2004
***************
*** 89,96 ****
      n = 0;
      for (i.rewind(); i.next(); )
        n++;
!
!     array = new (void *) [n+2];
      void **aptr = array;

      *aptr++ = NULL; // initial link is NULL, to act like a normal iterator
--- 89,98 ----
      n = 0;
      for (i.rewind(); i.next(); )
        n++;
!
! //  Removed brackets from _void_*_  2004/05/03 (DSS)
! //
!     array = new void * [n+2];
      void **aptr = array;

      *aptr++ = NULL; // initial link is NULL, to act like a normal iterator
diff -r -c wvstreams-3.75.0-orig/utils/wvbuffer.cc 
wvstreams-3.75.0-new/utils/wvbuffer.cc
*** wvstreams-3.75.0-orig/utils/wvbuffer.cc     Sat Mar 13 18:59:36 2004
--- wvstreams-3.75.0-new/utils/wvbuffer.cc      Mon May  3 16:08:11 2004
***************
*** 8,13 ****
--- 8,15 ----

  /***** Specialization for raw memory buffers *****/

+ /* These templates are a problem.  Bin them??  2004/05/03 (DSS)
+  *
  // Instantiate some commonly used templates
  template WvBufBaseCommonImpl<unsigned char>;
  template WvInPlaceBufBase<unsigned char>;
***************
*** 16,21 ****
--- 18,24 ----
  template WvDynBufBase<unsigned char>;
  template WvNullBufBase<unsigned char>;
  template WvBufCursorBase<unsigned char>;
+  */

  void WvBufBase<unsigned char>::putstr(WvStringParm str)
  {
====================================================



More information about the patches mailing list