annotate src/s/unixware.h @ 108091:992e676c0285

Simplify m/intel386.h. * m/intel386.h (CRT0_DUMMIES): Remove, inline value in the only user: ecrt0.c. (SOLARIS2): Remove LOAD_AVE_TYPE, LOAD_AVE_CVT, LIBS_MACHINE, unused. (USG5_4): Move LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE definitions to the only user: s/unixware.h. * ecrt0.c: Remove #ifndef static. Inline CRT0_DUMMIES definition from m/intel386.h. * s/unixware.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, FSCALE): Definitions moved here from m/intel386.h.
author Dan Nicolaescu <dann@ics.uci.edu>
date Fri, 23 Apr 2010 15:14:14 -0700
parents 6c7f53fe0ce5
children d5c67777ae39
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
107440
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
1 /* s/ file for Unixware.
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
2
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
3 Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
4 2008, 2009, 2010 Free Software Foundation, Inc.
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
5
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
6 This file is part of GNU Emacs.
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
7
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
8 GNU Emacs is free software: you can redistribute it and/or modify
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
9 it under the terms of the GNU General Public License as published by
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
10 the Free Software Foundation, either version 3 of the License, or
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
11 (at your option) any later version.
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
12
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
13 GNU Emacs is distributed in the hope that it will be useful,
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
16 GNU General Public License for more details.
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
17
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
18 You should have received a copy of the GNU General Public License
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
19 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
20
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
21
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
22 #include "usg5-4.h"
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
23
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
24 /* fnf@cygnus.com says these exist. */
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
25 #define HAVE_TCATTR
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
26 /* #define HAVE_GETWD (appears to be buggy on SVR4.2) */
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
27 #undef HAVE_GETWD
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
28
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
29 #undef HAVE_SYSV_SIGPAUSE
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
30
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
31 /* Motif needs -lgen. */
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
32 #define LIBS_SYSTEM -lsocket -lnsl -lelf -lgen
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
33
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
34 /* This is the same definition as in usg5-4.h, but with sigblock/sigunblock
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
35 rather than sighold/sigrelse, which appear to be BSD4.1 specific and won't
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
36 work if POSIX_SIGNALS is defined. It may also be appropriate for SVR4.x
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
37 (x<2) but I'm not sure. fnf@cygnus.com */
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
38 /* This sets the name of the slave side of the PTY. On SysVr4,
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
39 grantpt(3) forks a subprocess, so keep sigchld_handler() from
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
40 intercepting that death. If any child but grantpt's should die
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
41 within, it should be caught after sigrelse(2). */
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
42
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
43 #define PTY_TTY_NAME_SPRINTF \
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
44 { \
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
45 char *ptsname(), *ptyname; \
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
46 \
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
47 sigblock(sigmask(SIGCLD)); \
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
48 if (grantpt(fd) == -1) \
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
49 fatal("could not grant slave pty"); \
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
50 sigunblock(sigmask(SIGCLD)); \
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
51 if (unlockpt(fd) == -1) \
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
52 fatal("could not unlock slave pty"); \
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
53 if (!(ptyname = ptsname(fd))) \
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
54 fatal ("could not enable slave pty"); \
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
55 strncpy(pty_name, ptyname, sizeof(pty_name)); \
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
56 pty_name[sizeof(pty_name) - 1] = 0; \
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
57 }
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
58
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
59 /* Use libw.a along with X11R6 Xt. */
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
60 #define NEED_LIBW
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
61
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
62 /* ryanr@ellingtn.ftc.nrcs.usda.gov (Richard Anthony Ryan) says -lXimp
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
63 is needed in UNIX_SV ... 4.2 1.1.2. */
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
64 #define LIB_MOTIF -lXm -lXimp
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
65
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
66 /* arch-tag: 9bbfcfc1-19be-45a1-9699-af57b87da2c6
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
67 (do not change this comment) */
a83a89ef11ef Remove support for old UNIX System V systems.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
68
25844
Dave Love <fx@gnu.org>
parents:
diff changeset
69
108091
992e676c0285 Simplify m/intel386.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 107441
diff changeset
70 /* Data type of load average, as read out of kmem. */
992e676c0285 Simplify m/intel386.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 107441
diff changeset
71
992e676c0285 Simplify m/intel386.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 107441
diff changeset
72 #define LOAD_AVE_TYPE long
992e676c0285 Simplify m/intel386.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 107441
diff changeset
73
992e676c0285 Simplify m/intel386.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 107441
diff changeset
74 /* Convert that into an integer that is 100 for a load average of 1.0 */
992e676c0285 Simplify m/intel386.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 107441
diff changeset
75 /* This is totally uncalibrated. */
992e676c0285 Simplify m/intel386.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 107441
diff changeset
76
992e676c0285 Simplify m/intel386.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 107441
diff changeset
77 #define LOAD_AVE_CVT(x) ((int) (((double) (x)) * 100.0 / FSCALE))
992e676c0285 Simplify m/intel386.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 107441
diff changeset
78 #define FSCALE 256.0
992e676c0285 Simplify m/intel386.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 107441
diff changeset
79
992e676c0285 Simplify m/intel386.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 107441
diff changeset
80
25844
Dave Love <fx@gnu.org>
parents:
diff changeset
81 #define PENDING_OUTPUT_COUNT(FILE) ((FILE)->__ptr - (FILE)->__base)
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 44601
diff changeset
82
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 44601
diff changeset
83 /* arch-tag: d82e92e7-9443-4a60-a581-7f293cbae8a3
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 44601
diff changeset
84 (do not change this comment) */