On 1/01/24 19:06, Jonathan Chen wrote:
Hi,
I'm running a somewhat recent stable-14/amd64 (refreshed 27-Dec-2023),
and I wonder if someone can explain what is happening...
I've got a dev-host which I use as a repo-builder. I have discovered
that if I have linux_enable="YES" on the repo-builder, the resultant
executable from the sysutils/screen package produced will only behave as
expected on other hosts that also have linux_enable="YES". On hosts
where linux_enable is *not* defined (ie linux_enable="NO"), `screen'
will start up and then immediatly quit. There are no core-dumps, or any
other noticeable error-messages.
If I set linux_enable="NO" on the repo-builder, the executable from the
sysutils/screen package produced will work as expected on _all_ hosts,
ie linux_enable=YES|NO.
After an interesting inspection with ktrace and a look-thru' of
rc.d/linux, I've managed track the cause of this to pty.ko. This module
is loaded with linux_enable=YES, and interferes with the screen package
build. With pty.ko loaded, the screen executable generated will expect
old style pseudo-terminal names; which is not what is available on a
standard STABLE-14 host.
When pty.ko is _not_ loaded, the screen executable generated will work
on hosts with linux_enable=YES|NO.
I don't know whether the FreeBSD package builders will be affected, but
this factoid will be useful for the archives.
Cheers.
--
Jonathan Chen <[email protected]>