--- autoconf-2.13/autoscan.pl~ Tue Jul 10 19:00:10 2001
+++ autoconf-2.13/autoscan.pl Tue Jul 10 19:00:10 2001
@@ -123,14 +123,33 @@
# Called by &find on each file.
sub wanted
{
- if (/^.*\.[chlymC]$/ || /^.*\.cc$/) {
- $name =~ s?^\./??; push(@cfiles, $name);
- }
- elsif (/^[Mm]akefile$/ || /^[Mm]akefile\.in$/ || /^GNUmakefile$/) {
- $name =~ s?^\./??; push(@makefiles, $name);
- }
- elsif (/^.*\.sh$/) {
- $name =~ s?^\./??; push(@shfiles, $name);
+ # Wanted only if there is no corresponding FILE.in.
+ return
+ if -f "$_.in";
+
+ # Strip a useless leading `./'.
+ $name =~ s,^\./,,;
+
+ if (/^.*\.[chlymC](\.in)?$/)
+ {
+ push (@cfiles, $name);
+ $programs{cc}++;
+ }
+ elsif (/^.*\.(cc|cpp|cxx|CC|C|hh|hpp|hxx|HH|H|yy|ypp|ll|lpp)(\.in)?$/)
+ {
+ push (@cfiles, $name);
+ $programs{CC}++;
+ }
+ elsif (/^[Mm]akefile(\.in)?$/ || /^GNUmakefile$/)
+ {
+ # Wanted only if there is no corresponding Makefile.in.
+ # Using Find, $_ contains the current filename with the current
+ # directory of the walk through.
+ push (@makefiles, $name);
+ }
+ elsif (/^.*\.sh(\.in)?$/)
+ {
+ push (@shfiles, $name);
}
}
@@ -244,7 +263,7 @@
$libraries{$1}++;
}
# Tokens in the code.
- while (s/\W([a-zA-Z_]\w*)\W/ /) {
+ while (s/\W([a-zA-Z_][\w\+\.-]*)\W/ /) {
$programs{$1}++;
}
}