home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 4 / FreshFish_May-June1994.bin / gnu / info / gcc.info-17 (.txt) < prev    next >
GNU Info File  |  1994-02-20  |  51KB  |  942 lines

  1. This is Info file gcc.info, produced by Makeinfo-1.55 from the input
  2. file gcc.texi.
  3.    This file documents the use and the internals of the GNU compiler.
  4.    Published by the Free Software Foundation 675 Massachusetts Avenue
  5. Cambridge, MA 02139 USA
  6.    Copyright (C) 1988, 1989, 1992, 1993 Free Software Foundation, Inc.
  7.    Permission is granted to make and distribute verbatim copies of this
  8. manual provided the copyright notice and this permission notice are
  9. preserved on all copies.
  10.    Permission is granted to copy and distribute modified versions of
  11. this manual under the conditions for verbatim copying, provided also
  12. that the sections entitled "GNU General Public License" and "Protect
  13. Your Freedom--Fight `Look And Feel'" are included exactly as in the
  14. original, and provided that the entire resulting derived work is
  15. distributed under the terms of a permission notice identical to this
  16.    Permission is granted to copy and distribute translations of this
  17. manual into another language, under the above conditions for modified
  18. versions, except that the sections entitled "GNU General Public
  19. License" and "Protect Your Freedom--Fight `Look And Feel'", and this
  20. permission notice, may be included in translations approved by the Free
  21. Software Foundation instead of in the original English.
  22. File: gcc.info,  Node: Driver,  Next: Run-time Target,  Up: Target Macros
  23. Controlling the Compilation Driver, `gcc'
  24. =========================================
  25. `SWITCH_TAKES_ARG (CHAR)'
  26.      A C expression which determines whether the option `-CHAR' takes
  27.      arguments.  The value should be the number of arguments that
  28.      option takes-zero, for many options.
  29.      By default, this macro is defined to handle the standard options
  30.      properly.  You need not define it unless you wish to add additional
  31.      options which take arguments.
  32. `WORD_SWITCH_TAKES_ARG (NAME)'
  33.      A C expression which determines whether the option `-NAME' takes
  34.      arguments.  The value should be the number of arguments that
  35.      option takes-zero, for many options.  This macro rather than
  36.      `SWITCH_TAKES_ARG' is used for multi-character option names.
  37.      By default, this macro is defined as
  38.      `DEFAULT_WORD_SWITCH_TAKES_ARG', which handles the standard options
  39.      properly.  You need not define `WORD_SWITCH_TAKES_ARG' unless you
  40.      wish to add additional options which take arguments.  Any
  41.      redefinition should call `DEFAULT_WORD_SWITCH_TAKES_ARG' and then
  42.      check for additional options.
  43. `SWITCHES_NEED_SPACES'
  44.      A string-valued C expression which is nonempty if the linker needs
  45.      a space between the `-L' or `-o' option and its argument.
  46.      If this macro is not defined, the default value is 0.
  47. `CPP_SPEC'
  48.      A C string constant that tells the GNU CC driver program options to
  49.      pass to CPP.  It can also specify how to translate options you
  50.      give to GNU CC into options for GNU CC to pass to the CPP.
  51.      Do not define this macro if it does not need to do anything.
  52. `NO_BUILTIN_SIZE_TYPE'
  53.      If this macro is defined, the preprocessor will not define the
  54.      builtin macro `__SIZE_TYPE__'.  The macro `__SIZE_TYPE__' must
  55.      then be defined by `CPP_SPEC' instead.
  56.      This should be defined if `SIZE_TYPE' depends on target dependent
  57.      flags which are not accessible to the preprocessor.  Otherwise, it
  58.      should not be defined.
  59. `NO_BUILTIN_PTRDIFF_TYPE'
  60.      If this macro is defined, the preprocessor will not define the
  61.      builtin macro `__PTRDIFF_TYPE__'.  The macro `__PTRDIFF_TYPE__'
  62.      must then be defined by `CPP_SPEC' instead.
  63.      This should be defined if `PTRDIFF_TYPE' depends on target
  64.      dependent flags which are not accessible to the preprocessor.
  65.      Otherwise, it should not be defined.
  66. `SIGNED_CHAR_SPEC'
  67.      A C string constant that tells the GNU CC driver program options to
  68.      pass to CPP.  By default, this macro is defined to pass the option
  69.      `-D__CHAR_UNSIGNED__' to CPP if `char' will be treated as
  70.      `unsigned char' by `cc1'.
  71.      Do not define this macro unless you need to override the default
  72.      definition.
  73. `CC1_SPEC'
  74.      A C string constant that tells the GNU CC driver program options to
  75.      pass to `cc1'.  It can also specify how to translate options you
  76.      give to GNU CC into options for GNU CC to pass to the `cc1'.
  77.      Do not define this macro if it does not need to do anything.
  78. `CC1PLUS_SPEC'
  79.      A C string constant that tells the GNU CC driver program options to
  80.      pass to `cc1plus'.  It can also specify how to translate options
  81.      you give to GNU CC into options for GNU CC to pass to the
  82.      `cc1plus'.
  83.      Do not define this macro if it does not need to do anything.
  84. `ASM_SPEC'
  85.      A C string constant that tells the GNU CC driver program options to
  86.      pass to the assembler.  It can also specify how to translate
  87.      options you give to GNU CC into options for GNU CC to pass to the
  88.      assembler.  See the file `sun3.h' for an example of this.
  89.      Do not define this macro if it does not need to do anything.
  90. `ASM_FINAL_SPEC'
  91.      A C string constant that tells the GNU CC driver program how to
  92.      run any programs which cleanup after the normal assembler.
  93.      Normally, this is not needed.  See the file `mips.h' for an
  94.      example of this.
  95.      Do not define this macro if it does not need to do anything.
  96. `LINK_SPEC'
  97.      A C string constant that tells the GNU CC driver program options to
  98.      pass to the linker.  It can also specify how to translate options
  99.      you give to GNU CC into options for GNU CC to pass to the linker.
  100.      Do not define this macro if it does not need to do anything.
  101. `LIB_SPEC'
  102.      Another C string constant used much like `LINK_SPEC'.  The
  103.      difference between the two is that `LIB_SPEC' is used at the end
  104.      of the command given to the linker.
  105.      If this macro is not defined, a default is provided that loads the
  106.      standard C library from the usual place.  See `gcc.c'.
  107. `STARTFILE_SPEC'
  108.      Another C string constant used much like `LINK_SPEC'.  The
  109.      difference between the two is that `STARTFILE_SPEC' is used at the
  110.      very beginning of the command given to the linker.
  111.      If this macro is not defined, a default is provided that loads the
  112.      standard C startup file from the usual place.  See `gcc.c'.
  113. `ENDFILE_SPEC'
  114.      Another C string constant used much like `LINK_SPEC'.  The
  115.      difference between the two is that `ENDFILE_SPEC' is used at the
  116.      very end of the command given to the linker.
  117.      Do not define this macro if it does not need to do anything.
  118. `LINK_LIBGCC_SPECIAL'
  119.      Define this macro meaning that `gcc' should find the library
  120.      `libgcc.a' by hand, rather than passing the argument `-lgcc' to
  121.      tell the linker to do the search; also, `gcc' should not generate
  122.      `-L' options to pass to the linker (as it normally does).
  123. `LINK_LIBGCC_SPECIAL_1'
  124.      Define this macro meaning that `gcc' should find the library
  125.      `libgcc.a' by hand, rather than passing the argument `-lgcc' to
  126.      tell the linker to do the search.
  127. `RELATIVE_PREFIX_NOT_LINKDIR'
  128.      Define this macro to tell `gcc' that it should only translate a
  129.      `-B' prefix into a `-L' linker option if the prefix indicates an
  130.      absolute file name.
  131. `STANDARD_EXEC_PREFIX'
  132.      Define this macro as a C string constant if you wish to override
  133.      the standard choice of `/gnu/lib/gcc-lib/' as the default prefix to
  134.      try when searching for the executable files of the compiler.
  135. `MD_EXEC_PREFIX'
  136.      If defined, this macro is an additional prefix to try after
  137.      `STANDARD_EXEC_PREFIX'.  `MD_EXEC_PREFIX' is not searched when the
  138.      `-b' option is used, or the compiler is built as a cross compiler.
  139. `STANDARD_STARTFILE_PREFIX'
  140.      Define this macro as a C string constant if you wish to override
  141.      the standard choice of `/gnu/lib/' as the default prefix to try
  142.      when searching for startup files such as `crt0.o'.
  143. `MD_STARTFILE_PREFIX'
  144.      If defined, this macro supplies an additional prefix to try after
  145.      the standard prefixes.  `MD_EXEC_PREFIX' is not searched when the
  146.      `-b' option is used, or when the compiler is built as a cross
  147.      compiler.
  148. `MD_STARTFILE_PREFIX_1'
  149.