os.major etc. on Linux

Rainer Müller raimue at macports.org
Thu May 12 02:57:21 PDT 2016


On 2016-05-12 11:44, René J.V. Bertin wrote:
> AFAIK that's not relevant on Linux; the SDKs with which MacPorts and
> (the vast majority of) its ports are concerned, the "userland", don't
> change when you boot a 4 or 3 kernel. Booting back into a 2.x kernel
> might have more implications, but IIRC that depends a lot on the
> patches and kernel config you apply (which of course doesn't show up
> in the kernel version number).
> 
> As a workaround (and way to avoid having to rebuild and reinstall
> everything) I simply hardcoded os.major to 3 in my install, and that
> hasn't caused any issues whatsoever, like one would expect.
> 
> I know there's a reason why "base" has basic support for Linux, but
> is it necessary to use the (major) OS version number the same way
> it's used on OS X?

I would consider this a bug. We take this directly from
$tcl_platform(osVersion), which is equivalent to `uname -r`.

As this assumption is wrong for Linux, this is the place where it needs
to be fixed:

https://trac.macports.org/browser/trunk/base/src/macports1.0/macports.tcl?rev=147347#L633

Rainer


More information about the macports-dev mailing list