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