On 28.01.2011 22:53, Christian Lohmaier wrote:
Hi Michael, *,
On Fri, Jan 28, 2011 at 4:21 PM, Michael Meeks<michael.me...@novell.com> wrote:
On Fri, 2011-01-28 at 15:29 +0100, Christian Lohmaier wrote:
No, please don't --html in combination with --dontgraboutput is
usefull for parallel builds to have the output not interwoven.
(or add that feature with other means.
So - the requirement is that we log each build's output to somewhere,
as well as the console, so it can be got without being mangled up with
other stuff ?
Having it at the console is important for tinderbox/buildbot use. the
html switch controls the order it is being printed, not ABBBAAAB, but
AAAABBBB - that it generates a html status page is just a side-effect
in this usecase.
Could we just drop that in the module's build directory ?
Wenn you kill the file in the module's build directory, you kill the
html page's "show the log" feature, as the individual module's log is
loaded by the "master" html-page.
build --html will create both the status-html (the "progress bar" as
well as putting the module's log into<localoutput>/misc/log (IIRC).
So it does that already. Or might be that I misundertsand completely.
I don't have strong feelings about having the actual html page or not.
When I started building, I used it quite a bit, but now I do automated
builds, so I don't sit and wait "man, when it is finished" :-)
ciao
Christian
Hi Christian
I made a deeper analysis of the build.pl. --html activates verbose mode
of "dmake" and "deliver" and --dontgraboutput calls a "cat" of a
generated log file. This seems to be the functionality you need. I've
now introduced a new parameter called "--verbose" which substitutes the
functionality of "--html --dontgraboutput".
Could you please test "--verbose" in your environment to see if it works
as expected (after this patch is pushed :-). If the tests are
successful, I will remove all the unneeded parts. For backward
compatibility I will link the out-dated parameters to the new --verbose
param.
Thanks,
Michael
>From cdaf7eb4ae71ca46320caf738e0cd634499bceee Mon Sep 17 00:00:00 2001
From: Michael Koch <m...@gmx.ch>
Date: Wed, 2 Feb 2011 18:53:37 +0100
Subject: [PATCH] Added --verbose param
"--verbose" substitutes the needed functionality of
"--html --dontgraboutput". The unneeded parts will be removed in
a second step.
---
solenv/bin/build.pl | 16 ++++++++++------
1 files changed, 10 insertions(+), 6 deletions(-)
diff --git a/solenv/bin/build.pl b/solenv/bin/build.pl
index fc841eb..f9ece6c 100755
--- a/solenv/bin/build.pl
+++ b/solenv/bin/build.pl
@@ -206,6 +206,8 @@
my $zenity_in = '';
my $zenity_out = '';
my $zenity_err = '';
+ my $verbose = 0;
+
### main ###
get_options();
@@ -251,7 +253,7 @@
provide_consistency() if (defined $ENV{CWS_WORK_STAMP} && defined($ENV{COMMON_ENV_TOOLS}));
$deliver_command = $ENV{DELIVER};
- $deliver_command .= ' -verbose' if ($html);
+ $deliver_command .= ' -verbose' if ($html || $verbose);
$deliver_command .= ' '. $dlv_switch if ($dlv_switch);
$ENV{mk_tmp}++;
%prj_platform = ();
@@ -1124,7 +1126,7 @@ sub get_commands {
while ($arg = pop(@dmake_args)) {
$dmake .= ' '.$arg;
};
- $dmake .= ' verbose=true' if ($html);
+ $dmake .= ' verbose=true' if ($html || $verbose);
};
#
@@ -1401,7 +1403,7 @@ sub print_error {
sub usage {
print STDERR "\nbuild\n";
- print STDERR "Syntax: build [--all|-a[:prj_name]]|[--from|-f prj_name1[:prj_name2] [prj_name3 [...]]]|[--since|-c prj_name] [--with_branches prj_name1[:prj_name2] [--skip prj_name1[:prj_name2] [prj_name3 [...]] [prj_name3 [...]|-b]|[--prepare|-p][:platform] [--deliver|-d [--dlv_switch deliver_switch]]] [-P processes|--server [--setenvstring \"string\"] [--client_timeout MIN] [--port port1[:port2:...:portN]]] [--show|-s] [--help|-h] [--file|-F] [--ignore|-i] [--version|-V] [--mode|-m OOo[,SO[,EXT]] [--html [--html_path html_file_path] [--dontgraboutput]] [--pre_job=pre_job_sring] [--job=job_string|-j] [--post_job=post_job_sring] [--stoponerror] [--genconf [--removeall|--clear|--remove|--add [module1,module2[,...,moduleN]]]] [--exclude_branch_from prj_name1[:prj_name2] [prj_name3 [...]]] [--interactive]\n";
+ print STDERR "Syntax: build [--all|-a[:prj_name]]|[--from|-f prj_name1[:prj_name2] [prj_name3 [...]]]|[--since|-c prj_name] [--with_branches prj_name1[:prj_name2] [--skip prj_name1[:prj_name2] [prj_name3 [...]] [prj_name3 [...]|-b]|[--prepare|-p][:platform] [--deliver|-d [--dlv_switch deliver_switch]]] [-P processes|--server [--setenvstring \"string\"] [--client_timeout MIN] [--port port1[:port2:...:portN]]] [--show|-s] [--help|-h] [--file|-F] [--ignore|-i] [--version|-V] [--mode|-m OOo[,SO[,EXT]] [--html [--html_path html_file_path] [--dontgraboutput]] [--pre_job=pre_job_sring] [--job=job_string|-j] [--post_job=post_job_sring] [--stoponerror] [--genconf [--removeall|--clear|--remove|--add [module1,module2[,...,moduleN]]]] [--exclude_branch_from prj_name1[:prj_name2] [prj_name3 [...]]] [--interactive] [--verbose]\n";
print STDERR "Example1: build --from sfx2\n";
print STDERR " - build all projects dependent from sfx2, starting with sfx2, finishing with the current module\n";
print STDERR "Example2: build --all:sfx2\n";
@@ -1442,8 +1444,9 @@ sub usage {
print STDERR " --remove - removeactive modules(s) from configuration file\n";
print STDERR " --removeall|--clear - remove all active modules(s) from configuration file\n";
- print STDERR " --stoponerror - stop build when error occurs (for mp builds)\n";
+ print STDERR " --stoponerror || $verbose - stop build when error occurs (for mp builds)\n";
print STDERR " --interactive - start interactive build process (process can be managed via html page)\n";
+ print STDERR " --verbose - generates a detailed output of the build process\n";
print STDERR " Custom jobs:\n";
print STDERR " --job=job_string - execute custom job in (each) module. job_string is a shell script/command to be executed instead of regular dmake jobs\n";
print STDERR " --pre_job=pre_job_string - execute preliminary job in (each) module. pre_job_string is a shell script/command to be executed before regular job in the module\n";
@@ -1534,6 +1537,7 @@ sub get_options {
$arg =~ /^--mode$/ and get_modes() and next;
$arg =~ /^--stoponerror$/ and $stop_build_on_error = 1 and next;
$arg =~ /^--interactive$/ and $interactive = 1 and next;
+ $arg =~ /^--verbose$/ and $verbose = 1 and next;
if ($arg =~ /^--$/) {
push (@dmake_args, get_dmake_args()) if (!$custom_job);
next;
@@ -2019,14 +2023,14 @@ sub run_job {
chdir $path;
getcwd();
- if ($html) {
+ if ($html || $verbose) {
my $log_file = $jobs_hash{$registered_name}->{LONG_LOG_PATH};
my $log_dir = File::Basename::dirname($log_file);
if (!-d $log_dir) {
system("$perl $mkout");
};
$error_code = system ("$job_to_do > $log_file 2>&1");
- if (!$grab_output && -f $log_file) {
+ if ((!$grab_output || $verbose) && -f $log_file) {
system("cat $log_file");
};
} else {
--
1.7.0.4
_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice