annotate src/s/sol2-6.h @ 108276:41220cd25ea8

* cua-base.el, cua-gmrk.el: Fix use of `filter-buffer-substring'.
author Juanma Barranquero <lekktu@gmail.com>
date Fri, 07 May 2010 02:46:09 +0200
parents 06c34f190db1
children 17d73312ed65
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
107439
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
1 /* Definitions file for GNU Emacs running on Solaris 2.6.
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
2
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
3 Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
4 2008, 2009, 2010 Free Software Foundation, Inc.
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
5
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
6 This file is part of GNU Emacs.
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
7
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
8 GNU Emacs is free software: you can redistribute it and/or modify
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
9 it under the terms of the GNU General Public License as published by
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
10 the Free Software Foundation, either version 3 of the License, or
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
11 (at your option) any later version.
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
12
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
13 GNU Emacs is distributed in the hope that it will be useful,
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
16 GNU General Public License for more details.
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
17
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
18 You should have received a copy of the GNU General Public License
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
19 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
20
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
21 #include "usg5-4.h"
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
22
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
23 #define SOLARIS2
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
24
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
25 /* This triggers a conditional in xfaces.c. */
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
26 #define XOS_NEEDS_TIME_H
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
27
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
28 #define POSIX
47342
5bdc7af4b905 Fix typo. Add comment.
Markus Rost <rost@math.uni-bielefeld.de>
parents: 47336
diff changeset
29
107439
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
30 #define LIBS_SYSTEM -lsocket -lnsl -lkstat
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
31
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
32 /* Prefer kstat over kvm in getloadavg.c, kstat doesn't require root.
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
33 ghazi@caip.rutgers.edu, 7/21/97. Don't redefine if already defined
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
34 (e.g., by config.h). */
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
35 #ifndef HAVE_LIBKSTAT
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
36 #define HAVE_LIBKSTAT
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
37 #endif
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
38
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
39 /* inoue@ainet.or.jp says Solaris has a bug related to X11R6-style
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
40 XIM support. */
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
41
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
42 #define INHIBIT_X11R6_XIM
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
43
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
44 /* Must use the system's termcap, if we use any termcap.
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
45 It does special things. */
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
46
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
47 #ifndef TERMINFO
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
48 #define LIBS_TERMCAP -ltermcap
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
49 #endif
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
50
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
51 /* This is the same definition as in usg5-4.h, but with sigblock/sigunblock
108234
06c34f190db1 Remove POSIX_SIGNALS.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 108073
diff changeset
52 rather than sighold/sigrelse, which appear to be BSD4.1 specific.
06c34f190db1 Remove POSIX_SIGNALS.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 108073
diff changeset
53 It may also be appropriate for SVR4.x
107439
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
54 (x<2) but I'm not sure. fnf@cygnus.com */
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
55 /* This sets the name of the slave side of the PTY. On SysVr4,
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
56 grantpt(3) forks a subprocess, so keep sigchld_handler() from
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
57 intercepting that death. If any child but grantpt's should die
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
58 within, it should be caught after sigrelse(2). */
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
59
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
60 #define PTY_TTY_NAME_SPRINTF \
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
61 { \
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
62 char *ptsname (), *ptyname; \
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
63 \
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
64 sigblock (sigmask (SIGCLD)); \
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
65 if (grantpt (fd) == -1) \
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
66 { emacs_close (fd); return -1; } \
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
67 sigunblock (sigmask (SIGCLD)); \
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
68 if (unlockpt (fd) == -1) \
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
69 { emacs_close (fd); return -1; } \
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
70 if (!(ptyname = ptsname (fd))) \
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
71 { emacs_close (fd); return -1; } \
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
72 strncpy (pty_name, ptyname, sizeof (pty_name)); \
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
73 pty_name[sizeof (pty_name) - 1] = 0; \
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
74 }
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
75
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
76 /* This is the only known way to avoid some crashes
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
77 that seem to relate to screwed up malloc data
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
78 after deleting a frame. */
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
79 /* rms: I think the problems using ralloc had to do with system
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
80 libraries that called the system malloc even if we linked in the
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
81 GNU malloc. I could not see any way to fix the problem except to
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
82 have just one malloc and that had to be the system one. */
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
83 /* This is not always necessary. Turned off at present for testers to
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
84 identify any problems with gmalloc more accurately. */
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
85 /* #define SYSTEM_MALLOC */
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
86
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
87 /* Probably OK also on earlier versions. */
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
88 #define GC_SETJMP_WORKS 1
ed20cbe62401 Remove support for Solaris on PPC and for old versions.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 54449
diff changeset
89 #define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 47473
diff changeset
90
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 47473
diff changeset
91 /* arch-tag: 71ea3857-89dc-4395-9623-77964e6ed3ca
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 47473
diff changeset
92 (do not change this comment) */