Backport Bug#9990 fix from trunk
[emacs.git] / src / s / hpux10-20.h
blob508a26566c61fb6e85b1015856a7738bea498354
1 /* System description file for hpux version 10.20.
2 Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
3 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
5 This file is part of GNU Emacs.
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.
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.
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/>. */
21 #define RUN_TIME_REMAP
24 * Define symbols to identify the version of Unix this is.
25 * Define all the symbols that apply correctly.
28 #define USG /* System III, System V, etc */
30 #define USG5
32 #define HPUX
34 /* SYSTEM_TYPE should indicate the kind of system you are using.
35 It sets the Lisp variable system-type. */
37 #define SYSTEM_TYPE "hpux"
39 /* Letter to use in finding device name of first pty,
40 if system supports pty's. 'p' means it is /dev/ptym/ptyp0 */
42 #define FIRST_PTY_LETTER 'p'
44 #define HAVE_TERMIOS
45 #define NO_TERMIO
47 #define ORDINARY_LINK
50 * Define HAVE_PTYS if the system supports pty devices.
53 #define HAVE_PTYS
55 /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */
57 #define HAVE_SOCKETS
59 /* Define this symbol if your system has the functions bcopy, etc.
60 * s800 and later versions of s300 (s200) kernels have equivalents
61 * of the BSTRING functions of BSD. If your s200 kernel doesn't have
62 * em comment out this section.
65 #define BSTRING
67 /* Define CLASH_DETECTION if you want lock files to be written
68 so that Emacs can tell instantly when you try to modify
69 a file that someone else has modified in his Emacs. */
71 #define CLASH_DETECTION
73 /* The symbol in the kernel where the load average is found
74 depends on the cpu type, so we let the m- files define LDAV_SYMBOL. */
76 /* Special hacks needed to make Emacs run on this system. */
78 /* Use the system provided termcap(3) library */
79 #define TERMINFO
81 /* In hpux, the symbol SIGIO is defined, but the feature
82 doesn't work in the way Emacs needs it to. */
84 #define BROKEN_SIGIO
86 /* Some additional system facilities exist. */
88 #define HAVE_PERROR /* Delete this line for version 6. */
90 /* This is how to get the device name of the tty end of a pty. */
91 #define PTY_TTY_NAME_SPRINTF \
92 sprintf (pty_name, "/dev/pty/tty%c%x", c, i);
94 /* This is how to get the device name of the control end of a pty. */
95 #define PTY_NAME_SPRINTF \
96 sprintf (pty_name, "/dev/ptym/pty%c%x", c, i);
98 /* This triggers a conditional in xfaces.c. */
99 #define XOS_NEEDS_TIME_H
101 /* Don't use shared libraries. unexec doesn't handle them.
102 Note GCC automatically passes -a archive to ld, and it has its own
103 conflicting -a. */
104 #define LD_SWITCH_SYSTEM_TEMACS
106 #ifndef HAVE_LIBXMU
107 /* HP-UX doesn't supply Xmu. */
108 #define LIBXMU
110 #endif
112 /* Assar Westerlund <assar@sics.se> says this is necessary for
113 HP-UX 10.20, and that it works for HP-UX 0 as well. */
114 #define NO_EDITRES
116 /* Tested in getloadavg.c. */
117 #define HAVE_PSTAT_GETDYNAMIC
119 /* Eric Backus <ericb@lsid.hp.com> says, HP-UX 9.x on HP 700 machines
120 has a broken `rint' in some library versions including math library
121 version number A.09.05.
123 You can fix the math library by installing patch number PHSS_4630.
124 But we can fix it more reliably for Emacs like this. */
125 #undef HAVE_RINT
127 /* We have to go this route, rather than hpux9's approach of renaming the
128 functions via macros. The system's stdlib.h has fully prototyped
129 declarations, which yields a conflicting definition of srand48; it
130 tries to redeclare what was once srandom to be srand48. So we go
131 with HAVE_LRAND48 being defined. */
132 #undef srandom
133 #undef random
134 #undef HAVE_RANDOM
136 /* AlainF 20-Jul-1996 says this is right. */
137 #define KERNEL_FILE "/stand/vmunix"
139 #define LIBS_SYSTEM -l:libdld.sl
141 /* Rainer Malzbender <rainer@displaytech.com> says definining
142 HAVE_XRMSETDATABASE allows Emacs to compile on HP-UX 10.20
143 using GCC. */
145 #ifndef HAVE_XRMSETDATABASE
146 #define HAVE_XRMSETDATABASE
147 #endif
149 /* Make sure we get select from libc rather than from libcurses
150 because libcurses on HPUX 10.10 has a broken version of select.
151 We used to use -lc -lcurses, but this may be cleaner. */
152 #define LIBS_TERMCAP -ltermcap
154 /* However, HPUX 10 puts Xaw and Xmu in a strange place
155 (if you install them at all). So search that place. */
156 #define C_SWITCH_X_SYSTEM -I/usr/include/X11R6 -I/usr/include/X11R5 -I/usr/include/Motif1.2 -I/usr/contrib/X11R6/include -I/usr/contrib/X11R5/include
157 #define LD_SWITCH_X_DEFAULT -L/usr/lib/X11R6 -L/usr/lib/X11R5 -L/usr/lib/Motif1.2 -L/usr/contrib/X11R5/lib
159 /* 2000-11-21: Temporarily disable Unix 98 large file support found by
160 configure. It fails on HPUX 11, at least, because it enables
161 header sections which lose when `static' is defined away, as it is
162 on HP-UX. (You get duplicate symbol errors on linking). */
164 #undef _FILE_OFFSET_BITS
166 /* otherwise sigunblock wont be defined */
167 #define POSIX_SIGNALS
169 /* arch-tag: 8d8dcbf1-ca9b-48a1-94be-b750de18a5c6
170 (do not change this comment) */