OpenSSH 7.7 t1 script breakage
David Newall
openssh at davidnewall.com
Fri Apr 13 15:50:57 AEST 2018
On 13/04/18 07:59, Josh Soref wrote:
> Randall S. Becker <rsbecker at nexbridge.com> wrote:
>
>> -REGRESSTMP = "$(PWD)/regress"
>> +REGRESSTMP = `pwd`
>>
>> tests interop-tests t-exec unit: regress-prep regress-binaries
>> $(TARGETS)
>>
> It looks like the problem is that pwd is in uppercase, not so much the
> distinction between $() and ``.
>
> Can you confirm?
I think not. $(PWD) is a valid expansion of a shell variable when using
bash, maybe also Bourne shell, whereas `pwd` is the output of the pwd
command.
There seems to be muddled-headed thinking going on with scripts.
Recently there was a configure problem because of a difference between
csh and sh. (As I recall, csh exits the script when you use an
undefined variable, whereas the various sh shells interpolate an empty
string.) It is madness to think you can take a program that was written
for one language and run it using another. I understand that a lot of
unixy shells are very similar, and that if you take great care you
really can run a script in all of them, but, if that is what is
intended, then there should be a document that describes which features
are allowed to be used and which are not; better yet, a program to
validate the scripts.
I think, better yet, is to mandate use of a specific shell. The bash
shell might be the most widely available.
More information about the openssh-unix-dev
mailing list