You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by jb...@apache.org on 2005/05/26 07:00:24 UTC

svn commit: r178580 - in /xerces/c/branches/jberry/3.0-unstable: ./ lib/ m4/ obj/ src/ src/xercesc/util/ src/xercesc/util/AtomicOpManagers/ src/xercesc/util/FileManagers/ src/xercesc/util/MutexManagers/ tests/

Author: jberry
Date: Wed May 25 22:00:22 2005
New Revision: 178580

URL: http://svn.apache.org/viewcvs?rev=178580&view=rev
Log:
Flesh out implementation of PosixFileMgr, PosixMutexMgr, and PosixAtomicOpMgr.


Modified:
    xerces/c/branches/jberry/3.0-unstable/Makefile.in
    xerces/c/branches/jberry/3.0-unstable/config.h
    xerces/c/branches/jberry/3.0-unstable/config.h.in
    xerces/c/branches/jberry/3.0-unstable/configure
    xerces/c/branches/jberry/3.0-unstable/lib/Makefile.in
    xerces/c/branches/jberry/3.0-unstable/m4/xerces_atomicopmgr_selection.m4
    xerces/c/branches/jberry/3.0-unstable/m4/xerces_filemgr_selection.m4
    xerces/c/branches/jberry/3.0-unstable/m4/xerces_mutexmgr_selection.m4
    xerces/c/branches/jberry/3.0-unstable/obj/Makefile.in
    xerces/c/branches/jberry/3.0-unstable/src/Makefile.am
    xerces/c/branches/jberry/3.0-unstable/src/Makefile.in
    xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/AtomicOpManagers/PosixAtomicOpMgr.cpp
    xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/AtomicOpManagers/PosixAtomicOpMgr.hpp
    xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/FileManagers/PosixFileMgr.cpp
    xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/MutexManagers/PosixMutexMgr.cpp
    xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/PlatformUtils.cpp
    xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/PlatformUtils.hpp
    xerces/c/branches/jberry/3.0-unstable/tests/Makefile.in

Modified: xerces/c/branches/jberry/3.0-unstable/Makefile.in
URL: http://svn.apache.org/viewcvs/xerces/c/branches/jberry/3.0-unstable/Makefile.in?rev=178580&r1=178579&r2=178580&view=diff
==============================================================================
--- xerces/c/branches/jberry/3.0-unstable/Makefile.in (original)
+++ xerces/c/branches/jberry/3.0-unstable/Makefile.in Wed May 25 22:00:22 2005
@@ -148,8 +148,14 @@
 SHELL = @SHELL@
 STRIP = @STRIP@
 VERSION = @VERSION@
+XERCES_USE_ATOMICOPMGR_POSIX_FALSE = @XERCES_USE_ATOMICOPMGR_POSIX_FALSE@
+XERCES_USE_ATOMICOPMGR_POSIX_TRUE = @XERCES_USE_ATOMICOPMGR_POSIX_TRUE@
+XERCES_USE_FILEMGR_POSIX_FALSE = @XERCES_USE_FILEMGR_POSIX_FALSE@
+XERCES_USE_FILEMGR_POSIX_TRUE = @XERCES_USE_FILEMGR_POSIX_TRUE@
 XERCES_USE_MSGLOADER_INMEMORY_FALSE = @XERCES_USE_MSGLOADER_INMEMORY_FALSE@
 XERCES_USE_MSGLOADER_INMEMORY_TRUE = @XERCES_USE_MSGLOADER_INMEMORY_TRUE@
+XERCES_USE_MUTEXMGR_POSIX_FALSE = @XERCES_USE_MUTEXMGR_POSIX_FALSE@
+XERCES_USE_MUTEXMGR_POSIX_TRUE = @XERCES_USE_MUTEXMGR_POSIX_TRUE@
 XERCES_USE_NETACCESSOR_CFURL_FALSE = @XERCES_USE_NETACCESSOR_CFURL_FALSE@
 XERCES_USE_NETACCESSOR_CFURL_TRUE = @XERCES_USE_NETACCESSOR_CFURL_TRUE@
 XERCES_USE_NETACCESSOR_CURL_FALSE = @XERCES_USE_NETACCESSOR_CURL_FALSE@
@@ -160,12 +166,6 @@
 XERCES_USE_NETACCESSOR_SOCKET_TRUE = @XERCES_USE_NETACCESSOR_SOCKET_TRUE@
 XERCES_USE_NETACCESSOR_WINSOCK_FALSE = @XERCES_USE_NETACCESSOR_WINSOCK_FALSE@
 XERCES_USE_NETACCESSOR_WINSOCK_TRUE = @XERCES_USE_NETACCESSOR_WINSOCK_TRUE@
-XERCES_USE_POSIX_ATOMICOPMGR_FALSE = @XERCES_USE_POSIX_ATOMICOPMGR_FALSE@
-XERCES_USE_POSIX_ATOMICOPMGR_TRUE = @XERCES_USE_POSIX_ATOMICOPMGR_TRUE@
-XERCES_USE_POSIX_FILEMGR_FALSE = @XERCES_USE_POSIX_FILEMGR_FALSE@
-XERCES_USE_POSIX_FILEMGR_TRUE = @XERCES_USE_POSIX_FILEMGR_TRUE@
-XERCES_USE_POSIX_MUTEXMGR_FALSE = @XERCES_USE_POSIX_MUTEXMGR_FALSE@
-XERCES_USE_POSIX_MUTEXMGR_TRUE = @XERCES_USE_POSIX_MUTEXMGR_TRUE@
 XERCES_USE_TRANSCODER_ICU_FALSE = @XERCES_USE_TRANSCODER_ICU_FALSE@
 XERCES_USE_TRANSCODER_ICU_TRUE = @XERCES_USE_TRANSCODER_ICU_TRUE@
 XERCES_USE_TRANSCODER_MACOSUNICODECONVERTER_FALSE = @XERCES_USE_TRANSCODER_MACOSUNICODECONVERTER_FALSE@

Modified: xerces/c/branches/jberry/3.0-unstable/config.h
URL: http://svn.apache.org/viewcvs/xerces/c/branches/jberry/3.0-unstable/config.h?rev=178580&r1=178579&r2=178580&view=diff
==============================================================================
--- xerces/c/branches/jberry/3.0-unstable/config.h (original)
+++ xerces/c/branches/jberry/3.0-unstable/config.h Wed May 25 22:00:22 2005
@@ -266,9 +266,18 @@
 /* Define if the std namespace is supported */
 #define XERCES_STD_NAMESPACE 1
 
+/* Define to use the POSIX AtomicOp mgr */
+#define XERCES_USE_ATOMICOPMGR_POSIX 1
+
+/* Define to use the POSIX file mgr */
+#define XERCES_USE_FILEMGR_POSIX 1
+
 /* Define to use the InMemory MsgLoader */
 #define XERCES_USE_MSGLOADER_INMEMORY 1
 
+/* Define to use the POSIX mutex mgr */
+#define XERCES_USE_MUTEXMGR_POSIX 1
+
 /* Define to use the Mac OS X CFURL NetAccessor */
 #define XERCES_USE_NETACCESSOR_CFURL 1
 
@@ -283,15 +292,6 @@
 
 /* Define to use the WinSock NetAccessor */
 /* #undef XERCES_USE_NETACCESSOR_WINSOCK */
-
-/* Define to use the POSIX AtomicOp mgr */
-#define XERCES_USE_POSIX_ATOMICOPMGR 1
-
-/* Define to use the POSIX file mgr */
-#define XERCES_USE_POSIX_FILEMGR 1
-
-/* Define to use the POSIX mutex mgr */
-#define XERCES_USE_POSIX_MUTEXMGR 1
 
 /* Define to use the ICU-based transcoder */
 /* #undef XERCES_USE_TRANSCODER_ICU */

Modified: xerces/c/branches/jberry/3.0-unstable/config.h.in
URL: http://svn.apache.org/viewcvs/xerces/c/branches/jberry/3.0-unstable/config.h.in?rev=178580&r1=178579&r2=178580&view=diff
==============================================================================
--- xerces/c/branches/jberry/3.0-unstable/config.h.in (original)
+++ xerces/c/branches/jberry/3.0-unstable/config.h.in Wed May 25 22:00:22 2005
@@ -265,9 +265,18 @@
 /* Define if the std namespace is supported */
 #undef XERCES_STD_NAMESPACE
 
+/* Define to use the POSIX AtomicOp mgr */
+#undef XERCES_USE_ATOMICOPMGR_POSIX
+
+/* Define to use the POSIX file mgr */
+#undef XERCES_USE_FILEMGR_POSIX
+
 /* Define to use the InMemory MsgLoader */
 #undef XERCES_USE_MSGLOADER_INMEMORY
 
+/* Define to use the POSIX mutex mgr */
+#undef XERCES_USE_MUTEXMGR_POSIX
+
 /* Define to use the Mac OS X CFURL NetAccessor */
 #undef XERCES_USE_NETACCESSOR_CFURL
 
@@ -282,15 +291,6 @@
 
 /* Define to use the WinSock NetAccessor */
 #undef XERCES_USE_NETACCESSOR_WINSOCK
-
-/* Define to use the POSIX AtomicOp mgr */
-#undef XERCES_USE_POSIX_ATOMICOPMGR
-
-/* Define to use the POSIX file mgr */
-#undef XERCES_USE_POSIX_FILEMGR
-
-/* Define to use the POSIX mutex mgr */
-#undef XERCES_USE_POSIX_MUTEXMGR
 
 /* Define to use the ICU-based transcoder */
 #undef XERCES_USE_TRANSCODER_ICU

Modified: xerces/c/branches/jberry/3.0-unstable/configure
URL: http://svn.apache.org/viewcvs/xerces/c/branches/jberry/3.0-unstable/configure?rev=178580&r1=178579&r2=178580&view=diff
==============================================================================
--- xerces/c/branches/jberry/3.0-unstable/configure (original)
+++ xerces/c/branches/jberry/3.0-unstable/configure Wed May 25 22:00:22 2005
@@ -464,7 +464,7 @@
 # include <unistd.h>
 #endif"
 
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT CXX CXXFLAGS LDFLAGS CPPFLAGS ac_ct_CXX EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CC CFLAGS ac_ct_CC CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE LN_S EGREP ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB CPP CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL LIBOBJS CURL_PREFIX XERCES_USE_NETACCESSOR_CURL_TRUE XERCES_USE_NETACCESSOR_CURL_FALSE XERCES_USE_NETACCESSOR_CFURL_TRUE XERCES_USE_NETACCESSOR_CFURL_FALSE XERCES_USE_NETACCESSOR_WINSOCK_TRUE XERCES_USE_NETACCESSOR_WINSOCK_FALSE XERCES_USE_NETACCESSOR_SOCKET_TRUE XERCES_USE_NETACCESSOR_SOCKET_FALSE XERCES_USE_NETACCESSOR_LIBWWW_TRUE XERCES_USE_NETACCESSOR_LIBWWW_FALSE ICU_PREFIX XERCES_USE_TRANSCODER_ICU_TRUE XERCES_USE_TRANSCODER_ICU_FALSE XERCES_USE_TRANSCODER_MACOSUNICODECONVERTER_TRUE XERCES_USE_TRANSCODER_MACOSUNICODECONVERTER_FALSE XERCES_USE_MSGLOADER_INMEMORY_TRUE XERCES_USE_MSGLOADER_INMEMORY_FALSE XERCES_USE_POSIX_FILEMGR_TRUE XERCES_USE_POSIX_FILEMGR_FALSE XERCES_USE_POSIX_MUTEXMGR_TRUE XERCES_USE_POSIX_MUTEXMGR_FALSE XERCES_USE_POSIX_ATOMICOPMGR_TRUE XERCES_USE_POSIX_ATOMICOPMGR_FALSE LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar MAINTAINER_MODE_TRUE MAINTAINER_MODE_FALSE MAINT CXX CXXFLAGS LDFLAGS CPPFLAGS ac_ct_CXX EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CC CFLAGS ac_ct_CC CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE LN_S EGREP ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB CPP CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL LIBOBJS CURL_PREFIX XERCES_USE_NETACCESSOR_CURL_TRUE XERCES_USE_NETACCESSOR_CURL_FALSE XERCES_USE_NETACCESSOR_CFURL_TRUE XERCES_USE_NETACCESSOR_CFURL_FALSE XERCES_USE_NETACCESSOR_WINSOCK_TRUE XERCES_USE_NETACCESSOR_WINSOCK_FALSE XERCES_USE_NETACCESSOR_SOCKET_TRUE XERCES_USE_NETACCESSOR_SOCKET_FALSE XERCES_USE_NETACCESSOR_LIBWWW_TRUE XERCES_USE_NETACCESSOR_LIBWWW_FALSE ICU_PREFIX XERCES_USE_TRANSCODER_ICU_TRUE XERCES_USE_TRANSCODER_ICU_FALSE XERCES_USE_TRANSCODER_MACOSUNICODECONVERTER_TRUE XERCES_USE_TRANSCODER_MACOSUNICODECONVERTER_FALSE XERCES_USE_MSGLOADER_INMEMORY_TRUE XERCES_USE_MSGLOADER_INMEMORY_FALSE XERCES_USE_FILEMGR_POSIX_TRUE XERCES_USE_FILEMGR_POSIX_FALSE XERCES_USE_MUTEXMGR_POSIX_TRUE XERCES_USE_MUTEXMGR_POSIX_FALSE XERCES_USE_ATOMICOPMGR_POSIX_TRUE XERCES_USE_ATOMICOPMGR_POSIX_FALSE LTLIBOBJS'
 ac_subst_files=''
 
 # Initialize some variables set by options.
@@ -24295,7 +24295,7 @@
   mgr=POSIX;
 
 cat >>confdefs.h <<\_ACEOF
-#define XERCES_USE_POSIX_FILEMGR 1
+#define XERCES_USE_FILEMGR_POSIX 1
 _ACEOF
 
 
@@ -24310,11 +24310,11 @@
 
 
 if test x"$mgr" = xPOSIX; then
-  XERCES_USE_POSIX_FILEMGR_TRUE=
-  XERCES_USE_POSIX_FILEMGR_FALSE='#'
+  XERCES_USE_FILEMGR_POSIX_TRUE=
+  XERCES_USE_FILEMGR_POSIX_FALSE='#'
 else
-  XERCES_USE_POSIX_FILEMGR_TRUE='#'
-  XERCES_USE_POSIX_FILEMGR_FALSE=
+  XERCES_USE_FILEMGR_POSIX_TRUE='#'
+  XERCES_USE_FILEMGR_POSIX_FALSE=
 fi
 
 
@@ -24338,7 +24338,7 @@
   mgr=POSIX;
 
 cat >>confdefs.h <<\_ACEOF
-#define XERCES_USE_POSIX_MUTEXMGR 1
+#define XERCES_USE_MUTEXMGR_POSIX 1
 _ACEOF
 
 
@@ -24353,11 +24353,11 @@
 
 
 if test x"$mgr" = xPOSIX; then
-  XERCES_USE_POSIX_MUTEXMGR_TRUE=
-  XERCES_USE_POSIX_MUTEXMGR_FALSE='#'
+  XERCES_USE_MUTEXMGR_POSIX_TRUE=
+  XERCES_USE_MUTEXMGR_POSIX_FALSE='#'
 else
-  XERCES_USE_POSIX_MUTEXMGR_TRUE='#'
-  XERCES_USE_POSIX_MUTEXMGR_FALSE=
+  XERCES_USE_MUTEXMGR_POSIX_TRUE='#'
+  XERCES_USE_MUTEXMGR_POSIX_FALSE=
 fi
 
 
@@ -24381,7 +24381,7 @@
   mgr=POSIX;
 
 cat >>confdefs.h <<\_ACEOF
-#define XERCES_USE_POSIX_ATOMICOPMGR 1
+#define XERCES_USE_ATOMICOPMGR_POSIX 1
 _ACEOF
 
 
@@ -24396,11 +24396,11 @@
 
 
 if test x"$mgr" = xPOSIX; then
-  XERCES_USE_POSIX_ATOMICOPMGR_TRUE=
-  XERCES_USE_POSIX_ATOMICOPMGR_FALSE='#'
+  XERCES_USE_ATOMICOPMGR_POSIX_TRUE=
+  XERCES_USE_ATOMICOPMGR_POSIX_FALSE='#'
 else
-  XERCES_USE_POSIX_ATOMICOPMGR_TRUE='#'
-  XERCES_USE_POSIX_ATOMICOPMGR_FALSE=
+  XERCES_USE_ATOMICOPMGR_POSIX_TRUE='#'
+  XERCES_USE_ATOMICOPMGR_POSIX_FALSE=
 fi
 
 
@@ -24717,24 +24717,24 @@
 Usually this means the macro was only invoked conditionally." >&2;}
    { (exit 1); exit 1; }; }
 fi
-if test -z "${XERCES_USE_POSIX_FILEMGR_TRUE}" && test -z "${XERCES_USE_POSIX_FILEMGR_FALSE}"; then
-  { { echo "$as_me:$LINENO: error: conditional \"XERCES_USE_POSIX_FILEMGR\" was never defined.
+if test -z "${XERCES_USE_FILEMGR_POSIX_TRUE}" && test -z "${XERCES_USE_FILEMGR_POSIX_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"XERCES_USE_FILEMGR_POSIX\" was never defined.
 Usually this means the macro was only invoked conditionally." >&5
-echo "$as_me: error: conditional \"XERCES_USE_POSIX_FILEMGR\" was never defined.
+echo "$as_me: error: conditional \"XERCES_USE_FILEMGR_POSIX\" was never defined.
 Usually this means the macro was only invoked conditionally." >&2;}
    { (exit 1); exit 1; }; }
 fi
-if test -z "${XERCES_USE_POSIX_MUTEXMGR_TRUE}" && test -z "${XERCES_USE_POSIX_MUTEXMGR_FALSE}"; then
-  { { echo "$as_me:$LINENO: error: conditional \"XERCES_USE_POSIX_MUTEXMGR\" was never defined.
+if test -z "${XERCES_USE_MUTEXMGR_POSIX_TRUE}" && test -z "${XERCES_USE_MUTEXMGR_POSIX_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"XERCES_USE_MUTEXMGR_POSIX\" was never defined.
 Usually this means the macro was only invoked conditionally." >&5
-echo "$as_me: error: conditional \"XERCES_USE_POSIX_MUTEXMGR\" was never defined.
+echo "$as_me: error: conditional \"XERCES_USE_MUTEXMGR_POSIX\" was never defined.
 Usually this means the macro was only invoked conditionally." >&2;}
    { (exit 1); exit 1; }; }
 fi
-if test -z "${XERCES_USE_POSIX_ATOMICOPMGR_TRUE}" && test -z "${XERCES_USE_POSIX_ATOMICOPMGR_FALSE}"; then
-  { { echo "$as_me:$LINENO: error: conditional \"XERCES_USE_POSIX_ATOMICOPMGR\" was never defined.
+if test -z "${XERCES_USE_ATOMICOPMGR_POSIX_TRUE}" && test -z "${XERCES_USE_ATOMICOPMGR_POSIX_FALSE}"; then
+  { { echo "$as_me:$LINENO: error: conditional \"XERCES_USE_ATOMICOPMGR_POSIX\" was never defined.
 Usually this means the macro was only invoked conditionally." >&5
-echo "$as_me: error: conditional \"XERCES_USE_POSIX_ATOMICOPMGR\" was never defined.
+echo "$as_me: error: conditional \"XERCES_USE_ATOMICOPMGR_POSIX\" was never defined.
 Usually this means the macro was only invoked conditionally." >&2;}
    { (exit 1); exit 1; }; }
 fi
@@ -25362,12 +25362,12 @@
 s,@XERCES_USE_TRANSCODER_MACOSUNICODECONVERTER_FALSE@,$XERCES_USE_TRANSCODER_MACOSUNICODECONVERTER_FALSE,;t t
 s,@XERCES_USE_MSGLOADER_INMEMORY_TRUE@,$XERCES_USE_MSGLOADER_INMEMORY_TRUE,;t t
 s,@XERCES_USE_MSGLOADER_INMEMORY_FALSE@,$XERCES_USE_MSGLOADER_INMEMORY_FALSE,;t t
-s,@XERCES_USE_POSIX_FILEMGR_TRUE@,$XERCES_USE_POSIX_FILEMGR_TRUE,;t t
-s,@XERCES_USE_POSIX_FILEMGR_FALSE@,$XERCES_USE_POSIX_FILEMGR_FALSE,;t t
-s,@XERCES_USE_POSIX_MUTEXMGR_TRUE@,$XERCES_USE_POSIX_MUTEXMGR_TRUE,;t t
-s,@XERCES_USE_POSIX_MUTEXMGR_FALSE@,$XERCES_USE_POSIX_MUTEXMGR_FALSE,;t t
-s,@XERCES_USE_POSIX_ATOMICOPMGR_TRUE@,$XERCES_USE_POSIX_ATOMICOPMGR_TRUE,;t t
-s,@XERCES_USE_POSIX_ATOMICOPMGR_FALSE@,$XERCES_USE_POSIX_ATOMICOPMGR_FALSE,;t t
+s,@XERCES_USE_FILEMGR_POSIX_TRUE@,$XERCES_USE_FILEMGR_POSIX_TRUE,;t t
+s,@XERCES_USE_FILEMGR_POSIX_FALSE@,$XERCES_USE_FILEMGR_POSIX_FALSE,;t t
+s,@XERCES_USE_MUTEXMGR_POSIX_TRUE@,$XERCES_USE_MUTEXMGR_POSIX_TRUE,;t t
+s,@XERCES_USE_MUTEXMGR_POSIX_FALSE@,$XERCES_USE_MUTEXMGR_POSIX_FALSE,;t t
+s,@XERCES_USE_ATOMICOPMGR_POSIX_TRUE@,$XERCES_USE_ATOMICOPMGR_POSIX_TRUE,;t t
+s,@XERCES_USE_ATOMICOPMGR_POSIX_FALSE@,$XERCES_USE_ATOMICOPMGR_POSIX_FALSE,;t t
 s,@LTLIBOBJS@,$LTLIBOBJS,;t t
 CEOF
 

Modified: xerces/c/branches/jberry/3.0-unstable/lib/Makefile.in
URL: http://svn.apache.org/viewcvs/xerces/c/branches/jberry/3.0-unstable/lib/Makefile.in?rev=178580&r1=178579&r2=178580&view=diff
==============================================================================
--- xerces/c/branches/jberry/3.0-unstable/lib/Makefile.in (original)
+++ xerces/c/branches/jberry/3.0-unstable/lib/Makefile.in Wed May 25 22:00:22 2005
@@ -164,8 +164,14 @@
 SHELL = @SHELL@
 STRIP = @STRIP@
 VERSION = @VERSION@
+XERCES_USE_ATOMICOPMGR_POSIX_FALSE = @XERCES_USE_ATOMICOPMGR_POSIX_FALSE@
+XERCES_USE_ATOMICOPMGR_POSIX_TRUE = @XERCES_USE_ATOMICOPMGR_POSIX_TRUE@
+XERCES_USE_FILEMGR_POSIX_FALSE = @XERCES_USE_FILEMGR_POSIX_FALSE@
+XERCES_USE_FILEMGR_POSIX_TRUE = @XERCES_USE_FILEMGR_POSIX_TRUE@
 XERCES_USE_MSGLOADER_INMEMORY_FALSE = @XERCES_USE_MSGLOADER_INMEMORY_FALSE@
 XERCES_USE_MSGLOADER_INMEMORY_TRUE = @XERCES_USE_MSGLOADER_INMEMORY_TRUE@
+XERCES_USE_MUTEXMGR_POSIX_FALSE = @XERCES_USE_MUTEXMGR_POSIX_FALSE@
+XERCES_USE_MUTEXMGR_POSIX_TRUE = @XERCES_USE_MUTEXMGR_POSIX_TRUE@
 XERCES_USE_NETACCESSOR_CFURL_FALSE = @XERCES_USE_NETACCESSOR_CFURL_FALSE@
 XERCES_USE_NETACCESSOR_CFURL_TRUE = @XERCES_USE_NETACCESSOR_CFURL_TRUE@
 XERCES_USE_NETACCESSOR_CURL_FALSE = @XERCES_USE_NETACCESSOR_CURL_FALSE@
@@ -176,12 +182,6 @@
 XERCES_USE_NETACCESSOR_SOCKET_TRUE = @XERCES_USE_NETACCESSOR_SOCKET_TRUE@
 XERCES_USE_NETACCESSOR_WINSOCK_FALSE = @XERCES_USE_NETACCESSOR_WINSOCK_FALSE@
 XERCES_USE_NETACCESSOR_WINSOCK_TRUE = @XERCES_USE_NETACCESSOR_WINSOCK_TRUE@
-XERCES_USE_POSIX_ATOMICOPMGR_FALSE = @XERCES_USE_POSIX_ATOMICOPMGR_FALSE@
-XERCES_USE_POSIX_ATOMICOPMGR_TRUE = @XERCES_USE_POSIX_ATOMICOPMGR_TRUE@
-XERCES_USE_POSIX_FILEMGR_FALSE = @XERCES_USE_POSIX_FILEMGR_FALSE@
-XERCES_USE_POSIX_FILEMGR_TRUE = @XERCES_USE_POSIX_FILEMGR_TRUE@
-XERCES_USE_POSIX_MUTEXMGR_FALSE = @XERCES_USE_POSIX_MUTEXMGR_FALSE@
-XERCES_USE_POSIX_MUTEXMGR_TRUE = @XERCES_USE_POSIX_MUTEXMGR_TRUE@
 XERCES_USE_TRANSCODER_ICU_FALSE = @XERCES_USE_TRANSCODER_ICU_FALSE@
 XERCES_USE_TRANSCODER_ICU_TRUE = @XERCES_USE_TRANSCODER_ICU_TRUE@
 XERCES_USE_TRANSCODER_MACOSUNICODECONVERTER_FALSE = @XERCES_USE_TRANSCODER_MACOSUNICODECONVERTER_FALSE@

Modified: xerces/c/branches/jberry/3.0-unstable/m4/xerces_atomicopmgr_selection.m4
URL: http://svn.apache.org/viewcvs/xerces/c/branches/jberry/3.0-unstable/m4/xerces_atomicopmgr_selection.m4?rev=178580&r1=178579&r2=178580&view=diff
==============================================================================
--- xerces/c/branches/jberry/3.0-unstable/m4/xerces_atomicopmgr_selection.m4 (original)
+++ xerces/c/branches/jberry/3.0-unstable/m4/xerces_atomicopmgr_selection.m4 Wed May 25 22:00:22 2005
@@ -25,14 +25,14 @@
 	# Fall back to using posix mutex
 	AS_IF([test -z "$mgr"],
 		[mgr=POSIX;
-			AC_DEFINE([XERCES_USE_POSIX_ATOMICOPMGR], 1, [Define to use the POSIX AtomicOp mgr])
+			AC_DEFINE([XERCES_USE_ATOMICOPMGR_POSIX], 1, [Define to use the POSIX AtomicOp mgr])
 		])
 
 	AC_MSG_RESULT($mgr)
 	
 	# Define the auto-make conditionals which determine what actually gets compiled
 	# Note that these macros can't be executed conditionally, which is why they're here, not above.
-	AM_CONDITIONAL([XERCES_USE_POSIX_ATOMICOPMGR],	[test x"$mgr" = xPOSIX])
+	AM_CONDITIONAL([XERCES_USE_ATOMICOPMGR_POSIX],	[test x"$mgr" = xPOSIX])
 	
 	]
 )

Modified: xerces/c/branches/jberry/3.0-unstable/m4/xerces_filemgr_selection.m4
URL: http://svn.apache.org/viewcvs/xerces/c/branches/jberry/3.0-unstable/m4/xerces_filemgr_selection.m4?rev=178580&r1=178579&r2=178580&view=diff
==============================================================================
--- xerces/c/branches/jberry/3.0-unstable/m4/xerces_filemgr_selection.m4 (original)
+++ xerces/c/branches/jberry/3.0-unstable/m4/xerces_filemgr_selection.m4 Wed May 25 22:00:22 2005
@@ -25,14 +25,14 @@
 	# Fall back to using posix files
 	AS_IF([test -z "$mgr"],
 		[mgr=POSIX;
-			AC_DEFINE([XERCES_USE_POSIX_FILEMGR], 1, [Define to use the POSIX file mgr])
+			AC_DEFINE([XERCES_USE_FILEMGR_POSIX], 1, [Define to use the POSIX file mgr])
 		])
 
 	AC_MSG_RESULT($mgr)
 	
 	# Define the auto-make conditionals which determine what actually gets compiled
 	# Note that these macros can't be executed conditionally, which is why they're here, not above.
-	AM_CONDITIONAL([XERCES_USE_POSIX_FILEMGR],	[test x"$mgr" = xPOSIX])
+	AM_CONDITIONAL([XERCES_USE_FILEMGR_POSIX],	[test x"$mgr" = xPOSIX])
 	
 	]
 )

Modified: xerces/c/branches/jberry/3.0-unstable/m4/xerces_mutexmgr_selection.m4
URL: http://svn.apache.org/viewcvs/xerces/c/branches/jberry/3.0-unstable/m4/xerces_mutexmgr_selection.m4?rev=178580&r1=178579&r2=178580&view=diff
==============================================================================
--- xerces/c/branches/jberry/3.0-unstable/m4/xerces_mutexmgr_selection.m4 (original)
+++ xerces/c/branches/jberry/3.0-unstable/m4/xerces_mutexmgr_selection.m4 Wed May 25 22:00:22 2005
@@ -25,14 +25,14 @@
 	# Fall back to using posix mutex
 	AS_IF([test -z "$mgr"],
 		[mgr=POSIX;
-			AC_DEFINE([XERCES_USE_POSIX_MUTEXMGR], 1, [Define to use the POSIX mutex mgr])
+			AC_DEFINE([XERCES_USE_MUTEXMGR_POSIX], 1, [Define to use the POSIX mutex mgr])
 		])
 
 	AC_MSG_RESULT($mgr)
 	
 	# Define the auto-make conditionals which determine what actually gets compiled
 	# Note that these macros can't be executed conditionally, which is why they're here, not above.
-	AM_CONDITIONAL([XERCES_USE_POSIX_MUTEXMGR],	[test x"$mgr" = xPOSIX])
+	AM_CONDITIONAL([XERCES_USE_MUTEXMGR_POSIX],	[test x"$mgr" = xPOSIX])
 	
 	]
 )

Modified: xerces/c/branches/jberry/3.0-unstable/obj/Makefile.in
URL: http://svn.apache.org/viewcvs/xerces/c/branches/jberry/3.0-unstable/obj/Makefile.in?rev=178580&r1=178579&r2=178580&view=diff
==============================================================================
--- xerces/c/branches/jberry/3.0-unstable/obj/Makefile.in (original)
+++ xerces/c/branches/jberry/3.0-unstable/obj/Makefile.in Wed May 25 22:00:22 2005
@@ -170,8 +170,14 @@
 SHELL = @SHELL@
 STRIP = @STRIP@
 VERSION = @VERSION@
+XERCES_USE_ATOMICOPMGR_POSIX_FALSE = @XERCES_USE_ATOMICOPMGR_POSIX_FALSE@
+XERCES_USE_ATOMICOPMGR_POSIX_TRUE = @XERCES_USE_ATOMICOPMGR_POSIX_TRUE@
+XERCES_USE_FILEMGR_POSIX_FALSE = @XERCES_USE_FILEMGR_POSIX_FALSE@
+XERCES_USE_FILEMGR_POSIX_TRUE = @XERCES_USE_FILEMGR_POSIX_TRUE@
 XERCES_USE_MSGLOADER_INMEMORY_FALSE = @XERCES_USE_MSGLOADER_INMEMORY_FALSE@
 XERCES_USE_MSGLOADER_INMEMORY_TRUE = @XERCES_USE_MSGLOADER_INMEMORY_TRUE@
+XERCES_USE_MUTEXMGR_POSIX_FALSE = @XERCES_USE_MUTEXMGR_POSIX_FALSE@
+XERCES_USE_MUTEXMGR_POSIX_TRUE = @XERCES_USE_MUTEXMGR_POSIX_TRUE@
 XERCES_USE_NETACCESSOR_CFURL_FALSE = @XERCES_USE_NETACCESSOR_CFURL_FALSE@
 XERCES_USE_NETACCESSOR_CFURL_TRUE = @XERCES_USE_NETACCESSOR_CFURL_TRUE@
 XERCES_USE_NETACCESSOR_CURL_FALSE = @XERCES_USE_NETACCESSOR_CURL_FALSE@
@@ -182,12 +188,6 @@
 XERCES_USE_NETACCESSOR_SOCKET_TRUE = @XERCES_USE_NETACCESSOR_SOCKET_TRUE@
 XERCES_USE_NETACCESSOR_WINSOCK_FALSE = @XERCES_USE_NETACCESSOR_WINSOCK_FALSE@
 XERCES_USE_NETACCESSOR_WINSOCK_TRUE = @XERCES_USE_NETACCESSOR_WINSOCK_TRUE@
-XERCES_USE_POSIX_ATOMICOPMGR_FALSE = @XERCES_USE_POSIX_ATOMICOPMGR_FALSE@
-XERCES_USE_POSIX_ATOMICOPMGR_TRUE = @XERCES_USE_POSIX_ATOMICOPMGR_TRUE@
-XERCES_USE_POSIX_FILEMGR_FALSE = @XERCES_USE_POSIX_FILEMGR_FALSE@
-XERCES_USE_POSIX_FILEMGR_TRUE = @XERCES_USE_POSIX_FILEMGR_TRUE@
-XERCES_USE_POSIX_MUTEXMGR_FALSE = @XERCES_USE_POSIX_MUTEXMGR_FALSE@
-XERCES_USE_POSIX_MUTEXMGR_TRUE = @XERCES_USE_POSIX_MUTEXMGR_TRUE@
 XERCES_USE_TRANSCODER_ICU_FALSE = @XERCES_USE_TRANSCODER_ICU_FALSE@
 XERCES_USE_TRANSCODER_ICU_TRUE = @XERCES_USE_TRANSCODER_ICU_TRUE@
 XERCES_USE_TRANSCODER_MACOSUNICODECONVERTER_FALSE = @XERCES_USE_TRANSCODER_MACOSUNICODECONVERTER_FALSE@

Modified: xerces/c/branches/jberry/3.0-unstable/src/Makefile.am
URL: http://svn.apache.org/viewcvs/xerces/c/branches/jberry/3.0-unstable/src/Makefile.am?rev=178580&r1=178579&r2=178580&view=diff
==============================================================================
--- xerces/c/branches/jberry/3.0-unstable/src/Makefile.am (original)
+++ xerces/c/branches/jberry/3.0-unstable/src/Makefile.am Wed May 25 22:00:22 2005
@@ -125,7 +125,35 @@
 libinmemory_la_SOURCES =			${inmemory_sources}
 endif
 
+#
+# AtomicOp Managers, conditionally built based on settings from configure
+#
+if XERCES_USE_ATOMICOPMGR_POSIX
+src_libraries +=					libposixaomgr.la
+libposixaomgr_ladir =				${includedir}
+nobase_libposixaomgr_la_HEADERS =	${posixaomgr_headers}
+libposixaomgr_la_SOURCES =			${posixaomgr_sources}
+endif
 
+#
+# Mutex Managers, conditionally built based on settings from configure
+#
+if XERCES_USE_MUTEXMGR_POSIX
+src_libraries +=					libposixmmgr.la
+libposixmmgr_ladir =				${includedir}
+nobase_libposixmmgr_la_HEADERS =	${posixmmgr_headers}
+libposixmmgr_la_SOURCES =			${posixmmgr_sources}
+endif
+
+#
+# File Managers, conditionally built based on settings from configure
+#
+if XERCES_USE_FILEMGR_POSIX
+src_libraries +=					libposixfmgr.la
+libposixfmgr_ladir =				${includedir}
+nobase_libposixfmgr_la_HEADERS =	${posixfmgr_headers}
+libposixfmgr_la_SOURCES =			${posixfmgr_sources}
+endif
 
 #
 # TEMPORARY PLATFORM SUPPORT
@@ -933,6 +961,28 @@
 	
 inmemory_sources = \
 	xercesc/util/MsgLoaders/InMemory/InMemMsgLoader.cpp
+
+
+posixfmgr_headers = \
+	xercesc/util/FileManagers/PosixFileMgr.hpp
+
+posixfmgr_sources = \
+	xercesc/util/FileManagers/PosixFileMgr.cpp
+
+
+posixmmgr_headers = \
+	xercesc/util/MutexManagers/PosixMutexMgr.hpp
+
+posixmmgr_sources = \
+	xercesc/util/MutexManagers/PosixMutexMgr.cpp
+
+
+posixaomgr_headers = \
+	xercesc/util/AtomicOpManagers/PosixAtomicOpMgr.hpp
+
+posixaomgr_sources = \
+	xercesc/util/AtomicOpManagers/PosixAtomicOpMgr.cpp
+
 
 
 macplatform_headers = \

Modified: xerces/c/branches/jberry/3.0-unstable/src/Makefile.in
URL: http://svn.apache.org/viewcvs/xerces/c/branches/jberry/3.0-unstable/src/Makefile.in?rev=178580&r1=178579&r2=178580&view=diff
==============================================================================
--- xerces/c/branches/jberry/3.0-unstable/src/Makefile.in (original)
+++ xerces/c/branches/jberry/3.0-unstable/src/Makefile.in Wed May 25 22:00:22 2005
@@ -35,7 +35,7 @@
 #
 
 
-SOURCES = $(libcfurl_la_SOURCES) $(libdom_la_SOURCES) $(libdomimpl_la_SOURCES) $(libframework_la_SOURCES) $(libicu_la_SOURCES) $(libinmemory_la_SOURCES) $(libinternal_la_SOURCES) $(libmacosunicodeconverter_la_SOURCES) $(libparsers_la_SOURCES) $(libsax_la_SOURCES) $(libsax2_la_SOURCES) $(libsrc_la_SOURCES) $(libutil_la_SOURCES) $(libvalidators_la_SOURCES)
+SOURCES = $(libcfurl_la_SOURCES) $(libdom_la_SOURCES) $(libdomimpl_la_SOURCES) $(libframework_la_SOURCES) $(libicu_la_SOURCES) $(libinmemory_la_SOURCES) $(libinternal_la_SOURCES) $(libmacosunicodeconverter_la_SOURCES) $(libparsers_la_SOURCES) $(libposixaomgr_la_SOURCES) $(libposixfmgr_la_SOURCES) $(libposixmmgr_la_SOURCES) $(libsax_la_SOURCES) $(libsax2_la_SOURCES) $(libsrc_la_SOURCES) $(libutil_la_SOURCES) $(libvalidators_la_SOURCES)
 
 srcdir = @srcdir@
 top_srcdir = @top_srcdir@
@@ -75,11 +75,29 @@
 # MsgLoaders, conditionally built based on settings from configure
 #
 @XERCES_USE_MSGLOADER_INMEMORY_TRUE@am__append_4 = libinmemory.la
+
+#
+# AtomicOp Managers, conditionally built based on settings from configure
+#
+@XERCES_USE_ATOMICOPMGR_POSIX_TRUE@am__append_5 = libposixaomgr.la
+
+#
+# Mutex Managers, conditionally built based on settings from configure
+#
+@XERCES_USE_MUTEXMGR_POSIX_TRUE@am__append_6 = libposixmmgr.la
+
+#
+# File Managers, conditionally built based on settings from configure
+#
+@XERCES_USE_FILEMGR_POSIX_TRUE@am__append_7 = libposixfmgr.la
 subdir = src
 DIST_COMMON = $(am__nobase_libcfurl_la_HEADERS_DIST) \
 	$(am__nobase_libicu_la_HEADERS_DIST) \
 	$(am__nobase_libinmemory_la_HEADERS_DIST) \
 	$(am__nobase_libmacosunicodeconverter_la_HEADERS_DIST) \
+	$(am__nobase_libposixaomgr_la_HEADERS_DIST) \
+	$(am__nobase_libposixfmgr_la_HEADERS_DIST) \
+	$(am__nobase_libposixmmgr_la_HEADERS_DIST) \
 	$(nobase_libdom_la_HEADERS) $(nobase_libdomimpl_la_HEADERS) \
 	$(nobase_libframework_la_HEADERS) \
 	$(nobase_libinternal_la_HEADERS) \
@@ -276,30 +294,59 @@
 	xercesc/parsers/XercesDOMParser.lo
 am_libparsers_la_OBJECTS = $(am__objects_9)
 libparsers_la_OBJECTS = $(am_libparsers_la_OBJECTS)
+libposixaomgr_la_LIBADD =
+am__libposixaomgr_la_SOURCES_DIST =  \
+	xercesc/util/AtomicOpManagers/PosixAtomicOpMgr.cpp
+am__objects_10 = xercesc/util/AtomicOpManagers/PosixAtomicOpMgr.lo
+@XERCES_USE_ATOMICOPMGR_POSIX_TRUE@am_libposixaomgr_la_OBJECTS =  \
+@XERCES_USE_ATOMICOPMGR_POSIX_TRUE@	$(am__objects_10)
+libposixaomgr_la_OBJECTS = $(am_libposixaomgr_la_OBJECTS)
+@XERCES_USE_ATOMICOPMGR_POSIX_TRUE@am_libposixaomgr_la_rpath =
+libposixfmgr_la_LIBADD =
+am__libposixfmgr_la_SOURCES_DIST =  \
+	xercesc/util/FileManagers/PosixFileMgr.cpp
+am__objects_11 = xercesc/util/FileManagers/PosixFileMgr.lo
+@XERCES_USE_FILEMGR_POSIX_TRUE@am_libposixfmgr_la_OBJECTS =  \
+@XERCES_USE_FILEMGR_POSIX_TRUE@	$(am__objects_11)
+libposixfmgr_la_OBJECTS = $(am_libposixfmgr_la_OBJECTS)
+@XERCES_USE_FILEMGR_POSIX_TRUE@am_libposixfmgr_la_rpath =
+libposixmmgr_la_LIBADD =
+am__libposixmmgr_la_SOURCES_DIST =  \
+	xercesc/util/MutexManagers/PosixMutexMgr.cpp
+am__objects_12 = xercesc/util/MutexManagers/PosixMutexMgr.lo
+@XERCES_USE_MUTEXMGR_POSIX_TRUE@am_libposixmmgr_la_OBJECTS =  \
+@XERCES_USE_MUTEXMGR_POSIX_TRUE@	$(am__objects_12)
+libposixmmgr_la_OBJECTS = $(am_libposixmmgr_la_OBJECTS)
+@XERCES_USE_MUTEXMGR_POSIX_TRUE@am_libposixmmgr_la_rpath =
 libsax_la_LIBADD =
-am__objects_10 = xercesc/sax/Dummy.lo xercesc/sax/InputSource.lo \
+am__objects_13 = xercesc/sax/Dummy.lo xercesc/sax/InputSource.lo \
 	xercesc/sax/SAXException.lo xercesc/sax/SAXParseException.lo
-am_libsax_la_OBJECTS = $(am__objects_10)
+am_libsax_la_OBJECTS = $(am__objects_13)
 libsax_la_OBJECTS = $(am_libsax_la_OBJECTS)
 libsax2_la_LIBADD =
-am__objects_11 = xercesc/sax2/sax2Dummy.lo
-am_libsax2_la_OBJECTS = $(am__objects_11)
+am__objects_14 = xercesc/sax2/sax2Dummy.lo
+am_libsax2_la_OBJECTS = $(am__objects_14)
 libsax2_la_OBJECTS = $(am_libsax2_la_OBJECTS)
 @XERCES_USE_NETACCESSOR_CFURL_TRUE@am__DEPENDENCIES_1 = libcfurl.la
 @XERCES_USE_TRANSCODER_ICU_TRUE@am__DEPENDENCIES_2 = libicu.la
 @XERCES_USE_TRANSCODER_MACOSUNICODECONVERTER_TRUE@am__DEPENDENCIES_3 = libmacosunicodeconverter.la
 @XERCES_USE_MSGLOADER_INMEMORY_TRUE@am__DEPENDENCIES_4 =  \
 @XERCES_USE_MSGLOADER_INMEMORY_TRUE@	libinmemory.la
-am__DEPENDENCIES_5 = libutil.la libdom.la libdomimpl.la \
+@XERCES_USE_ATOMICOPMGR_POSIX_TRUE@am__DEPENDENCIES_5 =  \
+@XERCES_USE_ATOMICOPMGR_POSIX_TRUE@	libposixaomgr.la
+@XERCES_USE_MUTEXMGR_POSIX_TRUE@am__DEPENDENCIES_6 = libposixmmgr.la
+@XERCES_USE_FILEMGR_POSIX_TRUE@am__DEPENDENCIES_7 = libposixfmgr.la
+am__DEPENDENCIES_8 = libutil.la libdom.la libdomimpl.la \
 	libframework.la libinternal.la libparsers.la libsax.la \
 	libsax2.la libvalidators.la $(am__DEPENDENCIES_1) \
 	$(am__DEPENDENCIES_2) $(am__DEPENDENCIES_3) \
-	$(am__DEPENDENCIES_4)
-libsrc_la_DEPENDENCIES = $(am__DEPENDENCIES_5)
+	$(am__DEPENDENCIES_4) $(am__DEPENDENCIES_5) \
+	$(am__DEPENDENCIES_6) $(am__DEPENDENCIES_7)
+libsrc_la_DEPENDENCIES = $(am__DEPENDENCIES_8)
 am_libsrc_la_OBJECTS =
 libsrc_la_OBJECTS = $(am_libsrc_la_OBJECTS)
 libutil_la_LIBADD =
-am__objects_12 = xercesc/util/Base64.lo \
+am__objects_15 = xercesc/util/Base64.lo \
 	xercesc/util/BinFileInputStream.lo \
 	xercesc/util/BinInputStream.lo \
 	xercesc/util/BinMemInputStream.lo xercesc/util/BitSet.lo \
@@ -351,10 +398,10 @@
 	xercesc/util/XMLUTF16Transcoder.lo \
 	xercesc/util/XMLUTF8Transcoder.lo \
 	xercesc/util/XMLWin1252Transcoder.lo
-am_libutil_la_OBJECTS = $(am__objects_12)
+am_libutil_la_OBJECTS = $(am__objects_15)
 libutil_la_OBJECTS = $(am_libutil_la_OBJECTS)
 libvalidators_la_LIBADD =
-am__objects_13 = xercesc/validators/common/AllContentModel.lo \
+am__objects_16 = xercesc/validators/common/AllContentModel.lo \
 	xercesc/validators/common/CMAny.lo \
 	xercesc/validators/common/CMBinaryOp.lo \
 	xercesc/validators/common/CMUnaryOp.lo \
@@ -442,7 +489,7 @@
 	xercesc/validators/schema/XSDErrorReporter.lo \
 	xercesc/validators/schema/XSDLocator.lo \
 	xercesc/validators/schema/XUtil.lo
-am_libvalidators_la_OBJECTS = $(am__objects_13)
+am_libvalidators_la_OBJECTS = $(am__objects_16)
 libvalidators_la_OBJECTS = $(am_libvalidators_la_OBJECTS)
 DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) -I$(top_builddir)
 depcomp = $(SHELL) $(top_srcdir)/config/depcomp
@@ -468,15 +515,19 @@
 	$(libicu_la_SOURCES) $(libinmemory_la_SOURCES) \
 	$(libinternal_la_SOURCES) \
 	$(libmacosunicodeconverter_la_SOURCES) \
-	$(libparsers_la_SOURCES) $(libsax_la_SOURCES) \
-	$(libsax2_la_SOURCES) $(libsrc_la_SOURCES) \
-	$(libutil_la_SOURCES) $(libvalidators_la_SOURCES)
+	$(libparsers_la_SOURCES) $(libposixaomgr_la_SOURCES) \
+	$(libposixfmgr_la_SOURCES) $(libposixmmgr_la_SOURCES) \
+	$(libsax_la_SOURCES) $(libsax2_la_SOURCES) \
+	$(libsrc_la_SOURCES) $(libutil_la_SOURCES) \
+	$(libvalidators_la_SOURCES)
 DIST_SOURCES = $(am__libcfurl_la_SOURCES_DIST) $(libdom_la_SOURCES) \
 	$(libdomimpl_la_SOURCES) $(libframework_la_SOURCES) \
 	$(am__libicu_la_SOURCES_DIST) \
 	$(am__libinmemory_la_SOURCES_DIST) $(libinternal_la_SOURCES) \
 	$(am__libmacosunicodeconverter_la_SOURCES_DIST) \
-	$(libparsers_la_SOURCES) $(libsax_la_SOURCES) \
+	$(libparsers_la_SOURCES) $(am__libposixaomgr_la_SOURCES_DIST) \
+	$(am__libposixfmgr_la_SOURCES_DIST) \
+	$(am__libposixmmgr_la_SOURCES_DIST) $(libsax_la_SOURCES) \
 	$(libsax2_la_SOURCES) $(libsrc_la_SOURCES) \
 	$(libutil_la_SOURCES) $(libvalidators_la_SOURCES)
 am__nobase_libcfurl_la_HEADERS_DIST = xercesc/util/NetAccessors/MacOSURLAccessCF/MacOSURLAccessCF.hpp \
@@ -493,7 +544,10 @@
 	"$(DESTDIR)$(libinmemory_ladir)" \
 	"$(DESTDIR)$(libinternal_ladir)" \
 	"$(DESTDIR)$(libmacosunicodeconverter_ladir)" \
-	"$(DESTDIR)$(libparsers_ladir)" "$(DESTDIR)$(libsax2_ladir)" \
+	"$(DESTDIR)$(libparsers_ladir)" \
+	"$(DESTDIR)$(libposixaomgr_ladir)" \
+	"$(DESTDIR)$(libposixfmgr_ladir)" \
+	"$(DESTDIR)$(libposixmmgr_ladir)" "$(DESTDIR)$(libsax2_ladir)" \
 	"$(DESTDIR)$(libsax_ladir)" "$(DESTDIR)$(libutil_ladir)" \
 	"$(DESTDIR)$(libvalidators_ladir)"
 nobase_libcfurl_laHEADERS_INSTALL = $(install_sh_DATA)
@@ -511,6 +565,15 @@
 am__nobase_libmacosunicodeconverter_la_HEADERS_DIST = xercesc/util/Transcoders/MacOSUnicodeConverter/MacOSUnicodeConverter.hpp
 nobase_libmacosunicodeconverter_laHEADERS_INSTALL = $(install_sh_DATA)
 nobase_libparsers_laHEADERS_INSTALL = $(install_sh_DATA)
+am__nobase_libposixaomgr_la_HEADERS_DIST =  \
+	xercesc/util/AtomicOpManagers/PosixAtomicOpMgr.hpp
+nobase_libposixaomgr_laHEADERS_INSTALL = $(install_sh_DATA)
+am__nobase_libposixfmgr_la_HEADERS_DIST =  \
+	xercesc/util/FileManagers/PosixFileMgr.hpp
+nobase_libposixfmgr_laHEADERS_INSTALL = $(install_sh_DATA)
+am__nobase_libposixmmgr_la_HEADERS_DIST =  \
+	xercesc/util/MutexManagers/PosixMutexMgr.hpp
+nobase_libposixmmgr_laHEADERS_INSTALL = $(install_sh_DATA)
 nobase_libsax2_laHEADERS_INSTALL = $(install_sh_DATA)
 nobase_libsax_laHEADERS_INSTALL = $(install_sh_DATA)
 nobase_libutil_laHEADERS_INSTALL = $(install_sh_DATA)
@@ -521,7 +584,10 @@
 	$(nobase_libinmemory_la_HEADERS) \
 	$(nobase_libinternal_la_HEADERS) \
 	$(nobase_libmacosunicodeconverter_la_HEADERS) \
-	$(nobase_libparsers_la_HEADERS) $(nobase_libsax2_la_HEADERS) \
+	$(nobase_libparsers_la_HEADERS) \
+	$(nobase_libposixaomgr_la_HEADERS) \
+	$(nobase_libposixfmgr_la_HEADERS) \
+	$(nobase_libposixmmgr_la_HEADERS) $(nobase_libsax2_la_HEADERS) \
 	$(nobase_libsax_la_HEADERS) $(nobase_libutil_la_HEADERS) \
 	$(nobase_libvalidators_la_HEADERS)
 ETAGS = etags
@@ -585,8 +651,14 @@
 SHELL = @SHELL@
 STRIP = @STRIP@
 VERSION = @VERSION@
+XERCES_USE_ATOMICOPMGR_POSIX_FALSE = @XERCES_USE_ATOMICOPMGR_POSIX_FALSE@
+XERCES_USE_ATOMICOPMGR_POSIX_TRUE = @XERCES_USE_ATOMICOPMGR_POSIX_TRUE@
+XERCES_USE_FILEMGR_POSIX_FALSE = @XERCES_USE_FILEMGR_POSIX_FALSE@
+XERCES_USE_FILEMGR_POSIX_TRUE = @XERCES_USE_FILEMGR_POSIX_TRUE@
 XERCES_USE_MSGLOADER_INMEMORY_FALSE = @XERCES_USE_MSGLOADER_INMEMORY_FALSE@
 XERCES_USE_MSGLOADER_INMEMORY_TRUE = @XERCES_USE_MSGLOADER_INMEMORY_TRUE@
+XERCES_USE_MUTEXMGR_POSIX_FALSE = @XERCES_USE_MUTEXMGR_POSIX_FALSE@
+XERCES_USE_MUTEXMGR_POSIX_TRUE = @XERCES_USE_MUTEXMGR_POSIX_TRUE@
 XERCES_USE_NETACCESSOR_CFURL_FALSE = @XERCES_USE_NETACCESSOR_CFURL_FALSE@
 XERCES_USE_NETACCESSOR_CFURL_TRUE = @XERCES_USE_NETACCESSOR_CFURL_TRUE@
 XERCES_USE_NETACCESSOR_CURL_FALSE = @XERCES_USE_NETACCESSOR_CURL_FALSE@
@@ -597,12 +669,6 @@
 XERCES_USE_NETACCESSOR_SOCKET_TRUE = @XERCES_USE_NETACCESSOR_SOCKET_TRUE@
 XERCES_USE_NETACCESSOR_WINSOCK_FALSE = @XERCES_USE_NETACCESSOR_WINSOCK_FALSE@
 XERCES_USE_NETACCESSOR_WINSOCK_TRUE = @XERCES_USE_NETACCESSOR_WINSOCK_TRUE@
-XERCES_USE_POSIX_ATOMICOPMGR_FALSE = @XERCES_USE_POSIX_ATOMICOPMGR_FALSE@
-XERCES_USE_POSIX_ATOMICOPMGR_TRUE = @XERCES_USE_POSIX_ATOMICOPMGR_TRUE@
-XERCES_USE_POSIX_FILEMGR_FALSE = @XERCES_USE_POSIX_FILEMGR_FALSE@
-XERCES_USE_POSIX_FILEMGR_TRUE = @XERCES_USE_POSIX_FILEMGR_TRUE@
-XERCES_USE_POSIX_MUTEXMGR_FALSE = @XERCES_USE_POSIX_MUTEXMGR_FALSE@
-XERCES_USE_POSIX_MUTEXMGR_TRUE = @XERCES_USE_POSIX_MUTEXMGR_TRUE@
 XERCES_USE_TRANSCODER_ICU_FALSE = @XERCES_USE_TRANSCODER_ICU_FALSE@
 XERCES_USE_TRANSCODER_ICU_TRUE = @XERCES_USE_TRANSCODER_ICU_TRUE@
 XERCES_USE_TRANSCODER_MACOSUNICODECONVERTER_FALSE = @XERCES_USE_TRANSCODER_MACOSUNICODECONVERTER_FALSE@
@@ -672,7 +738,8 @@
 src_libraries = libutil.la libdom.la libdomimpl.la libframework.la \
 	libinternal.la libparsers.la libsax.la libsax2.la \
 	libvalidators.la $(am__append_1) $(am__append_2) \
-	$(am__append_3) $(am__append_4)
+	$(am__append_3) $(am__append_4) $(am__append_5) \
+	$(am__append_6) $(am__append_7)
 libutil_ladir = ${includedir}
 nobase_libutil_la_HEADERS = ${util_headers}
 libutil_la_SOURCES = ${util_sources}
@@ -715,6 +782,15 @@
 @XERCES_USE_MSGLOADER_INMEMORY_TRUE@libinmemory_ladir = ${includedir}
 @XERCES_USE_MSGLOADER_INMEMORY_TRUE@nobase_libinmemory_la_HEADERS = ${inmemory_headers}
 @XERCES_USE_MSGLOADER_INMEMORY_TRUE@libinmemory_la_SOURCES = ${inmemory_sources}
+@XERCES_USE_ATOMICOPMGR_POSIX_TRUE@libposixaomgr_ladir = ${includedir}
+@XERCES_USE_ATOMICOPMGR_POSIX_TRUE@nobase_libposixaomgr_la_HEADERS = ${posixaomgr_headers}
+@XERCES_USE_ATOMICOPMGR_POSIX_TRUE@libposixaomgr_la_SOURCES = ${posixaomgr_sources}
+@XERCES_USE_MUTEXMGR_POSIX_TRUE@libposixmmgr_ladir = ${includedir}
+@XERCES_USE_MUTEXMGR_POSIX_TRUE@nobase_libposixmmgr_la_HEADERS = ${posixmmgr_headers}
+@XERCES_USE_MUTEXMGR_POSIX_TRUE@libposixmmgr_la_SOURCES = ${posixmmgr_sources}
+@XERCES_USE_FILEMGR_POSIX_TRUE@libposixfmgr_ladir = ${includedir}
+@XERCES_USE_FILEMGR_POSIX_TRUE@nobase_libposixfmgr_la_HEADERS = ${posixfmgr_headers}
+@XERCES_USE_FILEMGR_POSIX_TRUE@libposixfmgr_la_SOURCES = ${posixfmgr_sources}
 
 #
 # TEMPORARY PLATFORM SUPPORT
@@ -1510,6 +1586,24 @@
 inmemory_sources = \
 	xercesc/util/MsgLoaders/InMemory/InMemMsgLoader.cpp
 
+posixfmgr_headers = \
+	xercesc/util/FileManagers/PosixFileMgr.hpp
+
+posixfmgr_sources = \
+	xercesc/util/FileManagers/PosixFileMgr.cpp
+
+posixmmgr_headers = \
+	xercesc/util/MutexManagers/PosixMutexMgr.hpp
+
+posixmmgr_sources = \
+	xercesc/util/MutexManagers/PosixMutexMgr.cpp
+
+posixaomgr_headers = \
+	xercesc/util/AtomicOpManagers/PosixAtomicOpMgr.hpp
+
+posixaomgr_sources = \
+	xercesc/util/AtomicOpManagers/PosixAtomicOpMgr.cpp
+
 macplatform_headers = \
 	xercesc/util/Platforms/MacOS/MacAbstractFile.hpp \
 	xercesc/util/Platforms/MacOS/MacCarbonFile.hpp \
@@ -1959,6 +2053,39 @@
 	xercesc/parsers/$(DEPDIR)/$(am__dirstamp)
 libparsers.la: $(libparsers_la_OBJECTS) $(libparsers_la_DEPENDENCIES) 
 	$(CXXLINK)  $(libparsers_la_LDFLAGS) $(libparsers_la_OBJECTS) $(libparsers_la_LIBADD) $(LIBS)
+xercesc/util/AtomicOpManagers/$(am__dirstamp):
+	@$(mkdir_p) xercesc/util/AtomicOpManagers
+	@: > xercesc/util/AtomicOpManagers/$(am__dirstamp)
+xercesc/util/AtomicOpManagers/$(DEPDIR)/$(am__dirstamp):
+	@$(mkdir_p) xercesc/util/AtomicOpManagers/$(DEPDIR)
+	@: > xercesc/util/AtomicOpManagers/$(DEPDIR)/$(am__dirstamp)
+xercesc/util/AtomicOpManagers/PosixAtomicOpMgr.lo:  \
+	xercesc/util/AtomicOpManagers/$(am__dirstamp) \
+	xercesc/util/AtomicOpManagers/$(DEPDIR)/$(am__dirstamp)
+libposixaomgr.la: $(libposixaomgr_la_OBJECTS) $(libposixaomgr_la_DEPENDENCIES) 
+	$(CXXLINK) $(am_libposixaomgr_la_rpath) $(libposixaomgr_la_LDFLAGS) $(libposixaomgr_la_OBJECTS) $(libposixaomgr_la_LIBADD) $(LIBS)
+xercesc/util/FileManagers/$(am__dirstamp):
+	@$(mkdir_p) xercesc/util/FileManagers
+	@: > xercesc/util/FileManagers/$(am__dirstamp)
+xercesc/util/FileManagers/$(DEPDIR)/$(am__dirstamp):
+	@$(mkdir_p) xercesc/util/FileManagers/$(DEPDIR)
+	@: > xercesc/util/FileManagers/$(DEPDIR)/$(am__dirstamp)
+xercesc/util/FileManagers/PosixFileMgr.lo:  \
+	xercesc/util/FileManagers/$(am__dirstamp) \
+	xercesc/util/FileManagers/$(DEPDIR)/$(am__dirstamp)
+libposixfmgr.la: $(libposixfmgr_la_OBJECTS) $(libposixfmgr_la_DEPENDENCIES) 
+	$(CXXLINK) $(am_libposixfmgr_la_rpath) $(libposixfmgr_la_LDFLAGS) $(libposixfmgr_la_OBJECTS) $(libposixfmgr_la_LIBADD) $(LIBS)
+xercesc/util/MutexManagers/$(am__dirstamp):
+	@$(mkdir_p) xercesc/util/MutexManagers
+	@: > xercesc/util/MutexManagers/$(am__dirstamp)
+xercesc/util/MutexManagers/$(DEPDIR)/$(am__dirstamp):
+	@$(mkdir_p) xercesc/util/MutexManagers/$(DEPDIR)
+	@: > xercesc/util/MutexManagers/$(DEPDIR)/$(am__dirstamp)
+xercesc/util/MutexManagers/PosixMutexMgr.lo:  \
+	xercesc/util/MutexManagers/$(am__dirstamp) \
+	xercesc/util/MutexManagers/$(DEPDIR)/$(am__dirstamp)
+libposixmmgr.la: $(libposixmmgr_la_OBJECTS) $(libposixmmgr_la_DEPENDENCIES) 
+	$(CXXLINK) $(am_libposixmmgr_la_rpath) $(libposixmmgr_la_LDFLAGS) $(libposixmmgr_la_OBJECTS) $(libposixmmgr_la_LIBADD) $(LIBS)
 xercesc/sax/$(am__dirstamp):
 	@$(mkdir_p) xercesc/sax
 	@: > xercesc/sax/$(am__dirstamp)
@@ -2704,6 +2831,8 @@
 	-rm -f xercesc/sax/SAXParseException.lo
 	-rm -f xercesc/sax2/sax2Dummy.$(OBJEXT)
 	-rm -f xercesc/sax2/sax2Dummy.lo
+	-rm -f xercesc/util/AtomicOpManagers/PosixAtomicOpMgr.$(OBJEXT)
+	-rm -f xercesc/util/AtomicOpManagers/PosixAtomicOpMgr.lo
 	-rm -f xercesc/util/Base64.$(OBJEXT)
 	-rm -f xercesc/util/Base64.lo
 	-rm -f xercesc/util/BinFileInputStream.$(OBJEXT)
@@ -2718,6 +2847,8 @@
 	-rm -f xercesc/util/DefaultPanicHandler.lo
 	-rm -f xercesc/util/EncodingValidator.$(OBJEXT)
 	-rm -f xercesc/util/EncodingValidator.lo
+	-rm -f xercesc/util/FileManagers/PosixFileMgr.$(OBJEXT)
+	-rm -f xercesc/util/FileManagers/PosixFileMgr.lo
 	-rm -f xercesc/util/HashPtr.$(OBJEXT)
 	-rm -f xercesc/util/HashPtr.lo
 	-rm -f xercesc/util/HashXMLCh.$(OBJEXT)
@@ -2730,6 +2861,8 @@
 	-rm -f xercesc/util/KVStringPair.lo
 	-rm -f xercesc/util/MsgLoaders/InMemory/InMemMsgLoader.$(OBJEXT)
 	-rm -f xercesc/util/MsgLoaders/InMemory/InMemMsgLoader.lo
+	-rm -f xercesc/util/MutexManagers/PosixMutexMgr.$(OBJEXT)
+	-rm -f xercesc/util/MutexManagers/PosixMutexMgr.lo
 	-rm -f xercesc/util/Mutexes.$(OBJEXT)
 	-rm -f xercesc/util/Mutexes.lo
 	-rm -f xercesc/util/NetAccessors/MacOSURLAccessCF/MacOSURLAccessCF.$(OBJEXT)
@@ -3214,7 +3347,10 @@
 @AMDEP_TRUE@@am__include@ @am__quote@xercesc/util/$(DEPDIR)/XMLUri.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@xercesc/util/$(DEPDIR)/XMLWin1252Transcoder.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@xercesc/util/$(DEPDIR)/XMemory.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@xercesc/util/AtomicOpManagers/$(DEPDIR)/PosixAtomicOpMgr.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@xercesc/util/FileManagers/$(DEPDIR)/PosixFileMgr.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@xercesc/util/MsgLoaders/InMemory/$(DEPDIR)/InMemMsgLoader.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@xercesc/util/MutexManagers/$(DEPDIR)/PosixMutexMgr.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@xercesc/util/NetAccessors/MacOSURLAccessCF/$(DEPDIR)/MacOSURLAccessCF.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@xercesc/util/NetAccessors/MacOSURLAccessCF/$(DEPDIR)/URLAccessCFBinInputStream.Plo@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@xercesc/util/Transcoders/ICU/$(DEPDIR)/libicu_la-ICUTransService.Plo@am__quote@
@@ -3379,7 +3515,10 @@
 	-rm -rf xercesc/sax/.libs xercesc/sax/_libs
 	-rm -rf xercesc/sax2/.libs xercesc/sax2/_libs
 	-rm -rf xercesc/util/.libs xercesc/util/_libs
+	-rm -rf xercesc/util/AtomicOpManagers/.libs xercesc/util/AtomicOpManagers/_libs
+	-rm -rf xercesc/util/FileManagers/.libs xercesc/util/FileManagers/_libs
 	-rm -rf xercesc/util/MsgLoaders/InMemory/.libs xercesc/util/MsgLoaders/InMemory/_libs
+	-rm -rf xercesc/util/MutexManagers/.libs xercesc/util/MutexManagers/_libs
 	-rm -rf xercesc/util/NetAccessors/MacOSURLAccessCF/.libs xercesc/util/NetAccessors/MacOSURLAccessCF/_libs
 	-rm -rf xercesc/util/Transcoders/ICU/.libs xercesc/util/Transcoders/ICU/_libs
 	-rm -rf xercesc/util/Transcoders/MacOSUnicodeConverter/.libs xercesc/util/Transcoders/MacOSUnicodeConverter/_libs
@@ -3564,6 +3703,63 @@
 	  echo " rm -f '$(DESTDIR)$(libparsers_ladir)/$$f'"; \
 	  rm -f "$(DESTDIR)$(libparsers_ladir)/$$f"; \
 	done
+install-nobase_libposixaomgr_laHEADERS: $(nobase_libposixaomgr_la_HEADERS)
+	@$(NORMAL_INSTALL)
+	test -z "$(libposixaomgr_ladir)" || $(mkdir_p) "$(DESTDIR)$(libposixaomgr_ladir)"
+	@$(am__vpath_adj_setup) \
+	list='$(nobase_libposixaomgr_la_HEADERS)'; for p in $$list; do \
+	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+	  $(am__vpath_adj) \
+	  echo " $(nobase_libposixaomgr_laHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(libposixaomgr_ladir)/$$f'"; \
+	  $(nobase_libposixaomgr_laHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(libposixaomgr_ladir)/$$f"; \
+	done
+
+uninstall-nobase_libposixaomgr_laHEADERS:
+	@$(NORMAL_UNINSTALL)
+	@$(am__vpath_adj_setup) \
+	list='$(nobase_libposixaomgr_la_HEADERS)'; for p in $$list; do \
+	  $(am__vpath_adj) \
+	  echo " rm -f '$(DESTDIR)$(libposixaomgr_ladir)/$$f'"; \
+	  rm -f "$(DESTDIR)$(libposixaomgr_ladir)/$$f"; \
+	done
+install-nobase_libposixfmgr_laHEADERS: $(nobase_libposixfmgr_la_HEADERS)
+	@$(NORMAL_INSTALL)
+	test -z "$(libposixfmgr_ladir)" || $(mkdir_p) "$(DESTDIR)$(libposixfmgr_ladir)"
+	@$(am__vpath_adj_setup) \
+	list='$(nobase_libposixfmgr_la_HEADERS)'; for p in $$list; do \
+	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+	  $(am__vpath_adj) \
+	  echo " $(nobase_libposixfmgr_laHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(libposixfmgr_ladir)/$$f'"; \
+	  $(nobase_libposixfmgr_laHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(libposixfmgr_ladir)/$$f"; \
+	done
+
+uninstall-nobase_libposixfmgr_laHEADERS:
+	@$(NORMAL_UNINSTALL)
+	@$(am__vpath_adj_setup) \
+	list='$(nobase_libposixfmgr_la_HEADERS)'; for p in $$list; do \
+	  $(am__vpath_adj) \
+	  echo " rm -f '$(DESTDIR)$(libposixfmgr_ladir)/$$f'"; \
+	  rm -f "$(DESTDIR)$(libposixfmgr_ladir)/$$f"; \
+	done
+install-nobase_libposixmmgr_laHEADERS: $(nobase_libposixmmgr_la_HEADERS)
+	@$(NORMAL_INSTALL)
+	test -z "$(libposixmmgr_ladir)" || $(mkdir_p) "$(DESTDIR)$(libposixmmgr_ladir)"
+	@$(am__vpath_adj_setup) \
+	list='$(nobase_libposixmmgr_la_HEADERS)'; for p in $$list; do \
+	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+	  $(am__vpath_adj) \
+	  echo " $(nobase_libposixmmgr_laHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(libposixmmgr_ladir)/$$f'"; \
+	  $(nobase_libposixmmgr_laHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(libposixmmgr_ladir)/$$f"; \
+	done
+
+uninstall-nobase_libposixmmgr_laHEADERS:
+	@$(NORMAL_UNINSTALL)
+	@$(am__vpath_adj_setup) \
+	list='$(nobase_libposixmmgr_la_HEADERS)'; for p in $$list; do \
+	  $(am__vpath_adj) \
+	  echo " rm -f '$(DESTDIR)$(libposixmmgr_ladir)/$$f'"; \
+	  rm -f "$(DESTDIR)$(libposixmmgr_ladir)/$$f"; \
+	done
 install-nobase_libsax2_laHEADERS: $(nobase_libsax2_la_HEADERS)
 	@$(NORMAL_INSTALL)
 	test -z "$(libsax2_ladir)" || $(mkdir_p) "$(DESTDIR)$(libsax2_ladir)"
@@ -3690,7 +3886,7 @@
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
 distdir: $(DISTFILES)
-	$(mkdir_p) $(distdir)/xercesc/dom $(distdir)/xercesc/dom/impl $(distdir)/xercesc/framework $(distdir)/xercesc/framework/psvi $(distdir)/xercesc/internal $(distdir)/xercesc/parsers $(distdir)/xercesc/sax $(distdir)/xercesc/sax2 $(distdir)/xercesc/util $(distdir)/xercesc/util/MsgLoaders/InMemory $(distdir)/xercesc/util/NetAccessors/MacOSURLAccessCF $(distdir)/xercesc/util/Transcoders/ICU $(distdir)/xercesc/util/Transcoders/MacOSUnicodeConverter $(distdir)/xercesc/util/regx $(distdir)/xercesc/validators/DTD $(distdir)/xercesc/validators/common $(distdir)/xercesc/validators/datatype $(distdir)/xercesc/validators/schema $(distdir)/xercesc/validators/schema/identity
+	$(mkdir_p) $(distdir)/xercesc/dom $(distdir)/xercesc/dom/impl $(distdir)/xercesc/framework $(distdir)/xercesc/framework/psvi $(distdir)/xercesc/internal $(distdir)/xercesc/parsers $(distdir)/xercesc/sax $(distdir)/xercesc/sax2 $(distdir)/xercesc/util $(distdir)/xercesc/util/AtomicOpManagers $(distdir)/xercesc/util/FileManagers $(distdir)/xercesc/util/MsgLoaders/InMemory $(distdir)/xercesc/util/MutexManagers $(distdir)/xercesc/util/NetAccessors/MacOSURLAccessCF $(distdir)/xercesc/util/Transcoders/ICU $(distdir)/xercesc/util/Transcoders/MacOSUnicodeConverter $(distdir)/xercesc/util/regx $(distdir)/xercesc/validators/DTD $(distdir)/xercesc/validators/common $(distdir)/xercesc/validators/datatype $(distdir)/xercesc/validators/schema $(distdir)/xercesc/validators/schema/identity
 	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
 	list='$(DISTFILES)'; for file in $$list; do \
@@ -3721,7 +3917,7 @@
 check: check-am
 all-am: Makefile $(LTLIBRARIES) $(HEADERS)
 installdirs:
-	for dir in "$(DESTDIR)$(libcfurl_ladir)" "$(DESTDIR)$(libdom_ladir)" "$(DESTDIR)$(libdomimpl_ladir)" "$(DESTDIR)$(libframework_ladir)" "$(DESTDIR)$(libicu_ladir)" "$(DESTDIR)$(libinmemory_ladir)" "$(DESTDIR)$(libinternal_ladir)" "$(DESTDIR)$(libmacosunicodeconverter_ladir)" "$(DESTDIR)$(libparsers_ladir)" "$(DESTDIR)$(libsax2_ladir)" "$(DESTDIR)$(libsax_ladir)" "$(DESTDIR)$(libutil_ladir)" "$(DESTDIR)$(libvalidators_ladir)"; do \
+	for dir in "$(DESTDIR)$(libcfurl_ladir)" "$(DESTDIR)$(libdom_ladir)" "$(DESTDIR)$(libdomimpl_ladir)" "$(DESTDIR)$(libframework_ladir)" "$(DESTDIR)$(libicu_ladir)" "$(DESTDIR)$(libinmemory_ladir)" "$(DESTDIR)$(libinternal_ladir)" "$(DESTDIR)$(libmacosunicodeconverter_ladir)" "$(DESTDIR)$(libparsers_ladir)" "$(DESTDIR)$(libposixaomgr_ladir)" "$(DESTDIR)$(libposixfmgr_ladir)" "$(DESTDIR)$(libposixmmgr_ladir)" "$(DESTDIR)$(libsax2_ladir)" "$(DESTDIR)$(libsax_ladir)" "$(DESTDIR)$(libutil_ladir)" "$(DESTDIR)$(libvalidators_ladir)"; do \
 	  test -z "$$dir" || $(mkdir_p) "$$dir"; \
 	done
 install: install-am
@@ -3762,8 +3958,14 @@
 	-rm -f xercesc/sax2/$(am__dirstamp)
 	-rm -f xercesc/util/$(DEPDIR)/$(am__dirstamp)
 	-rm -f xercesc/util/$(am__dirstamp)
+	-rm -f xercesc/util/AtomicOpManagers/$(DEPDIR)/$(am__dirstamp)
+	-rm -f xercesc/util/AtomicOpManagers/$(am__dirstamp)
+	-rm -f xercesc/util/FileManagers/$(DEPDIR)/$(am__dirstamp)
+	-rm -f xercesc/util/FileManagers/$(am__dirstamp)
 	-rm -f xercesc/util/MsgLoaders/InMemory/$(DEPDIR)/$(am__dirstamp)
 	-rm -f xercesc/util/MsgLoaders/InMemory/$(am__dirstamp)
+	-rm -f xercesc/util/MutexManagers/$(DEPDIR)/$(am__dirstamp)
+	-rm -f xercesc/util/MutexManagers/$(am__dirstamp)
 	-rm -f xercesc/util/NetAccessors/MacOSURLAccessCF/$(DEPDIR)/$(am__dirstamp)
 	-rm -f xercesc/util/NetAccessors/MacOSURLAccessCF/$(am__dirstamp)
 	-rm -f xercesc/util/Transcoders/ICU/$(DEPDIR)/$(am__dirstamp)
@@ -3792,7 +3994,7 @@
 	mostlyclean-am
 
 distclean: distclean-am
-	-rm -rf xercesc/dom/$(DEPDIR) xercesc/dom/impl/$(DEPDIR) xercesc/framework/$(DEPDIR) xercesc/framework/psvi/$(DEPDIR) xercesc/internal/$(DEPDIR) xercesc/parsers/$(DEPDIR) xercesc/sax/$(DEPDIR) xercesc/sax2/$(DEPDIR) xercesc/util/$(DEPDIR) xercesc/util/MsgLoaders/InMemory/$(DEPDIR) xercesc/util/NetAccessors/MacOSURLAccessCF/$(DEPDIR) xercesc/util/Transcoders/ICU/$(DEPDIR) xercesc/util/Transcoders/MacOSUnicodeConverter/$(DEPDIR) xercesc/util/regx/$(DEPDIR) xercesc/validators/DTD/$(DEPDIR) xercesc/validators/common/$(DEPDIR) xercesc/validators/datatype/$(DEPDIR) xercesc/validators/schema/$(DEPDIR) xercesc/validators/schema/identity/$(DEPDIR)
+	-rm -rf xercesc/dom/$(DEPDIR) xercesc/dom/impl/$(DEPDIR) xercesc/framework/$(DEPDIR) xercesc/framework/psvi/$(DEPDIR) xercesc/internal/$(DEPDIR) xercesc/parsers/$(DEPDIR) xercesc/sax/$(DEPDIR) xercesc/sax2/$(DEPDIR) xercesc/util/$(DEPDIR) xercesc/util/AtomicOpManagers/$(DEPDIR) xercesc/util/FileManagers/$(DEPDIR) xercesc/util/MsgLoaders/InMemory/$(DEPDIR) xercesc/util/MutexManagers/$(DEPDIR) xercesc/util/NetAccessors/MacOSURLAccessCF/$(DEPDIR) xercesc/util/Transcoders/ICU/$(DEPDIR) xercesc/util/Transcoders/MacOSUnicodeConverter/$(DEPDIR) xercesc/util/regx/$(DEPDIR) xercesc/validators/DTD/$(DEPDIR) xercesc/validators/common/$(DEPDIR) xercesc/validators/datatype/$(DEPDIR) xercesc/validators/schema/$(DEPDIR) xercesc/validators/schema/identity/$(DEPDIR)
 	-rm -f Makefile
 distclean-am: clean-am distclean-compile distclean-generic \
 	distclean-libtool distclean-tags
@@ -3816,6 +4018,9 @@
 	install-nobase_libinternal_laHEADERS \
 	install-nobase_libmacosunicodeconverter_laHEADERS \
 	install-nobase_libparsers_laHEADERS \
+	install-nobase_libposixaomgr_laHEADERS \
+	install-nobase_libposixfmgr_laHEADERS \
+	install-nobase_libposixmmgr_laHEADERS \
 	install-nobase_libsax2_laHEADERS \
 	install-nobase_libsax_laHEADERS \
 	install-nobase_libutil_laHEADERS \
@@ -3830,7 +4035,7 @@
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
-	-rm -rf xercesc/dom/$(DEPDIR) xercesc/dom/impl/$(DEPDIR) xercesc/framework/$(DEPDIR) xercesc/framework/psvi/$(DEPDIR) xercesc/internal/$(DEPDIR) xercesc/parsers/$(DEPDIR) xercesc/sax/$(DEPDIR) xercesc/sax2/$(DEPDIR) xercesc/util/$(DEPDIR) xercesc/util/MsgLoaders/InMemory/$(DEPDIR) xercesc/util/NetAccessors/MacOSURLAccessCF/$(DEPDIR) xercesc/util/Transcoders/ICU/$(DEPDIR) xercesc/util/Transcoders/MacOSUnicodeConverter/$(DEPDIR) xercesc/util/regx/$(DEPDIR) xercesc/validators/DTD/$(DEPDIR) xercesc/validators/common/$(DEPDIR) xercesc/validators/datatype/$(DEPDIR) xercesc/validators/schema/$(DEPDIR) xercesc/validators/schema/identity/$(DEPDIR)
+	-rm -rf xercesc/dom/$(DEPDIR) xercesc/dom/impl/$(DEPDIR) xercesc/framework/$(DEPDIR) xercesc/framework/psvi/$(DEPDIR) xercesc/internal/$(DEPDIR) xercesc/parsers/$(DEPDIR) xercesc/sax/$(DEPDIR) xercesc/sax2/$(DEPDIR) xercesc/util/$(DEPDIR) xercesc/util/AtomicOpManagers/$(DEPDIR) xercesc/util/FileManagers/$(DEPDIR) xercesc/util/MsgLoaders/InMemory/$(DEPDIR) xercesc/util/MutexManagers/$(DEPDIR) xercesc/util/NetAccessors/MacOSURLAccessCF/$(DEPDIR) xercesc/util/Transcoders/ICU/$(DEPDIR) xercesc/util/Transcoders/MacOSUnicodeConverter/$(DEPDIR) xercesc/util/regx/$(DEPDIR) xercesc/validators/DTD/$(DEPDIR) xercesc/validators/common/$(DEPDIR) xercesc/validators/datatype/$(DEPDIR) xercesc/validators/schema/$(DEPDIR) xercesc/validators/schema/identity/$(DEPDIR)
 	-rm -f Makefile
 maintainer-clean-am: distclean-am maintainer-clean-generic
 
@@ -3856,6 +4061,9 @@
 	uninstall-nobase_libinternal_laHEADERS \
 	uninstall-nobase_libmacosunicodeconverter_laHEADERS \
 	uninstall-nobase_libparsers_laHEADERS \
+	uninstall-nobase_libposixaomgr_laHEADERS \
+	uninstall-nobase_libposixfmgr_laHEADERS \
+	uninstall-nobase_libposixmmgr_laHEADERS \
 	uninstall-nobase_libsax2_laHEADERS \
 	uninstall-nobase_libsax_laHEADERS \
 	uninstall-nobase_libutil_laHEADERS \
@@ -3876,6 +4084,9 @@
 	install-nobase_libinternal_laHEADERS \
 	install-nobase_libmacosunicodeconverter_laHEADERS \
 	install-nobase_libparsers_laHEADERS \
+	install-nobase_libposixaomgr_laHEADERS \
+	install-nobase_libposixfmgr_laHEADERS \
+	install-nobase_libposixmmgr_laHEADERS \
 	install-nobase_libsax2_laHEADERS \
 	install-nobase_libsax_laHEADERS \
 	install-nobase_libutil_laHEADERS \
@@ -3893,6 +4104,9 @@
 	uninstall-nobase_libinternal_laHEADERS \
 	uninstall-nobase_libmacosunicodeconverter_laHEADERS \
 	uninstall-nobase_libparsers_laHEADERS \
+	uninstall-nobase_libposixaomgr_laHEADERS \
+	uninstall-nobase_libposixfmgr_laHEADERS \
+	uninstall-nobase_libposixmmgr_laHEADERS \
 	uninstall-nobase_libsax2_laHEADERS \
 	uninstall-nobase_libsax_laHEADERS \
 	uninstall-nobase_libutil_laHEADERS \

Modified: xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/AtomicOpManagers/PosixAtomicOpMgr.cpp
URL: http://svn.apache.org/viewcvs/xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/AtomicOpManagers/PosixAtomicOpMgr.cpp?rev=178580&r1=178579&r2=178580&view=diff
==============================================================================
--- xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/AtomicOpManagers/PosixAtomicOpMgr.cpp (original)
+++ xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/AtomicOpManagers/PosixAtomicOpMgr.cpp Wed May 25 22:00:22 2005
@@ -19,44 +19,53 @@
  * $Id$
  */
 
-#ifndef POSIXATOMICOPMGL_HPP
-#define POSIXATOMICOPMGL_HPP
-
+#include <xercesc/util/XercesDefs.hpp>
 #include <xercesc/util/AtomicOpManagers/PosixAtomicOpMgr.hpp>
+#include <xercesc/util/Mutexes.hpp>
 
 XERCES_CPP_NAMESPACE_BEGIN
 
+
 PosixAtomicOpMgr::PosixAtomicOpMgr()
 {
 }
 
 
-virtual
 PosixAtomicOpMgr::~PosixAtomicOpMgr()
 {
 }
 
+
 // Atomic operations
-virtual void*
+void*
 PosixAtomicOpMgr::compareAndSwap(void**            toFill
 							 , const void* const newValue
 							 , const void* const toCompare)
 {
+    XMLMutexLock lockMutex(&fMutex);
+
+    void *retVal = *toFill;
+    if (*toFill == toCompare)
+        *toFill = (void *)newValue;
+
+    return retVal;
 }
 
 
-virtual int
+int
 PosixAtomicOpMgr::increment(int &location)
 {
+    XMLMutexLock lockMutex(&fMutex);
+    return ++location;
 }
 
 
-virtual int
+int
 PosixAtomicOpMgr::decrement(int &location)
 {
+    XMLMutexLock lockMutex(&fMutex);
+    return --location;
 }
 
-XERCES_CPP_NAMESPACE_END
-
 
-#endif
\ No newline at end of file
+XERCES_CPP_NAMESPACE_END

Modified: xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/AtomicOpManagers/PosixAtomicOpMgr.hpp
URL: http://svn.apache.org/viewcvs/xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/AtomicOpManagers/PosixAtomicOpMgr.hpp?rev=178580&r1=178579&r2=178580&view=diff
==============================================================================
--- xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/AtomicOpManagers/PosixAtomicOpMgr.hpp (original)
+++ xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/AtomicOpManagers/PosixAtomicOpMgr.hpp Wed May 25 22:00:22 2005
@@ -23,6 +23,7 @@
 #define POSIXATOMICOPMGL_HPP
 
 #include <xercesc/util/XMLAtomicOpMgr.hpp>
+#include <xercesc/util/Mutexes.hpp>
 
 XERCES_CPP_NAMESPACE_BEGIN
 
@@ -40,6 +41,9 @@
 									 , const void* const toCompare);
 		virtual int		increment(int &location);
 		virtual int		decrement(int &location);
+		
+	private:
+		XMLMutex		fMutex;
 };
 
 XERCES_CPP_NAMESPACE_END

Modified: xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/FileManagers/PosixFileMgr.cpp
URL: http://svn.apache.org/viewcvs/xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/FileManagers/PosixFileMgr.cpp?rev=178580&r1=178579&r2=178580&view=diff
==============================================================================
--- xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/FileManagers/PosixFileMgr.cpp (original)
+++ xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/FileManagers/PosixFileMgr.cpp Wed May 25 22:00:22 2005
@@ -18,88 +18,210 @@
  * $Id$
  */
 
+#include <stdio.h>
+#include <unistd.h>
+#include <limits.h>
+
 #include <xercesc/util/FileManagers/PosixFileMgr.hpp>
 
+#include <xercesc/util/PlatformUtils.hpp>
+#include <xercesc/util/Janitor.hpp>
+#include <xercesc/util/RuntimeException.hpp>
+#include <xercesc/util/PanicHandler.hpp>
+#include <xercesc/util/XMLString.hpp>
+
+
 XERCES_CPP_NAMESPACE_BEGIN
 
+
 PosixFileMgr::PosixFileMgr()
 {
 }
 
-virtual
-PosixFileMgr::~XMLFileMgr()
+
+PosixFileMgr::~PosixFileMgr()
 {
 }
 
-// File access
-virtual FileHandle
+
+FileHandle
 PosixFileMgr::open(const XMLCh* path, bool toWrite, MemoryManager* const manager)
 {
+    const char* tmpFileName = XMLString::transcode(path, manager);
+    ArrayJanitor<char> janText((char*)tmpFileName, manager);
+    return open(tmpFileName, toWrite, manager);
 }
 
 
-virtual FileHandle
+FileHandle
 PosixFileMgr::open(const char* path, bool toWrite, MemoryManager* const manager)
 {
+	const char* perms = (toWrite) ? "wb" : "rb";
+    FileHandle result = (FileHandle)fopen(path , perms);
+    return result;
 }
 
 
-virtual FileHandle
+FileHandle
 PosixFileMgr::openStdIn(MemoryManager* const manager)
 {
+    return (FileHandle)fdopen(dup(0), "rb");
 }
 
-virtual void
+
+void
 PosixFileMgr::close(FileHandle f, MemoryManager* const manager)
 {
+    if (!f)
+		ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero, manager);
+
+    if (fclose((FILE*)f))
+        ThrowXMLwithMemMgr(XMLPlatformUtilsException,
+                 XMLExcepts::File_CouldNotCloseFile, manager);
 }
 
 
-virtual void
+void
 PosixFileMgr::reset(FileHandle f, MemoryManager* const manager)
 {
+    if (!f)
+		ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero, manager);
+
+    // Seek to the start of the file
+    if (fseek((FILE*)f, 0, SEEK_SET))
+        ThrowXMLwithMemMgr(XMLPlatformUtilsException,
+                 XMLExcepts::File_CouldNotResetFile, manager);
 }
 
 
-virtual XMLFilePos
+XMLFilePos
 PosixFileMgr::curPos(FileHandle f, MemoryManager* const manager)
 {
+    if (!f)
+		ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero, manager);
+		 
+    long curPos = ftell((FILE*)f);
+	
+    if (curPos == -1)
+        ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::File_CouldNotGetSize, manager);
+
+    return (XMLFilePos)curPos;
 }
 
 
-virtual XMLFilePos
+XMLFilePos
 PosixFileMgr::size(FileHandle f, MemoryManager* const manager)
 {
+    if (!f)
+		ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero, manager);
+		
+    // Get the current position
+    long curPos = ftell((FILE*)f);
+    if (curPos == -1)
+        ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::File_CouldNotGetCurPos, manager);
+
+    // Seek to the end and save that value for return
+    if (fseek((FILE*)f, 0, SEEK_END))
+        ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::File_CouldNotSeekToEnd, manager);
+
+    long retVal = ftell((FILE*)f);
+    if (retVal == -1)
+        ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::File_CouldNotSeekToEnd, manager);
+
+    // And put the pointer back
+    if (fseek((FILE*)f, curPos, SEEK_SET))
+        ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::File_CouldNotSeekToPos, manager);
+
+    return (XMLFilePos)retVal;
 }
 
-virtual XMLSize_t
+
+XMLSize_t
 PosixFileMgr::read(FileHandle f, XMLSize_t byteCount, XMLByte* buffer, MemoryManager* const manager)
 {
+    if (!f || !buffer)
+		ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero, manager);
+		
+    XMLSize_t bytesRead = 0;
+	if (byteCount > 0)
+	{
+    	bytesRead = fread((void*)buffer, 1, byteCount, (FILE*)f);
+
+		if (ferror((FILE*)f))
+			ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::File_CouldNotReadFromFile, manager);
+	}
+	
+    return bytesRead;
 }
 
 
-virtual void
+void
 PosixFileMgr::write(FileHandle f, XMLSize_t byteCount, const XMLByte* buffer, MemoryManager* const manager)
 {
+    if (!f || !buffer)
+		ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero, manager);
+
+    while (byteCount > 0)
+    {
+        size_t bytesWritten = fwrite(buffer, sizeof(XMLByte), byteCount, (FILE*)f);
+
+        if (ferror((FILE*)f))
+			ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::File_CouldNotWriteToFile, manager);
+
+		buffer		+= bytesWritten;
+		byteCount	-= bytesWritten;
+    }
 }
 
-virtual XMLCh*
+
+XMLCh*
 PosixFileMgr::getFullPath(const XMLCh* const srcPath, MemoryManager* const manager)
 {
+    //
+    //  NOTE: The path provided has always already been opened successfully,
+    //  so we know that its not some pathological freaky path. It comes in
+    //  in native format, and goes out as Unicode always
+    //
+    char* newSrc = XMLString::transcode(srcPath, manager);
+    ArrayJanitor<char> janText(newSrc, manager);
+
+    // Use a local buffer that is big enough for the largest legal path
+    char absPath[PATH_MAX + 1];
+    
+    // get the absolute path
+    if (!realpath(newSrc, absPath))
+   		ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::File_CouldNotGetBasePathName, manager);
+
+    return XMLString::transcode(absPath, manager);
 }
 
 
-virtual XMLCh*
+XMLCh*
 PosixFileMgr::getCurrentDirectory(MemoryManager* const manager)
 {
+    char dirBuf[PATH_MAX + 2];
+    char *curDir = getcwd(&dirBuf[0], PATH_MAX + 1);
+
+    if (!curDir)
+        ThrowXMLwithMemMgr(XMLPlatformUtilsException,
+                 XMLExcepts::File_CouldNotGetBasePathName, manager);
+
+    return XMLString::transcode(curDir, manager);
 }
 
-virtual bool
+
+bool
 PosixFileMgr::isRelative(const XMLCh* const toCheck, MemoryManager* const manager)
 {
+    // Check for pathological case of empty path
+    if (!toCheck || !toCheck[0])
+        return false;
+
+    //
+    //  If it starts with a slash, then it cannot be relative.
+    //
+    return toCheck[0] != XMLCh('/');
 }
 
 
 XERCES_CPP_NAMESPACE_END
-
-#endif
\ No newline at end of file

Modified: xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/MutexManagers/PosixMutexMgr.cpp
URL: http://svn.apache.org/viewcvs/xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/MutexManagers/PosixMutexMgr.cpp?rev=178580&r1=178579&r2=178580&view=diff
==============================================================================
--- xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/MutexManagers/PosixMutexMgr.cpp (original)
+++ xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/MutexManagers/PosixMutexMgr.cpp Wed May 25 22:00:22 2005
@@ -15,49 +15,93 @@
  */
 
 /*
- * $Id: MacAbstractFile.hpp 176026 2004-09-08 13:57:07Z peiyongz $
+ * $Id$
  */
 
+#include <pthread.h>
+
 #include <xercesc/util/MutexManagers/PosixMutexMgr.hpp>
+#include <xercesc/util/PlatformUtils.hpp>
+#include <xercesc/util/RuntimeException.hpp>
+#include <xercesc/util/PanicHandler.hpp>
 
 XERCES_CPP_NAMESPACE_BEGIN
 
+
+//	Wrap up the mutex with XMemory
+class PosixMutexWrap : public XMemory {
+public:
+	pthread_mutex_t	m;
+};
+
+
 PosixMutexMgr::PosixMutexMgr()
 {
 }
 
 
-virtual
-PosixMutexMgr::PosixMutexMgr()
+PosixMutexMgr::~PosixMutexMgr()
 {
 }
 
 
-virtual XMLMutexHandle
+XMLMutexHandle
 PosixMutexMgr::create(MemoryManager* const manager)
 {
+    PosixMutexWrap* mutex = new (manager) PosixMutexWrap;
+    
+    pthread_mutexattr_t attr;
+    pthread_mutexattr_init(&attr);
+    pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE);
+    
+    if (pthread_mutex_init(&mutex->m, &attr))
+        XMLPlatformUtils::panic(PanicHandler::Panic_MutexErr);
+        
+    pthread_mutexattr_destroy(&attr);
+
+    return (void*)(mutex);
 }
 
 
-virtual void
+void
 PosixMutexMgr::destroy(XMLMutexHandle mtx, MemoryManager* const manager)
 {
+	PosixMutexWrap* mutex = (PosixMutexWrap*)(mtx);
+    if (mutex != NULL)
+    {
+        if (pthread_mutex_destroy(&mutex->m))
+        {
+            ThrowXMLwithMemMgr(XMLPlatformUtilsException,
+                     XMLExcepts::Mutex_CouldNotDestroy, manager);
+        }
+        delete mutex;
+    }
 }
 
 
-virtual void
+void
 PosixMutexMgr::lock(XMLMutexHandle mtx)
 {
+	PosixMutexWrap* mutex = (PosixMutexWrap*)(mtx);
+    if (mutex != NULL)
+    {
+        if (pthread_mutex_lock(&mutex->m))
+            XMLPlatformUtils::panic(PanicHandler::Panic_MutexErr);
+    }
 }
 
 
-virtual void
+void
 PosixMutexMgr::unlock(XMLMutexHandle mtx)
 {
+	PosixMutexWrap* mutex = (PosixMutexWrap*)(mtx);
+    if (mutex != NULL)
+    {
+        if (pthread_mutex_unlock(&mutex->m))
+            XMLPlatformUtils::panic(PanicHandler::Panic_MutexErr);
+    }
 }
 
 
 XERCES_CPP_NAMESPACE_END
 
-
-#endif

Modified: xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/PlatformUtils.cpp
URL: http://svn.apache.org/viewcvs/xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/PlatformUtils.cpp?rev=178580&r1=178579&r2=178580&view=diff
==============================================================================
--- xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/PlatformUtils.cpp (original)
+++ xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/PlatformUtils.cpp Wed May 25 22:00:22 2005
@@ -42,17 +42,17 @@
 #include <xercesc/internal/MemoryManagerArrayImpl.hpp>
 
 #include <xercesc/util/XMLFileMgr.hpp>
-#if XERCES_USE_POSIX_FILEMGR
+#if XERCES_USE_FILEMGR_POSIX
 #	include <xercesc/util/FileManagers/PosixFileMgr.hpp>
 #endif
 
 #include <xercesc/util/XMLMutexMgr.hpp>
-#if XERCES_USE_POSIX_MUTEXMGR
+#if XERCES_USE_MUTEXMGR_POSIX
 #	include <xercesc/util/MutexManagers/PosixMutexMgr.hpp>
 #endif
 
 #include <xercesc/util/XMLAtomicOpMgr.hpp>
-#if XERCES_USE_POSIX_ATOMICOPMGR
+#if XERCES_USE_ATOMICOPMGR_POSIX
 #	include <xercesc/util/AtomicOpManagers/PosixAtomicOpMgr.hpp>
 #endif
 
@@ -100,7 +100,12 @@
 MemoryManagerArrayImpl  gArrayMemoryManager;
 MemoryManager*          XMLPlatformUtils::fgArrayMemoryManager = &gArrayMemoryManager;
 bool                    XMLPlatformUtils::fgMemMgrAdopted = true;
-XMLMutex*               XMLPlatformUtils::fgAtomicMutex = 0;
+
+XMLFileMgr*             XMLPlatformUtils::fgFileMgr = 0;
+XMLMutexMgr*            XMLPlatformUtils::fgMutexMgr = 0;
+XMLAtomicOpMgr*         XMLPlatformUtils::fgAtomicOpMgr = 0;
+
+XMLMutex*				XMLPlatformUtils::fgAtomicMutex = 0;
 
 // ---------------------------------------------------------------------------
 //  XMLPlatformUtils: Init/term methods
@@ -161,20 +166,20 @@
         fgUserPanicHandler = panicHandler;
     }
     
-    //
-    //  Call the platform init method, which is implemented in each of the
-    //  per-platform implementation cpp files. This one does the very low
-    //  level per-platform setup. It cannot use any XML util services at all,
-    //  i.e. only native services.
-    //
-    platformInit();
-
+    
+    // Initialize the platform-specific mutex file, and atomic op mgrs
+    fgMutexMgr		= makeMutexMgr(fgMemoryManager);
+    fgAtomicOpMgr	= makeAtomicOpMgr(fgMemoryManager);
+    fgFileMgr		= makeFileMgr(fgMemoryManager);
+    
+    
     // Create the local sync mutex
-    gSyncMutex = new XMLMutex;
+    gSyncMutex		= new XMLMutex;
+    fgAtomicMutex	= new XMLMutex;
+
 
 	// Create the mutex for the static data cleanup list
     gXMLCleanupListMutex = new XMLMutex;
-    fgAtomicMutex = new XMLMutex;
 
     //
     //  Ask the per-platform code to make the desired transcoding service for
@@ -258,13 +263,9 @@
     delete fgTransService;
     fgTransService = 0;
 
-    // Clean up the sync mutex
-    delete gSyncMutex;
-    gSyncMutex = 0;
-
-    // Clean up mutex
-    delete fgAtomicMutex;
-    fgAtomicMutex = 0;
+    // Clean up mutexes
+    delete gSyncMutex;		gSyncMutex = 0;
+    delete fgAtomicMutex;	fgAtomicMutex = 0;
 
 	// Clean up statically allocated, lazily cleaned data in each class
 	// that has registered for it.
@@ -277,13 +278,11 @@
 	delete gXMLCleanupListMutex;
 	gXMLCleanupListMutex = 0;
 
-    //
-    //  And do platform termination. This cannot do use any XML services
-    //  at all, it can only clean up local stuff. It it reports an error,
-    //  it cannot use any XML exception or error reporting services.
-    //
-    platformTerm();
-
+	// Clean up our mgrs
+	delete fgFileMgr;		fgFileMgr = 0;
+	delete fgAtomicOpMgr;	fgAtomicOpMgr = 0;
+	delete fgMutexMgr;		fgMutexMgr = 0;
+	
     /***
      *  de-allocate resource
      *
@@ -330,7 +329,7 @@
 {
 	XMLFileMgr* mgr = NULL;
 	
-	#if XERCES_USE_POSIX_FILEMGR
+	#if XERCES_USE_FILEMGR_POSIX
 		mgr = new (memmgr) PosixFileMgr;
 	#else
 		#error No File Manager configured for platform! You must configure it.
@@ -344,6 +343,9 @@
 XMLPlatformUtils::openFile(const char* const fileName
                            , MemoryManager* const memmgr)
 {
+    if (!fgFileMgr)
+		ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero, memmgr);
+
 	return fgFileMgr->open(fileName, false, memmgr);
 }
 
@@ -351,6 +353,9 @@
 FileHandle
 XMLPlatformUtils::openFile(const XMLCh* const fileName, MemoryManager* const memmgr)
 {
+    if (!fgFileMgr)
+		ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero, memmgr);
+
 	return fgFileMgr->open(fileName, false, memmgr);
 }
 
@@ -359,6 +364,9 @@
 XMLPlatformUtils::openFileToWrite(const char* const fileName
                                   , MemoryManager* const memmgr)
 {
+    if (!fgFileMgr)
+		ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero, memmgr);
+
 	return fgFileMgr->open(fileName, true, memmgr);
 }
 
@@ -367,6 +375,9 @@
 XMLPlatformUtils::openFileToWrite(const XMLCh* const fileName
                                   , MemoryManager* const memmgr)
 {
+    if (!fgFileMgr)
+		ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero, memmgr);
+
  	return fgFileMgr->open(fileName, true, memmgr);
 }
 
@@ -374,6 +385,9 @@
 FileHandle
 XMLPlatformUtils::openStdInHandle(MemoryManager* const memmgr)
 {
+    if (!fgFileMgr)
+		ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero, memmgr);
+
 	return fgFileMgr->openStdIn(memmgr);
 }
 
@@ -382,6 +396,9 @@
 XMLPlatformUtils::closeFile(const FileHandle theFile
                             , MemoryManager* const memmgr)
 {
+    if (!fgFileMgr)
+		ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero, memmgr);
+
 	return fgFileMgr->close(theFile, memmgr);
 }
 
@@ -389,6 +406,9 @@
 XMLPlatformUtils::resetFile(FileHandle theFile
                             , MemoryManager* const memmgr)
 {
+    if (!fgFileMgr)
+		ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero, memmgr);
+
 	return fgFileMgr->reset(theFile, memmgr);
 }
 
@@ -397,6 +417,9 @@
 XMLPlatformUtils::curFilePos(const FileHandle theFile
                              , MemoryManager* const memmgr)
 {
+    if (!fgFileMgr)
+		ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero, memmgr);
+
 	return fgFileMgr->curPos(theFile, memmgr);
 }
 
@@ -404,6 +427,9 @@
 XMLPlatformUtils::fileSize(const FileHandle theFile
                            , MemoryManager* const memmgr)
 {
+    if (!fgFileMgr)
+		ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero, memmgr);
+
 	return fgFileMgr->size(theFile, memmgr);
 }
 
@@ -414,6 +440,9 @@
                                  ,        XMLByte* const  toFill
                                  ,  MemoryManager* const  memmgr)
 {
+    if (!fgFileMgr)
+		ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero, memmgr);
+
     return fgFileMgr->read(theFile, toRead, toFill, memmgr);
 }
 
@@ -424,6 +453,9 @@
                                     ,  const XMLByte* const toFlush
                                     ,  MemoryManager* const memmgr)
 {
+    if (!fgFileMgr)
+		ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero, memmgr);
+
 	fgFileMgr->write(theFile, toWrite, toFlush, memmgr);
 }
 
@@ -434,12 +466,18 @@
 XMLCh* XMLPlatformUtils::getFullPath(const XMLCh* const srcPath,
                                      MemoryManager* const memmgr)
 {
+    if (!fgFileMgr)
+		ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero, memmgr);
+
 	return fgFileMgr->getFullPath(srcPath, memmgr);
 }
 
 
 XMLCh* XMLPlatformUtils::getCurrentDirectory(MemoryManager* const memmgr)
 {
+    if (!fgFileMgr)
+		ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero, memmgr);
+
     return fgFileMgr->getCurrentDirectory(memmgr);
 }
 
@@ -447,6 +485,9 @@
 bool XMLPlatformUtils::isRelative(const XMLCh* const toCheck
                                   , MemoryManager* const memmgr)
 {
+    if (!fgFileMgr)
+		ThrowXMLwithMemMgr(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero, memmgr);
+
     return fgFileMgr->isRelative(toCheck, memmgr);
 }
 
@@ -486,7 +527,7 @@
 {
 	XMLMutexMgr* mgr = NULL;
 	
-	#if XERCES_USE_POSIX_MUTEXMGR
+	#if XERCES_USE_MUTEXMGR_POSIX
 		mgr = new (memmgr) PosixMutexMgr;
 	#else
 		#error No Mutex Manager configured for platform! You must configure it.
@@ -495,25 +536,39 @@
 	return mgr;
 }
 
+
 XMLMutexHandle XMLPlatformUtils::makeMutex(MemoryManager* const memmgr)
 {
+    if (!fgMutexMgr)
+		XMLPlatformUtils::panic(PanicHandler::Panic_MutexErr);
+
 	return fgMutexMgr->create(memmgr);
 }
 
+
 void XMLPlatformUtils::closeMutex(XMLMutexHandle const mtx, MemoryManager* const memmgr)
 {
+    if (!fgMutexMgr)
+		XMLPlatformUtils::panic(PanicHandler::Panic_MutexErr);
+
 	fgMutexMgr->destroy(mtx, memmgr);
 }
 
 
 void XMLPlatformUtils::lockMutex(XMLMutexHandle const mtx)
 {
+    if (!fgMutexMgr)
+		XMLPlatformUtils::panic(PanicHandler::Panic_MutexErr);
+
 	fgMutexMgr->lock(mtx);
 }
 
 
 void XMLPlatformUtils::unlockMutex(XMLMutexHandle const mtx)
 {
+    if (!fgMutexMgr)
+		XMLPlatformUtils::panic(PanicHandler::Panic_MutexErr);
+
 	fgMutexMgr->unlock(mtx);
 }
 
@@ -525,7 +580,7 @@
 {
 	XMLAtomicOpMgr* mgr = NULL;
 	
-	#if XERCES_USE_POSIX_ATOMICOPMGR
+	#if XERCES_USE_ATOMICOPMGR_POSIX
 		mgr = new (memmgr) PosixAtomicOpMgr;
 	#else
 		#error No AtomicOp Manager configured for platform! You must configure it.
@@ -539,18 +594,27 @@
                                      , const void* const newValue
                                      , const void* const toCompare)
 {
+    if (!fgAtomicOpMgr)
+		ThrowXML(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero);
+
 	return fgAtomicOpMgr->compareAndSwap(toFill, newValue, toCompare);
 }
 
 
 int XMLPlatformUtils::atomicIncrement(int &location)
 {
+    if (!fgAtomicOpMgr)
+		ThrowXML(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero);
+
 	return fgAtomicOpMgr->increment(location);
 }
 
 
 int XMLPlatformUtils::atomicDecrement(int &location)
 {
+    if (!fgAtomicOpMgr)
+		ThrowXML(XMLPlatformUtilsException, XMLExcepts::CPtr_PointerIsZero);
+
 	return fgAtomicOpMgr->decrement(location);
 }
 

Modified: xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/PlatformUtils.hpp
URL: http://svn.apache.org/viewcvs/xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/PlatformUtils.hpp?rev=178580&r1=178579&r2=178580&view=diff
==============================================================================
--- xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/PlatformUtils.hpp (original)
+++ xerces/c/branches/jberry/3.0-unstable/src/xercesc/util/PlatformUtils.hpp Wed May 25 22:00:22 2005
@@ -127,13 +127,12 @@
       *   there is no reason, nor facility, to override it.
       */
     static MemoryManager*       fgArrayMemoryManager;
-
+	
 	static XMLFileMgr*			fgFileMgr;
 	static XMLMutexMgr*			fgMutexMgr;
 	static XMLAtomicOpMgr*		fgAtomicOpMgr;
-	
-    static XMLMutex*            fgAtomicMutex;
     
+    static XMLMutex*			fgAtomicMutex;
     //@}
 
 

Modified: xerces/c/branches/jberry/3.0-unstable/tests/Makefile.in
URL: http://svn.apache.org/viewcvs/xerces/c/branches/jberry/3.0-unstable/tests/Makefile.in?rev=178580&r1=178579&r2=178580&view=diff
==============================================================================
--- xerces/c/branches/jberry/3.0-unstable/tests/Makefile.in (original)
+++ xerces/c/branches/jberry/3.0-unstable/tests/Makefile.in Wed May 25 22:00:22 2005
@@ -222,8 +222,14 @@
 SHELL = @SHELL@
 STRIP = @STRIP@
 VERSION = @VERSION@
+XERCES_USE_ATOMICOPMGR_POSIX_FALSE = @XERCES_USE_ATOMICOPMGR_POSIX_FALSE@
+XERCES_USE_ATOMICOPMGR_POSIX_TRUE = @XERCES_USE_ATOMICOPMGR_POSIX_TRUE@
+XERCES_USE_FILEMGR_POSIX_FALSE = @XERCES_USE_FILEMGR_POSIX_FALSE@
+XERCES_USE_FILEMGR_POSIX_TRUE = @XERCES_USE_FILEMGR_POSIX_TRUE@
 XERCES_USE_MSGLOADER_INMEMORY_FALSE = @XERCES_USE_MSGLOADER_INMEMORY_FALSE@
 XERCES_USE_MSGLOADER_INMEMORY_TRUE = @XERCES_USE_MSGLOADER_INMEMORY_TRUE@
+XERCES_USE_MUTEXMGR_POSIX_FALSE = @XERCES_USE_MUTEXMGR_POSIX_FALSE@
+XERCES_USE_MUTEXMGR_POSIX_TRUE = @XERCES_USE_MUTEXMGR_POSIX_TRUE@
 XERCES_USE_NETACCESSOR_CFURL_FALSE = @XERCES_USE_NETACCESSOR_CFURL_FALSE@
 XERCES_USE_NETACCESSOR_CFURL_TRUE = @XERCES_USE_NETACCESSOR_CFURL_TRUE@
 XERCES_USE_NETACCESSOR_CURL_FALSE = @XERCES_USE_NETACCESSOR_CURL_FALSE@
@@ -234,12 +240,6 @@
 XERCES_USE_NETACCESSOR_SOCKET_TRUE = @XERCES_USE_NETACCESSOR_SOCKET_TRUE@
 XERCES_USE_NETACCESSOR_WINSOCK_FALSE = @XERCES_USE_NETACCESSOR_WINSOCK_FALSE@
 XERCES_USE_NETACCESSOR_WINSOCK_TRUE = @XERCES_USE_NETACCESSOR_WINSOCK_TRUE@
-XERCES_USE_POSIX_ATOMICOPMGR_FALSE = @XERCES_USE_POSIX_ATOMICOPMGR_FALSE@
-XERCES_USE_POSIX_ATOMICOPMGR_TRUE = @XERCES_USE_POSIX_ATOMICOPMGR_TRUE@
-XERCES_USE_POSIX_FILEMGR_FALSE = @XERCES_USE_POSIX_FILEMGR_FALSE@
-XERCES_USE_POSIX_FILEMGR_TRUE = @XERCES_USE_POSIX_FILEMGR_TRUE@
-XERCES_USE_POSIX_MUTEXMGR_FALSE = @XERCES_USE_POSIX_MUTEXMGR_FALSE@
-XERCES_USE_POSIX_MUTEXMGR_TRUE = @XERCES_USE_POSIX_MUTEXMGR_TRUE@
 XERCES_USE_TRANSCODER_ICU_FALSE = @XERCES_USE_TRANSCODER_ICU_FALSE@
 XERCES_USE_TRANSCODER_ICU_TRUE = @XERCES_USE_TRANSCODER_ICU_TRUE@
 XERCES_USE_TRANSCODER_MACOSUNICODECONVERTER_FALSE = @XERCES_USE_TRANSCODER_MACOSUNICODECONVERTER_FALSE@



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