autoconf-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] Revert 'Fix logic error in _AC_PROG_LEX_YYTEXT_DECL (#109320


From: Zack Weinberg
Subject: Re: [PATCH] Revert 'Fix logic error in _AC_PROG_LEX_YYTEXT_DECL (#109320)'
Date: Thu, 16 Jul 2020 21:36:11 -0400

On Thu, Jul 16, 2020 at 8:50 PM Paul Eggert <eggert@cs.ucla.edu> wrote:
> On 7/16/20 11:40 AM, Zack Weinberg wrote:
> > I believe that what's in trunk now should work fine for
> > cross-compilation of programs that don't require yywrap
>
> I thought so too, but after eyeballing the trunk a bit I noticed a shell
> portability bug in the recently-added AC_PROG_LEX code. I then found a couple
> more instances of the same bug elsewhere in Autoconf (in rarely-executed 
> code, I
> think).
>
> The problem is that constructs like ${ac_lib:-none needed} don't conform to
> POSIX, as POSIX requires that the stuff after the :- be a single shell word.
> (The next time I meet Steve Bourne I want to give him an earfull....)

Aaaargh.  I thought I knew all these traps by now, but this one I'd
never encountered before.

> and would like to also install the attached patch to fix the code bugs. I have
> held off installing this latter patch, though, as I don't want to get in the 
> way
> of whatever testing you're doing.

Go ahead and install, I can check out the older revision for testing.
(Still waiting for cross compilers to build. :-/ )

However:

+    for ac_cv_lib_lex in 'none needed' -lfl -ll 'not found'; do
+      case $ac_cv_lib_lex in
+    'none needed') ;;
+    'not found') break;;
+    *) LIBS="$ac_lib $ac_save_LIBS";;
+      esac

Shouldn't this be LIBS="$ac_cv_lib_lex $ac_save_LIBS" now?

zw



reply via email to

[Prev in Thread] Current Thread [Next in Thread]