+/* $Id$
+
+This file is part of builder
+Copyright © 2006-2007 Mikko Rasa, Mikkosoft Productions
+Distributed under the LGPL
+*/
+
#include <fstream>
#include <iostream>
#include <set>
#include <msp/core/error.h>
#include <msp/core/getopt.h>
-#include <msp/parser/parser.h>
+#include <msp/datafile/parser.h>
#include <msp/path/utils.h>
#include <msp/strings/utils.h>
#include <msp/time/units.h>
#include "pkgconfig.h"
#include "sharedlibrary.h"
#include "systemlibrary.h"
+#include "tarball.h"
#include "unlink.h"
#include "virtualtarget.h"
if(!in)
return -1;
- Parser::Parser parser(in, fn.str());
+ DataFile::Parser parser(in, fn.str());
Loader loader(*this, fn.subpath(0, fn.size()-1));
loader.load(parser);
Target *install=new VirtualTarget(*this, "install");
world->add_depend(install);
+ Target *tarballs=new VirtualTarget(*this, "tarballs");
+ world->add_depend(tarballs);
+
for(PackageMap::iterator i=packages.begin(); i!=packages.end(); ++i)
{
if(!i->second)
PkgConfig *pc=new PkgConfig(*this, *i->second);
install->add_depend(new Install(*this, *i->second, *pc));
}
+
+ tarballs->add_depend(new TarBall(*this, *i->second));
}
// Find dependencies until no new targets are created
world->prepare();
}
+ for(PackageMap::iterator i=packages.begin(); i!=packages.end(); ++i)
+ i->second->get_deps_cache().save();
+
return 0;
}