]> git.tdb.fi Git - builder.git/blob - source/pkgconfiggenerator.h
Refactor transitive dependencies to work on all targets
[builder.git] / source / pkgconfiggenerator.h
1 #ifndef PKGCONFIGGENERATOR_H_
2 #define PKGCONFIGGENERATOR_H_
3
4 #include "internaltask.h"
5 #include "tool.h"
6
7 class PkgConfigFile;
8
9 class PkgConfigGenerator: public Tool
10 {
11 private:
12         class Worker: public InternalTask::Worker
13         {
14         private:
15                 const PkgConfigFile ⌖
16
17         public:
18                 Worker(const PkgConfigFile &);
19
20         private:
21                 virtual void main();
22
23                 std::string prefixify(const Msp::FS::Path &, const Msp::FS::Path &);
24         };
25
26 public:
27         PkgConfigGenerator(Builder &);
28
29         virtual Target *create_target(const std::list<Target *> &, const std::string &);
30         virtual Task *run(const Target &) const;
31 };
32
33 #endif