summaryrefslogtreecommitdiff
path: root/src/task_cc.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/task_cc.h')
-rw-r--r--src/task_cc.h21
1 files changed, 12 insertions, 9 deletions
diff --git a/src/task_cc.h b/src/task_cc.h
index c309abd..70bb13c 100644
--- a/src/task_cc.h
+++ b/src/task_cc.h
@@ -10,16 +10,16 @@
#include <future>
#include <filesystem>
-struct BuildConfiguration;
-struct Settings;
-
class TaskCC
: public Task
{
public:
- TaskCC(const BuildConfiguration& config,
- const Settings& settings,
- const std::string& sourceDir, const Source& source);
+ TaskCC(const ctor::build_configuration& config,
+ const ctor::settings& settings,
+ const std::string& sourceDir, const ctor::source& source);
+ virtual ~TaskCC() = default;
+
+ int registerDepTasksInner(const std::set<std::shared_ptr<Task>>& tasks) override;
std::string name() const override;
bool dirtyInner() override;
@@ -30,6 +30,8 @@ public:
std::vector<std::string> depends() const override;
std::string target() const override;
+ std::filesystem::path targetFile() const override;
+
bool derived() const override;
std::string toJSON() const override;
@@ -42,11 +44,12 @@ protected:
std::vector<std::string> getCompilerArgs() const;
std::filesystem::path sourceFile;
- std::filesystem::path targetFile;
+ std::filesystem::path _targetFile;
std::filesystem::path depsFile;
std::filesystem::path flagsFile;
- const BuildConfiguration& config;
- const Settings& settings;
+ const ctor::build_configuration& config;
+ const ctor::settings& settings;
std::filesystem::path sourceDir;
+ const ctor::source& _source;
};