changeset 8475:77d5e055dce1

(PTY_TTY_NAME_SPRINTF): New definition. (sigsetmask): Add #undef. (SOLARIS2_4): Defined. Discard old contents of file. Instead, undef C_SWITCH_SYSTEM and const, so that we use GCC without -traditional. (HAVE_VFORK): Defined.
author Richard M. Stallman <rms@gnu.org>
date Sun, 07 Aug 1994 07:58:18 +0000
parents 03938bbc5bbb
children 1a837ee93535
files src/s/sol2-4.h
diffstat 1 files changed, 30 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/src/s/sol2-4.h	Sun Aug 07 06:47:57 1994 +0000
+++ b/src/s/sol2-4.h	Sun Aug 07 07:58:18 1994 +0000
@@ -1,11 +1,35 @@
 /* Handle Solaris 2.4.  */
 
+#include "sol2-3.h"
+
+#define SOLARIS2_4
+
+/* Get rid of -traditional and let const really do its thing.  */
+
 #ifdef __GNUC__
-#ifdef i386
-/* Since we use gcc -traditional, we have to work around a bogus "volatile" in
-   <sys/machlock.h>.  Must do this before #include "sol2-3.h".  */
-#define volatile
-#endif /* i386 */
+#undef C_SWITCH_SYSTEM
+#undef const
 #endif /* __GNUC__ */
 
-#include "sol2-3.h"
+#define HAVE_VFORK
+
+/* solaris does POSIX signals.  this bit is from s/usg-5-4-2.h */
+
+#define POSIX_SIGNALS
+#undef sigsetmask
+#undef PTY_TTY_NAME_SPRINTF
+#define PTY_TTY_NAME_SPRINTF			\
+  {						\
+    char *ptsname(), *ptyname;			\
+						\
+    sigblock(sigmask(SIGCLD));			\
+    if (grantpt(fd) == -1)			\
+      fatal("could not grant slave pty");	\
+    sigunblock(sigmask(SIGCLD));		\
+    if (unlockpt(fd) == -1)			\
+      fatal("could not unlock slave pty");	\
+    if (!(ptyname = ptsname(fd)))		\
+      fatal ("could not enable slave pty");	\
+    strncpy(pty_name, ptyname, sizeof(pty_name)); \
+    pty_name[sizeof(pty_name) - 1] = 0;		\
+  }