diff options
author | 2002-09-23 18:28:25 +0000 | |
---|---|---|
committer | 2002-09-23 18:28:25 +0000 | |
commit | 622da100723a1252a42cf177cfdcd1f2fa9ff92d (patch) | |
tree | c90c05d9597b63a2fdaadb2f0920ec5323ac7422 | |
parent | new version (diff) | |
download | autotools-wrappers-622da100723a1252a42cf177cfdcd1f2fa9ff92d.tar.gz autotools-wrappers-622da100723a1252a42cf177cfdcd1f2fa9ff92d.tar.bz2 autotools-wrappers-622da100723a1252a42cf177cfdcd1f2fa9ff92d.zip |
wrapper updates
Firstly, 'am-wrapper.pl' is based on 'ac-wrapper.pl'. This is a nifty
script by Guillaume Cottenceau (gc@mandrakesoft.com). This release
adds updates for automake-1.6 detection.
-rwxr-xr-x | am-wrapper.pl | 29 |
1 files changed, 23 insertions, 6 deletions
diff --git a/am-wrapper.pl b/am-wrapper.pl index 4aa266c..bb397c7 100755 --- a/am-wrapper.pl +++ b/am-wrapper.pl @@ -17,14 +17,24 @@ # # - defaults to automake-1.4 # - runs automake-1.6x if it exists and... -# - envvar WANT_AUTOMAKE_1_6 is set to `1' +# - envvar WANT_AUTOMAKE_1_6 is set to `1' +# -or- +# - `Makefile.in' was generated by automake-1.6 or superior, which +# specifically needs automake-1.6x # - 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 +# - 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' +# -or- +# - `configure' is already present and was generated by autoconf greater than +# '2.1' +# -or- +# - `Makefile.in' was generated by automake-1.5x or superior, which +# specifically needs automake-1.5x # - #use MDK::Common; sub cat_ { local *F; open F, $_[0] or return; my @l = <F>; wantarray ? @l : join '', @l } @@ -33,14 +43,21 @@ my $binary = "$0-1.4"; my $binary_new = "$0-1.5x"; my $binary_vnew = "$0-1.6x"; +# question here is do we really want 1.5 or 1.6? Out of a KDE outlook, it +# should rather be 1.5, and since most people would rather have migrated to +# 1.5, and then stay with it for a bit (those 1.4 die hards ..), only have +# the 'configure.ac' test for 1.5 ... if (!$ENV{WANT_AUTOMAKE_1_4}) { if (-x $binary_vnew # user may not have _1_6 - && ($ENV{WANT_AUTOMAKE_1_6}) ) { + && ($ENV{WANT_AUTOMAKE_1_6} + || (cat_('Makefile.in') =~ /^# Makefile\.in generated by automake (\S+)/ ? $1 : '') ge '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_('configure') =~ /^# Generated by Autoconf (\S+)/m ? $1 : '') gt '2.1' + || (cat_('Makefile.in') =~ /^# Makefile\.in generated by automake (\S+)/ ? $1 : '') ge '1.5' || (cat_('aclocal.m4') =~ /^\s*AC_PREREQ\(\[?([^\)]{3})[^\)]*\)/m ? $1 : '') gt '2.1')) { $ENV{WANT_AUTOMAKE_1_5} = 1; # to prevent further "cats" and to enhance consistency (possible cwd etc) $binary = $binary_new; |