128 lines
3.5 KiB
Diff
128 lines
3.5 KiB
Diff
https://bugs.gentoo.org/424453
|
||
|
||
From 6bf58a59a1f3803e57e3f0378aa9344686707b75 Mon Sep 17 00:00:00 2001
|
||
From: Stefano Lattarini <stefano.lattarini@gmail.com>
|
||
Date: Mon, 28 May 2012 13:32:03 +0200
|
||
Subject: [PATCH] aclocal: declare function prototypes, do not use '&' in
|
||
function calls
|
||
|
||
This change will also fix automake bug#11543 (from a report by Matt
|
||
Burgess).
|
||
|
||
* aclocal.in: Declare prototypes for almost all functions early, before
|
||
any actual function definition (but omit the prototype for the dynamically
|
||
generated '&search' function). Add prototypes to any function definition.
|
||
Remove '&' from function invocations (i.e., simply use "func(ARGS..)"
|
||
instead of "&func(ARGS...)").
|
||
* THANKS, NEWS: Update.
|
||
|
||
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
|
||
---
|
||
NEWS | 4 ++++
|
||
THANKS | 1 +
|
||
aclocal.in | 42 ++++++++++++++++++++++++++++++++++--------
|
||
3 files changed, 39 insertions(+), 8 deletions(-)
|
||
|
||
diff --git a/aclocal.in b/aclocal.in
|
||
index dfb851b..e8855d5 100644
|
||
--- a/aclocal.in
|
||
+++ b/aclocal.in
|
||
@@ -152,8 +152,34 @@ my $erase_me;
|
||
|
||
################################################################
|
||
|
||
+# Prototypes for all subroutines.
|
||
+
|
||
+sub unlink_tmp (;$);
|
||
+sub xmkdir_p ($);
|
||
+sub check_acinclude ();
|
||
+sub reset_maps ();
|
||
+sub install_file ($$);
|
||
+sub list_compare (\@\@);
|
||
+sub scan_m4_dirs ($@);
|
||
+sub scan_m4_files ();
|
||
+sub add_macro ($);
|
||
+sub scan_configure_dep ($);
|
||
+sub add_file ($);
|
||
+sub scan_file ($$$);
|
||
+sub strip_redundant_includes (%);
|
||
+sub trace_used_macros ();
|
||
+sub scan_configure ();
|
||
+sub write_aclocal ($@);
|
||
+sub usage ($);
|
||
+sub version ();
|
||
+sub handle_acdir_option ($$);
|
||
+sub parse_arguments ();
|
||
+sub parse_ACLOCAL_PATH ();
|
||
+
|
||
+################################################################
|
||
+
|
||
# Erase temporary file ERASE_ME. Handle signals.
|
||
-sub unlink_tmp
|
||
+sub unlink_tmp (;$)
|
||
{
|
||
my ($sig) = @_;
|
||
|
||
@@ -350,7 +376,7 @@ sub scan_m4_dirs ($@)
|
||
next if $file eq 'aclocal.m4';
|
||
|
||
my $fullfile = File::Spec->canonpath ("$m4dir/$file");
|
||
- &scan_file ($type, $fullfile, 'aclocal');
|
||
+ scan_file ($type, $fullfile, 'aclocal');
|
||
}
|
||
closedir (DIR);
|
||
}
|
||
@@ -361,12 +387,12 @@ sub scan_m4_files ()
|
||
{
|
||
# First, scan configure.ac. It may contain macro definitions,
|
||
# or may include other files that define macros.
|
||
- &scan_file (FT_USER, $configure_ac, 'aclocal');
|
||
+ scan_file (FT_USER, $configure_ac, 'aclocal');
|
||
|
||
# Then, scan acinclude.m4 if it exists.
|
||
if (-f 'acinclude.m4')
|
||
{
|
||
- &scan_file (FT_USER, 'acinclude.m4', 'aclocal');
|
||
+ scan_file (FT_USER, 'acinclude.m4', 'aclocal');
|
||
}
|
||
|
||
# Finally, scan all files in our search paths.
|
||
@@ -380,7 +406,7 @@ sub scan_m4_files ()
|
||
my $search = "sub search {\nmy \$found = 0;\n";
|
||
foreach my $key (reverse sort keys %map)
|
||
{
|
||
- $search .= ('if (/\b\Q' . $key . '\E(?!\w)/) { & add_macro ("' . $key
|
||
+ $search .= ('if (/\b\Q' . $key . '\E(?!\w)/) { add_macro ("' . $key
|
||
. '"); $found = 1; }' . "\n");
|
||
}
|
||
$search .= "return \$found;\n};\n";
|
||
@@ -403,7 +429,7 @@ sub add_macro ($)
|
||
|
||
verb "saw macro $macro";
|
||
$macro_seen{$macro} = 1;
|
||
- &add_file ($map{$macro});
|
||
+ add_file ($map{$macro});
|
||
}
|
||
|
||
# scan_configure_dep ($file)
|
||
@@ -465,7 +491,7 @@ sub scan_configure_dep ($)
|
||
}
|
||
|
||
add_macro ($_) foreach (@rlist);
|
||
- &scan_configure_dep ($_) foreach @ilist;
|
||
+ scan_configure_dep ($_) foreach @ilist;
|
||
}
|
||
|
||
# add_file ($FILE)
|
||
@@ -931,7 +957,7 @@ EOF
|
||
}
|
||
|
||
# Print version and exit.
|
||
-sub version()
|
||
+sub version ()
|
||
{
|
||
print <<EOF;
|
||
aclocal (GNU $PACKAGE) $VERSION
|
||
--
|
||
2.1.3
|
||
|