Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2004-12-16 06:16:36


Tompa wrote:

>
> Vladimir Prus <ghost <at> cs.msu.su> writes:
>> I've tried to explain already. Another try.
>
> Sorry, I missed that.
>
>> I think that make does not even allow to create a user-defined function,
>> and so it completely non-suitable to the task.
>
> Oups... I am far from being a make expert, but I do know that GNU make
> supports user-defined functions

Do you really think that things like

pathsearch = $(firstword $(wildcard $(addsuffix /$(1),$(subst :, ,
$(PATH)))))

LS := $(call pathsearch,ls)

are readable at all?

Do you consider that fact that

l = $(if $(FOO),1,
2)

does not work acceptable and believe that adding backslash:

l = $(if $(FOO),1,\
2)

is OK?

Could you, for example, write make equivalent of:

rule register-suffixes ( suffixes + : type )
{
for local s in $(suffixes)
{
if ! $(.type.$(s))
{
.type.$(s) = $(type) ;
}
else if $(.type.$(s)) != type
{
errors.error Attempting to specify type for suffix \"$(s)\"
: "Old type $(.type.$(s)), New type $(type)" ;
}
}
}

so that we can look? (I hope the example is obvious).

- Volodya

 


Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk