summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorschmidt <douglascraigschmidt@users.noreply.github.com>1997-07-03 03:55:18 +0000
committerschmidt <douglascraigschmidt@users.noreply.github.com>1997-07-03 03:55:18 +0000
commit3fd2fed4550b7861c614f04054918a59aa15f93c (patch)
treee538afa57f292e2bdc05d79bdaed1883af71ff6e
parente8668b226d57cdd3526e555a195bb522cd99cbc9 (diff)
downloadATCD-3fd2fed4550b7861c614f04054918a59aa15f93c.tar.gz
*** empty log message ***
-rw-r--r--ChangeLog-97a32
-rw-r--r--TAO/VERSION2
-rw-r--r--TAO/tests/Makefile23
-rw-r--r--VERSION2
-rw-r--r--ace/OS.h2
-rw-r--r--ace/OS.i15
-rw-r--r--ace/README2
-rw-r--r--ace/Reactor.cpp7
-rw-r--r--ace/Service_Config.cpp8
-rw-r--r--ace/config-chorus.h5
-rw-r--r--ace/config-win32-common.h2
11 files changed, 84 insertions, 16 deletions
diff --git a/ChangeLog-97a b/ChangeLog-97a
index c30792e0274..76f2ffdabb2 100644
--- a/ChangeLog-97a
+++ b/ChangeLog-97a
@@ -1,6 +1,34 @@
-Wed Jul 02 21:11:04 1997 Douglas C. Schmidt <schmidt@cs.wustl.edu>
+Wed Jul 2 22:23:49 1997 Douglas C. Schmidt <schmidt@tango.cs.wustl.edu>
- * ACE version 4.2.15, released Wed Jul 02 21:11:04 1997.
+ * ace/Service_Config.cpp: Used the new ACE_LACKS_UNIX_SIGNALS
+ macro to reduce the #ifdef complexity somewhat.
+
+ * ace/config-{chorus,win32-common}.h: Added #define for
+ ACE_LACKS_UNIX_SIGNALS.
+
+ * ace/OS.h: If a platform (e.g., Chorus) doesn't support signals
+ then #define NSIG 0.
+
+ * ace/Reactor.cpp: Chorus does not support signals. Make the call
+ to register/remove_handler(sig_set, evnet_handler) return
+ succesfully so that some of the examples and test programs do
+ not need to be changed. Thanks to Wei Chiang for this.
+
+ * ace/config-chorus.h: Added a new macro for
+ ACE_LACKS_NAMED_POSIX_SEM to handle Chorus. Thanks to Wei
+ Chiang for this.
+
+ * ace/OS.i: Define macros ACE_PTHREAD_CLEANUP_* so that the
+ related code does not need to be surrounded with #ifdefs.
+ Thanks to Wei Chiang for this.
+
+ * ace/OS.i: Chorus does not support named semaphores. The code
+ that to do with names in sema_init() and sema_destory() is
+ therefore disabled. Thanks to Wei Chiang for this.
+
+ * ace/config-chorus.h: Added support for ACE_LACKS_PTHREAD_CLEANUP
+ and ACE_HAS_POSIX_SEM to the Chorus port. Thanks to Wei Chiang
+ for this.
Wed Jul 2 17:37:09 1997 Douglas C. Schmidt <schmidt@flamenco.cs.wustl.edu>
diff --git a/TAO/VERSION b/TAO/VERSION
index ec30bb3f377..b1a047a7f77 100644
--- a/TAO/VERSION
+++ b/TAO/VERSION
@@ -1,4 +1,4 @@
-This is TAO version 0.0.2
+This is TAO version 0.0.3
If you have any problems with TAO, please send email to Douglas
C. Schmidt (schmidt@cs.wustl.edu).
diff --git a/TAO/tests/Makefile b/TAO/tests/Makefile
new file mode 100644
index 00000000000..4820d254606
--- /dev/null
+++ b/TAO/tests/Makefile
@@ -0,0 +1,23 @@
+#----------------------------------------------------------------------------
+# @(#)Makefile 1.1 10/18/96
+#
+# Makefile for the TAO tests
+#----------------------------------------------------------------------------
+
+#----------------------------------------------------------------------------
+# Local macros
+#----------------------------------------------------------------------------
+
+DIRS = Cubit \
+ Thruput_test
+
+#----------------------------------------------------------------------------
+# Include macros and targets
+#----------------------------------------------------------------------------
+
+include $(WRAPPER_ROOT)/include/makeinclude/wrapper_macros.GNU
+include $(WRAPPER_ROOT)/include/makeinclude/macros.GNU
+include $(WRAPPER_ROOT)/include/makeinclude/rules.common.GNU
+include $(WRAPPER_ROOT)/include/makeinclude/rules.nested.GNU
+include $(WRAPPER_ROOT)/include/makeinclude/rules.nolocal.GNU
+
diff --git a/VERSION b/VERSION
index 58b080f6acb..69907ac1547 100644
--- a/VERSION
+++ b/VERSION
@@ -1,4 +1,4 @@
-This is ACE version 4.2.15, released Wed Jul 02 21:11:04 1997.
+This is ACE version 4.2.14, released Wed Jul 02 21:11:04 1997.
If you have any problems with ACE, please send email to Douglas
C. Schmidt (schmidt@cs.wustl.edu).
diff --git a/ace/OS.h b/ace/OS.h
index 7a0f9831c26..7e05c30a4ab 100644
--- a/ace/OS.h
+++ b/ace/OS.h
@@ -2506,7 +2506,7 @@ struct sigaction
// Why is this defined? It must be a std C library symbol.
#if !defined (NSIG)
-#define NSIG 1
+#define NSIG 0
#endif /* NSIG */
#if !defined (R_OK)
diff --git a/ace/OS.i b/ace/OS.i
index eba18c42b9a..187db49c6c2 100644
--- a/ace/OS.i
+++ b/ace/OS.i
@@ -456,8 +456,13 @@ extern "C" char *mktemp (char *);
// This is necessary to work around nasty problems with MVS C++.
extern "C" void ace_mutex_lock_cleanup_adapter (void *args);
#define ACE_PTHREAD_CLEANUP_PUSH(A) pthread_cleanup_push (ace_mutex_lock_cleanup_adapter, (void *) A);
-#else
+#define ACE_PTHREAD_CLEANUP_POP(A) pthread_cleanup_pop(A)
+#elif !defined (ACE_LACKS_PTHREAD_CLEANUP)
#define ACE_PTHREAD_CLEANUP_PUSH(A) pthread_cleanup_push (ACE_OS::mutex_lock_cleanup, (void *) A);
+#define ACE_PTHREAD_CLEANUP_POP(A) pthread_cleanup_pop(A)
+#else
+#define ACE_PTHREAD_CLEANUP_PUSH(A)
+#define ACE_PTHREAD_CLEANUP_POP(A)
#endif /* ACE_HAS_THR_C_FUNC */
#if defined (ACE_HAS_REGEX)
@@ -1736,6 +1741,7 @@ ACE_OS::sema_destroy (ACE_sema_t *s)
// ACE_TRACE ("ACE_OS::sema_destroy");
#if defined (ACE_HAS_POSIX_SEM)
int result;
+#if !defined (ACE_LACKS_NAMED_POSIX_SEM)
if (s->name_)
{
ACE_OS::free ((void *) s->name_);
@@ -1743,6 +1749,7 @@ ACE_OS::sema_destroy (ACE_sema_t *s)
ACE_OSCALL_RETURN (ACE_ADAPT_RETVAL (::sem_close (s->sema_), ace_result_), int, -1);
}
else
+#endif /* ACE_LACKS_NAMED_POSIX_SEM */
{
ACE_OSCALL (ACE_ADAPT_RETVAL (::sem_destroy (s->sema_), result), int, -1, result);
delete s->sema_;
@@ -1976,7 +1983,7 @@ ACE_OS::sema_wait (ACE_sema_t *s)
if (result != -1)
ACE_OS::mutex_unlock (&s->lock_);
- pthread_cleanup_pop (1);
+ ACE_PTHREAD_CLEANUP_POP (1);
return result;
#elif defined (ACE_HAS_WTHREADS)
@@ -2515,7 +2522,7 @@ ACE_OS::rw_rdlock (ACE_rwlock_t *rw)
if (result != -1)
ACE_OS::mutex_unlock (&rw->lock_);
#if defined (ACE_HAS_DCETHREADS) || defined (ACE_HAS_PTHREADS)
- pthread_cleanup_pop (0);
+ ACE_PTHREAD_CLEANUP_POP (0);
#endif
return 0;
#endif /* ACE_HAS_STHREADS */
@@ -2676,7 +2683,7 @@ ACE_OS::rw_wrlock (ACE_rwlock_t *rw)
if (result != -1)
ACE_OS::mutex_unlock (&rw->lock_);
#if defined (ACE_HAS_DCETHREADS) || defined (ACE_HAS_PTHREADS)
- pthread_cleanup_pop (0);
+ ACE_PTHREAD_CLEANUP_POP (0);
#endif /* defined (ACE_HAS_DCETHREADS) || defined (ACE_HAS_PTHREADS) */
return 0;
#endif /* ACE_HAS_STHREADS */
diff --git a/ace/README b/ace/README
index 19c782596c4..fd8cb90eda4 100644
--- a/ace/README
+++ b/ace/README
@@ -190,6 +190,7 @@ ACE_LACKS_NETDB_REENTRANT_FUNCTIONS Platform does not support reentrant netdb fu
gethostbyname_r, getservbyname_r).
ACE_LACKS_RPC_H Platform lacks the ONC RPC header files.
ACE_LACKS_PARAM_H Platform lacks <sys/param.h> (e.g., MVS)
+ACE_LACKS_NAMED_POSIX_SEM Platform lacks named POSIX semaphores (e.g., Chorus)
ACE_LACKS_RLIMIT_PROTO Platform/compiler lacks {get,set}rlimit() prototypes (e.g., Tandem)
ACE_LACKS_POSIX_PROTO Platform lacks POSIX prototypes for certain System V functions like shared memory and message queues.
ACE_LACKS_PRI_T Platform lacks pri_t (e.g., Tandem NonStop UNIX).
@@ -225,6 +226,7 @@ ACE_LACKS_TCP_H Platform doesn't have netinet/tcp.h
ACE_LACKS_THREAD_STACK_SIZE Platform lacks pthread_attr_setstacksize() (e.g., Linux pthreads)
ACE_LACKS_UCONTEXT_H Platform lacks the ucontext.h file
ACE_LACKS_UNIX_DOMAIN_SOCKETS ACE platform has no UNIX domain sockets
+ACE_LACKS_UNIX_SIGNALS Platform lacks full signal support (e.g., Win32 and Chorus).
ACE_LACKS_UTSNAME_T Platform lacks struct utsname (e.g., Win32 and VxWorks)
ACE_MT_SAFE Compile using multi-thread libraries
ACE_NDEBUG Turns off debugging features
diff --git a/ace/Reactor.cpp b/ace/Reactor.cpp
index 420c3be9399..89e8321cc06 100644
--- a/ace/Reactor.cpp
+++ b/ace/Reactor.cpp
@@ -1062,14 +1062,17 @@ ACE_Reactor::register_handler (const ACE_Sig_Set &sigset,
ACE_Sig_Action *new_disp)
{
ACE_TRACE ("ACE_Reactor::register_handler");
+
int result = 0;
+#if (NSIG > 0)
+
for (int s = 1; s < NSIG; s++)
if (sigset.is_member (s)
&& this->signal_handler_->register_handler (s, new_sh,
new_disp) == -1)
result = -1;
-
+#endif /* NSIG */
return result;
}
@@ -1079,10 +1082,12 @@ ACE_Reactor::remove_handler (const ACE_Sig_Set &sigset)
ACE_TRACE ("ACE_Reactor::remove_handler");
int result = 0;
+#if (NSIG == 0)
for (int s = 1; s < NSIG; s++)
if (sigset.is_member (s)
&& this->signal_handler_->remove_handler (s) == -1)
result = -1;
+#endif /* NSIG */
return result;
}
diff --git a/ace/Service_Config.cpp b/ace/Service_Config.cpp
index 460f0c4bf9f..c7e58775ccc 100644
--- a/ace/Service_Config.cpp
+++ b/ace/Service_Config.cpp
@@ -402,14 +402,14 @@ ACE_Service_Config::ACE_Service_Config (int ignore_static_svcs,
// There's no point in dealing with this on NT since it doesn't really
// support signals very well...
-#if !defined (ACE_WIN32)
+#if defined (ACE_LACKS_UNIX_SIGNALS)
// This really ought to be a Singleton I suspect...
if (ACE_Service_Config::reactor_->register_handler
(ACE_Service_Config::signum_,
&ACE_Service_Config::signal_handler_) == -1)
ACE_ERROR ((LM_ERROR, "can't register signal handler\n"));
-#endif /* !ACE_WIN32 */
+#endif /* ACE_LACKS_UNIX_SIGNALS */
}
// Handle the command-line options intended for the
@@ -440,14 +440,14 @@ ACE_Service_Config::parse_args (int argc, char *argv[])
{
// There's no point in dealing with this on NT since it doesn't really
// support signals very well...
-#if !defined (ACE_WIN32)
+#if defined (ACE_LACKS_UNIX_SIGNALS)
ACE_Service_Config::signum_ = ACE_OS::atoi (getopt.optarg);
if (ACE_Service_Config::reactor ()->register_handler
(ACE_Service_Config::signum_,
&ACE_Service_Config::signal_handler_) == -1)
ACE_ERROR ((LM_ERROR, "cannot obtain signal handler\n"));
-#endif /* !ACE_WIN32 */
+#endif /* ACE_LACKS_UNIX_SIGNALS */
break;
}
default:
diff --git a/ace/config-chorus.h b/ace/config-chorus.h
index ea98287a098..cbaf8537e4a 100644
--- a/ace/config-chorus.h
+++ b/ace/config-chorus.h
@@ -16,6 +16,7 @@
#undef linux
#endif
+#define ACE_LACKS_UNIX_SIGNALS
#define ACE_HAS_IP_MULTICAST
#define ACE_LACKS_MPROTECT
#define ACE_LACKS_SOCKETPAIR
@@ -86,11 +87,13 @@
// Yes, we do have threads.
#define ACE_HAS_THREADS
-//#define ACE_HAS_POSIX_SEM
+#define ACE_HAS_POSIX_SEM
+#define ACE_LACKS_NAMED_POSIX_SEM
#define ACE_HAS_THREAD_SPECIFIC_STORAGE
#define ACE_MT_SAFE
// And they're even POSIX pthreads
#define ACE_HAS_PTHREADS
+#define ACE_LACKS_PTHREAD_CLEANUP
#define ACE_LACKS_RWLOCK_T
#define ACE_HAS_SIGWAIT
#define ACE_LACKS_CONDATTR_PSHARED
diff --git a/ace/config-win32-common.h b/ace/config-win32-common.h
index 6af6ff62537..3b5b543e3fd 100644
--- a/ace/config-win32-common.h
+++ b/ace/config-win32-common.h
@@ -17,7 +17,7 @@
#define ACE_LACKS_SIGACTION
#define ACE_LACKS_SIGSET
#define ACE_LACKS_EXEC
-
+#define ACE_LACKS_UNIX_SIGNALS
#define ACE_LACKS_SBRK
#define ACE_LACKS_UTSNAME_T
#define ACE_LACKS_SEMBUF_T