void FileTarget::touch()
{
mtime = Time::now();
+ signal_bubble_rebuild.emit();
}
void FileTarget::check_rebuild()
if(dep==this)
throw invalid_argument("Target::add_depend");
depends.push_back(dep);
+ dep->signal_bubble_rebuild.connect(sigc::mem_fun(this, &Target::check_rebuild));
}
void Target::prepare()
state = REBUILD;
rebuild_reason = reason;
+ signal_bubble_rebuild.emit();
}
void Target::build_finished(bool /*success*/)
#include <map>
#include <set>
#include <string>
+#include <sigc++/signal.h>
#include <msp/time/timestamp.h>
class Builder;
UPTODATE
};
+public:
+ sigc::signal<void> signal_bubble_rebuild;
+
+protected:
Builder &builder;
const Package *package;
const Component *component;