You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by "David Bertoni (JIRA)" <xa...@xml.apache.org> on 2008/09/12 07:23:44 UTC

[jira] Closed: (XALANC-401) patches required to build Xalan-C++ on BeOS R5

     [ https://issues.apache.org/jira/browse/XALANC-401?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

David Bertoni closed XALANC-401.
--------------------------------

    Resolution: Won't Fix
      Assignee:     (was: Xalan Developers Mailing List)

The patches are too old, and we have no way to maintain a BeOS port.

> patches required to build Xalan-C++ on BeOS R5
> ----------------------------------------------
>
>                 Key: XALANC-401
>                 URL: https://issues.apache.org/jira/browse/XALANC-401
>             Project: XalanC
>          Issue Type: Bug
>          Components: XalanC
>    Affects Versions: 1.7
>         Environment: Operating System: BeOS
> Platform: PC
>            Reporter: Jérôme Duval
>         Attachments: AttributeListImpl.cpp, AttributesImpl.cpp, BeOSDefinitions.hpp, configure, configure.in, DirectoryEnumerator.hpp, Makefile.incl.in, patch.txt, PlatformDefinitions.hpp, runConfigure, STLHelper.hpp
>
>
> I have created a preliminary set of patches that enable version 1.7.0 to build
> on beos.  I have run some of the tests and some succeed.
> The BeOS threading model is significantly different from pthreads, so the 
> threading used is none.
> -------------------- begin patch file ---------------------------
> diff -ru xml-xalan/c/Makefile.incl.in 
> xalan-c-bin1_7_0_beos/xml-xalan/c/Makefile.incl.in
> --- xml-xalan/c/Makefile.incl.in	Thu Jan  8 22:04:52 2004
> +++ xalan-c-bin1_7_0_beos/xml-xalan/c/Makefile.incl.in	Thu Feb 19 20:10:29 
> 2004
> @@ -471,9 +471,28 @@
>  
>  endif
>  
> +#=============== BeOS SPECIFIC OPTIONS =========================
> +
> +ifeq ($(PLATFORM), BEOS)
> +
> +  SUPPORTED = TRUE
> +  ALLLIBS = ${LIBS} -lbe -L${HOME}/config/lib -L/boot/beos/system/lib
> +  SHLIBSUFFIX=.so
> +  PLATFORM_COMPILE_OPTIONS = -fpic -instances=static -D${PLATFORM} -D_REENTRANT
> +  EXTRA_LINK_OPTIONS= -lstdc++.r4
> +  CC1 = $(CXX) $(CXXFLAGS) $(PLATFORM_COMPILE_OPTIONS)
> +  CC4 = $(CC) $(CXXFLAGS) $(PLATFORM_COMPILE_OPTIONS)
> +  MAKE_SHARED = ${CC} -nostart -Xlinker -soname=$(SO_NAME)
> +  LINK = g++ -D${PLATFORM} -fpic
> +    
> +  export LD_LIBRARY_PATH := $(XERCESCROOT)/lib:$(ICUROOT)/lib:
> $(LD_LIBRARY_PATH)
> +  MAKE_SHARED_LOC= ${CC} -nostart -Xlinker -soname=$(LOC_SONAME)
> +
> +endif
> +
>  ifndef SUPPORTED
>    nogood:
> -	  @echo Linux, Solaris, AIX, Compaq Tru64, OS/390, MacOSX, and HP-UX are the 
> only platforms supported.
> +	  @echo Linux, Solaris, AIX, Compaq Tru64, OS/390, MacOSX, HP-UX and BeOS 
> are the only platforms supported.
>  endif
>  
>  
> diff -ru xml-xalan/c/configure xalan-c-bin1_7_0_beos/xml-xalan/c/configure
> --- xml-xalan/c/configure	Mon Dec 29 01:26:53 2003
> +++ xalan-c-bin1_7_0_beos/xml-xalan/c/configure	Mon Feb 16 22:11:17 2004
> @@ -2690,6 +2690,7 @@
>          *-apple-darwin*)       platform=MACOSX ;;
>          *-*-os400*)     platform=OS400 ;;
>          *-*-OS400*)     platform=OS400 ;;
> +        *-*-beos*)		platform=BEOS ;;
>          *)              platform=UNKNOWN ;;
>  esac
>  
> diff -ru xml-xalan/c/configure.in xalan-c-bin1_7_0_beos/xml-xalan/c/configure.in
> --- xml-xalan/c/configure.in	Mon Dec 29 01:26:53 2003
> +++ xalan-c-bin1_7_0_beos/xml-xalan/c/configure.in	Sun Mar 14 23:32:42 2004
> @@ -59,6 +59,7 @@
>          *-apple-darwin*)       platform=MACOSX ;;
>          *-*-os400*)     platform=OS400 ;;
>          *-*-OS400*)     platform=OS400 ;;
> +        *-*-beos*)        platform=BEOS ;;
>          *)              platform=UNKNOWN ;;
>  esac
>  
> diff -ru xml-xalan/c/runConfigure xalan-c-bin1_7_0_beos/xml-xalan/c/runConfigure
> --- xml-xalan/c/runConfigure	Tue Jan  6 03:41:25 2004
> +++ xalan-c-bin1_7_0_beos/xml-xalan/c/runConfigure	Mon Feb 16 21:46:54 2004
> @@ -301,7 +301,7 @@
>  #
>  
>  case $platform in
> -   aix | linux | freebsd | netbsd | solaris | hp-10 | hp-11 | irix | tru64 | 
> macosx | os400)
> +   aix | linux | freebsd | netbsd | solaris | hp-10 | hp-11 | irix | tru64 | 
> macosx | os400 | beos)
>         # platform has been recognized
>         ;;
>     *)
> @@ -477,6 +477,8 @@
>      threadingLibs="-lcma"
>      threadingDefines="-DXML_USE_DCE"
>  elif test $platform = "os400"; then
> +    threadingLibs=""
> +elif test $platform = "beos"; then
>      threadingLibs=""
>  fi
>  
> Only in xalan-c-bin1_7_0_beos/xml-xalan/c/src/xalanc/Include: BeOSDefinitions.
> hpp
> diff -ru xml-xalan/c/src/xalanc/Include/PlatformDefinitions.hpp 
> xalan-c-bin1_7_0_beos/xml-xalan/c/src/xalanc/Include/PlatformDefinitions.hpp
> --- xml-xalan/c/src/xalanc/Include/PlatformDefinitions.hpp	Tue Jan  6 03:41:
> 28 2004
> +++ xalan-c-bin1_7_0_beos/xml-xalan/c/src/xalanc/Include/PlatformDefinitions.
> hpp	Sun Mar 14 20:27:39 2004
> @@ -59,6 +59,8 @@
>  
>  #if defined(_MSC_VER)
>  #include "VCPPDefinitions.hpp"
> +#elif defined(__BEOS__)
> +#include "BeOSDefinitions.hpp"
>  #elif defined(__GNUC__)
>  #include "GCCDefinitions.hpp"
>  #elif defined(_AIX)
> diff -ru xml-xalan/c/src/xalanc/Include/STLHelper.hpp 
> xalan-c-bin1_7_0_beos/xml-xalan/c/src/xalanc/Include/STLHelper.hpp
> --- xml-xalan/c/src/xalanc/Include/STLHelper.hpp	Tue Jan  6 03:41:28 2004
> +++ xalan-c-bin1_7_0_beos/xml-xalan/c/src/xalanc/Include/STLHelper.hpp	Sun 
> Mar 14 20:25:25 2004
> @@ -362,7 +362,7 @@
>  };
>  
>  
> -
> +#ifndef __BEOS__
>  template<class CollectionType, class DeleteFunctorType>
>  class CollectionDeleteGuard
>  {
> @@ -405,7 +405,7 @@
>  	// Data members...
>  	CollectionType*		m_collection;
>  };
> -
> +#endif
>  
>  
>  template<class T>
> diff -ru xml-xalan/c/src/xalanc/PlatformSupport/AttributeListImpl.cpp 
> xalan-c-bin1_7_0_beos/xml-xalan/c/src/xalanc/PlatformSupport/AttributeListImpl.
> cpp
> --- xml-xalan/c/src/xalanc/PlatformSupport/AttributeListImpl.cpp	Tue Jan  6 
> 03:41:28 2004
> +++ 
> xalan-c-bin1_7_0_beos/xml-xalan/c/src/xalanc/PlatformSupport/AttributeListImpl.
> cpp	Sun Mar 14 20:24:32 2004
> @@ -152,11 +152,11 @@
>  		{
>  			// Reserve the appropriate capacity right now...
>  			tempVector.reserve(theLength);
> -
> +#ifndef __BEOS__
>  			// This will delete everything in tempVector when we're done...
>  			CollectionDeleteGuard<AttributeVectorType,
>  								  DeleteFunctor<AttributeVectorEntry> 
> >		theGuard(tempVector);
> -
> +#endif
>  			typedef AttributeVectorType::const_iterator		const_iterator;
>  
>  			const const_iterator	theEnd = theRHS.m_AttributeVector.end();
> @@ -179,6 +179,11 @@
>  			// OK, we're safe, so swap the contents of the
>  			// containers.  This is guaranteed not to throw.
>  			m_AttributeVector.swap(tempVector);
> +#ifdef __BEOS__	
> +			for_each(tempVector.begin(),
> +					 tempVector.end(),
> +					 DeleteFunctor<AttributeVectorEntry>());
> +#endif
>  		}
>  
>  		assert(getLength() == theLength);
> diff -ru xml-xalan/c/src/xalanc/PlatformSupport/AttributesImpl.cpp 
> xalan-c-bin1_7_0_beos/xml-xalan/c/src/xalanc/PlatformSupport/AttributesImpl.cpp
> --- xml-xalan/c/src/xalanc/PlatformSupport/AttributesImpl.cpp	Tue Jan  6 03:
> 41:28 2004
> +++ xalan-c-bin1_7_0_beos/xml-xalan/c/src/xalanc/PlatformSupport/AttributesImpl.
> cpp	Sun Mar 14 20:24:03 2004
> @@ -152,11 +152,11 @@
>  		{
>  			// Reserve the appropriate capacity right now...
>  			tempVector.reserve(theLength);
> -
> +#ifndef __BEOS__	
>  			// This will delete everything in tempVector when we're done...
>  			CollectionDeleteGuard<AttributesVectorType,
>  								  DeleteFunctor<AttributeVectorEntryExtended> 
> >		theGuard(tempVector);
> -
> +#endif
>  			typedef AttributesVectorType::const_iterator		const_iterator;
>  
>  			const const_iterator	theEnd = theRHS.m_attributesVector.end();
> @@ -181,6 +181,11 @@
>  			// OK, we're safe, so swap the contents of the
>  			// containers.  This is guaranteed not to throw.
>  			m_attributesVector.swap(tempVector);
> +#ifdef __BEOS__	
> +			for_each(tempVector.begin(),
> +					 tempVector.end(),
> +					 DeleteFunctor<AttributeVectorEntry>());
> +#endif
>  		}
>  
>  		assert(getLength() == theLength);
> diff -ru xml-xalan/c/src/xalanc/PlatformSupport/DirectoryEnumerator.hpp 
> xalan-c-bin1_7_0_beos/xml-xalan/c/src/xalanc/PlatformSupport/DirectoryEnumerator.
> hpp
> --- xml-xalan/c/src/xalanc/PlatformSupport/DirectoryEnumerator.hpp	Tue Jan  
> 6 03:41:28 2004
> +++ 
> xalan-c-bin1_7_0_beos/xml-xalan/c/src/xalanc/PlatformSupport/DirectoryEnumerator.
> hpp	Sun Mar 14 20:37:02 2004
> @@ -178,7 +178,7 @@
>  	 */
>  	bool isDirectory() const
>  	{
> -#if defined(AIX) || defined(HPUX) || defined(SOLARIS) || defined(OS390) || 
> defined(OS400) || defined(TRU64)
> +#if defined(AIX) || defined(BEOS) || defined(HPUX) || defined(SOLARIS) || 
> defined(OS390) || defined(OS400) || defined(TRU64)
>  		return false;
>  #else		
>  		if (d_type == DT_DIR || d_type == DT_UNKNOWN)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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