StringList argv;
argv.push_back(get_architecture(arch).get_tool("CXX"));
argv.push_back("--version");
- cxx_ver=Regex(" ([0-9.]+) ").match(run_command(argv))[1].str;
+ cxx_ver=Regex("[0-9]\\.[0-9.]+").match(run_command(argv))[0].str;
while(!cxx_ver.empty() && !exists(Path("/usr/include/c++")/cxx_ver))
{
unsigned dot=cxx_ver.rfind('.');
cout<<"Looking for include "<<fn<<" with path "<<join(path.begin(), path.end())<<'\n';
StringList syspath;
- if(include[0]=='\"')
- syspath.push_back(from);
if(arch=="native")
syspath.push_back("/usr/include");
else
syspath.push_back((Path("/usr/include/c++/")/cxx_ver/fn).str());
Target *tgt=0;
+ if(include[0]=='\"')
+ tgt=get_header(Path(from)/fn);
for(list<string>::const_iterator j=path.begin(); (!tgt && j!=path.end()); ++j)
tgt=get_header(cwd/ *j/fn);
for(list<string>::const_iterator j=syspath.begin(); (!tgt && j!=syspath.end()); ++j)
if(mode!=ALL_STATIC)
{
if(arch=="win32")
+ {
candidates.push_back("lib"+lib+".dll");
+ candidates.push_back(lib+".dll");
+ }
else
candidates.push_back("lib"+lib+".so");
}