Commit 5b28c537 by Nathanael Nerode

fragments.texi, [...]: Mention new file config.build.

	* doc/fragments.texi, doc/sourcebuild.texi: Mention new file
	config.build.

	* config.build: New file.
	* config.gcc: Remove some build-specific stuff.
	* configure.in: Use config.build.
	* configure: Regnerate.

From-SVN: r70965
parent d9e27aed
# GCC build-specific configuration file.
# Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003
# Free Software Foundation, Inc.
#This file is part of GCC.
#GCC is free software; you can redistribute it and/or modify it under
#the terms of the GNU General Public License as published by the Free
#Software Foundation; either version 2, or (at your option) any later
#version.
#GCC is distributed in the hope that it will be useful, but WITHOUT
#ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
#FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
#for more details.
#You should have received a copy of the GNU General Public License
#along with GCC; see the file COPYING. If not, write to the Free
#Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#02111-1307, USA.
# This is the GCC build-specific configuration file
# where a configuration type is mapped to different system-specific
# definitions and files. This is invoked by the autoconf-generated
# configure script. Putting it in a separate shell file lets us skip
# running autoconf when modifying build-specific information.
# This file switches on the shell variable ${build}. As much of this
# as possible should be replaced with autoconf tests in the future.
# This file sets the following shell variables for use by the
# autoconf-generated configure script:
#
# build_xm_defines List of macros to define when compiling for the
# build machine.
#
# build_xm_file List of files to include when compiling for the
# build machine.
#
# build_install_headers_dir
# Target to use when installing header files.
#
# build_exeext Set to the suffix, if the build machine requires
# executables to have a file name suffix.
# Default settings.
build_xm_file=
build_xm_defines=
build_exeext=
build_install_headers_dir=install-headers-tar
# System-specific settings.
case $build in
alpha*-dec-osf4*)
# Some versions of OSF4 (specifically X4.0-9 296.7) have
# a broken tar, so we use cpio instead.
build_install_headers_dir=install-headers-cpio
;;
alpha*-dec-*vms*)
build_xm_file=alpha/xm-vms.h
build_exeext=.exe
build_install_headers_dir=install-headers-cp
prefix=/gnu
local_prefix=/gnu
;;
hppa1.0-*-hpux1[01]* | \
hppa*64*-*-hpux11* | \
hppa1.1-*-hpux11* | \
hppa2*-*-hpux11* )
build_install_headers_dir=install-headers-cpio
;;
i370-*-opened* | i370-*-mvs* )
# IBM 360/370/390 Architecture
build_xm_defines='FATAL_EXIT_CODE=12'
;;
i[34567]86-*-cygwin* | i[34567]86-*-pe )
build_xm_file=i386/xm-cygwin.h
build_exeext=.exe
;;
i[34567]86-*-mingw32*)
build_xm_file=i386/xm-mingw32.h
build_exeext=.exe
;;
i[34567]86-pc-msdosdjgpp*)
build_xm_file=i386/xm-djgpp.h
build_exeext=.exe
;;
i[34567]86-*-sco3.2v5*)
# 80386 running SCO Open Server 5
build_install_headers_dir=install-headers-cpio
;;
i[34567]86-sequent-ptx4* | i[34567]86-sequent-sysv4* )
build_xm_defines="SMALL_ARG_MAX"
build_install_headers_dir=install-headers-cpio
;;
i[34567]86-*-solaris2*)
build_xm_defines="SMALL_ARG_MAX"
;;
i[34567]86-*-sysv4*)
# Intel x86 running system V r4
build_xm_defines="SMALL_ARG_MAX"
build_install_headers_dir=install-headers-cpio
;;
i[34567]86-*-udk*)
# Intel x86 on SCO UW/OSR5 Dev Kit
build_install_headers_dir=install-headers-cpio
;;
i[34567]86-*-uwin*)
build_exeext=.exe
;;
i386-*-vsta)
# Intel 80386's running VSTa kernel
build_xm_file="i386/xm-vsta.h"
;;
m68000-hp-hpux* | m68k-hp-hpux*)
# HP 9000 series 300
build_install_headers_dir=install-headers-cpio
;;
mips-sgi-irix5*)
# SGI System V r4, IRIX 5
build_xm_file=mips/xm-iris5.h
;;
mips-sgi-irix6*o32)
# SGI System V r4, IRIX 6, O32 ABI
build_xm_file=mips/xm-iris5.h
;;
*-*-sysv*)
# All other System V variants.
build_install_headers_dir=install-headers-cpio
;;
esac
# GCC build-, host- and target-specific configuration file.
# GCC host- and target-specific configuration file.
# Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003
# Free Software Foundation, Inc.
......@@ -19,13 +19,13 @@
#Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#02111-1307, USA.
# This is the GCC build-, host- and target-specific configuration file
# This is the GCC host- and target-specific configuration file
# where a configuration type, as recognized and generated by config.bfd,
# is mapped to different system-specific definitions and files. This is
# invoked by the autoconf-generated configure script, called for build,
# invoked by the autoconf-generated configure script, called for
# host and target in that order, setting ${machine} to each. Putting it
# in a separate shell file lets us skip running autoconf when modifying
# build-, host- and target-specific information.
# host- and target-specific information.
# This file switches on the shell variable ${machine}, and also uses the
# following shell variables:
......@@ -114,12 +114,6 @@
#
# target_gtfiles List of extra source files with type information.
#
# build_xm_defines List of macros to define when compiling for the
# build machine.
#
# build_xm_file List of files to include when compiling for the
# build machine.
#
# host_xm_defines List of macros to define when compiling for the
# host machine.
#
......@@ -137,16 +131,10 @@
#
# target_cpu_default Set to override the default target model.
#
# build_install_headers_dir
# Target to use when installing header files.
#
# gdb_needs_out_file_path
# Set to yes if gdb needs a dir command with
# `dirname $out_file`.
#
# build_exeext Set to the suffix, if the build machine requires
# executables to have a file name suffix.
#
# host_exeext Set to the suffix, if the host machine requires
# executables to have a file name suffix.
#
......@@ -179,8 +167,7 @@
# host_hook_obj An object file that provides the host hooks.
#
# install_headers_dir Makefile-target for how the header file directory
# is installed, when this system is a build system,
# for build_install_headers_dir.
# is installed.
#
# exeext The suffix for executables on this system.
#
......@@ -2736,29 +2723,16 @@ then
fi
fi
# Save data on machine being used to compile GCC in build_xm_file.
# Save data on host machine in vars host_xm_file and host_xmake_file.
if test x$pass1done = x
then
if test x$xm_file != x
then build_xm_file=$xm_file
fi
build_xm_defines=$xm_defines
build_install_headers_dir=$install_headers_dir
build_exeext=$exeext
pass1done=yes
else
if test x$pass2done = x
then
if test x$xm_file != x
then host_xm_file=$xm_file
fi
host_xm_defines=$xm_defines
host_xmake_file="$xmake_file"
host_extra_gcc_objs=$extra_gcc_objs
host_extra_objs=$extra_host_objs
host_exeext=$exeext
out_host_hook_obj=$host_hook_obj
pass2done=yes
fi
if test x$pass2done = x ; then
if test x$xm_file != x ; then
host_xm_file=$xm_file
fi
host_xm_defines=$xm_defines
host_xmake_file="$xmake_file"
host_extra_gcc_objs=$extra_gcc_objs
host_extra_objs=$extra_host_objs
host_exeext=$exeext
out_host_hook_obj=$host_hook_obj
pass2done=yes
fi
......@@ -962,11 +962,10 @@ fi
# Build, host, and target specific configuration fragments
# --------------------------------------------------------
# Collect build-machine-specific information.
. ${srcdir}/config.build
target_gtfiles=
build_xm_file=
build_xm_defines=
build_install_headers_dir=install-headers-tar
build_exeext=
host_xm_file=
host_xm_defines=
host_xmake_file=
......@@ -976,7 +975,7 @@ host_exeext=
# For the host machine, we save the xm_file variable as host_xm_file;
# then we decode the target machine and forget everything else
# that came from the host machine.
for machine in $build $host $target; do
for machine in $host $target; do
. ${srcdir}/config.gcc
done
......
......@@ -13,7 +13,7 @@ construct the file @file{Makefile} from the template file
fragments from the @file{config} directory. These are used to set
Makefile parameters that are not amenable to being calculated by
autoconf. The list of fragments to incorporate is set by
@file{config.gcc}; @xref{System Config}.
@file{config.gcc} (and occasionally @file{config.build}); @xref{System Config}.
Fragments are named either @file{t-@var{target}} or @file{x-@var{host}},
depending on whether they are relevant to configuring GCC to produce
......
......@@ -175,7 +175,7 @@ timestamp.
@menu
* Config Fragments:: Scripts used by @file{configure}.
* System Config:: The @file{config.gcc} file.
* System Config:: The @file{config.build} and @file{config.gcc} files.
* Configuration Files:: Files created by running @file{configure}.
@end menu
......@@ -191,10 +191,12 @@ files, kept in the top level directory, are used. FIXME: when is the
the top level one) used?
@item The file @file{config.gcc} is used to handle configuration
specific to the particular build, host or target machine. (In
general, this should only be used for features that cannot reasonably
be tested in Autoconf feature tests.) @xref{System Config, , The
@file{config.gcc} File}, for details of the contents of this file.
specific to the particular host or target machine. The file
@file{config.build} is used to handle configuration specific to the
particular build 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} and @file{config.gcc} Files},
for details of the contents of these files.
@item Each language subdirectory has a file
@file{@var{language}/config-lang.in} that is used for
......@@ -206,9 +208,9 @@ creating the output of @file{configure}.
@end itemize
@node System Config
@subsubsection The @file{config.gcc} File
@subsubsection The @file{config.build} and @file{config.gcc} Files
FIXME: document the contents of this file, and what variables should
FIXME: document the contents of these files, and what variables should
be set to control build, host and target configuration.
@include configfiles.texi
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment