Add 2012 to FSF copyright years for Emacs files (do not merge to trunk)
[bpt/emacs.git] / src / m / ibmrs6000.h
CommitLineData
30fe07a6 1/* R2 AIX machine/system dependent defines
eb3d11ef 2 Copyright (C) 1988, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
49f70d46 3 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
30fe07a6
JB
4
5This file is part of GNU Emacs.
6
eb3d11ef 7GNU Emacs is free software: you can redistribute it and/or modify
30fe07a6 8it under the terms of the GNU General Public License as published by
eb3d11ef
GM
9the Free Software Foundation, either version 3 of the License, or
10(at your option) any later version.
30fe07a6
JB
11
12GNU Emacs is distributed in the hope that it will be useful,
13but WITHOUT ANY WARRANTY; without even the implied warranty of
14MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15GNU General Public License for more details.
16
17You should have received a copy of the GNU General Public License
eb3d11ef 18along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
30fe07a6
JB
19
20
177c0ea7 21/* The following line tells the configuration script what sort of
30fe07a6
JB
22 operating system this machine is likely to run.
23 USUAL-OPSYS="aix3-1" */
24
30fe07a6
JB
25/* Define NO_ARG_ARRAY if you cannot take the address of the first of a
26 * group of arguments and treat it as an array of the arguments. */
27
28#define NO_ARG_ARRAY
29
30fe07a6
JB
30/* Now define a symbol for the cpu type, if your compiler
31 does not define it automatically. */
32
33#define IBMR2AIX
34
d7d7c1dd 35#ifndef UNEXEC
30fe07a6 36#define UNEXEC unexaix.o
d7d7c1dd 37#endif
30fe07a6
JB
38
39/* Define addresses, macros, change some setup for dump */
40
41#define NO_REMAP
42
30fe07a6
JB
43/* The data segment in this machine always starts at address 0x20000000.
44 An address of data cannot be stored correctly in a Lisp object;
db9cd97a 45 we always lose the high bits. We must tell XPNTR to add them back. */
30fe07a6 46
d7d7c1dd 47#ifndef USG5_4
2749d28e 48#define TEXT_START 0x10000000
2749d28e 49#define DATA_START 0x20000000
2749d28e 50#define WORDS_BIG_ENDIAN
30fe07a6
JB
51#define DATA_SEG_BITS 0x20000000
52
2749d28e
DN
53/* sfreed@unm.edu says add -bI:/usr/lpp/X11/bin/smt.exp for AIX 3.2.4. */
54/* marc@sti.com (Marc Pawliger) says ibmrs6000.inp is needed to avoid
55 linker error for updated X11R5 libraries, which references pthread library
56 which most machines don't have. We use the name .inp instead of .imp
57 because .inp is a better convention to use in make-dist for naming
58 random input files. */
59#ifdef THIS_IS_MAKEFILE /* Don't use this in configure. */
60#define LD_SWITCH_MACHINE -Wl,-bnodelcsect
61#endif /* THIS_IS_MAKEFILE */
30fe07a6 62
2749d28e
DN
63#ifndef NLIST_STRUCT
64/* AIX supposedly doesn't use this interface, but on the RS/6000
65 it apparently does. */
66#define NLIST_STRUCT
d7d7c1dd 67#endif
f6c25ced 68
b1f7fb34 69/* -lpthreads seems to be necessary for Xlib in X11R6, and should be harmless
41a69b9e 70 on older versions of X where it happens to exist. */
b1f7fb34
KH
71#ifdef HAVE_LIBPTHREADS
72#define LIBS_MACHINE -lrts -lIM -liconv -lpthreads
549fba2b 73#else
e3de4c57 74/* IBM's X11R5 use -lIM and -liconv in AIX 3.2.2. */
8250185b 75#define LIBS_MACHINE -lrts -lIM -liconv
549fba2b 76#endif
2749d28e
DN
77
78#else /* USG5_4 */
79#undef WORDS_BIG_ENDIAN
80#define DATA_SEG_BITS 0
d7d7c1dd 81#define LIBS_MACHINE
2749d28e
DN
82#endif /* USG5_4 */
83
a51092ee
DN
84#undef ADDR_CORRECT
85#define ADDR_CORRECT(x) ((int)(x))
86
30fe07a6 87#define START_FILES
30fe07a6
JB
88/*** BUILD 9008 - FIONREAD problem still exists in X-Windows. ***/
89#define BROKEN_FIONREAD
0a95681a
KH
90/* As we define BROKEN_FIONREAD, SIGIO will be undefined in systty.h.
91 But, on AIX, SIGAIO, SIGPTY, and SIGPOLL are defined as SIGIO,
92 which causes compilation error at init_signals in sysdep.c. So, we
93 define these macros so that syssignal.h detects them and undefine
94 SIGAIO, SIGPTY and SIGPOLL. */
95#define BROKEN_SIGAIO
96#define BROKEN_SIGPTY
97#define BROKEN_SIGPOLL
30fe07a6 98
a80652a7 99#define ORDINARY_LINK
d7d7c1dd 100
ab5796a9
MB
101/* arch-tag: 028318ee-a7ae-4a08-804d-cc1e6588d003
102 (do not change this comment) */