home *** CD-ROM | disk | FTP | other *** search
/ Geek Gadgets 1 / ADE-1.bin / ade-dist / gcc-2.7.2.1-base.tgz / gcc-2.7.2.1-base.tar / fsf / gcc / config / lynx-ng.h < prev    next >
Text File  |  1995-06-15  |  4KB  |  119 lines

  1. /* Target independent definitions for LynxOS, using Lynx's old as and ld.
  2.    Copyright (C) 1993 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, 59 Temple Place - Suite 330,
  19. Boston, MA 02111-1307, USA.  */
  20.  
  21. /* This is for backwards compatibility with older Lynx tools, which use
  22.    a version of a.out format. */
  23.  
  24. #undef ASM_SPEC
  25. #define ASM_SPEC "%{mcoff:-C}"
  26.  
  27. #undef CPP_SPEC
  28. #define CPP_SPEC "%{mthreads:-D_MULTITHREADED}  \
  29.   %{mposix:-D_POSIX_SOURCE}  \
  30.   %{msystem-v:-I/usr/include_v}"
  31.  
  32. /* Provide required defaults for linker switches.  */
  33.  
  34. #undef LINK_SPEC
  35. #define LINK_SPEC "%{msystem-v:-V} %{mcoff:-k}"
  36.  
  37. #undef LIB_SPEC
  38. #define LIB_SPEC "%{mthreads:-L/lib/thread/}%{msystem-v:-lc_v}%{!msystem-v:%{mposix:-lc_p} -lc}"
  39.  
  40. #undef STARTFILE_SPEC
  41. #define STARTFILE_SPEC "%{p:%{mcoff:pinit1.o%s}%{!mcoff:pinit.o%s}}%{!p:%{msystem-v:%{mcoff:vinit1.o%s}%{!mcoff:vinit.o%s}}%{!msystem-v:%{mcoff:init1.o%s}%{!mcoff:init.o%s}}}"
  42.  
  43. #undef ENDFILE_SPEC
  44. #define ENDFILE_SPEC "%{mcoff:initn.o%s} %{p:_etext.o%s}"
  45.  
  46. #undef SIZE_TYPE
  47. #define SIZE_TYPE "unsigned int"
  48.  
  49. #undef WCHAR_TYPE
  50. #define WCHAR_TYPE "int"
  51.  
  52. #undef PTRDIFF_TYPE
  53. #define PTRDIFF_TYPE "long int"
  54.  
  55. /* We want to output DBX debugging information.  */
  56.  
  57. #define DBX_DEBUGGING_INFO
  58. #undef PREFERRED_DEBUGGING_TYPE
  59. #define PREFERRED_DEBUGGING_TYPE DBX_DEBUG
  60.  
  61. /* We optionally want to be able to produce SDB debugging output so that
  62.    we can create debuggable SDB/coff files.  This won't be needed when
  63.    stabs-in-coff works.  */
  64.  
  65. #define SDB_DEBUGGING_INFO
  66.  
  67. /* Generate calls to memcpy, memcmp and memset.  */
  68.  
  69. #define TARGET_MEM_FUNCTIONS
  70.  
  71. /* Handle #pragma pack and sometimes #pragma weak.  */
  72.  
  73. #define HANDLE_SYSV_PRAGMA
  74.  
  75. #define TARGET_THREADS    (target_flags & MASK_THREADS)
  76. #define MASK_THREADS    0x40000000
  77.  
  78. #define TARGET_POSIX    (target_flags & MASK_POSIX)
  79. #define MASK_POSIX    0x20000000
  80.  
  81. #define TARGET_SYSTEM_V    (target_flags & MASK_SYSTEM_V)
  82. #define MASK_SYSTEM_V    0x10000000
  83.  
  84. #define TARGET_COFF    (target_flags & MASK_COFF)
  85. #define MASK_COFF    0x08000000
  86.  
  87. #undef SUBTARGET_SWITCHES
  88. #define SUBTARGET_SWITCHES \
  89.     {"threads",        MASK_THREADS},        \
  90.     {"posix",        MASK_POSIX},        \
  91.     {"system-v",    MASK_SYSTEM_V},        \
  92.     {"coff",        MASK_COFF},
  93.  
  94. #undef SUBTARGET_OVERRIDE_OPTIONS
  95. #define SUBTARGET_OVERRIDE_OPTIONS \
  96. { if (TARGET_SYSTEM_V && profile_flag)            \
  97.     warning ("-msystem-v and -p are incompatible");        \
  98.   if (TARGET_SYSTEM_V && TARGET_THREADS)            \
  99.     warning ("-msystem-v and -mthreads are incompatible"); }
  100.  
  101. /* Define this so that C++ destructors will use atexit.  */
  102.  
  103. #define HAVE_ATEXIT
  104.  
  105. /* This is defined only so that we can find the assembler.  Everything else
  106.    is in /bin.  */
  107.  
  108. #define MD_EXEC_PREFIX "/usr/local/lib/gcc-"
  109.  
  110. /* This is needed because /bin/ld does not handle -L options correctly. */
  111.  
  112. #define LINK_LIBGCC_SPECIAL_1
  113.  
  114. /* The Lynx linker considers __main to be a possible entry point, so we
  115.    must use a different name.  */
  116.  
  117. #define NAME__MAIN "____main"
  118. #define SYMBOL__MAIN ____main
  119.