diff options
Diffstat (limited to 'solenv/bin/modules/RepositoryHelper.pm')
-rw-r--r-- | solenv/bin/modules/RepositoryHelper.pm | 17 |
1 files changed, 11 insertions, 6 deletions
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"); }; |