> > May I ask how are you running the tests? Just 'make test' from the ports
> > directory as usual? Additionally, does the processes started by the
> > test.sh script not inherit the shell it is executed with?
> 
> Yes, "make test" from the ports dir. Might have been "make 
> FETCH_PACKAGES=-Dsnap test".
> 
> I just tried again with your new patch:
>       make clean
>       make
>       make install  (give doas my password)
>       make test
> Same result, as far as I can tell. I attached vis-0.9/test.log from
> my WRKOBJDIR.
> 
> My /usr/ports is managed by got, and is currently at commit 419d15f5,
> from May 3 at 16:00 UTC.
> 
> > $ cat /usr/ports/pobj/vis-0.9/vis-0.9/test/sam/test.sh | head -1
> > #!/bin/sh
> 
> Yes (but my WRKOBJDIR is /home/pobj):
> $ cat /home/pobj/vis-0.9/vis-0.9/test/sam/test.sh | head -1
> #!/bin/sh

A bit more info:

I get the same result on my laptop. (The bug I mentioned in my
previous email was a broken version of dwz; pkg_add -u dwz fixed
it.)

If I print the value of SHELL in sam/test.sh, or in the test rule
of vis's top-level make-file, I see an empty string.

That is: I edit /usr/ports/pobj/vis-0.9/vis-0.9/test/Makefile so it begins with:

        test:
                sh -c 'echo shell _$${SHELL}_'
                @$(MAKE) -C core
                @$(MAKE) -C lua
                @$(MAKE) -C vis
                @$(MAKE) -C sam
                @$(MAKE) -C vim

and then when I run "make test" under /usr/ports/editors/vis the beginning of 
the output is:

        $ make test
        ===>  Regression tests for vis-0.9
        [ -e test/Makefile ] || gmake test-update
        gmake[1]: Entering directory '/usr/ports/pobj/vis-0.9/vis-0.9/test'
        sh -c 'echo shell _${SHELL}_'
        shell __

(As far as I can tell, putting #!/bin/sh at the start of a script
doesn't affect the value of SHELL when the script is run.)

make show=SHELL still shows /bin/sh on this machine.

-- 
James

Reply via email to