diff options
author | Caleb Tennis <caleb@gentoo.org> | 2004-05-27 13:39:40 +0000 |
---|---|---|
committer | Caleb Tennis <caleb@gentoo.org> | 2004-05-27 13:39:40 +0000 |
commit | 508fe414d6fcd931a3c9d43ec3153b7615375137 (patch) | |
tree | f9b625354fa6a352717de2374d38375aea6da267 /sys-devel/autoconf/files | |
parent | Fixing bug #51821 (gcc 3.3 compilation problems) (Manifest recommit) (diff) | |
download | gentoo-2-508fe414d6fcd931a3c9d43ec3153b7615375137.tar.gz gentoo-2-508fe414d6fcd931a3c9d43ec3153b7615375137.tar.bz2 gentoo-2-508fe414d6fcd931a3c9d43ec3153b7615375137.zip |
New version which incorporates a new ac-wrapper for a few bug fixes (#47772 and #41389)
Diffstat (limited to 'sys-devel/autoconf/files')
-rw-r--r-- | sys-devel/autoconf/files/ac-wrapper-4.pl | 83 | ||||
-rw-r--r-- | sys-devel/autoconf/files/digest-autoconf-2.59-r4 | 2 |
2 files changed, 85 insertions, 0 deletions
diff --git a/sys-devel/autoconf/files/ac-wrapper-4.pl b/sys-devel/autoconf/files/ac-wrapper-4.pl new file mode 100644 index 000000000000..e03c0fdd666c --- /dev/null +++ b/sys-devel/autoconf/files/ac-wrapper-4.pl @@ -0,0 +1,83 @@ +#!/usr/bin/perl +# +# +# Guillaume Cottenceau (gc@mandrakesoft.com) +# +# Copyright 2001 MandrakeSoft +# +# This software may be freely redistributed under the terms of the GNU +# public license. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# +# +# Executes the correct autoconf version. +# +# - defaults to autoconf-2.13 +# - runs autoconf-2.5x if it exists and... +# - envvar WANT_AUTOCONF is set to `2.5' +# -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.6 or superior, which +# specifically needs autoconf-2.5x +# + +#use MDK::Common; + +sub cat_ { local *F; open F, $_[0] or return; my @l = <F>; wantarray ? @l : join '', @l } +sub ac_version { + return ((@versions = cat_(shift) =~ /^\s*\[?AC_PREREQ\(\[?([^\)]{3}[0-9]?)[^\)]*\]?\)/mg) ? ((sort @versions)[-1]) : ''); +} + +my $binary = "$0-2.13"; +my $binary_new = "$0-2.5x"; + +# Autoconf is really getting out of hand, so rather start supporting +# WANT_AUTOCONF = "2.5" the like. Unfortunately it override the old +# variables, so if not set, just convert the old variables .... +if ($ENV{WANT_AUTOCONF} eq "") { + if ($ENV{WANT_AUTOCONF_2_1}) { + $ENV{WANT_AUTOCONF} = '2.1'; + } elsif ($ENV{WANT_AUTOCONF_2_5}) { + $ENV{WANT_AUTOCONF} = '2.5'; + } +} + +if ($ENV{WANT_AUTOCONF} ne '2.1') { + if ((! -x $binary) # handle stuff like autom4te, where only 2.5x have the binary + || (-x $binary_new # user may have only 2.13 + && (($ENV{WANT_AUTOCONF} eq '2.5') + || -r 'configure.ac' + || ac_version('configure.in') gt '2.13' + || (cat_('configure') =~ /^# Generated by Autoconf (\S+)/m ? $1 : '') gt '2.13' + || (cat_('Makefile.in') =~ /^# Makefile\.in generated by automake (\S+)/ ? $1 : '') ge '1.6' + || ac_version('aclocal.m4') gt '2.13'))) { + $ENV{WANT_AUTOCONF} = '2.5'; # to prevent further "cats" and to enhance consistency (possible cwd etc) + $binary = $binary_new; + } else { + $ENV{WANT_AUTOCONF} = '2.1'; # for further consistency + } +} + +# Set AUTOM4TE to the proper version (bug #40983). +# Do not set it for 2.13 though, as it does not ship autom4te. +if(($ENV{AUTOM4TE} eq "") + && ($ENV{WANT_AUTOCONF} = '2.5') + && ($0 ne 'autom4te')) { + $ENV{AUTOM4TE} = "autom4te-2.5x"; +} + +$ENV{WANT_ACWRAPPER_DEBUG} and print STDERR "ac-wrapper: will execute <$binary>\n"; + +exec $binary, @ARGV; + +die "ac-wrapper: ouch, couldn't call binary ($binary).\n"; diff --git a/sys-devel/autoconf/files/digest-autoconf-2.59-r4 b/sys-devel/autoconf/files/digest-autoconf-2.59-r4 new file mode 100644 index 000000000000..a9ae401381fd --- /dev/null +++ b/sys-devel/autoconf/files/digest-autoconf-2.59-r4 @@ -0,0 +1,2 @@ +MD5 1ee40f7a676b3cfdc0e3f7cd81551b5f autoconf-2.59.tar.bz2 925073 +MD5 9de56d4a161a723228220b0f425dc711 autoconf-2.13.tar.gz 443844 |