]> git.tdb.fi Git - builder.git/blobdiff - source/toolchain.h
Update cross prefix for windows architecture
[builder.git] / source / toolchain.h
index 1060e09e559b8ffde1b8c8aa9f5f54f16b4cd567..8449680409884d12d2801dc760212fa70e8db886 100644 (file)
@@ -1,24 +1,32 @@
 #ifndef TOOLCHAIN_H_
 #define TOOLCHAIN_H_
 
+#include <list>
 #include <map>
 #include <string>
 
 class Tool;
 
+/**
+A container for tools.  Performs lookup based on tag or filename extension.
+*/
 class Toolchain
 {
 private:
        typedef std::map<std::string, Tool *> ToolMap;
+       typedef std::list<Toolchain *> ToolchainList;
 
        ToolMap tools;
+       ToolchainList chains;
 
 public:
        ~Toolchain();
 
        void add_tool(Tool *);
-       const Tool &get_tool(const std::string &) const;
-       const Tool *get_tool_for_suffix(const std::string &) const;
+       void add_toolchain(Toolchain *);
+       bool has_tool(const std::string &) const;
+       Tool &get_tool(const std::string &) const;
+       Tool *get_tool_for_suffix(const std::string &, bool = false) const;
 };
 
 #endif