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. 5 6 This file is part of GNU CC. 7 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) 11 any later version. 12 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. 17 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. 22 23 To use this file, make up a file with a name like: 24 25 ?????-psos.h 26 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 29 like: 30 31 #include "?????.h" 32 #include "psos.h" 33 34 followed by any really system-specific defines (or overrides of 35 defines) which you find that you need. 36 */ 37 38 39 /* Define a symbol indicating that we are using psos.h. */ 40 41 #define USING_PSOS_H 42 43 44 /* All pSOS targets currently use the ELF object file format. */ 45 46 #define OBJECT_FORMAT_ELF 47 48 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. */ 55 56 #undef STARTFILE_SPEC 57 #define STARTFILE_SPEC "" 58 59 60 /* Predefined macros (independent of processor type). */ 61 62 #undef CPP_PREDEFINES 63 #define CPP_PREDEFINES "-Dpsos" 64 65 66 /* Implicit library calls should use ANSI memcpy rather than BSD 67 bcopy, etc. */ 68 69 #define TARGET_MEM_FUNCTIONS 70 71 /* This is how we tell the assembler that a symbol is weak. */ 72 73 #define ASM_WEAKEN_LABEL(FILE,NAME) \ 74 do { fputs ("\t.weak\t", FILE); assemble_name (FILE, NAME); \ 75 fputc ('\n', FILE); } while (0) 76 77 /* Switch into a generic section. */ 78 #define TARGET_ASM_NAMED_SECTION default_elf_asm_named_section 79 80 /* Use DBX debugging info by default. */ 81 82 #ifndef PREFERRED_DEBUGGING_TYPE 83 #define PREFERRED_DEBUGGING_TYPE DBX_DEBUG 84 #endif 85 86 /* For pSOS we use DBX debugging info. */ 87 88 #define DBX_DEBUGGING_INFO 1 89