[Top][All Lists]

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

François Duranleau <address@hidden>, address@hidden

From: Manoj Srivastava
Subject: François Duranleau <address@hidden>, address@hidden
Date: Sun, 07 Aug 2005 08:08:25 -0500
User-agent: Gnus/5.110004 (No Gnus v0.4) Emacs/22.0.50 (gnu/linux) (i686-pc-linux-gnu)


            [Please retain the CC to address@hidden
             so that the Debian Bug Tracking system can record your

        This was reported by a debian user


 I was playing with some rule generating functions (using the eval
 function of GNU Make) and I hit a problem when inserting
 conditionals. Here is an example where make says there is an error:

 # Makefile begin
 define other-rule
 .PHONY: other-rule
         @ echo other-rule

 define other-rule2
 .PHONY: other-rule2
         @ echo other-rule2

 define rule_test
 .PHONY: rule-test
 rule-test: other-rule
 ifeq ($$(strip $$(VAR)),)
 $$(eval $$(call other-rule))
 $$(eval $$(call other-rule2))

 $(eval $(rule_test))
 # Makefile end

 And then, running make with the above produces:

 % make
 Makefile:20: *** missing `endif'.  Stop.

 I was actually working at school and there I had no problem (they are
 running Fedora Core release 2 (Tettnang)).  When I uploaded my stuff
 here at home, I had a surprise when make reported the error above. So
 I fetched the sources codes of make for Debian (make 3.80-9) and the
 Red Hat (make-3.80-3.src.rpm) and then I looked at the patched code.
 In the Red Hat patch, they added something about conditionals when
 evaluating a buffer, so I added the same thing and now make works
 well with the example above.

Attachment: make_3.80-9cond.diff.gz
Description: Compressed diff

Boys, you have ALL been selected to LEAVE th' PLANET in 15 minutes!!
Manoj Srivastava     <address@hidden>    <http://www.golden-gryphon.com/>
1024D/BF24424C print 4966 F272 D093 B493 410B  924B 21BA DABB BF24 424C

reply via email to

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