On Nov 5, 2007, at 7:39 PM, Philip Guenther wrote:
On 11/5/07, Rick Flower <[EMAIL PROTECTED]> wrote:
We've got a mixed environment here and have Make 3.74. Make 3.77
and Make
3.81.. I've got the following statements that are accepted (w/o
complaining) by Make 3.74 and also 3.81 but elicit errors from
3.74.. Any
ideas on what its complaining about?
The involved statements use $(eval), but that function wasn't
introduced until version 3.80. There are two possibilities; either
A) the generated rules aren't required for the makefile to function
correctly
but rather merely implement an optimization, or
B) the rules are required and the makefile won't work correctly
without them.
If (A) is true, then you should wrap all the involved statements in an
ifdef/endif so that version of make without $(eval) skips them:
$(eval HAVE_EVAL=1)
ifdef HAVE_EVAL
....whatever here
endif
If (B) is true, then I have no idea what you trying to accomplish.
Choice (C), of course, is to upgrade all your system to GNU make
version 3.81, which has been out for over 19 months(!), and stop
spending your time on this.
Personally, I'd love to go w/ option 'C', but I've got to run it by
our CM
group (configuration mgmt) since this is used by many groups and last
time
I tried to force an update it broke some of our existing Makefiles for
some
reason (I didn't have time to investigate).. Anyway, in our case we do
need
this so I'll push for an upgrade and see if I get any takers.. Thx!
-- Rick
_______________________________________________
Help-make mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/help-make