Date: Sun, 9 Apr 2000 16:34:58 +0500 Message-Id: <200004091134.QAA00645@midpec.com> From: Prashant TR To: eliz AT is DOT elta DOT co DOT il CC: djgpp-workers AT delorie DOT com In-reply-to: (message from Eli Zaretskii on Sun, 9 Apr 2000 08:55:38 +0200 (IST)) Subject: Re: Porting problems with Sh-utils (beta) References: Reply-To: djgpp-workers AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: djgpp-workers AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk > > ----- > > CCDEPMODE = depmode=gcc > > > > .c.o: > > source='$<' object='$@' libtool=no \ > > depfile='$(DEPDIR)/$*.Po' tmpdepfile='$(DEPDIR)/$*.TPo' \ > > $(CCDEPMODE) $(depcomp) \ > > $(COMPILE) -c -o $@ `test -f $< || echo '$(srcdir)/'`$< > > ----- > > > It's not Make's job to pass variables to the child program, in this > case. The syntax "foo=bar xyz=abc foobar.exe" is processed entirely > by a Unixy shell, such as Bash, which Make should invoke. If that > command is passed by Make to Bash, the values of the variables will be > passed to "d:/djgpp/bin/sh.exe" and to the script. I just tried this > in a short Makefile, and it worked for me, in all versions of Make > (3.75, 3.76, 3.77, 3.78.1, and the hot-off-the-grill Make 3.79). Thanks Eli. I got make 3.81 but it didn't help. You're right. Make isn't the culprit here. Looks to me like a bug in BASH. To verify this, I did the foll: 1> Copied out the lines manually to the bash shell and tried. No, it didn't work. 2> Modified the last line to $(COMPILE) -c -o $@ $< and it works! In fact BASH doesn't like anything within the `....` For now, I'll write up an sed script to strip off this portion lines. But maybe this should be fixed (if that's a real bug). I just had a glance at the READMEs and I think it doesn't use libtool because it was built with the latest version of autoconf and automake (WIP). Unfortunately, the diffs I sent to the Sh-utils maintainer during the previous beta release was lost because of change in his E-Mail ID. So, I'll have to send them to him again :-(.