Removal of the 6.x kernel compat code from libc

Stefan Esser se at freebsd.org
Fri Apr 17 13:08:05 UTC 2015


Am 17.04.2015 um 14:10 schrieb Konstantin Belousov:
> On Fri, Apr 17, 2015 at 01:39:04PM +0200, Oliver Pinter wrote:
>>
>> Is there any chanche to get ride of the very old (FreeBSD 2.x) compat
>> hacks like these:
>> https://github.com/freebsd/freebsd/blob/master/lib/libc/gen/setproctitle.c#L40 ?
> 
> I will clean up setproctitle.c after the posted pieces of libc changes are
> committed.
> 
> Apparently, there is no other direct uses of getosreldate() in libc,
> besides ones from the patch posted and futimens()/utimensat(). The later
> must stay for quite a time.
> 
>>
>> I like the idea, to purge out the old stuffs/hacks from the FreeBSD.

Could we get rid of check_utility_compat(3) on that occasion?

It is only used (AFAIK) to select FreeBSD-4 compatible behaviour of
expr(1), which can also be selected with option "-e" and env variable
COMPAT_EXPR.

I doubt that anybody relies on non-POSIX behaviour that has been
deprecated for some 15 years ...

We'll need to preserve a stub function for check_utility_compat(3),
I'm afraid, but I think we can remove the environment variable and
the actual checking for a sym-link named "/etc/compat-FreeBSD-4-util"
at startup of expr. (I bet, nobody even knew that the behaviour of
expr could be changed with above sym-link ...)

If there is consensus, I could prepare a patch to remove the check
and to update the man-page for expr (just for -CURRENT, no MFC).

Regards, STefan


More information about the freebsd-arch mailing list