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

View: New views
1 Messages — Rating Filter:   Alert me  

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

by Xalan - Dev mailing list :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


     [ 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@...
For additional commands, e-mail: xalan-dev-help@...

LightInTheBox - Buy quality products at wholesale price!