Re: Ports Collection support for your FreeBSD version has ended...

From: Jan Beich <jbeich_at_FreeBSD.org>
Date: Fri, 02 Sep 2022 10:01:42 UTC
Milan Obuch <freebsd-ports@dino.sk> writes:

> On Fri, 02 Sep 2022 10:01:19 +0200
> And what about 12.3-STABLE?

# 12.3-RELEASE
$ git show release/12.3.0:sys/sys/param.h | grep define.\*_version
#define __FreeBSD_version 1203000       /* Master, propagated to newvers */

# 12.3-STABLE
$ git show origin/stable/12:sys/sys/param.h | grep define.\*_version
#define __FreeBSD_version 1203507       /* Master, propagated to newvers */

> Where is this version constant defined in ports tree?

From Mk/bsd.port.mk

.    if ${OPSYS} == FreeBSD && (${OSVERSION} < 1203000 || (${OSVERSION} >= 1300000 && ${OSVERSION} < 1301000))
_UNSUPPORTED_SYSTEM_MESSAGE=	Ports Collection support for your ${OPSYS} version has ended, and no ports\
								are guaranteed to build on this system. Please upgrade to a supported release.
.      if defined(ALLOW_UNSUPPORTED_SYSTEM)
WARNING+=			"${_UNSUPPORTED_SYSTEM_MESSAGE}"
.      else
show-unsupported-system-error:
	@${ECHO_MSG} "/!\\ ERROR: /!\\"
	@${ECHO_MSG}
	@${ECHO_MSG} "${_UNSUPPORTED_SYSTEM_MESSAGE}" | ${FMT_80}
	@${ECHO_MSG}
	@${ECHO_MSG} "No support will be provided if you silence this message by defining ALLOW_UNSUPPORTED_SYSTEM." | ${FMT_80}
	@${ECHO_MSG}
	@${FALSE}
.      endif
.    endif

> How can this version be inspected using just binaries installed?

"sysctl kern.osreldate". It's not used by ports/ since 2014-09-30 (9576bda6137e).

If you want to build ports/ then /usr/include must exist, and kern.osreldate
must not be older than <sys/param.h> or <osreldate.h>. Otherwise, freshly
built binaries may not be able to run.

poudriere records kern.osreldate as "Host OSVERSION" and <sys/param.h> as
"Jail OSVERSION". For example, package cluster build logs often have "Host
OSVERSION" matching -CURRENT kernel around the time.