make-w32
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Savannah bug #4364


From: Eli Zaretskii
Subject: Re: Savannah bug #4364
Date: Wed, 30 Jul 2003 08:08:50 +0200

> Date: Tue, 29 Jul 2003 17:36:14 -0400
> From: address@hidden
> 
> Here is the makefile to repro the bugs:
> 
> .PHONY: test
> test:
>       catargs.bat perl -e "print \"foo;;\";" # make removes the ;;
>       catargs.bat perl -e "my $$a = 4; print \"$$a\";" # make doesn't really 
> escape the $
> 
> 
> This produces the following results:
> 
> C:\checker\dev\test\make>make
> catargs.bat perl -e "print \"foo;;\";"
> 
> C:\checker\dev\test\make>echo perl -e "print \"foo \";"
> perl -e "print \"foo \";"
> catargs.bat perl -e "my $a = 4; print \"$a\";"
> 
> C:\checker\dev\test\make>echo perl -e "my = 4; print \"\";"
> perl -e "my = 4; print \"\";"
> 
> As you can see, what make actually sends to the program doesn't resemble
> what it claims it's sending to the program, making it impossible to
> execute some commands from inside make.

I think it's not Make's fault: it's the Windows shell's fault.  It's
the shell that interprets the ;; thing in this case.

As for $$a case, I see different results with the DJGPP port of GNU
Make.  What port of which version was used by the OP?




reply via email to

[Prev in Thread] Current Thread [Next in Thread]