- merge sparc64/ia64 fiddles back into linux.{req,prov}.
authorjbj <devnull@localhost>
Fri, 1 Jun 2001 19:27:33 +0000 (19:27 +0000)
committerjbj <devnull@localhost>
Fri, 1 Jun 2001 19:27:33 +0000 (19:27 +0000)
- automagically generate perl module dependencies always.

CVS patchset: 4825
CVS date: 2001/06/01 19:27:33

CHANGES
autodeps/ia64-linux.prov
autodeps/ia64-linux.req
autodeps/linux.prov
autodeps/linux.req
autodeps/sparc-linux.prov
autodeps/sparc-linux.req
scripts/find-requires.perl
scripts/perl.prov
scripts/perl.req

diff --git a/CHANGES b/CHANGES
index f49e323..4a62098 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -74,6 +74,8 @@
        - return multiple suggested packages
                (Pawel Kolodziej <pawelk@pld.org.pl>).
        - fix: return suggested packages when using Depends cache.
+       - merge sparc64/ia64 fiddles back into linux.{req,prov}.
+       - automagically generate perl module dependencies always.
 
 4.0 -> 4.0.[12]
        - add doxygen and lclint annotations most everywhere.
index fa95113..aa23cc1 100644 (file)
@@ -3,12 +3,21 @@
 # This script reads filenames from STDIN and outputs any relevant provides
 # information that needs to be included in the package.
 
-filelist=$(grep "\\.so" | grep -v "^/lib/ld.so" | xargs file -L 2>/dev/null | grep "ELF.*shared object" | cut -d: -f1)
+filelist=`sed "s/['\"]/\\\&/g"`
 
-for f in $filelist; do
+solist=$(echo $filelist | grep "\\.so" | grep -v "^/lib/ld.so" | \
+       xargs file -L 2>/dev/null | grep "ELF.*shared object" | cut -d: -f1)
+perllist=$(echo $filelist | grep "\\.pm")
+pythonlist=
+tcllist=
+
+#
+# --- Library sonames and weak symbol versions (from glibc).
+for f in $solist; do
     soname=$(objdump -p $f | awk '/SONAME/ {print $2}')
 
-    lib64=`if file -L $f 2>/dev/null | grep "ELF 64-bit" >/dev/null; then echo "()(64bit)"; fi`
+    lib64=`if file -L $f 2>/dev/null | \
+       grep "ELF 64-bit" >/dev/null; then echo "()(64bit)"; fi`
     if [ "$soname" != "" ]; then
        if [ ! -L $f ]; then
            echo $soname$lib64
@@ -27,3 +36,18 @@ for f in $filelist; do
        echo ${f##*/}$lib64
     fi
 done | sort -u
+
+#
+# --- Perl modules.
+[ -x /usr/lib/rpm/perl.prov -a -n "$perllist" ] &&
+    echo $perllist | tr [:blank:] \\n | /usr/lib/rpm/perl.prov | sort -u
+
+#
+# --- Python modules.
+[ -x /usr/lib/rpm/python.prov -a -n "$pythonlist" ] &&
+    echo $pythonlist | tr [:blank:] \\n | /usr/lib/rpm/python.prov | sort -u
+
+#
+# --- Tcl modules.
+[ -x /usr/lib/rpm/tcl.prov -a -n "$tcllist" ] &&
+    echo $tcllist | tr [:blank:] \\n | /usr/lib/rpm/tcl.prov | sort -u
index b93b6c6..9a92d5d 100644 (file)
@@ -1,35 +1,72 @@
-#!/bin/sh
+#!/bin/bash
 
-# note this works for both a.out and ELF executables
-# it also auto-generates requirment lines for shell scripts
+#
+# Auto-generate requirements for executables (both ELF and a.out) and library
+# sonames, script interpreters, and perl modules.
+#
 
 ulimit -c 0
 
 filelist=`sed "s/['\"]/\\\&/g"`
-exelist=`echo $filelist | xargs -r file | grep ":.*executable" | cut -d: -f1 `
-scriptlist=`echo $filelist | xargs -r file | egrep ":.* (commands|script) " | cut -d: -f1 `
-liblist=`echo $filelist | xargs -r file | grep ":.*shared object" | cut -d : -f1 `
+exelist=`echo $filelist | xargs -r file | egrep -v ":.* (commands|script) " | \
+       grep ":.*executable" | cut -d: -f1`
+scriptlist=`echo $filelist | xargs -r file | \
+       egrep ":.* (commands|script) " | cut -d: -f1`
+liblist=`echo $filelist | xargs -r file | \
+       grep ":.*shared object" | cut -d : -f1`
 
+interplist=
+perllist=
+pythonlist=
+tcllist=
+
+#
+# --- Executable sonames.
 for f in $exelist; do
-    lib64=`if file -L $f 2>/dev/null | grep "ELF 64-bit" >/dev/null; then echo "()(64bit)"; fi`
-    if [ -x $f ]; then
-       ldd $f | awk '/=>/ { if ($1 !~ /libNoVersion.so/ && $1 !~ /4[um]lib.so/) { gsub(/'\''"/,"\\&",$1); printf "%s'$lib64'\n", $1 } }'
-    fi
+    [ -r $f -a -x $f ] || continue
+    lib64=`if file -L $f 2>/dev/null | \
+       grep "ELF 64-bit" >/dev/null; then echo "()(64bit)"; fi`
+    ldd $f | awk '/=>/ {
+       if ($1 !~ /libNoVersion.so/ && $1 !~ /4[um]lib.so/) {
+           gsub(/'\''"/,"\\&",$1);
+           printf "%s'$lib64'\n", $1
+       }
+    }'
 done | xargs -r -n 1 basename | sort -u
 
+#
+# --- Library sonames.
 for f in $liblist; do
-    lib64=`if file -L $f 2>/dev/null | grep "ELF 64-bit" >/dev/null; then echo "()(64bit)"; fi`
-    ldd $f | awk '/=>/ { if ($1 !~ /libNoVersion.so/ && $1 !~ /4[um]lib.so/) { gsub(/'\''"/,"\\&",$1); printf "%s'$lib64'\n", $1 } }'
+    [ -r $f ] || continue
+    lib64=`if file -L $f 2>/dev/null | \
+       grep "ELF 64-bit" >/dev/null; then echo "()(64bit)"; fi`
+    ldd $f | awk '/=>/ {
+       if ($1 !~ /libNoVersion.so/ && $1 !~ /4[um]lib.so/) {
+           gsub(/'\''"/,"\\&",$1);
+           printf "%s'$lib64'\n", $1
+       }
+    }'
 done | xargs -r -n 1 basename | sort -u
 
+#
+# --- Script interpreters.
 for f in $scriptlist; do
-    if [ -x $f ]; then
-       head -1 $f | sed -e 's/^\#\![   ]*//' | cut -d" " -f1
-    fi
-done | sort -u
+    [ -r $f -a -x $f ] || continue
+    interp=`head -1 $f | sed -e 's/^\#\![      ]*//' | cut -d" " -f1`
+    interplist="$interplist $interp"
+    case $interp in
+    */perl)    perllist="$perllist $f" ;;
+    *)         [ "${f%.pm} != "${f}" ] && perllist="$perllist $f" ;;
+    esac
+done
+[ -n "$interplist" ] && { echo "$interplist" | sort -u ; }
 
+#
+# --- Weak symbol versions (from glibc).
 for f in $liblist $exelist ; do
-    lib64=`if file -L $f 2>/dev/null | grep "ELF 64-bit" >/dev/null; then echo "(64bit)"; fi`
+    [ -r $f ] || continue
+    lib64=`if file -L $f 2>/dev/null | \
+       grep "ELF 64-bit" >/dev/null; then echo "()(64bit)"; fi`
     objdump -p $f | awk '
        BEGIN { START=0; LIBNAME=""; }
        /Version References:/ { START=1; }
@@ -37,7 +74,24 @@ for f in $liblist $exelist ; do
            sub(/:/, "", $3);
            LIBNAME=$3;
        }
-       (START==1) && (LIBNAME!="") && ($4!="") { print LIBNAME "(" $4 ")'$lib64'"; }
+       (START==1) && (LIBNAME!="") && ($4~/^GLIBC_*/) {
+           print LIBNAME "(" $4 ")'$lib64'";
+       }
        /^$/ { START=0; }
     '
 done | sort -u
+
+#
+# --- Perl modules.
+[ -x /usr/lib/rpm/perl.req -a -n "$perllist" ] && \
+    echo $perllist | tr [:blank:] \\n | /usr/lib/rpm/perl.req | sort -u
+
+#
+# --- Python modules.
+[ -x /usr/lib/rpm/python.req -a -n "$pythonlist" ] && \
+    echo $pythonlist | tr [:blank:] \\n | /usr/lib/rpm/python.req | sort -u
+
+#
+# --- Tcl modules.
+[ -x /usr/lib/rpm/tcl.req -a -n "$tcllist" ] && \
+    echo $tcllist | tr [:blank:] \\n | /usr/lib/rpm/tcl.req | sort -u
index 472d786..aa23cc1 100644 (file)
@@ -3,14 +3,24 @@
 # This script reads filenames from STDIN and outputs any relevant provides
 # information that needs to be included in the package.
 
-filelist=$(grep "\\.so" | grep -v "^/lib/ld.so" | xargs file -L 2>/dev/null | grep "ELF.*shared object" | cut -d: -f1)
+filelist=`sed "s/['\"]/\\\&/g"`
 
-for f in $filelist; do
+solist=$(echo $filelist | grep "\\.so" | grep -v "^/lib/ld.so" | \
+       xargs file -L 2>/dev/null | grep "ELF.*shared object" | cut -d: -f1)
+perllist=$(echo $filelist | grep "\\.pm")
+pythonlist=
+tcllist=
+
+#
+# --- Library sonames and weak symbol versions (from glibc).
+for f in $solist; do
     soname=$(objdump -p $f | awk '/SONAME/ {print $2}')
 
+    lib64=`if file -L $f 2>/dev/null | \
+       grep "ELF 64-bit" >/dev/null; then echo "()(64bit)"; fi`
     if [ "$soname" != "" ]; then
-        if [ ! -L $f ]; then
-            echo $soname
+       if [ ! -L $f ]; then
+           echo $soname$lib64
            objdump -p $f | awk '
                BEGIN { START=0 ; }
                /Version definitions:/ { START=1; }
@@ -19,10 +29,25 @@ for f in $filelist; do
            ' | \
                grep -v $soname | \
                while read symbol ; do
-                   echo "$soname($symbol)"
+                   echo "$soname($symbol)`echo $lib64 | sed 's/()//'`"
                done
        fi
     else
-       echo ${f##*/}
+       echo ${f##*/}$lib64
     fi
 done | sort -u
+
+#
+# --- Perl modules.
+[ -x /usr/lib/rpm/perl.prov -a -n "$perllist" ] &&
+    echo $perllist | tr [:blank:] \\n | /usr/lib/rpm/perl.prov | sort -u
+
+#
+# --- Python modules.
+[ -x /usr/lib/rpm/python.prov -a -n "$pythonlist" ] &&
+    echo $pythonlist | tr [:blank:] \\n | /usr/lib/rpm/python.prov | sort -u
+
+#
+# --- Tcl modules.
+[ -x /usr/lib/rpm/tcl.prov -a -n "$tcllist" ] &&
+    echo $tcllist | tr [:blank:] \\n | /usr/lib/rpm/tcl.prov | sort -u
index fda723b..9a92d5d 100644 (file)
@@ -1,32 +1,72 @@
-#!/bin/sh
+#!/bin/bash
 
-# note this works for both a.out and ELF executables
-# it also auto-generates requirment lines for shell scripts
+#
+# Auto-generate requirements for executables (both ELF and a.out) and library
+# sonames, script interpreters, and perl modules.
+#
 
 ulimit -c 0
 
 filelist=`sed "s/['\"]/\\\&/g"`
-exelist=`echo $filelist | xargs -r file | grep ":.*executable" | cut -d: -f1 `
-scriptlist=`echo $filelist | xargs -r file | egrep ":.* (commands|script) " | cut -d: -f1 `
-liblist=`echo $filelist | xargs -r file | grep ":.*shared object" | cut -d : -f1 `
+exelist=`echo $filelist | xargs -r file | egrep -v ":.* (commands|script) " | \
+       grep ":.*executable" | cut -d: -f1`
+scriptlist=`echo $filelist | xargs -r file | \
+       egrep ":.* (commands|script) " | cut -d: -f1`
+liblist=`echo $filelist | xargs -r file | \
+       grep ":.*shared object" | cut -d : -f1`
 
+interplist=
+perllist=
+pythonlist=
+tcllist=
+
+#
+# --- Executable sonames.
 for f in $exelist; do
-    if [ -x $f ]; then
-       ldd $f | awk '/=>/ { print $1 }'
-    fi
-done | sort -u | sed "s/['\"]/\\\&/g" | xargs -r -n 1 basename | grep -v 'libNoVersion.so' | sort -u
+    [ -r $f -a -x $f ] || continue
+    lib64=`if file -L $f 2>/dev/null | \
+       grep "ELF 64-bit" >/dev/null; then echo "()(64bit)"; fi`
+    ldd $f | awk '/=>/ {
+       if ($1 !~ /libNoVersion.so/ && $1 !~ /4[um]lib.so/) {
+           gsub(/'\''"/,"\\&",$1);
+           printf "%s'$lib64'\n", $1
+       }
+    }'
+done | xargs -r -n 1 basename | sort -u
 
+#
+# --- Library sonames.
 for f in $liblist; do
-    ldd $f | awk '/=>/ { print $1 }'
-done | sort -u | sed "s/['\"]/\\\&/g" | xargs -r -n 1 basename | grep -v 'libNoVersion.so' | sort -u
+    [ -r $f ] || continue
+    lib64=`if file -L $f 2>/dev/null | \
+       grep "ELF 64-bit" >/dev/null; then echo "()(64bit)"; fi`
+    ldd $f | awk '/=>/ {
+       if ($1 !~ /libNoVersion.so/ && $1 !~ /4[um]lib.so/) {
+           gsub(/'\''"/,"\\&",$1);
+           printf "%s'$lib64'\n", $1
+       }
+    }'
+done | xargs -r -n 1 basename | sort -u
 
+#
+# --- Script interpreters.
 for f in $scriptlist; do
-    if [ -x $f ]; then
-       head -1 $f | sed -e 's/^\#\![   ]*//' | cut -d" " -f1
-    fi
-done | sort -u
+    [ -r $f -a -x $f ] || continue
+    interp=`head -1 $f | sed -e 's/^\#\![      ]*//' | cut -d" " -f1`
+    interplist="$interplist $interp"
+    case $interp in
+    */perl)    perllist="$perllist $f" ;;
+    *)         [ "${f%.pm} != "${f}" ] && perllist="$perllist $f" ;;
+    esac
+done
+[ -n "$interplist" ] && { echo "$interplist" | sort -u ; }
 
+#
+# --- Weak symbol versions (from glibc).
 for f in $liblist $exelist ; do
+    [ -r $f ] || continue
+    lib64=`if file -L $f 2>/dev/null | \
+       grep "ELF 64-bit" >/dev/null; then echo "()(64bit)"; fi`
     objdump -p $f | awk '
        BEGIN { START=0; LIBNAME=""; }
        /Version References:/ { START=1; }
@@ -34,7 +74,24 @@ for f in $liblist $exelist ; do
            sub(/:/, "", $3);
            LIBNAME=$3;
        }
-       (START==1) && (LIBNAME!="") && ($4~/^GLIBC_*/) { print LIBNAME "(" $4 ")"; }
+       (START==1) && (LIBNAME!="") && ($4~/^GLIBC_*/) {
+           print LIBNAME "(" $4 ")'$lib64'";
+       }
        /^$/ { START=0; }
     '
 done | sort -u
+
+#
+# --- Perl modules.
+[ -x /usr/lib/rpm/perl.req -a -n "$perllist" ] && \
+    echo $perllist | tr [:blank:] \\n | /usr/lib/rpm/perl.req | sort -u
+
+#
+# --- Python modules.
+[ -x /usr/lib/rpm/python.req -a -n "$pythonlist" ] && \
+    echo $pythonlist | tr [:blank:] \\n | /usr/lib/rpm/python.req | sort -u
+
+#
+# --- Tcl modules.
+[ -x /usr/lib/rpm/tcl.req -a -n "$tcllist" ] && \
+    echo $tcllist | tr [:blank:] \\n | /usr/lib/rpm/tcl.req | sort -u
index fa95113..aa23cc1 100644 (file)
@@ -3,12 +3,21 @@
 # This script reads filenames from STDIN and outputs any relevant provides
 # information that needs to be included in the package.
 
-filelist=$(grep "\\.so" | grep -v "^/lib/ld.so" | xargs file -L 2>/dev/null | grep "ELF.*shared object" | cut -d: -f1)
+filelist=`sed "s/['\"]/\\\&/g"`
 
-for f in $filelist; do
+solist=$(echo $filelist | grep "\\.so" | grep -v "^/lib/ld.so" | \
+       xargs file -L 2>/dev/null | grep "ELF.*shared object" | cut -d: -f1)
+perllist=$(echo $filelist | grep "\\.pm")
+pythonlist=
+tcllist=
+
+#
+# --- Library sonames and weak symbol versions (from glibc).
+for f in $solist; do
     soname=$(objdump -p $f | awk '/SONAME/ {print $2}')
 
-    lib64=`if file -L $f 2>/dev/null | grep "ELF 64-bit" >/dev/null; then echo "()(64bit)"; fi`
+    lib64=`if file -L $f 2>/dev/null | \
+       grep "ELF 64-bit" >/dev/null; then echo "()(64bit)"; fi`
     if [ "$soname" != "" ]; then
        if [ ! -L $f ]; then
            echo $soname$lib64
@@ -27,3 +36,18 @@ for f in $filelist; do
        echo ${f##*/}$lib64
     fi
 done | sort -u
+
+#
+# --- Perl modules.
+[ -x /usr/lib/rpm/perl.prov -a -n "$perllist" ] &&
+    echo $perllist | tr [:blank:] \\n | /usr/lib/rpm/perl.prov | sort -u
+
+#
+# --- Python modules.
+[ -x /usr/lib/rpm/python.prov -a -n "$pythonlist" ] &&
+    echo $pythonlist | tr [:blank:] \\n | /usr/lib/rpm/python.prov | sort -u
+
+#
+# --- Tcl modules.
+[ -x /usr/lib/rpm/tcl.prov -a -n "$tcllist" ] &&
+    echo $tcllist | tr [:blank:] \\n | /usr/lib/rpm/tcl.prov | sort -u
index b93b6c6..9a92d5d 100644 (file)
@@ -1,35 +1,72 @@
-#!/bin/sh
+#!/bin/bash
 
-# note this works for both a.out and ELF executables
-# it also auto-generates requirment lines for shell scripts
+#
+# Auto-generate requirements for executables (both ELF and a.out) and library
+# sonames, script interpreters, and perl modules.
+#
 
 ulimit -c 0
 
 filelist=`sed "s/['\"]/\\\&/g"`
-exelist=`echo $filelist | xargs -r file | grep ":.*executable" | cut -d: -f1 `
-scriptlist=`echo $filelist | xargs -r file | egrep ":.* (commands|script) " | cut -d: -f1 `
-liblist=`echo $filelist | xargs -r file | grep ":.*shared object" | cut -d : -f1 `
+exelist=`echo $filelist | xargs -r file | egrep -v ":.* (commands|script) " | \
+       grep ":.*executable" | cut -d: -f1`
+scriptlist=`echo $filelist | xargs -r file | \
+       egrep ":.* (commands|script) " | cut -d: -f1`
+liblist=`echo $filelist | xargs -r file | \
+       grep ":.*shared object" | cut -d : -f1`
 
+interplist=
+perllist=
+pythonlist=
+tcllist=
+
+#
+# --- Executable sonames.
 for f in $exelist; do
-    lib64=`if file -L $f 2>/dev/null | grep "ELF 64-bit" >/dev/null; then echo "()(64bit)"; fi`
-    if [ -x $f ]; then
-       ldd $f | awk '/=>/ { if ($1 !~ /libNoVersion.so/ && $1 !~ /4[um]lib.so/) { gsub(/'\''"/,"\\&",$1); printf "%s'$lib64'\n", $1 } }'
-    fi
+    [ -r $f -a -x $f ] || continue
+    lib64=`if file -L $f 2>/dev/null | \
+       grep "ELF 64-bit" >/dev/null; then echo "()(64bit)"; fi`
+    ldd $f | awk '/=>/ {
+       if ($1 !~ /libNoVersion.so/ && $1 !~ /4[um]lib.so/) {
+           gsub(/'\''"/,"\\&",$1);
+           printf "%s'$lib64'\n", $1
+       }
+    }'
 done | xargs -r -n 1 basename | sort -u
 
+#
+# --- Library sonames.
 for f in $liblist; do
-    lib64=`if file -L $f 2>/dev/null | grep "ELF 64-bit" >/dev/null; then echo "()(64bit)"; fi`
-    ldd $f | awk '/=>/ { if ($1 !~ /libNoVersion.so/ && $1 !~ /4[um]lib.so/) { gsub(/'\''"/,"\\&",$1); printf "%s'$lib64'\n", $1 } }'
+    [ -r $f ] || continue
+    lib64=`if file -L $f 2>/dev/null | \
+       grep "ELF 64-bit" >/dev/null; then echo "()(64bit)"; fi`
+    ldd $f | awk '/=>/ {
+       if ($1 !~ /libNoVersion.so/ && $1 !~ /4[um]lib.so/) {
+           gsub(/'\''"/,"\\&",$1);
+           printf "%s'$lib64'\n", $1
+       }
+    }'
 done | xargs -r -n 1 basename | sort -u
 
+#
+# --- Script interpreters.
 for f in $scriptlist; do
-    if [ -x $f ]; then
-       head -1 $f | sed -e 's/^\#\![   ]*//' | cut -d" " -f1
-    fi
-done | sort -u
+    [ -r $f -a -x $f ] || continue
+    interp=`head -1 $f | sed -e 's/^\#\![      ]*//' | cut -d" " -f1`
+    interplist="$interplist $interp"
+    case $interp in
+    */perl)    perllist="$perllist $f" ;;
+    *)         [ "${f%.pm} != "${f}" ] && perllist="$perllist $f" ;;
+    esac
+done
+[ -n "$interplist" ] && { echo "$interplist" | sort -u ; }
 
+#
+# --- Weak symbol versions (from glibc).
 for f in $liblist $exelist ; do
-    lib64=`if file -L $f 2>/dev/null | grep "ELF 64-bit" >/dev/null; then echo "(64bit)"; fi`
+    [ -r $f ] || continue
+    lib64=`if file -L $f 2>/dev/null | \
+       grep "ELF 64-bit" >/dev/null; then echo "()(64bit)"; fi`
     objdump -p $f | awk '
        BEGIN { START=0; LIBNAME=""; }
        /Version References:/ { START=1; }
@@ -37,7 +74,24 @@ for f in $liblist $exelist ; do
            sub(/:/, "", $3);
            LIBNAME=$3;
        }
-       (START==1) && (LIBNAME!="") && ($4!="") { print LIBNAME "(" $4 ")'$lib64'"; }
+       (START==1) && (LIBNAME!="") && ($4~/^GLIBC_*/) {
+           print LIBNAME "(" $4 ")'$lib64'";
+       }
        /^$/ { START=0; }
     '
 done | sort -u
+
+#
+# --- Perl modules.
+[ -x /usr/lib/rpm/perl.req -a -n "$perllist" ] && \
+    echo $perllist | tr [:blank:] \\n | /usr/lib/rpm/perl.req | sort -u
+
+#
+# --- Python modules.
+[ -x /usr/lib/rpm/python.req -a -n "$pythonlist" ] && \
+    echo $pythonlist | tr [:blank:] \\n | /usr/lib/rpm/python.req | sort -u
+
+#
+# --- Tcl modules.
+[ -x /usr/lib/rpm/tcl.req -a -n "$tcllist" ] && \
+    echo $tcllist | tr [:blank:] \\n | /usr/lib/rpm/tcl.req | sort -u
index a457100..ae404e6 100755 (executable)
@@ -17,10 +17,23 @@ for f in $scriptlist; do
     esac
 done | sort -u
 
+for f in $filelist; do
+    [ -r $f ] || continue
+    if echo $f | grep -q '\.pm$'
+    then
+        modules="$modules $f"
+    fi
+done
+
+[ -n "$modules" ] && perllist="$perllist $modules"
+
 #
 # Generate perl module dependencies, if any.
 set -x
 [ -x /usr/lib/rpm/perl.req -a -n "$perllist" ] && \
        echo $perllist | tr [:blank:] \\n | /usr/lib/rpm/perl.req | sort -u
+
+#
+# Then process the files as usual.
 set +x
 echo $filelist | /usr/lib/rpm/find-requires
index c9723f8..1dc6a62 100755 (executable)
@@ -67,7 +67,7 @@ foreach $module (sort keys %require) {
 
     # I am not using rpm3.0 so I do not want spaces arround my
     # operators. Also I will need to change the processing of the
-    # $RPM_* vairable when I upgrade.
+    # $RPM_* variable when I upgrade.
 
     print "perl($module) = $require{$module}\n";
   }
@@ -82,8 +82,7 @@ sub process_file {
   my ($file) = @_;
   chomp $file;
   
-  open(FILE, "<$file")||
-    die("$0: Could not open file: '$file' : $!\n");
+  open(FILE, "<$file") || return;
 
   my ($package, $version) = ();
 
@@ -124,9 +123,9 @@ sub process_file {
 
     # here are examples of VERSION lines from the perl distribution
 
-    #FindBin.pm:$VERSION = $VERSION = sprintf("%d.%02d", q$Revision: 1.3 $ =~ /(\d+)\.(\d+)/);
-    #ExtUtils/Install.pm:$VERSION = substr q$Revision: 1.3 $, 10;
-    #CGI/Apache.pm:$VERSION = (qw$Revision: 1.3 $)[1];
+    #FindBin.pm:$VERSION = $VERSION = sprintf("%d.%02d", q$Revision: 1.4 $ =~ /(\d+)\.(\d+)/);
+    #ExtUtils/Install.pm:$VERSION = substr q$Revision: 1.4 $, 10;
+    #CGI/Apache.pm:$VERSION = (qw$Revision: 1.4 $)[1];
     #DynaLoader.pm:$VERSION = $VERSION = "1.03";     # avoid typo warning
 
     if ( 
@@ -161,7 +160,7 @@ sub process_file {
 
   }
 
-  close(FILE)||
+  close(FILE) ||
     die("$0: Could not close file: '$file' : $!\n");
 
   return ;
index e63235d..6e28761 100755 (executable)
@@ -76,8 +76,7 @@ sub process_file {
   my ($file) = @_;
   chomp $file;
   
-  open(FILE, "<$file")||
-    die("$0: Could not open file: '$file' : $!\n");
+  open(FILE, "<$file") || return;
   
   while (<FILE>) {
     
@@ -192,7 +191,7 @@ sub process_file {
     
   }
 
-  close(FILE)||
+  close(FILE) ||
     die("$0: Could not close file: '$file' : $!\n");
   
   return ;