OSDN Git Service

Libbanshee is gone.
[pf3gnuchains/gcc-fork.git] / gcc / doc / sourcebuild.texi
index 400634b..172ffd1 100644 (file)
@@ -53,11 +53,8 @@ Headers for the @code{libiberty} library.
 @item libada
 The Ada runtime library.
 
-@item libbanshee
-The @code{libbanshee} library, used for Andersen-style points-to analysis.
-
-@item libf2c
-The Fortran 77 runtime library.
+@item libcpp
+The C preprocessor library.
 
 @item libgfortran
 The Fortran runtime library.
@@ -79,7 +76,7 @@ The @code{libmudflap} library, used for instrumenting pointer and array
 dereferencing operations.
 
 @item libobjc
-The Objective-C runtime library.
+The Objective-C and Objective-C++ runtime library.
 
 @item libstdc++-v3
 The C++ runtime library.
@@ -128,11 +125,11 @@ The @file{gcc} directory contains the following subdirectories:
 @item @var{language}
 Subdirectories for various languages.  Directories containing a file
 @file{config-lang.in} are language subdirectories.  The contents of
-the subdirectories @file{cp} (for C++) and @file{objc} (for
-Objective-C) are documented in this manual (@pxref{Passes, , Passes
-and Files of the Compiler}); those for other languages are not.
-@xref{Front End, , Anatomy of a Language Front End}, for details of
-the files in these directories.
+the subdirectories @file{cp} (for C++), @file{objc} (for Objective-C)
+and @file{objcp} (for Objective-C++) are documented in this manual
+(@pxref{Passes, , Passes and Files of the Compiler}); those for other
+languages are not. @xref{Front End, , Anatomy of a Language Front End},
+for details of the files in these directories.
 
 @item config
 Configuration files for supported architectures and operating
@@ -211,7 +208,7 @@ particular build machine.  The file @file{config.host} is used to handle
 configuration specific to the particular host machine.  (In general,
 these should only be used for features that cannot reasonably be tested in
 Autoconf feature tests.)
-@xref{System Config, , The @file{config.build}, @file{config.host},
+@xref{System Config, , The @file{config.build}; @file{config.host};
 and @file{config.gcc} Files}, for details of the contents of these files.
 
 @item Each language subdirectory has a file
@@ -224,7 +221,7 @@ creating the output of @file{configure}.
 @end itemize
 
 @node System Config
-@subsubsection The @file{config.build}, @file{config.host}, and @file{config.gcc} Files
+@subsubsection The @file{config.build}; @file{config.host}; and @file{config.gcc} Files
 
 The @file{config.build} file contains specific rules for particular systems
 which GCC is built on.  This should be used as rarely as possible, as the
@@ -766,6 +763,9 @@ pragmas supported.
 Documentation in @file{gcc/doc/extend.texi} of any target-specific
 built-in functions supported.
 @item
+Documentation in @file{gcc/doc/extend.texi} of any target-specific
+format checking styles supported.
+@item
 Documentation in @file{gcc/doc/md.texi} of any target-specific
 constraint letters (@pxref{Machine Constraints, , Constraints for
 Particular Machines}).
@@ -1069,7 +1069,7 @@ Language-independent support for testing @command{gcov}, and for checking
 that branch profiling produces expected values, is provided by the
 expect file @file{gcov.exp}.  @command{gcov} tests also rely on procedures
 in @file{gcc.dg.exp} to compile and run the test program.  A typical
-@command{gcov} test contains the following DejaGNU commands within comments:
+@command{gcov} test contains the following DejaGnu commands within comments:
 
 @smallexample
 @{ dg-options "-fprofile-arcs -ftest-coverage" @}
@@ -1198,9 +1198,10 @@ Within each test, the main program and one functional piece are
 compiled by the GCC under test.  The other piece can be compiled by
 an alternate compiler.  If no alternate compiler is specified,
 then all three source files are all compiled by the GCC under test.
-It's also possible to specify a pair of lists of compiler options,
-one list for each compiler, so that each test will be compiled with
-each pair of options.
+You can specify pairs of sets of compiler options.  The first element
+of such a pair specifies options used with the GCC under test, and the
+second element of the pair specifies options used with the alternate
+compiler.  Each test is compiled with each pair of options.
 
 @file{compat.exp} defines default pairs of compiler options.
 These can be overridden by defining the environment variable
@@ -1221,11 +1222,13 @@ built a second time using @code{-fpic} by the compiler under test
 and @code{-fPIC -O2} by the alternate compiler.
 
 An alternate compiler is specified by defining an environment
-variable; for C++ define @env{ALT_CXX_UNDER_TEST} to be the full
-pathname of an installed compiler.  That will be written to the
-@file{site.exp} file used by DejaGNU.  The default is to build each
+variable to be the full pathname of an installed compiler; for C
+define @env{ALT_CC_UNDER_TEST}, and for C++ define
+@env{ALT_CXX_UNDER_TEST}.  These will be written to the
+@file{site.exp} file used by DejaGnu.  The default is to build each
 test with the compiler under test using the first of each pair of
 compiler options from @env{COMPAT_OPTIONS}.  When
+@env{ALT_CC_UNDER_TEST} or
 @env{ALT_CXX_UNDER_TEST} is @code{same}, each test is built using
 the compiler under test but with combinations of the options from
 @env{COMPAT_OPTIONS}.
@@ -1250,3 +1253,23 @@ runtime support.  A test that fails for the alternate compiler but
 passes for the compiler under test probably tests for a bug that was
 fixed in the compiler under test but is present in the alternate
 compiler.
+
+The binary compatibility tests support a small number of test framework
+commands that appear within comments in a test file.
+
+@table @code
+@item dg-require-*
+These commands can be used in @file{@var{testname}_main.@var{suffix}}
+to skip the test if specific support is not available on the target.
+
+@item dg-options
+The specified options are used for compiling this particular source
+file, appended to the options from @env{COMPAT_OPTIONS}.  When this
+command appears in @file{@var{testname}_main.@var{suffix}} the options
+are also used to link the test program.
+
+@item dg-xfail-if
+This command can be used in a secondary source file to specify that
+compilation is expected to fail for particular options on particular
+targets.
+@end table