void Binary::collect_build_info(BuildInfo &binfo) const
{
+ vector<const Tool *> tools;
for(ObjectFile *o: objects)
if(const Tool *obj_tool = o->get_tool())
- binfo.update_from(obj_tool->get_build_info());
+ if(!any_equals(tools, obj_tool))
+ tools.push_back(obj_tool);
+ for(const Tool *t: tools)
+ binfo.update_from(t->get_build_info());
Target::collect_build_info(binfo);
if(l.size()>10 && !l.compare(l.size()-10, 10, ".framework"))
continue;
- BuildInfo::LibraryMode libmode = component->get_build_info().get_libmode_for(l);
+ BuildInfo::LibraryMode libmode = binfo.get_libmode_for(l);
Target *lib = builder.get_vfs().find_library(l, binfo.libpath, libmode);
if(lib)
{