V2 transition and toolset autoconfiguration

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

V2 transition and toolset autoconfiguration

Vladimir Prus

If we're to try move C++ Boost to V2, then should we implement
autoconfiguration for toolset, and in what form?

Now, if you run "bjam --v2" on a fresh checkout you get a message that no
toolsets are configured. There are two ways around this:

1. Add

          using gcc : auto ;
          using msvc : auto ;

to user config that will configure all toolsets there are, but don't complain
if some toolsets don't exist.

2. Arrange for "bjam --v2 toolset=whatever" to try automatically loading
toolset "whatever" and issuing

    using whatever ;

This, however, still requires user to provide the name of toolset.


Any options?

- Volodya
_______________________________________________
Boost-build mailing list
[hidden email]
http://lists.boost.org/mailman/listinfo.cgi/boost-build
Reply | Threaded
Open this post in threaded view
|

Re: V2 transition and toolset autoconfiguration

David Abrahams
Vladimir Prus <[hidden email]> writes:

> If we're to try move C++ Boost to V2, then should we implement
> autoconfiguration for toolset, and in what form?
>
>
> Now, if you run "bjam --v2" on a fresh checkout you get a message that no
> toolsets are configured. There are two ways around this:
>
> 1. Add
>
>           using gcc : auto ;
>           using msvc : auto ;
>
> to user config that will configure all toolsets there are, but don't complain
> if some toolsets don't exist.
>
> 2. Arrange for "bjam --v2 toolset=whatever" to try automatically loading
> toolset "whatever" and issuing
>
>     using whatever ;
>
> This, however, still requires user to provide the name of toolset.
>
>
> Any options?


  3. "You have no configuration file.  Do you want Boost.Build to try to detect
      the tools you have installed and generate a configuration file? [Y/n]

      ...

      Boost.Build detected the following tools:

        msvc-7.1        (Microsoft Visual C++)
        borland-5.6.4   (Borland C++ Builder)
        gcc-3.4.2       (Cygwin GCC)
        python-2.4      (Python interpreter)

      Which compiler would you like to use as your default compiler? [msvc-7.1]

      Configuration file generated: C:\Documents And Settings\dave\user-config.jam


*** HOWEVER ***

If we have the slightest shred of a hope of making the transition
before the upcoming release, we should -not- try to do this right
now.  It's great functionality to have, but it's not present in v1 and
so should not be required for making this transition.

--
Dave Abrahams
Boost Consulting
www.boost-consulting.com

_______________________________________________
Boost-build mailing list
[hidden email]
http://lists.boost.org/mailman/listinfo.cgi/boost-build
Reply | Threaded
Open this post in threaded view
|

Re: V2 transition and toolset autoconfiguration

Vladimir Prus
On Monday 30 January 2006 22:39, David Abrahams wrote:

> > 1. Add
> >
> >           using gcc : auto ;
> >           using msvc : auto ;
> >
> > to user config that will configure all toolsets there are, but don't
> > complain if some toolsets don't exist.
> >
> > 2. Arrange for "bjam --v2 toolset=whatever" to try automatically loading
> > toolset "whatever" and issuing
> >
> >     using whatever ;
> >
> > This, however, still requires user to provide the name of toolset.
> >
> >
> > Any options?
>
>   3. "You have no configuration file.  Do you want Boost.Build to try to
> detect the tools you have installed and generate a configuration file?
> [Y/n]
>
>       ...
>
>       Boost.Build detected the following tools:
>
>         msvc-7.1        (Microsoft Visual C++)
>         borland-5.6.4   (Borland C++ Builder)
>         gcc-3.4.2       (Cygwin GCC)
>         python-2.4      (Python interpreter)
>
>       Which compiler would you like to use as your default compiler?
> [msvc-7.1]
>
>       Configuration file generated: C:\Documents And
> Settings\dave\user-config.jam
>
>
> *** HOWEVER ***
>
> If we have the slightest shred of a hope of making the transition
> before the upcoming release, we should -not- try to do this right
> now.  It's great functionality to have, but it's not present in v1 and
> so should not be required for making this transition.

But in V1, "-sTOOLS=borland" works without writing any configuration file, so
we'll regress a bit in user-frienliness.

- Volodya


_______________________________________________
Boost-build mailing list
[hidden email]
http://lists.boost.org/mailman/listinfo.cgi/boost-build
Reply | Threaded
Open this post in threaded view
|

Re: V2 transition and toolset autoconfiguration

David Abrahams
Vladimir Prus <[hidden email]> writes:

> On Monday 30 January 2006 22:39, David Abrahams wrote:
>
>> > 1. Add
>> >
>> >           using gcc : auto ;
>> >           using msvc : auto ;
>> >
>> > to user config that will configure all toolsets there are, but don't
>> > complain if some toolsets don't exist.
>> >
>> > 2. Arrange for "bjam --v2 toolset=whatever" to try automatically loading
>> > toolset "whatever" and issuing
>> >
>> >     using whatever ;
>> >
>> > This, however, still requires user to provide the name of toolset.
>> >
>> >
>> > Any options?
>>
>>   3. "You have no configuration file.  Do you want Boost.Build to try to
>> detect the tools you have installed and generate a configuration file?
>> [Y/n]
>
> But in V1, "-sTOOLS=borland" works without writing any configuration file, so
> we'll regress a bit in user-frienliness.

This is a good point.  I agree that we need to support #2.  Writing
xxx-config.jam files needs to be completely optional for the user
who's got things installed in the usual places.  So really, if you
don't specify a toolset and you don't have a configuration file, it
should try to find one and use that.  Similarly for BoostBook, Python,
etc.

I'd be happy to work on this in earnest if anyone wants to
cooperate... finding the time will be... interesting ;^)

--
Dave Abrahams
Boost Consulting
www.boost-consulting.com

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build