1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-05 01:55:52 +00:00
freebsd-ports/devel/automake19/files/patch-aclocal.in
2003-02-23 20:01:14 +00:00

64 lines
2.0 KiB
Plaintext

--- aclocal.in.orig Sat Oct 12 23:14:57 2002
+++ aclocal.in Thu Feb 13 14:57:16 2003
@@ -29,7 +29,7 @@
BEGIN
{
- my $perllibdir = $ENV{'perllibdir'} || '@datadir@/@PACKAGE@-@APIVERSION@';
+ my $perllibdir = $ENV{'perllibdir'} || '@datadir@/@PACKAGE@@APIPVERSION@';
unshift @INC, $perllibdir;
}
@@ -42,8 +42,9 @@
$PACKAGE = '@PACKAGE@';
# Note that this isn't pkgdatadir, but a separate directory.
# Note also that the versioned directory is handled later.
-$acdir = '@datadir@/aclocal';
+$acdir = '@datadir@/aclocal@APIPVERSION@';
$default_acdir = $acdir;
+$acdir_x11 = '%%X11BASE%%/share/aclocal';
# contains a list of directories, one per line, to be added
# to the dirlist in addition to $acdir, as if -I had been
# added to the command line. If acdir has been redirected,
@@ -188,11 +189,7 @@
$default_dirlist="$acdir/dirlist"
if $acdir ne $default_acdir;
- # Search the versioned directory near the end, and then the
- # unversioned directory last. Only do this if the user didn't
- # override acdir.
- push (@dirlist, "$acdir-$APIVERSION")
- if $acdir eq $default_acdir;
+ unshift @dirlist, $acdir_x11 if -d "$acdir_x11/.";
# By default $(datadir)/aclocal doesn't exist. We don't want to
# get an error in the case where we are searching the default
@@ -290,12 +287,13 @@
$file_contents{'acinclude.m4'} = &scan_file ('acinclude.m4');
}
+ local (@skipinolist) = ();
local ($m4dir);
foreach $m4dir (@dirlist)
{
opendir (DIR, $m4dir)
|| die "aclocal: couldn't open directory `$m4dir': $!\n";
- local ($file, $fullfile);
+ local ($file, $fullfile, $ino);
foreach $file (sort grep (! /^\./, readdir (DIR)))
{
# Only examine .m4 files.
@@ -305,6 +303,12 @@
next if $file eq 'aclocal.m4';
$fullfile = $m4dir . '/' . $file;
+
+ # Do not scan a file more than once.
+ $ino = (stat($fullfile))[1];
+ next if grep($ino eq $_, @skipinolist);
+ push @skipinolist, $ino;
+
$file_contents{$fullfile} = &scan_file ($fullfile);
}
closedir (DIR);