Commit | Line | Data |
---|---|---|
f2a77c3a DN |
1 | /* System description file for hpux version 10.20. |
2 | Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007, | |
5df4f04c | 3 | 2008, 2009, 2010, 2011 Free Software Foundation, Inc. |
427d4799 | 4 | |
f2a77c3a DN |
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 | ||
e05aebe9 GM |
23 | /* Define symbols to identify the version of Unix this is. |
24 | Define all the symbols that apply correctly. */ | |
f2a77c3a | 25 | #define USG /* System III, System V, etc */ |
f2a77c3a | 26 | #define USG5 |
f2a77c3a DN |
27 | #define HPUX |
28 | ||
29 | /* SYSTEM_TYPE should indicate the kind of system you are using. | |
e05aebe9 | 30 | It sets the Lisp variable system-type. */ |
f2a77c3a DN |
31 | #define SYSTEM_TYPE "hpux" |
32 | ||
f2a77c3a | 33 | /* Letter to use in finding device name of first pty, |
e05aebe9 | 34 | if system supports pty's. 'p' means it is /dev/ptym/ptyp0 */ |
f2a77c3a DN |
35 | #define FIRST_PTY_LETTER 'p' |
36 | ||
2294b255 | 37 | #define NO_TERMIO |
f2a77c3a | 38 | |
e05aebe9 | 39 | /* Define HAVE_PTYS if the system supports pty devices. */ |
f2a77c3a DN |
40 | #define HAVE_PTYS |
41 | ||
42 | /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */ | |
f2a77c3a DN |
43 | #define HAVE_SOCKETS |
44 | ||
f2a77c3a DN |
45 | /* Define CLASH_DETECTION if you want lock files to be written |
46 | so that Emacs can tell instantly when you try to modify | |
47 | a file that someone else has modified in his Emacs. */ | |
f2a77c3a DN |
48 | #define CLASH_DETECTION |
49 | ||
50 | /* The symbol in the kernel where the load average is found | |
51 | depends on the cpu type, so we let the m- files define LDAV_SYMBOL. */ | |
52 | ||
53 | /* Special hacks needed to make Emacs run on this system. */ | |
54 | ||
f2a77c3a DN |
55 | /* In hpux, the symbol SIGIO is defined, but the feature |
56 | doesn't work in the way Emacs needs it to. */ | |
f2a77c3a DN |
57 | #define BROKEN_SIGIO |
58 | ||
f2a77c3a | 59 | /* Some additional system facilities exist. */ |
f2a77c3a DN |
60 | #define HAVE_PERROR /* Delete this line for version 6. */ |
61 | ||
f2a77c3a DN |
62 | /* This is how to get the device name of the tty end of a pty. */ |
63 | #define PTY_TTY_NAME_SPRINTF \ | |
64 | sprintf (pty_name, "/dev/pty/tty%c%x", c, i); | |
65 | ||
66 | /* This is how to get the device name of the control end of a pty. */ | |
67 | #define PTY_NAME_SPRINTF \ | |
68 | sprintf (pty_name, "/dev/ptym/pty%c%x", c, i); | |
69 | ||
70 | /* This triggers a conditional in xfaces.c. */ | |
71 | #define XOS_NEEDS_TIME_H | |
72 | ||
f2a77c3a DN |
73 | /* Assar Westerlund <assar@sics.se> says this is necessary for |
74 | HP-UX 10.20, and that it works for HP-UX 0 as well. */ | |
75 | #define NO_EDITRES | |
76 | ||
f2a77c3a DN |
77 | /* Eric Backus <ericb@lsid.hp.com> says, HP-UX 9.x on HP 700 machines |
78 | has a broken `rint' in some library versions including math library | |
79 | version number A.09.05. | |
80 | ||
81 | You can fix the math library by installing patch number PHSS_4630. | |
e05aebe9 | 82 | But we can fix it more reliably for Emacs like this. */ |
f2a77c3a DN |
83 | #undef HAVE_RINT |
84 | ||
85 | /* We have to go this route, rather than hpux9's approach of renaming the | |
86 | functions via macros. The system's stdlib.h has fully prototyped | |
87 | declarations, which yields a conflicting definition of srand48; it | |
88 | tries to redeclare what was once srandom to be srand48. So we go | |
89 | with HAVE_LRAND48 being defined. */ | |
90 | #undef srandom | |
91 | #undef random | |
92 | #undef HAVE_RANDOM | |
93 | ||
f2a77c3a DN |
94 | /* AlainF 20-Jul-1996 says this is right. */ |
95 | #define KERNEL_FILE "/stand/vmunix" | |
96 | ||
7dff330b | 97 | |
f2a77c3a | 98 | /* Rainer Malzbender <rainer@displaytech.com> says definining |
e05aebe9 | 99 | HAVE_XRMSETDATABASE allows Emacs to compile on HP-UX 10.20 using GCC. */ |
f2a77c3a DN |
100 | #ifndef HAVE_XRMSETDATABASE |
101 | #define HAVE_XRMSETDATABASE | |
102 | #endif | |
103 | ||
f2a77c3a DN |
104 | /* 2000-11-21: Temporarily disable Unix 98 large file support found by |
105 | configure. It fails on HPUX 11, at least, because it enables | |
106 | header sections which lose when `static' is defined away, as it is | |
107 | on HP-UX. (You get duplicate symbol errors on linking). */ | |
f2a77c3a | 108 | #undef _FILE_OFFSET_BITS |
56bae7c7 DN |
109 | |
110 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | |
111 | pure and impure space as loaded can vary, and even their | |
112 | relative order cannot be relied on. | |
113 | ||
114 | Otherwise Emacs assumes that text space precedes data space, | |
115 | numerically. */ | |
56bae7c7 DN |
116 | #define VIRT_ADDR_VARIES |
117 | \f | |
e05aebe9 | 118 | /* The data segment on this machine always starts at address 0x40000000. */ |
56bae7c7 DN |
119 | #define DATA_SEG_BITS 0x40000000 |
120 | ||
121 | #define DATA_START 0x40000000 | |
56bae7c7 DN |
122 | |
123 | /* Data type of load average, as read out of kmem. */ | |
56bae7c7 DN |
124 | #define LOAD_AVE_TYPE double |
125 | ||
126 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | |
56bae7c7 DN |
127 | #define LOAD_AVE_CVT(x) ((int) (x * 100.0)) |
128 | ||
e05aebe9 GM |
129 | /* The kernel symbol where the load average is found is named _avenrun. |
130 | At this time there are two major flavors of hp-ux (there is the s800 | |
131 | and s300 (s200) flavors). The differences are thusly moved to the | |
132 | corresponding machine description file. */ | |
56bae7c7 | 133 | |
e05aebe9 | 134 | /* No underscore please. */ |
56bae7c7 DN |
135 | #define LDAV_SYMBOL "avenrun" |
136 |