X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=blobdiff_plain;f=configure;h=eb69f28d59ef6d752b59d224647949a90b4ab397;hp=988bff7cdb8aed12ad62c87fcdebafdd9abc5873;hb=0f998edbcdec932d9782707703578da84713cc6c;hpb=d7e52ac92ed645bd46f17e825fc48044e8e33cf0 diff --git a/configure b/configure index 988bff7cdb8..eb69f28d59e 100755 --- a/configure +++ b/configure @@ -556,6 +556,7 @@ enable_option_checking=no ac_subst_vars='LTLIBOBJS LIBOBJS compare_exclusions +POSTSTAGE1_CONFIGURE_FLAGS stage2_werror_flag stage1_checking stage1_cflags @@ -748,7 +749,9 @@ enable_libquadmath_support enable_libada enable_libssp enable_static_libjava +enable_bootstrap enable_build_with_cxx +enable_build_poststage1_with_cxx with_mpc with_mpc_include with_mpc_lib @@ -779,7 +782,6 @@ enable_stage1_languages enable_objc_gc with_build_sysroot with_debug_prefix_map -enable_bootstrap with_build_config enable_serial_configure with_build_time_tools @@ -1464,7 +1466,10 @@ Optional Features: --enable-libssp build libssp directory --enable-static-libjava[=ARG] build static libjava [default=no] + --enable-bootstrap enable bootstrapping [yes if native build] --enable-build-with-cxx build with C++ compiler instead of C compiler + --enable-build-poststage1-with-cxx + build stages 2 and 3 with C++, not C --disable-ppl-version-check disable check for PPL version --enable-cloog-backend[=BACKEND] @@ -1478,7 +1483,6 @@ Optional Features: Mostly useful for compiler development --enable-objc-gc enable use of Boehm's garbage collector with the GNU Objective-C runtime - --enable-bootstrap enable bootstrapping [yes if native build] --enable-serial-[{host,target,build}-]configure force sequential configuration of sub-packages for the host, target or build machine, or all @@ -3580,7 +3584,7 @@ case "${target}" in fi ;; tic6x-*-*) - noconfigdirs="$noconfigdirs gdb sim" + noconfigdirs="$noconfigdirs sim" ;; tilepro-*-* | tilegx-*-*) noconfigdirs="$noconfigdirs sim" @@ -4979,6 +4983,53 @@ do_compare="$gcc_cv_prog_cmp_skip" +# Check whether --enable-bootstrap was given. +if test "${enable_bootstrap+set}" = set; then : + enableval=$enable_bootstrap; +else + enable_bootstrap=default +fi + + +# Issue errors and warnings for invalid/strange bootstrap combinations. +if test -r $srcdir/gcc/configure; then + have_compiler=yes +else + have_compiler=no +fi + +case "$have_compiler:$host:$target:$enable_bootstrap" in + *:*:*:no) ;; + + # Default behavior. Enable bootstrap if we have a compiler + # and we are in a native configuration. + yes:$build:$build:default) + enable_bootstrap=yes ;; + + *:*:*:default) + enable_bootstrap=no ;; + + # We have a compiler and we are in a native configuration, bootstrap is ok + yes:$build:$build:yes) + ;; + + # Other configurations, but we have a compiler. Assume the user knows + # what he's doing. + yes:*:*:yes) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: trying to bootstrap a cross compiler" >&5 +$as_echo "$as_me: WARNING: trying to bootstrap a cross compiler" >&2;} + ;; + + # No compiler: if they passed --enable-bootstrap explicitly, fail + no:*:*:yes) + as_fn_error "cannot bootstrap without a compiler" "$LINENO" 5 ;; + + # Fail if wrong command line + *) + as_fn_error "invalid option for --enable-bootstrap" "$LINENO" 5 + ;; +esac + # See if we are building gcc with C++. # Check whether --enable-build-with-cxx was given. if test "${enable_build_with_cxx+set}" = set; then : @@ -4988,6 +5039,15 @@ else fi +# Build stage1 with C and build stages 2 and 3 with C++. +# Check whether --enable-build-poststage1-with-cxx was given. +if test "${enable_build_poststage1_with_cxx+set}" = set; then : + enableval=$enable_build_poststage1_with_cxx; ENABLE_BUILD_POSTSTAGE1_WITH_CXX=$enableval +else + ENABLE_BUILD_POSTSTAGE1_WITH_CXX=yes +fi + + # Used for setting $lt_cv_objdir { $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5 $as_echo_n "checking for objdir... " >&6; } @@ -6009,7 +6069,7 @@ fi target_elf=no case $target in *-darwin* | *-aix* | *-cygwin* | *-mingw* | *-aout* | *-*coff* | \ - *-msdosdjgpp* | *-netware* | *-vms* | *-wince* | *-*-pe* | \ + *-msdosdjgpp* | *-vms* | *-wince* | *-*-pe* | \ alpha*-dec-osf* | *-interix* | hppa[12]*-*-hpux*) target_elf=no ;; @@ -6092,6 +6152,19 @@ if test -d ${srcdir}/gcc; then ;; esac + # If bootstrapping, then using --enable-build-with-cxx or + # --enable-build-poststage1-with-cxx requires enabling C++. + case ",$enable_languages,:,$ENABLE_BUILD_WITH_CXX,$ENABLE_BUILD_POSTSTAGE1_WITH_CXX,:$enable_bootstrap" in + *,c++,*:*:*) ;; + *:*,yes,*:yes) + if test -f ${srcdir}/gcc/cp/config-lang.in; then + enable_languages="${enable_languages},c++" + else + as_fn_error "bootstrapping with --enable-build-with-cxx or --enable-build-poststage1-with-cxx requires c++ sources" "$LINENO" 5 + fi + ;; + esac + # First scan to see if an enabled language requires some other language. # We assume that a given config-lang.in will list all the language # front ends it requires, even if some are required indirectly. @@ -6181,9 +6254,11 @@ if test -d ${srcdir}/gcc; then exit 1 fi - if test "$language" = "c++" \ - && test "$ENABLE_BUILD_WITH_CXX" = "yes"; then - boot_language=yes + if test "$language" = "c++"; then + if test "$ENABLE_BUILD_WITH_CXX" = "yes" \ + || test "$ENABLE_BUILD_POSTSTAGE1_WITH_CXX" = "yes"; then + boot_language=yes + fi fi case ,${enable_languages}, in @@ -6891,59 +6966,6 @@ INSTALL_GDB_TK=`echo ${GDB_TK} | sed s/-all-/-install-/g` # 99 commands in a script, for HP-UX sed. # Do not nest @if/@endif pairs, because configure will not warn you at all. -# Check whether --enable-bootstrap was given. -if test "${enable_bootstrap+set}" = set; then : - enableval=$enable_bootstrap; -else - enable_bootstrap=default -fi - - -# 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. Enable bootstrap if we have a compiler - # and we are in a native configuration. - yes:$build:$build:default) - enable_bootstrap=yes ;; - - *:*:*:default) - enable_bootstrap=no ;; - - # We have a compiler and we are in a native configuration, bootstrap is ok - yes:$build:$build:yes) - ;; - - # Other configurations, but we have a compiler. Assume the user knows - # what he's doing. - yes:*:*:yes) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: trying to bootstrap a cross compiler" >&5 -$as_echo "$as_me: WARNING: trying to bootstrap a cross compiler" >&2;} - ;; - - # No compiler: if they passed --enable-bootstrap explicitly, fail - no:*:*:yes) - as_fn_error "cannot bootstrap without a compiler" "$LINENO" 5 ;; - - # Fail if wrong command line - *) - as_fn_error "invalid option for --enable-bootstrap" "$LINENO" 5 - ;; -esac - -case ",$enable_languages,:$ENABLE_BUILD_WITH_CXX:$enable_bootstrap" in - *,c++,*:yes:yes) ;; - *:yes:yes) - as_fn_error "bootstrapping with --enable-build-with-cxx requires c++ in --enable-languages" "$LINENO" 5 - ;; -esac - case "$enable_bootstrap:$ENABLE_GOLD: $configdirs :,$stage1_languages," in yes:yes:*\ gold\ *:*,c++,*) ;; yes:yes:*\ gold\ *:*) @@ -13990,6 +14012,15 @@ case ${enable_werror} in esac +# If using ENABLE_BUILD_POSTSTAGE1_WITH_CXX, pass +# --enable-build-with-cxx after stage1. +if test "$ENABLE_BUILD_POSTSTAGE1_WITH_CXX" = "yes"; then + POSTSTAGE1_CONFIGURE_FLAGS=--enable-build-with-cxx +else + POSTSTAGE1_CONFIGURE_FLAGS= +fi + + # Specify what files to not compare during bootstrap. compare_exclusions="gcc/cc*-checksum\$(objext) | gcc/ada/*tools/*"