According to the documentation:

constant
Sets project-wide constant. Takes two parameters: variable name and a value and makes the specified variable name accessible in this Jamfile and any child Jamfiles.

The second sentence appears to imply that the constant is local to the Jamfile in which it is defined and its child Jamfiles. However, as far as I can tell, the constant is in fact global and its value are visible to parent and sibling Jamfiles. So if I try to define a constant with the same name in a sibling Jamfile, the value of the constant will be the same in both Jamfiles (I'm not sure how Boost Build decides which value to use).

Is this really the desired behavior? How do I work around this?