git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* meson-test syntax error
@ 2025-01-02 12:17 Andy Koppe
  2025-01-02 14:25 ` Jonathan Nieder
  0 siblings, 1 reply; 10+ messages in thread
From: Andy Koppe @ 2025-01-02 12:17 UTC (permalink / raw)
  To: git; +Cc: Patrick Steinhardt

The new meson-test rule in t/Makefile causes a syntax error when the
default shell does not support non-standard process substitution:

  make[1]: Entering directory '/src/git/t'
  rm -f -r 'test-results'
  /bin/sh: 10: Syntax error: "(" unexpected
  make[1]: *** [Makefile:119: check-meson] Error 2

Due to this line:

  diff -u <(echo "$$meson_tests") <(echo "$$actual_tests");

This can of course be worked around with 'make test SHELL=/bin/bash',
but is that expected?

Kind regards,
Andy

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: meson-test syntax error
  2025-01-02 12:17 meson-test syntax error Andy Koppe
@ 2025-01-02 14:25 ` Jonathan Nieder
  2025-01-02 14:37   ` Junio C Hamano
  0 siblings, 1 reply; 10+ messages in thread
From: Jonathan Nieder @ 2025-01-02 14:25 UTC (permalink / raw)
  To: Andy Koppe; +Cc: git, Patrick Steinhardt

Hi,

Andy Koppe wrote:

> The new meson-test rule in t/Makefile causes a syntax error when the
> default shell does not support non-standard process substitution:
>
>   make[1]: Entering directory '/src/git/t'
>   rm -f -r 'test-results'
>   /bin/sh: 10: Syntax error: "(" unexpected
>   make[1]: *** [Makefile:119: check-meson] Error 2
>
> Due to this line:
>
>   diff -u <(echo "$$meson_tests") <(echo "$$actual_tests");
>
> This can of course be worked around with 'make test SHELL=/bin/bash',
> but is that expected?

I ran into the same today.  Let's discuss in the review thread
(https://lore.kernel.org/git/20241213-pks-meson-ci-v2-5-634affccc694@pks.im/).

Thanks,
Jonathan

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: meson-test syntax error
  2025-01-02 14:25 ` Jonathan Nieder
@ 2025-01-02 14:37   ` Junio C Hamano
  2025-01-02 15:22     ` Jonathan Nieder
  0 siblings, 1 reply; 10+ messages in thread
From: Junio C Hamano @ 2025-01-02 14:37 UTC (permalink / raw)
  To: Jonathan Nieder; +Cc: Andy Koppe, git, Patrick Steinhardt

Jonathan Nieder <jrnieder@gmail.com> writes:

> Hi,
>
> Andy Koppe wrote:
>
>> The new meson-test rule in t/Makefile causes a syntax error when the
>> default shell does not support non-standard process substitution:
>>
>>   make[1]: Entering directory '/src/git/t'
>>   rm -f -r 'test-results'
>>   /bin/sh: 10: Syntax error: "(" unexpected
>>   make[1]: *** [Makefile:119: check-meson] Error 2
>>
>> Due to this line:
>>
>>   diff -u <(echo "$$meson_tests") <(echo "$$actual_tests");
>>
>> This can of course be worked around with 'make test SHELL=/bin/bash',
>> but is that expected?
>
> I ran into the same today.  Let's discuss in the review thread
> (https://lore.kernel.org/git/20241213-pks-meson-ci-v2-5-634affccc694@pks.im/).

Probably this one?

<20241227-b4-pks-meson-docs-v2-11-f61e63edbfa1@pks.im>

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: meson-test syntax error
  2025-01-02 14:37   ` Junio C Hamano
@ 2025-01-02 15:22     ` Jonathan Nieder
  2025-01-02 15:39       ` Junio C Hamano
  0 siblings, 1 reply; 10+ messages in thread
From: Jonathan Nieder @ 2025-01-02 15:22 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: Andy Koppe, git, Patrick Steinhardt

Junio C Hamano wrote:
> Jonathan Nieder <jrnieder@gmail.com> writes:
>> Andy Koppe wrote:

>>>   make[1]: Entering directory '/src/git/t'
>>>   rm -f -r 'test-results'
>>>   /bin/sh: 10: Syntax error: "(" unexpected
>>>   make[1]: *** [Makefile:119: check-meson] Error 2
>>>
>>> Due to this line:
>>>
>>>   diff -u <(echo "$$meson_tests") <(echo "$$actual_tests");
[...]
>> I ran into the same today.  Let's discuss in the review thread
>> (https://lore.kernel.org/git/20241213-pks-meson-ci-v2-5-634affccc694@pks.im/).
>
> Probably this one?
>
> <20241227-b4-pks-meson-docs-v2-11-f61e63edbfa1@pks.im>

Ah, yes, that's the one I mean.  Sorry for the noise.

Jonathan

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: meson-test syntax error
  2025-01-02 15:22     ` Jonathan Nieder
@ 2025-01-02 15:39       ` Junio C Hamano
  2025-01-02 15:41         ` Junio C Hamano
  2025-01-03  6:40         ` Patrick Steinhardt
  0 siblings, 2 replies; 10+ messages in thread
From: Junio C Hamano @ 2025-01-02 15:39 UTC (permalink / raw)
  To: Jonathan Nieder; +Cc: Andy Koppe, git, Patrick Steinhardt

Jonathan Nieder <jrnieder@gmail.com> writes:

> Junio C Hamano wrote:
>> Jonathan Nieder <jrnieder@gmail.com> writes:
>>> Andy Koppe wrote:
>
>>>>   make[1]: Entering directory '/src/git/t'
>>>>   rm -f -r 'test-results'
>>>>   /bin/sh: 10: Syntax error: "(" unexpected
>>>>   make[1]: *** [Makefile:119: check-meson] Error 2
>>>>
>>>> Due to this line:
>>>>
>>>>   diff -u <(echo "$$meson_tests") <(echo "$$actual_tests");
> [...]
>>> I ran into the same today.  Let's discuss in the review thread
>>> (https://lore.kernel.org/git/20241213-pks-meson-ci-v2-5-634affccc694@pks.im/).
>>
>> Probably this one?
>>
>> <20241227-b4-pks-meson-docs-v2-11-f61e63edbfa1@pks.im>
>
> Ah, yes, that's the one I mean.  Sorry for the noise.

Sorry for being extra sloppy on this one.  A patch like that with
blatant bash-ism shouldn't have slipped the review process.

One thing I had trouble with is that, with /bin/sh linked to
/bin/bash, none of these

    $ SHELL=/bin/dash make test
    $ cd t && SHELL=/bin/dash make test
    $ cd t && SHELL=/bin/dash make check-meson

seem to fail for me.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: meson-test syntax error
  2025-01-02 15:39       ` Junio C Hamano
@ 2025-01-02 15:41         ` Junio C Hamano
  2025-01-02 16:26           ` Junio C Hamano
  2025-01-03  6:40         ` Patrick Steinhardt
  1 sibling, 1 reply; 10+ messages in thread
From: Junio C Hamano @ 2025-01-02 15:41 UTC (permalink / raw)
  To: Jonathan Nieder; +Cc: Andy Koppe, git, Patrick Steinhardt

Junio C Hamano <gitster@pobox.com> writes:

> One thing I had trouble with is that, with /bin/sh linked to
> /bin/bash, none of these
>
>     $ SHELL=/bin/dash make test
>     $ cd t && SHELL=/bin/dash make test
>     $ cd t && SHELL=/bin/dash make check-meson
>
> seem to fail for me.

Ah, I had to do this:

      $ cd t && make SHELL=/bin/dash check-meson

to make it fail.  Sorry for the noise.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: meson-test syntax error
  2025-01-02 15:41         ` Junio C Hamano
@ 2025-01-02 16:26           ` Junio C Hamano
  2025-01-02 17:23             ` Andreas Schwab
  0 siblings, 1 reply; 10+ messages in thread
From: Junio C Hamano @ 2025-01-02 16:26 UTC (permalink / raw)
  To: Jonathan Nieder; +Cc: Andy Koppe, git, Patrick Steinhardt

Junio C Hamano <gitster@pobox.com> writes:

> Ah, I had to do this:
>
>       $ cd t && make SHELL=/bin/dash check-meson
>
> to make it fail.  Sorry for the noise.

And

	$ make SHELL=/bin/dash test

does not seem to pass SHELL=/bin/dash down when it does this part of
the Makefile

        test: all
                $(MAKE) -C t/ all

at the top level.  Oh well.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: meson-test syntax error
  2025-01-02 16:26           ` Junio C Hamano
@ 2025-01-02 17:23             ` Andreas Schwab
  2025-01-02 17:27               ` Junio C Hamano
  0 siblings, 1 reply; 10+ messages in thread
From: Andreas Schwab @ 2025-01-02 17:23 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: Jonathan Nieder, Andy Koppe, git, Patrick Steinhardt

On Jan 02 2025, Junio C Hamano wrote:

> And
>
> 	$ make SHELL=/bin/dash test
>
> does not seem to pass SHELL=/bin/dash down when it does this part of
> the Makefile
>
>         test: all
>                 $(MAKE) -C t/ all
>
> at the top level.  Oh well.

Command line options (which include macro definitions) are passed
implicitly to sub makes via the MAKEFLAGS env var.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: meson-test syntax error
  2025-01-02 17:23             ` Andreas Schwab
@ 2025-01-02 17:27               ` Junio C Hamano
  0 siblings, 0 replies; 10+ messages in thread
From: Junio C Hamano @ 2025-01-02 17:27 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: Jonathan Nieder, Andy Koppe, git, Patrick Steinhardt

Andreas Schwab <schwab@linux-m68k.org> writes:

> On Jan 02 2025, Junio C Hamano wrote:
>
>> And
>>
>> 	$ make SHELL=/bin/dash test
>>
>> does not seem to pass SHELL=/bin/dash down when it does this part of
>> the Makefile
>>
>>         test: all
>>                 $(MAKE) -C t/ all
>>
>> at the top level.  Oh well.
>
> Command line options (which include macro definitions) are passed
> implicitly to sub makes via the MAKEFLAGS env var.

Yes, that is what I thought.  My complaint was that it didn't seem
to be happening, and it did not cause the bash-ism in check-meson
target to barf.

Thanks.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: meson-test syntax error
  2025-01-02 15:39       ` Junio C Hamano
  2025-01-02 15:41         ` Junio C Hamano
@ 2025-01-03  6:40         ` Patrick Steinhardt
  1 sibling, 0 replies; 10+ messages in thread
From: Patrick Steinhardt @ 2025-01-03  6:40 UTC (permalink / raw)
  To: Junio C Hamano; +Cc: Jonathan Nieder, Andy Koppe, git

On Thu, Jan 02, 2025 at 07:39:54AM -0800, Junio C Hamano wrote:
> Jonathan Nieder <jrnieder@gmail.com> writes:
> 
> > Junio C Hamano wrote:
> >> Jonathan Nieder <jrnieder@gmail.com> writes:
> >>> Andy Koppe wrote:
> >
> >>>>   make[1]: Entering directory '/src/git/t'
> >>>>   rm -f -r 'test-results'
> >>>>   /bin/sh: 10: Syntax error: "(" unexpected
> >>>>   make[1]: *** [Makefile:119: check-meson] Error 2
> >>>>
> >>>> Due to this line:
> >>>>
> >>>>   diff -u <(echo "$$meson_tests") <(echo "$$actual_tests");
> > [...]
> >>> I ran into the same today.  Let's discuss in the review thread
> >>> (https://lore.kernel.org/git/20241213-pks-meson-ci-v2-5-634affccc694@pks.im/).
> >>
> >> Probably this one?
> >>
> >> <20241227-b4-pks-meson-docs-v2-11-f61e63edbfa1@pks.im>
> >
> > Ah, yes, that's the one I mean.  Sorry for the noise.
> 
> Sorry for being extra sloppy on this one.  A patch like that with
> blatant bash-ism shouldn't have slipped the review process.
> 
> One thing I had trouble with is that, with /bin/sh linked to
> /bin/bash, none of these
> 
>     $ SHELL=/bin/dash make test
>     $ cd t && SHELL=/bin/dash make test
>     $ cd t && SHELL=/bin/dash make check-meson
> 
> seem to fail for me.

Sorry, as well. Thanks for the report and investigations!

Patrick

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2025-01-03  6:40 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-01-02 12:17 meson-test syntax error Andy Koppe
2025-01-02 14:25 ` Jonathan Nieder
2025-01-02 14:37   ` Junio C Hamano
2025-01-02 15:22     ` Jonathan Nieder
2025-01-02 15:39       ` Junio C Hamano
2025-01-02 15:41         ` Junio C Hamano
2025-01-02 16:26           ` Junio C Hamano
2025-01-02 17:23             ` Andreas Schwab
2025-01-02 17:27               ` Junio C Hamano
2025-01-03  6:40         ` Patrick Steinhardt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).