|
Boost Testing : |
From: Roland Schwarz (roland.schwarz_at_[hidden])
Date: 2007-03-26 13:05:46
Roland Schwarz wrote:
> So perhaps the autoconfigure should use this function too, and then
> pass only the toolset (i.e. gcc) and version (i.e. 3.4.4) to the using
> rule? At least this is what "using" is expecting to get as input.
Too fast :-( This won't work.
The function relies on the subfeatures already been defined (which
happens inside "using".)
So the notation xxx-yyy-zzz means yyy and zzz being subfeatures of
xxx (whithout a defined order). They are implicitly looked up by
value.
But if this is true, the autoconfig poses a chicken-egg problem,
and none can tell how to parse the xx-yyy-zzz.
Indeed, gcc-mingw-3.4.4 produces
<toolset>gcc/<toolset-gcc:flavor>mingw/<toolset-gcc:version>3.4.4
which also is a correct expansion.
But the autoconfigure never can know which is the "version" part.
I think I begin to understand why Volodya insisted on leaving the
"toolset=" less syntax in place.
Hmm, if we had a rule similar to expand-no-defaults which tries to
deduce the toolset and version, but does not bomb out if a subfeature
cannot be found this could be used to find the correct input to
the using rule.
What do you think?
Roland