+# Issue errors and warnings for invalid/strange bootstrap combinations.
+case "$configdirs" in
+ *gcc*) have_compiler=yes ;;
+ *) have_compiler=no ;;
+esac
+
+case "$have_compiler:$host:$target:$enable_bootstrap" in
+ *:*:*:no) ;;
+
+ # Default behavior. (We'll) enable bootstrap if we have a compiler
+ # and we are in a native configuration.
+ yes:$build:$build:default)
+ # This will become 'yes'
+ enable_bootstrap=no ;;
+
+ *:*:*:default)
+ enable_bootstrap=no ;;
+
+ # We have a compiler and we are in a native configuration, bootstrap is ok
+ yes:$build:$build:yes | yes:$build:$build:lean)
+ ;;
+
+ # Other configurations, but we have a compiler. Assume the user knows
+ # what he's doing.
+ yes:*:*:yes | yes:*:*:lean)
+ echo "configure: warning: trying to bootstrap a cross compiler" 1>&2
+ ;;
+
+ # No compiler: if they passed --enable-bootstrap explicitly, fail
+ no:*:*:yes | no:*:*:lean)
+ { echo "configure: error: cannot bootstrap without a compiler" 1>&2; exit 1; } ;;
+
+ # Fail if wrong command line
+ *)
+ { echo "configure: error: invalid option for --enable-bootstrap" 1>&2; exit 1; }
+ ;;
+esac
+
+# Adjust the toplevel makefile according to whether bootstrap was selected.