]> git.tdb.fi Git - builder.git/blobdiff - source/binarypackage.cpp
Make install_location a path
[builder.git] / source / binarypackage.cpp
index bc3e5c929ec41af7d6a5b515f2ac2a17501c50b1..b9c558eff44f96a9dcb4f21c0d80c9da8af19036 100644 (file)
@@ -20,24 +20,21 @@ void BinaryPackage::set_path(const FS::Path &p)
 
 void BinaryPackage::create_build_info()
 {
-       for(StringList::iterator i=export_binfo.incpath.begin(); i!=export_binfo.incpath.end(); ++i)
-               if((*i)[0]=='@')
-                       *i = (path/i->substr(1)).str();
+       for(BuildInfo::PathList::iterator i=export_binfo.incpath.begin(); i!=export_binfo.incpath.end(); ++i)
+               if((*i)[0]=="@")
+                       *i = path/i->subpath(1);
 
-       for(StringList::iterator i=export_binfo.libpath.begin(); i!=export_binfo.libpath.end(); ++i)
-               if((*i)[0]=='@')
-                       *i = (path/i->substr(1)).str();
+       for(BuildInfo::PathList::iterator i=export_binfo.libpath.begin(); i!=export_binfo.libpath.end(); ++i)
+               if((*i)[0]=="@")
+                       *i = path/i->subpath(1);
 }
 
-BinaryPackage *BinaryPackage::from_pkgconfig(Builder &builder, const string &name)
+BinaryPackage *BinaryPackage::from_flags(Builder &builder, const string &name, const vector<string> &flags)
 {
-       string info = builder.run_pkgconfig(name, "flags");
-
        BinaryPackage *pkg = new BinaryPackage(builder, name);
        pkg->use_pkgconfig = true;
        BuildInfo &binfo = pkg->export_binfo;
 
-       vector<string> flags = split(info);
        for(vector<string>::const_iterator i=flags.begin(); i!=flags.end(); ++i)
        {
                if(!i->compare(0, 2, "-I"))