Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2003-03-17 01:44:14


Douglas Gregor wrote:
> We can do this in a Jamfile:
> <define>HAS_CONFIG_H=1
> but we can't do this on the command line:
> define=HAS_CONFIG_H=1
>
> because convert-command-line-element thinks we're giving the value 1 to the
> feature <define=HAS_CONFIG_H>. That sounds like the correct behavior
> because the documentation says this:
> "Feature values may not contain the '<', ':', or '=' characters."
>
> but that breaks just about every <define> example, everywhere.

And, also, more contrived example

<define>SomeClass=Foo::bar

since ':' is disallowed too.

> I think we'd
> be better off disallowing '=' in feature names, allowing '=' in feature
> values,

We better state that '=' and ';' are allowed in values of *free* features,
since it's where we needed it.

> and applying this little patch below to parse the command line
> elements according to these new rules.

I think your patch is absolutely right. (It's easy to forget that regexps are
greedy :-) )

> If that's okay, I'll apply the patch and update the docs.

Please go ahead. Before comitting the docs, please read the last
section of "tools/build/hacking.txt". I've just documented our use
of HTML tidy.

Thanks,
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