[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
config.sub/config.guess using nonportable $(...) substitutions
From: |
Nick Bowler |
Subject: |
config.sub/config.guess using nonportable $(...) substitutions |
Date: |
Mon, 8 Mar 2021 13:21:57 -0500 |
Hi,
I noticed that config.sub (and config.guess) scripts were very recently
changed to use the POSIX $(...) form for command substitutions.
This change is, I fear, ill-advised. The POSIX construction is
widely understood to be nonportable as it is not supported by
traditional Bourne shells such as, for example, Solaris 10 /bin/sh.
This specific portability problem is discussed in the Autoconf manual
for portable shell programming[1].
These scripts using $(...) are incorporated into the recently-released
Automake 1.16.3, which means they get copied into packages bootstrapped
with this version. So now, if I create a package using the latest bits,
configuring with heirloom-sh fails:
% CONFIG_SHELL=/bin/jsh jsh ./configure CONFIG_SHELL=/bin/jsh
configure: error: cannot run /bin/jsh ./config.sub
% jsh config.sub x86_64-pc-linux-gnu
config.sub: syntax error at line 53: `me=$' unexpected
(The heirloom-sh is essentially Solaris /bin/sh but runs on GNU/Linux systems).
What was the motivation for this change? Backquotes work fine and are
more portable. Can we just revert it so the script works again with
traditional shells? Surely these scripts should be maximally portable,
I would think?
[1]
https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.70/autoconf.html#index-_0024_0028commands_0029
Cheers,
Nick
- config.sub/config.guess using nonportable $(...) substitutions,
Nick Bowler <=
- Re: config.sub/config.guess using nonportable $(...) substitutions, Dmitry V. Levin, 2021/03/08
- Re: config.sub/config.guess using nonportable $(...) substitutions, Karl Berry, 2021/03/08
- Re: config.sub/config.guess using nonportable $(...) substitutions, Paul Eggert, 2021/03/08
- Re: config.sub/config.guess using nonportable $(...) substitutions, Karl Berry, 2021/03/09
- Re: config.sub/config.guess using nonportable $(...) substitutions, Paul Eggert, 2021/03/09
- Re: config.sub/config.guess using nonportable $(...) substitutions, Warren Young, 2021/03/09
- Re: config.sub/config.guess using nonportable $(...) substitutions, Tim Rice, 2021/03/09
- Re: config.sub/config.guess using nonportable $(...) substitutions, Zack Weinberg, 2021/03/09