]> git.tdb.fi Git - builder.git/blobdiff - source/package.h
Support for creating .pc files
[builder.git] / source / package.h
index b9807e34634c1380bcf9ab482a8b193e840b1245..52338ccb501d2c38db1d4141bdcca65a53b10bc5 100644 (file)
@@ -23,6 +23,14 @@ NYI).
 class Package
 {
 public:
+       enum InstallFlags
+       {
+               INCLUDE=1,
+               BIN=2,
+               LIB=4,
+               DATA=8
+       };
+
        /// Loads a package from a file.
        class Loader: public Msp::Parser::Loader
        {
@@ -42,6 +50,8 @@ public:
        Package(Builder &, const std::string &, const Msp::Path::Path &);
        void                set_path(const Msp::Path::Path &);
        const std::string   &get_name() const           { return name; }
+       const std::string   &get_version() const        { return version; }
+       const std::string   &get_description() const    { return description; }
        const Msp::Path::Path &get_source() const       { return source; }
        const ComponentList &get_components() const     { return components; }
        bool                get_buildable() const       { return buildable; }
@@ -51,19 +61,13 @@ public:
        const BuildInfo     &get_exported_binfo() const { return export_binfo; }
        Builder             &get_builder() const        { return builder; }
        bool                get_need_path() const       { return need_path; }
+       unsigned            get_install_flags();
+       bool                get_use_pkgconfig() const   { return use_pkgconfig; }
        void                resolve_refs();
        void                configure(const RawOptionMap &, unsigned);
 
        static Package *create(Builder &, const std::string &);
 private:
-       enum InstallFlags
-       {
-               INCLUDE=1,
-               BIN=2,
-               LIB=4,
-               DATA=8
-       };
-       
        Builder       &builder;
        
        std::string   name;
@@ -80,13 +84,13 @@ private:
        Config        config;
        bool          conf_done;
 
+       bool          use_pkgconfig;
        bool          need_path;
        Msp::Path::Path path;
 
        Package(Builder &, const std::string &, const std::vector<std::string> &);
        void     init_config();
        void     create_build_info();
-       unsigned get_install_flags();
 };
 
 #endif