Subject: make gotcha
From: [email-masked] (Steve Biskis)

21 Oct 1998 09:06:35 -0700
Message-ID: <[email-masked]>
Reply-To: <[email-masked]>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
To: <[email-masked]>

Hi Ernie,

My statement:

echo Including MASTER MAKE FILE: $(MASTER_MAKE)

has NO characters before it, <TAB> or otherwise.

Once again let me stress that this line causes NO problems whatsoever
on my NeXTStep v3.3 intel box where the Gnu make is version 3.72.1
or on my FreeBSD v2.2.5 intel box where Gnu make is version 3.76.1.
Nor does it bomb on the OpenStep intel port ->make is version 3.74
which, for the those who don't know, runs on Win32 machines.

I suspect that the behavior on those native UNIX boxes is most likely
what nature intended.  I can't imagine why I would want to parse a rule 
in the midst of an echo statement.  So, I've become accustomed to sort of 
throwing (justabout)whatever into them as descriptive text just as in
scripts 
and batch files.

I'm pretty sure that the parsing got screwed up a little in the UNIX to
GnuWin32 port.
  
No biggie, I'll just stop with the :'s.  I don't mean to bitch esp. since I
ain't got the gumption to fix it.

Let me know your feelings on this one.

da bisk

P.S.

as for the example, just create a line like ---

echo This is a make : KILLER

or ---

echo "This is a make : KILLER"

and add it appropriately to you favorite makefile.

Works on UNIX boxes, dies on GnuWin32

Perhaps some LiNUXers out there could check it out on their righteous box.

----------
> From: Earnie Boyd <[email-masked]>
> To: [email-masked]; [email-masked]
> Subject: Re: Make gotcha
> Date: Sunday, October 18, 1998 6:58 AM
> 
> ---Steve Biskis <[email-masked]> wrote:
> >
> > 
> > If this is already commonly known just walk on by.
> > 
> > To me this was a revelation this morning:
> > 
> > You may NOT have a : in echo statements in your makefiles
> > on the win32 platform.  Doesn't matter if the statement is within
> > literals or not.  make (3.76.1) seems to think that : is part of a
> rule
> > no matter where it lies !!!  
> > This is not the case with the Gnu make that ships with NeXTSTEP 3.3 
> > or the make (3.74) of OpenSTEP 4.1.
> > 
> > In other words:
> > 
> > echo Including MASTER MAKE FILE: $(MASTER_MAKE)
> > 
> > Doesn't work on the win32 platform but cranks just fine on UNIX.
> > (I haven't checked what the UNIX version of this newer 3.76.1 does
> > but I'd be surprised if parsing intellegence would be lost going
> forward
> > so I'm more inclined to believe it got lost in the win32 port.)
> > 
> > I have a fairly complex make scheme that handles several
> architectures and
> > nests many layers (via include) deep - so until this one finally
> slapped me
> > in
> > the face I'd been using the old OpenSTEP v4.1 make and sh until now -
> > HURRAH !!!
> > 
> > 
> > Hope this helps someone.
> > 
> > 
> > da bisk
> > 
> > -
> > For help on using this list (especially unsubscribing), send a
> message to
> > "[email-masked]" with one line of text: "help".
> > 
> 
> 
> Hi Steve,
> 
> It makes since to me that the : would be interpreted by make as a
> declarative if the echo command is not preceded by a tab character as
> an action statement.
> 
> Please supply an small example make file demostrating your problem.
> 
> ==
> -                \\||//
> -----------o0O0--Earnie--0O0o------------
> --        [email-masked]        --
> -- http://freeyellow.com/members5/gw32 --
> --------------ooo0O--O0ooo---------------
> 
> PS: Newbie's, you should visit my page.
> _________________________________________________________
> DO YOU YAHOO!?
> Get your free @yahoo.com address at http://mail.yahoo.com
> 
> -
> For help on using this list (especially unsubscribing), send a message to
> "[email-masked]" with one line of text: "help".

-
For help on using this list (especially unsubscribing), send a message to
"[email-masked]" with one line of text: "help".