StringList argv;
argv.push_back(current_arch->get_tool("CXX"));
argv.push_back("--version");
- cxx_ver=Regex("[0-9]\\.[0-9.]+").match(run_command(argv))[0].str;
- while(!cxx_ver.empty() && !FS::is_dir(FS::Path("/usr/include/c++")/cxx_ver))
+ if(RegMatch m=Regex("[0-9]\\.[0-9.]+").match(run_command(argv)))
{
- string::size_type dot=cxx_ver.rfind('.');
- if(dot==string::npos)
- break;
- cxx_ver.erase(dot);
+ cxx_ver=m[0].str;
+ while(!cxx_ver.empty() && !FS::is_dir(FS::Path("/usr/include/c++")/cxx_ver))
+ {
+ string::size_type dot=cxx_ver.rfind('.');
+ if(dot==string::npos)
+ break;
+ cxx_ver.erase(dot);
+ }
+ if(verbose>=5)
+ IO::print("C++ version is %s\n", cxx_ver);
}
- if(verbose>=5)
- IO::print("C++ version is %s\n", cxx_ver);
+ else
+ cxx_ver="-";
}
string fn=include.substr(1);
syspath.push_back("/usr/include");
else
syspath.push_back("/usr/"+current_arch->get_prefix()+"/include");
- syspath.push_back((FS::Path("/usr/include/c++/")/cxx_ver).str());
+ if(cxx_ver!="-")
+ syspath.push_back((FS::Path("/usr/include/c++/")/cxx_ver).str());
Target *tgt=0;
if(include[0]=='\"')