1 /* System description file for hpux version 10.20.
2 Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
3 2008, 2009, 2010 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 */
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'
45 * Define HAVE_TERMIO if the system provides sysV-style ioctls
46 * for terminal control.
52 * Define HAVE_PTYS if the system supports pty devices.
57 /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */
61 /* Define this symbol if your system has the functions bcopy, etc.
62 * s800 and later versions of s300 (s200) kernels have equivalents
63 * of the BSTRING functions of BSD. If your s200 kernel doesn't have
64 * em comment out this section.
69 /* Define CLASH_DETECTION if you want lock files to be written
70 so that Emacs can tell instantly when you try to modify
71 a file that someone else has modified in his Emacs. */
73 #define CLASH_DETECTION
75 /* The symbol in the kernel where the load average is found
76 depends on the cpu type, so we let the m- files define LDAV_SYMBOL. */
78 /* Special hacks needed to make Emacs run on this system. */
80 /* Use the system provided termcap(3) library */
83 /* In hpux, the symbol SIGIO is defined, but the feature
84 doesn't work in the way Emacs needs it to. */
88 /* Some additional system facilities exist. */
90 #define HAVE_PERROR /* Delete this line for version 6. */
92 /* This is how to get the device name of the tty end of a pty. */
93 #define PTY_TTY_NAME_SPRINTF \
94 sprintf (pty_name, "/dev/pty/tty%c%x", c, i);
96 /* This is how to get the device name of the control end of a pty. */
97 #define PTY_NAME_SPRINTF \
98 sprintf (pty_name, "/dev/ptym/pty%c%x", c, i);
100 /* This triggers a conditional in xfaces.c. */
101 #define XOS_NEEDS_TIME_H
103 /* Don't use shared libraries. unexec doesn't handle them.
104 Note GCC automatically passes -a archive to ld, and it has its own
106 #define LD_SWITCH_SYSTEM_TEMACS
109 /* HP-UX doesn't supply Xmu. */
114 /* Assar Westerlund <assar@sics.se> says this is necessary for
115 HP-UX 10.20, and that it works for HP-UX 0 as well. */
118 /* Tested in getloadavg.c. */
119 #define HAVE_PSTAT_GETDYNAMIC
121 /* Eric Backus <ericb@lsid.hp.com> says, HP-UX 9.x on HP 700 machines
122 has a broken `rint' in some library versions including math library
123 version number A.09.05.
125 You can fix the math library by installing patch number PHSS_4630.
126 But we can fix it more reliably for Emacs like this. */
129 /* We have to go this route, rather than hpux9's approach of renaming the
130 functions via macros. The system's stdlib.h has fully prototyped
131 declarations, which yields a conflicting definition of srand48; it
132 tries to redeclare what was once srandom to be srand48. So we go
133 with HAVE_LRAND48 being defined. */
138 /* AlainF 20-Jul-1996 says this is right. */
139 #define KERNEL_FILE "/stand/vmunix"
141 #define LIBS_SYSTEM -l:libdld.sl
143 /* Rainer Malzbender <rainer@displaytech.com> says definining
144 HAVE_XRMSETDATABASE allows Emacs to compile on HP-UX 10.20
147 #ifndef HAVE_XRMSETDATABASE
148 #define HAVE_XRMSETDATABASE
151 /* Make sure we get select from libc rather than from libcurses
152 because libcurses on HPUX 10.10 has a broken version of select.
153 We used to use -lc -lcurses, but this may be cleaner. */
154 #define LIBS_TERMCAP -ltermcap
156 /* However, HPUX 10 puts Xaw and Xmu in a strange place
157 (if you install them at all). So search that place. */
158 #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
159 #define LD_SWITCH_X_DEFAULT -L/usr/lib/X11R6 -L/usr/lib/X11R5 -L/usr/lib/Motif1.2 -L/usr/contrib/X11R5/lib
161 /* 2000-11-21: Temporarily disable Unix 98 large file support found by
162 configure. It fails on HPUX 11, at least, because it enables
163 header sections which lose when `static' is defined away, as it is
164 on HP-UX. (You get duplicate symbol errors on linking). */
166 #undef _FILE_OFFSET_BITS
168 /* otherwise sigunblock wont be defined */
169 #define POSIX_SIGNALS
171 /* arch-tag: 8d8dcbf1-ca9b-48a1-94be-b750de18a5c6
172 (do not change this comment) */