diff options
-rwxr-xr-x | am-wrapper.pl | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/am-wrapper.pl b/am-wrapper.pl index 3d71e75..4aa266c 100755 --- a/am-wrapper.pl +++ b/am-wrapper.pl @@ -17,28 +17,32 @@ # # - defaults to automake-1.4 # - runs automake-1.6x if it exists and... -# - envvar WANT_AUTOMAKE_1_6 is set to `1' -# -or- -# - configure.ac is present -# -or- -# - `configure.in' contains AC_PREREQ and the value's 3 first letters -# are stringwise greater than '2.1' +# - envvar WANT_AUTOMAKE_1_6 is set to `1' +# - runs automake-1.5x if it exists and... +# - envvar WANT_AUTOMAKE_1_5 is set to `1' +# or - configure.ac is present +# or - `configure.in' contains AC_PREREQ and the value's 3 first letters +# are stringwise greater than '2.1' # #use MDK::Common; sub cat_ { local *F; open F, $_[0] or return; my @l = <F>; wantarray ? @l : join '', @l } -my $binary = "$0-1.4"; -my $binary_new = "$0-1.6x"; +my $binary = "$0-1.4"; +my $binary_new = "$0-1.5x"; +my $binary_vnew = "$0-1.6x"; if (!$ENV{WANT_AUTOMAKE_1_4}) { - if (-x $binary_new # user may have only 2.13 - && ($ENV{WANT_AUTOMAKE_1_6} + if (-x $binary_vnew # user may not have _1_6 + && ($ENV{WANT_AUTOMAKE_1_6}) ) { + $binary = $binary_vnew; + } elsif (-x $binary_new # user may have only 2.13 + && ($ENV{WANT_AUTOMAKE_1_5} || -r 'configure.ac' || (cat_('configure.in') =~ /^\s*AC_PREREQ\(\[?([^\)]{3})[^\)]*\)/m ? $1 : '') gt '2.1' || (cat_('aclocal.m4') =~ /^\s*AC_PREREQ\(\[?([^\)]{3})[^\)]*\)/m ? $1 : '') gt '2.1')) { - $ENV{WANT_AUTOMAKE_1_6} = 1; # to prevent further "cats" and to enhance consistency (possible cwd etc) + $ENV{WANT_AUTOMAKE_1_5} = 1; # to prevent further "cats" and to enhance consistency (possible cwd etc) $binary = $binary_new; } else { $ENV{WANT_AUTOMAKE_1_4} = 1; # for further consistency |