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

  Server: cvs.openpkg.org                  Name:   Ralf S. Engelschall
  Root:   /v/openpkg/cvs                   Email:  [EMAIL PROTECTED]
  Module: openpkg-tools                    Date:   21-Jun-2006 17:17:29
  Branch: HEAD                             Handle: 2006062116172800

  Modified files:
    openpkg-tools/cmd       build.pl

  Log:
    allow the 'openpkg build' command to use the forthcoming 'openpkg
    release' command

  Summary:
    Revision    Changes     Path
    1.16        +16 -11     openpkg-tools/cmd/build.pl
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: openpkg-tools/cmd/build.pl
  ============================================================================
  $ cvs diff -u -r1.15 -r1.16 build.pl
  --- openpkg-tools/cmd/build.pl        1 Jan 2006 14:04:48 -0000       1.15
  +++ openpkg-tools/cmd/build.pl        21 Jun 2006 15:17:28 -0000      1.16
  @@ -163,6 +163,7 @@
       "$l_prefix/bin/openpkg rpm" : "$l_prefix/bin/rpm");
   $RPM = (`which $RPM` =~ m{^(/.*)})[0] if ($RPM !~ m|^/|);
   my $MKP = "$l_prefix/bin/openpkg makeproxy";
  +my $REL = "$l_prefix/bin/openpkg release";
   die "FATAL: cannot locate rpm in path\n" unless $RPM =~ m{^/};
   
   # augment command line parameters
  @@ -287,18 +288,22 @@
   sub get_release () {
       my($rel,$url);
   
  -    ($rel) = run("$RPM -qi openpkg") =~ /Version:\s*(\S+)/m;
  -    if ($rel =~ /^\d+$/) {
  -        print "# $PROG current($rel)\n";
  -        $url = "ftp://ftp.openpkg.org/current/";;
  -    } elsif ($rel =~ /^(\d+\.\d+)/) {
  -        $rel = $1;
  -        print "# $PROG release($rel)\n";
  -        $url = "ftp://ftp.openpkg.org/release/$rel/";;
  -    } else {
  -        die "FATAL: don't know how to handle this release\n";
  +    $url = run("($REL --fmt='%u') 2>/dev/null || true") || "";
  +    $url =~ s/^\s+//s;
  +    $url =~ s/\s+$//s;
  +    if ($url !~ m/^(?:file|ftp|http?):\/\//) {
  +        ($rel) = run("$RPM -qi openpkg") =~ /Version:\s*(\S+)/m;
  +        if ($rel =~ /^\d+$/) {
  +            print "# $PROG current($rel)\n";
  +            $url = "ftp://ftp.openpkg.org/current/";;
  +        } elsif ($rel =~ /^(\d+\.\d+)/) {
  +            $rel = $1;
  +            print "# $PROG release($rel)\n";
  +            $url = "ftp://ftp.openpkg.org/release/$rel/";;
  +        } else {
  +            die "FATAL: don't know how to handle this release\n";
  +        }
       }
  -
       return $url;
   }
   
  @@ .
______________________________________________________________________
The OpenPKG Project                                    www.openpkg.org
CVS Repository Commit List                     openpkg-cvs@openpkg.org

Reply via email to