]> git.tdb.fi Git - builder.git/commitdiff
Adapt to changes in msppath
authorMikko Rasa <tdb@tdb.fi>
Sat, 22 Sep 2007 11:41:32 +0000 (11:41 +0000)
committerMikko Rasa <tdb@tdb.fi>
Sat, 22 Sep 2007 11:41:32 +0000 (11:41 +0000)
Some more output for -vvv
Add binary package for ODE

25 files changed:
builderrc
source/analyzer.cpp
source/archive.cpp
source/binarypackage.cpp
source/binarypackage.h
source/builder.cpp
source/builder.h
source/compile.cpp
source/component.cpp
source/config.cpp
source/copy.cpp
source/copy.h
source/dependencycache.cpp
source/executable.cpp
source/install.cpp
source/link.cpp
source/misc.h
source/objectfile.cpp
source/sourcefile.cpp
source/sourcepackage.cpp
source/sourcepackage.h
source/systemlibrary.cpp
source/tar.cpp
source/target.cpp
source/virtualtarget.cpp

index a39a8777c32c44d302a51f099b687998143a2da7..0947330418ba9eb35d829e45df795fa063bbbee5 100644 (file)
--- a/builderrc
+++ b/builderrc
@@ -35,6 +35,14 @@ binary_package "fmod4"
        need_path true;
 };
 
+binary_package "ode"
+{
+       build_info
+       {
+               library "ode";
+       };
+};
+
 binary_package "xlib"
 {
        build_info
index 0db55c76b637942ba997bff9b2ee90d05237e58b..f694edb96198494aadcceeb258950417bb708c90 100644 (file)
@@ -9,6 +9,7 @@ Distributed under the LGPL
 #include <iostream>
 #include <sstream>
 #include <msp/path/path.h>
+#include <msp/path/utils.h>
 #include "analyzer.h"
 #include "builder.h"
 #include "install.h"
@@ -70,7 +71,7 @@ void Analyzer::build_depend_table(Target &tgt, unsigned depth)
        if(full_paths)
                fn=tgt.get_name();
        else
-               fn=Path::Path(tgt.get_name())[-1];
+               fn=basename(tgt.get_name());
        row.push_back(string(depth*2, ' ')+fn);
 
        const Package *pkg=tgt.get_package();
index a7b86c7cc4b945769fc82f404ea0f8de61ee799a..70d63632824b1e8accf6bd5e54c135877c76d1ea 100644 (file)
@@ -31,9 +31,9 @@ Archive::Archive(Builder &b, const StaticLibrary &lib):
                if(dynamic_cast<ObjectFile *>(*i))
                        argv.push_back((*i)->get_name());
 
-       Path::Path lpath=lib.get_name();
+       Path lpath=lib.get_name();
        if(!builder.get_dry_run())
-               Path::mkpath(lpath.subpath(0, lpath.size()-1), 0755);
+               mkpath(lpath.subpath(0, lpath.size()-1), 0755);
 
        announce(comp.get_package().get_name(), tool, relative(lpath, comp.get_package().get_source()).str());
 
index c2c18867018abc32d8dd9f81c2e53e38c0d18fea..aaeb3e556ab02a92b305fe4434696e1fd2095233 100644 (file)
@@ -5,6 +5,7 @@ Copyright © 2007  Mikko Rasa, Mikkosoft Productions
 Distributed under the LGPL
 */
 
+#include <iostream>
 #include <msp/strings/utils.h>
 #include "binarypackage.h"
 #include "builder.h"
@@ -23,7 +24,7 @@ BinaryPackage::BinaryPackage(Builder &b, const string &n):
 Sets the path where the package files were installed.  This is only useful if
 the package doesn't use pkg-config.
 */
-void BinaryPackage::set_path(const Msp::Path::Path &p)
+void BinaryPackage::set_path(const Msp::Path &p)
 {
        path=builder.get_cwd()/p;
 }
@@ -47,6 +48,8 @@ BinaryPackage *BinaryPackage::from_pkgconfig(Builder &builder, const string &nam
        argv.push_back("--cflags");
        argv.push_back("--libs");
        argv.push_back(name);
+       if(builder.get_verbose()>=4)
+               cout<<"Running "<<join(argv.begin(), argv.end())<<'\n';
        string info=run_command(argv);
 
        if(info.empty())
index b10331b27cec63731c076ad4a0db06e6611b9001..0be063393107915c0c97aaafa6d5cf56c7ac854e 100644 (file)
@@ -27,13 +27,13 @@ public:
        };
 
        BinaryPackage(Builder &, const std::string &);
-       void set_path(const Msp::Path::Path &);
+       void set_path(const Msp::Path &);
        bool get_need_path() const { return need_path; }
 
        static BinaryPackage *from_pkgconfig(Builder &, const std::string &);
 private:
        bool need_path;
-       Msp::Path::Path path;
+       Msp::Path path;
 
        virtual void create_build_info();
 };
index 2ef5a709e1913d33cae79f1677ce1b21290d1cee..34c65af48be88df4d0be392b9735bad57472a3ea 100644 (file)
@@ -113,7 +113,7 @@ Builder::Builder(int argc, char **argv):
        if(!work_dir.empty())
                chdir(work_dir.c_str());
 
-       cwd=Path::getcwd();
+       cwd=getcwd();
 
        Architecture &native_arch=archs.insert(ArchMap::value_type("native", Architecture(*this, "native"))).first->second;
        native_arch.set_tool("CC",  "gcc");
@@ -124,7 +124,7 @@ Builder::Builder(int argc, char **argv):
 
        const char *home=getenv("HOME");
        if(home)
-               load_build_file((Path::Path(home)/".builderrc").str());
+               load_build_file((Path(home)/".builderrc").str());
 }
 
 /**
@@ -145,6 +145,8 @@ Package *Builder::get_package(const string &n)
        argv.push_back("pkg-config");
        argv.push_back("--variable=source");
        argv.push_back(n);
+       if(verbose>=4)
+               cout<<"Running "<<join(argv.begin(), argv.end())<<'\n';
        string srcdir=strip(run_command(argv));
 
        PathList dirs;
@@ -210,12 +212,12 @@ Target *Builder::get_header(const string &include, const string &, const string
 
        string fn=include.substr(1);
        Target *tgt=0;
-       if(include[0]=='"' && (tgt=get_header(Path::Path(from)/fn)))
+       if(include[0]=='"' && (tgt=get_header(Path(from)/fn)))
                ;
-       else if((tgt=get_header(Path::Path("/usr/include")/fn)))
+       else if((tgt=get_header(Path("/usr/include")/fn)))
                ;
        //XXX Determine the C++ header location dynamically
-       else if((tgt=get_header(Path::Path("/usr/include/c++/4.1.2")/fn)))
+       else if((tgt=get_header(Path("/usr/include/c++/4.1.2")/fn)))
                ;
        else
        {
@@ -442,7 +444,7 @@ Loads the given build file.
 
 @return  0 on success, -1 if the file could not be opened
 */
-int Builder::load_build_file(const Path::Path &fn)
+int Builder::load_build_file(const Path &fn)
 {
        ifstream in(fn.str().c_str());
        if(!in)
@@ -559,12 +561,12 @@ int Builder::create_targets()
 Check if a header exists, either as a target or a file.  Either an existing
 target or a new SystemHeader target will be returned.
 */
-Target *Builder::get_header(const Msp::Path::Path &fn)
+Target *Builder::get_header(const Msp::Path &fn)
 {
        Target *tgt=get_target(fn.str());
        if(tgt) return tgt;
 
-       if(Path::exists(fn))
+       if(exists(fn))
        {
                tgt=new SystemHeader(*this, fn.str());
                return tgt;
@@ -572,7 +574,7 @@ Target *Builder::get_header(const Msp::Path::Path &fn)
        return 0;
 }
 
-Target *Builder::get_library(const string &lib, const string &arch, const Path::Path &path, LibMode mode)
+Target *Builder::get_library(const string &lib, const string &arch, const Path &path, LibMode mode)
 {
        // Populate a list of candidate filenames
        StringList candidates;
@@ -609,7 +611,7 @@ Target *Builder::get_library(const string &lib, const string &arch, const Path::
                        else if(tgt)
                                return tgt;
                }
-               else if(Path::exists(full))
+               else if(exists(full))
                {
                        tgt=new SystemLibrary(*this, full);
                        return tgt;
@@ -767,7 +769,7 @@ void Builder::package_help()
 Application::RegApp<Builder> Builder::reg;
 
 
-Builder::Loader::Loader(Builder &b, const Path::Path &s):
+Builder::Loader::Loader(Builder &b, const Path &s):
        bld(b),
        src(s)
 {
index 7036efd7238eea0891a5516a616eacf7619c9fa8..42ddcc43b25ba31c60f5a138694607c2f884f332 100644 (file)
@@ -41,7 +41,7 @@ public:
        const TargetMap &get_targets() const { return targets; }
        Target   *get_header(const std::string &, const std::string &, const std::string &, const StringList &);
        Target   *get_library(const std::string &, const std::string &, const StringList &, LibMode);
-       const Msp::Path::Path &get_cwd() const { return cwd; }
+       const Msp::Path &get_cwd() const { return cwd; }
        const Architecture &get_architecture(const std::string &) const;
        void     apply_profile_template(Config &, const std::string &) const;
        void     add_target(Target *);
@@ -54,10 +54,10 @@ private:
        class Loader: public Msp::DataFile::Loader
        {
        public:
-               Loader(Builder &, const Msp::Path::Path &);
+               Loader(Builder &, const Msp::Path &);
        private:
                Builder         &bld;
-               Msp::Path::Path src;
+               Msp::Path src;
 
                void architecture(const std::string &);
                void binpkg(const std::string &);
@@ -81,7 +81,7 @@ private:
 
        StringList   cmdline_targets;
        StringMap    cmdline_options;
-       Msp::Path::Path cwd;
+       Msp::Path cwd;
 
        PackageMap   packages;
        SourcePackage *main_pkg;
@@ -110,10 +110,10 @@ private:
        bool            build_all;
        bool            create_makefile;
 
-       int    load_build_file(const Msp::Path::Path &);
+       int    load_build_file(const Msp::Path &);
        int    create_targets();
-       Target *get_header(const Msp::Path::Path &);
-       Target *get_library(const std::string &, const std::string &, const Msp::Path::Path &, LibMode);
+       Target *get_header(const Msp::Path &);
+       Target *get_library(const std::string &, const std::string &, const Msp::Path &, LibMode);
        void   update_hash(std::string &, const std::string &);
        int    do_build();
        int    do_clean();
index 61b17ad90807c65b0c85c649fbabe7c31a5cc6cc..44d4d6255fe1c2d57caea506e6d00809d7fce541 100644 (file)
@@ -22,9 +22,9 @@ Compile::Compile(Builder &b, const ObjectFile &obj):
        const Component &comp=obj.get_component();
 
        const TargetList &deps=obj.get_depends();
-       Path::Path spath=deps.front()->get_name();
+       Path spath=deps.front()->get_name();
 
-       string ext=Path::splitext(spath.str()).ext;
+       string ext=splitext(spath.str()).ext;
        const char *tool=0;
        if(ext==".cpp" || ext==".cc")
                tool="CXX";
@@ -42,13 +42,13 @@ Compile::Compile(Builder &b, const ObjectFile &obj):
        for(list<string>::const_iterator i=binfo.defines.begin(); i!=binfo.defines.end(); ++i)
                argv.push_back("-D"+*i);
 
-       Path::Path opath=obj.get_name();
+       Path opath=obj.get_name();
        argv.push_back("-o");
        argv.push_back(opath.str());
        argv.push_back(spath.str());
 
        if(!builder.get_dry_run())
-               Path::mkpath(opath.subpath(0, opath.size()-1), 0755);
+               mkpath(opath.subpath(0, opath.size()-1), 0755);
 
        announce(comp.get_package().get_name(), tool, relative(opath, comp.get_package().get_source()).str());
 
index 07cd6ea5aee874df889e4c34c49c77ae12ae5356..f4e8fc2ee734f11e3306b38a03a60e7309d8a027 100644 (file)
@@ -81,7 +81,7 @@ void Component::create_targets() const
        for(PathList::const_iterator i=files.begin(); i!=files.end(); ++i)
        {
                string basename=(*i)[-1];
-               string ext=Path::splitext(basename).ext;
+               string ext=splitext(basename).ext;
                if((ext==".cpp" || ext==".c") && build_exe)
                {
                        SourceFile *src=new SourceFile(builder, this, i->str());
@@ -146,8 +146,7 @@ PathList Component::collect_source_files() const
        PathList files;
        for(PathList::const_iterator i=sources.begin(); i!=sources.end(); ++i)
        {
-               struct stat st;
-               stat(*i, st);
+               struct stat st=stat(*i);
                if(S_ISDIR(st.st_mode))
                {
                        list<string> sfiles=list_files(*i);
index 0e8e6c2c742c29ea52ee887aed7b04f5472b0427..482ceb862512e8316b51a289abaed8b734f20f91 100644 (file)
@@ -171,7 +171,7 @@ void Config::finish()
 
 void Config::save() const
 {
-       Path::Path fn=package.get_source()/".options.cache";
+       Path fn=package.get_source()/".options.cache";
 
        OptionMap::const_iterator i=options.find("profile");
        if(i!=options.end())
@@ -201,7 +201,7 @@ bool Config::set_option(const string &opt, const string &val)
 
 void Config::load()
 {
-       Path::Path fn=package.get_source()/".options.cache";
+       Path fn=package.get_source()/".options.cache";
 
        OptionMap::iterator i=options.find("profile");
        if(i!=options.end())
@@ -210,9 +210,7 @@ void Config::load()
        ifstream in(fn.str().c_str());
        if(!in) return;
 
-       struct stat st;
-       Path::stat(fn, st);
-       mtime=Time::TimeStamp::from_unixtime(st.st_mtime);
+       mtime=Time::TimeStamp::from_unixtime(stat(fn).st_mtime);
 
        DataFile::Parser parser(in, fn.str());
        Loader loader(*this);
index eea40fcdae6eda6f63dc30f09988736fa88a7fbc..bdcd0a94a8006ec108c31ecfbea5e3ce7d4d97bc 100644 (file)
@@ -16,7 +16,7 @@ Distributed under the LGPL
 using namespace std;
 using namespace Msp;
 
-Copy::Copy(Builder &b, const Package &pkg, const Path::Path &s, const Path::Path &d):
+Copy::Copy(Builder &b, const Package &pkg, const Path &s, const Path &d):
        InternalAction(b),
        src(s),
        dest(d)
@@ -38,15 +38,21 @@ Copy::Worker::Worker(Copy &c):
 
 void Copy::Worker::main()
 {
-       Path::mkpath(copy.dest.subpath(0, copy.dest.size()-1), 0755);
+       mkpath(copy.dest.subpath(0, copy.dest.size()-1), 0755);
 
-       // Remove old file.  Not doing this would cause Bad Stuff when installing libraries.
-       if(unlink(copy.dest.str().c_str())<0 && errno!=ENOENT)
+       try
        {
-               int err=errno;
-               cerr<<"Can't unlink "<<copy.dest<<": "<<strerror(err)<<'\n';
-               done=error=true;
-               return;
+               // Remove old file.  Not doing this would cause Bad Stuff when installing libraries.
+               unlink(copy.dest);
+       }
+       catch(const SystemError &e)
+       {
+               if(e.get_error_code()!=ENOENT)
+               {
+                       cerr<<e.what()<<'\n';
+                       done=error=true;
+                       return;
+               }
        }
 
        ifstream in(copy.src.str().c_str());
@@ -74,8 +80,7 @@ void Copy::Worker::main()
        }
 
        // Preserve file permissions
-       struct stat st;
-       Path::stat(copy.src, st);
+       struct stat st=stat(copy.src);
        chmod(copy.dest.str().c_str(), st.st_mode&0777);
 
        done=true;
index 0a03ae6d2c12edb081b338b8820ae97623c81486..deb60209b7cbc4b3ab4aa551fe60c2d2318355ce 100644 (file)
@@ -20,7 +20,7 @@ Copies a file to another place.  Used by the Install target.
 class Copy: public InternalAction
 {
 public:
-       Copy(Builder &, const Package &, const Msp::Path::Path &, const Msp::Path::Path &);
+       Copy(Builder &, const Package &, const Msp::Path &, const Msp::Path &);
 private:
        /**
        A worker thread that actually does the data transfer.
@@ -35,8 +35,8 @@ private:
                void main();
        };
 
-       Msp::Path::Path src;
-       Msp::Path::Path dest;
+       Msp::Path src;
+       Msp::Path dest;
 };
 
 #endif
index 0d82d7027baffc66aba49611cfd026c554a7544c..85ed4fd656b20a74746e0513d7dd11e13c2ad365 100644 (file)
@@ -73,7 +73,5 @@ void DependencyCache::load()
                deps[parts[0]]=StringList(parts.begin()+1, parts.end());
        }
 
-       struct stat st;
-       Path::stat(fn, st);
-       mtime=Time::TimeStamp::from_unixtime(st.st_mtime);
+       mtime=Time::TimeStamp::from_unixtime(stat(fn).st_mtime);
 }
index 0cae259f8b7b755bf74da0913a516ecafbd7d09a..076728c833ae81c5f2a35d0f9035f84406b3f098 100644 (file)
@@ -60,7 +60,7 @@ void Executable::find_depends()
                                        queue.push_back(&stlib->get_component());
                        }
                        else
-                               builder.problem(comp.get_package().get_name(), format("Couldn't find library %s for %s", *i, Path::basename(name)));
+                               builder.problem(comp.get_package().get_name(), format("Couldn't find library %s for %s", *i, basename(name)));
                }
        }
 
index 2cdd1aa1a4a959c6f34f754a273a8b9ffbf5497b..c26024a801874328f61e755144d59fc30f0bfc7e 100644 (file)
@@ -33,9 +33,9 @@ void Install::check_rebuild()
        {
                Target *dep=depends.front();
                if(dep->get_mtime()>mtime)
-                       mark_rebuild(Path::basename(dep->get_name())+" has changed");
+                       mark_rebuild(basename(dep->get_name())+" has changed");
                else if(dep->get_rebuild())
-                       mark_rebuild(Path::basename(dep->get_name())+" needs rebuilding");
+                       mark_rebuild(basename(dep->get_name())+" needs rebuilding");
        }
 }
 
@@ -48,7 +48,7 @@ string Install::generate_target_name(const Target &tgt)
 {
        const SourcePackage *spkg=dynamic_cast<const SourcePackage *>(tgt.get_package());
 
-       Path::Path base=spkg->get_prefix();
+       Path base=spkg->get_prefix();
        string tgtname=tgt.get_name().substr(tgt.get_name().rfind('/')+1);
 
        string mid;
index 88ee97a8595e1c5668f2e712b150ae6c895271ac..14a7d46df7bd77749427c3793c71239c6b8b4bd1 100644 (file)
@@ -59,9 +59,9 @@ Link::Link(Builder &b, const Executable &exe):
                        argv.push_back("-l"+syslib->get_libname());
        }
 
-       Path::Path epath=exe.get_name();
+       Path epath=exe.get_name();
        if(!builder.get_dry_run())
-               Path::mkpath(epath.subpath(0, epath.size()-1), 0755);
+               mkpath(epath.subpath(0, epath.size()-1), 0755);
 
        announce(comp.get_package().get_name(), tool, relative(epath, comp.get_package().get_source()).str());
 
index edbf314b1b60f138ea57ea23bac679dbde76b048..692ad6f4f3f3f3e7a59565301dd95e20620587cb 100644 (file)
@@ -21,7 +21,7 @@ enum LibMode
 };
 
 typedef std::list<std::string>     StringList;
-typedef std::list<Msp::Path::Path> PathList;
+typedef std::list<Msp::Path> PathList;
 typedef std::map<std::string, std::string> StringMap;
 
 std::string run_command(const StringList &);
index 809e70d40ba769b5ec4e64b00c5ad75557d78dbb..c0a233f56d8f51fe3d916ec4c70776330314d7ed 100644 (file)
@@ -94,5 +94,5 @@ void ObjectFile::add_depend(Target *tgt)
 
 string ObjectFile::generate_target_name(const Component &comp, const string &src)
 {
-       return (comp.get_package().get_temp_dir()/comp.get_name()/(Path::splitext(src.substr(src.rfind('/')+1)).base+".o")).str();
+       return (comp.get_package().get_temp_dir()/comp.get_name()/(splitext(basename(src)).base+".o")).str();
 }
index 718a09c48541152d3c15f484b5048ce81017f94e..f05d2035edb534b62ac8a56bc06c9bfd5b8b010c 100644 (file)
@@ -6,6 +6,7 @@ Distributed under the LGPL
 */
 
 #include <fstream>
+#include <iostream>
 #include <msp/strings/regex.h>
 #include "builder.h"
 #include "component.h"
@@ -35,6 +36,9 @@ void SourceFile::find_depends()
                ifstream in(name.c_str());
                if(!in) return;
 
+               if(builder.get_verbose()>=4)
+                       cout<<"Reading includes from "<<name<<'\n';
+
                Regex r_include("^[ \t]*#include[ \t]+([\"<].*)[\">]");
 
                string line;
index caedaf673c2d5a9ef6bc8b305f896bbb85da0d0d..cfe4be3f31a781ea1a5217eaaaf45ba6ec6d49f1 100644 (file)
@@ -19,7 +19,7 @@ using namespace Msp;
 /**
 Creates a buildable package.
 */
-SourcePackage::SourcePackage(Builder &b, const string &n, const Path::Path &s):
+SourcePackage::SourcePackage(Builder &b, const string &n, const Path &s):
        Package(b, n),
        source(s),
        config(*this),
@@ -28,12 +28,12 @@ SourcePackage::SourcePackage(Builder &b, const string &n, const Path::Path &s):
        tar_files.push_back(source/"Build");
 }
 
-Msp::Path::Path SourcePackage::get_temp_dir() const
+Msp::Path SourcePackage::get_temp_dir() const
 {
        return source/config.get_option("tempdir").value/config.get_option("profile").value;
 }
 
-Msp::Path::Path SourcePackage::get_out_dir() const
+Msp::Path SourcePackage::get_out_dir() const
 {
        return source/config.get_option("outdir").value;
 }
@@ -194,9 +194,9 @@ void SourcePackage::create_build_info()
        unsigned flags=get_install_flags();
 
        if(flags&INCLUDE)
-               export_binfo.incpath.push_back((Path::Path(config.get_option("prefix").value)/"include").str());
+               export_binfo.incpath.push_back((Path(config.get_option("prefix").value)/"include").str());
        if(flags&LIB)
-               export_binfo.libpath.push_back((Path::Path(config.get_option("prefix").value)/"lib").str());
+               export_binfo.libpath.push_back((Path(config.get_option("prefix").value)/"lib").str());
 
        string optimize=config.get_option("optimize").value;
        if(lexical_cast<unsigned>(optimize))
index 3e30790c5f7192e63039eae1464ab29f63f739be..f47f25931489928c0f98524a62b85f37cd867f72 100644 (file)
@@ -50,15 +50,15 @@ public:
                void tar_file(const std::string &);
        };
 
-       SourcePackage(Builder &, const std::string &, const Msp::Path::Path &);
-       void                set_path(const Msp::Path::Path &);
+       SourcePackage(Builder &, const std::string &, const Msp::Path &);
+       void                set_path(const Msp::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; }
-       Msp::Path::Path     get_temp_dir() const;
-       Msp::Path::Path     get_out_dir() const;
-       Msp::Path::Path     get_prefix() const          { return config.get_option("prefix").value; }
+       const Msp::Path &get_source() const       { return source; }
+       Msp::Path     get_temp_dir() const;
+       Msp::Path     get_out_dir() const;
+       Msp::Path     get_prefix() const          { return config.get_option("prefix").value; }
        const ComponentList &get_components() const     { return components; }
        const Config        &get_config() const         { return config; }
        const BuildInfo     &get_build_info() const     { return build_info; }
@@ -73,7 +73,7 @@ private:
        std::string   version;
        std::string   description;
 
-       Msp::Path::Path source;
+       Msp::Path source;
        PackageList   base_reqs;
        FeatureList   features;
        BuildInfo     build_info;
index 1df7b66787d8f85033dd98fe5e6f30f2c5c6535a..0af4910dbc1dcd08d5c15c9a14db7bafd0bfdcfa 100644 (file)
@@ -14,7 +14,7 @@ using namespace Msp;
 SystemLibrary::SystemLibrary(Builder &b, const string &n):
        Target(b, 0, n)
 {
-       libname=Path::splitext(Path::basename(n)).base;
+       libname=splitext(basename(n)).base;
        if(!libname.compare(0, 3, "lib"))
                libname.erase(0, 3);
 }
index 532b4a73f2ffdb23c553fce21cb1e8f8f8597370..da579250a15654b978cda94eef621af1afbe319e 100644 (file)
@@ -37,8 +37,8 @@ Tar::Worker::Worker(Tar &t):
 
 void Tar::Worker::main()
 {
-       const Path::Path &pkg_src=tar.tarball.get_package()->get_source();
-       Path::Path basedir=Path::splitext(Path::basename(tar.tarball.get_name())).base;
+       const Path &pkg_src=tar.tarball.get_package()->get_source();
+       Path basedir=splitext(basename(tar.tarball.get_name())).base;
 
        ofstream out(tar.tarball.get_name().c_str());
        const TargetList &deps=tar.tarball.get_depends();
@@ -57,8 +57,7 @@ void Tar::Worker::main()
 
                memcpy(buf, rel_path.data(), rel_path.size());
 
-               struct stat st;
-               Path::stat((*i)->get_name(), st);
+               struct stat st=stat((*i)->get_name());
                store_number(buf+100, st.st_mode, 7);
                store_number(buf+108, st.st_uid, 7);
                store_number(buf+116, st.st_gid, 7);
index fa63ac4e5154293050db87c91168d4c286690938..b094e941e6984707f47d47e75bea1f2455188b60 100644 (file)
@@ -106,7 +106,7 @@ Target::Target(Builder &b, const Package *p, const string &n):
        builder.add_target(this);
 
        struct stat st;
-       if(!Path::stat(name, st))
+       if(!stat(name, st))
                mtime=Time::TimeStamp::from_unixtime(st.st_mtime);
 }
 
@@ -133,9 +133,9 @@ void Target::check_rebuild()
                for(TargetList::iterator i=depends.begin(); (i!=depends.end() && !rebuild); ++i)
                {
                        if((*i)->get_mtime()>mtime)
-                               mark_rebuild(Path::basename((*i)->get_name())+" has changed");
+                               mark_rebuild(basename((*i)->get_name())+" has changed");
                        else if((*i)->get_rebuild())
-                               mark_rebuild(Path::basename((*i)->get_name())+" needs rebuilding");
+                               mark_rebuild(basename((*i)->get_name())+" needs rebuilding");
                }
        }
 
index 926331704520ef6bab8f893595d88aa589a796d1..3f0081ce0dd7b4a0dd45d3329345f150d1c1191f 100644 (file)
@@ -17,7 +17,7 @@ void VirtualTarget::check_rebuild()
 {
        for(TargetList::iterator i=depends.begin(); (i!=depends.end() && !rebuild); ++i)
                if((*i)->get_rebuild())
-                       mark_rebuild(Msp::Path::basename((*i)->get_name())+" needs rebuilding");
+                       mark_rebuild(Msp::basename((*i)->get_name())+" needs rebuilding");
 }
 
 /**