on the way to a configurable opt builder
preparation for build_options taking block