Page MenuHomeFreeBSD

Framework: Switch LINUX_DEFAULT to rl9 for all arches except i386
ClosedPublic

Authored by arrowd on Wed, Apr 2, 5:49 AM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Apr 19, 10:26 PM
Unknown Object (File)
Fri, Apr 18, 2:16 PM
Unknown Object (File)
Fri, Apr 18, 9:22 AM
Unknown Object (File)
Thu, Apr 17, 2:45 AM
Unknown Object (File)
Thu, Apr 17, 12:55 AM
Unknown Object (File)
Mon, Apr 14, 1:22 AM
Unknown Object (File)
Sat, Apr 12, 10:46 PM
Unknown Object (File)
Wed, Apr 9, 10:32 AM

Details

Summary

The current Linux base we use in Ports comes from Cent OS 7, which is
not only ancient by itself, but also have gone EoL.

This change switches the default to a more recent Rocky Linux 9 base. There
are several points that should be acknowledged with this change:

  • LINUX_DEFAULT for ARCH=i386 stays to be "c7". This is because Rocky Linux has no separate i386 target, but ships 32-bit binaries from 64-bit package repos. It is probably possible to properly support i386 with rl9, but no one did the job.
  • I was told that 64-bit binaries that are shipped in rl9 require SSE 4.2, which means that owners of old amd64 hardware (pre Nehalem?) would need to switch the default back.
Test Plan

No exp-run is needed, because 99% of Linux ports are just repackaged
rather than compiled. So I simply gone over a list of USES=linux ports and
verified that they still run with rl9. Those who broked are now marked USES=linux:c7.

The ports I wasn't able to test are:

Require CDROM:
games/linux-ssamtfe
games/linux-ssamtse
games/linux-unrealgold
games/linux-ut

Unfetchable:
java/linux-oracle-jdk18
java/linux-oracle-jre18
print/epson-inkjet-printer-201207w
print/epson-inkjet-printer-201401w
print/epson-inkjet-printer-201601w
print/epson-inkjet-printer-escpr2

Simply don't work:
games/linux-doom3
games/linux-nwnclient

Since games/linux-doom3-demo works I assume games/linux-doom3 should be fine
too. Not sure what to do about games/linux-nwnclient.

Diff Detail

Repository
R11 FreeBSD ports repository
Lint
No Lint Coverage
Unit
No Test Coverage
Build Status
Buildable 63277
Build 60161: arc lint + arc unit

Event Timeline

arrowd requested review of this revision.Wed, Apr 2, 5:49 AM
arrowd created this revision.
lbartoletti added inline comments.
UPDATING
10

cmt or you?

arrowd marked an inline comment as done.
  • Fix email

rl9 require SSE42 and POPCNT (x86-64-v2) - it's atleast Nehalem (and Bulldozer), any pre-Nehalem not supported.
In FreeBSD base target for amd64 is SSE2 only. We either follow the rule everywhere or nowhere. If we don’t follow here, then why do we follow in other places?

There is a clear demand for a newer Linuxulator base and unlike the FreeBSD base we can't control the minimum CPU requirement here. Ports still provide an option for users to switch to an older Linuxulator base. At the same time, how likely would it be that a pre-Nehalem user bumps into a program that uses those instructions? I can hardly imagine someone playing Linux games on old amd64 hardware.

bapt added a subscriber: bapt.

I think the requirement for "recent" amd64 machines is ok, Nehalem is from 17 years ago also people with older CPUs can still install their own linux chroot if needed. (still an entry in UPDATING and probably also pkg-message would be nice).

This revision is now accepted and ready to land.Wed, Apr 9, 8:23 AM