Boost logo

Boost-Build :

Subject: [Boost-build] [headers] some weird issues with hardlinks
From: Raffi Enficiaud (raffi.enficiaud_at_[hidden])
Date: 2015-10-10 08:43:57


Hi all,

I have just deployed a private build agent for testing boost.test. I
have a problem with one of the headers not showing up.

The build I am making is just this

- checkout boost[develop]
- checkout boost.test[specificbranch]
- run b2 headers
- run b2 on boost.test regression
- rmdir /s boost folder
- rmdir /s bin.v2

The trace of the error is shown below: the header
"boost/utility/detail/result_of_iterate.hpp" is not there, only on Win7.
It works well for the other targets (OSX + Linux).

The funny thing is that when I run "b2 headers" from a command line, the
header is in the right place.

The questions are:
- Am I doing things right? I thought that running b2 headers is
sufficient for having everything under $BOOST_ROOT/boost in the right
place. Am I missing something?
- what makes b2 think that something has to be copied or not? I can see
in the logs hardlinks created "on demand", while I thought that running
"b2 headers" should create all those links already.
- is there a way to avoid the creation of hard links (just a copy would
do)? or to avoid the economic approach where they are created on demand?

The full log is located here: http://pastebin.com/raw.php?i=cgWBxhgS

Thanks!
Raffi

----------------------------

common.mkdir ..\..\..\bin.v2\libs\test\test\token_iterator-test.test
common.mkdir
..\..\..\bin.v2\libs\test\test\token_iterator-test.test\msvc-12.0
common.mkdir
..\..\..\bin.v2\libs\test\test\token_iterator-test.test\msvc-12.0\debug
common.mkdir
..\..\..\bin.v2\libs\test\test\token_iterator-test.test\msvc-12.0\debug\threading-multi
common.mkdir
..\..\..\bin.v2\libs\test\test\token_iterator-test.test\msvc-12.0\debug\threading-multi\utils-ts
link.hardlink ..\..\..\boost\utility\result_of.hpp
Hardlink created for ..\..\..\boost\utility\result_of.hpp <<===>>
..\..\utility\include\boost\utility\result_of.hpp
compile-c-c++
..\..\..\bin.v2\libs\test\test\token_iterator-test.test\msvc-12.0\debug\threading-multi\utils-ts\token_iterator-test.obj
token_iterator-test.cpp
D:\bamboo_build_dir\SW-BCB12-JOB1\library\boost/preprocessor/iteration/detail/iter/forward1.hpp(47)
: fatal error C1083: Cannot open include file:
'boost/utility/detail/result_of_iterate.hpp': No such file or directory

     call
"C:\Users\bambooagent\AppData\Local\Temp\b2_msvc_12.0_vcvarsall_x86.cmd"
>nul
cl /Zm800 -nologo
@"..\..\..\bin.v2\libs\test\test\token_iterator-test.test\msvc-12.0\debug\threading-multi\utils-ts\token_iterator-test.obj.rsp"

...failed compile-c-c++
..\..\..\bin.v2\libs\test\test\token_iterator-test.test\msvc-12.0\debug\threading-multi\utils-ts\token_iterator-test.obj...
...skipped
<p..\..\..\bin.v2\libs\test\test\token_iterator-test.test\msvc-12.0\debug\threading-multi>token_iterator-test.exe
for lack of
<p..\..\..\bin.v2\libs\test\test\token_iterator-test.test\msvc-12.0\debug\threading-multi>utils-ts\token_iterator-test.obj...
...skipped
<p..\..\..\bin.v2\libs\test\test\token_iterator-test.test\msvc-12.0\debug\threading-multi>token_iterator-test.run
for lack of
<p..\..\..\bin.v2\libs\test\test\token_iterator-test.test\msvc-12.0\debug\threading-multi>token_iterator-test.exe...


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