Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2004-10-27 01:22:50


mdrumheller wrote:

>> > % bjam "-sOPTION1=foo -sOPTION2=bar" install
>> > or like this
>> > % bjam "-sOPTION1=foo" "-sOPTION2=bar" install
>> > It could be me--maybe I'm just missing something--but
>> > I think it would be nice of the documentation were
>> > very loud and clear about this.
>> > Thanks,
>> > Mike D.

>> Concerning your example, both usages are the same. And you
>> can drop quotation marks as well.
>>
>> - Volodya
>
> Thank you. Let me see if I understand your last sentence.
> I am pretty familiar with the manner in which command-line-
> invoked programs get passed their arguments, on most systems,
> and I do not know of any shell that would break up a quoted
> string, so my question is still really about the arguments that
> bjam sees, not about what the shell sees. In the first case
> bjam receives an argv array, or the moral equivalent thereof,
> containing the following three (3) elements:
> "bjam"
> "-sOPTION1=foo -sOPTION2=bar"
> "install"
> and in the second case bjam's argv contains these four (4) elements:
> "bjam"
> "-sOPTION1=foo"
> "-sOPTION2=bar"
> "install"

Yea, you're right and I was wrong. The first and the second command line are
not the same, it's only quotes in the second case which can be dropped.

> You seem to be saying that bjam is designed to expect, and reconcile,
> this kind of ambiguity, and will consider these two argv arrays
> to be equivalent. Right?

No, it won't. Sorry for confusing things.

> Whether this is true or not, I think my original point stands: the
> documentation should be utterly unambiguous about it

I'm still not convinced we should be documenting the shell behaviour :-/

- 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