]> git.tdb.fi Git - builder.git/blobdiff - source/pkgconfiggenerator.h
Refactor InternalTask to take a functor
[builder.git] / source / pkgconfiggenerator.h
index a13e588e4d9729a89f9d78f419974898bec47d6c..0f0886b851aa2583176d1499dcb0100d9a058168 100644 (file)
@@ -1,33 +1,21 @@
 #ifndef PKGCONFIGGENERATOR_H_
 #define PKGCONFIGGENERATOR_H_
 
-#include "internaltask.h"
 #include "tool.h"
 
 class PkgConfigFile;
 
 class PkgConfigGenerator: public Tool
 {
-private:
-       class Worker: public InternalTask::Worker
-       {
-       private:
-               const PkgConfigFile ⌖
-
-       public:
-               Worker(const PkgConfigFile &);
-
-       private:
-               void main() override;
-
-               std::string prefixify(const Msp::FS::Path &, const Msp::FS::Path &);
-       };
-
 public:
-       PkgConfigGenerator(Builder &);
+       PkgConfigGenerator(Builder &b): Tool(b, "PCG") { }
 
-       Target *create_target(const std::list<Target *> &, const std::string &) override;
+       Target *create_target(const std::vector<Target *> &, const std::string &) override;
        Task *run(const Target &) const override;
+
+private:
+       static bool _run(const PkgConfigFile &);
+       static std::string prefixify(const Msp::FS::Path &, const Msp::FS::Path &);
 };
 
 #endif