Boost logo

Boost-Build :

From: Daniel Einspanjer (deinspanjer_at_[hidden])
Date: 2006-01-31 14:01:41


I just got a copy of Boost.Build V2 from CVS HEAD and the msvc 8 toolkit is
now properly autodetected.

Sorry for the bother.

Daniel

"Daniel Einspanjer" <deinspanjer_at_[hidden]> wrote in message
news:f81fa4180601310810h76cbe42fx3d6b7ae119868a9e_at_mail.gmail.com...
I am trying to put together a presentation for our development team to
switch from make to Boost.Build V2. I've been stumbling through the
documentation and trying to search the archives of this mailing list (using
Google queries with site: lists.boost.org) for answers to problems and
concerns I have, but it has been slow going.

I'm working with:
Boost.Build V2 (Milestone 10)
Boost.Jam 03.01.11

My first question I'd like to put to the list is regarding the msvc toolset.
Is it required to set up the msvc 8 environment before running bjam? Looking
at the msvc.jam code and the references to toolkit configuration in the
docs, it seems to me that bjam is supposed to be able to find msvc
installations that follow standard installation paths.

In my sandbox, I have msvc 8 installed, and if I open up a command prompt, I
need to run %VS80COMNTOOLS%vsvars32.bat first.

In my boost-build root, I have a user-config.jam that declares "using msvc
;".

If I try to run bjam before running vsvars32.bat, I get the following
output:
  [C:\src\test]bjam
  warning: toolset msvc initialization: can't find tool cl.exe
  warning: initialized from c:/bin/buildtools/boost-jam\user- config.jam:29
  ...found 32 targets...
  ...updating 4 targets...
  msvc.compile.c++ bin\msvc\debug\test.obj
  '/Zm800' is not recognized as an internal or external command,
  operable program or batch file.
     /Zm800 -nologo -TP /Z7 /Od /Ob0 /EHsc /GR
/MDd -c -Fo"bin\msvc\debug\test.obj" "test.cpp"

If I run bjam after vsvars32.bat then I get:
  [C:\src\test]vs
  Setting environment for using Microsoft Visual Studio 2005 x86 tools.
  [C:\src\test]bjam
  ...found 32 targets...
  ...updating 4 targets...
  msvc.compile.c++ bin\msvc\debug\test.obj
  test.cpp
      call "c:\Program Files\Microsoft Visual Studio 8\VC\bin\vcvars32.bat"
> nul
  cl /Zm800 -nologo -TP /Z7 /Od /Ob0 /EHsc /GR
/MDd -c -Fo"bin\msvc\debug\test.obj" "test.cpp"

I've been trying to reverse engineer the msvc.jam toolkit to understand how
it looks for stuff, and as near as I can tell, it looks for cl.exe in the
path. If it finds it then it will call vcvars32.bat before ever invocation
of cl.exe.

That just seems a bit strange to me. Is there any further documentation on
how bjam is supposed to behave with determining toolset locations?

Daniel Einspanjer

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


Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk