I am seeing a problem with v2 that is resulting in two commands to mkdir for the same directory which causes the second to fail since it reports that the directory exists.


$ bjam --version

Boost.Build V2 (Milestone 11)

Boost.Jam 03.1.13


$ bjam -n



...found 7842 targets...

...updating 173 targets...

MkDir1 bin


    mkdir "bin"


MkDir1 bin\gcc-default


    mkdir "bin\gcc-default"


MkDir1 bin\gcc-default\debug


    mkdir "bin\gcc-default\debug"


MkDir1 bin\gcc-default\debug\link-static


    mkdir "bin\gcc-default\debug\link-static"


MkDir1 bin\gcc-default\debug\link-static\runtime-link-static


    mkdir "bin\gcc-default\debug\link-static\runtime-link-static"


MkDir1 bin\gcc-default\debug\link-static\runtime-link-static\threading-multi


    mkdir "bin\gcc-default\debug\link-static\runtime-link-static\threading-multi"


gcc.compile.c++ bin\gcc-default\debug\link-static\runtime-link-static\threading-multi\main.o


    "g++"  -ftemplate-depth-128 -O0 -fno-inline -Wall -g -mthreads  -DDATE_TIME_INLINE -D_WIN32_WINNT=0x0500 -D__USE_W32_SOCKETS -Dcygwin -I"boost\serialization" -I"y:\TOOLS\boost_1_33_1" -I"y:\TOOLS\net-snmp_5_3_1\win32\include" -c -o "bin\gcc-default\debug\link-static\runtime-link-static\threading-multi\main.o" "main.cpp"


MkDir1 y:\ORCLE\DataRecorder\build\dataRecorder\bin


    mkdir "y:\ORCLE\DataRecorder\build\dataRecorder\bin"




The first and last mkdir above appear to be the reason for the problem I am seeing.  If I run the build again after the failure, since the bin dir is now created, it succeeds.


I am using the global build dir feature so that all my build artifacts are in the same tree where I run the bjam exe.


Any help with this matter would be much appreciated.