From 80c59512ea66534456f62cffbd35f440a97b7bf7 Mon Sep 17 00:00:00 2001 From: Bent Bisballe Nyeng Date: Mon, 6 Jan 2025 19:36:23 +0100 Subject: Get rid of (hopefully) the last 'native' dir separators. --- src/rebuild.cc | 5 ++++- src/task.cc | 5 +++-- src/task_fn.cc | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/rebuild.cc b/src/rebuild.cc index 1db5e83..4ca1809 100644 --- a/src/rebuild.cc +++ b/src/rebuild.cc @@ -186,7 +186,10 @@ bool recompileCheck(const ctor::settings& global_settings, int argc, char* argv[ ctor::settings settings{global_settings}; settings.verbose = -1; // Make check completely silent. - settings.builddir += "/ctor"; // override builddir to use ctor subdir + + // override builddir to use ctor subdir + auto ctor_builddir = std::filesystem::path(settings.builddir) / "ctor"; + settings.builddir = ctor_builddir.string(); { std::filesystem::path buildfile = settings.builddir; diff --git a/src/task.cc b/src/task.cc index a9c0fee..cd03fce 100644 --- a/src/task.cc +++ b/src/task.cc @@ -3,7 +3,6 @@ // See accompanying file LICENSE for details. #include "task.h" -#include #include #include #include @@ -46,10 +45,12 @@ int Task::registerDepTasks(const std::vector>& tasks) bool Task::operator==(const std::string& depStr) { + std::filesystem::path generated_output = sourceDir; + generated_output /= target(); return name() == depStr || target() == depStr || - sourceDir + "/" + target() == depStr || + generated_output == depStr || targetFile().string() == depStr ; } diff --git a/src/task_fn.cc b/src/task_fn.cc index 873dc44..1ff72f9 100644 --- a/src/task_fn.cc +++ b/src/task_fn.cc @@ -98,7 +98,7 @@ std::vector TaskFn::depends() const std::string TaskFn::target() const { - return _targetFile; + return _targetFile.string(); } std::filesystem::path TaskFn::targetFile() const -- cgit v1.2.3