summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans-Joachim Lankenau <hjs@openoffice.org>2010-09-17 15:42:01 +0200
committerHans-Joachim Lankenau <hjs@openoffice.org>2010-09-17 15:42:01 +0200
commit0ada131dde86e145df3cde5e5fbe67bee3928887 (patch)
treec2f1354d04a7cd266b4722a9c65b32aa6d2fd250
parentec3afb4d5e7f13100af68c66fdf99a86d29260a1 (diff)
parente399ea2a11bad851a729ecb07b81e2600767e022 (diff)
CWS-TOOLING: integrate CWS vgbugs11
-rw-r--r--solenv/bin/build.pl7
-rwxr-xr-xsolenv/bin/deliver.pl14
-rw-r--r--solenv/bin/modules/RepositoryHelper.pm17
3 files changed, 27 insertions, 11 deletions
diff --git a/solenv/bin/build.pl b/solenv/bin/build.pl
index 5810ebb78..8de415aba 100644
--- a/solenv/bin/build.pl
+++ b/solenv/bin/build.pl
@@ -670,7 +670,9 @@ sub build_all {
prepare_build_from_with_branches(\%global_deps_hash, \%reversed_full_deps_hash);
}
if ($build_all_cont || $build_since) {
+ store_weights(\%global_deps_hash);
prepare_build_all_cont(\%global_deps_hash);
+ %weights_hash = ();
};
if ($generate_config) {
%add_to_config = %global_deps_hash;
@@ -1322,7 +1324,10 @@ sub find_indep_prj {
$Dependencies = shift;
if (scalar keys %$Dependencies) {
foreach my $job (keys %$Dependencies) {
- push(@candidates, $job) if (!scalar keys %{$$Dependencies{$job}});
+ if (!scalar keys %{$$Dependencies{$job}}) {
+ push(@candidates, $job);
+ last if (!$processes_to_run);
+ };
};
if (scalar @candidates) {
$all_dependent = 0;
diff --git a/solenv/bin/deliver.pl b/solenv/bin/deliver.pl
index 4b403154a..ab0b731c6 100755
--- a/solenv/bin/deliver.pl
+++ b/solenv/bin/deliver.pl
@@ -43,7 +43,7 @@ use File::Spec;
( $script_name = $0 ) =~ s/^.*\b(\w+)\.pl$/$1/;
-$id_str = ' $Revision$ ';
+$id_str = ' $Revision: 275594 $ ';
$id_str =~ /Revision:\s+(\S+)\s+\$/
? ($script_rev = $1) : ($script_rev = "-");
@@ -404,6 +404,8 @@ sub parse_options
{
my $arg;
my $dontdeletecommon = 0;
+ $opt_silent = 1 if ( defined $ENV{VERBOSE} && $ENV{VERBOSE} eq 'FALSE');
+ $opt_verbose = 1 if ( defined $ENV{VERBOSE} && $ENV{VERBOSE} eq 'TRUE');
while ( $arg = shift @ARGV ) {
$arg =~ /^-force$/ and $opt_force = 1 and next;
$arg =~ /^-check$/ and $opt_check = 1 and $opt_verbose = 1 and next;
@@ -423,15 +425,13 @@ sub parse_options
}
$dest = $arg;
}
- $opt_silent = 1 if ( !defined $ENV{VERBOSE} || (defined $ENV{VERBOSE} && $ENV{VERBOSE} eq 'FALSE')) && ( ! $opt_verbose );
- $opt_verbose = 1 if ( defined $ENV{VERBOSE} && $ENV{VERBOSE} eq 'TRUE') && ( ! $opt_silent );
# $dest and $opt_zip or $opt_delete are mutually exclusive
if ( $dest and ($opt_zip || $opt_delete) ) {
usage(1);
}
# $opt_silent and $opt_check or $opt_verbose are mutually exclusive
if ( ($opt_check or $opt_verbose) and $opt_silent ) {
- print STDERR "Error on command line: options '-check'/'-verbose' and '-quiet' are mutually exclusive.\n";
+ print STDERR "Error on command line: options '-check' and '-quiet' are mutually exclusive.\n";
usage(1);
}
if ($dontdeletecommon) {
@@ -679,6 +679,12 @@ sub glob_line
}
else {
# no globbing but renaming possible
+ # #i89066#
+ if (-d $to && -f $from) {
+ my $filename = File::Basename::basename($from);
+ $to .= '/' if ($to !~ /[\\|\/]$/);
+ $to .= $filename;
+ };
push(@globbed_files, [$from, $to]);
}
if ( $opt_checkdlst ) {
diff --git a/solenv/bin/modules/RepositoryHelper.pm b/solenv/bin/modules/RepositoryHelper.pm
index 82f762508..32c111339 100644
--- a/solenv/bin/modules/RepositoryHelper.pm
+++ b/solenv/bin/modules/RepositoryHelper.pm
@@ -118,21 +118,26 @@ sub search_for_hg {
sub search_via_build_lst {
my $self = shift;
- my @possible_build_lists = ('build.lst', 'build.xlist'); # build lists names
+# my @possible_build_lists = ('build.lst', 'build.xlist'); # build lists names
+ my @possible_build_lists = ('build.lst'); # build lists names
my $previous_dir = '';
my $rep_root_candidate = $self->{INITIAL_DIRECTORY};
do {
- foreach (@possible_build_lists) {# ('build.lst', 'build.xlist');
- if (-e $rep_root_candidate . '/prj/'.$_) {
+ foreach (@possible_build_lists) {
+ my $test_file;
+ if ($rep_root_candidate eq '/') {
+ $test_file = '/prj/' . $_;
+ } else {
+ $test_file = $rep_root_candidate . '/prj/' . $_;
+ };
+ if (-e $test_file) {
$self->{REPOSITORY_ROOT} = File::Basename::dirname($rep_root_candidate);
return 1;
- } elsif ($rep_root_candidate eq $previous_dir) {
- return 0;
};
};
$previous_dir = $rep_root_candidate;
$rep_root_candidate = File::Basename::dirname(Cwd::realpath($rep_root_candidate));
- return 0 if (!$rep_root_candidate);
+ return 0 if ((!$rep_root_candidate) || ($rep_root_candidate eq $previous_dir));
}
while (chdir "$rep_root_candidate");
};