annotate src/s/sol2-3.h @ 100292:816fe1a75404

Add Solaris on x86_64.
author Dan Nicolaescu <dann@ics.uci.edu>
date Tue, 09 Dec 2008 20:36:23 +0000
parents f8fd21534848
children e038c1a8307c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
75944
ecc35001afc5 Add copyright and license notice. Copyright years copied from base
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
1 /* Definitions file for GNU Emacs running on Solaris 2.3.
ecc35001afc5 Add copyright and license notice. Copyright years copied from base
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
2
94715
1f134b61867c Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 79756
diff changeset
3 Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
1f134b61867c Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 79756
diff changeset
4 2008 Free Software Foundation, Inc.
75944
ecc35001afc5 Add copyright and license notice. Copyright years copied from base
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
5
ecc35001afc5 Add copyright and license notice. Copyright years copied from base
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
6 This file is part of GNU Emacs.
ecc35001afc5 Add copyright and license notice. Copyright years copied from base
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
7
94715
1f134b61867c Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 79756
diff changeset
8 GNU Emacs is free software: you can redistribute it and/or modify
75944
ecc35001afc5 Add copyright and license notice. Copyright years copied from base
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
9 it under the terms of the GNU General Public License as published by
94715
1f134b61867c Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 79756
diff changeset
10 the Free Software Foundation, either version 3 of the License, or
1f134b61867c Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 79756
diff changeset
11 (at your option) any later version.
75944
ecc35001afc5 Add copyright and license notice. Copyright years copied from base
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
12
ecc35001afc5 Add copyright and license notice. Copyright years copied from base
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
13 GNU Emacs is distributed in the hope that it will be useful,
ecc35001afc5 Add copyright and license notice. Copyright years copied from base
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
ecc35001afc5 Add copyright and license notice. Copyright years copied from base
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
ecc35001afc5 Add copyright and license notice. Copyright years copied from base
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
16 GNU General Public License for more details.
ecc35001afc5 Add copyright and license notice. Copyright years copied from base
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
17
ecc35001afc5 Add copyright and license notice. Copyright years copied from base
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
18 You should have received a copy of the GNU General Public License
94715
1f134b61867c Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 79756
diff changeset
19 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
75944
ecc35001afc5 Add copyright and license notice. Copyright years copied from base
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
20
96837
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
21 #include "usg5-4.h"
75944
ecc35001afc5 Add copyright and license notice. Copyright years copied from base
Glenn Morris <rgm@gnu.org>
parents: 52401
diff changeset
22
96837
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
23 #define SOLARIS2
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
24
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
25 /* This triggers a conditional in xfaces.c. */
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
26 #define XOS_NEEDS_TIME_H
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
27
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
28 #define POSIX
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
29
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
30 #define LIBS_SYSTEM -lsocket -lnsl -lkstat
5227
abf17036eb91 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
31
96837
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
32 /* Prefer kstat over kvm in getloadavg.c, kstat doesn't require root.
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
33 ghazi@caip.rutgers.edu, 7/21/97. Don't redefine if already defined
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
34 (e.g., by config.h). */
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
35 #ifndef HAVE_LIBKSTAT
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
36 #define HAVE_LIBKSTAT
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
37 #endif
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
38
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
39 /* inoue@ainet.or.jp says Solaris has a bug related to X11R6-style
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
40 XIM support. */
6104
44fc65a7fc46 (LD_SWITCH_SYSTEM): New definitions, with #undef.
Richard M. Stallman <rms@gnu.org>
parents: 5227
diff changeset
41
96837
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
42 #define INHIBIT_X11R6_XIM
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
43
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
44 /* Must use the system's termcap, if we use any termcap.
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
45 It does special things. */
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
46
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
47 #ifndef TERMINFO
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
48 #define LIBS_TERMCAP -ltermcap
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
49 #endif
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
50
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
51 #define USE_MMAP_FOR_BUFFERS 1
6104
44fc65a7fc46 (LD_SWITCH_SYSTEM): New definitions, with #undef.
Richard M. Stallman <rms@gnu.org>
parents: 5227
diff changeset
52
44fc65a7fc46 (LD_SWITCH_SYSTEM): New definitions, with #undef.
Richard M. Stallman <rms@gnu.org>
parents: 5227
diff changeset
53 #ifndef __GNUC__
44fc65a7fc46 (LD_SWITCH_SYSTEM): New definitions, with #undef.
Richard M. Stallman <rms@gnu.org>
parents: 5227
diff changeset
54 #define LD_SWITCH_SYSTEM -L /usr/ccs/lib LD_SWITCH_X_SITE_AUX
96837
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
55 /* eggert thinks all versions of SunPro C allowed this. */
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
56 #define C_DEBUG_SWITCH -g -O
6104
44fc65a7fc46 (LD_SWITCH_SYSTEM): New definitions, with #undef.
Richard M. Stallman <rms@gnu.org>
parents: 5227
diff changeset
57 #else /* GCC */
7356
55588e31b258 (LD_SWITCH_SYSTEM): Use ./prefix-args, not -Xlinker directly.
Richard M. Stallman <rms@gnu.org>
parents: 6840
diff changeset
58 /* We use ./prefix-args because we don't know whether LD_SWITCH_X_SITE_AUX
55588e31b258 (LD_SWITCH_SYSTEM): Use ./prefix-args, not -Xlinker directly.
Richard M. Stallman <rms@gnu.org>
parents: 6840
diff changeset
59 has anything in it. It can be empty.
55588e31b258 (LD_SWITCH_SYSTEM): Use ./prefix-args, not -Xlinker directly.
Richard M. Stallman <rms@gnu.org>
parents: 6840
diff changeset
60 This works ok in src. Luckily lib-src does not use LD_SWITCH_SYSTEM. */
55588e31b258 (LD_SWITCH_SYSTEM): Use ./prefix-args, not -Xlinker directly.
Richard M. Stallman <rms@gnu.org>
parents: 6840
diff changeset
61 #define LD_SWITCH_SYSTEM -L /usr/ccs/lib \
55588e31b258 (LD_SWITCH_SYSTEM): Use ./prefix-args, not -Xlinker directly.
Richard M. Stallman <rms@gnu.org>
parents: 6840
diff changeset
62 `./prefix-args -Xlinker LD_SWITCH_X_SITE_AUX`
6104
44fc65a7fc46 (LD_SWITCH_SYSTEM): New definitions, with #undef.
Richard M. Stallman <rms@gnu.org>
parents: 5227
diff changeset
63 #endif /* GCC */
8513
d11ec52807d6 (POSIX_SIGNALS): Define it.
Richard M. Stallman <rms@gnu.org>
parents: 7356
diff changeset
64
d11ec52807d6 (POSIX_SIGNALS): Define it.
Richard M. Stallman <rms@gnu.org>
parents: 7356
diff changeset
65 /* Info from fnf@cygnus.com suggests this is appropriate. */
d11ec52807d6 (POSIX_SIGNALS): Define it.
Richard M. Stallman <rms@gnu.org>
parents: 7356
diff changeset
66 #define POSIX_SIGNALS
d11ec52807d6 (POSIX_SIGNALS): Define it.
Richard M. Stallman <rms@gnu.org>
parents: 7356
diff changeset
67
96837
f8fd21534848 * s/sol2-3.h: Insert contents of s/sol2.h.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 96595
diff changeset
68 /* We don't need the definition from usg5-4.h with POSIX_SIGNALS. */
8513
d11ec52807d6 (POSIX_SIGNALS): Define it.
Richard M. Stallman <rms@gnu.org>
parents: 7356
diff changeset
69 #undef sigsetmask
d11ec52807d6 (POSIX_SIGNALS): Define it.
Richard M. Stallman <rms@gnu.org>
parents: 7356
diff changeset
70
d11ec52807d6 (POSIX_SIGNALS): Define it.
Richard M. Stallman <rms@gnu.org>
parents: 7356
diff changeset
71 /* This is the same definition as in usg5-4.h, but with sigblock/sigunblock
d11ec52807d6 (POSIX_SIGNALS): Define it.
Richard M. Stallman <rms@gnu.org>
parents: 7356
diff changeset
72 rather than sighold/sigrelse, which appear to be BSD4.1 specific and won't
d11ec52807d6 (POSIX_SIGNALS): Define it.
Richard M. Stallman <rms@gnu.org>
parents: 7356
diff changeset
73 work if POSIX_SIGNALS is defined. It may also be appropriate for SVR4.x
d11ec52807d6 (POSIX_SIGNALS): Define it.
Richard M. Stallman <rms@gnu.org>
parents: 7356
diff changeset
74 (x<2) but I'm not sure. fnf@cygnus.com */
d11ec52807d6 (POSIX_SIGNALS): Define it.
Richard M. Stallman <rms@gnu.org>
parents: 7356
diff changeset
75 /* This sets the name of the slave side of the PTY. On SysVr4,
d11ec52807d6 (POSIX_SIGNALS): Define it.
Richard M. Stallman <rms@gnu.org>
parents: 7356
diff changeset
76 grantpt(3) forks a subprocess, so keep sigchld_handler() from
d11ec52807d6 (POSIX_SIGNALS): Define it.
Richard M. Stallman <rms@gnu.org>
parents: 7356
diff changeset
77 intercepting that death. If any child but grantpt's should die
d11ec52807d6 (POSIX_SIGNALS): Define it.
Richard M. Stallman <rms@gnu.org>
parents: 7356
diff changeset
78 within, it should be caught after sigrelse(2). */
d11ec52807d6 (POSIX_SIGNALS): Define it.
Richard M. Stallman <rms@gnu.org>
parents: 7356
diff changeset
79
d11ec52807d6 (POSIX_SIGNALS): Define it.
Richard M. Stallman <rms@gnu.org>
parents: 7356
diff changeset
80 #undef PTY_TTY_NAME_SPRINTF
d11ec52807d6 (POSIX_SIGNALS): Define it.
Richard M. Stallman <rms@gnu.org>
parents: 7356
diff changeset
81 #define PTY_TTY_NAME_SPRINTF \
d11ec52807d6 (POSIX_SIGNALS): Define it.
Richard M. Stallman <rms@gnu.org>
parents: 7356
diff changeset
82 { \
14055
df451c7f6820 (PTY_TTY_NAME_SPRINTF): Make failure non-fatal.
Karl Heuer <kwzh@gnu.org>
parents: 13708
diff changeset
83 char *ptsname (), *ptyname; \
8513
d11ec52807d6 (POSIX_SIGNALS): Define it.
Richard M. Stallman <rms@gnu.org>
parents: 7356
diff changeset
84 \
14055
df451c7f6820 (PTY_TTY_NAME_SPRINTF): Make failure non-fatal.
Karl Heuer <kwzh@gnu.org>
parents: 13708
diff changeset
85 sigblock (sigmask (SIGCLD)); \
df451c7f6820 (PTY_TTY_NAME_SPRINTF): Make failure non-fatal.
Karl Heuer <kwzh@gnu.org>
parents: 13708
diff changeset
86 if (grantpt (fd) == -1) \
26090
63fd40a97a75 s/usg5-4.h:
Paul Eggert <eggert@twinsun.com>
parents: 14055
diff changeset
87 { emacs_close (fd); return -1; } \
14055
df451c7f6820 (PTY_TTY_NAME_SPRINTF): Make failure non-fatal.
Karl Heuer <kwzh@gnu.org>
parents: 13708
diff changeset
88 sigunblock (sigmask (SIGCLD)); \
df451c7f6820 (PTY_TTY_NAME_SPRINTF): Make failure non-fatal.
Karl Heuer <kwzh@gnu.org>
parents: 13708
diff changeset
89 if (unlockpt (fd) == -1) \
26090
63fd40a97a75 s/usg5-4.h:
Paul Eggert <eggert@twinsun.com>
parents: 14055
diff changeset
90 { emacs_close (fd); return -1; } \
14055
df451c7f6820 (PTY_TTY_NAME_SPRINTF): Make failure non-fatal.
Karl Heuer <kwzh@gnu.org>
parents: 13708
diff changeset
91 if (!(ptyname = ptsname (fd))) \
26090
63fd40a97a75 s/usg5-4.h:
Paul Eggert <eggert@twinsun.com>
parents: 14055
diff changeset
92 { emacs_close (fd); return -1; } \
14055
df451c7f6820 (PTY_TTY_NAME_SPRINTF): Make failure non-fatal.
Karl Heuer <kwzh@gnu.org>
parents: 13708
diff changeset
93 strncpy (pty_name, ptyname, sizeof (pty_name)); \
df451c7f6820 (PTY_TTY_NAME_SPRINTF): Make failure non-fatal.
Karl Heuer <kwzh@gnu.org>
parents: 13708
diff changeset
94 pty_name[sizeof (pty_name) - 1] = 0; \
8513
d11ec52807d6 (POSIX_SIGNALS): Define it.
Richard M. Stallman <rms@gnu.org>
parents: 7356
diff changeset
95 }
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 26090
diff changeset
96
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 26090
diff changeset
97 /* arch-tag: a8fe2e15-e517-49cb-a863-f346b80885fe
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 26090
diff changeset
98 (do not change this comment) */