gmake $(eval()) question.

[email protected]
Newsgroups gmane.comp.gnu.utils
Organization http://groups.google.com
Message-ID <[email protected]>
Hi,

I have the following Makefile which demonstrates my problem:

---------Begin Makefile------------
HI=$(eval HELLO=Hello)

all:server client

server:
<tab>@echo "HELLO: $(HELLO)"
<tab>@echo "HI: $(HI)"

client:
<tab>@echo "HELLO: $(HELLO)"
<tab>@echo "HI: $(HI)"
-----------End Makefile------------

If I run gmake, I get this output:
HELLO:
HI:
HELLO: Hello
HI:

This thing that puzzles me is why the first line only contains
"HELLO:".  As per my understanding, it should be the same as line 3.

If I run "gmake server" or "gmake client", I get:
HELLO:
HI:

Again, I think the first line of output should be "HELLO: Hello"

So can anyone explain why this is happening?  I am running gmake 3.81
on Fedora Core 6.

Thanks,
--GS
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.