]> git.tdb.fi Git - builder.git/blobdiff - source/builder.h
Replace per-file copyright notices with a single file
[builder.git] / source / builder.h
index 653a81ad22cf51ca83bbced40c0183c991b89947..18f4b52c56dfa744f085d4e3e2eaeb2e486856b4 100644 (file)
@@ -1,10 +1,3 @@
-/* $Id$
-
-This file is part of builder
-Copyright © 2006-2010  Mikko Rasa, Mikkosoft Productions
-Distributed under the LGPL
-*/
-
 #ifndef BUILDER_H_
 #define BUILDER_H_
 
@@ -22,13 +15,15 @@ Distributed under the LGPL
 
 class Analyzer;
 class Config;
+class FileTarget;
 class Package;
 class SourcePackage;
+class VirtualTarget;
 
 /**
 The main application class.  Controls and owns everything.  Rules the world.
 */
-class Builder: public Msp::Application
+class Builder: public Msp::RegisteredApplication<Builder>
 {
 private:
        class Loader: public Msp::DataFile::Loader
@@ -69,6 +64,7 @@ private:
        SourcePackage *main_pkg;
        PathList pkg_path;
        PathList pkg_dirs;
+       bool no_externals;
 
        TargetMap targets;
        TargetList new_tgts;
@@ -98,7 +94,6 @@ private:
        Msp::FS::Path prefix;
        StringList warnings;
 
-       static Msp::Application::RegApp<Builder> reg;
        static std::string usagemsg;
        static std::string helpmsg;
 
@@ -146,7 +141,8 @@ public:
 
        /** Adds a target to both the target map and the new target queue.  Called
        from Target constructor. */
-       void add_target(Target *);
+       void add_target(FileTarget *);
+       void add_target(VirtualTarget *);
 
        void problem(const std::string &, const std::string &);