On Wed, Jun 20, 2012 at 4:10 PM, Steven Bosscher <stevenb....@gmail.com> wrote:
> On Wed, Jun 20, 2012 at 1:08 AM, Diego Novillo <dnovi...@google.com> wrote:
>> diff --git a/configure.ac b/configure.ac
>> index 071b5e2..2a2a0c6 100644
>> --- a/configure.ac
>> +++ b/configure.ac
>> @@ -1667,7 +1653,7 @@ ACX_ELF_TARGET_IFELSE([# ELF platforms build the 
>> lto-plugin always.
>>  ])
>>
>>
>> -# By default, C is the only stage 1 language.
>> +# By default, C and C++ are the only stage 1 languages.
>>  stage1_languages=,c,
>
> So shouldn't you add c++ here?

If you are not bootstrapping you only need frontends to build target
libraries - unless that includes a C++ library by default no, you only
need a C++ host compiler then.

I think stage1_languages should be empty and Makefile.def should
be properly set-up to add frontends required for required target libraries.

Richard.

>
>>  # Target libraries that we bootstrap.
>> @@ -1705,15 +1691,14 @@ 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 bootstrapping, C++ must be enabled.
>
> Hmn, perhaps I misunderstand, but shouldn't C++ also be enabled if not
> bootstrapping?
>
>
>> +  case ",$enable_languages,:$enable_bootstrap" in
>> +    *,c++,*:*) ;;
>> +    *:yes)
>>       if test -f ${srcdir}/gcc/cp/config-lang.in; then
>>         enable_languages="${enable_languages},c++"
>>       else
>> -        AC_MSG_ERROR([bootstrapping with --enable-build-with-cxx or 
>> --enable-build-poststage1-with-cxx requires c++ sources])
>> +        AC_MSG_ERROR([bootstrapping requires c++ sources])
>>       fi
>>       ;;
>>   esac
>> @@ -1808,10 +1793,7 @@ if test -d ${srcdir}/gcc; then
>>         fi
>>
>>        if test "$language" = "c++"; then
>> -         if test "$ENABLE_BUILD_WITH_CXX" = "yes" \
>> -            || test "$ENABLE_BUILD_POSTSTAGE1_WITH_CXX" = "yes"; then
>> -           boot_language=yes
>> -         fi
>> +         boot_language=yes
>>        fi
>
> This shouldn't be necessary if you add c++ to stage1_languages
>
>>         case ,${enable_languages}, in
>> @@ -3198,26 +3180,6 @@ case $build in
>>     esac ;;
>>  esac
>
>
> You can also remove the lang_requires_boot_languages machinery again.
> It is only used by Go to enable c++ for bootstrapping the Go front
> end, but with c++ enabled by default, there is no need for this hack
> for Go anymore.
>
> Ciao!
> Steven

Reply via email to