summaryrefslogtreecommitdiff
path: root/src/rebuild.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/rebuild.cc')
-rw-r--r--src/rebuild.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/rebuild.cc b/src/rebuild.cc
index d62e998..276947b 100644
--- a/src/rebuild.cc
+++ b/src/rebuild.cc
@@ -14,6 +14,7 @@
#include "configure.h"
#include "ctor.h"
#include "tasks.h"
+#include "task_cc.h"
#include "build.h"
#include "execute.h"
#include "tools.h"
@@ -222,9 +223,10 @@ bool recompileCheck(const ctor::settings& global_settings, int argc, char* argv[
bool reconfigure{false};
for(auto task : tasks)
{
+ auto task_cc = std::dynamic_pointer_cast<TaskCC>(task);
if(task->dirty() &&
- task->source() != "" && // only look at source files
- task->source() != "configuration.cc") // don't reconfigure if only configuration.cc is changed.
+ // don't reconfigure if only configuration.cc is changed.
+ (task_cc && task_cc->sourceFile.string() != "configuration.cc"))
{
reconfigure |= true;
}