make or kmod.mk broken

From: Max Laier <max_at_love2party.net>
Date: Sat, 14 Jan 2006 07:57:55 +0100
Hi,

in kmod.mk (and I believe in other places as well) we have constructs in the 
form of this: ${SOMEARRAY:M${SOMEVAR}}  However, make doesn't seem to 
understand this.  I don't see any traces that it ever did and I have no clue 
if it should.

I might well misunderstand things (not a make guru) so here is my testcase:

| STUFF= foo bar foobar
| FOO=foo
| 
| mtest:
| 	echo ${STUFF:M${FOO}}

and "$make mtest" gives:
| echo }
| }

this clearly suggests that make is not equipped to handle the variable 
expansion here.

In any case we have to fix either kmod.mk or make.

On a related question:  How can I get the actual location of a file that is 
in .PATH?  All I could come up with was ${.ALLSRC:M*${MY_FILE}} which doesn't 
work as I am explaining here.

-- 
/"\  Best regards,                      | mlaier_at_freebsd.org
\ /  Max Laier                          | ICQ #67774661
 X   http://pf4freebsd.love2party.net/  | mlaier_at_EFnet
/ \  ASCII Ribbon Campaign              | Against HTML Mail and News

Received on Sat Jan 14 2006 - 05:57:21 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:50 UTC