This macro picks a middle ground between DECLARE_MODULE() (which
defaults to a range of supported kernel versions of the current
version until the end of the stable/X branch) and
DECLARE_MODULE_TIED() (can only be used with the exact kernel version
built against).
When built on a releng/X.Y system, it uses a supported kernel version
range of the current version until the end of the releng/X.Y branch.
When built on a stable/X system, it requires an exact kernel version
similar to DECLARE_MODULE_TIED().
When built on a main system prior to X.0, it uses an effective range
of the current version until the end of releng/X.0. This last case
isn't ideal (would rather have it act like stable/X), but the initial
value of __FreeBSD_version for an X.0 release is not deterministic.
The intended use case for this are modules in ports like virtualbox
and drm-kmod. This will allow a module built on the releng/X.Y branch
to continue to be used after security updates that bump
__FreeBSD_version on the branch, but fail to load on later release
branches on the same stable/X branch.