they can be missing, e.g. via the unit tests where we supply build options differently

it's also a way of making sure we stick to legacy behavior (kind of)