home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / GCC / GCC258_5.LHA / gcc-2.5.8-amiga / config / mips / svr4-5.h < prev    next >
Encoding:
C/C++ Source or Header  |  1993-10-02  |  2.9 KB  |  83 lines

  1. /* Definitions of target machine for GNU compiler.  MIPS RISC-OS 5.0 System V.4 version.
  2.    Copyright (C) 1992 Free Software Foundation, Inc.
  3.  
  4. This file is part of GNU CC.
  5.  
  6. GNU CC is free software; you can redistribute it and/or modify
  7. it under the terms of the GNU General Public License as published by
  8. the Free Software Foundation; either version 2, or (at your option)
  9. any later version.
  10.  
  11. GNU CC is distributed in the hope that it will be useful,
  12. but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14. GNU General Public License for more details.
  15.  
  16. You should have received a copy of the GNU General Public License
  17. along with GNU CC; see the file COPYING.  If not, write to
  18. the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
  19.  
  20. #define MIPS_SVR4
  21.  
  22. #define CPP_PREDEFINES \
  23. "-Dmips -Dunix -Dhost_mips -DMIPSEB -DR3000 -DSYSTYPE_SVR4 \
  24. -D_mips -D_unix -D_host_mips -D_MIPSEB -D_R3000 -D_SYSTYPE_SVR4 \
  25. -D_MIPS_SZINT=32 -D_MIPS_SZLONG=32 -D_MIPS_SZPTR=32 \
  26. -Asystem(unix) -Asystem(svr4) -Acpu(mips) -Amachine(mips)"
  27.  
  28. #define STANDARD_INCLUDE_DIR "/svr4/usr/include"
  29.  
  30. #define CPP_SPEC "\
  31. %{.cc:    -D__LANGUAGE_C_PLUS_PLUS -D_LANGUAGE_C_PLUS_PLUS} \
  32. %{.cxx:    -D__LANGUAGE_C_PLUS_PLUS -D_LANGUAGE_C_PLUS_PLUS} \
  33. %{.C:    -D__LANGUAGE_C_PLUS_PLUS -D_LANGUAGE_C_PLUS_PLUS} \
  34. %{.m:    -D__LANGUAGE_OBJECTIVE_C -D_LANGUAGE_OBJECTIVE_C} \
  35. %{.S:    -D__LANGUAGE_ASSEMBLY -D_LANGUAGE_ASSEMBLY %{!ansi:-DLANGUAGE_ASSEMBLY}} \
  36. %{.s:    -D__LANGUAGE_ASSEMBLY -D_LANGUAGE_ASSEMBLY %{!ansi:-DLANGUAGE_ASSEMBLY}} \
  37. %{!.S:%{!.s:    -D__LANGUAGE_C -D_LANGUAGE_C %{!ansi:-DLANGUAGE_C}}}"
  38.  
  39. #define LINK_SPEC "\
  40. %{G*} \
  41. %{!mgas: \
  42.     %{EB} %{!EB:-EB} \
  43.     %{EL: %e-EL not supported} \
  44.     %{mips1} %{mips2} %{mips3} %{bestGnum} \
  45.     %{shared} %{non_shared} %{call_shared} %{no_archive} %{exact_version} \
  46.     %{!shared: %{!non_shared: %{!call_shared: -non_shared}}} \
  47.     -systype /svr4/ }"
  48.             
  49. #define LIB_SPEC "%{p:-lprof1} %{pg:-lprof1} -lc crtn.o%s"
  50.  
  51. #define STARTFILE_SPEC "%{pg:gcrt0.o%s}%{!pg:%{p:mcrt0.o%s}%{!p:crt1.o%s}}"
  52.  
  53. #define MACHINE_TYPE "RISC-OS System V.4 Mips"
  54.  
  55. /* Override defaults for finding the MIPS tools.  */
  56. #define MD_STARTFILE_PREFIX "/svr4/usr/lib/cmplrs/cc/"
  57. #define MD_EXEC_PREFIX "/svr4/usr/lib/cmplrs/cc/"
  58.  
  59. /* Mips System V.4 doesn't have a getpagesize() function needed by the
  60.    trampoline code, so use the POSIX sysconf function to get it.
  61.    This is only done when compiling the trampoline code.  */
  62.  
  63. #ifdef  L_trampoline
  64. #include <unistd.h>
  65.  
  66. /* In at least 5.0 and 5.01, there is no _SC_PAGE_SIZE macro, only a
  67.    _SC_PAGESIZE macro.  */
  68. #ifdef _SC_PAGESIZE
  69. #define _SC_PAGE_SIZE _SC_PAGESIZE
  70. #endif
  71.  
  72. #define getpagesize()    sysconf(_SC_PAGE_SIZE)
  73. #endif /*  L_trampoline */
  74.  
  75. /* Use atexit for static constructors/destructors, instead of defining
  76.    our own exit function.  */
  77. #define HAVE_ATEXIT
  78.  
  79. /* Generate calls to memcpy, etc., not bcopy, etc.  */
  80. #define TARGET_MEM_FUNCTIONS
  81.  
  82. #include "mips/mips.h"
  83.