diff options
author | Zack Weinberg <zackw@panix.com> | 2016-08-23 21:19:17 -0400 |
---|---|---|
committer | Zack Weinberg <zackw@panix.com> | 2016-08-29 19:47:33 -0400 |
commit | 15f55c639c257ca218b3c9156c43c1eb91993620 (patch) | |
tree | af87b2b8e8311d3fcc9bc249d20a85f15e7a55cc /include/sys/ioctl.h | |
parent | a16d5c43fddeff66b36cdd9a115c849e053abd42 (diff) | |
download | glibc-zack/installed-header-hygiene.tar.gz |
Installed header hygiene (BZ#20366): Test of installed headers.zack/installed-header-hygiene
As the final act in this patchset, this test validates the properties
I have been ensuring that all of the headers have. Each subdirectory
checks the headers that it installs.
In order for this test to work correctly, every wrapper header
that actually defines something must guard those definitions with
#ifndef _ISOMAC. This is the existing mechanism used by the conform/
tests to tell wrapper headers not to define anything that the public
header wouldn't, and not to use anything from libc-symbols.h. conform/
only cares for headers that we need to check for standards conformance,
whereas this test applies to *every* header. (Headers in include/ that
are either installed directly, or are internal-use-only and do *not*
correspond to any installed header, are not affected.)
The wrapper header adjustments were semi-mechanically generated, but I
had to correct enough problems by hand that I don't think posting the
script is worth it.
* scripts/check-installed-headers.sh: New script.
* Rules: In each directory that defines header files to be installed,
run check-installed-headers.sh on them as a special test.
* include/aliases.h, include/alloca.h, include/argz.h,
* include/arpa/nameser.h, include/arpa/nameser_compat.h,
* include/elf.h, include/envz.h, include/err.h,
* include/execinfo.h, include/fpu_control.h, include/getopt.h,
* include/gmp.h, include/gshadow.h, include/ifaddrs.h,
* include/libintl.h, include/link.h, include/malloc.h,
* include/mcheck.h, include/mntent.h, include/netinet/ether.h,
* include/nss.h, include/obstack.h, include/printf.h,
* include/pty.h, include/resolv.h, include/rpc/auth.h,
* include/rpc/auth_des.h, include/rpc/auth_unix.h,
* include/rpc/clnt.h, include/rpc/des_crypt.h,
* include/rpc/key_prot.h, include/rpc/netdb.h,
* include/rpc/pmap_clnt.h, include/rpc/pmap_prot.h,
* include/rpc/pmap_rmt.h, include/rpc/rpc.h,
* include/rpc/rpc_msg.h, include/rpc/svc.h,
* include/rpc/svc_auth.h, include/rpc/xdr.h,
* include/rpcsvc/nis_callback.h, include/rpcsvc/nislib.h,
* include/rpcsvc/yp.h, include/rpcsvc/ypclnt.h,
* include/rpcsvc/ypupd.h, include/shadow.h,
* include/stdio_ext.h, include/sys/epoll.h,
* include/sys/file.h, include/sys/gmon.h, include/sys/ioctl.h,
* include/sys/prctl.h, include/sys/profil.h,
* include/sys/statfs.h, include/sys/sysctl.h,
* include/sys/sysinfo.h, include/ttyent.h, include/utmp.h,
* sysdeps/arm/nacl/include/bits/setjmp.h,
* sysdeps/mips/include/sys/asm.h,
* sysdeps/unix/sysv/linux/include/sys/sysinfo.h,
* sysdeps/unix/sysv/linux/include/sys/timex.h,
* sysdeps/x86/fpu/include/bits/fenv.h:
Add #ifndef _ISOMAC guard around internal declarations.
Add multiple-inclusion guard if not already present.
Diffstat (limited to 'include/sys/ioctl.h')
-rw-r--r-- | include/sys/ioctl.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/include/sys/ioctl.h b/include/sys/ioctl.h index ebadd526b9..bfc6909dbc 100644 --- a/include/sys/ioctl.h +++ b/include/sys/ioctl.h @@ -1,6 +1,10 @@ #ifndef _SYS_IOCTL_H #include <misc/sys/ioctl.h> +# ifndef _ISOMAC + /* Now define the internal interfaces. */ extern int __ioctl (int __fd, unsigned long int __request, ...); + +# endif /* !_ISOMAC */ #endif |