You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by am...@apache.org on 2007/08/27 17:43:51 UTC

svn commit: r570159 - in /xerces/c/branches/xerces-2.7: doc/build-winunix.xml samples/Makefile.incl src/xercesc/Makefile.in src/xercesc/Makefile.incl src/xercesc/util/NetAccessors/WinSock/Makefile.in tests/Makefile.incl

Author: amassari
Date: Mon Aug 27 08:43:48 2007
New Revision: 570159

URL: http://svn.apache.org/viewvc?rev=570159&view=rev
Log:
Add multi-thread options only when building an mt library. Patch by Boris Kolpackov

Modified:
    xerces/c/branches/xerces-2.7/doc/build-winunix.xml
    xerces/c/branches/xerces-2.7/samples/Makefile.incl
    xerces/c/branches/xerces-2.7/src/xercesc/Makefile.in
    xerces/c/branches/xerces-2.7/src/xercesc/Makefile.incl
    xerces/c/branches/xerces-2.7/src/xercesc/util/NetAccessors/WinSock/Makefile.in
    xerces/c/branches/xerces-2.7/tests/Makefile.incl

Modified: xerces/c/branches/xerces-2.7/doc/build-winunix.xml
URL: http://svn.apache.org/viewvc/xerces/c/branches/xerces-2.7/doc/build-winunix.xml?rev=570159&r1=570158&r2=570159&view=diff
==============================================================================
--- xerces/c/branches/xerces-2.7/doc/build-winunix.xml (original)
+++ xerces/c/branches/xerces-2.7/doc/build-winunix.xml Mon Aug 27 08:43:48 2007
@@ -445,27 +445,6 @@
                <code>xlc</code> and <code>xlC</code> respectively</li>
             <li>Replace <code>makeC++SharedLib_r</code> with <code>makeC++SharedLib</code> in
                 Makefile.incl</li>
-            <li>Remove the <code>-D_THREAD_SAFE</code> and <code>-D_REENTRANT</code> compiler flags in Makefile.incl</li>
-          </ul>
-
-          <p>For Solaris -</p>
-          <ul>
-            <li>Remove the <code>-mt</code> and <code>-D_REENTRANT</code> compiler flags in Makefile.incl</li>
-          </ul>
-
-          <p>For Linux -</p>
-          <ul>
-            <li>Remove the <code>-D_REENTRANT</code> compiler flag in Makefile.incl</li>
-          </ul>
-
-          <p>For HP-UX -</p>
-          <ul>
-            <li>Remove the <code>-D_REENTRANT</code> and <code>-mt</code> compiler flags in Makefile.incl.</li>
-          </ul>
-
-          <p>For Mac OS X -</p>
-          <ul>
-            <li>Remove the <code>-D_REENTRANT</code> compiler flag in Makefile.incl.</li>
           </ul>
         </s3>
     </s2>

Modified: xerces/c/branches/xerces-2.7/samples/Makefile.incl
URL: http://svn.apache.org/viewvc/xerces/c/branches/xerces-2.7/samples/Makefile.incl?rev=570159&r1=570158&r2=570159&view=diff
==============================================================================
--- xerces/c/branches/xerces-2.7/samples/Makefile.incl (original)
+++ xerces/c/branches/xerces-2.7/samples/Makefile.incl Mon Aug 27 08:43:48 2007
@@ -47,16 +47,24 @@
 ifeq (${PLATFORM}, IRIX)
   ifeq (${GXX}, yes)
 	CMP= -c ${CXXFLAGS}
-	CC= ${COMPILER} -c -D${PLATFORM} -D_REENTRANT -fpic
+	CC= ${COMPILER} -c -D${PLATFORM} -fpic
 	LINK = ${COMPILER} -D${PLATFORM} -fpic ${LDFLAGS}
 	PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
 	EXTRA_LINK_OPTIONS=${EXTRA_LIBS}
+
+        ifneq (${THREADS},none)
+          CC += -D_REENTRANT
+        endif
   else
 	CMP= -c ${CXXFLAGS}
-	CC= CC -c -D${PLATFORM} -LANG:pch -LANG:std -O2 -D_REENTRANT -I/usr/local/include -no_auto_include
-	LINK =  CC -D${PLATFORM} ${LDFLAGS}
+	CC= ${COMPILER} -c -D${PLATFORM} -LANG:pch -LANG:std -O2 -I/usr/local/include -no_auto_include
+	LINK =  ${COMPILER} -D${PLATFORM} ${LDFLAGS}
 	PLATFORM_LIB_LINK_OPTIONS=
 	EXTRA_LINK_OPTIONS=${EXTRA_LIBS}
+
+        ifneq (${THREADS},none)
+          CC += -D_REENTRANT
+        endif
   endif
 endif
 
@@ -64,16 +72,24 @@
 ifeq (${PLATFORM}, SOLARIS)
   ifeq (${GXX}, yes)
 	CMP= -c ${CXXFLAGS}
-	CC= ${COMPILER} -c -D${PLATFORM} -D_REENTRANT -fpic
+	CC= ${COMPILER} -c -D${PLATFORM} -fpic
 	LINK = ${COMPILER} -D${PLATFORM} -fpic ${LDFLAGS}
 	PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
 	EXTRA_LINK_OPTIONS=${EXTRA_LIBS}
+
+        ifneq (${THREADS},none)
+          CC += -D_REENTRANT
+        endif
   else
 	CMP= -c ${CXXFLAGS}
-	CC= CC -c -D${PLATFORM} -D_REENTRANT -pic
- LINK =  CC -D${PLATFORM} ${LDFLAGS}
+	CC= ${COMPILER} -c -D${PLATFORM} -pic
+        LINK =  ${COMPILER} -D${PLATFORM} ${LDFLAGS}
 	PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib
 	EXTRA_LINK_OPTIONS=-lc -lgen ${EXTRA_LIBS}
+
+        ifneq (${THREADS},none)
+          CC += -D_REENTRANT -mt
+        endif
   endif
 endif
 
@@ -88,42 +104,55 @@
 
 #=============== UNIXWARE SPECIFIC OPTIONS =========================
 ifeq (${PLATFORM}, UNIXWARE)
-  CMP= -O2 -c ${CXXFLAGS} -pthread
-  CC= ${COMPILER} -O2 -c -D${PLATFORM} -D_REENTRANT -fpic -pthread
-  LINK = ${COMPILER} -D${PLATFORM} -fpic -pthread ${LDFLAGS}
+  CMP= -O2 -c ${CXXFLAGS}
+  CC= ${COMPILER} -D${PLATFORM} -fpic
+  LINK = ${COMPILER} -D${PLATFORM} -fpic ${LDFLAGS}
   EXTRA_LINK_OPTIONS=-lc -lsocket ${EXTRA_LIBS}
   PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
+
+  ifneq (${THREADS},none)
+    CMP += -D_REENTRANT -pthread
+    LINK += -pthread
+  endif
 endif
 
 #================= PTX SPECIFIC OPTIONS ===========================
 ifeq (${PLATFORM}, PTX)
-COMPILESWITCH= -KPIC -Kthread -DPTX -w -O
-CMP = -c ${COMPILESWITCH}
-CC= c++
-LINK =  ${CC} -DPTX -Kthread ${LDFLAGS}
-PLATFORM_CPP_COMPILER = c++
-PLATFORM_C_COMPILER = cc
-PLATFORM_LIBRARIES =
-PLATFORM_COMPILE_OPTIONS = -KPIC -Kthread -DPTX
-MAKE_SHARED = ${PLATFORM_CPP_COMPILER} -DPTX -G
-MAKE_SHARED_C = ${PLATFORM_C_COMPILER} -DPTX  -G
-PLATFORM_LIB_LINK_OPTIONS=-L/usr/local/lib -L${XMLINSTALL}/lib
-EXTRA_LINK_OPTIONS=-lm -lgen ${EXTRA_LIBS}
+  CMP = -c -KPIC -D${PLATFORM} -w -O
+  CC= ${COMPILER}
+  LINK =  ${COMPILER} -D${PLATFORM} ${LDFLAGS}
+  EXTRA_LINK_OPTIONS=-lm -lgen ${EXTRA_LIBS}
+  PLATFORM_LIB_LINK_OPTIONS=-L/usr/local/lib -L${XMLINSTALL}/lib
+
+  ifneq (${THREADS},none)
+    CMP += -Kthread
+    LINK += -Kthread
+  endif
+
 endif
 
 #================= AIX SPECIFIC OPTIONS ===========================
 ifeq (${PLATFORM}, AIX)
   ifeq (${GXX}, yes)
     CMP= -c ${CXXFLAGS}
-    CC= ${COMPILER} -c -D${PLATFORM} -D_REENTRANT -fpic
+    CC= ${COMPILER} -c -D${PLATFORM} -fpic
     LINK = ${COMPILER} -D${PLATFORM} -fpic ${LDFLAGS}
     PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
     EXTRA_LINK_OPTIONS= ${EXTRA_LIBS}
+
+    ifneq (${THREADS},none)
+      CC += -D_REENTRANT
+    endif
+
   else
     ifeq (${CXXVER}, v5compat)
-   CMP= -c ${CXXFLAGS} -qnotempinc -qnamemangling=v5   
+      CMP= -c ${CXXFLAGS} -qnotempinc -qnamemangling=v5
     else
-   CMP= -c ${CXXFLAGS} -qnotempinc -qnamemangling=ansi
+      CMP= -c ${CXXFLAGS} -qnotempinc -qnamemangling=ansi
+    endif
+
+    ifneq (${THREADS},none)
+      CMP += -D_THREAD_SAFE
     endif
 
     CC=${COMPILER} -D${PLATFORM}
@@ -163,26 +192,34 @@
 
 #=============== LINUX SPECIFIC OPTIONS =========================
 ifeq (${PLATFORM}, LINUX)
-  ifeq (${COMPILER}, xlC_r)	
+  ifeq (${COMPILER}, xlC_r)
     CMP= -c ${CXXFLAGS} -qnotempinc
-    CC= ${COMPILER} -c -D${PLATFORM} 
+    CC= ${COMPILER} -c -D${PLATFORM}
     LINK =  ${COMPILER} ${LDFLAGS}
     PLATFORM_LIB_LINK_OPTIONS=-L/usr/local/lib
     EXTRA_LINK_OPTIONS=${EXTRA_LIBS}
+
+    ifneq (${THREADS},none)
+      CMP += -D_REENTRANT
+    endif
   else
     CMP= -c ${CXXFLAGS}
-    CC= ${COMPILER} -c -D${PLATFORM} -D_REENTRANT -fpic
+    CC= ${COMPILER} -c -D${PLATFORM} -fpic
     LINK =  ${COMPILER} -D${PLATFORM} -fpic ${LDFLAGS}
     PLATFORM_LIB_LINK_OPTIONS=-L/usr/local/lib
     EXTRA_LINK_OPTIONS=${EXTRA_LIBS}
+
+    ifneq (${THREADS},none)
+      CMP += -D_REENTRANT
+    endif
   endif
 endif
 
 #=============== QNX SPECIFIC OPTIONS =========================
 ifeq (${PLATFORM}, QNX)
 CMP= -c ${CXXFLAGS}
-CC= QCC -c 
-LINK = QCC ${LDFLAGS}
+CC= ${COMPILER}
+LINK = ${COMPILER} ${LDFLAGS}
 PLATFORM_LIB_LINK_OPTIONS=-L/usr/local/lib
 EXTRA_LINK_OPTIONS=${EXTRA_LIBS}
 endif
@@ -199,17 +236,21 @@
 
 #=============== INTERIX SPECIFIC OPTIONS =========================
 ifeq (${PLATFORM}, INTERIX)
-CMP= -c ${CXXFLAGS} 
-CC= ${COMPILER} -c -D${PLATFORM} -D_REENTRANT -D_ALL_SOURCE 
-LINK =  ${COMPILER} -D${PLATFORM} ${LDFLAGS} 
-PLATFORM_LIB_LINK_OPTIONS=-L/usr/local/lib
-EXTRA_LINK_OPTIONS=-lc ${EXTRA_LIBS}
+  CMP= -c ${CXXFLAGS}
+  CC= ${COMPILER} -c -D${PLATFORM} -D_ALL_SOURCE
+  LINK =  ${COMPILER} -D${PLATFORM} ${LDFLAGS}
+  PLATFORM_LIB_LINK_OPTIONS=-L/usr/local/lib
+  EXTRA_LINK_OPTIONS=-lc ${EXTRA_LIBS}
+
+  ifneq (${THREADS},none)
+    CMP += -D_REENTRANT
+  endif
 endif
 
 #=============== MINGW SPECIFIC OPTIONS =========================
 ifeq (${PLATFORM}, MINGW)
 CMP= -c ${CXXFLAGS} -fexceptions
-CC= ${COMPILER} -c -D__${PLATFORM}__ 
+CC= ${COMPILER} -c -D__${PLATFORM}__
 LINK =  ${COMPILER} -D__${PLATFORM}__ ${LDFLAGS}
 PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
 EXTRA_LINK_OPTIONS=${EXTRA_LIBS}
@@ -247,26 +288,42 @@
 ifeq (${PLATFORM}, HPUX)
   ifeq (${GXX}, yes)
     CMP= -c ${CXXFLAGS}
-    CC= ${COMPILER} -c -D${PLATFORM} -D_REENTRANT -fpic
+    CC= ${COMPILER} -c -D${PLATFORM} -fpic
     LINK = ${COMPILER} -D${PLATFORM} -fpic ${LDFLAGS}
     PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
     EXTRA_LINK_OPTIONS= ${EXTRA_LIBS}
+
+    ifneq (${THREADS},none)
+      CMP += -D_REENTRANT
+    endif
   else
   ifeq (${COMPILER}, aCC)
     ifeq (${CXXVER}, aCC05)
-       CMP = -c $(CXXFLAGS) -D_HP_UX -DHPaCC -w +z -mt
+      CMP = -c $(CXXFLAGS) -D_HP_UX -DHPaCC -w +z
+      ifneq (${THREADS},none)
+        CMP += -mt
+      endif
     else
-       CMP = -c +DAportable $(CXXFLAGS) -D_HP_UX -DHPaCC -w +z
-    endif  
+      CMP = -c +DAportable $(CXXFLAGS) -D_HP_UX -DHPaCC -w +z
+    endif
 
     CC = aCC
     LINK =  ${CC} -Wl,+s -Wl,+b,. ${LDFLAGS}
-    
+
     ifeq (${CXXVER}, aCC05)
-       PLATFORM_LIB_LINK_OPTIONS=-L/opt/aCC/lib -L/usr/ccs/lib -mt
+      PLATFORM_LIB_LINK_OPTIONS=-L/opt/aCC/lib -L/usr/ccs/lib
     else
-       PLATFORM_LIB_LINK_OPTIONS=-L/opt/aCC/lib -L/usr/ccs/lib -lpthread    
-    endif      
+      PLATFORM_LIB_LINK_OPTIONS=-L/opt/aCC/lib -L/usr/ccs/lib
+    endif
+
+    ifneq (${THREADS},none)
+      ifeq (${CXXVER}, aCC05)
+        PLATFORM_LIB_LINK_OPTIONS += -mt
+      else
+        PLATFORM_LIB_LINK_OPTIONS += -lpthread
+      endif
+    endif
+
   else
     ifneq (${DEBUG}, 1)
       CXXFLAGS = -w +O1
@@ -352,8 +409,12 @@
 
 #=============== MacOS SPECIFIC OPTIONS =========================
 ifeq (${PLATFORM}, MACOSX)
-	CMP= -c ${CXXFLAGS}
-	CC= ${COMPILER} -c -D${PLATFORM} -D_REENTRANT
-	LINK = ${COMPILER} -D${PLATFORM} ${LDFLAGS}
-	PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -framework CoreServices
+  CMP= -c ${CXXFLAGS}
+  CC= ${COMPILER} -c -D${PLATFORM}
+  LINK = ${COMPILER} -D${PLATFORM} ${LDFLAGS}
+  PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -framework CoreServices
+
+  ifneq (${THREADS},none)
+    CMP += -D_REENTRANT
+  endif
 endif

Modified: xerces/c/branches/xerces-2.7/src/xercesc/Makefile.in
URL: http://svn.apache.org/viewvc/xerces/c/branches/xerces-2.7/src/xercesc/Makefile.in?rev=570159&r1=570158&r2=570159&view=diff
==============================================================================
--- xerces/c/branches/xerces-2.7/src/xercesc/Makefile.in (original)
+++ xerces/c/branches/xerces-2.7/src/xercesc/Makefile.in Mon Aug 27 08:43:48 2007
@@ -37,6 +37,7 @@
 PREFIX = @prefix@
 MESSAGELOADER=@messageloader@
 TRANSCODER=@transcoder@
+THREADS = @threads@
 LIBTYPE = @libtype@
 ARCH = @host_cpu@
 

Modified: xerces/c/branches/xerces-2.7/src/xercesc/Makefile.incl
URL: http://svn.apache.org/viewvc/xerces/c/branches/xerces-2.7/src/xercesc/Makefile.incl?rev=570159&r1=570158&r2=570159&view=diff
==============================================================================
--- xerces/c/branches/xerces-2.7/src/xercesc/Makefile.incl (original)
+++ xerces/c/branches/xerces-2.7/src/xercesc/Makefile.incl Mon Aug 27 08:43:48 2007
@@ -87,12 +87,16 @@
 #=============== SOLARIS SPECIFIC OPTIONS =========================
 ifeq (${PLATFORM}, SOLARIS)
   ifeq (${GXX}, yes)
-    PLATFORM_COMPILE_OPTIONS = -D${PLATFORM} -D_REENTRANT
+    PLATFORM_COMPILE_OPTIONS = -D${PLATFORM}
+
+    ifneq (${THREADS},none)
+      PLATFORM_COMPILE_OPTIONS += -D_REENTRANT
+    endif
 
     ifeq (${LIBTYPE},shared)
       PLATFORM_COMPILE_OPTIONS += -fPIC
-    MAKE_SHARED = ${CXX} -D${PLATFORM} -shared ${LDFLAGS}
-    MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared ${LDFLAGS}
+      MAKE_SHARED = ${CXX} -D${PLATFORM} -shared ${LDFLAGS}
+      MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared ${LDFLAGS}
     endif
 
     ifeq (${TRANSCODER}, ICU)
@@ -113,28 +117,33 @@
     LD_SODEPDOM = -Wl,-h,${SO_DEPDOM}
 
   else
-    PLATFORM_COMPILE_OPTIONS = -mt -xs -ptr$(XML_OBJ_DIR) \
-                               -features=rtti -D${PLATFORM} -D_REENTRANT
+    PLATFORM_COMPILE_OPTIONS = -xs -ptr$(XML_OBJ_DIR) -features=rtti \
+                               -D${PLATFORM}
+
+    ifneq (${THREADS},none)
+      PLATFORM_COMPILE_OPTIONS += -mt -D_REENTRANT
+      ALLLIBS = -mt
+    endif
 
     ifeq (${LIBTYPE},shared)
       PLATFORM_COMPILE_OPTIONS += -KPIC
-    MAKE_SHARED = ${CXX} -D${PLATFORM} -G -ptr$(XML_OBJ_DIR) ${LDFLAGS}
-    MAKE_SHARED_C = ${CC} -D${PLATFORM} -G ${LDFLAGS}
+      MAKE_SHARED = ${CXX} -D${PLATFORM} -G -ptr$(XML_OBJ_DIR) ${LDFLAGS}
+      MAKE_SHARED_C = ${CC} -D${PLATFORM} -G ${LDFLAGS}
     endif
 
     ifeq (${TRANSCODER}, ICU)
-        ALLLIBS = -mt ${LIBS} -licuuc -licudata
+        ALLLIBS += ${LIBS} -licuuc -licudata
     else
-        ALLLIBS = -mt ${LIBS}
+        ALLLIBS += ${LIBS}
     endif
 
     ifeq (${MESSAGELOADER}, ICU)
-        ALLLIBS = -mt ${LIBS} -licuuc -licudata -lXercesMessages
+        ALLLIBS += ${LIBS} -licuuc -licudata -lXercesMessages
     endif
 
   ## Compiler switch to embed a library name
   LD_SONAME = -h ${SO_NAME}
-  LD_SODEPDOM = -h ${SO_DEPDOM}  
+  LD_SODEPDOM = -h ${SO_DEPDOM}
   endif
 
   SHLIBSUFFIX=.so
@@ -144,12 +153,16 @@
 #=============== UNIXWARE SPECIFIC OPTIONS =========================
 ifeq (${PLATFORM}, UNIXWARE)
   ifeq (${GXX}, yes)
-    PLATFORM_COMPILE_OPTIONS = -D${PLATFORM} -D_REENTRANT
+    PLATFORM_COMPILE_OPTIONS = -D${PLATFORM}
+
+    ifneq (${THREADS},none)
+      PLATFORM_COMPILE_OPTIONS += -D_REENTRANT
+    endif
 
     ifeq (${LIBTYPE},shared)
       PLATFORM_COMPILE_OPTIONS += -fPIC
-    MAKE_SHARED = ${CXX} -D${PLATFORM} -shared ${LDFLAGS}
-    MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared ${LDFLAGS}
+      MAKE_SHARED = ${CXX} -D${PLATFORM} -shared ${LDFLAGS}
+      MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared ${LDFLAGS}
     endif
 
     ifeq (${TRANSCODER}, ICU)
@@ -166,12 +179,16 @@
     endif
 
   else
-    PLATFORM_COMPILE_OPTIONS = -mt -xs -D${PLATFORM} -D_REENTRANT
+    PLATFORM_COMPILE_OPTIONS = -xs -D${PLATFORM}
+
+    ifneq (${THREADS},none)
+      PLATFORM_COMPILE_OPTIONS += -mt -D_REENTRANT
+    endif
 
     ifeq (${LIBTYPE},shared)
       PLATFORM_COMPILE_OPTIONS += -KPIC
-    MAKE_SHARED = ${CXX} -D${PLATFORM} -G ${LDFLAGS}
-    MAKE_SHARED_C = ${CC} -D${PLATFORM} -G ${LDFLAGS}
+      MAKE_SHARED = ${CXX} -D${PLATFORM} -G ${LDFLAGS}
+      MAKE_SHARED_C = ${CC} -D${PLATFORM} -G ${LDFLAGS}
     endif
 
     ifeq (${TRANSCODER}, ICU)
@@ -196,10 +213,9 @@
 ifeq (${PLATFORM}, OPENSERVER)
   ifeq (${GXX}, yes)
     COMMON_COMPILE_OPTIONS = -D${PLATFORM}
-    ifeq (${THREADS}, none)
-      PLATFORM_COMPILE_OPTIONS = ${COMMON_COMPILE_OPTIONS}
-    else
-      PLATFORM_COMPILE_OPTIONS = ${COMMON_COMPILE_OPTIONS} -D_REENTRANT
+
+    ifneq (${THREADS},none)
+      PLATFORM_COMPILE_OPTIONS += -D_REENTRANT
     endif
 
     ifeq (${LIBTYPE},shared)
@@ -207,17 +223,18 @@
     MAKE_SHARED = ${CXX} -D${PLATFORM} -G ${LDFLAGS}
     MAKE_SHARED_C = ${CC} -D${PLATFORM} -G ${LDFLAGS}
     EXTRA_LINK_OPTIONS = -Wl,-h,${LIBNAME}${VER}${SHLIBSUFFIX}
-    DEPDOM_LINK_OPTIONS = -Wl,-h,${LIBDEPDOM}${VER}${SHLIBSUFFIX}    
+    DEPDOM_LINK_OPTIONS = -Wl,-h,${LIBDEPDOM}${VER}${SHLIBSUFFIX}
     endif
   else
     PLATFORM_COMPILE_OPTIONS = -D${PLATFORM} -belf
 
     ifeq (${LIBTYPE},shared)
       PLATFORM_COMPILE_OPTIONS += -KPIC
-    MAKE_SHARED = ${CXX} -D${PLATFORM} -belf -G ${LDFLAGS}
-    MAKE_SHARED_C = ${CC} -D${PLATFORM} -belf -G ${LDFLAGS}
-  endif
+      MAKE_SHARED = ${CXX} -D${PLATFORM} -belf -G ${LDFLAGS}
+      MAKE_SHARED_C = ${CC} -D${PLATFORM} -belf -G ${LDFLAGS}
+    endif
   endif
+
   ifeq (${TRANSCODER}, ICU)
     ALLLIBS = ${LIBS} -licuuc -licudata
   else
@@ -230,36 +247,48 @@
 #================= PTX SPECIFIC OPTIONS ===========================
 ifeq (${PLATFORM}, PTX)
 
-PLATFORM_CPP_COMPILER = c++
-PLATFORM_C_COMPILER = cc
-ifeq (${TRANSCODER}, ICU)
-  PLATFORM_COMPILE_OPTIONS = -Kthread -D${PLATFORM}
-  ALLLIBS = ${LIBS} -L${ICUROOT}/lib -lm -lgen -licuuc
-else
-  PLATFORM_COMPILE_OPTIONS = -Kthread -D${PLATFORM}
-  ALLLIBS = ${LIBS} -lm -lgen
-endif
-OBJ_OUT=${ALL_OBJECTS_DIR}/
-ifeq (${LIBTYPE},shared)
-  PLATFORM_COMPILE_OPTIONS += -KPIC
-  MAKE_SHARED = ${PLATFORM_CPP_COMPILER} -D${PLATFORM} -G ${LDFLAGS}
-  MAKE_SHARED_C = ${PLATFORM_C_COMPILER} -D${PLATFORM} -G ${LDFLAGS}
-  EXTRA_LINK_OPTIONS = -lm -lgen
-  DEPDOM_LINK_OPTIONS = -lm -lgen
-endif
-SHLIBSUFFIX=.so
-ICUSHLIBSUFFIX=.so
+  PLATFORM_CPP_COMPILER = c++
+  PLATFORM_C_COMPILER = cc
+
+  PLATFORM_COMPILE_OPTIONS = -D${PLATFORM}
+
+  ifneq (${THREADS},none)
+    PLATFORM_COMPILE_OPTIONS += -Kthread
+  endif
+
+  ifeq (${TRANSCODER}, ICU)
+    ALLLIBS = ${LIBS} -L${ICUROOT}/lib -lm -lgen -licuuc
+  else
+    ALLLIBS = ${LIBS} -lm -lgen
+  endif
+
+  OBJ_OUT=${ALL_OBJECTS_DIR}/
+
+  ifeq (${LIBTYPE},shared)
+    PLATFORM_COMPILE_OPTIONS += -KPIC
+    MAKE_SHARED = ${PLATFORM_CPP_COMPILER} -D${PLATFORM} -G ${LDFLAGS}
+    MAKE_SHARED_C = ${PLATFORM_C_COMPILER} -D${PLATFORM} -G ${LDFLAGS}
+    EXTRA_LINK_OPTIONS = -lm -lgen
+    DEPDOM_LINK_OPTIONS = -lm -lgen
+  endif
+
+  SHLIBSUFFIX=.so
+  ICUSHLIBSUFFIX=.so
 endif
 
 #================= AIX SPECIFIC OPTIONS ===========================
 ifeq (${PLATFORM}, AIX)
   ifeq (${GXX}, yes)
-    PLATFORM_COMPILE_OPTIONS = -D${PLATFORM} -D_REENTRANT
+    PLATFORM_COMPILE_OPTIONS = -D${PLATFORM}
+
+    ifneq (${THREADS},none)
+      PLATFORM_COMPILE_OPTIONS += -D_REENTRANT
+    endif
 
     ifeq (${LIBTYPE},shared)
       PLATFORM_COMPILE_OPTIONS += -fPIC
-    MAKE_SHARED = ${CXX} -D${PLATFORM} -shared ${LDFLAGS}
-    MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared ${LDFLAGS}
+      MAKE_SHARED = ${CXX} -D${PLATFORM} -shared ${LDFLAGS}
+      MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared ${LDFLAGS}
     endif
 
     ifeq (${TRANSCODER}, ICU)
@@ -275,33 +304,37 @@
     endif
   else
     ifeq (${TRANSCODER}, ICU)
-        ALLLIBS = ${LIBS} -L/usr/lpp/xlC/lib -licuuc -licudata
+      ALLLIBS = ${LIBS} -L/usr/lpp/xlC/lib -licuuc -licudata
     else
-    ALLLIBS = ${LIBS} -L/usr/lpp/xlC/lib
+      ALLLIBS = ${LIBS} -L/usr/lpp/xlC/lib
     endif
 
     ifeq (${MESSAGELOADER}, ICU)
-        ALLLIBS = ${LIBS} -L/usr/lpp/xlC/lib -licuuc -licudata -lXercesMessages
+      ALLLIBS = ${LIBS} -L/usr/lpp/xlC/lib -licuuc -licudata -lXercesMessages
     endif
 
     ifeq (${CXXVER}, v5compat)
-   PLATFORM_COMPILE_OPTIONS = -qnotempinc -D_THREAD_SAFE -qnamemangling=v5
+      PLATFORM_COMPILE_OPTIONS = -qnotempinc -qnamemangling=v5
     else
-   PLATFORM_COMPILE_OPTIONS = -qnotempinc -D_THREAD_SAFE -qnamemangling=ansi
+      PLATFORM_COMPILE_OPTIONS = -qnotempinc -qnamemangling=ansi
     endif
-    
-    ifeq (${LIBTYPE},shared)
-    ifeq (${BITSTOBUILD}, 64)
-    MAKE_SHARED = makeC++SharedLib_r -p 5000 ${LDFLAGS} -X64
-    MAKE_SHARED_C = makeC++SharedLib_r -p 5000 ${LDFLAGS} -X64
-    else
-    MAKE_SHARED = makeC++SharedLib_r -p 5000 ${LDFLAGS}
-    MAKE_SHARED_C = makeC++SharedLib_r -p 5000 ${LDFLAGS}
+
+    ifneq (${THREADS},none)
+      PLATFORM_COMPILE_OPTIONS += -D_THREAD_SAFE
     endif
 
-    EXTRA_LINK_OPTIONS = -bmap:$(XML_OBJ)/${LIBNAME}${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}.map
-    DEPDOM_LINK_OPTIONS = -bmap:$(XML_OBJ)/${LIBDEPDOM}${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}.map
-  endif
+    ifeq (${LIBTYPE},shared)
+      ifeq (${BITSTOBUILD}, 64)
+        MAKE_SHARED = makeC++SharedLib_r -p 5000 ${LDFLAGS} -X64
+        MAKE_SHARED_C = makeC++SharedLib_r -p 5000 ${LDFLAGS} -X64
+      else
+        MAKE_SHARED = makeC++SharedLib_r -p 5000 ${LDFLAGS}
+        MAKE_SHARED_C = makeC++SharedLib_r -p 5000 ${LDFLAGS}
+      endif
+
+      EXTRA_LINK_OPTIONS = -bmap:$(XML_OBJ)/${LIBNAME}${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}.map
+      DEPDOM_LINK_OPTIONS = -bmap:$(XML_OBJ)/${LIBDEPDOM}${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}.map
+    endif
   endif
 
   SHLIBSUFFIX=.a
@@ -336,8 +369,13 @@
     SHLIBSUFFIX=.a
     ICUSHLIBSUFFIX=.a
   else
-    PLATFORM_COMPILE_OPTIONS = -qnotempinc  -D_MULTI_THREADED -D${PLATFORM}
-    PLATFORM_C_COMPILE_OPTIONS =  -v  -D_MULTI_THREADED -D${PLATFORM}
+    PLATFORM_COMPILE_OPTIONS = -qnotempinc  -D${PLATFORM}
+    PLATFORM_C_COMPILE_OPTIONS =  -v -D${PLATFORM}
+
+    ifneq (${THREADS},none)
+      PLATFORM_COMPILE_OPTIONS += -D_MULTI_THREADED
+      PLATFORM_C_COMPILE_OPTIONS += -D_MULTI_THREADED
+    endif
 
     ifeq (${LIBTYPE},shared)
       MAKE_SHARED = ld -v ${LDFLAGS}
@@ -368,6 +406,11 @@
 
 #=============== BEOS SPECIFIC OPTIONS =========================
 ifeq (${PLATFORM}, BEOS)
+
+  ifneq (${THREADS},none)
+    $(error Xerces-C++ on BE OS can only be built as a single-threaded library)
+  endif
+
   PLATFORM_COMPILE_OPTIONS = -D${PLATFORM} -DAPP_NO_THREADS
 
   ifeq (${LIBTYPE},shared)
@@ -394,101 +437,112 @@
 
 #=============== INTERIX SPECIFIC OPTIONS =========================
 ifeq (${PLATFORM}, INTERIX)
-    PLATFORM_COMPILE_OPTIONS = -D${PLATFORM} -D_REENTRANT -D_ALL_SOURCE
+  PLATFORM_COMPILE_OPTIONS = -D${PLATFORM} -D_ALL_SOURCE
 
-    ifeq (${LIBTYPE},shared)
+  ifneq (${THREADS},none)
+    PLATFORM_COMPILE_OPTIONS += -D_REENTRANT
+  endif
+
+  ifeq (${LIBTYPE},shared)
     MAKE_SHARED = ${CXX} -D${PLATFORM} -shared ${LDFLAGS}
     MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared ${LDFLAGS}
-    endif
+  endif
 
-    ALLLIBS = ${LIBS}
-    SHLIBSUFFIX=.so
+  ALLLIBS = ${LIBS}
+  SHLIBSUFFIX=.so
 endif
 
 #=============== MINGW SPECIFIC OPTIONS =========================
 ifeq (${PLATFORM}, MINGW)
-    PLATFORM_COMPILE_OPTIONS = -D${PLATFORM} -fexceptions -D__GNUWIN32__ -DWIN32 -D_WINDOWS -DNDEBUG -DPLATFORM_WIN32
+  PLATFORM_COMPILE_OPTIONS = -D${PLATFORM} -fexceptions -D__GNUWIN32__ -DWIN32 -D_WINDOWS -DNDEBUG -DPLATFORM_WIN32
 
-    ifeq (${LIBTYPE},shared)
-      MAKE_SHARED = dllwrap --export-all-symbols --driver-name ${CXX} ${LDFLAGS}
+  ifeq (${LIBTYPE},shared)
+    MAKE_SHARED = dllwrap --export-all-symbols --driver-name ${CXX} ${LDFLAGS}
     MAKE_SHARED_C = ${CC} -D${PLATFORM} ${LDFLAGS}
-    else
-      PLATFORM_COMPILE_OPTIONS += -DXML_LIBRARY # switch off import/export
-    endif
+  else
+    PLATFORM_COMPILE_OPTIONS += -DXML_LIBRARY # switch off import/export
+  endif
 
-    ALLLIBS = ${LIBS}
-    SHLIBSUFFIX=.dll
+  ALLLIBS = ${LIBS}
+  SHLIBSUFFIX=.dll
 endif
 
 #=============== LINUX SPECIFIC OPTIONS =========================
 ifeq (${PLATFORM}, LINUX)
 
-    ifneq ($(filter xlC%,${CXX}),)
+  ifneq ($(filter xlC%,${CXX}),)
+
+    PLATFORM_COMPILE_OPTIONS = -qnotempinc -D${PLATFORM}
+
+    ifneq (${THREADS},none)
+      PLATFORM_COMPILE_OPTIONS += -D_REENTRANT
+    endif
+
+    ifeq (${LIBTYPE},shared)
+      PLATFORM_COMPILE_OPTIONS += -qpic
+      MAKE_SHARED = ${CXX} -D${PLATFORM} -qpic -qmkshrobj -G ${LDFLAGS}
+      MAKE_SHARED_C = ${CC} -D${PLATFORM} -qpic -qmkshrobj -G ${LDFLAGS}
+    endif
+
+    ifeq (${TRANSCODER}, ICU)
+      ALLLIBS = ${LIBS} -licuuc -licudata
+    endif
+
+    ifeq (${MESSAGELOADER}, ICU)
+      ALLLIBS = ${LIBS} -licuuc -licudata -lXercesMessages
+    endif
 
-        PLATFORM_COMPILE_OPTIONS = -qnotempinc -D${PLATFORM}
+    ## Compiler switch to embed a library name
+    LD_SONAME = -Wl,-soname,${SO_NAME}
+    LD_SODEPDOM = -Wl,-soname,${SO_DEPDOM}
 
-        ifeq (${LIBTYPE},shared)
-          PLATFORM_COMPILE_OPTIONS += -qpic
-        MAKE_SHARED = ${CXX} -D${PLATFORM} -qpic -qmkshrobj -G ${LDFLAGS}
-        MAKE_SHARED_C = ${CC} -D${PLATFORM} -qpic -qmkshrobj -G ${LDFLAGS}
-        endif
-
-        ifeq (${TRANSCODER}, ICU)
-            ALLLIBS = ${LIBS} -licuuc -licudata
-        endif
-
-        ifeq (${MESSAGELOADER}, ICU)
-            ALLLIBS = ${LIBS} -licuuc -licudata -lXercesMessages
-        endif
-
-        ## Compiler switch to embed a library name
-        LD_SONAME = -Wl,-soname,${SO_NAME}
-        LD_SODEPDOM = -Wl,-soname,${SO_DEPDOM}
-        
-    else  
+  else
     #non xlC_r
     #
-        PLATFORM_COMPILE_OPTIONS = -D${PLATFORM} -D_REENTRANT
+    PLATFORM_COMPILE_OPTIONS = -D${PLATFORM}
 
-        ifeq (${LIBTYPE},shared)
-          PLATFORM_COMPILE_OPTIONS += -fPIC
-        MAKE_SHARED = ${CXX} -D${PLATFORM} -shared -fPIC ${LDFLAGS}
-        MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared -fPIC ${LDFLAGS}
-        endif
-
-        ifeq (${BITSTOBUILD}, 64)
-            ifeq (${TRANSCODER}, ICU)
-                ALLLIBS = ${LIBS} -L/usr/lib64 -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib -licuuc -licudata
-            else
-                ALLLIBS = ${LIBS} -L/usr/lib64 -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib
-            endif
-
-            ifeq (${MESSAGELOADER}, ICU)
-                ALLLIBS = ${LIBS} -L/usr/lib64 -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib -licuuc -licudata -lXercesMessages
-            endif
-        else
-            ifeq (${TRANSCODER}, ICU)
-                ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib -licuuc -licudata
-            else
-                ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib
-            endif
-
-            ifeq (${MESSAGELOADER}, ICU)
-                ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib -licuuc -licudata -lXercesMessages
-            endif
-        endif
-
-        EXTRA_LINK_OPTIONS = -Xlinker -Map -Xlinker $(XML_OBJ)/${SO_NAME}.map
-        DEPDOM_LINK_OPTIONS = -Xlinker -Map -Xlinker $(XML_OBJ)/${SO_DEPDOM}.map
-        
-        ## Compiler switch to embed a library name
-        LD_SONAME = -Wl,-soname,${SO_NAME}
-        LD_SODEPDOM = -Wl,-soname,${SO_DEPDOM}        
-    endif        
+    ifneq (${THREADS},none)
+      PLATFORM_COMPILE_OPTIONS += -D_REENTRANT
+    endif
 
-    SHLIBSUFFIX=.so
-    ICUSHLIBSUFFIX=.so
+    ifeq (${LIBTYPE},shared)
+      PLATFORM_COMPILE_OPTIONS += -fPIC
+      MAKE_SHARED = ${CXX} -D${PLATFORM} -shared -fPIC ${LDFLAGS}
+      MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared -fPIC ${LDFLAGS}
+    endif
 
+    ifeq (${BITSTOBUILD}, 64)
+      ifeq (${TRANSCODER}, ICU)
+        ALLLIBS = ${LIBS} -L/usr/lib64 -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib -licuuc -licudata
+      else
+        ALLLIBS = ${LIBS} -L/usr/lib64 -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib
+      endif
+
+      ifeq (${MESSAGELOADER}, ICU)
+        ALLLIBS = ${LIBS} -L/usr/lib64 -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib -licuuc -licudata -lXercesMessages
+      endif
+    else
+      ifeq (${TRANSCODER}, ICU)
+        ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib -licuuc -licudata
+      else
+        ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib
+      endif
+
+      ifeq (${MESSAGELOADER}, ICU)
+        ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib -licuuc -licudata -lXercesMessages
+      endif
+    endif
+
+    EXTRA_LINK_OPTIONS = -Xlinker -Map -Xlinker $(XML_OBJ)/${SO_NAME}.map
+    DEPDOM_LINK_OPTIONS = -Xlinker -Map -Xlinker $(XML_OBJ)/${SO_DEPDOM}.map
+
+    ## Compiler switch to embed a library name
+    LD_SONAME = -Wl,-soname,${SO_NAME}
+    LD_SODEPDOM = -Wl,-soname,${SO_DEPDOM}
+  endif
+
+  SHLIBSUFFIX=.so
+  ICUSHLIBSUFFIX=.so
 endif
 
 #=============== QNX SPECIFIC OPTIONS =========================
@@ -570,9 +624,13 @@
 #=============== IRIX SPECIFIC OPTIONS ============================
 ifeq (${PLATFORM}, IRIX)
   PLATFORM_COMPILE_OPTIONS = -LANG:pch -LANG:std -O2 \
-                           -D${PLATFORM} -D_REENTRANT -no_auto_include \
+                           -D${PLATFORM} -no_auto_include \
                            -I/usr/local/include
 
+  ifneq (${THREADS},none)
+    PLATFORM_COMPILE_OPTIONS += -D_REENTRANT
+  endif
+
   ifeq (${LIBTYPE},shared)
     MAKE_SHARED = ${CXX} -D${PLATFORM} -shared ${LDFLAGS}
     MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared ${LDFLAGS}
@@ -614,39 +672,45 @@
   endif
 
   ifeq (${GXX}, yes)
+    PLATFORM_COMPILE_OPTIONS = -D${PLATFORM}
 
-    PLATFORM_COMPILE_OPTIONS = -D${PLATFORM} -D_REENTRANT
+    ifneq (${THREADS},none)
+      PLATFORM_COMPILE_OPTIONS += -D_REENTRANT
+    endif
 
     ifeq (${LIBTYPE},shared)
       PLATFORM_COMPILE_OPTIONS += -fPIC
-    MAKE_SHARED = ${CXX} -D${PLATFORM} -fPIC -shared ${LDFLAGS}
-    MAKE_SHARED_C = ${CC} -D${PLATFORM} -fPIC -shared ${LDFLAGS}
+      MAKE_SHARED = ${CXX} -D${PLATFORM} -fPIC -shared ${LDFLAGS}
+      MAKE_SHARED_C = ${CC} -D${PLATFORM} -fPIC -shared ${LDFLAGS}
     endif
 
     ifeq (${TRANSCODER}, ICU)
-        ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib \
-                  -licuuc -licudata
+      ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib \
+                -licuuc -licudata
     else
-        ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib
+      ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib
     endif
 
     ifeq (${MESSAGELOADER}, ICU)
-        ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib \
-                  -licuuc -licudata -lXercesMessages
+      ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib \
+                -licuuc -licudata -lXercesMessages
     endif
   else
   ifeq (${CXX}, aCC)
     ifeq (${CXXVER}, aCC05)
-         PLATFORM_COMPILE_OPTIONS = -D_HP_UX -DHPaCC -D${OSVERDEFINE} -mt
+      PLATFORM_COMPILE_OPTIONS = -D_HP_UX -DHPaCC -D${OSVERDEFINE}
+      ifneq (${THREADS},none)
+        PLATFORM_COMPILE_OPTIONS += -mt
+      endif
     else
-         PLATFORM_COMPILE_OPTIONS = -D_HP_UX -DHPaCC -D${OSVERDEFINE} +DAportable
+      PLATFORM_COMPILE_OPTIONS = -D_HP_UX -DHPaCC -D${OSVERDEFINE} +DAportable
+    endif
+
+    ifeq (${LIBTYPE},shared)
+      PLATFORM_COMPILE_OPTIONS += +Z
+      MAKE_SHARED   = ${CXX} ${PLATFORM_COMPILE_OPTIONS} -D${PLATFORM} ${LDFLAGS}
+      MAKE_SHARED_C = ${CC}  ${PLATFORM_COMPILE_OPTIONS} -D${PLATFORM} ${LDFLAGS}
     endif
-            
-      ifeq (${LIBTYPE},shared)
-        PLATFORM_COMPILE_OPTIONS += +Z
-    MAKE_SHARED   = ${CXX} ${PLATFORM_COMPILE_OPTIONS} -D${PLATFORM} ${LDFLAGS}
-    MAKE_SHARED_C = ${CC}  ${PLATFORM_COMPILE_OPTIONS} -D${PLATFORM} ${LDFLAGS}  
-      endif
 
     ifeq (${TRANSCODER}, ICU)
         ALLLIBS = ${LIBS} -licuuc -licudata
@@ -659,13 +723,17 @@
     endif
 
     ifeq (${CXXVER}, aCC05)
-       EXTRA_LINK_OPTIONS = -b -Wl,+s -Wl,+b,. -mt
-       DEPDOM_LINK_OPTIONS = -b -Wl,+s -Wl,+b,. -mt   
+      EXTRA_LINK_OPTIONS = -b -Wl,+s -Wl,+b,.
+      DEPDOM_LINK_OPTIONS = -b -Wl,+s -Wl,+b,.
+      ifneq (${THREADS},none)
+        EXTRA_LINK_OPTIONS += -mt
+        DEPDOM_LINK_OPTIONS += -mt
+      endif
     else
-       EXTRA_LINK_OPTIONS = -b -Wl,+s -Wl,+b,. 
+       EXTRA_LINK_OPTIONS = -b -Wl,+s -Wl,+b,.
        DEPDOM_LINK_OPTIONS = -b -Wl,+s -Wl,+b,.
     endif
-    
+
   else
     TEMPLATESREPOSITORY = ${XML_OBJ_DIR}/ptrepository
     COMMON_COMPILE_OPTIONS = -D_HP_UX -DXERCES_TMPLSINC \
@@ -676,11 +744,11 @@
       PLATFORM_COMPILE_OPTIONS  = $(COMMON_COMPILE_OPTIONS) -ptr${TEMPLATESREPOSITORY}
     endif
 
-      ifeq (${LIBTYPE},shared)
-        PLATFORM_COMPILE_OPTIONS += +Z
-    MAKE_SHARED = $(CXX) $(PLATFORM_COMPILE_OPTIONS) $(XML_INCL) ${LDFLAGS}
-    MAKE_SHARED_C = $(CC) $(PLATFORM_COMPILE_OPTIONS) $(XML_INCL) ${LDFLAGS}
-      endif
+    ifeq (${LIBTYPE},shared)
+      PLATFORM_COMPILE_OPTIONS += +Z
+      MAKE_SHARED = $(CXX) $(PLATFORM_COMPILE_OPTIONS) $(XML_INCL) ${LDFLAGS}
+      MAKE_SHARED_C = $(CC) $(PLATFORM_COMPILE_OPTIONS) $(XML_INCL) ${LDFLAGS}
+    endif
 
     ifeq (${TRANSCODER}, ICU)
         ALLLIBS = ${LIBS} -licuuc -licudata
@@ -693,8 +761,8 @@
     endif
 
     EXTRA_LINK_OPTIONS = -b -Wl,+s -Wl,+b,. -Wl,-a,shared
-    DEPDOM_LINK_OPTIONS = -b -Wl,+s -Wl,+b,. -Wl,-a,shared    
-    endif
+    DEPDOM_LINK_OPTIONS = -b -Wl,+s -Wl,+b,. -Wl,-a,shared
+  endif
   endif # GXX
 
   # HP-UX on IA64 uses .so and on PA-RISC -- .sl.
@@ -708,7 +776,7 @@
   endif
   ## Compiler switch to embed a library name
   LD_SONAME = -Wl,+h,${SO_NAME}
-  LD_SODEPDOM = -Wl,+h,${SO_DEPDOM}  
+  LD_SODEPDOM = -Wl,+h,${SO_DEPDOM}
 endif
 
 
@@ -757,7 +825,11 @@
   ICUSHLIBSUFFIX=.so
 
   ifeq (${GXX}, yes)
-    PLATFORM_COMPILE_OPTIONS = -D${PLATFORM} -D_REENTRANT
+    PLATFORM_COMPILE_OPTIONS = -D${PLATFORM}
+
+    ifneq (${THREADS},none)
+      PLATFORM_COMPILE_OPTIONS += -D_REENTRANT
+    endif
 
     ifeq (${LIBTYPE},shared)
       PLATFORM_COMPILE_OPTIONS += -fPIC
@@ -800,77 +872,77 @@
 
 #=============== MacOS SPECIFIC OPTIONS =========================
 ifeq (${PLATFORM}, MACOSX)
-    PLATFORM_LIBRARIES = \
-        -framework CoreServices
-    PLATFORM_COMPILE_OPTIONS = \
-        -D${PLATFORM} \
-        -D_REENTRANT
+  PLATFORM_LIBRARIES = -framework CoreServices
+  PLATFORM_COMPILE_OPTIONS = -D${PLATFORM}
 
-    ifeq (${LIBTYPE},shared)
+  ifneq (${THREADS},none)
+    PLATFORM_COMPILE_OPTIONS += -D_REENTRANT
+  endif
+
+  ifeq (${LIBTYPE},shared)
     MAKE_SHARED = ${CXX} -D${PLATFORM} -dynamiclib ${LDFLAGS}
     MAKE_SHARED_C = ${CC} -D${PLATFORM} -dynamiclib ${LDFLAGS}
-    endif
+  endif
 
-    ifeq (${TRANSCODER}, ICU)
-        ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib -licuuc -licudata
-    else
-        ALLLIBS = ${LIBS} -L/usr/lib
-    endif
+  ifeq (${TRANSCODER}, ICU)
+    ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib -licuuc -licudata
+  else
+    ALLLIBS = ${LIBS} -L/usr/lib
+  endif
 
-    ifeq (${MESSAGELOADER}, ICU)
-        ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib \
-                  -licuuc -licudata -lXercesMessages
-    endif
+  ifeq (${MESSAGELOADER}, ICU)
+    ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib \
+              -licuuc -licudata -lXercesMessages
+  endif
 
-    SHLIBSUFFIX=.dylib
-    ICUSHLIBSUFFIX=.dylib
-    LD_SONAME = -install_name ${PREFIX}/lib/${SO_NAME}
-    LD_SODEPDOM = -install_name ${PREFIX}/lib/${SO_DEPDOM}    
+  SHLIBSUFFIX=.dylib
+  ICUSHLIBSUFFIX=.dylib
+  LD_SONAME = -install_name ${PREFIX}/lib/${SO_NAME}
+  LD_SODEPDOM = -install_name ${PREFIX}/lib/${SO_DEPDOM}
 endif
 
 #=============== CygWin SPECIFIC OPTIONS =========================
 ifeq (${PLATFORM}, CYGWIN)
-      PLATFORM_COMPILE_OPTIONS = \
-              -D__${PLATFORM}__ \
-              -I/usr/include \
-              -I/usr/include/w32api
-
-      ifeq (${LIBTYPE},shared)
-      MAKE_SHARED = ${CXX} -shared ${LDFLAGS}
-      MAKE_SHARED_C = ${CC} -shared ${LDFLAGS}
-      endif
+  PLATFORM_COMPILE_OPTIONS = \
+    -D__${PLATFORM}__ \
+    -I/usr/include \
+    -I/usr/include/w32api
 
-      ifeq (${TRANSCODER}, ICU)
-              ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib -licuuc -licudata
-      else
-              ALLLIBS = ${LIBS} -L/usr/lib
-      endif
+  ifeq (${LIBTYPE},shared)
+    MAKE_SHARED = ${CXX} -shared ${LDFLAGS}
+    MAKE_SHARED_C = ${CC} -shared ${LDFLAGS}
+  endif
 
-      ifeq (${MESSAGELOADER}, ICU)
-          ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib \
-                    -licuuc -licudata -lXercesMessages
-      endif
+  ifeq (${TRANSCODER}, ICU)
+    ALLLIBS = ${LIBS} -licuuc -licudata
+  else
+    ALLLIBS = ${LIBS} -L/usr/lib
+  endif
+
+  ifeq (${MESSAGELOADER}, ICU)
+    ALLLIBS = ${LIBS} -licuuc -licudata -lXercesMessages
+  endif
+
+  EXTRA_LINK_OPTIONS = \
+    -Xlinker --warn-once \
+    -Xlinker -Map \
+    -Xlinker $(XML_LIB_DIR)/${LIBNAME}${SO_TARGET_VERSION}.map \
+    -Xlinker --output-def \
+    -Xlinker $(XML_LIB_DIR)/${LIBNAME}${SO_TARGET_VERSION}.def \
+    -Xlinker --out-implib \
+    -Xlinker $(XML_LIB_DIR)/${LIBNAME}${SO_TARGET_VERSION}.dll.a
+
+  DEPDOM_LINK_OPTIONS = \
+    -Xlinker --warn-once \
+    -Xlinker -Map \
+    -Xlinker $(XML_LIB_DIR)/${LIBDEPDOM}${SO_TARGET_VERSION}.map \
+    -Xlinker --output-def \
+    -Xlinker $(XML_LIB_DIR)/${LIBDEPDOM}${SO_TARGET_VERSION}.def \
+    -Xlinker --out-implib \
+    -Xlinker $(XML_LIB_DIR)/${LIBDEPDOM}${SO_TARGET_VERSION}.dll.a
 
-      EXTRA_LINK_OPTIONS = \
-              -Xlinker --warn-once \
-              -Xlinker -Map \
-                  -Xlinker $(XML_LIB_DIR)/${LIBNAME}${SO_TARGET_VERSION}.map \
-              -Xlinker --output-def \
-                  -Xlinker $(XML_LIB_DIR)/${LIBNAME}${SO_TARGET_VERSION}.def \
-              -Xlinker --out-implib \
-                  -Xlinker $(XML_LIB_DIR)/${LIBNAME}${SO_TARGET_VERSION}.dll.a
-                  
-      DEPDOM_LINK_OPTIONS = \
-              -Xlinker --warn-once \
-              -Xlinker -Map \
-                  -Xlinker $(XML_LIB_DIR)/${LIBDEPDOM}${SO_TARGET_VERSION}.map \
-              -Xlinker --output-def \
-                  -Xlinker $(XML_LIB_DIR)/${LIBDEPDOM}${SO_TARGET_VERSION}.def \
-              -Xlinker --out-implib \
-                  -Xlinker $(XML_LIB_DIR)/${LIBDEPDOM}${SO_TARGET_VERSION}.dll.a
-                                    
-        SHLIBSUFFIX=.dll
-        ICUSHLIBSUFFIX=.dll
+  SHLIBSUFFIX=.dll
+  ICUSHLIBSUFFIX=.dll
 endif
 
 
@@ -919,15 +991,15 @@
     LINK_NAME=${LIBNAME}${SHLIBSUFFIX}
     SO_NAME  =${LIBNAME}${SO_TARGET_VERSION}${SHLIBSUFFIX}
     REAL_NAME=${LIBNAME}${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}${SHLIBSUFFIX}
-    
+
     LINK_DEPDOM=${LIBDEPDOM}${SHLIBSUFFIX}
     SO_DEPDOM  =${LIBDEPDOM}${SO_TARGET_VERSION}${SHLIBSUFFIX}
     REAL_DEPDOM=${LIBDEPDOM}${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}${SHLIBSUFFIX}
-        
+
     RESLIB_LINK_NAME=${RESLIBNAME}${SHLIBSUFFIX}
     RESLIB_SO_NAME  =${RESLIBNAME}${SO_TARGET_VERSION}${SHLIBSUFFIX}
     RESLIB_REAL_NAME=${RESLIBNAME}${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}${SHLIBSUFFIX}
-    
+
 endif
 ifeq (${PLATFORM}, OS390)
     #
@@ -938,14 +1010,14 @@
     LINK_NAME=${LIBNAME}${SHLIBSUFFIX}
     SO_NAME  =${LIBNAME}${SO_TARGET_VERSION}${SHLIBSUFFIX}
     REAL_NAME=${LIBNAME}${VER}${SHLIBSUFFIX}
-	
+
     LINK_DEPDOM=${LIBDEPDOM}${SHLIBSUFFIX}
     SO_DEPDOM  =${LIBDEPDOM}${SO_TARGET_VERSION}${SHLIBSUFFIX}
     REAL_DEPDOM=${LIBDEPDOM}${VER}${SHLIBSUFFIX}
-    	
+
     RESLIB_LINK_NAME=${RESLIBNAME}${SHLIBSUFFIX}
     RESLIB_SO_NAME  =${RESLIBNAME}${SO_TARGET_VERSION}${SHLIBSUFFIX}
-    RESLIB_REAL_NAME=${RESLIBNAME}${VER}${SHLIBSUFFIX}	
+    RESLIB_REAL_NAME=${RESLIBNAME}${VER}${SHLIBSUFFIX}
 
 endif
 ifeq (${PLATFORM}, CYGWIN)
@@ -957,11 +1029,11 @@
     LINK_NAME=${LIBNAME}${SHLIBSUFFIX}
     SO_NAME  =${CYGNAME}${SO_TARGET_VERSION}${SHLIBSUFFIX}
     REAL_NAME=${LIBNAME}${VER}${SHLIBSUFFIX}
-    
+
     LINK_DEPDOM=${LIBDEPDOM}${SHLIBSUFFIX}
     SO_DEPDOM  =${CYGDEPDOM}${SO_TARGET_VERSION}${SHLIBSUFFIX}
     REAL_DEPDOM=${LIBDEPDOM}${VER}${SHLIBSUFFIX}
-        
+
 endif
 ifeq (${PLATFORM}, MINGW)
     #
@@ -972,11 +1044,11 @@
     LINK_NAME=${LIBNAME}${SHLIBSUFFIX}
     SO_NAME  =${LIBNAME}${SO_TARGET_VERSION}${SHLIBSUFFIX}
     REAL_NAME=${LIBNAME}${VER}${SHLIBSUFFIX}
-    
+
     LINK_DEPDOM=${LIBDEPDOM}${SHLIBSUFFIX}
     SO_DEPDOM  =${LIBDEPDOM}${SO_TARGET_VERSION}${SHLIBSUFFIX}
     REAL_DEPDOM=${LIBDEPDOM}${VER}${SHLIBSUFFIX}
-        
+
 endif
 ifeq (${PLATFORM}, MACOSX)
     #
@@ -987,11 +1059,11 @@
     LINK_NAME=${LIBNAME}${SHLIBSUFFIX}
     SO_NAME  =${LIBNAME}.${SO_TARGET_VERSION}${SHLIBSUFFIX}
     REAL_NAME=${LIBNAME}.${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}${SHLIBSUFFIX}
-    
+
     LINK_DEPDOM=${LIBDEPDOM}${SHLIBSUFFIX}
     SO_DEPDOM  =${LIBDEPDOM}.${SO_TARGET_VERSION}${SHLIBSUFFIX}
     REAL_DEPDOM=${LIBDEPDOM}.${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}${SHLIBSUFFIX}
-        
+
 endif
 ifeq (${PLATFORM}, QNX)
     #
@@ -1002,15 +1074,15 @@
     LINK_NAME=${LIBNAME}${SHLIBSUFFIX}
     SO_NAME  =${LIBNAME}${SHLIBSUFFIX}.${SO_TARGET_VERSION}
     REAL_NAME=$(SO_NAME)
-    
+
     LINK_DEPDOM=${LIBDEPDOM}${SHLIBSUFFIX}
     SO_DEPDOM  =${LIBDEPDOM}${SHLIBSUFFIX}.${SO_TARGET_VERSION}
     REAL_DEPDOM=$(SO_DEPDOM)
-        
+
 endif
 
 # Default naming (if no special cases above)
-ifeq ($(SO_NAME),) 
+ifeq ($(SO_NAME),)
     #
     # LINK_NAME=libxerces-c.so
     # SO_NAME  =libxerces-c.so.20
@@ -1019,14 +1091,14 @@
     LINK_NAME=${LIBNAME}${SHLIBSUFFIX}
     SO_NAME  =${LIBNAME}${SHLIBSUFFIX}.${SO_TARGET_VERSION}
     REAL_NAME=${LIBNAME}${SHLIBSUFFIX}.${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}
-	
+
     LINK_DEPDOM=${LIBDEPDOM}${SHLIBSUFFIX}
     SO_DEPDOM  =${LIBDEPDOM}${SHLIBSUFFIX}.${SO_TARGET_VERSION}
     REAL_DEPDOM=${LIBDEPDOM}${SHLIBSUFFIX}.${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}
-    	
+
     RESLIB_LINK_NAME=${RESLIBNAME}${SHLIBSUFFIX}
     RESLIB_SO_NAME  =${RESLIBNAME}${SHLIBSUFFIX}.${SO_TARGET_VERSION}
-    RESLIB_REAL_NAME=${RESLIBNAME}${SHLIBSUFFIX}.${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}	
+    RESLIB_REAL_NAME=${RESLIBNAME}${SHLIBSUFFIX}.${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}
 
 endif
 

Modified: xerces/c/branches/xerces-2.7/src/xercesc/util/NetAccessors/WinSock/Makefile.in
URL: http://svn.apache.org/viewvc/xerces/c/branches/xerces-2.7/src/xercesc/util/NetAccessors/WinSock/Makefile.in?rev=570159&r1=570158&r2=570159&view=diff
==============================================================================
--- xerces/c/branches/xerces-2.7/src/xercesc/util/NetAccessors/WinSock/Makefile.in (original)
+++ xerces/c/branches/xerces-2.7/src/xercesc/util/NetAccessors/WinSock/Makefile.in Mon Aug 27 08:43:48 2007
@@ -38,7 +38,8 @@
 TRANSCODER = @transcoder@
 NETACCESSOR = @netaccessor@
 THREADS = @threads@
-LIBTYPE = @libtype@
+LIBTYPE = @libtype@
+ARCH = @host_cpu@
 
 MODULE = util
 SUBMODULE = NetAccessors/WinSock

Modified: xerces/c/branches/xerces-2.7/tests/Makefile.incl
URL: http://svn.apache.org/viewvc/xerces/c/branches/xerces-2.7/tests/Makefile.incl?rev=570159&r1=570158&r2=570159&view=diff
==============================================================================
--- xerces/c/branches/xerces-2.7/tests/Makefile.incl (original)
+++ xerces/c/branches/xerces-2.7/tests/Makefile.incl Mon Aug 27 08:43:48 2007
@@ -47,16 +47,24 @@
 ifeq (${PLATFORM}, IRIX)
   ifeq (${GXX}, yes)
 	CMP= -c ${CXXFLAGS}
-	CC= ${COMPILER} -c -D${PLATFORM} -D_REENTRANT -fpic
+	CC= ${COMPILER} -c -D${PLATFORM} -fpic
 	LINK = ${COMPILER} -D${PLATFORM} -fpic ${LDFLAGS}
 	PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
 	EXTRA_LINK_OPTIONS=${EXTRA_LIBS}
+
+        ifneq (${THREADS},none)
+          CC += -D_REENTRANT
+        endif
   else
 	CMP= -c ${CXXFLAGS}
-	CC= CC -c -D${PLATFORM} -LANG:pch -LANG:std -O2 -D_REENTRANT -I/usr/local/include -no_auto_include
-	LINK =  CC -D${PLATFORM} ${LDFLAGS}
+	CC= ${COMPILER} -c -D${PLATFORM} -LANG:pch -LANG:std -O2 -I/usr/local/include -no_auto_include
+	LINK =  ${COMPILER} -D${PLATFORM} ${LDFLAGS}
 	PLATFORM_LIB_LINK_OPTIONS=
 	EXTRA_LINK_OPTIONS=${EXTRA_LIBS}
+
+        ifneq (${THREADS},none)
+          CC += -D_REENTRANT
+        endif
   endif
 endif
 
@@ -64,16 +72,24 @@
 ifeq (${PLATFORM}, SOLARIS)
   ifeq (${GXX}, yes)
 	CMP= -c ${CXXFLAGS}
-	CC= ${COMPILER} -c -D${PLATFORM} -D_REENTRANT -fpic
+	CC= ${COMPILER} -c -D${PLATFORM} -fpic
 	LINK = ${COMPILER} -D${PLATFORM} -fpic ${LDFLAGS}
 	PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
 	EXTRA_LINK_OPTIONS=${EXTRA_LIBS}
+
+        ifneq (${THREADS},none)
+          CC += -D_REENTRANT
+        endif
   else
 	CMP= -c ${CXXFLAGS}
-	CC= CC -c -D${PLATFORM} -D_REENTRANT -KPIC
- LINK =  CC -D${PLATFORM} ${LDFLAGS}
+	CC= ${COMPILER} -c -D${PLATFORM} -pic
+        LINK =  ${COMPILER} -D${PLATFORM} ${LDFLAGS}
 	PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib
 	EXTRA_LINK_OPTIONS=-lc -lgen ${EXTRA_LIBS}
+
+        ifneq (${THREADS},none)
+          CC += -D_REENTRANT -mt
+        endif
   endif
 endif
 
@@ -88,42 +104,54 @@
 
 #=============== UNIXWARE SPECIFIC OPTIONS =========================
 ifeq (${PLATFORM}, UNIXWARE)
-  CMP= -O2 -c ${CXXFLAGS} -pthread
-  CC= ${COMPILER} -O2 -c -D${PLATFORM} -D_REENTRANT -fpic -pthread
-  LINK = ${COMPILER} -D${PLATFORM} -fpic -pthread ${LDFLAGS}
+  CMP= -O2 -c ${CXXFLAGS}
+  CC= ${COMPILER} -D${PLATFORM} -fpic
+  LINK = ${COMPILER} -D${PLATFORM} -fpic ${LDFLAGS}
   EXTRA_LINK_OPTIONS=-lc -lsocket ${EXTRA_LIBS}
   PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
+
+  ifneq (${THREADS},none)
+    CMP += -D_REENTRANT -pthread
+    LINK += -pthread
+  endif
 endif
 
 #================= PTX SPECIFIC OPTIONS ===========================
 ifeq (${PLATFORM}, PTX)
-COMPILESWITCH= -KPIC -Kthread -DPTX -w -O
-CMP = -c ${COMPILESWITCH}
-CC= c++
-LINK =  ${CC} -DPTX -Kthread ${LDFLAGS}
-PLATFORM_CPP_COMPILER = c++
-PLATFORM_C_COMPILER = cc
-PLATFORM_LIBRARIES =
-PLATFORM_COMPILE_OPTIONS = -KPIC -Kthread -DPTX
-MAKE_SHARED = ${PLATFORM_CPP_COMPILER} -DPTX -G
-MAKE_SHARED_C = ${PLATFORM_C_COMPILER} -DPTX  -G
-PLATFORM_LIB_LINK_OPTIONS=-L/usr/local/lib -L${XMLINSTALL}/lib
-EXTRA_LINK_OPTIONS=-lm -lgen ${EXTRA_LIBS}
+  CMP = -c -KPIC -D${PLATFORM} -w -O
+  CC= ${COMPILER}
+  LINK =  ${COMPILER} -D${PLATFORM} ${LDFLAGS}
+  EXTRA_LINK_OPTIONS=-lm -lgen ${EXTRA_LIBS}
+  PLATFORM_LIB_LINK_OPTIONS=-L/usr/local/lib -L${XMLINSTALL}/lib
+
+  ifneq (${THREADS},none)
+    CMP += -Kthread
+    LINK += -Kthread
+  endif
+
 endif
 
 #================= AIX SPECIFIC OPTIONS ===========================
 ifeq (${PLATFORM}, AIX)
   ifeq (${GXX}, yes)
     CMP= -c ${CXXFLAGS}
-    CC= ${COMPILER} -c -D${PLATFORM} -D_REENTRANT -fpic
+    CC= ${COMPILER} -c -D${PLATFORM} -fpic
     LINK = ${COMPILER} -D${PLATFORM} -fpic ${LDFLAGS}
     PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
     EXTRA_LINK_OPTIONS= ${EXTRA_LIBS}
+
+    ifneq (${THREADS},none)
+      CC += -D_REENTRANT
+    endif
   else
     ifeq (${CXXVER}, v5compat)
-   CMP= -c ${CXXFLAGS} -qnotempinc -qnamemangling=v5   
+      CMP= -c ${CXXFLAGS} -qnotempinc -qnamemangling=v5
     else
-   CMP= -c ${CXXFLAGS} -qnotempinc -qnamemangling=ansi
+      CMP= -c ${CXXFLAGS} -qnotempinc -qnamemangling=ansi
+    endif
+
+    ifneq (${THREADS},none)
+      CMP += -D_THREAD_SAFE
     endif
 
     CC=${COMPILER} -D${PLATFORM}
@@ -166,23 +194,31 @@
   ifeq (${COMPILER}, xlC_r)
     CMP= -c ${CXXFLAGS} -qnotempinc
     CC= ${COMPILER} -c -D${PLATFORM}
-    LINK =  ${COMPILER} -D${PLATFORM} ${LDFLAGS}
+    LINK =  ${COMPILER} ${LDFLAGS}
     PLATFORM_LIB_LINK_OPTIONS=-L/usr/local/lib
     EXTRA_LINK_OPTIONS=${EXTRA_LIBS}
+
+    ifneq (${THREADS},none)
+      CMP += -D_REENTRANT
+    endif
   else
     CMP= -c ${CXXFLAGS}
-    CC= ${COMPILER} -c -D${PLATFORM} -D_REENTRANT -fpic
+    CC= ${COMPILER} -c -D${PLATFORM} -fpic
     LINK =  ${COMPILER} -D${PLATFORM} -fpic ${LDFLAGS}
     PLATFORM_LIB_LINK_OPTIONS=-L/usr/local/lib
     EXTRA_LINK_OPTIONS=${EXTRA_LIBS}
+
+    ifneq (${THREADS},none)
+      CMP += -D_REENTRANT
+    endif
   endif
 endif
 
 #=============== QNX SPECIFIC OPTIONS =========================
 ifeq (${PLATFORM}, QNX)
 CMP= -c ${CXXFLAGS}
-CC=QCC -c -O -I/usr/local/include
-LINK =  ${COMPILER} ${LDFLAGS}
+CC= ${COMPILER}
+LINK = ${COMPILER} ${LDFLAGS}
 PLATFORM_LIB_LINK_OPTIONS=-L/usr/local/lib
 EXTRA_LINK_OPTIONS=${EXTRA_LIBS}
 endif
@@ -199,11 +235,15 @@
 
 #=============== INTERIX SPECIFIC OPTIONS =========================
 ifeq (${PLATFORM}, INTERIX)
-CMP= -c ${CXXFLAGS} 
-CC= ${COMPILER} -c -D${PLATFORM} -D_REENTRANT -D_ALL_SOURCE
-LINK =  ${COMPILER} -D${PLATFORM} ${LDFLAGS}
-PLATFORM_LIB_LINK_OPTIONS=-L/usr/local/lib
-EXTRA_LINK_OPTIONS=${EXTRA_LIBS}
+  CMP= -c ${CXXFLAGS}
+  CC= ${COMPILER} -c -D${PLATFORM} -D_ALL_SOURCE
+  LINK =  ${COMPILER} -D${PLATFORM} ${LDFLAGS}
+  PLATFORM_LIB_LINK_OPTIONS=-L/usr/local/lib
+  EXTRA_LINK_OPTIONS=-lc ${EXTRA_LIBS}
+
+  ifneq (${THREADS},none)
+    CMP += -D_REENTRANT
+  endif
 endif
 
 #=============== MINGW SPECIFIC OPTIONS =========================
@@ -247,26 +287,41 @@
 ifeq (${PLATFORM}, HPUX)
   ifeq (${GXX}, yes)
     CMP= -c ${CXXFLAGS}
-    CC= ${COMPILER} -c -D${PLATFORM} -D_REENTRANT -fpic
+    CC= ${COMPILER} -c -D${PLATFORM} -fpic
     LINK = ${COMPILER} -D${PLATFORM} -fpic ${LDFLAGS}
     PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
     EXTRA_LINK_OPTIONS= ${EXTRA_LIBS}
+
+    ifneq (${THREADS},none)
+      CMP += -D_REENTRANT
+    endif
   else
   ifeq (${COMPILER}, aCC)
     ifeq (${CXXVER}, aCC05)
-       CMP = -c $(CXXFLAGS) -D_HP_UX -DHPaCC -w +z -mt
+      CMP = -c $(CXXFLAGS) -D_HP_UX -DHPaCC -w +z
+      ifneq (${THREADS},none)
+        CMP += -mt
+      endif
     else
-       CMP = -c +DAportable $(CXXFLAGS) -D_HP_UX -DHPaCC -w +z
-    endif    
+      CMP = -c +DAportable $(CXXFLAGS) -D_HP_UX -DHPaCC -w +z
+    endif
 
     CC = aCC
     LINK =  ${CC} -Wl,+s -Wl,+b,. ${LDFLAGS}
-    
+
     ifeq (${CXXVER}, aCC05)
-       PLATFORM_LIB_LINK_OPTIONS=-L/opt/aCC/lib -L/usr/ccs/lib -mt
+      PLATFORM_LIB_LINK_OPTIONS=-L/opt/aCC/lib -L/usr/ccs/lib
     else
-       PLATFORM_LIB_LINK_OPTIONS=-L/opt/aCC/lib -L/usr/ccs/lib -lpthread    
-    endif      
+      PLATFORM_LIB_LINK_OPTIONS=-L/opt/aCC/lib -L/usr/ccs/lib
+    endif
+
+    ifneq (${THREADS},none)
+      ifeq (${CXXVER}, aCC05)
+        PLATFORM_LIB_LINK_OPTIONS += -mt
+      else
+        PLATFORM_LIB_LINK_OPTIONS += -lpthread
+      endif
+    endif
   else
     ifneq (${DEBUG}, 1)
       CXXFLAGS = -w +O1
@@ -356,8 +411,12 @@
 
 #=============== MacOS SPECIFIC OPTIONS =========================
 ifeq (${PLATFORM}, MACOSX)
-	CMP= -c ${CXXFLAGS}
-	CC= ${COMPILER} -c -D${PLATFORM} -D_REENTRANT
-	LINK = ${COMPILER} -D${PLATFORM} ${LDFLAGS}
-	PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -framework CoreServices
+  CMP= -c ${CXXFLAGS}
+  CC= ${COMPILER} -c -D${PLATFORM}
+  LINK = ${COMPILER} -D${PLATFORM} ${LDFLAGS}
+  PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -framework CoreServices
+
+  ifneq (${THREADS},none)
+    CMP += -D_REENTRANT
+  endif
 endif



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