You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@xerces.apache.org by Manu Rapp <an...@gmx.de> on 2008/06/04 15:08:58 UTC

Re: problems compiling xerces on unixware

Hello Boris,

I could compile Xerces after initializing fInstance as follows

XMLHolder.c
    31  template<class Type>
    32  XMLHolder<Type>::XMLHolder() :
    33        XMemory()
    34  {
    35      fInstance.__pt_mutex_mutex.__m_lmutex.__wanted='\0';
    36      fInstance.__pt_mutex_mutex.__m_lmutex.__lock='\0';
    37      fInstance.__pt_mutex_mutex.__m_sync_lock.__wanted='\0';
    38      fInstance.__pt_mutex_mutex.__m_sync_lock.__lock='\0';
    39      fInstance.__pt_mutex_mutex.__m_type=0;
    40      fInstance.__pt_mutex_mutex.__m_sleepq.__thrq_next=0;
    41      fInstance.__pt_mutex_mutex.__m_sleepq.__thrq_prev=0;
    42      fInstance.__pt_mutex_mutex.__filler[0]=0;
    43      fInstance.__pt_mutex_mutex.__filler[1]=0;
    44      fInstance.__pt_mutex_pid=0;
    45      fInstance.__pt_mutex_owner=0;
    46      fInstance.__pt_mutex_depth=0;
    47      fInstance.__pt_mutex_attr.__pt_mutexattr_status=0;
    48      fInstance.__pt_mutex_attr.__pt_mutexattr_pshared=0;
    49      fInstance.__pt_mutex_attr.__pt_mutexattr_type=0;
    50  }

and adding the parameter type MemoryManager* to the function header of
makeMutex in UnixWarePlatformUtils.cpp (no parameter was specified before).

UnixWarePlatformUtils.cpp
   461  void* XMLPlatformUtils::makeMutex(MemoryManager*)
   462  {
   463      return new RecursiveMutex;
   464  }

I also removed linking to libw from Makefile.incl and changed
the AutoSense.hpp platform check from __UNIXWARE__ to UNIXWARE.

Do you think the library will work properly with my changes?
The provided samples ran successfully but i don't know whether the tests
cover the functionality of PlatformUtils.

Thanks
Manu

-------- Original-Nachricht --------
> Datum: Thu, 29 May 2008 15:45:26 +0200
> Von: Boris Kolpackov <bo...@codesynthesis.com>
> An: c-dev@xerces.apache.org
> Betreff: Re: problems compiling xerces on unixware

> Hi Manu,
> 
> Manu Rapp <an...@gmx.de> writes:
> 
> > Dow you know whether any parts of the Xerces code do rely on the
> > initialization of fInstance?
> 
> Yes, I think so. fInstance is what the XMLHolder holds. I think
> the easiest way to make it work is to add some const_cast's in 
> UnixWarePlatformUtils.cpp.
> 
> You may also want to try the 3.0.0 beta where things have been
> substantially changed so it might build out of the box if auto-
> tools support UnixWare:
> 
> http://marc.info/?l=xerces-c-users&m=120541881312475&w=2
> 
> Boris
> 
> -- 
> Boris Kolpackov, Code Synthesis Tools  
> http://codesynthesis.com/~boris/blog
> Open source XML data binding for C++:  
> http://codesynthesis.com/products/xsd
> Mobile/embedded validating XML parsing:
> http://codesynthesis.com/products/xsde
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
> For additional commands, e-mail: c-dev-help@xerces.apache.org

-- 
Super-Aktion nur in der GMX Spieleflat: 10 Tage für 1 Euro.
Über 180 Spiele downloaden: http://flat.games.gmx.de

---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org


Re: problems compiling xerces on unixware

Posted by Boris Kolpackov <bo...@codesynthesis.com>.
Hi Manu,

Manu Rapp <an...@gmx.de> writes:

> Do you think the library will work properly with my changes?

I don't know since I am not a UNIXWare expert. The direct pthread
structure initialization looks dodgy.


> The provided samples ran successfully but i don't know whether the tests
> cover the functionality of PlatformUtils.

The included thread test checks that the thread support is working
so if that passes then your changes are probably ok.

Boris

-- 
Boris Kolpackov, Code Synthesis Tools   http://codesynthesis.com/~boris/blog
Open source XML data binding for C++:   http://codesynthesis.com/products/xsd
Mobile/embedded validating XML parsing: http://codesynthesis.com/products/xsde

---------------------------------------------------------------------
To unsubscribe, e-mail: c-dev-unsubscribe@xerces.apache.org
For additional commands, e-mail: c-dev-help@xerces.apache.org