2002-05-17 David S. Miller <davem@redhat.com>
[official-gcc.git] / gcc / config / nextstep21.h
blob7827054d8975fa3cf2ac71a34326fe1a8bff3c44
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.
5 This file is part of GNU CC.
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.
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.
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, 59 Temple Place - Suite 330,
20 Boston, MA 02111-1307, USA. */
23 /* changed for NeXTStep 2.1, Ch. Kranz, 2/94, 3/94 */
24 #include "nextstep.h"
26 /* set flag_gnu_linker=0, use collect2 for linking */
27 #undef USE_COLLECT2
28 #define USE_COLLECT2
30 /* use this until a newer gdb for NeXTStep21 is available */
31 #define DEFAULT_GDB_EXTENSIONS 0
33 /* we need the call to __main to start all global destructors and constructors
34 correctly, so undef INIT_SECTION_ASM_OP, (see libgcc2.c line 1965)
35 and define INVOKE_main */
36 #undef INIT_SECTION_ASM_OP
37 #define INVOKE__main
39 /* We call the global destructors, constructors from __main */
40 #undef TARGET_ASM_CONSTRUCTOR
41 #undef TARGET_ASM_DESTRUCTOR
43 #undef ASM_FILE_END
44 #define ASM_FILE_END(FILE) \
45 do { \
46 if (strcmp (lang_hooks.name, "GNU C++") == 0) \
47 { \
48 ASM_OUTPUT_ALIGN (FILE, 1); \
49 } \
50 } while (0)
51 /* deleted: destructor_section (); \ */
52 /* deleted: constructor_section (); \ */
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)))