Handle legacy options in the method_added hook

We only need to process the legacy options at load time, not each time
the class is instantiated, and only when there is an options method
defined.
Remove user-defined options method after evaluation

Now we can use the superclass options method for our own purposes.
Disconnect defined options from the build object
options.each only yields one argument to the block
Stop exposing defined options from the build object
Use public api when adding legacy options
profanity 0.4.3

Closes #31488.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
profanity: update 0.4.3 bottle.
dart: add devel version

Closes #31503.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
mariadb 10.0.13
mariadb: update 10.0.13 bottle.

Closes #31506.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
formula_installer: default_formula using build.

Use the build options instead of whether the requirement is optional to
work out if it is needed. This handles the case of an optional
requirement becoming needed because it's a dependency for another
formula.

Closes #31476.
nvm 0.13.1

Closes #31510.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
vim: fixes for issue #31337

 - add default perl support to match MacVim

Closes #31367.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
MacVim: fixes for issue #31337

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
formula_installer: check for recommended/optional.

build.without? seemingly always returns true for requirements that are
neither recommended nor optional so check these before deciding not to
install a default formula.

Closes #31511.
libav: remove unnecessary configure options
libav: enable VDA code
libav: update 10.3 bottle.

Closes #31490.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
Allow build to be set externally