X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;ds=sidebyside;f=source%2Fcomponent.cpp;h=07cd6ea5aee874df889e4c34c49c77ae12ae5356;hb=0ac8d6708b8c758fb89d97a0049d4a329990b83b;hp=6272321b56b702b3b730c9ccca53618efab08078;hpb=654de39b62a9a58fd8e1b5a557361d628345788b;p=builder.git diff --git a/source/component.cpp b/source/component.cpp index 6272321..07cd6ea 100644 --- a/source/component.cpp +++ b/source/component.cpp @@ -31,15 +31,6 @@ Component::Component(SourcePackage &p, Type t, const string &n): deflt(true) { } -/** -Tries to resolve all references to packages. -*/ -void Component::resolve_refs() -{ - for(PkgRefList::iterator i=requires.begin(); i!=requires.end(); ++i) - i->resolve(); -} - /** Prepares the build information for building. */ @@ -47,13 +38,8 @@ void Component::create_build_info() { build_info.add(pkg.get_build_info()); - for(PkgRefList::iterator i=requires.begin(); i!=requires.end(); ++i) - { - if(!i->get_package()) - continue; - //i->get_package()->create_build_info(); - build_info.add(i->get_package()->get_exported_binfo()); - } + for(PackageList::iterator i=requires.begin(); i!=requires.end(); ++i) + build_info.add((*i)->get_exported_binfo()); if(type==PROGRAM) { @@ -128,7 +114,7 @@ void Component::create_targets() const else exe=new Executable(builder, *this, objs); - if(&pkg==builder.get_default_package() && deflt) + if(&pkg==builder.get_main_package() && deflt) { def_tgt->add_depend(exe); if(slib) def_tgt->add_depend(slib); @@ -196,7 +182,9 @@ void Component::Loader::source(const string &s) void Component::Loader::require(const string &n) { - comp.requires.push_back(PackageRef(comp.pkg.get_builder(), n)); + Package *req=comp.pkg.get_builder().get_package(n); + if(req) + comp.requires.push_back(req); } void Component::Loader::modular()