-/* $Id$
-
-This file is part of builder
-Copyright © 2007 Mikko Rasa, Mikkosoft Productions
-Distributed under the LGPL
-*/
-
#ifndef BINARYPACKAGE_H_
#define BINARYPACKAGE_H_
class BinaryPackage: public Package
{
public:
- class Loader: public Package::Loader
+ class Loader: public Msp::DataFile::DerivedObjectLoader<BinaryPackage, Package>
{
public:
Loader(BinaryPackage &);
- BinaryPackage &get_object() { return static_cast<BinaryPackage &>(pkg); }
private:
void build_info();
};
+private:
+ bool need_path;
+ Msp::FS::Path path;
+
+public:
BinaryPackage(Builder &, const std::string &);
- void set_path(const Msp::Path &);
+
+ /**
+ Sets the path where the package's files were installed. This is only useful
+ if the package doesn't use pkg-config.
+ */
+ void set_path(const Msp::FS::Path &);
+
bool get_need_path() const { return need_path; }
- static BinaryPackage *from_pkgconfig(Builder &, const std::string &);
+ static BinaryPackage *from_flags(Builder &, const std::string &, const std::vector<std::string> &);
private:
- bool need_path;
- Msp::Path path;
-
virtual void create_build_info();
};