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

  Server: cvs.openpkg.org                  Name:   Ralf S. Engelschall
  Root:   /e/openpkg/cvs                   Email:  [EMAIL PROTECTED]
  Module: openpkg-re                       Date:   08-Jan-2004 21:02:29
  Branch: HEAD                             Handle: 2004010820022800

  Modified files:
    openpkg-re              src2make.pl

  Log:
    commit my fixed and enhanced 'make erase' plus two pending changes

  Summary:
    Revision    Changes     Path
    1.48        +20 -11     openpkg-re/src2make.pl
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: openpkg-re/src2make.pl
  ============================================================================
  $ cvs diff -u -r1.47 -r1.48 src2make.pl
  --- openpkg-re/src2make.pl    15 Oct 2003 11:53:27 -0000      1.47
  +++ openpkg-re/src2make.pl    8 Jan 2004 20:02:28 -0000       1.48
  @@ -213,7 +213,7 @@
           $q .= "S-$t:<%{$t}>\n";
       }
       $q .= "[M-BuildPreReq:<%{REQUIRENAME} %|REQUIREFLAGS?{%{REQUIREFLAGS:depflags} 
%{REQUIREVERSION}}:{}|>\n]";
  -    my $o = `$prefix/bin/rpm -qp --qf "$q" $srcdir/$srcrpm`;
  +    my $o = `$prefix/bin/rpm -qp --qf "$q" $srcdir/$srcrpm 2>/dev/null`;
       $o =~ s|M-BuildPreReq:<rpmlib\(.*?\).*?>\n||gs;
       my $r = &parseresponse($o);
       my $pkg_name         = $r->{Name};
  @@ -253,7 +253,7 @@
       }
       $q = "[M-PreReq:<%{REQUIRENAME} %|REQUIREFLAGS?{%{REQUIREFLAGS:depflags} 
%{REQUIREVERSION}}:{}|>\n]";
       $q .= "[M-Provides:<%{PROVIDENAME} %|PROVIDEFLAGS?{%{PROVIDEFLAGS:depflags} 
%{PROVIDEVERSION}}:{}|>\n]";
  -    $o = `cd $tmpdir/$srcrpm_name && $prefix/bin/rpm -q --qf "$q" --define 
'_sourcedir .' --define '_specdir .' --specfile $srcrpm_name.spec`;
  +    $o = `cd $tmpdir/$srcrpm_name && $prefix/bin/rpm -q --qf "$q" --define 
'_sourcedir .' --define '_specdir .' --specfile $srcrpm_name.spec 2>/dev/null`;
       $o =~ s|M-PreReq:<rpmlib\(.*?\).*?>\n||gs;
       $r = &parseresponse($o);
       my $pkg_ireq     = $r->{PreReq};
  @@ -896,15 +896,24 @@
   
   $MF .= "#   erase\n" .
          "erase:\n" .
  -       "[EMAIL PROTECTED]"`\$(PREFIX)/bin/rpm -qa --qf '[%{NAME}\\n]' | grep -v 
'^openpkg\$\$'`\"; \\\n" .
  -       "\tif [ \".\$\$PKG\" != . ]; then \\\n" .
  -       "\t    awk 'BEGIN { printf(\"Erasing all packages \"); }' </dev/null 1>&2; 
\\\n" .
  -       "\t    while [ 1 ]; do \\\n" .
  -       "\t        awk 'BEGIN { printf(\".\"); }' </dev/null 1>&2; \\\n" .
  -       "\t        \$(EXEC_ROOT) \$(PREFIX)/bin/rpm -e \$\$PKG && break; \\\n" .
  -       "\t    done; \\\n" .
  -       "\t    echo \" done\" 1>&2; \\\n" .
  -       "\tfi\n" .
  +       "[EMAIL PROTECTED] 'BEGIN { printf(\"erasing packages: \"); }' </dev/null 
1>&2; \\\n" .
  +       "\tPKG=\"`\$(MAKE) \$(MFLAGS) erase-helper`\"; \\\n" .
  +       "\twhile [ \".\$\$PKG\" != . ]; do \\\n" .
  +       "\t    awk 'BEGIN { printf(\".\"); }' </dev/null 1>&2; \\\n" .
  +       "\t    \$(EXEC_ROOT) \$(PREFIX)/bin/rpm -e \$\$PKG >/dev/null 2>&1 || true; 
\\\n" .
  +       "\t    PKG_NEW=\"`\$(MAKE) \$(MFLAGS) erase-helper`\"; \\\n" .
  +       "\t    if [ \".\$\$PKG_NEW\" = \".\$\$PKG\" ]; then \\\n" .
  +       "\t        break; \\\n" .
  +       "\t    else \\\n" .
  +       "\t        PKG=\"\$\$PKG_NEW\"; \\\n" .
  +       "\t    fi; \\\n" .
  +       "\tdone; \\\n" .
  +       "\techo \"done\" 1>&2\n" .
  +       "\n" .
  +       "erase-helper:\n" .
  +       "[EMAIL PROTECTED](PREFIX)/bin/rpm -qa --qf 
'%{NAME}-%{VERSION}-%{RELEASE}::,[%{REQUIRENAME},]\\n' | \\\n" .
  +       "\t    sed -e 's;,rpmlib([^)]*);;g' -e 's;,OpenPKG,;,;g' -e 's;,openpkg,;,;' 
-e 's;::,;::;' -e 's;,\$\$;;' | \\\n" .
  +       "\t    grep '::\$\$' | sed -e 's;::\$\$;;' | grep -v '^openpkg-[0-9].*' | 
grep -v '^gpg-pubkey-.*' || true\n" .
          "\n";
   
   &verbose("writing Makefile");
  @@ .
______________________________________________________________________
The OpenPKG Project                                    www.openpkg.org
CVS Repository Commit List                     [EMAIL PROTECTED]

Reply via email to