RE: OSVERSION question for stable branch packages
- Reply: Mark Millard : "Re: OSVERSION question for stable branch packages"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 01 Nov 2024 00:39:57 UTC
Bjoern A. Zeeb <bz_at_FreeBSD.org> wrote on Date: Wed, 30 Oct 2024 20:35:52 UTC : > if I remember correctly packages are built on the oldest version of a > stable platform? Being careful with the reference to "stable": The official FreeBSD package builders use a jail running the world for the oldest supported release, such as the oldest supported 14.* release. (I ignore special test runs of building in a stable world context.) The kernel is actually a main [so: 15 as stands] kernel. As stands that means for 14.* it is 14.1: building for: FreeBSD 141amd64-default-job-01 14.1-RELEASE-p6 FreeBSD 14.1-RELEASE-p6 amd64 Host OSVERSION: 1500023 Jail OSVERSION: 1401000 and for 13.* it is 13.3 : building for: FreeBSD 133amd64-default-job-01 13.3-RELEASE-p8 FreeBSD 13.3-RELEASE-p8 amd64 Host OSVERSION: 1500023 Jail OSVERSION: 1303001 (Those are taken from the logs for building ports-mgmt/pkg .) As I'm unsure of the relevant contexts, I may span a wider range than you were asking about below. > So we would currently build on 14.1-R[p6] for the upcoming 14.2-R as well? The requirements that 14.1-STABLE, 14.2-RELEASE, and 14.2-STABLE must be compatible with the 14.1-RELEASE based packages builds. That shifts to 14.2-RELEASE based package builds later --but, then, 14.1-STABLE does not need to be compatible with the 14.2-RELEASE based package builds. > How do OSVERSION checks work in that case? Say I want to check for > OSVERSION >= 1401503 (just a random one). For the official package builds (that are not very-special-test runs of building based on a ??.?-STABLE world), no build will happen with a Jail OSVERSION like 1401503 (which is a 14.1-STABLE Jail OSVERSION, not a 14.1-RELEASE Jail OSVERSION). Of course, folks that build their own packages or ports are free to build based on the likes of 14.1-STABLE if that is the world they what to build against. As I understand ports are supposed to allow for such, despite lack of official builds. As for __FreeBSD_version, the progress goes like: 1400097 -> 1400500: creation of stable/14 branch (14.0-STABLE initially) 1400500 .. 1400511: 14.0-STABLE in stable/14 branch 1400511 -> 1401000: creation of releng/14.1 branch (14.1-BETA1 initially) 1400511 -> 1401500: 14.1-STABLE start in stable/14 branch 1401500 .. 140050?: 14.1-STABLE in stable/14 branch (1400503 so far) Future: 14015?? -> 1402000: creation of releng/14.2 branch (14.2-BETA1 initially) 14015?? -> 1402500: 14.2-STABLE start in stable/14 branch (same ??) I will note that releng/13.3 had a type of example that 14 does not show (yet?): 1302512 -> 1303000: creation of releng/13.3 branch (13.3-BETA1 initially) 1302512 -> 1303500: 13.3-STABLE start in stable/13 branch 1303000 .. 1303001: updated __FreeBSD_version for 13.3-RELEASE in releng/13.3 branch [The ????5?? examples could have ????[5-9]?? for a stable/* .] > Would that be true for > package builds for 14 before 14.1-R goes out of support and 14.2-R > becomes the new "build base"? > > Do we do special builds for releases with a source tree (sys/sys/param.h > -> OSVERSION) matching that release? Official package builds were/are/will-be based on: 1400097 (or the likes of 1400??? with ??? <= 499) 1401000 (or the likes of 1401??? with ??? <= 499) 1402000 (or the likes of 1402??? with ??? <= 499) No examples of 140*??? with 500 <= ??? . No special official releases of packages. But folks can build their own packages and use those instead. That can lead to any of the __FreeBSD_version values being involved in those contexts. === Mark Millard marklmi at yahoo.com