OpenPKG CVS Repository
  http://cvs.openpkg.org/
  ____________________________________________________________________________

  Server: cvs.openpkg.org                  Name:   Michael van Elst
  Root:   /e/openpkg/cvs                   Email:  [EMAIL PROTECTED]
  Module: openpkg-re                       Date:   13-Nov-2002 15:51:21
  Branch: HEAD                             Handle: 2002111314512100

  Modified files:
    openpkg-re              openpkg-build

  Log:
    prefer installed package for ambigous targets

  Summary:
    Revision    Changes     Path
    1.18        +19 -6      openpkg-re/openpkg-build
  ____________________________________________________________________________

  Index: openpkg-re/openpkg-build
  ============================================================
  $ cvs diff -u -r1.17 -r1.18 openpkg-build
  --- openpkg-re/openpkg-build  13 Nov 2002 14:39:36 -0000      1.17
  +++ openpkg-re/openpkg-build  13 Nov 2002 14:51:21 -0000      1.18
  @@ -507,21 +507,34 @@
       return unless $recs && @$recs;
   
       if (scalar(@$recs) > 1) {
  -        print "# ambigous sources for $name\n";
  -        my($i) = 0;
  +
  +        $rec = undef;
           foreach (@$recs) {
  -            print "# $i: ".vsn($_)."\n";
  -            $i++;
  +            if ($env->{built}->{$_->{name}} ||
  +                $env->{installed}->{$_->{name}}) {
  +                $rec = $_;
  +            }
           }
  -        die "ERROR: ambigous dependency\n";
  +
  +        unless (defined $rec) {
  +            print "# ambigous sources for $name\n";
  +            my($i) = 0;
  +            foreach (@$recs) {
  +                print "# $i: ".vsn($_)."\n";
  +                $i++;
  +            }
  +            die "ERROR: ambigous dependency\n";
  +        }
  +
       } else {
           if ($env->{upgrade}) {
               $rec = $recs->[-1];
           } else {
               $rec = $recs->[0];
           }
  -        print "# source for $name is ".vsn($rec)."\n";
       }
  +
  +    print "# source for $name is ".vsn($rec)."\n";
   
       return $rec;
   }
______________________________________________________________________
The OpenPKG Project                                    www.openpkg.org
CVS Repository Commit List                     [EMAIL PROTECTED]

Reply via email to