Move SYSTEM_TYPE from src/s to configure
[bpt/emacs.git] / src / s / hpux10-20.h
1 /* System description file for hpux version 10.20.
2
3 Copyright (C) 1999, 2001-2012 Free Software Foundation, Inc.
4
5 This file is part of GNU Emacs.
6
7 GNU Emacs is free software: you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation, either version 3 of the License, or
10 (at your option) any later version.
11
12 GNU Emacs is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
16
17 You should have received a copy of the GNU General Public License
18 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
19
20
21 #define RUN_TIME_REMAP
22
23 /* Define symbols to identify the version of Unix this is.
24 Define all the symbols that apply correctly. */
25 #define USG /* System III, System V, etc */
26 #define USG5
27 #define HPUX
28
29 /* Letter to use in finding device name of first pty,
30 if system supports pty's. 'p' means it is /dev/ptym/ptyp0 */
31 #define FIRST_PTY_LETTER 'p'
32
33 #define NO_TERMIO
34
35 /* Define HAVE_PTYS if the system supports pty devices. */
36 #define HAVE_PTYS
37
38 /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */
39 #define HAVE_SOCKETS
40
41 /* Define CLASH_DETECTION if you want lock files to be written
42 so that Emacs can tell instantly when you try to modify
43 a file that someone else has modified in his Emacs. */
44 #define CLASH_DETECTION
45
46 /* Special hacks needed to make Emacs run on this system. */
47
48 /* In hpux, the symbol SIGIO is defined, but the feature
49 doesn't work in the way Emacs needs it to. */
50 #define BROKEN_SIGIO
51
52 /* Some additional system facilities exist. */
53 #define HAVE_PERROR /* Delete this line for version 6. */
54
55 /* This is how to get the device name of the tty end of a pty. */
56 #define PTY_TTY_NAME_SPRINTF \
57 sprintf (pty_name, "/dev/pty/tty%c%x", c, i);
58
59 /* This is how to get the device name of the control end of a pty. */
60 #define PTY_NAME_SPRINTF \
61 sprintf (pty_name, "/dev/ptym/pty%c%x", c, i);
62
63 /* This triggers a conditional in xfaces.c. */
64 #define XOS_NEEDS_TIME_H
65
66 /* Assar Westerlund <assar@sics.se> says this is necessary for
67 HP-UX 10.20, and that it works for HP-UX 0 as well. */
68 #define NO_EDITRES
69
70 /* Eric Backus <ericb@lsid.hp.com> says, HP-UX 9.x on HP 700 machines
71 has a broken `rint' in some library versions including math library
72 version number A.09.05.
73
74 You can fix the math library by installing patch number PHSS_4630.
75 But we can fix it more reliably for Emacs like this. */
76 #undef HAVE_RINT
77
78 /* We have to go this route, rather than hpux9's approach of renaming the
79 functions via macros. The system's stdlib.h has fully prototyped
80 declarations, which yields a conflicting definition of srand48; it
81 tries to redeclare what was once srandom to be srand48. So we go
82 with HAVE_LRAND48 being defined. */
83 #undef srandom
84 #undef random
85 #undef HAVE_RANDOM
86
87
88 /* Rainer Malzbender <rainer@displaytech.com> says defining
89 HAVE_XRMSETDATABASE allows Emacs to compile on HP-UX 10.20 using GCC. */
90 #ifndef HAVE_XRMSETDATABASE
91 #define HAVE_XRMSETDATABASE
92 #endif
93
94 /* Conservative garbage collection has not been tested, so for now
95 play it safe and stick with the old-fashioned way of marking. */
96 #define GC_MARK_STACK GC_USE_GCPROS_AS_BEFORE
97 \f
98 /* The data segment on this machine always starts at address 0x40000000. */
99 #define DATA_SEG_BITS 0x40000000
100
101 #define DATA_START 0x40000000