Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Date: Mon, 22 Nov 2004 13:16:59 -0500 (EST) From: Igor Pechtchanski Reply-To: cygwin AT cygwin DOT com To: Charles Wilson cc: cygwin AT cygwin DOT com Subject: Re: bugs in autotools wrapper scripts In-Reply-To: <419FA88B.2010006@cwilson.fastmail.fm> Message-ID: References: <419F9721 DOT 5000808 AT byu DOT net> <419FA88B DOT 2010006 AT cwilson DOT fastmail DOT fm> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Scanned-By: MIMEDefang 2.39 On Sat, 20 Nov 2004, Charles Wilson wrote: > Eric Blake wrote: > > The autotools wrappers (automake 1.7.9-1, autoconf 2.59-1, and libtool > > 1.5b-1) all have argument parsing bugs. They are trying to parse every > > option known to either -stable or -devel, but fail in > > several respects. > > True. > > > First, the wrappers are not robust to new options being added. For example, > > libtoolize 1.9f_20041024-1 treats --ltdl as a long-option with an optional > > argument, but the wrapper rejects 'libtoolize --ltdl=libltdl'; likewise > > aclocal 1.9.2-1 has a --force option which the wrapper rejects. > > > > Second, the wrappers do not recognize multiple short options in a single > > argument. For example, 'automake -fiv' is not treated as equivalent to > > 'automake -f -i -v'. > > > > And finally, the wrappers do not allow for option rearranging, like the > > underlying tools do. For example, 'automake Makefile --help' does not > > recognize the help option and complains that no configure.ac file exists, > > while '/usr/autotool/devel/bin/automake Makefile --help' prints the help in > > a directory with no configure.ac. > > Yes. The reason for all this cruft in the wrappers was to support the > behavior that the underlying tools do: the wrappers grab the > stuff from stdin, save it to a tmp file, and then re-invoke the actual > tools -- but they must use slightly different options, and point the > actual tool to the temp file instead of stdin. > > I note that the wrappers used by most linux systems do NOT support this > feature of the underlying tools. Ah, but Linux supports /dev/stdin and /dev/stdout. Cygwin, AFAICS, doesn't. > I've been thinking for a long time of ditching the current wrappers and > using something more like the linux distros do -- and sacrificing the > behavior, just like they do. > > So here's the question: does anybody actually USE with the > autotools? Does ANYBODY do ' stdout> | autoconf' ? If they do on Linux, portably, they probably use something like ' | autoconf /dev/stdin'... > [snip] > > If this approach is not considered satisfactory, and you really want to > > maintain the wrappers to know all options of the underlying tool, I can also > > prepare patches for that approach that know how to split multiple short > > options and how to rearrange arguments. > > Let's wait and see what develops on the "Do you use + autotools" > question. And thanks for your interest and pro-activeness. THIS is what > opensource development should be like. HTH, Igor -- http://cs.nyu.edu/~pechtcha/ |\ _,,,---,,_ pechtcha AT cs DOT nyu DOT edu ZZZzz /,`.-'`' -. ;-;;,_ igor AT watson DOT ibm DOT com |,4- ) )-,_. ,\ ( `'-' Igor Pechtchanski, Ph.D. '---''(_/--' `-'\_) fL a.k.a JaguaR-R-R-r-r-r-.-.-. Meow! "The Sun will pass between the Earth and the Moon tonight for a total Lunar eclipse..." -- WCBS Radio Newsbrief, Oct 27 2004, 12:01 pm EDT -- 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/