Are there "NCS_VERSION" or "NRF_VERSION" C makros available?

Today I recognized that in one of the  updates since ncs 1.8.0, now "nrf_modem_gnss_fix_interval_set" returns -NRF_EINVAL, if GNSS is already running. In older versions it was -NRF_EPERM.

If an application is considered to work with different ncs/nrf versions, is it possible to detect that ncs/nrf version via C preprocessor makros?

Such breaking API changes are unfortunately the cause of quite a lot of issues. Is there a list of such return value changes? If not, I would welcome such a list very much.