= Proposal for "Do the Right Thing" Alternative Selection = This page describes a proposal for a change to the way target alternatives are selected. '''Note:''' the proposal is intended to be a ''pure extension''. That is, I believe it doesn't change the semantics of any {{{bjam}}} invocation that works today -- it only changes {{{bjam}}} invocations that are currently errors into non-errors. == Motivation == It seems there are a significant number of {{{bjam}}} invocations for which there is a sensible interpretation, but for which Boost.Build currently generates an error instead and refuses to build. For example, given the following Jamfile: {{{ lib a : a.cpp : off ; lib a : a-dbg.cpp : on on ; }}} In response to {{{ bjam debug-symbols=on }}} the result is {{{ error: No best alternative for ./a next alternative: required properties: off not matched next alternative: required properties: on on not matched }}}