diff options
author | knu <knu@FreeBSD.org> | 2000-07-19 10:44:14 +0000 |
---|---|---|
committer | knu <knu@FreeBSD.org> | 2000-07-19 10:44:14 +0000 |
commit | 25c72a2d36a21ca174f1973f3bd80239cb040300 (patch) | |
tree | 9a1e75712314db4d9b031ece4d4bfc0dcb079e47 /devel/automake17/files | |
parent | 2413cbb5b9028a54e39820520bf7f5fb8a373255 (diff) | |
download | FreeBSD-ports-25c72a2d36a21ca174f1973f3bd80239cb040300.zip FreeBSD-ports-25c72a2d36a21ca174f1973f3bd80239cb040300.tar.gz |
- Do not read a file more than once, where the sameness is judged by
the inode numbers of files.
This should fix the "duplicated macros" error when aclocal is
invoked with `-I ${X11BASE}/share/aclocal' explicitly.
- Do not scan ${X11BASE}/share/aclocal if it does not exist. (Or it's
(a symlink to)* a directory)
This should fix the "no such directory" error when you build a non-X
port without X installed. (like on bento)
Diffstat (limited to 'devel/automake17/files')
-rw-r--r-- | devel/automake17/files/patch-ad | 50 |
1 files changed, 44 insertions, 6 deletions
diff --git a/devel/automake17/files/patch-ad b/devel/automake17/files/patch-ad index 2d5b122..ef9a6f4 100644 --- a/devel/automake17/files/patch-ad +++ b/devel/automake17/files/patch-ad @@ -1,11 +1,49 @@ ---- aclocal.in.orig Sun Jan 10 20:35:27 1999 -+++ aclocal.in Sat Jul 15 13:59:55 2000 -@@ -103,7 +103,7 @@ +--- aclocal.in.orig Mon Jan 11 11:35:27 1999 ++++ aclocal.in Wed Jul 19 19:13:05 2000 +@@ -34,6 +34,8 @@ + # Note that this isn't pkgdatadir, but a separate directory. + $acdir = "@datadir@/aclocal"; + ++$acdir_x11 = '%%X11BASE%%/share/aclocal'; ++ + # Some globals. + + # Exit status. +@@ -103,6 +105,9 @@ local (@dirlist) = &parse_arguments (@ARGV); --&scan_m4_files ($acdir, @dirlist); -+&scan_m4_files ($acdir, '%%X11BASE%%/share/aclocal', @dirlist); ++ ++unshift @dirlist, $acdir_x11 if -d "$acdir_x11/."; ++ + &scan_m4_files ($acdir, @dirlist); &scan_configure; if (! $exit_status) - { +@@ -266,12 +271,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, $expr); ++ local ($file, $fullfile, $ino, $expr); + foreach $file (sort grep (! /^\./, readdir (DIR))) + { + # Only examine .m4 files. +@@ -281,6 +287,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); |