1 /* Operating system specific defines to be used when targeting GCC for some
2 embedded system running pSOS. We assume GNU tools with ELF, but
3 try to maintain compatibility with the MRI tools. Based on svr4.h.
4 Copyright (C) 1996, 1999, 2000 Free Software Foundation, Inc.
6 This file is part of GNU CC.
8 GNU CC is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 2, or (at your option)
13 GNU CC is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with GNU CC; see the file COPYING. If not, write to
20 the Free Software Foundation, 59 Temple Place - Suite 330,
21 Boston, MA 02111-1307, USA.
23 To use this file, make up a file with a name like:
27 where ????? is replaced by the name of the basic hardware that you
28 are targeting for. Then, in the file ?????-psos.h, put something
34 followed by any really system-specific defines (or overrides of
35 defines) which you find that you need.
39 /* Define a symbol indicating that we are using psos.h. */
44 /* All pSOS targets currently use the ELF object file format. */
46 #define OBJECT_FORMAT_ELF
49 /* Provide a NULL STARTFILE_SPEC. The startfile cannot be specified
50 here because it depends on the architecture (e.g. 68K), the
51 board-support package (e.g. M162) and the run-time configuration
52 (e.g. application vs. ram-image vs. rom-image). Specify the
53 startfile in a linker-script created from the generic
54 architecture-specific linker-scripts. */
57 #define STARTFILE_SPEC ""
60 /* Predefined macros (independent of processor type). */
63 #define CPP_PREDEFINES "-Dpsos"
66 /* Implicit library calls should use ANSI memcpy rather than BSD
69 #define TARGET_MEM_FUNCTIONS
71 /* This is how we tell the assembler that a symbol is weak. */
73 #define ASM_WEAKEN_LABEL(FILE,NAME) \
74 do { fputs ("\t.weak\t", FILE); assemble_name (FILE, NAME); \
75 fputc ('\n', FILE); } while (0)
77 /* Switch into a generic section. */
78 #define TARGET_ASM_NAMED_SECTION default_elf_asm_named_section
80 /* Use DBX debugging info by default. */
82 #ifndef PREFERRED_DEBUGGING_TYPE
83 #define PREFERRED_DEBUGGING_TYPE DBX_DEBUG
86 /* For pSOS we use DBX debugging info. */
88 #define DBX_DEBUGGING_INFO 1