6 Component::Component(Package &p, Type t, const string &n):
13 void Component::resolve_refs()
15 for(list<PackageRef>::iterator i=requires.begin(); i!=requires.end(); ++i)
19 void Component::create_build_info()
21 build_info.add(pkg.get_build_info());
23 for(list<PackageRef>::iterator i=requires.begin(); i!=requires.end(); ++i)
27 i->get_package()->create_build_info();
28 build_info.add(i->get_package()->get_exported_binfo());
34 Component::Loader::Loader(Component &c):
37 add("source", &Loader::source);
38 add("install", &Component::install);
39 add("install_headers", &Component::install_headers);
40 add("build_info", &Loader::build_info);
41 add("require", &Loader::require);
44 void Component::Loader::source(const string &s)
46 comp.sources.push_back(comp.pkg.get_source()/s);
49 void Component::Loader::require(const string &n)
51 comp.requires.push_back(PackageRef(comp.pkg.get_builder(), n));
54 void Component::Loader::build_info()
56 load_sub(comp.build_info);