GNU bug report logs -
#71534
[PATCH] aclocal: support ACLOCAL_PATH correctly on OS/2
Previous Next
Reported by: KO Myung-Hun <komh78 <at> gmail.com>
Date: Thu, 13 Jun 2024 11:22:02 UTC
Severity: normal
Tags: patch
Done: Karl Berry <karl <at> freefriends.org>
Bug is archived. No further changes may be made.
Full log
Message #17 received at 71534 <at> debbugs.gnu.org (full text, mbox):
- foreach my $dir (reverse split /:/, $ENV{"ACLOCAL_PATH"})
+ my $sep = $^O eq 'os2' ? ';' : ':';
+ foreach my $dir (reverse split /$sep/, $ENV{"ACLOCAL_PATH"})
Thanks for the report. I added a check for Windows and committed it.
--best, karl.
-----------------------------------------------------------------------------
aclocal: path separator is ; on OS/2 and Windows.
Adapted from and fixes https://bugs.gnu.org/71534.
* bin/aclocal.in (parse_ACLOCAL_PATH): use $^O to recognize OS/2
and Windows for the environment path element separator.
* NEWS: mention this.
diff --git a/NEWS b/NEWS
index 37a66df03..7aae0f92f 100644
--- a/NEWS
+++ b/NEWS
@@ -106,8 +106,10 @@ New in 1.17:
- Pass any options given to AM_PROG_LEX on to AC_PROG_LEX.
(bug#65600, bug#65730)
+ - aclocal: recognize ; as path separator on OS/2 and Windows. (bug#71534)
+
- Hash iterations with external effects now consistently sort keys.
- (bug#25629)
+ (bug#25629, bug#46744)
- tests: avoid some declaration conflicts for lex et al. on SunOS.
(bug#34151 and others)
diff --git a/bin/aclocal.in b/bin/aclocal.in
index 814862af2..140c5ad29 100644
--- a/bin/aclocal.in
+++ b/bin/aclocal.in
@@ -1165,11 +1165,18 @@ sub parse_arguments ()
sub parse_ACLOCAL_PATH ()
{
return if not defined $ENV{"ACLOCAL_PATH"};
+
# Directories in ACLOCAL_PATH should take precedence over system
# directories, so we use unshift. However, directories that
# come first in ACLOCAL_PATH take precedence over directories
# coming later, which is why the result of split is reversed.
- foreach my $dir (reverse split /:/, $ENV{"ACLOCAL_PATH"})
+
+ # OS/2 and Windows (but not Cygwin, etc.) use ; for the path separator.
+ # Possibly it would be cleaner to use path_sep from Config,
+ # but this seems simpler.
+ my $path_sep = $^O =~ /^(os2|mswin)/i ? ';' : ':';
+
+ foreach my $dir (reverse split $path_sep, $ENV{"ACLOCAL_PATH"})
{
unshift (@system_includes, $dir) if $dir ne '' && -d $dir;
}
compile finished at Sun Jun 16 08:41:06 2024
This bug report was last modified 1 year and 52 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.