Re: [PATCH v4 02/79] scripts/headers_compile_test.sh: compile test script for exported headers

From: Gabriel Laskar
Date: Tue Nov 10 2015 - 10:03:44 EST


Hi Mikko,

On Thu, 15 Oct 2015 09:17:18 +0200
Alexander Stein <alexander.stein@xxxxxxxxxxxxxxxxxxxxx> wrote:

> On Thursday 15 October 2015 07:55:40, Mikko Rapeli wrote:
> > Users of kernel header files would be happier if they did not
> > contain kernel specific parts and would contain #include statements
> > for all other header files that they depend on, and in general
> > would compile.
> >
> > For each header file exported to userspace, this script creates
> > a simple .c file which just includes the header file. Then it
> > tries to compile it together with minimal header files from GCC
> > and libc, and reports results.
>
> Just an idea: Why not try to create a pre-compiled header (pch)
> instead. So you can get rid of creating temporary .c files for each
> header.

I am working on exactly the same thing, here is my suggestions for this:

* you can use -fsyntax-only in order to avoid file creation, it will be
faster, and don't clutter the directories.
* For some headers, for example tegra_drm.h, it is expected to have
include drm.h before, so you have to maintain a list of the headers
that should be included before each headers.
* finally I don't think that including stdint.h/stddef.h is the right
solution when a header is using types like size_t or uint32_t, fixing
the headers to user __kernel_size_t and __u32 should be cleaner.

--
Gabriel Laskar
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/