Re: System headers with clang?

From: Garrett Cooper <yanegomi_at_gmail.com>
Date: Tue, 11 Oct 2011 12:24:27 -0700
On Tue, Oct 11, 2011 at 11:36 AM, Arnaud Lacombe <lacombar_at_gmail.com> wrote:
> Hi,
>
> On Tue, Oct 11, 2011 at 8:00 AM, Dimitry Andric <dim_at_freebsd.org> wrote:
>> On 2011-10-09 19:32, Larry Rosenman wrote:
>>>
>>> I had gotten a PR about sysutils/lsof not compiling with clang.  I had
>>> Vic Abell check it out, and the problem is NOT with lsof per se, but
>>> with the system headers.
>>>
>>> Is there a project afoot to update the system headers to make them clang
>>> compilable?
>>
>> The problem isn't that clang can't compile the system headers, but
>> normally these don't get included from userspace.  And they certainly
>> won't work as expected when you define _KERNEL in userspace, as the lsof
>> port foolishly does.  It probably can't be avoided in such a tool, though.
>>
> #ifdef _KERNEL/#endif protected part of system headers shall NEVER be
> accessed by userland. It is a fault to have them present in
> /usr/include. Linux got it right there, all those part are removed
> upon headers' installation.

Yes, but instead Linux encourages mucking around with /proc and /sys,
which have varying levels of formatting and provided output.

The data needs to be exported properly via sysctl. If it's not done
that way to userland, then the API/KPI is flawed and needs to be
revised.

Thanks,
-Garrett
Received on Tue Oct 11 2011 - 17:24:28 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:19 UTC