aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKarl Heuer1996-07-16 00:46:45 +0000
committerKarl Heuer1996-07-16 00:46:45 +0000
commitc8958e9f09d976e19b74e4a3d673f5587257298c (patch)
tree9e6280a298e369fdd179461a12de0b716b9e245e /src
parent16b9b76d13f8c2798b63eb9b807d745a627a8c4d (diff)
downloademacs-c8958e9f09d976e19b74e4a3d673f5587257298c.tar.gz
emacs-c8958e9f09d976e19b74e4a3d673f5587257298c.zip
[__ELF__] (C_SWITCH_MACHINE): Define.
(NO_TERMIO): Define this unconditionally. (COFF): Omit this if ELF.
Diffstat (limited to 'src')
-rw-r--r--src/m/alpha.h29
1 files changed, 21 insertions, 8 deletions
diff --git a/src/m/alpha.h b/src/m/alpha.h
index f3ee56f3a73..7b07f6cd9b7 100644
--- a/src/m/alpha.h
+++ b/src/m/alpha.h
@@ -139,6 +139,19 @@ NOTE-END
139/* #define NO_SOCK_SIGIO */ 139/* #define NO_SOCK_SIGIO */
140 140
141 141
142#ifdef __ELF__
143/* With ELF, make sure that all common symbols get allocated to in the
144 data section. Otherwise, the dump of temacs may miss variables in
145 the shared library that have been initialized. For example, with
146 GNU libc, __malloc_initialized would normally be resolved to the
147 shared library's .bss section, which is fatal. */
148# ifdef __GNUC__
149# define C_SWITCH_MACHINE -fno-common
150# else
151# error What gives? Fix me if DEC Unix supports ELF now.
152# endif
153#endif
154
142#ifndef __ELF__ 155#ifndef __ELF__
143 156
144/* Describe layout of the address space in an executing process. */ 157/* Describe layout of the address space in an executing process. */
@@ -277,14 +290,14 @@ extern void r_alloc_free ();
277 while (0) 290 while (0)
278#endif 291#endif
279 292
280#ifdef linux 293/* On the Alpha it's best to avoid including TERMIO since struct
281#define COFF 294 termio and struct termios are mutually incompatible. */
282/* Linux/Alpha doesn't like it if termio.h and termios.h get included
283 simultaneously. */
284#define NO_TERMIO 295#define NO_TERMIO
285 296
286#define TEXT_END ({ extern int _etext; &_etext; }) 297#ifdef LINUX
287#ifndef __ELF__ 298# define TEXT_END ({ extern int _etext; &_etext; })
288# define DATA_END ({ extern int _EDATA; &_EDATA; }) 299# ifndef __ELF__
289#endif /* notdef __ELF__ */ 300# define COFF
301# define DATA_END ({ extern int _EDATA; &_EDATA; })
302# endif /* ! __ELF__ */
290#endif 303#endif