2
0
mirror of https://github.com/boostorg/build.git synced 2026-02-22 03:12:16 +00:00

Improve dependency cycle diagnostic message (#114)

Before:
```
error: ./forward ./stage ./stage-proper libs/filesystem/build/stage libs/filesystem/build/stage-dependencies libs/log/build/stage libs/log/build/stage-dependencies libs/filesystem/build/stage
```

After:
```
error: ./forward -> ./stage -> ./stage-proper -> ***libs/filesystem/build/stage*** -> libs/filesystem/build/stage-dependencies -> libs/log/build/stage -> libs/log/build/stage-dependencies -> ***libs/filesystem/build/stage***
```
This commit is contained in:
Nikita Kniazev
2021-12-15 16:21:35 +03:00
committed by GitHub
parent 1998d0656c
commit f10c1d267b

View File

@@ -600,13 +600,21 @@ local rule start-building ( main-target-instance )
local names ;
for local t in $(.targets-being-built) $(main-target-instance)
{
names += [ $(t).full-name ] ;
local name = [ $(t).full-name ] ;
if $(t) = $(main-target-instance)
{
names += ***$(name)*** ;
}
else
{
names += $(name) ;
}
}
import errors ;
errors.error "Recursion in main target references"
: "the following target are being built currently:"
: $(names) ;
: $(names:J=" -> ") ;
}
.targets-being-built += $(main-target-instance) ;
}