
David Abrahams wrote:
"Hendrik Schober" <SpamTrap@gmx.de> writes:
David Abrahams <dave@boost-consulting.com> wrote:
[...]
Um, what are targets?
Standard build-system-eze for "element of the build dependency graph." These messages are inherited from jam; should we remove them?
I don't think so. But maybe some explanation in the docs (in non-build-system-eze) of what they are would be good.
Why shouldn't the tool output messages in non-build-system-ese? [...]
Oh it should. I didn't say anything against that, did I?
Well, no, but telling you that we found 4471 targets and we're updating 1123 of them has to be more cryptic than helpful!
It gives you an indication that there were errors, so you can look at the log and find where the failures occured. Some of the failing targets would be because something else failed.
Why wouldn't it find 2 of them?
I'm still amazed by this, BTW.
I don't know, offhand. There are diagnostic options in bjam that allow us to find out, but you don't really care, do you? That's why I think we should disable those messages.
Oh, this wasn't an error? Wow, then this should surely made very clear. If a build tool says it can't find/build/update some target, I surely read an error into this message.
I guess you're right; it's an error and should stay. But we should tell you the names of the targets we can't find, right?
It would also be usefil to list the targets that failed to build as a summary without the targets that the failing targets are dependant upon (i.e. don't display the skipped targets in the summary).
I suggest "stage" to be either removed or better explained.
I agree. I think I still don't really understand the differences between stage and install.
A stage is what happens as part of the build process. For example, the GCC build process is split into stages, building a version of the compiler that is then used to build the next stage. For the Boost build process, stage is used to create the libraries only so you can use the headers provided in your Boost distribution. An install is what happend when the build succeeds, allowing you to place the results into a common distribution directory. This will also include other files that are required (e.g. language files). The Boost build process copies the header files into the directory you are installing to as well as building the libraries so that directory is like standard SDK/library distributions. Summing up: use stage if you want to use the headers from the place you extracted Boost to; use install if you want to use the directory where the library files are built to. Reece Haston Dunn Software Engineer, Sophos Web: www.sophos.com Sophos - protecting businesses against viruses and spam