]> git.tdb.fi Git - builder.git/blobdiff - source/sourcepackage.h
Get rid of the install flags, which weren't entirely correct anyway
[builder.git] / source / sourcepackage.h
index cf63b0ecbb8dd1c9960d8563751b966cd31989ea..fa1492d61605862b4eb44f54706f03b229c957ab 100644 (file)
@@ -26,19 +26,13 @@ A package that can be built by Builder.
 class SourcePackage: public Package
 {
 public:
-       enum InstallFlags
+       class Loader: public Msp::DataFile::DerivedObjectLoader<SourcePackage, Package>
        {
-               INCLUDE = 1,
-               BIN = 2,
-               LIB = 4,
-               DATA = 8
-       };
+       private:
+               std::map<std::string, std::string> install_map;
 
-       class Loader: public Package::Loader
-       {
        public:
-               Loader(Package &);
-               SourcePackage &get_object() { return static_cast<SourcePackage &>(pkg); }
+               Loader(SourcePackage &);
        private:
                virtual void finish();
                void feature(const std::string &, const std::string &);
@@ -46,6 +40,7 @@ public:
                void component(const std::string &);
                void condition(const std::string &);
                void build_info();
+               void headers(const std::string &);
                void tarball(const std::string &);
                void tar_file(const std::string &);
        };
@@ -76,10 +71,6 @@ public:
        const BuildInfo &get_exported_binfo() const { return export_binfo; }
        Builder &get_builder() const { return builder; }
 
-       /** Returns a bitmask indicating which kinds of things the components of
-       this package install. */
-       unsigned get_install_flags();
-
        LibMode get_library_mode() const;
        DependencyCache &get_deps_cache() const { return deps_cache; }
        std::string expand_string(const std::string &) const;
@@ -92,6 +83,10 @@ private:
        /** Fills in build info based on configuration.  All required packages must be
        configured when this is called. */
        virtual void create_build_info();
+
+       virtual void create_targets();
+
+       virtual void save_caches();
 };
 
 #endif