]> git.tdb.fi Git - builder.git/blobdiff - source/component.h
Add a feature for overlay source directories
[builder.git] / source / component.h
index 09767d37437fa8aa4f38a241e2c37a54d13307b8..3a743d0c41987324ab7da79818cab037059984e4 100644 (file)
@@ -28,6 +28,7 @@ public:
                void if_arch(const std::string &);
                void if_feature(const std::string &);
                void install_map();
+               void overlay(const std::string &);
                void require(const std::string &);
                void source(const std::string &);
                void use(const std::string &);
@@ -44,6 +45,7 @@ public:
        };
 
        typedef std::list<Msp::FS::Path> SourceList;
+       typedef std::list<std::string> OverlayList;
        typedef std::list<const Component *> UseList;
 
 protected:
@@ -51,6 +53,7 @@ protected:
        Type type;
        std::string name;
        SourceList sources;
+       OverlayList overlays;
        bool install;
        BuildInfo build_info;
        Package::Requirements requires;
@@ -69,6 +72,8 @@ public:
        directories or individual files. */
        const SourceList &get_sources() const { return sources; }
 
+       const OverlayList &get_overlays() const { return overlays; }
+
 protected:
        /** Returns a list of all source files for the component. */
        SourceList collect_source_files() const;
@@ -89,6 +94,8 @@ public:
 
        const BuildInfo &get_build_info() const { return build_info; }
 
+       BuildInfo get_build_info_for_path(const Msp::FS::Path &) const;
+
        void create_targets() const;
 };