summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog-97a87
-rw-r--r--ace/Singleton.h2
-rw-r--r--apps/Gateway/Gateway/Proxy_Handler_Connector.cpp24
-rw-r--r--examples/ASX/Event_Server/Event_Server/Options.cpp5
-rw-r--r--examples/ASX/Event_Server/Event_Server/Peer_Router.cpp4
-rw-r--r--examples/ASX/Event_Server/Event_Server/Peer_Router.h10
-rw-r--r--examples/ASX/Event_Server/Transceiver/transceiver.cpp9
-rw-r--r--examples/ASX/UPIPE_Event_Server/Consumer_Router.cpp9
-rw-r--r--examples/ASX/UPIPE_Event_Server/Supplier_Router.cpp15
-rw-r--r--examples/Connection/Makefile3
-rw-r--r--examples/Connection/misc/test_upipe.cpp15
-rw-r--r--examples/Connection/non_blocking/test_sock_connector.cpp15
-rw-r--r--examples/Connection/non_blocking/test_spipe_connector.cpp16
-rw-r--r--examples/Connection/non_blocking/test_tli_connector.cpp16
-rw-r--r--include/makeinclude/platform_sco5.0.0-nothread.GNU2
-rw-r--r--netsvcs/lib/Client_Logging_Handler.cpp10
-rw-r--r--netsvcs/lib/TS_Clerk_Handler.cpp16
-rw-r--r--performance-tests/Synch-Benchmarks/Options.cpp2
-rw-r--r--tests/Conn_Test.cpp16
-rw-r--r--tests/SPIPE_Test.cpp2
20 files changed, 208 insertions, 70 deletions
diff --git a/ChangeLog-97a b/ChangeLog-97a
index 5cfada103ec..98ec87599d9 100644
--- a/ChangeLog-97a
+++ b/ChangeLog-97a
@@ -1,13 +1,88 @@
+Tue Apr 15 17:09:33 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
+
+ * examples/Connection/non_blocking/test_sock_connector.cpp: Added
+ a typedef for ACE_RW_Mutex so that the code compiles on non-MT
+ platforms. Thanks to Ganesh Pai <gpai@voicetek.com> for
+ reporting this.
+
+ * examples/Connection/non_blocking/test_tli_connector.cpp: Added a
+ typedef for ACE_RW_Mutex so that the code compiles on non-MT
+ platforms. Thanks to Ganesh Pai <gpai@voicetek.com> for
+ reporting this.
+
+ * examples/Connection/misc/test_upipe.cpp: Added a typedef for
+ ACE_RW_Mutex so that the code compiles on non-MT platforms.
+ Thanks to Ganesh Pai <gpai@voicetek.com> for reporting this.
+
+ * performance-tests/Synch-Benchmarks/Options.cpp: Added a #ifdef
+ for ACE_Thread_Mutex so that the code compiles on non-MT
+ platforms. Thanks to Ganesh Pai <gpai@voicetek.com> for
+ reporting this.
+
+ * examples/ASX/Event_Server/Transceiver/transceiver.cpp: Added a
+ typedef for ACE_RW_Mutex so that the code compiles on non-MT
+ platforms. Thanks to Ganesh Pai <gpai@voicetek.com> for
+ reporting this.
+
+ * examples/ASX/UPIPE_Event_Server/Consumer_Router.cpp: Added a
+ typedef for ACE_RW_Mutex so that the code compiles on non-MT
+ platforms. Thanks to Ganesh Pai <gpai@voicetek.com> for
+ reporting this.
+
+ * examples/ASX/Event_Server/Event_Server/Options.cpp
+ (print_results): Although rusage struct is defined on SCO, there
+ is no getrusage(), rusage is used only by wait()
+ etc. internally. Therefore, we had to move some #ifdefs around.
+ Thanks to Ganesh Pai <gpai@voicetek.com> for reporting this.
+
+ * apps/Gateway/Gateway/Proxy_Handler_Connector.cpp: Added a
+ typedef for ACE_RW_Mutex so that the code compiles on non-MT
+ platforms. Thanks to Ganesh Pai <gpai@voicetek.com> for
+ reporting this.
+
+ * tests/Conn_Test.cpp: Added a typedef for ACE_RW_Mutex so that
+ the code compiles on non-MT platforms. Thanks to Ganesh Pai
+ <gpai@voicetek.com> for reporting this.
+
+ * tests/SPIPE_Test.cpp (main): Removed the VXWORKS arm of the
+ #ifdef, which is not correct since this stuff only works if
+ we're working with a version of VxWorks that has STREAM pipes.
+
+ * include/makeinclude/platform_sco5.0.0-nothread.GNU: Changed
+
+ LIBS = -lsocket -lnsl -ldl
+
+ to
+
+ LIBS += -lsocket -lnsl -ldl
+
+ Thanks to Ganesh Pai <gpai@voicetek.com> for reporting this.
+
+ * netsvcs/lib/Client_Logging_Handler.cpp: Added a typedef for
+ ACE_RW_Mutex so that the code compiles on non-MT platforms.
+ Thanks to Ganesh Pai <gpai@voicetek.com> for reporting this.
+
+ * netsvcs/lib/TS_Clerk_Handler.cpp: Added a typedef for
+ ACE_RW_Mutex so that the code compiles on non-MT platforms.
+ Thanks to Ganesh Pai <gpai@voicetek.com> for reporting this.
+
+ * examples/ASX/Event_Server/Event_Server/Peer_Router.cpp: Added a
+ typedef for ACE_RW_Mutex so that the code compiles on non-MT
+ platforms. Thanks to Ganesh Pai <gpai@voicetek.com> for
+ reporting this.
+
Tue Apr 15 13:01:13 1997 David L. Levine <levine@cs.wustl.edu>
- * ace/Token_Request_Reply.cpp (ctor): added initialization of transfer_.data_ to
- avoid unitialized memory read.
+ * ace/Token_Request_Reply.cpp (ctor): added initialization of
+ transfer_.data_ to avoid unitialized memory read.
- * tests/test_config.h: removed "static" qualifier from randomize () to avoid warning from
- g++ when it's not called in a test.
+ * tests/test_config.h: removed "static" qualifier from
+ randomize () to avoid warning from g++ when it's not called
+ in a test.
- * examples/IPC_SAP/SPIPE_SAP/server.cpp (main): moved declaration of local variable "handle"
- up before its first use.
+ * examples/IPC_SAP/SPIPE_SAP/server.cpp (main): moved
+ declaration of local variable "handle" up before its first
+ use.
Mon Apr 14 23:08:27 1997 <irfan@TWOSTEP>
diff --git a/ace/Singleton.h b/ace/Singleton.h
index a1503183300..c925779993a 100644
--- a/ace/Singleton.h
+++ b/ace/Singleton.h
@@ -61,5 +61,3 @@ protected:
#endif /* ACE_TEMPLATES_REQUIRE_PRAGMA */
#endif /* ACE_SINGLETON_H */
-
-
diff --git a/apps/Gateway/Gateway/Proxy_Handler_Connector.cpp b/apps/Gateway/Gateway/Proxy_Handler_Connector.cpp
index bcbd590efc0..dbc7b5c7b71 100644
--- a/apps/Gateway/Gateway/Proxy_Handler_Connector.cpp
+++ b/apps/Gateway/Gateway/Proxy_Handler_Connector.cpp
@@ -92,19 +92,19 @@ Proxy_Handler_Connector::initiate_connection (Proxy_Handler *proxy_handler,
return 0;
}
-#if defined (ACE_TEMPLATES_REQUIRE_SPECIALIZATION)
-template class ACE_Connector<Proxy_Handler, ACE_SOCK_CONNECTOR>;
-template class ACE_Svc_Tuple<Proxy_Handler>;
#if defined (ACE_MT_SAFE)
- template class ACE_Map_Manager<ACE_HANDLE, ACE_Svc_Tuple<Proxy_Handler> *, ACE_RW_Mutex>;
- template class ACE_Map_Iterator<ACE_HANDLE, ACE_Svc_Tuple<Proxy_Handler> *, ACE_RW_Mutex>;
- template class ACE_Map_Entry<ACE_HANDLE, ACE_Svc_Tuple<Proxy_Handler> *>;
- template class ACE_Guard<ACE_RW_Mutex>;
- template class ACE_Read_Guard<ACE_RW_Mutex>;
- template class ACE_Write_Guard<ACE_RW_Mutex>;
+typedef ACE_RW_Mutex RW_MUTEX;
#else
- template class ACE_Map_Manager<ACE_HANDLE, ACE_Svc_Tuple<Proxy_Handler> *, ACE_Null_Mutex>;
- template class ACE_Map_Iterator<ACE_HANDLE, ACE_Svc_Tuple<Proxy_Handler> *, ACE_Null_Mutex>;
- template class ACE_Map_Entry<ACE_HANDLE, ACE_Svc_Tuple<Proxy_Handler> *>;
+typedef ACE_Null_Mutex RW_MUTEX;
#endif /* ACE_MT_SAFE */
+
+#if defined (ACE_TEMPLATES_REQUIRE_SPECIALIZATION)
+template class ACE_Connector<Proxy_Handler, ACE_SOCK_CONNECTOR>;
+template class ACE_Svc_Tuple<Proxy_Handler>;
+template class ACE_Map_Manager<ACE_HANDLE, ACE_Svc_Tuple<Proxy_Handler> *, RW_MUTEX>;
+template class ACE_Map_Iterator<ACE_HANDLE, ACE_Svc_Tuple<Proxy_Handler> *, RW_MUTEX>;
+template class ACE_Map_Entry<ACE_HANDLE, ACE_Svc_Tuple<Proxy_Handler> *>;
+template class ACE_Guard<RW_MUTEX>;
+template class ACE_Read_Guard<RW_MUTEX>;
+template class ACE_Write_Guard<RW_MUTEX>;
#endif /* ACE_TEMPLATES_REQUIRE_SPECIALIZATION */
diff --git a/examples/ASX/Event_Server/Event_Server/Options.cpp b/examples/ASX/Event_Server/Event_Server/Options.cpp
index 1255bbecf6a..ad4ddd00afb 100644
--- a/examples/ASX/Event_Server/Event_Server/Options.cpp
+++ b/examples/ASX/Event_Server/Event_Server/Options.cpp
@@ -41,14 +41,15 @@ void Options::print_results (void)
{
#if !defined (ACE_WIN32)
ACE_Profile_Timer::ACE_Elapsed_Time et;
- ACE_Profile_Timer::Rusage rusage;
this->itimer_.elapsed_time (et);
- this->itimer_.get_rusage (rusage);
if (this->verbose ())
{
#if defined (ACE_HAS_PRUSAGE_T)
+ ACE_Profile_Timer::Rusage rusage;
+ this->itimer_.get_rusage (rusage);
+
ACE_OS::printf ("final concurrency hint = %d\n", ACE_Thread::getconcurrency ());
ACE_OS::printf ("%8d = lwpid\n"
"%8d = lwp count\n"
diff --git a/examples/ASX/Event_Server/Event_Server/Peer_Router.cpp b/examples/ASX/Event_Server/Event_Server/Peer_Router.cpp
index a281735a35b..017543878b2 100644
--- a/examples/ASX/Event_Server/Event_Server/Peer_Router.cpp
+++ b/examples/ASX/Event_Server/Event_Server/Peer_Router.cpp
@@ -349,6 +349,6 @@ Peer_Router::control (ACE_Message_Block *mb)
#if defined (ACE_TEMPLATES_REQUIRE_SPECIALIZATION)
template class ACE_Acceptor<Peer_Handler, ACE_SOCK_ACCEPTOR>;
-template class ACE_Map_Iterator<ROUTING_KEY, Peer_Handler *, ACE_RW_Mutex>;
-template class ACE_Map_Manager<ROUTING_KEY, Peer_Handler *, ACE_RW_Mutex>;
+template class ACE_Map_Iterator<ROUTING_KEY, Peer_Handler *, ROUTER_MUTEX>;
+template class ACE_Map_Manager<ROUTING_KEY, Peer_Handler *, ROUTER_MUTEX>;
#endif /* ACE_TEMPLATES_REQUIRE_SPECIALIZATION */
diff --git a/examples/ASX/Event_Server/Event_Server/Peer_Router.h b/examples/ASX/Event_Server/Event_Server/Peer_Router.h
index dc69440c743..7bdfe46a271 100644
--- a/examples/ASX/Event_Server/Event_Server/Peer_Router.h
+++ b/examples/ASX/Event_Server/Event_Server/Peer_Router.h
@@ -15,6 +15,12 @@ typedef ACE_HANDLE ROUTING_KEY;
class Peer_Router;
class Peer_Router_Context;
+#if defined (ACE_MT_SAFE)
+typedef ACE_RW_Mutex ROUTER_MUTEX;
+#else
+typedef ACE_Null_Mutex ROUTER_MUTEX;
+#endif /* ACE_MT_SAFE */
+
class Peer_Handler : public ACE_Svc_Handler<ACE_SOCK_STREAM, ACE_SYNCH>
// = TITLE
// Receive input from a Peer and forward to the appropriate
@@ -78,8 +84,8 @@ private:
// Pointer to the <Peer_Router> that we are accepting for.
// = Useful typedefs
- typedef ACE_Map_Manager <ROUTING_KEY, Peer_Handler *, ACE_RW_Mutex> PEER_MAP;
- typedef ACE_Map_Iterator<ROUTING_KEY, Peer_Handler *, ACE_RW_Mutex> PEER_ITERATOR;
+ typedef ACE_Map_Manager <ROUTING_KEY, Peer_Handler *, ROUTER_MUTEX> PEER_MAP;
+ typedef ACE_Map_Iterator<ROUTING_KEY, Peer_Handler *, ROUTER_MUTEX> PEER_ITERATOR;
typedef ACE_Map_Entry<ROUTING_KEY, Peer_Handler *> PEER_ENTRY;
PEER_MAP peer_map_;
diff --git a/examples/ASX/Event_Server/Transceiver/transceiver.cpp b/examples/ASX/Event_Server/Transceiver/transceiver.cpp
index eef5248ee11..d37335de9fd 100644
--- a/examples/ASX/Event_Server/Transceiver/transceiver.cpp
+++ b/examples/ASX/Event_Server/Transceiver/transceiver.cpp
@@ -205,10 +205,15 @@ main (int argc, char *argv[])
return 0;
}
+#if defined (ACE_MT_SAFE)
+typedef ACE_RW_Mutex RW_MUTEX;
+#else
+typedef ACE_Null_Mutex RW_MUTEX;
+#endif /* ACE_MT_SAFE */
#if defined (ACE_TEMPLATES_REQUIRE_SPECIALIZATION)
template class ACE_Connector<Event_Transceiver, ACE_SOCK_CONNECTOR>;
-template class ACE_Map_Iterator<int, ACE_Svc_Tuple<Event_Transceiver> *, ACE_RW_Mutex>;
-template class ACE_Map_Manager<int, ACE_Svc_Tuple<Event_Transceiver> *, ACE_RW_Mutex>;
template class ACE_Svc_Tuple<Event_Transceiver>;
+template class ACE_Map_Iterator<int, ACE_Svc_Tuple<Event_Transceiver> *, RW_MUTEX>;
+template class ACE_Map_Manager<int, ACE_Svc_Tuple<Event_Transceiver> *, RW_MUTEX>;
#endif /* ACE_TEMPLATES_REQUIRE_SPECIALIZATION */
diff --git a/examples/ASX/UPIPE_Event_Server/Consumer_Router.cpp b/examples/ASX/UPIPE_Event_Server/Consumer_Router.cpp
index ce803b0538f..07b773c614f 100644
--- a/examples/ASX/UPIPE_Event_Server/Consumer_Router.cpp
+++ b/examples/ASX/UPIPE_Event_Server/Consumer_Router.cpp
@@ -128,12 +128,17 @@ Consumer_Router::info (char **strp, size_t length) const
#endif /* ACE_HAS_THREADS */
+#if defined (ACE_MT_SAFE)
+typedef ACE_RW_Mutex RW_MUTEX;
+#else
+typedef ACE_Null_Mutex RW_MUTEX;
+#endif /* ACE_MT_SAFE */
#if defined (ACE_TEMPLATES_REQUIRE_SPECIALIZATION)
template class ACE_Acceptor<Consumer_Handler, ACE_UPIPE_ACCEPTOR>;
-template class ACE_Map_Iterator<long, Consumer_Handler *, ACE_RW_Mutex>;
-template class ACE_Map_Manager<long, Consumer_Handler *, ACE_RW_Mutex>;
template class Acceptor_Factory<Consumer_Handler, CONSUMER_KEY>;
template class Peer_Handler<CONSUMER_ROUTER, CONSUMER_KEY>;
template class Peer_Router<Consumer_Handler, CONSUMER_KEY>;
+template class ACE_Map_Iterator<long, Consumer_Handler *, RW_MUTEX>;
+template class ACE_Map_Manager<long, Consumer_Handler *, RW_MUTEX>;
#endif /* ACE_TEMPLATES_REQUIRE_SPECIALIZATION */
diff --git a/examples/ASX/UPIPE_Event_Server/Supplier_Router.cpp b/examples/ASX/UPIPE_Event_Server/Supplier_Router.cpp
index 7f02db5db67..2b4f6a22f18 100644
--- a/examples/ASX/UPIPE_Event_Server/Supplier_Router.cpp
+++ b/examples/ASX/UPIPE_Event_Server/Supplier_Router.cpp
@@ -128,17 +128,22 @@ Supplier_Router::info (char **strp, size_t length) const
#endif /* ACE_HAS_THREADS */
+#if defined (ACE_MT_SAFE)
+typedef ACE_RW_Mutex RW_MUTEX;
+#else
+typedef ACE_Null_Mutex RW_MUTEX;
+#endif /* ACE_MT_SAFE */
#if defined (ACE_TEMPLATES_REQUIRE_SPECIALIZATION)
template class Acceptor_Factory<Supplier_Handler, SUPPLIER_KEY>;
template class ACE_Acceptor<Supplier_Handler, ACE_UPIPE_ACCEPTOR>;
-template class ACE_Guard<ACE_RW_Mutex>;
-template class ACE_Map_Iterator<SUPPLIER_KEY, Supplier_Handler *, ACE_RW_Mutex>;
-template class ACE_Map_Manager<SUPPLIER_KEY, Supplier_Handler *, ACE_RW_Mutex>;
-template class ACE_Read_Guard<ACE_RW_Mutex>;
-template class ACE_Write_Guard<ACE_RW_Mutex>;
template class ACE_Svc_Handler<ACE_UPIPE_STREAM, ACE_MT_SYNCH>;
template class ACE_TSS<ACE_Dynamic>;
template class Peer_Handler<SUPPLIER_ROUTER, SUPPLIER_KEY>;
template class Peer_Router<Supplier_Handler, SUPPLIER_KEY>;
+template class ACE_Map_Iterator<SUPPLIER_KEY, Supplier_Handler *, RW_MUTEX>;
+template class ACE_Map_Manager<SUPPLIER_KEY, Supplier_Handler *, RW_MUTEX>;
+template class ACE_Read_Guard<RW_MUTEX>;
+template class ACE_Write_Guard<RW_MUTEX>;
+template class ACE_Guard<RW_MUTEX>;
#endif /* ACE_TEMPLATES_REQUIRE_SPECIALIZATION */
diff --git a/examples/Connection/Makefile b/examples/Connection/Makefile
index f9345400a93..96c53892d51 100644
--- a/examples/Connection/Makefile
+++ b/examples/Connection/Makefile
@@ -10,7 +10,8 @@
INFO = README
-DIRS = misc \
+DIRS = blocking \
+ misc \
non_blocking
#----------------------------------------------------------------------------
diff --git a/examples/Connection/misc/test_upipe.cpp b/examples/Connection/misc/test_upipe.cpp
index eeaffddd864..f4d315f33bf 100644
--- a/examples/Connection/misc/test_upipe.cpp
+++ b/examples/Connection/misc/test_upipe.cpp
@@ -180,6 +180,11 @@ main (void)
}
#endif /* ACE_HAS_THREADS */
+#if defined (ACE_MT_SAFE)
+typedef ACE_RW_Mutex RW_MUTEX;
+#else
+typedef ACE_Null_Mutex RW_MUTEX;
+#endif /* ACE_MT_SAFE */
#if defined (ACE_TEMPLATES_REQUIRE_SPECIALIZATION)
template class ACE_Accept_Strategy<Server_Service, ACE_UPIPE_ACCEPTOR>;
@@ -187,12 +192,12 @@ template class ACE_Acceptor<Server_Service, ACE_UPIPE_ACCEPTOR>;
template class ACE_Concurrency_Strategy<Server_Service>;
template class ACE_Connector<Client_Service, ACE_UPIPE_CONNECTOR>;
template class ACE_Creation_Strategy<Server_Service>;
-template class ACE_Guard<ACE_RW_Mutex>;
-template class ACE_Map_Iterator<int, ACE_Svc_Tuple<Client_Service> *, ACE_RW_Mutex>;
-template class ACE_Map_Manager<int, ACE_Svc_Tuple<Client_Service> *, ACE_RW_Mutex>;
+template class ACE_Guard<RW_MUTEX>;
+template class ACE_Map_Iterator<int, ACE_Svc_Tuple<Client_Service> *, RW_MUTEX>;
+template class ACE_Map_Manager<int, ACE_Svc_Tuple<Client_Service> *, RW_MUTEX>;
template class ACE_Message_Queue<ACE_NULL_SYNCH>;
template class ACE_Module<ACE_NULL_SYNCH>;
-template class ACE_Read_Guard<ACE_RW_Mutex>;
+template class ACE_Read_Guard<RW_MUTEX>;
template class ACE_Scheduling_Strategy<Server_Service>;
template class ACE_Strategy_Acceptor<Server_Service, ACE_UPIPE_ACCEPTOR>;
template class ACE_Svc_Handler<ACE_UPIPE_STREAM, ACE_NULL_SYNCH>;
@@ -201,5 +206,5 @@ template class ACE_TSS<ACE_Dynamic>;
template class ACE_Task<ACE_NULL_SYNCH>;
template class ACE_Thread_Strategy<Server_Service>;
template class ACE_Thru_Task<ACE_NULL_SYNCH>;
-template class ACE_Write_Guard<ACE_RW_Mutex>;
+template class ACE_Write_Guard<RW_MUTEX>;
#endif /* ACE_TEMPLATES_REQUIRE_SPECIALIZATION */
diff --git a/examples/Connection/non_blocking/test_sock_connector.cpp b/examples/Connection/non_blocking/test_sock_connector.cpp
index 1417715f94e..f297af8efcb 100644
--- a/examples/Connection/non_blocking/test_sock_connector.cpp
+++ b/examples/Connection/non_blocking/test_sock_connector.cpp
@@ -23,17 +23,22 @@ main (int argc, char *argv[])
return peer_connector.svc ();
}
+#if defined (ACE_MT_SAFE)
+typedef ACE_RW_Mutex RW_MUTEX;
+#else
+typedef ACE_Null_Mutex RW_MUTEX;
+#endif /* ACE_MT_SAFE */
#if defined (ACE_TEMPLATES_REQUIRE_SPECIALIZATION)
template class ACE_Connector<PEER_HANDLER, ACE_SOCK_CONNECTOR>;
-template class ACE_Guard<ACE_RW_Mutex>;
-template class ACE_Map_Iterator<int, ACE_Svc_Tuple<PEER_HANDLER> *, ACE_RW_Mutex>;
-template class ACE_Map_Manager<int, ACE_Svc_Tuple<PEER_HANDLER> *, ACE_RW_Mutex>;
-template class ACE_Read_Guard<ACE_RW_Mutex>;
template class ACE_Svc_Handler<ACE_SOCK_STREAM, ACE_SYNCH>;
template class ACE_Svc_Tuple<PEER_HANDLER>;
-template class ACE_Write_Guard<ACE_RW_Mutex>;
template class ACE_TSS<ACE_Dynamic>;
template class IPC_Client<PEER_HANDLER, ACE_SOCK_CONNECTOR>;
template class Peer_Handler<ACE_SOCK_STREAM>;
+template class ACE_Guard<RW_MUTEX>;
+template class ACE_Map_Iterator<int, ACE_Svc_Tuple<PEER_HANDLER> *, RW_MUTEX>;
+template class ACE_Map_Manager<int, ACE_Svc_Tuple<PEER_HANDLER> *, RW_MUTEX>;
+template class ACE_Read_Guard<RW_MUTEX>;
+template class ACE_Write_Guard<RW_MUTEX>;
#endif /* ACE_TEMPLATES_REQUIRE_SPECIALIZATION */
diff --git a/examples/Connection/non_blocking/test_spipe_connector.cpp b/examples/Connection/non_blocking/test_spipe_connector.cpp
index d47fd847575..b540c954877 100644
--- a/examples/Connection/non_blocking/test_spipe_connector.cpp
+++ b/examples/Connection/non_blocking/test_spipe_connector.cpp
@@ -23,15 +23,21 @@ main (int argc, char *argv[])
return peer_connector.svc ();
}
+#if defined (ACE_MT_SAFE)
+typedef ACE_RW_Mutex RW_MUTEX;
+#else
+typedef ACE_Null_Mutex RW_MUTEX;
+#endif /* ACE_MT_SAFE */
+
#if defined (ACE_TEMPLATES_REQUIRE_SPECIALIZATION)
template class ACE_Connector<PEER_HANDLER, ACE_SPIPE_CONNECTOR>;
-template class ACE_Guard<ACE_RW_Mutex>;
-template class ACE_Map_Iterator<int, ACE_Svc_Tuple<PEER_HANDLER> *, ACE_RW_Mutex>;
-template class ACE_Map_Manager<int, ACE_Svc_Tuple<PEER_HANDLER> *, ACE_RW_Mutex>;
-template class ACE_Read_Guard<ACE_RW_Mutex>;
template class ACE_Svc_Handler<ACE_SPIPE_STREAM, ACE_SYNCH>;
template class ACE_Svc_Tuple<PEER_HANDLER>;
-template class ACE_Write_Guard<ACE_RW_Mutex>;
+template class ACE_Guard<RW_MUTEX>;
+template class ACE_Map_Iterator<int, ACE_Svc_Tuple<PEER_HANDLER> *, RW_MUTEX>;
+template class ACE_Map_Manager<int, ACE_Svc_Tuple<PEER_HANDLER> *, RW_MUTEX>;
+template class ACE_Read_Guard<RW_MUTEX>;
+template class ACE_Write_Guard<RW_MUTEX>;
template class ACE_TSS<ACE_Dynamic>;
template class IPC_Client<PEER_HANDLER, ACE_SPIPE_CONNECTOR>;
template class Peer_Handler<ACE_SPIPE_STREAM>;
diff --git a/examples/Connection/non_blocking/test_tli_connector.cpp b/examples/Connection/non_blocking/test_tli_connector.cpp
index 243da828cfc..810c0645f6c 100644
--- a/examples/Connection/non_blocking/test_tli_connector.cpp
+++ b/examples/Connection/non_blocking/test_tli_connector.cpp
@@ -25,15 +25,21 @@ main (int argc, char *argv[])
return peer_connector.svc ();
}
+#if defined (ACE_MT_SAFE)
+typedef ACE_RW_Mutex RW_MUTEX;
+#else
+typedef ACE_Null_Mutex RW_MUTEX;
+#endif /* ACE_MT_SAFE */
+
#if defined (ACE_TEMPLATES_REQUIRE_SPECIALIZATION)
template class ACE_Connector<PEER_HANDLER, ACE_TLI_CONNECTOR>;
-template class ACE_Guard<ACE_RW_Mutex>;
-template class ACE_Map_Iterator<int, ACE_Svc_Tuple<PEER_HANDLER> *, ACE_RW_Mutex>;
-template class ACE_Map_Manager<int, ACE_Svc_Tuple<PEER_HANDLER> *, ACE_RW_Mutex>;
-template class ACE_Read_Guard<ACE_RW_Mutex>;
template class ACE_Svc_Handler<ACE_TLI_STREAM, ACE_SYNCH>;
template class ACE_Svc_Tuple<PEER_HANDLER>;
-template class ACE_Write_Guard<ACE_RW_Mutex>;
+template class ACE_Guard<RW_MUTEX>;
+template class ACE_Map_Iterator<int, ACE_Svc_Tuple<PEER_HANDLER> *, RW_MUTEX>;
+template class ACE_Map_Manager<int, ACE_Svc_Tuple<PEER_HANDLER> *, RW_MUTEX>;
+template class ACE_Read_Guard<RW_MUTEX>;
+template class ACE_Write_Guard<RW_MUTEX>;
template class ACE_TSS<ACE_Dynamic>;
template class IPC_Client<PEER_HANDLER, ACE_TLI_CONNECTOR>;
template class Peer_Handler<ACE_TLI_STREAM>;
diff --git a/include/makeinclude/platform_sco5.0.0-nothread.GNU b/include/makeinclude/platform_sco5.0.0-nothread.GNU
index 0c27cb2528e..c9ae4d2da9f 100644
--- a/include/makeinclude/platform_sco5.0.0-nothread.GNU
+++ b/include/makeinclude/platform_sco5.0.0-nothread.GNU
@@ -7,7 +7,7 @@ CCFLAGS += -b elf -w -O2 -Xpg4plus -fno-implicit-templates \
-I/usr/progressive/lib/g++-include
DLD = $(CXX)
LD = $(CXX)
-LIBS = -lsocket -lnsl -ldl
+LIBS += -lsocket -lnsl -ldl
PIC = -fpic
AR = ar
ARFLAGS = ruv
diff --git a/netsvcs/lib/Client_Logging_Handler.cpp b/netsvcs/lib/Client_Logging_Handler.cpp
index 81c01d89ecc..9d140dbc650 100644
--- a/netsvcs/lib/Client_Logging_Handler.cpp
+++ b/netsvcs/lib/Client_Logging_Handler.cpp
@@ -358,9 +358,15 @@ ACE_Client_Logging_Connector::resume (void)
ACE_SVC_FACTORY_DEFINE (ACE_Client_Logging_Connector)
+#if defined (ACE_MT_SAFE)
+typedef ACE_RW_Mutex RW_MUTEX;
+#else
+typedef ACE_Null_Mutex RW_MUTEX;
+#endif /* ACE_MT_SAFE */
+
#if defined (ACE_TEMPLATES_REQUIRE_SPECIALIZATION)
template class ACE_Connector<ACE_Client_Logging_Handler, ACE_SOCK_CONNECTOR>;
-template class ACE_Map_Iterator<int, ACE_Svc_Tuple<ACE_Client_Logging_Handler> *, ACE_RW_Mutex>;
-template class ACE_Map_Manager<int, ACE_Svc_Tuple<ACE_Client_Logging_Handler> *, ACE_RW_Mutex>;
template class ACE_Svc_Tuple<ACE_Client_Logging_Handler>;
+template class ACE_Map_Iterator<int, ACE_Svc_Tuple<ACE_Client_Logging_Handler> *, RW_MUTEX>;
+template class ACE_Map_Manager<int, ACE_Svc_Tuple<ACE_Client_Logging_Handler> *, RW_MUTEX>;
#endif /* ACE_TEMPLATES_REQUIRE_SPECIALIZATION */
diff --git a/netsvcs/lib/TS_Clerk_Handler.cpp b/netsvcs/lib/TS_Clerk_Handler.cpp
index 8632e28cc53..dfdfb84f00e 100644
--- a/netsvcs/lib/TS_Clerk_Handler.cpp
+++ b/netsvcs/lib/TS_Clerk_Handler.cpp
@@ -802,15 +802,21 @@ ACE_TS_Clerk_Processor::resume (void)
ACE_SVC_FACTORY_DEFINE (ACE_TS_Clerk_Processor)
+#if defined (ACE_MT_SAFE)
+typedef ACE_RW_Mutex RW_MUTEX;
+#else
+typedef ACE_Null_Mutex RW_MUTEX;
+#endif /* ACE_MT_SAFE */
+
#if defined (ACE_TEMPLATES_REQUIRE_SPECIALIZATION)
template class ACE_Connector<ACE_TS_Clerk_Handler, ACE_SOCK_CONNECTOR>;
-template class ACE_Guard<ACE_RW_Mutex>;
-template class ACE_Map_Iterator<int, ACE_Svc_Tuple<ACE_TS_Clerk_Handler> *, ACE_RW_Mutex>;
-template class ACE_Map_Manager<int, ACE_Svc_Tuple<ACE_TS_Clerk_Handler> *, ACE_RW_Mutex>;
-template class ACE_Read_Guard<ACE_RW_Mutex>;
template class ACE_Set_Node<ACE_TS_Clerk_Handler *>;
template class ACE_Svc_Tuple<ACE_TS_Clerk_Handler>;
template class ACE_Unbounded_Set<ACE_TS_Clerk_Handler *>;
template class ACE_Unbounded_Set_Iterator<ACE_TS_Clerk_Handler *>;
-template class ACE_Write_Guard<ACE_RW_Mutex>;
+template class ACE_Map_Iterator<int, ACE_Svc_Tuple<ACE_TS_Clerk_Handler> *, RW_MUTEX>;
+template class ACE_Map_Manager<int, ACE_Svc_Tuple<ACE_TS_Clerk_Handler> *, RW_MUTEX>;
+template class ACE_Guard<RW_MUTEX>;
+template class ACE_Read_Guard<RW_MUTEX>;
+template class ACE_Write_Guard<RW_MUTEX>;
#endif /* ACE_TEMPLATES_REQUIRE_SPECIALIZATION */
diff --git a/performance-tests/Synch-Benchmarks/Options.cpp b/performance-tests/Synch-Benchmarks/Options.cpp
index 9db91d5ff88..453c757356f 100644
--- a/performance-tests/Synch-Benchmarks/Options.cpp
+++ b/performance-tests/Synch-Benchmarks/Options.cpp
@@ -393,6 +393,8 @@ Options::print_results (void)
#if defined (ACE_TEMPLATES_REQUIRE_SPECIALIZATION)
+#if defined (ACE_MT_SAFE)
template class ACE_Atomic_Op<ACE_Thread_Mutex, size_t>;
+#endif /* ACE_MT_SAFE */
#endif /* ACE_TEMPLATES_REQUIRE_SPECIALIZATION */
diff --git a/tests/Conn_Test.cpp b/tests/Conn_Test.cpp
index 6067f730ee3..a2dbbdbbd52 100644
--- a/tests/Conn_Test.cpp
+++ b/tests/Conn_Test.cpp
@@ -622,25 +622,31 @@ main (int, char *[])
return 0;
}
+#if defined (ACE_MT_SAFE)
+typedef ACE_RW_Mutex RW_MUTEX;
+#else
+typedef ACE_Null_Mutex RW_MUTEX;
+#endif /* ACE_MT_SAFE */
+
#if defined (ACE_TEMPLATES_REQUIRE_SPECIALIZATION)
template class ACE_Concurrency_Strategy<Svc_Handler>;
template class ACE_Connect_Strategy<Svc_Handler, ACE_SOCK_CONNECTOR>;
template class ACE_Connector<Svc_Handler, ACE_SOCK_CONNECTOR>;
template class ACE_Creation_Strategy<Svc_Handler>;
-template class ACE_Guard<ACE_RW_Mutex>;
template class ACE_Hash_Map_Entry<Hash_Addr, Svc_Handler *>;
template class ACE_Hash_Map_Manager<Hash_Addr, Svc_Handler *, ACE_Null_Mutex>;
-template class ACE_Map_Iterator<int, ACE_Svc_Tuple<Svc_Handler> *, ACE_RW_Mutex>;
-template class ACE_Map_Manager<int, ACE_Svc_Tuple<Svc_Handler> *, ACE_RW_Mutex>;
template class ACE_Message_Queue<ACE_NULL_SYNCH>;
template class ACE_Module<ACE_NULL_SYNCH>;
template class ACE_Oneshot_Acceptor<Svc_Handler, ACE_SOCK_ACCEPTOR>;
-template class ACE_Read_Guard<ACE_RW_Mutex>;
template class ACE_Strategy_Connector<Svc_Handler, ACE_SOCK_CONNECTOR>;
template class ACE_Svc_Handler<ACE_SOCK_STREAM, ACE_NULL_SYNCH>;
template class ACE_Svc_Tuple<Svc_Handler>;
template class ACE_TSS<ACE_Dynamic>;
template class ACE_Task<ACE_NULL_SYNCH>;
template class ACE_Thru_Task<ACE_NULL_SYNCH>;
-template class ACE_Write_Guard<ACE_RW_Mutex>;
+template class ACE_Guard<RW_MUTEX>;
+template class ACE_Map_Iterator<int, ACE_Svc_Tuple<Svc_Handler> *, RW_MUTEX>;
+template class ACE_Map_Manager<int, ACE_Svc_Tuple<Svc_Handler> *, RW_MUTEX>;
+template class ACE_Read_Guard<RW_MUTEX>;
+template class ACE_Write_Guard<RW_MUTEX>;
#endif /* ACE_TEMPLATES_REQUIRE_SPECIALIZATION */
diff --git a/tests/SPIPE_Test.cpp b/tests/SPIPE_Test.cpp
index 0c9eebd8829..cb4bbea0896 100644
--- a/tests/SPIPE_Test.cpp
+++ b/tests/SPIPE_Test.cpp
@@ -137,7 +137,7 @@ main (int, char *[])
{
ACE_START_TEST ("SPIPE_Test");
-#if defined (ACE_HAS_STREAM_PIPES) || defined (ACE_WIN32) || defined (VXWORKS)
+#if defined (ACE_HAS_STREAM_PIPES) || defined (ACE_WIN32)
spawn ();
#else
ACE_DEBUG ((LM_DEBUG,