|
Boost-Build : |
From: Beman Dawes (bdawes_at_[hidden])
Date: 2002-07-23 06:59:05
At 09:37 PM 7/22/2002, David Abrahams wrote:
>> Any ideas for eliminating this?
>
>Don't put $(BOOST_ROOT) in both your <include> and <sysinclude> paths.
The warning is happening even with tests which don't specify either
<include> or <sysinclude>
For example, for "any" the Jamfile is just:
run libs/any/any_test.cpp ;
Here is the bjam -d2 output for any_test:
gcc-C++-action
..\status\bin\any_test.test\gcc\debug\runtime-link-dynamic\any_test.obj
g++ -c -Wall -ftemplate-depth-100 -g -O0
-fno-inline -I"..\status" -I"C:\boost\site" -I"." -isystem
"C:\boost\site" -o
"..\status\bin\any_test.test\gcc\debug\runtime-link-dynamic\any_test.obj"
"C:\boost\site\libs/any\any_test.cpp"
cc1plus.exe: warning: changing search order for system directory
"C:/boost/site"
cc1plus.exe: warning: as it has already been specified as a non-system
directory
>I'm pretty sure that's the cause of it.
>Are you trying to use #include "..." perchance?
I started to reply "no", which is certainly correct for most Boost tests,
but realized I had no idea what any_test.cpp did, so looked and found:
#include "boost/any.hpp"
#include "test.hpp"
It has been that way since the initial commit.
But most Boost tests use only <...> includes. And all the "run" tests are
getting the warning messages, not just those which happen to use "..."
includes.
Why is the boost root ever specified as what GCC calls a "non-system"
directory? Since the standard specifies that a "..." include which fails
is then treated as a <...> include, it wouldn't seem necessary to specify
the boost root as a "non-system" directory.
--Beman
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