Hi Paul and others,
I'd like to use $(eval) to abbreviate some make commands, but I'm having
trouble combining that with the $(warning) command.
Here's an example that gives the flavor of what I'm trying to do:
# These shorthand macros are actually defined elsewhere using an eval'ed macro:
one.o := a/a/one.o
two.o := b/b/two.o
three.o := c/c/three.o
four.o := d/d/four.o
five.o := e/e/five.o
ALL_BASE := one two three four five
define DEFINE_OBJ_LIST
$(1)_OBJS := $(foreach BASE,$(filter $(2)%,$(ALL_BASE)),$($(BASE).o))
$(warning $(1)_OBJS (contains $(words $($(1)_OBJS)) objects) = $($(1)_OBJS))
endef
$(eval $(call DEFINE_OBJ_LIST,ONE,one))
$(eval $(call DEFINE_OBJ_LIST,TWO,two))
.PHONY: all
all:
echo $(ONE_OBJS) $(TWO_OBJS)
make -f maketest.mk all
maketest.mk:15: ONE_OBJS (contains 0 objects) =
maketest.mk:16: TWO_OBJS (contains 0 objects) =
echo a/a/one.o b/b/two.o
a/a/one.o b/b/two.o
Basically, I'm trying to extract part of a very long list and then see what I
fished out. I do this a lot so I'd like to automate it. But as you can see
from the v3.80 output, $(warning) doesn't show the output I want.
I'm sure I'm misunderstanding something, but I don't see what it is.
Thanks for your time,
--
Ted Stern Applications Group
Cray Inc. office: 206-701-2182
411 First Avenue South, Suite 600 cell: 206-383-1049
Seattle, WA 98104-2860 FAX: 206-701-2500
Frango ut patefaciam -- I break that I may reveal
(The Paleontological Society motto, equally apropos for debugging)
_______________________________________________
Bug-make mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/bug-make