-void Architecture::set_tool(const string &t, const string &p)
-{
- tools[t] = p;
-}
-
-void Architecture::set_cross_prefix(const string &p)
-{
- cross_prefix = p;
-}
-
-std::string Architecture::get_tool(const string &t) const
-{
- StringMap::const_iterator i = tools.find(t);
- if(i!=tools.end())
- {
- if(i->second[0]=='-')
- return cross_prefix+i->second;
- else
- return i->second;
- }
-
- const Architecture &native_arch = builder.get_native_arch();
- if(this!=&native_arch)
- {
- if(!cross_prefix.empty())
- return cross_prefix+"-"+native_arch.get_tool(t);
- else
- return native_arch.get_tool(t);
- }
- else
- throw invalid_argument("Unknown tool");
-}
-