]> git.tdb.fi Git - builder.git/blobdiff - source/builder.cpp
Clear the line before printing task info if progress is enabled
[builder.git] / source / builder.cpp
index 1b8ed3c16eb538d17afbc3933089f750bd12e4be..032bb87001d17cc9dff7e0c8d33b03eeb96f39cd 100644 (file)
@@ -32,13 +32,9 @@ using namespace Msp;
 Builder::Builder():
        package_manager(*this),
        native_arch(*this, string()),
-       current_arch(0),
-       build_type(0),
        vfs(*this),
        build_graph(*this),
-       logger(&default_logger),
-       tempdir("temp"),
-       top_loader(0)
+       logger(&default_logger)
 {
        set_architecture(string());
 }
@@ -160,7 +156,7 @@ void Builder::load_build_file(const FS::Path &fn, const Config::InputOptions *op
 {
        IO::BufferedFile in(fn.str());
 
-       get_logger().log("files", format("Reading %s", fn));
+       get_logger().log("files", "Reading %s", fn);
 
        DataFile::Parser parser(in, fn.str());
        Loader loader(*this, opts, all);
@@ -182,7 +178,7 @@ int Builder::build(unsigned jobs, bool dry_run, bool show_progress)
                get_logger().log("summary", "Already up to date");
                return 0;
        }
-       get_logger().log("summary", format("Will build %d target%s", total, (total!=1 ? "s" : "")));
+       get_logger().log("summary", "Will build %d target%s", total, (total!=1 ? "s" : ""));
 
        vector<Task *> tasks;
 
@@ -200,11 +196,15 @@ int Builder::build(unsigned jobs, bool dry_run, bool show_progress)
                        if(tgt)
                        {
                                if(tgt->get_tool())
-                                       get_logger().log("tasks", format("%-4s  %s", tgt->get_tool()->get_tag(), tgt->get_name()));
+                               {
+                                       if(show_progress)
+                                               IO::print("\033[K");
+                                       get_logger().log("tasks", "%-4s  %s", tgt->get_tool()->get_tag(), tgt->get_name());
+                               }
                                Task *task = tgt->build();
                                if(task)
                                {
-                                       get_logger().log("commands", format("%s", task->get_command()));
+                                       get_logger().log("commands", "%s", task->get_command());
                                        if(dry_run)
                                        {
                                                task->signal_finished.emit(true);
@@ -286,7 +286,7 @@ int Builder::clean(bool all, bool dry_run)
 
        for(Target *t: clean_tgts)
        {
-               get_logger().log("tasks", format("RM    %s", t->get_name()));
+               get_logger().log("tasks", "RM    %s", t->get_name());
                if(!dry_run)
                        t->clean();
        }