- }
-
- list<FileTarget *> results;
- if(type==LIBRARY)
- {
- results.push_back(new SharedLibrary(builder, *this, objs));
- results.push_back(new StaticLibrary(builder, *this, objs));
- }
- else
- results.push_back(new Executable(builder, *this, objs));
-
- for(list<FileTarget *>::const_iterator i=results.begin(); i!=results.end(); ++i)
- {
- if(&pkg==builder.get_main_package() && deflt)
- def_tgt->add_depend(*i);
- else
- world->add_depend(*i);
- if(install)
- inst_list.push_back(*i);
- }
- }
-
- Target *inst_tgt = builder.get_target("install");
- for(list<FileTarget *>::const_iterator i=inst_list.begin(); i!=inst_list.end(); ++i)
- {
- Install *inst = new Install(builder, pkg, **i, inst_loc);
- inst_tgt->add_depend(inst);
-
- if(type==LIBRARY)
- if(SharedLibrary *shlib = dynamic_cast<SharedLibrary *>(*i))
- if(!shlib->get_soname().empty())
- inst_tgt->add_depend(new Symlink(builder, pkg, *inst, shlib->get_name()));