diff options
| author | Bent Bisballe Nyeng <deva@aasimon.org> | 2026-01-05 16:47:04 +0100 |
|---|---|---|
| committer | Bent Bisballe Nyeng <deva@aasimon.org> | 2026-01-05 16:47:04 +0100 |
| commit | 5ac072c0f42bf3216d16f177c795e9324bf3c52b (patch) | |
| tree | c6d2e59b0be8119177e37bcf88b0fd39e295d2fe | |
| parent | e4f612979e9361e006f049ff445e9c78497adbbd (diff) | |
Fix missing dirty-checks against objects in ld, so and ar tasks.
| -rw-r--r-- | src/task_ar.cc | 9 | ||||
| -rw-r--r-- | src/task_ld.cc | 9 | ||||
| -rw-r--r-- | src/task_so.cc | 9 |
3 files changed, 27 insertions, 0 deletions
diff --git a/src/task_ar.cc b/src/task_ar.cc index 74ea888..16e0ce8 100644 --- a/src/task_ar.cc +++ b/src/task_ar.cc @@ -72,6 +72,15 @@ bool TaskAR::dirtyInner() } } + auto target_file_time = std::filesystem::last_write_time(targetFile()); + for(const auto& object_file : objectFiles) + { + if(std::filesystem::last_write_time(object_file) > target_file_time) + { + return true; + } + } + return false; } diff --git a/src/task_ld.cc b/src/task_ld.cc index c7014ff..a3f02d1 100644 --- a/src/task_ld.cc +++ b/src/task_ld.cc @@ -78,6 +78,15 @@ bool TaskLD::dirtyInner() } } + auto target_file_time = std::filesystem::last_write_time(targetFile()); + for(const auto& object_file : objectFiles) + { + if(std::filesystem::last_write_time(object_file) > target_file_time) + { + return true; + } + } + return false; } diff --git a/src/task_so.cc b/src/task_so.cc index f922ac3..090105a 100644 --- a/src/task_so.cc +++ b/src/task_so.cc @@ -74,6 +74,15 @@ bool TaskSO::dirtyInner() } } + auto target_file_time = std::filesystem::last_write_time(targetFile()); + for(const auto& object_file : objectFiles) + { + if(std::filesystem::last_write_time(object_file) > target_file_time) + { + return true; + } + } + return false; } |
