Subject: Re: [PATCH] hook: test -a|o is not POSIX

From: Junio C Hamano <[email-masked]>
Date: Fri, 07 Jan 2022 13:39:53 -0800

"Issam Maghni via GitGitGadget" <[email-masked]> writes:

> From: "Issam E. Maghni" <[email-masked]>
>
> I faced `test: too many arguments` when building using sbase [1]

Building "git" with sbase?  It is curious how a loosely written
sample hook script can cause build failures on a platform with a
more strict userspace.

> This is due to a non-POSIX syntax `test ... -a ...` and `test … -o …`.

That's all correct.  The formatting of the above line feels a bit
off, though.

>> The XSI extensions specifying the -a and -o binary primaries and the
>> '(' and ')' operators have been marked obsolescent.
> [2]
>
> [1] https://core.suckless.org/sbase/
> [2] https://pubs.opengroup.org/onlinepubs/9699919799/utilities/test.html
>

Perhaps...

	The sample update script in the templates directory uses the
	`-o` and `-a` binary primaries of the "test" command, which
	are marked obsolescent in the recent versions of POSIX.

...would be sufficient, as 'sbase' would not be the only source of
the userspace whose 'test' lack the -o/-a primaries.