delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2006/01/10/12:37:40

X-Spam-Check-By: sourceware.org
Message-ID: <43C3F0D2.B359C045@dessent.net>
Date: Tue, 10 Jan 2006 09:37:22 -0800
From: Brian Dessent <brian AT dessent DOT net>
MIME-Version: 1.0
To: cygwin AT cygwin DOT com
Subject: Re: autoconf/automake problem: simple testcase [was RE: autoconf/automake: just can't get it to work at all.]
References: <SERRANO2NqFJ3sl3xbY0000002b AT SERRANO DOT CAM DOT ARTIMI DOT COM>
X-IsSubscribed: yes
Reply-To: cygwin AT cygwin DOT com
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

Dave Korn wrote:

>   Umm, it definitely *does* have an effect; see the differences it made to the
> examples I posted in the previous case.  Is it possible I have some remnants
> of the old autoconf stuff lying around?  I updated this morning and didn't see
> any problems, and nor does cygcheck report any, and a quick browse through
> /usr/share/autotools/ac-wrapper.pl shows it clearly tests and responds to
> WANT_ and FORCE_ env vars.

Right but that's autoconf which still has the version-sniffing-wrapper
stuff.  Automake doesn't have any of that and relies entirely on
/etc/alternatives.

>   It doesn't work OOTB.  Here's a simple testcase: on my system, which is
> up-to-date as of this morning, and on which I've never ever run alternatives
> to change any settings, you can't build current binutils when you configure
> with --enable-maintainer-mode.

If binutils expects automake 1.4 then I wouldn't expect it to work OOTB
since the default "alternative" that the postinstall sets up is 1.9. 
What does "update-alternatives --display automake" say?  

> ----------------------snip
> #!/bin/bash
> cd /tmp
> rm -rf autotooltest
> mkdir autotooltest
> cd autotooltest
> wget 'http://ftp.gnu.org/gnu/binutils/binutils-2.16.1.tar.bz2'
> tar xjf binutils-2.16.1.tar.bz2
> mkdir obj
> cd obj
> /tmp/autotooltest/binutils-2.16.1/configure -v --enable-maintainer-mode 2>&1 |
> tee conf.log
> make all 2>&1 | tee build.log
> ----------------------snip
> ...
> make[1]: Entering directory `/tmp/autotooltest/obj/binutils'
> cd /tmp/autotooltest/binutils-2.16.1/binutils && aclocal-1.4
> cd /tmp/autotooltest/binutils-2.16.1/binutils && automake-1.4 --cygnus
> Makefile
> cd /tmp/autotooltest/binutils-2.16.1/binutils && autoconf
> FATAL ERROR: Autoconf version 2.50 or higher is required for this script
> make[1]: *** [/tmp/autotooltest/binutils-2.16.1/binutils/configure] Error 2
> make[1]: Leaving directory `/tmp/autotooltest/obj/binutils'
> make: *** [all-binutils] Error 2

Try this on the unmodified upstream tarball:

$ find . -name \*.in -o -name \*.am -o -name \*.m4 -o -name configure \
  | xargs grep -iP -m1 "generated (automatically )?(by|using)"

From that you can see that the problem is that bfd/, gas/, gprof/,
libiberty/, and opcodes/ all use automake 1.9 / autoconf 2.59; whereas
the toplevel and binutils/ use automake 1.4 / autoconf 2.13.  It seems
like no matter what incantation of WANT_AUTOCONF_2_1 and
update-alternatives that you use, something will be unhappy as a result.

So it looks like a better way to go is to just run "autoreconf" in the
subdirs that you want to regenerate, rather than configuring at the top
level with --enable-maintainer-mode.

Brian


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019