Commit ffedf511 by Ralf Wildenhues Committed by Ralf Wildenhues

Allow to pass separate configure arguments for build, host and target.

/:
	PR bootstrap/45326
	PR bootstrap/45174
	* configure.ac: Honor initial values of $build_configargs,
	$host_configargs, $target_configargs.  Mark the precious, so
	environment settings get recorded.
	* configure: Regenerate.

gcc/:
	* doc/install.texi (Configuration): Document build_configargs,
	host_configargs, target_configargs.

From-SVN: r164904
parent 8b932a71
2010-10-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
PR bootstrap/45326
PR bootstrap/45174
* configure.ac: Honor initial values of $build_configargs,
$host_configargs, $target_configargs. Mark the precious, so
environment settings get recorded.
* configure: Regenerate.
2010-09-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> 2010-09-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
PR bootstrap/45796 PR bootstrap/45796
......
...@@ -655,12 +655,9 @@ CFLAGS_FOR_BUILD ...@@ -655,12 +655,9 @@ CFLAGS_FOR_BUILD
CC_FOR_BUILD CC_FOR_BUILD
AS_FOR_BUILD AS_FOR_BUILD
AR_FOR_BUILD AR_FOR_BUILD
target_configargs
target_configdirs target_configdirs
configdirs configdirs
host_configargs
build_configdirs build_configdirs
build_configargs
INSTALL_GDB_TK INSTALL_GDB_TK
GDB_TK GDB_TK
CONFIGURE_GDB_TK CONFIGURE_GDB_TK
...@@ -668,6 +665,9 @@ build_tooldir ...@@ -668,6 +665,9 @@ build_tooldir
tooldir tooldir
GCC_SHLIB_SUBDIR GCC_SHLIB_SUBDIR
RPATH_ENVVAR RPATH_ENVVAR
target_configargs
host_configargs
build_configargs
BUILD_CONFIG BUILD_CONFIG
CXXFLAGS_FOR_TARGET CXXFLAGS_FOR_TARGET
CFLAGS_FOR_TARGET CFLAGS_FOR_TARGET
...@@ -835,6 +835,9 @@ CXX ...@@ -835,6 +835,9 @@ CXX
CXXFLAGS CXXFLAGS
CCC CCC
CPP CPP
build_configargs
host_configargs
target_configargs
AR AR
AS AS
DLLTOOL DLLTOOL
...@@ -1569,6 +1572,12 @@ Some influential environment variables: ...@@ -1569,6 +1572,12 @@ Some influential environment variables:
CXX C++ compiler command CXX C++ compiler command
CXXFLAGS C++ compiler flags CXXFLAGS C++ compiler flags
CPP C preprocessor CPP C preprocessor
build_configargs
additional configure arguments for build directories
host_configargs
additional configure arguments for host directories
target_configargs
additional configure arguments for target directories
AR AR for the host AR AR for the host
AS AS for the host AS AS for the host
DLLTOOL DLLTOOL for the host DLLTOOL DLLTOOL for the host
...@@ -7916,10 +7925,15 @@ if test "$silent" = yes; then ...@@ -7916,10 +7925,15 @@ if test "$silent" = yes; then
fi fi
baseargs="$baseargs --disable-option-checking" baseargs="$baseargs --disable-option-checking"
# Record and document user additions to sub configure arguments.
# For the build-side libraries, we just need to pretend we're native, # For the build-side libraries, we just need to pretend we're native,
# and not use the same cache file. Multilibs are neither needed nor # and not use the same cache file. Multilibs are neither needed nor
# desired. # desired.
build_configargs="--cache-file=../config.cache ${baseargs}" build_configargs="$build_configargs --cache-file=../config.cache ${baseargs}"
# For host modules, accept cache file option, or specification as blank. # For host modules, accept cache file option, or specification as blank.
case "${cache_file}" in case "${cache_file}" in
...@@ -7933,9 +7947,9 @@ esac ...@@ -7933,9 +7947,9 @@ esac
# Host dirs don't like to share a cache file either, horribly enough. # Host dirs don't like to share a cache file either, horribly enough.
# This seems to be due to autoconf 2.5x stupidity. # This seems to be due to autoconf 2.5x stupidity.
host_configargs="--cache-file=./config.cache ${extra_host_args} ${baseargs}" host_configargs="$host_configargs --cache-file=./config.cache ${extra_host_args} ${baseargs}"
target_configargs=${baseargs} target_configargs="$target_configargs ${baseargs}"
# Passing a --with-cross-host argument lets the target libraries know # Passing a --with-cross-host argument lets the target libraries know
# whether they are being built with a cross-compiler or being built # whether they are being built with a cross-compiler or being built
......
...@@ -2969,10 +2969,18 @@ if test "$silent" = yes; then ...@@ -2969,10 +2969,18 @@ if test "$silent" = yes; then
fi fi
baseargs="$baseargs --disable-option-checking" baseargs="$baseargs --disable-option-checking"
# Record and document user additions to sub configure arguments.
AC_ARG_VAR([build_configargs],
[additional configure arguments for build directories])
AC_ARG_VAR([host_configargs],
[additional configure arguments for host directories])
AC_ARG_VAR([target_configargs],
[additional configure arguments for target directories])
# For the build-side libraries, we just need to pretend we're native, # For the build-side libraries, we just need to pretend we're native,
# and not use the same cache file. Multilibs are neither needed nor # and not use the same cache file. Multilibs are neither needed nor
# desired. # desired.
build_configargs="--cache-file=../config.cache ${baseargs}" build_configargs="$build_configargs --cache-file=../config.cache ${baseargs}"
# For host modules, accept cache file option, or specification as blank. # For host modules, accept cache file option, or specification as blank.
case "${cache_file}" in case "${cache_file}" in
...@@ -2986,9 +2994,9 @@ esac ...@@ -2986,9 +2994,9 @@ esac
# Host dirs don't like to share a cache file either, horribly enough. # Host dirs don't like to share a cache file either, horribly enough.
# This seems to be due to autoconf 2.5x stupidity. # This seems to be due to autoconf 2.5x stupidity.
host_configargs="--cache-file=./config.cache ${extra_host_args} ${baseargs}" host_configargs="$host_configargs --cache-file=./config.cache ${extra_host_args} ${baseargs}"
target_configargs=${baseargs} target_configargs="$target_configargs ${baseargs}"
# Passing a --with-cross-host argument lets the target libraries know # Passing a --with-cross-host argument lets the target libraries know
# whether they are being built with a cross-compiler or being built # whether they are being built with a cross-compiler or being built
......
2010-10-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* doc/install.texi (Configuration): Document build_configargs,
host_configargs, target_configargs.
2010-10-01 Uros Bizjak <ubizjak@gmail.com> 2010-10-01 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.md (*ashl<mode>3_mask): New insn_and_split pattern. * config/i386/i386.md (*ashl<mode>3_mask): New insn_and_split pattern.
...@@ -1991,6 +1991,36 @@ Do not try to compile and run a test libart program. ...@@ -1991,6 +1991,36 @@ Do not try to compile and run a test libart program.
@end table @end table
@subsubheading Overriding @command{configure} test results
Sometimes, it might be necessary to override the result of some
@command{configure} test, for example in order to ease porting to a new
system or work around a bug in a test. The toplevel @command{configure}
script provides three variables for this:
@table @code
@item build_configargs
@cindex @code{build_configargs}
The contents of this variable is passed to all build @command{configure}
scripts.
@item host_configargs
@cindex @code{host_configargs}
The contents of this variable is passed to all host @command{configure}
scripts.
@item target_configargs
@cindex @code{target_configargs}
The contents of this variable is passed to all target @command{configure}
scripts.
@end table
In order to avoid shell and @command{make} quoting issues for complex
overrides, you can pass a setting for @env{CONFIG_SITE} and set
variables in the site file.
@html @html
<hr /> <hr />
<p> <p>
......
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