URL: <https://savannah.gnu.org/support/?110655>
Summary: AT&T UnixPC (3b1) shell thrown off by #( after case. Project: Autoconf Submitted by: alainknaff Submitted on: Sun 15 May 2022 07:50:33 PM CEST Category: None Priority: 5 - Normal Severity: 3 - Normal Status: None Privacy: Public Assigned to: None Originator Email: Open/Closed: Open Discussion Lock: Any Operating System: None _______________________________________________________ Details: On AT&T UnixPC (3b1), autoconf's configure picks the following implementation for as_echo_n : as_echo_n_body='eval arg=$1; case $arg in #( *"$as_nl"*) expr "X$arg" : "X\\(.*\\)$as_nl"; arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; esac; expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" ' However, UnixPC's shell apparently does not understand the #( after "case $arg in", and raises an end of file error. Simply removing it fixes the problem on AT&T UnixPC. However, I understand that this might be needed on *other* architectures. A more portable solution might be to simply not bother handling newlines which might be embedded with the echoed string, and suppress those as well. Indeed, I have a strong suspicion that echo -n is not ever used by autoconf for a string that contains newlines. _______________________________________________________ Reply to this item at: <https://savannah.gnu.org/support/?110655> _______________________________________________ Message sent via Savannah https://savannah.gnu.org/