[prev in list] [next in list] [prev in thread] [next in thread] 

List:       boost
Subject:    Re: [boost] Windows Regression Runners - Failing on Develop
From:       Peter Dimov via Boost <boost () lists ! boost ! org>
Date:       2023-09-29 16:24:00
Message-ID: 094601d9f2f1$5bc86480$13592d80$ () gmail ! com
[Download RAW message or body]

> Steven Watanabe wrote:
> > When b2 fails to create a symlink it's usually because the header is
> > only included through a macro, and the #include scanner misses it.
> 
> That was my first thought, but it's a normal include:
> 
> https://github.com/boostorg/filesystem/blob/0d58357ab9eeaa6ad064193be
> d7280a894a06726/src/platform_config.hpp#L74
> 
> It might have to do something with the fact that platform_config.hpp
> is in src/; not sure how this gets into the include path.

Here:

https://github.com/boostorg/filesystem/blob/0d58357ab9eeaa6ad064193bed7280a894a06726/config/Jamfile.v2#L40


> https://github.com/boostorg/filesystem/blob/0d58357ab9eeaa6ad064193be
> d7280a894a06726/config/has_bcrypt.cpp#L9
> 
> But boost/winapi/config.hpp is also included directly from the config
> check source:
> 
> https://github.com/boostorg/filesystem/blob/0d58357ab9eeaa6ad064193be
> d7280a894a06726/config/has_bcrypt.cpp#L17C11-L17C34
> 
> so the include scanner must be able to see it anyway.
> 
> boost/winapi is a junction/symlink for me, so it's not the split either.

Further experimentation reveals that the header links are correctly created
when I try to build the has_bcrypt exe directly:

C:\boost-git\develop>rd/s/q boost

C:\boost-git\develop>b2 libs/filesystem/config//has_bcrypt
Performing configuration checks

    - default address-model    : 64-bit (cached) [1]
    - default architecture     : x86 (cached) [1]
    - symlinks supported       : yes (cached)

[1] msvc-14.3
...found 40 targets...
...updating 7 targets...
mklink-or-dir boost
mklink-or-dir boost\predef
symbolic link created for boost\predef <<===>> ..\libs\predef\include\boost\predef
mklink-or-dir boost\winapi
symbolic link created for boost\winapi <<===>> ..\libs\winapi\include\boost\winapi
mklink-or-dir boost\filesystem
symbolic link created for boost\filesystem <<===>> \
..\libs\filesystem\include\boost\filesystem link.mklink boost\config.hpp
symbolic link created for boost\config.hpp <<===>> \
..\libs\config\include\boost\config.hpp mklink-or-dir boost\system
symbolic link created for boost\system <<===>> ..\libs\system\include\boost\system
mklink-or-dir boost\detail
mklink-or-dir boost\config
symbolic link created for boost\config <<===>> ..\libs\config\include\boost\config
link.mklink boost\detail\workaround.hpp
symbolic link created for boost\detail\workaround.hpp <<===>> \
                ..\..\libs\config\include\boost\detail\workaround.hpp
...patience...
link.mklink boost\version.hpp
symbolic link created for boost\version.hpp <<===>> \
..\libs\config\include\boost\version.hpp compile-c-c++ \
bin.v2\libs\filesystem\config\msvc-14.3\debug\threading-multi\has_bcrypt.obj \
has_bcrypt.cpp msvc.link \
                bin.v2\libs\filesystem\config\msvc-14.3\debug\threading-multi\has_bcrypt.exe
                
...updated 13 targets...

So it's only when it's being built by configure.builds:

https://github.com/boostorg/filesystem/blob/0d58357ab9eeaa6ad064193bed7280a894a06726/build/Jamfile.v2#L39


are the headers not being linked.



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


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic