On 04/12/2014 01:31 AM, John E. Malmberg wrote: > On 4/11/2014 5:18 PM, h.becker wrote: >> I hacked a fix for the automatic variables. To pass the test, the vms >> version of the test script needs a fix as well: >> >> --- ../origtests/automatic Fri Apr 11 18:11:32 2014 >> +++ tests/scripts/variables/automatic Fri Apr 11 18:10:19 2014 >> @@ -73,9 +73,10 @@ >> # Fix vms directory syntax >> $answer =~ s#\]/#\]#g; >> # vms returns current directory as [] >> - $answer =~ s#\s\.,# \[\],#; >> + $answer =~ s#\s\.,# \[\],#g; >> # vms returns current directory as [] with a comma separator >> $answer =~ s#\s\.\s# \[\],#g; >> + $answer =~ s#\]\s\[#\],\[#g; >> # vms has comma separator instead of space. >> $answer =~ s/baz\.z\s\[/baz\.z,\[/g; >> $answer =~ s/baz\.z\sb/baz\.z,b/g; > > I see that. > > The test is still failing for me: > > Expected output fragment: > > $^ = baz.z,[-.tests]bar.y, $(^D) = [],[-.tests], $(^F) = baz.z,bar.y > $+ = baz.z,[-.tests]bar.y,baz.z, $(+D) = [],[-.tests],[], $(+F) = > baz.z,bar.y,baz.z > > Actual output: > > ! $^ = baz.z,[-.tests]bar.y, $(^D) = baz.z,[-.tests], $(^F) = bar.y > ! $+ = baz.z,[-.tests]bar.y,baz.z, $(+D) = baz.z,[-.tests], $(+F) = > bar.y,baz.z > > The first line is missing bar.z. > > In the second line expected ",[]" is missing, and so is the second baz.z.
As mentioned, you need a fix: for func_notdir_suffix() and func_basename_dir() (in function.c). As I said, I hacked one. Both functions expect a whitespace separated argument but on/for VMS they get a comma separated one: the parsing fails. With the fix: $ mcr USR_ODS5:[BECKER_H.MAKE.MAKE]MAKE.EXE -f [.tests.work.variables]automatic.mk;1 touch baz.z touch [-.tests]bar.y $@ = [-.tests]foo.x, $(@D) = [-.tests], $(@F) = foo.x $* = [-.tests]foo, $(*D) = [-.tests], $(*F) = foo $< = baz.z, $(<D) = [], $(<F) = baz.z $^ = baz.z,[-.tests]bar.y, $(^D) = [],[-.tests], $(^F) = baz.z,bar.y $+ = baz.z,[-.tests]bar.y,baz.z, $(+D) = [],[-.tests],[], $(+F) = baz.z,bar.y,baz.z $? = baz.z,[-.tests]bar.y, $(?D) = [],[-.tests], $(?F) = baz.z,bar.y touch [-.tests]foo.x $ _______________________________________________ Bug-make mailing list Bug-make@gnu.org https://lists.gnu.org/mailman/listinfo/bug-make