Re: identifying useless sanitized header files

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Apr 08, 2007 at 04:56:07PM -0400, Robert P. J. Day wrote:
> 
>   ok, i think i have a handle on things, so let's try this topic
> again.
> 
>   as i read it, you can generate the sanitized header files with "make
> headers_install", which will generate them for the default
> architecture (in my case, i386).  the resulting directories will be
> stored under usr/include, and will include all of the generic
> directories linux, asm-generic, mtd, rdma and so on.
> 
>   first, if you were to look in those directories, it should be
> obvious that there's no point generating a header file that has no
> content when exported to userspace.  at the moment, there are three of
> them:
> 
>   linux/tty.h
>   linux/isicom.h

Seem to be good candidates.

>   linux/netfilter_ipv4/ip_conntrack_h323.h

Ignore this one, it'll be removed from the kernel tree in 2.6.22.

> so it should be a no-brainer that, under the circumstances, there's no
> point including these filenames in the corresponding linux/Kbuild
> file.  so far, so good?
> 
>   the next part is a little trickier.  again, as i read it, you can
> also generate the sanitized headers for a given architecture with
> something like:
> 
>   $ make ARCH=frv headers_install
> 
> the end result should be exactly the same, except that the generated
> "asm" subdirectory will reflect the asm header files for that
> particular architecture.  most of those include the generic file
> 
>   include include/asm-generic/Kbuild.asm
> 
> plus maybe a few more arch-specific header files.  again, so far, so
> good but it's also worth seeing which arch-specific header files get
> generated with no content.  if you look at the example i chose (FRV),
> that generates the header file asm/auxvec.h, since that file is listed
> in asm-generic/Kbuild.asm.  however, the resulting file has no
> content, and the reason for that is obvious -- the original header
> file include/asm-frv/auxvec.h has no content *either*.
> 
>   so what's the point of even having a header file like
> include/asm-frv/auxvec.h if it doesn't contain anything?  is this only
> so that the reference to auxvec.h from asm-generic/Kbuild.asm will
> always find a file?  if that's all it is, surely the header build
> process can be tweaked to handle non-existent files under some of the
> architectures, no?  and all those silly, empty header files can be
> removed.
> 
>   (in fact, if you take a quick look at all of the
> include/asm-*/auxvec.h headers, most of them are empty.  what's the
> point?)
> 
>   thoughts?

The point is that an "#include <linuc/auxvec.h>" compiles.

> rday

cu
Adrian

-- 

       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed


--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux