|
|
1.1 root 1: /* nextstep.h -- operating system specific defines to be used when
2: targeting GCC for NeXTSTEP.
3: Copyright (C) 1989, 1990, 1991, 1992, 1993 Free Software Foundation, Inc.
4:
5: This file is part of GNU CC.
6:
7: GNU CC 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 2, or (at your option)
10: any later version.
11:
12: GNU CC 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 CC; see the file COPYING. If not, write to
19: the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
20:
21:
22: /* changed for NeXTStep 2.1, Ch. Kranz, 2/94, 3/94 */
23: #include "nextstep.h"
24:
25: /* set flag_gnu_linker=0, use collect2 for linking */
26: #undef USE_COLLECT2
27: #define USE_COLLECT2
28:
29: /* use this until a newer gdb for NeXTStep21 is availible */
30: #define DEFAULT_GDB_EXTENSIONS 0
31:
32: /* we need the call to __main to start all global destructors and constructors
33: correctly, so undef INIT_SECTION_ASM_OP, (see libgcc2.c line 1965)
34: and define INVOKE_main */
35: #undef INIT_SECTION_ASM_OP
36: #define INVOKE__main
37:
38: /* We call the global destructors, constructors from __main */
39: #undef ASM_OUTPUT_CONSTRUCTOR
40: #undef ASM_OUTPUT_DESTRUCTOR
41:
42: #undef ASM_FILE_END
43: #define ASM_FILE_END(FILE) \
44: do { \
45: extern char *language_string; \
46: if (strcmp (language_string, "GNU C++") == 0) \
47: { \
48: ASM_OUTPUT_ALIGN (FILE, 1); \
49: } \
50: } while (0)
51: /* deleted: destructor_section (); \ */
52: /* deleted: constructor_section (); \ */
53:
54: /* Ensure correct alignment of bss data. */
55: /* ASM_OUTPUT_ALIGNED_LOCAL not needed */
56: /* need ASM_OUTPUT_LOCAL instead for old NeXT-as */
57: /* look in varasm.c, line 1062 and 1476 */
58: #undef ASM_OUTPUT_ALIGNED_LOCAL
59: #undef ASM_OUTPUT_LOCAL
60: #define ASM_OUTPUT_LOCAL(FILE, NAME, SIZE, ROUNDED) \
61: ( fputs (".lcomm ", (FILE)), \
62: assemble_name ((FILE), (NAME)), \
63: fprintf ((FILE), ",%u\n", (ROUNDED)))
64:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.