summaryrefslogtreecommitdiffabout
path: root/lib/component_factory.cc
Side-by-side diff
Diffstat (limited to 'lib/component_factory.cc') (more/less context) (ignore whitespace changes)
-rw-r--r--lib/component_factory.cc8
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/component_factory.cc b/lib/component_factory.cc
index 2a2eefe..5c18bb7 100644
--- a/lib/component_factory.cc
+++ b/lib/component_factory.cc
@@ -73,12 +73,13 @@ namespace sitecing {
while(!ancestors.eof()) {
ancestors >> str;
if(!str.empty())
deps.push_back(root_intermediate+str+".classname");
}
}
+ // XXX: intermediate_deps should be broken down
config_options *co_intermediate_deps = config.lookup_config(nos,config_options::flag_intermediate_deps);
if(co_intermediate_deps) {
for(list<string>::const_iterator i=co_intermediate_deps->intermediate_deps.begin();i!=co_intermediate_deps->intermediate_deps.end();++i)
deps.push_back(*i);
}
return;
@@ -98,13 +99,18 @@ namespace sitecing {
df >> str;
if(str.find_first_of("\\:")==string::npos)
deps.push_back(combine_path(config.root_source+nos,str));
}
}
}
- // XXX: extra deps like IntermediateDeps?
+ // XXX: intermediate_deps should be broken down
+ config_options *co_intermediate_deps = config.lookup_config(nos,config_options::flag_intermediate_deps);
+ if(co_intermediate_deps) {
+ for(list<string>::const_iterator i=co_intermediate_deps->intermediate_deps.begin();i!=co_intermediate_deps->intermediate_deps.end();++i)
+ deps.push_back(*i);
+ }
}catch(utility_no_suffix& uns) { }
}
}catch(utility_no_prefix& unp) { }
}
bool component_factory::is_uptodate(const string& dst,file_list_t *deps) {