autoconf
[Top][All Lists]
Advanced

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

ksh93 bug


From: Fleischer, Karsten (K.)
Subject: ksh93 bug
Date: Tue, 31 Jul 2001 11:33:48 -0400

Hi,

ksh93 has a strange bug which prevents some scripts generated by autoconf to be 
run on UWIN correctly.

David Korn wrote:

> The problem is that the value of IFS was getting set to the null
> string after a command substitution that was inside a here document.
> Since on UNIX systems, the value was restored after the command
> containing the here document, it wasn't noticed.  However, the
> simple test
>       IFS=:
>       cat << EOF
>       $IFS$(print hi)$IFS
>       EOF
> failed even on UNIX systems.

In UWIN IFS is a null string after the here doc and the configure scripts run 
into an error later when trying to invoke $as_executable_p (which is "test 
-f"), because "test -f" is treated as the command name not only "test".

David Korn suggested a workaround which is putting the here docs which use 
command substitutions into a seperate subshell, e.g.

if test `eval echo '${'$ac_ac_Header'}'` = yes; then
(
  cat >>confdefs.h <<EOF
#define `echo "HAVE_$ac_header" | $ac_tr_cpp` 1
EOF
) 

I'm not sure how much work this would be and if would be worth the efforts as 
UWIN is the only system that shows this bug and the next UWIN release will not 
have it anymore.

Karsten



reply via email to

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