Package: autoconf2.13
Version: 2.13-60
Severity: normal
Tags: patch

Hi,

autoscan.pl, as shipped by autoconf2.13 currently uses find.pl, a perl 4 era 
library, which is deprecated and will not be part of perl 5.16. Even now, now 
using autoscan.pl emits warnings about find.pl deprecation.

There are two ways to fix:

 * adopt autoscan.pl to use the File::Find module (also part of Perl core); the 
   attached patch implements this.
 * depend on libperl4-corelibs-perl | perl (<< 5.12.3-7), which would ensure 
   that find.pl is available either from the separate package (out of core) or 
   in a perl core version whithout depreaction warnings (useful for backports, 
   where libperl4-corelibs-perl is not available).

Thanks,
    dam

-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'stable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 3.2.0-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=bg_BG.UTF-8, LC_CTYPE=bg_BG.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
diff --git a/autoscan.pl b/autoscan.pl
index 3285236..afbd66a 100644
--- a/autoscan.pl
+++ b/autoscan.pl
@@ -19,7 +19,7 @@
 
 # Written by David MacKenzie <d...@gnu.ai.mit.edu>.
 
-require "find.pl";
+use File::Find qw(find);
 
 $datadir = $ENV{"AC_MACRODIR"} || "@datadir@";
 $verbose = 0;
@@ -30,7 +30,7 @@ undef %programs_macros;
 
 &parse_args;
 &init_tables;
-&find('.');
+find(\&wanted, '.');
 &scan_files;
 &output;
 
@@ -124,13 +124,13 @@ sub init_tables
 sub wanted
 {
     if (/^.*\.[chlymC]$/ || /^.*\.cc$/) {
-	$name =~ s?^\./??; push(@cfiles, $name);
+	$File::Find::name =~ s?^\./??; push(@cfiles, $File::Find::name);
     }
     elsif (/^[Mm]akefile$/ || /^[Mm]akefile\.in$/ || /^GNUmakefile$/) {
-	$name =~ s?^\./??; push(@makefiles, $name);
+	$File::Find::name =~ s?^\./??; push(@makefiles, $File::Find::name);
     }
     elsif (/^.*\.sh$/) {
-	$name =~ s?^\./??; push(@shfiles, $name);
+	$File::Find::name =~ s?^\./??; push(@shfiles, $File::Find::name);
     }
 }
 

Reply via email to