As it happens, set -e wouldn't catch the problem on line 604 of build_all.sh

The line is
if [ ! -v MAKEFLAGS ] ; then

And, -v is a bash extension, not supported by /bin/sh

To be portable, this should instead test for a non-empty "$MAKEFLAGS".
Or, if empty MAKEFLAGS has significance, the test in portable form
would be
   if set|grep >/dev/null ^MAKEFLAGS=; then

...optionally with a space to the left of the semicolon.

Thanks,

-- 
Raul

On Mon, Sep 19, 2022 at 4:58 PM Raul Miller <[email protected]> wrote:
>
> I would like to recommend that all shell scripts used for building J use set 
> -e
>
> So they would start out like this:
>
> #!/bin/sh
> set -e
> ...
>
> This will exit the build script when an error is encountered, which
> helps isolate problems in build scripts.
>
> (A few moments ago, I saw an error fly by referencing line 604 of
> build_all.sh in make2.)
>
> Thanks,
>
> --
> Raul
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to